Add scenario schema and validation script for Break Escape scenarios

- Introduced `scenario-schema.json` to define the structure and requirements for scenario.json.erb files.
- Implemented `validate_scenario.rb` to render ERB templates to JSON and validate against the schema.
- Created a comprehensive `SCENARIO_JSON_FORMAT_GUIDE.md` to outline the correct format for scenario files, including required fields, room definitions, objectives, and common mistakes.
This commit is contained in:
Z. Cliffe Schreuders
2025-12-01 15:45:24 +00:00
parent 47eaffa4c3
commit 0cf9e0ba62
33 changed files with 4604 additions and 1389 deletions

View File

@@ -81,6 +81,8 @@ GEM
minitest (>= 5.1)
securerandom (>= 0.3)
tzinfo (~> 2.0, >= 2.0.5)
addressable (2.8.8)
public_suffix (>= 2.0.2, < 8.0)
ast (2.4.3)
base64 (0.3.0)
benchmark (0.5.0)
@@ -106,6 +108,9 @@ GEM
rdoc (>= 4.0.0)
reline (>= 0.4.2)
json (2.16.0)
json-schema (6.0.0)
addressable (~> 2.8)
bigdecimal (~> 3.1)
language_server-protocol (3.17.0.5)
lint_roller (1.1.0)
logger (1.7.0)
@@ -165,6 +170,7 @@ GEM
psych (5.2.6)
date
stringio
public_suffix (7.0.0)
puma (7.1.0)
nio4r (~> 2.0)
pundit (2.5.2)
@@ -284,6 +290,7 @@ PLATFORMS
DEPENDENCIES
break_escape!
json-schema
pry
pry-byebug
puma