How bshen2452-alt/as works
This is a browser-based, 20-round economic strategy game about competing AI firms across a three-layer supply chain. The player chooses a starting role, allocates employees and submits market and model decisions; five AI rivals decide simultaneously, then rounds resolve through the market, economy and events. Settlement reveals market signals and rankings, and the final result includes a generated narrative. The graph separates game rules, presentation, and localization/audio support. Some runtime wiring is unsampled, so uncertain links are omitted or marked dashed.
Main entry points: main.js Browser app · GameEngine.js Round controller · SceneManager.js 3D scene · NodeMesh.js Supply chain visuals
Components 24
Game simulation
- Round controller
src/game/GameEngine.js - AI rivals
src/game/AIPlayer.js - Firm state
src/game/Player.js - Supply chain rules
src/game/Config.js - Production economy
src/game/Economy.js - Resource market
src/game/Market.js - Industry events
src/game/EventEngine.js - Event definitions
src/game/EventDesign.js - Ending narrative
src/game/NarrativeBuilder.js - Round history
src/game/FlowRecorder.js
Game presentation
- Browser app
src/main.js - Game HUD
src/ui/HUD.js - Tutorial guidance
src/ui/Tutorial.js - Tooltips
src/ui/Tooltip.js - 3D scene
src/scene/SceneManager.js - Supply chain visuals
src/scene/NodeMesh.js - Camera controls
src/scene/CameraController.js - Post processing
src/scene/PostProcessing.js - Visual settings
src/scene/NodeVisualConfig.js
Player experience
- Locale service
src/i18n/index.js - English strings
src/i18n/en.js - Chinese strings
src/i18n/zh.js - Audio manager
src/audio/AudioManager.js
Other components
- Player
Connections 24
- Player → Browser app: plays through
- Browser app → Round controller: controls
src/main.js - Browser app → Game HUD: uses
src/main.js - Browser app → Tutorial guidance: uses
src/main.js - Browser app → Tooltips: uses
src/main.js - Browser app → 3D scene: updates
src/main.js - Browser app → Supply chain visuals: updates
src/main.js - Browser app → Camera controls: controls
src/main.js - Browser app → Round history: uses
src/main.js - Browser app → Audio manager: uses
src/main.js - Round controller → AI rivals: requests decisions
src/game/GameEngine.js - Round controller → Firm state: manages
src/game/GameEngine.js - Round controller → Production economy: resolves production
src/game/GameEngine.js - Round controller → Resource market: uses market
src/game/GameEngine.js - Round controller → Industry events: runs events
src/game/GameEngine.js - Round controller → Supply chain rules: reads rules
src/game/GameEngine.js - Round controller → Ending narrative: builds ending
src/game/GameEngine.js - Industry events → Event definitions: reads definitions
src/game/EventEngine.js - 3D scene → Camera controls: delegates camera
src/scene/SceneManager.js - 3D scene → Post processing: uses effects
src/scene/SceneManager.js - Supply chain visuals → Supply chain rules: reads node rules
src/scene/NodeMesh.js - Supply chain visuals → Visual settings: reads settings
src/scene/NodeMesh.js - Locale service → English strings: loads strings
src/i18n/index.js - Locale service → Chinese strings: loads strings
src/i18n/index.js