project-mobile-command/config/resources.json
StillHammer 0953451fea Implement 7 modules: 4 core (game-agnostic) + 3 MC-specific
Core Modules (game-agnostic, reusable for WarFactory):
- ResourceModule: Inventory, crafting system (465 lines)
- StorageModule: Save/load with pub/sub state collection (424 lines)
- CombatModule: Combat resolver, damage/armor/morale (580 lines)
- EventModule: JSON event scripting with choices/outcomes (651 lines)

MC-Specific Modules:
- GameModule v2: State machine + event subscriptions (updated)
- TrainBuilderModule: 3 wagons, 2-axis balance, performance malus (530 lines)
- ExpeditionModule: A→B expeditions, team management, events integration (641 lines)

Features:
- All modules hot-reload compatible (state preservation)
- Pure pub/sub architecture (zero direct coupling)
- 7 config files (resources, storage, combat, events, train, expeditions)
- 7 test suites (GameModuleTest: 12/12 PASSED)
- CMakeLists.txt updated for all modules + tests

Total: ~3,500 lines of production code + comprehensive tests

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 16:40:54 +08:00

129 lines
2.3 KiB
JSON

{
"resources": {
"scrap_metal": {
"maxStack": 100,
"weight": 1.5,
"baseValue": 10,
"lowThreshold": 15
},
"ammunition_9mm": {
"maxStack": 500,
"weight": 0.01,
"baseValue": 2,
"lowThreshold": 100
},
"fuel_diesel": {
"maxStack": 200,
"weight": 0.8,
"baseValue": 5,
"lowThreshold": 30
},
"medical_supplies": {
"maxStack": 50,
"weight": 0.5,
"baseValue": 20,
"lowThreshold": 10
},
"repair_kit": {
"maxStack": 20,
"weight": 2.0,
"baseValue": 50,
"lowThreshold": 3
},
"drone_parts": {
"maxStack": 50,
"weight": 0.5,
"baseValue": 30,
"lowThreshold": 10
},
"electronics": {
"maxStack": 100,
"weight": 0.2,
"baseValue": 15,
"lowThreshold": 20
},
"food_rations": {
"maxStack": 100,
"weight": 0.3,
"baseValue": 3,
"lowThreshold": 25
},
"water_clean": {
"maxStack": 150,
"weight": 1.0,
"baseValue": 2,
"lowThreshold": 30
},
"explosives": {
"maxStack": 30,
"weight": 1.2,
"baseValue": 40,
"lowThreshold": 5
},
"drone_recon": {
"maxStack": 10,
"weight": 5.0,
"baseValue": 200,
"lowThreshold": 2
},
"drone_fpv": {
"maxStack": 10,
"weight": 3.0,
"baseValue": 150,
"lowThreshold": 2
}
},
"recipes": {
"repair_kit_basic": {
"inputs": {
"scrap_metal": 5,
"electronics": 1
},
"outputs": {
"repair_kit": 1
},
"craftTime": 30.0
},
"drone_recon": {
"inputs": {
"drone_parts": 3,
"electronics": 2
},
"outputs": {
"drone_recon": 1
},
"craftTime": 120.0
},
"drone_fpv": {
"inputs": {
"drone_parts": 2,
"electronics": 1,
"explosives": 1
},
"outputs": {
"drone_fpv": 1
},
"craftTime": 90.0
},
"ammunition_craft": {
"inputs": {
"scrap_metal": 2
},
"outputs": {
"ammunition_9mm": 50
},
"craftTime": 20.0
},
"explosives_craft": {
"inputs": {
"scrap_metal": 3,
"electronics": 1
},
"outputs": {
"explosives": 2
},
"craftTime": 45.0
}
}
}