Home › Dev CE (experimental) › GameFalloutManager
Experimental: needs Dev CE (
fork of the Community Extension, release zip and source). A GameCore that adds these Lua methods by calling engine functions directly. Not part of the upstream Community Extension, single-player testing only. Descriptions on these pages were written by an AI assistant from decompiled code and are marked inferred unless a test result confirms them.
GameFalloutManager
6 methods (Dev CE test build). this is found with the game's own IGameFalloutManager instance resolver (virtual).
| Method |
Signature |
Purpose (AI-written, inferred) |
Tested |
Engine function |
Current |
| AddNuclearReactor |
GameFalloutManager:AddNuclearReactor(iPlotIndex: integer, eOwner: integer) |
Appends a reactor entry (plot index, owner, age 0) to the manager's reactor vector at offset 0xf0. |
plumbing: not run (no live object) |
— |
0x1ed840 |
| DoTurn |
GameFalloutManager:DoTurn() |
Per-turn update: calls UpdateFallout, then increments the age counter (offset +8) of every reactor entry. |
plumbing: not run (no live object) |
— |
0x1ed900 |
| GetFalloutDamage |
GameFalloutManager:GetFalloutDamage() → number |
Returns the fallout damage value, using the global default parameter (offset 0x560) when the stored value is -1. |
plumbing: not run (no live object) |
— |
0x1edb80 |
| GetReactorAge |
GameFalloutManager:GetReactorAge(iPlotIndex: integer) → number |
Looks up the city's building flagged as a reactor (bit 8 at 0x48 of the XP2 building definition), then returns the age of the tracked reactor entry at that building's plot, or 0. |
plumbing: not run (no live object) |
— |
0x1edc80 |
| ResetReactorAge |
GameFalloutManager:ResetReactorAge(iPlotIndex: integer) |
Finds the reactor entry for the plot, sets its age to 0, un-pillages the flagged reactor building in that plot's district city (if the plot is a district but not a city center), then sends a reporting event. |
plumbing: not run (no live object) |
— |
0x1ee4d0 |
| UpdateFallout |
GameFalloutManager:UpdateFallout() |
For each plot with fallout turns remaining (>0), decrements the counter, dispatches a plot signal on the game object and sends two reporting events (one using local-observer visibility). |
plumbing: not run (no live object) |
— |
0x1ef420 |
Details
AddNuclearReactor
Arguments: iPlotIndex — map plot index of the reactor; eOwner — player owning the reactor
Writes
- reactor vector at 0xf0 (new 16-byte entry: plot, owner, age 0)
Input checks: Ignored if iPlotIndex < 0 or eOwner is -1; does not check for duplicates or plot validity.
Multiplayer: may-desync, adds synchronised game state. Risk: medium (adds an entry without validating the plot). Confidence of the reading: high.
DoTurn
Writes
- reactor ages in vector at 0xf0 incremented
- fallout timers via UpdateFallout
Side effects
- UpdateFallout fires a signal and reporting events
Input checks: No inputs.
Multiplayer: may-desync, advances synchronised state each turn. Risk: medium (turn processing; calling it manually double-advances state). Confidence of the reading: high.
GetFalloutDamage
Input checks: No inputs; -1 sentinel replaced by default.
Multiplayer: read-only, pure getter. Risk: low (pure getter). Confidence of the reading: high.
GetReactorAge
Input checks: Returns 0 if city is null, no flagged building exists or no tracked reactor at its location.
Multiplayer: read-only, pure getter. Risk: low (pure getter). Confidence of the reading: medium.
ResetReactorAge
Arguments: iPlotIndex — map plot index of the reactor
Writes
- reactor age set to 0
- reactor building pillaged flag cleared in city buildings
Side effects
- Reporting event 0x686fdce3 sent with the plot index
Input checks: Returns if iPlotIndex < 0 or no reactor entry exists for the plot.
Multiplayer: may-desync, edits city building state. Risk: medium (edits city buildings and age). Confidence of the reading: medium.
UpdateFallout
Writes
- per-plot fallout timer array (0xa8) decremented
Side effects
- Signal dispatched on game object (offset 0x1158)
- Reporting events 0x8e5e1e95 and 0x8cbda9f3
Input checks: No inputs.
Multiplayer: may-desync, decrements synchronised fallout timers. Risk: medium (changes map fallout state). Confidence of the reading: high.