Twin of the building consolidation. The GDScript build_unit_catalog did the buildable-unit filter (drop faction:"wild" monsters + "freepeople" NPCs) and field mapping by hand. Add mc_ai::tactical::parse_unit_catalog as the one Rust implementation (resilient: skips malformed, drops map-spawned factions, defaults tier=1), exposed as GdItemSystem.parse_unit_catalog_json. GDScript build_unit_catalog now marshals the raw unit docs to it; the bench routes through the same transform. The wild/freepeople filter lives only in Rust now. Validated: mc-core+mc-ai+mc-player-api 826/0 (3 new parse_unit_catalog tests); rebuilt aarch64 dylib; headless GUT 729/0/13 incl. a unit round-trip + wild-filter delegation test. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| game | ||
| packages | ||
| simulator | ||