Implements complete SwarmBot formation-based combat strategy in AssemblyScript:
- JSON parsing for game config and state
- Tight cohesion (radius=3) movement with circular mean center-of-mass
- Enemy-seeking behavior with engagement bonuses
- Toroidal distance calculations
Builds to 27KB swarm.wasm (AssemblyScript produces compact binaries vs
Go's ~12MB). Build script now copies to dist/.
Closes: bf-2a7w
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Create wasm/engine/ with main_wasm.go exporting loadState, step, runMatch,
getReplay, getBots, getEnergy, getConfig, getState functions for browser
sandbox use
- Add engine/wasm.go with Match type providing WASM-friendly interface
- Add wasm/engine/build.sh for GOOS=js GOARCH=wasm compilation
- Update wasm/Makefile to include engine target
- Successfully builds engine.wasm (~5.6 MB) with valid WASM magic number
The engine WASM enables production-accurate match execution in the browser
sandbox per plan §13.1. Build artifacts (.wasm files) are gitignored and
generated on-demand.
Closes: bf-1wew
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>