Home › Engine classes
Engine executable. Settings and tools of the game program (CivilizationVI.exe), usable without a mod. Mostly undocumented debug and configuration functionality; descriptions come from analysis of the executable and have not all been tried in the running game.
Engine classes
The C++ classes of the engine executable: who inherits from whom, and the virtual functions of each class in vtable order. The information comes from the run-time type information (RTTI) of the Linux build, which the Windows build does not carry, so this is the only place the class structure of the Windows executable can be read from; the two builds are compiled from the same source, so the structure is expected to match. Windows addresses are given for virtual functions that the function index could map (high or medium confidence).
Standard-library, third-party and platform-shim classes are left out (ICU, OpenSSL, the shader language, the Direct3D compatibility layer). 1207 classes remain, with 11959 virtual slots, 1931 of them mapped to a Windows address.
Verified: class names, base classes, vtable contents (read from the Linux file). Inferred: that the Windows build has the same hierarchy and slot order; for GameCore::EngineUtility this was confirmed on the Windows vtable (46 slots, same order).
Inheritance trees | Namespaces
Namespaces
| Namespace |
Classes |
Virtual slots |
| (global namespace) |
368 |
3635 |
| AssetObjects |
177 |
1595 |
| Firaxis |
131 |
691 |
| ForgeUI |
87 |
3084 |
| WorldView |
54 |
172 |
| Synthesis |
31 |
128 |
| BLP |
29 |
202 |
| Localization |
25 |
54 |
| Modding |
24 |
244 |
| GameCore |
23 |
371 |
| App |
19 |
184 |
| Simulation |
19 |
155 |
| CivTech |
15 |
151 |
| Database |
12 |
120 |
| Data |
11 |
277 |
| Platform |
10 |
50 |
| Serialization |
10 |
79 |
| Network |
9 |
141 |
| Application |
8 |
29 |
| ArtDefManager |
8 |
16 |
| Graphics |
8 |
35 |
| StrategicView |
8 |
32 |
| FGXModelFramework |
7 |
16 |
| LandmarkPackageEntry |
7 |
42 |
| VisualEffectSystem |
7 |
27 |
| XML |
7 |
21 |
| OverlaySystem |
5 |
25 |
| CPreprocessor |
4 |
5 |
| Civ6App |
4 |
12 |
| FNetLobbySteam |
4 |
16 |
| FOW |
4 |
20 |
| cppcodec |
4 |
12 |
| CityGen |
3 |
8 |
| CoastlineWaves |
3 |
20 |
| ColorKeySystem |
3 |
20 |
| ModelPackageEntry |
3 |
18 |
| Particle |
3 |
19 |
| WonderMoviePackageEntry |
3 |
18 |
| Aspyr |
2 |
16 |
| FGXModel |
2 |
15 |
| IndirectLightingGrid |
2 |
13 |
| LuaSystem |
2 |
23 |
| ModelVisSystem |
2 |
5 |
| Terrain |
2 |
20 |
| UILensModelSystem |
2 |
7 |
| AOSystem |
1 |
4 |
| AppHost |
1 |
14 |
| AudioMiner |
1 |
4 |
| CameraAnimationPackageEntry |
1 |
6 |
| Crypto |
1 |
2 |
| Events |
1 |
0 |
| FNetLobbyEOS |
1 |
2 |
| FOWMeshVisSystem |
1 |
3 |
| File |
1 |
2 |
| GLWarmingContext |
1 |
2 |
| LLAudio |
1 |
22 |
| LibraryHelpers |
1 |
9 |
| LightingSystem |
1 |
4 |
| LoadGameViewState |
1 |
3 |
| LuaPlus |
1 |
5 |
| Math |
1 |
2 |
| Path |
1 |
4 |
| RangedArrowSystem |
1 |
4 |
| Reflection |
1 |
0 |
| RenderGlobals |
1 |
3 |
| SkyBoxSystem |
1 |
4 |
| SurfaceSetAllocator |
1 |
3 |
| Tuner |
1 |
5 |
| WaterPackageEntry |
1 |
6 |
| XMLSerialization |
1 |
1 |
| hashidsxx |
1 |
2 |
| int (*)(BLP |
1 |
0 |
| int (*)(bool, WorldView |
1 |
0 |
| int ()(bool, char const, BLP |
1 |
0 |
| int ()(char const, bool, BLP |
1 |
0 |
| int (BLP |
1 |
0 |
| int (bool, WorldView |
1 |
0 |
| int (bool, char const*, BLP |
1 |
0 |
| int (char const*, bool, BLP |
1 |
0 |
| void (*)(ctp |
1 |
0 |
| void (ctp |
1 |
0 |