Simplify simulation and restore ship browser

This commit is contained in:
2026-03-12 11:13:37 -04:00
parent 44311a8585
commit 9db53f1b48
10 changed files with 219 additions and 1089 deletions

View File

@@ -8,7 +8,7 @@ The codebase is still TypeScript + Three.js on Vite, with authored catalogs unde
- procedural universe generation
- autonomous faction behavior
- fleet / wing hierarchy
- direct per-ship faction control
- economic production loops
- pirate harassment
- strategic system control
@@ -24,12 +24,6 @@ The current build includes:
- rich central systems that factions contest for control
- faction-owned stations, ships, inventories, and combat stats
- autonomous shipbuilding and limited outpost growth
- fleet and wing structure with behaviors such as:
- `command`
- `screen`
- `mining`
- `logistics`
- `escort`
- observer controls for camera orbit, pan, focus, and inspection
## Major Gameplay / Sim Systems
@@ -67,23 +61,14 @@ The current build includes:
### High-Level AI / Delegation
- Faction AI now acts at a strategic level instead of directly micromanaging every ship.
- Faction AI now acts at a strategic level and issues direct orders to ships.
- Empire AI chooses high-level goals such as:
- secure home and mining space
- contest central systems
- assign industrial fleets to mining loops
- Pirate AI chooses raid targets and dispatches fleets into hostile space.
- Fleet-level orders are now the intended command boundary between:
- faction strategy
- fleet / wing execution
- This work was specifically done to stop faction AI from stomping `screen` behavior with raw ship move orders.
### Fleets / Wings
- Fleet creation now groups ships per faction and role in `src/game/fleet/runtime.ts`.
- War fleets and industry fleets are generated from faction-owned ships.
- Wing behaviors remain meaningful at the tactical layer.
- `screen` is intended to remain subordinate to fleet command rather than independent faction micromanagement.
- send miners to resource systems
- send military ships to rally and patrol targets
- Pirate AI chooses raid targets and moves military ships into hostile space.
- The fleet / wing layer has been removed from both simulation and UI.
### Economy / Production
@@ -106,11 +91,14 @@ The current build includes:
## Starting State
- Empires now start very small for easier debugging and growth observation.
- Each empire currently starts with only 3 ships:
- 1 frigate
- 1 hauler
- Each empire currently starts with:
- 1 miner
- Pirates still start with small raiding groups.
- 1 manufactory
- 1 refinery
- Each pirate faction currently starts with:
- 1 frigate
- 1 trade hub
- This is a bootstrap-oriented setup: factions mine first, then try to grow from minimal infrastructure.
## UI / UX State
@@ -123,7 +111,6 @@ The current build includes:
- status line
- horizontally scrolling cards for selected entities
- fallback observer details when nothing specific is selected
- Fleet launch controls were removed from the main HUD.
- A dedicated `Debug` window now contains the `New Universe` button.
### Selection / Inspection
@@ -136,19 +123,24 @@ The current build includes:
- stations
- Double-click centers / focuses the clicked target.
- Multiple ship selections render as horizontal cards in the bottom dock.
- Fleet window tree selection still works.
### Windows
- Generic draggable / resizable app windows still exist.
- Main windows currently in use:
- `Fleet Command`
- `Ships`
- `Debug`
- The `Ships` window:
- lists ships grouped by faction
- selects a ship on click
- focuses a ship on double click
- focuses a faction home system when clicking that faction header
### Strategic Rendering
- Strategic overlay and minimap infrastructure still exist.
- The minimap canvas is still created for renderer use, but it is no longer shown in the visible HUD.
- Fleet link overlays and fleet counters were removed along with the fleet system.
## Controls
@@ -160,10 +152,10 @@ The current build includes:
- `Middle Drag`: orbit camera
- `Shift + Middle Drag`: pan camera
- `Mouse Wheel` or `-` / `=`: zoom
- `W A S D`: pan camera
- `W A S D`: pan camera using the same motion as `Shift + Middle Drag`
- `Q / E`: rotate camera
- `F`: focus current selection
- `G`: toggle fleet command window
- `G`: toggle ships window
- `Tab`: jump camera between systems
## Technical Notes
@@ -173,8 +165,6 @@ The current build includes:
- `src/game/world/worldFactory.ts`
- Procedural universe generation:
- `src/game/world/universeGenerator.ts`
- Fleet composition helpers:
- `src/game/fleet/runtime.ts`
- Selection state:
- `src/game/state/selectionManager.ts`
- HUD / presentation:
@@ -191,16 +181,16 @@ The current build includes:
- Economic logistics are still abstracted heavily.
- Ship construction is recipe-gated but still simplified.
- Stations consume pooled faction stock rather than explicit transport delivery chains.
- Fleet window remains useful, but the overall UI is now only partially refit for observer mode.
- Bootstrap progression is still constrained by the current station recipe / stock model.
- The ships window is useful for inspection, but the overall UI is still only partially refit for observer mode.
- There is still no persistence layer for window layouts, saves, or generated universe seeds.
## Suggested Next Steps
- Extract faction strategy into a dedicated AI / planning module
- Extract fleet order execution into its own gameplay system
- Separate economic simulation from UI and rendering concerns
- Improve transport logistics so goods physically move through faction supply chains
- Add explicit shipyard construction queues and faction production priorities
- Improve combat behavior so `screen`, `escort`, and `command` have stronger distinct tactical roles
- Rework bootstrap progression so factions can genuinely grow from near-zero infrastructure
- Add system-level threat, ownership, and economy views for game-master inspection
- Add save/load support for generated universes and long-running simulations