Crafting — Samples / Scripts¶
This folder contains sample-only scripts used by Crafting demo scenes.
These files exist to demonstrate integration patterns and usage examples, not to provide production-ready systems or supported APIs.
Purpose¶
The scripts here show how Crafting can be integrated into a game, including:
- Subscribing to Crafting events (jobs, XP, failure reasons)
- Implementing adapters (inventory, currency) in a minimal way
- Writing simple custom validators or demo providers
- Building debug/demo UI and sandbox helpers
They are intentionally:
- simple
- incomplete
- easy to replace or delete
Structure¶
This folder is organised by type of sample, grouped under a single DemoHelpers layer:
-
DemoHelpers/
Sample-only scaffolding used to support demo scenes -
Adapters/
Fake/sample implementations of inventory and currency adapters -
Authoring/
Sample ScriptableObject wrappers used to define data in demo scenes
(e.g. standalone recipe authoring without integrations) -
Runtime/
Sample runtime registration and glue code that connects authoring helpers
to the supported public API (e.g. recipe resolution viaRecipeResolve) -
DemoHooks/
Scene wiring, quick helpers, and minimal integration examples
Each subfolder may contain its own README where behaviour needs additional explanation.
Important boundaries¶
These scripts are not part of the supported Crafting public API.
They may be:
- simplified
- demo-oriented
- incomplete by design
They may also:
- rely on fake/sample backends
- expose helper methods that are not part of the real adapter interfaces
- skip edge cases, validation, persistence, or production UX concerns
If you need similar behaviour in your game:
👉 Reimplement it in your own runtime code
👉 Use the public API as documented, not these sample classes
Samples vs Teachables¶
It’s important to distinguish between:
Teachables¶
- Located under
Teaching/ - Act as hostile consumers
- Use only documented public APIs
- Avoid reflection and editor-only access
- Represent supported behaviour
Samples (this folder)¶
- Located under
Samples/ - Show patterns, scaffolding, and demo setups
- May use fake/sample implementations
- Are not contracts
👉 If you’re copying code: - Use Teachables for correct API usage
- Use Samples for inspiration, wiring ideas, and sandbox patterns only
How to use these safely¶
- Read them to understand integration flow
- Copy ideas, not implementations
- Replace them with your own systems
- Do not ship them as-is unless you fully own the consequences
TL;DR¶
These scripts are learning scaffolding, not framework features.
Useful to read, safe to delete, unsupported by design.