| Crates.io | amble_script |
| lib.rs | amble_script |
| version | 0.65.0 |
| created_at | 2025-11-09 17:15:17.406439+00 |
| updated_at | 2026-01-04 04:54:35.830773+00 |
| description | Authoring-focused DSL, parser, and compiler that produces Amble engine WorldDef data. |
| homepage | https://github.com/pygmy-twylyte/amble |
| repository | https://github.com/pygmy-twylyte/amble |
| max_upload_size | |
| id | 1924299 |
| size | 699,757 |
amble_script is the domain-specific language, parser, and compiler that powers Amble worlds. It turns human-friendly .amble sources into WorldDef data (world.ron) consumed by amble_engine, and ships linting for catching missing references early.
WorldDef (RON) for game config, rooms, items, triggers, spinners, NPCs, and goals.
# Compile a single DSL file to world.ron (or print to stdout if omitted)
cargo run -p amble_script -- compile path/to/file.amble --out-world path/to/world.ron
# Compile a directory of DSL files into world.ron expected by the engine
cargo run -p amble_script -- compile-dir amble_script/data/Amble --out-dir amble_engine/data
# Lint files (optionally deny missing references)
cargo run -p amble_script -- lint path/to/file.or.dir --deny-missing
The generated world.ron bundles all compiled content into a single file for the engine to load.
Read the Creator Handbook and reference materials in docs/:
amble_script/docs/dsl_creator_handbook.mddocs/README.md (project overview)MIT License – see the repository root LICENSE.