Skip to content

Phase 2: Modular Plugin Architecture + Game Client #120

Open

Description

@Cadacious

Overview

Phase 2 has two parallel tracks: refactoring the server into a modular DLL plugin system (Track A) and building a game client for Quick Battle mode (Track B).

Design principle: The stock game's combat, scoring, movement, power, repair -- all game logic -- lives in DLLs loaded via TOML config. Stock modules use the exact same API as mod DLLs. A total conversion mod replaces any module and the engine doesn't know the difference.

Architecture Documentation

Modding Documentation


Track A: Plugin Architecture

A1: Core Infrastructure

A2: Extract Stock Modules (dependency order)

A3: Scripting

A4: TOML Game Modes

Track B: Game Client

B1: Foundation

B2: Space Environment

B3: Combat

B4: Quick Battle Mode

B5: Multiplayer Client

Documentation (all complete)


Verification

Phase Test
A1-A4 Load stock modules from TOML, fire events, verify handler dispatch
A5-A13 Each extracted module passes existing 290 tests via DLL interface
A14-A15 Lua script subscribes to events, modifies scoring, verified in test
B1-B6 Render BC ship models, compare with NifSkope
B7-B10 Fly around scene with ships, lighting, audio
B11-B16 Full combat with visual effects, compare with stock game
B17-B22 Play Quick Battle end-to-end, connect to server

Phase 3 (Future): Campaign

TOML mission files + C handlers per episode. Bridge interiors, NIF animation, cinematics, dialogue. Uses the same plugin system as multiplayer.

Activity

  1. added
    phase-2Phase 2: Plugin Architecture + Game Client
    on Feb 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    phase-2Phase 2: Plugin Architecture + Game Client

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions