Module
Modules are the top-level feature containers in the current architecture.
What a module does
A module packages a coherent part of the product and participates in startup through a registrar.
In practice, a module is responsible for things like:
- registering services
- loading its settings
- initializing its runtime systems
- shutting those systems down cleanly
How startup works now
The current system uses a shared bootstrap and explicit self-registration.
That means the runtime does not rely on loose discovery or an old single scene service model. Instead:
- the bootstrap creates the shared service registry
- installed module registrars register themselves
- modules register their services
- modules initialize in order
Modules users should care about
Shared
Defines shared contracts and utilities.
CivilAI
Owns simulation-heavy systems such as world time and the shared item catalog when installed.
Dialogue
Owns conversation and mood-facing systems and can consume shared services from other installed modules.
Module settings
Module settings are one of the most important user-facing parts of the architecture.
For many users, CIVIL-AI-SYSTEM -> Module Settings is the main place where architecture becomes visible in practice.
That is where you wire up content such as:
- behaviour trees
- item collections
- character pools
- timing and performance values
Why modules are useful
This structure makes the tool easier to extend and easier to install in different combinations without hard-coupling every feature to every other feature.