Runtime Internals
This page groups the parts of IgniteSky that make the plugin actually run.
Data model and cache
| Layer | Role |
|---|---|
IslandData | Persisted island snapshot with versioned schema. |
SkyIsland | Live runtime island object. |
IslandRepository | Write-through cache over storage. |
ActiveIslandStore | Tracks which islands are currently live or selected. |
The repository warms on enable, reads from memory during normal play, saves snapshots asynchronously and records pending cross-server arrivals for proxy sharding.
Addon runtime
| Piece | Role |
|---|---|
AddonManager | Loads, tracks and disables addon jars. |
AddonClassLoader | Isolates addon bytecode from the core. |
SimpleAddonContext | Gives addons the minimum context they need. |
JsonAddonDataStore | Persistent addon metadata storage. |
Addons can also register custom island modes through the API and ModeRegistry, so the platform is
not locked to a fixed set of worlds.
World hosting
| Piece | Role |
|---|---|
WorldManager | Owns world loading and hosting strategy decisions. |
FoliaWorldBootstrap | Boots worlds safely on Folia. |
VoidChunkGenerator | Supplies the empty base world when needed. |
EnvironmentSettings | Controls nether/end/platform behavior. |
AspSlimeWorldProvider | Bridges the slime-world provider abstraction. |
Proxy sharding and events
| Piece | Role |
|---|---|
NetworkMessenger | Carries cross-server messages. |
ArrivalListener | Resolves a player's pending arrival on join. |
NetworkSettings | Controls sharding on/off and server name. |
EventGate | Toggles typed internal events. |
EventBus | In-process feature bus for typed events. |
SkyEvent / Subscription | Event payload and subscription contract. |
Command runtime
Commands are wired through ACF in CommandService, which also sets up the aliases and dynamic
completions the player sees. The docs list the surface commands, but the service is the part that
binds them to live game state.