How belisarius7487/fs3 works
This repository contains a browser-based FreeSpace-inspired space-combat game, with a separate 2.5D rendering draft and Python tools for converting POF models into web assets. The principal workflow is piloting a ship through campaign waves, combat, and mission events while the game renders the world and presents HUD controls. The tree and excerpts identify these capabilities, but provide little direct runtime wiring evidence; gameplay connections below are therefore dashed and unverified. The README is empty, and unsampled implementation details are not inferred.
Main entry points: 40_world.js World Simulation · 50_combat.js Combat · 20_render.js 2D Rendering · 10_core.js Game Core
Components 25
Campaign and Combat
- Waves and Missions
src/30_waves.js - World Simulation
src/40_world.js - Combat
src/50_combat.js - Weapon Banks
src/55_arms.js - Bank Data
src/56_banks.js - Turrets
src/57_turrets.js - Projectile Effects
src/60_effects.js - Game Core
src/10_core.js
Rendering and Interface
- Audio
src/12_audio.js - 2D Rendering
src/20_render.js - 3D Field
src/59_field3d.js - 3D Models
src/58_model3d.js - Wave Presentation
src/30_waves.js - HUD and Menus
src/70_ui.js - Radar Icons
src/71_radar_icons.js - Target Display
src/72_target.js - Glow Effects
src/61_glow.js - Performance
src/62_perf.js - Effect Animation
src/63_fxanim.js
POF Model Tools
- POF Reader
tools/pof/pof.py - POF Metadata Reader
tools/pof/poflite.py - Web Model Converter
tools/pof/webmodel.py - Model Asset Builder
tools/pof/buildmodels.py
Rendering Prototype
- 2.5D Draft
demo25d/demo.js
Other components
- Player
Connections 20
- Player → Game Core: provides input
- Game Core → Waves and Missions: starts campaign
- Waves and Missions → World Simulation: sets encounters
- World Simulation → Combat: simulates combat
- Combat → Weapon Banks: uses weapons
- Combat → Turrets: uses turrets
- Combat → Projectile Effects: updates projectiles
- Game Core → Audio: drives audio
- World Simulation → 2D Rendering: draws world
- World Simulation → 3D Field: draws field
- 3D Field → 3D Models: renders models
- HUD and Menus → Radar Icons: uses icons
- HUD and Menus → Target Display: shows target
- 2D Rendering → Glow Effects: uses glow
- 2D Rendering → Effect Animation: animates effects
- 2D Rendering → Performance: tracks performance
- POF Metadata Reader → POF Reader: uses reader
tools/pof/poflite.py - Web Model Converter → POF Reader: uses reader
tools/pof/webmodel.py - Model Asset Builder → Web Model Converter: converts models
tools/pof/buildmodels.py - Model Asset Builder → POF Reader: reads models
tools/pof/buildmodels.py