- Consolidated array elements in scenario_903.json, scenario_904.json, scenario_905.json, scenario_906.json, scenario_908.json, scenario_910.json, scenario_911.json, scenario_912.json, and scenario_913.json to single-line format for better clarity.
- Removed unnecessary line breaks and whitespace in availableGeneralCommand and events sections across multiple scenario files.
- Ensured consistent formatting of event definitions, particularly for destroy_nation and OpenNationBetting events.
- Created a new unit set for "siegetank" with various crew types and their attributes.
- Implemented a messaging system with types, payloads, and storage functionality.
- Added tests for the messaging system to ensure correct behavior for different message types (private, national, public, diplomacy).
- Introduced a new JSON file `map_pokemon_v1.json` containing detailed city data for the Pokémon map, including attributes like population, agriculture, commerce, and connections.
- Implemented a map loader in `mapLoader.ts` to read and parse map definitions from JSON files, allowing for dynamic loading of map data.
- Created a script `generate-map-data.mjs` to convert legacy PHP map data into the new JSON format, ensuring compatibility with the updated map system.