Decompile some of UnkSystem1 (#28)

This commit is contained in:
Yanis
2026-01-21 20:50:26 +01:00
committed by GitHub
parent 47785bb953
commit 7803163df2
13 changed files with 426 additions and 93 deletions
@@ -14,6 +14,15 @@ src/000_Second/Game/GameModeManagerBase_104.cpp:
.text start:0x02061ae4 end:0x02061ce0
.data start:0x020b1e58 end:0x020b1e7c
src/000_Second/UnkSystem1_Base.cpp:
.text start:0x020667b0 end:0x02067244
.data start:0x020b2070 end:0x020b209c
src/000_Second/UnkSystem1_Derived1.cpp:
complete
.text start:0x02067244 end:0x020674a8
.data start:0x020b209c end:0x020b20d0
src/000_Second/Actor/Actor.cpp:
.text start:0x02098388 end:0x02098654
.data start:0x020b30e4 end:0x020b3148
+7 -7
View File
@@ -1761,7 +1761,7 @@ from:0x02066734 kind:arm_call to:0x0206665c module:overlay(0)
from:0x02066768 kind:arm_call to:0x0203d210 module:main
from:0x02066774 kind:load to:0x02066778 module:overlay(0)
from:0x02066780 kind:arm_call_thumb to:0x0201556c module:main
from:0x020667d0 kind:load to:0x020b2078 module:overlay(0)
from:0x020667d0 kind:load to:0x020b2070 add:8 module:overlay(0)
from:0x02066878 kind:arm_call to:0x02066a08 module:overlay(0)
from:0x020669a4 kind:arm_call to:0x020669dc module:overlay(0)
from:0x020669ac kind:load to:0x020b504c module:overlay(0)
@@ -1801,21 +1801,21 @@ from:0x02067228 kind:load to:0x027e0d04 module:dtcm
from:0x0206722c kind:load to:0x020b62a8 module:overlay(0)
from:0x02067230 kind:load to:0x020d78c2 module:overlay(24)
from:0x02067258 kind:arm_call to:0x020667b0 module:overlay(0)
from:0x02067274 kind:load to:0x020b20a4 module:overlay(0)
from:0x02067274 kind:load to:0x020b209c add:8 module:overlay(0)
from:0x0206728c kind:arm_call to:0x020667b0 module:overlay(0)
from:0x020672a8 kind:load to:0x020b20a4 module:overlay(0)
from:0x020672a8 kind:load to:0x020b209c add:8 module:overlay(0)
from:0x020672c4 kind:arm_call to:0x020669b4 module:overlay(0)
from:0x020672dc kind:arm_call to:0x02067e60 module:overlay(0)
from:0x020672ec kind:load to:0x020b20a4 module:overlay(0)
from:0x020672ec kind:load to:0x020b209c add:8 module:overlay(0)
from:0x020672f0 kind:load to:0x020b504c module:overlay(0)
from:0x0206730c kind:arm_call to:0x020669b4 module:overlay(0)
from:0x02067324 kind:arm_call to:0x02067e60 module:overlay(0)
from:0x0206732c kind:arm_call to:0x02011ff4 module:main
from:0x0206733c kind:load to:0x020b20a4 module:overlay(0)
from:0x0206733c kind:load to:0x020b209c add:8 module:overlay(0)
from:0x02067340 kind:load to:0x020b504c module:overlay(0)
from:0x0206735c kind:arm_call to:0x020669b4 module:overlay(0)
from:0x02067374 kind:arm_call to:0x02067e60 module:overlay(0)
from:0x02067384 kind:load to:0x020b20a4 module:overlay(0)
from:0x02067384 kind:load to:0x020b209c add:8 module:overlay(0)
from:0x02067388 kind:load to:0x020b504c module:overlay(0)
from:0x0206739c kind:arm_call to:0x020669b4 module:overlay(0)
from:0x020673b8 kind:arm_call to:0x02067e60 module:overlay(0)
@@ -10736,7 +10736,7 @@ from:0x020b4014 kind:load to:0x020b3be4 module:overlay(0)
from:0x020b401c kind:load to:0x020b3c2c module:overlay(0)
from:0x020b4024 kind:load to:0x020b3a24 module:overlay(0)
from:0x020b402c kind:load to:0x020b38b4 module:overlay(0)
from:0x020b4034 kind:load to:0x020b38a4 module:overlay(0)
from:0x020b4034 kind:load to:0x020b389c add:8 module:overlay(0)
from:0x020b403c kind:load to:0x020b38c4 module:overlay(0)
from:0x020b4044 kind:load to:0x020b3a34 module:overlay(0)
from:0x020b404c kind:load to:0x020b38f4 module:overlay(0)
+21 -21
View File
@@ -686,28 +686,28 @@ func_ov000_02066714 kind:function(arm,size=0x40) addr:0x02066714
func_ov000_02066754 kind:function(arm,size=0x24) addr:0x02066754
func_ov000_02066778 kind:function(arm,size=0x14) addr:0x02066778
func_ov000_0206678c kind:function(arm,size=0x24) addr:0x0206678c
func_ov000_020667b0 kind:function(arm,size=0x28) addr:0x020667b0
_ZN21UnkSystem1_ov000_Base8vfunc_00Ev kind:function(arm,size=0x1c) addr:0x020667d8
_ZN21UnkSystem1_ov000_BaseC2Ei kind:function(arm,size=0x28) addr:0x020667b0
_ZN21UnkSystem1_ov000_Base8vfunc_00Ei kind:function(arm,size=0x1c) addr:0x020667d8
_ZN21UnkSystem1_ov000_Base8vfunc_04Ev kind:function(arm,size=0x1c0) addr:0x020667f4
func_ov000_020669b4 kind:function(arm,size=0x18) addr:0x020669b4
func_ov000_020669cc kind:function(arm,size=0x4) addr:0x020669cc
func_ov000_020669d0 kind:function(arm,size=0x8) addr:0x020669d0
_ZN21UnkSystem1_ov000_Base19func_ov000_020669b4EPh kind:function(arm,size=0x18) addr:0x020669b4
_ZN21UnkSystem1_ov000_Base8vfunc_08Ei kind:function(arm,size=0x4) addr:0x020669cc
_ZN21UnkSystem1_ov000_Base8vfunc_0CEv kind:function(arm,size=0x8) addr:0x020669d0
_ZN21UnkSystem1_ov000_Base8vfunc_18Ev kind:function(arm,size=0x4) addr:0x020669d8
func_ov000_020669dc kind:function(arm,size=0x2c) addr:0x020669dc
func_ov000_02066a08 kind:function(arm,size=0x54) addr:0x02066a08
func_ov000_02066a5c kind:function(arm,size=0x3a0) addr:0x02066a5c
_ZN21UnkSystem1_ov000_Base8vfunc_14Ev kind:function(arm,size=0x438) addr:0x02066dfc
func_ov000_02067234 kind:function(arm,size=0x8) addr:0x02067234
_ZN21UnkSystem1_ov000_Base19func_ov000_020669dcEv kind:function(arm,size=0x2c) addr:0x020669dc
_ZN21UnkSystem1_ov000_Base19func_ov000_02066a08EP10UnkStruct5 kind:function(arm,size=0x54) addr:0x02066a08
_ZN21UnkSystem1_ov000_Base8vfunc_10EPt kind:function(arm,size=0x3a0) addr:0x02066a5c
_ZN21UnkSystem1_ov000_Base8vfunc_14EPv kind:function(arm,size=0x438) addr:0x02066dfc
_ZN21UnkSystem1_ov000_Base8vfunc_1CEjii kind:function(arm,size=0x8) addr:0x02067234
_ZN21UnkSystem1_ov000_Base8vfunc_20Eiii kind:function(arm,size=0x8) addr:0x0206723c
_ZN25UnkSystem1_ov000_Derived1C2Eii kind:function(arm,size=0x34) addr:0x02067244
func_ov000_02067278 kind:function(arm,size=0x34) addr:0x02067278
func_ov000_020672ac kind:function(arm,size=0x48) addr:0x020672ac
func_ov000_020672f4 kind:function(arm,size=0x50) addr:0x020672f4
_ZN25UnkSystem1_ov000_Derived1C2EiPN24UnkStruct_ov000_02067bc410UnkStruct1E kind:function(arm,size=0x34) addr:0x02067244
_ZN25UnkSystem1_ov000_Derived1C1EiPN24UnkStruct_ov000_02067bc410UnkStruct1E kind:function(arm,size=0x34) addr:0x02067278
_ZN25UnkSystem1_ov000_Derived1D1Ev kind:function(arm,size=0x48) addr:0x020672ac
_ZN25UnkSystem1_ov000_Derived1D0Ev kind:function(arm,size=0x50) addr:0x020672f4
_ZN25UnkSystem1_ov000_Derived1D2Ev kind:function(arm,size=0x48) addr:0x02067344
func_ov000_0206738c kind:function(arm,size=0x3c) addr:0x0206738c
func_ov000_020673c8 kind:function(arm,size=0x6c) addr:0x020673c8
_ZN25UnkSystem1_ov000_Derived119func_ov000_0206738cEv kind:function(arm,size=0x3c) addr:0x0206738c
_ZN25UnkSystem1_ov000_Derived18vfunc_08Ei kind:function(arm,size=0x6c) addr:0x020673c8
_ZN25UnkSystem1_ov000_Derived18vfunc_0CEv kind:function(arm,size=0x40) addr:0x02067434
_ZN25UnkSystem1_ov000_Derived18vfunc_10Ev kind:function(arm,size=0x34) addr:0x02067474
_ZN25UnkSystem1_ov000_Derived18vfunc_10EPt kind:function(arm,size=0x34) addr:0x02067474
func_ov000_020674a8 kind:function(arm,size=0xc0) addr:0x020674a8
func_ov000_02067568 kind:function(arm,size=0x14) addr:0x02067568
func_ov000_0206757c kind:function(arm,size=0x60) addr:0x0206757c
@@ -733,13 +733,13 @@ func_ov000_02067c9c kind:function(arm,size=0x5c) addr:0x02067c9c
_ZN24UnkStruct_ov000_020b504c19func_ov000_02067cf8EiiPN24UnkStruct_ov000_02067bc410UnkStruct1E kind:function(arm,size=0x168) addr:0x02067cf8
_ZN24UnkStruct_ov000_020b504c19func_ov000_02067e60Ehi kind:function(arm,size=0xfc) addr:0x02067e60
func_ov000_02067f5c kind:function(arm,size=0x2c) addr:0x02067f5c
func_ov000_02067f88 kind:function(arm,size=0xe0) addr:0x02067f88
_ZN24UnkStruct_ov000_020b504c19func_ov000_02067f88Eii kind:function(arm,size=0xe0) addr:0x02067f88
func_ov000_02068068 kind:function(arm,size=0x14) addr:0x02068068
_ZN24UnkStruct_ov000_020b504c19func_ov000_0206807cEPvS0_ kind:function(arm,size=0x48) addr:0x0206807c
func_ov000_020680c4 kind:function(arm,size=0xd0) addr:0x020680c4
func_ov000_02068194 kind:function(arm,size=0x98) addr:0x02068194
func_ov000_0206822c kind:function(arm,size=0x94) addr:0x0206822c
_ZN24UnkStruct_ov000_02067bc419func_ov000_020682c0Ei kind:function(arm,size=0x24) addr:0x020682c0
_ZN24UnkStruct_ov000_020b504c19func_ov000_020682c0Ei kind:function(arm,size=0x24) addr:0x020682c0
func_ov000_020682e4 kind:function(arm,size=0x2c) addr:0x020682e4
func_ov000_02068310 kind:function(arm,size=0x44) addr:0x02068310
func_ov000_02068354 kind:function(arm,size=0x24) addr:0x02068354
@@ -3483,8 +3483,8 @@ data_ov000_020b2038 kind:data(any) addr:0x020b2038
data_ov000_020b2048 kind:data(any) addr:0x020b2048
data_ov000_020b2060 kind:data(any) addr:0x020b2060
data_ov000_020b2068 kind:data(any) addr:0x020b2068
data_ov000_020b2078 kind:data(any) addr:0x020b2078
data_ov000_020b20a4 kind:data(any) addr:0x020b20a4
_ZTV21UnkSystem1_ov000_Base kind:data(any) addr:0x020b2070
_ZTV25UnkSystem1_ov000_Derived1 kind:data(any) addr:0x020b209c
data_ov000_020b20d0 kind:data(any) addr:0x020b20d0
data_ov000_020b20dc kind:data(any) addr:0x020b20dc
data_ov000_020b20e4 kind:data(any) addr:0x020b20e4
@@ -14,6 +14,14 @@ src/000_Second/Game/GameModeManagerBase_104.cpp:
.text start:0x0206306c end:0x02063268
.data start:0x020b3658 end:0x020b367c
src/000_Second/UnkSystem1_Base.cpp:
.text start:0x02067d38 end:0x020687e0
.data start:0x020b3870 end:0x020b389c
src/000_Second/UnkSystem1_Derived1.cpp:
.text start:0x020687e0 end:0x02068a44
.data start:0x020b389c end:0x020b38d0
src/000_Second/Actor/Actor.cpp:
.text start:0x02099b30 end:0x02099dfc
.data start:0x020b48e4 end:0x020b4948
+6 -6
View File
@@ -1761,7 +1761,7 @@ from:0x02067cbc kind:arm_call to:0x02067be4 module:overlay(0)
from:0x02067cf0 kind:arm_call to:0x0203e740 module:main
from:0x02067cfc kind:load to:0x02067d00 module:overlay(0)
from:0x02067d08 kind:arm_call_thumb to:0x02015504 module:main
from:0x02067d58 kind:load to:0x020b3878 module:overlay(0)
from:0x02067d58 kind:load to:0x020b3870 add:8 module:overlay(0)
from:0x02067e00 kind:arm_call to:0x02067f90 module:overlay(0)
from:0x02067f2c kind:arm_call to:0x02067f64 module:overlay(0)
from:0x02067f34 kind:load to:0x020b684c module:overlay(0)
@@ -1801,21 +1801,21 @@ from:0x020687c4 kind:load to:0x027e0d04 module:dtcm
from:0x020687c8 kind:load to:0x020b7ab8 module:overlay(0)
from:0x020687cc kind:load to:0x020d9266 module:overlay(24)
from:0x020687f4 kind:arm_call to:0x02067d38 module:overlay(0)
from:0x02068810 kind:load to:0x020b38a4 module:overlay(0)
from:0x02068810 kind:load to:0x020b389c add:8 module:overlay(0)
from:0x02068828 kind:arm_call to:0x02067d38 module:overlay(0)
from:0x02068844 kind:load to:0x020b38a4 module:overlay(0)
from:0x02068844 kind:load to:0x020b389c add:8 module:overlay(0)
from:0x02068860 kind:arm_call to:0x02067f3c module:overlay(0)
from:0x02068878 kind:arm_call to:0x02069404 module:overlay(0)
from:0x02068888 kind:load to:0x020b38a4 module:overlay(0)
from:0x02068888 kind:load to:0x020b389c add:8 module:overlay(0)
from:0x0206888c kind:load to:0x020b684c module:overlay(0)
from:0x020688a8 kind:arm_call to:0x02067f3c module:overlay(0)
from:0x020688c0 kind:arm_call to:0x02069404 module:overlay(0)
from:0x020688c8 kind:arm_call to:0x02011ff4 module:main
from:0x020688d8 kind:load to:0x020b38a4 module:overlay(0)
from:0x020688d8 kind:load to:0x020b389c add:8 module:overlay(0)
from:0x020688dc kind:load to:0x020b684c module:overlay(0)
from:0x020688f8 kind:arm_call to:0x02067f3c module:overlay(0)
from:0x02068910 kind:arm_call to:0x02069404 module:overlay(0)
from:0x02068920 kind:load to:0x020b38a4 module:overlay(0)
from:0x02068920 kind:load to:0x020b389c add:8 module:overlay(0)
from:0x02068924 kind:load to:0x020b684c module:overlay(0)
from:0x02068938 kind:arm_call to:0x02067f3c module:overlay(0)
from:0x02068954 kind:arm_call to:0x02069404 module:overlay(0)
+21 -21
View File
@@ -686,28 +686,28 @@ func_ov000_02067c9c kind:function(arm,size=0x40) addr:0x02067c9c
func_ov000_02067cdc kind:function(arm,size=0x24) addr:0x02067cdc
func_ov000_02067d00 kind:function(arm,size=0x14) addr:0x02067d00
func_ov000_02067d14 kind:function(arm,size=0x24) addr:0x02067d14
func_ov000_02067d38 kind:function(arm,size=0x28) addr:0x02067d38
_ZN21UnkSystem1_ov000_Base8vfunc_00Ev kind:function(arm,size=0x1c) addr:0x02067d60
_ZN21UnkSystem1_ov000_BaseC2Ei kind:function(arm,size=0x28) addr:0x02067d38
_ZN21UnkSystem1_ov000_Base8vfunc_00Ei kind:function(arm,size=0x1c) addr:0x02067d60
_ZN21UnkSystem1_ov000_Base8vfunc_04Ev kind:function(arm,size=0x1c0) addr:0x02067d7c
func_ov000_02067f3c kind:function(arm,size=0x18) addr:0x02067f3c
func_ov000_02067f54 kind:function(arm,size=0x4) addr:0x02067f54
func_ov000_02067f58 kind:function(arm,size=0x8) addr:0x02067f58
_ZN21UnkSystem1_ov000_Base19func_ov000_020669b4EPh kind:function(arm,size=0x18) addr:0x02067f3c
_ZN21UnkSystem1_ov000_Base8vfunc_08Ei kind:function(arm,size=0x4) addr:0x02067f54
_ZN21UnkSystem1_ov000_Base8vfunc_0CEv kind:function(arm,size=0x8) addr:0x02067f58
_ZN21UnkSystem1_ov000_Base8vfunc_18Ev kind:function(arm,size=0x4) addr:0x02067f60
func_ov000_02067f64 kind:function(arm,size=0x2c) addr:0x02067f64
func_ov000_02067f90 kind:function(arm,size=0x54) addr:0x02067f90
func_ov000_02067fe4 kind:function(arm,size=0x3a0) addr:0x02067fe4
_ZN21UnkSystem1_ov000_Base8vfunc_14Ev kind:function(arm,size=0x44c) addr:0x02068384
func_ov000_020687d0 kind:function(arm,size=0x8) addr:0x020687d0
_ZN21UnkSystem1_ov000_Base19func_ov000_020669dcEv kind:function(arm,size=0x2c) addr:0x02067f64
_ZN21UnkSystem1_ov000_Base19func_ov000_02066a08EP10UnkStruct5 kind:function(arm,size=0x54) addr:0x02067f90
_ZN21UnkSystem1_ov000_Base8vfunc_10EPt kind:function(arm,size=0x3a0) addr:0x02067fe4
_ZN21UnkSystem1_ov000_Base8vfunc_14EPv kind:function(arm,size=0x44c) addr:0x02068384
_ZN21UnkSystem1_ov000_Base8vfunc_1CEjii kind:function(arm,size=0x8) addr:0x020687d0
_ZN21UnkSystem1_ov000_Base8vfunc_20Eiii kind:function(arm,size=0x8) addr:0x020687d8
_ZN25UnkSystem1_ov000_Derived1C2Eii kind:function(arm,size=0x34) addr:0x020687e0
func_ov000_02068814 kind:function(arm,size=0x34) addr:0x02068814
func_ov000_02068848 kind:function(arm,size=0x48) addr:0x02068848
func_ov000_02068890 kind:function(arm,size=0x50) addr:0x02068890
_ZN25UnkSystem1_ov000_Derived1C2EiPN24UnkStruct_ov000_02067bc410UnkStruct1E kind:function(arm,size=0x34) addr:0x020687e0
_ZN25UnkSystem1_ov000_Derived1C1EiPN24UnkStruct_ov000_02067bc410UnkStruct1E kind:function(arm,size=0x34) addr:0x02068814
_ZN25UnkSystem1_ov000_Derived1D1Ev kind:function(arm,size=0x48) addr:0x02068848
_ZN25UnkSystem1_ov000_Derived1D0Ev kind:function(arm,size=0x50) addr:0x02068890
_ZN25UnkSystem1_ov000_Derived1D2Ev kind:function(arm,size=0x48) addr:0x020688e0
func_ov000_02068928 kind:function(arm,size=0x3c) addr:0x02068928
func_ov000_02068964 kind:function(arm,size=0x6c) addr:0x02068964
_ZN25UnkSystem1_ov000_Derived119func_ov000_0206738cEv kind:function(arm,size=0x3c) addr:0x02068928
_ZN25UnkSystem1_ov000_Derived18vfunc_08Ei kind:function(arm,size=0x6c) addr:0x02068964
_ZN25UnkSystem1_ov000_Derived18vfunc_0CEv kind:function(arm,size=0x40) addr:0x020689d0
_ZN25UnkSystem1_ov000_Derived18vfunc_10Ev kind:function(arm,size=0x34) addr:0x02068a10
_ZN25UnkSystem1_ov000_Derived18vfunc_10EPt kind:function(arm,size=0x34) addr:0x02068a10
func_ov000_02068a44 kind:function(arm,size=0xc0) addr:0x02068a44
func_ov000_02068b04 kind:function(arm,size=0x14) addr:0x02068b04
func_ov000_02068b18 kind:function(arm,size=0x60) addr:0x02068b18
@@ -734,13 +734,13 @@ func_ov000_02069240 kind:function(arm,size=0x5c) addr:0x02069240
_ZN24UnkStruct_ov000_020b504c19func_ov000_02067cf8EiiPN24UnkStruct_ov000_02067bc410UnkStruct1E kind:function(arm,size=0x168) addr:0x0206929c
_ZN24UnkStruct_ov000_020b504c19func_ov000_02067e60Ehi kind:function(arm,size=0xfc) addr:0x02069404
func_ov000_02069500 kind:function(arm,size=0x2c) addr:0x02069500
func_ov000_0206952c kind:function(arm,size=0xe0) addr:0x0206952c
_ZN24UnkStruct_ov000_020b504c19func_ov000_02067f88Eii kind:function(arm,size=0xe0) addr:0x0206952c
func_ov000_0206960c kind:function(arm,size=0x14) addr:0x0206960c
_ZN24UnkStruct_ov000_020b504c19func_ov000_0206807cEPvS0_ kind:function(arm,size=0x48) addr:0x02069620
func_ov000_02069668 kind:function(arm,size=0xd0) addr:0x02069668
func_ov000_02069738 kind:function(arm,size=0x98) addr:0x02069738
func_ov000_020697d0 kind:function(arm,size=0x94) addr:0x020697d0
_ZN24UnkStruct_ov000_02067bc419func_ov000_020682c0Ei kind:function(arm,size=0x24) addr:0x02069864
_ZN24UnkStruct_ov000_020b504c19func_ov000_020682c0Ei kind:function(arm,size=0x24) addr:0x02069864
func_ov000_02069888 kind:function(arm,size=0x2c) addr:0x02069888
func_ov000_020698b4 kind:function(arm,size=0x44) addr:0x020698b4
func_ov000_020698f8 kind:function(arm,size=0x24) addr:0x020698f8
@@ -3483,8 +3483,8 @@ data_ov000_020b3838 kind:data(any) addr:0x020b3838
data_ov000_020b3848 kind:data(any) addr:0x020b3848
data_ov000_020b3860 kind:data(any) addr:0x020b3860
data_ov000_020b3868 kind:data(any) addr:0x020b3868
data_ov000_020b3878 kind:data(any) addr:0x020b3878
data_ov000_020b38a4 kind:data(any) addr:0x020b38a4
_ZTV21UnkSystem1_ov000_Base kind:data(any) addr:0x020b3870
_ZTV25UnkSystem1_ov000_Derived1 kind:data(any) addr:0x020b389c
data_ov000_020b38d0 kind:data(any) addr:0x020b38d0
data_ov000_020b38dc kind:data(any) addr:0x020b38dc
data_ov000_020b38e4 kind:data(any) addr:0x020b38e4
+168
View File
@@ -0,0 +1,168 @@
#pragma once
#include "System/SysNew.hpp"
#include "global.h"
#include "types.h"
#define BMG_MAGIC "MESGbmg1"
#define BMG_GET_INF1(pGroups, flags) ((pGroups)->entries[(flags) >> 0x10].func_02037258((flags) & 0xFFFF))
#define BMG_GET_MSG_OFFSET(pGroups, flags) (BMG_GET_INF1((pGroups), (flags))->offset)
#define BMG_GET_MSG_ADDR(pGroups, flags) \
((u32) (pGroups)->entries[(flags) >> 0x10].pDAT1 + (BMG_GET_MSG_OFFSET((pGroups), (flags)) & ~1))
enum BMGTag {
/* "INF1" */ BMG_TAG_INF1 = '1FNI',
/* "FLW1" */ BMG_TAG_FLW1 = '1WLF',
/* "FLI1" */ BMG_TAG_FLI1 = '1ILF',
/* "DAT1" */ BMG_TAG_DAT1 = '1TAD',
/* "MID1" */ BMG_TAG_MID1 = '1DIM',
/* "STR1" */ BMG_TAG_STR1 = '1RTS',
};
enum BMGEncoding {
/* 1 */ BMG_ENCODING_CP1252 = 1,
/* 2 */ BMG_ENCODING_UTF16_BE,
/* 3 */ BMG_ENCODING_SHIFT_JIS,
/* 4 */ BMG_ENCODING_UTF8,
/* 5 */ BMG_ENCODING_MAX
};
//! TODO: find if this is still a thing
typedef enum BMGFileIndex {
/* 0 */ BMG_FILE_INDEX_0,
/* 34 */ BMG_FILE_INDEX_MAX
} BMGFileIndex;
struct SectionBase {
/* 00 */ u32 tag; // "INF1", "DAT1", ...
/* 04 */ u32 size; // the size of the section
/* 08 */
};
struct BMGHeader {
/* 00 */ char magic[8]; // always "MESGbmg1"
/* 08 */ u32 fileSize; // the size of the BMG file
/* 0C */ u32 numSections; // the number of sections (INF1, DAT1, ...)
/* 10 */ u8 encoding; // see `BMGEncoding`
/* 11 */ u8 unk_11[0x0F]; // alignment padding?
/* 20 */
};
struct EntryINF1 {
/* 00 */ u32 offset; // relative to the end of the DAT1 header
/* 04 */ u8 mUnk_04; // flags/attributes? (+0x04 to +0x06)
/* 05 */ u8 mUnk_05;
/* 06 */ u8 mUnk_06;
/* 07 */ u8 mUnk_07;
/* 08 */
};
struct SectionINF1 {
/* 00 */ SectionBase base;
/* 08 */ u16 numEntries;
/* 0A */ u16 entrySize;
/* 0C */ u16 groupId;
/* 0E */ u8 colorId;
/* 0F */ u8 mUnk_0F[0x1]; // alignment padding?
/* 10 */ EntryINF1 *entries;
/* 14 */
};
enum InstrType {
/* 1 */ FLW1_TYPE_SHOW_MSG = 1,
/* 2 */ FLW1_TYPE_BRANCH = 2,
/* 3 */ FLW1_TYPE_EVENT = 3,
/* 4 */
};
struct InstrShowMsg {
/* 01 */ u8 bmgFileIndex; // index into sBMGFiles
/* 02 */ u16 msgIndex; // index of INF1 entry
/* 04 */ s16 nextIndex; // index of FLW1 entry, 0xFFFF stops the conversation
/* 06 */ s16 nextBMGFileIndex; // index into sBMGFiles
/* 08 */
};
struct InstrBranch {
/* 01 */ u8 mUnk_01;
/* 02 */ u16 funcIndex; // index of the query function to run
/* 04 */ u16 funcArg; // the argument to use in the function
/* 06 */ u16 flwEntry; // the index of the second section table to be used next in the conversation.
/* 08 */
};
struct InstrEvent {
/* 01 */ u8 funcIndex; // index of the query function to run
/* 02 */ u16 flwEntry; // the index of the second section table to be used next in the conversation.
/* 04 */ u32 funcArg; // the argument to use in the function
/* 08 */
};
struct FLW1Instr {
/* 00 */ u8 type; // see InstrType
/* 01 */ union {
InstrShowMsg showMsg;
InstrBranch branch;
InstrEvent event;
};
/* 09 */
};
struct SectionFLW1 {
/* 00 */ SectionBase base;
/* 04 */ u16 numInstructions;
/* 08 */ u16 numLabels;
/* 0C */ u32 mUnk_0C; // always zero?
/* 10 */ FLW1Instr *instructions;
/* 14 */ s16 *flwEntries;
/* 18 */ s8 *bmgFileIndices;
/* 1C */
};
struct EntryFLI1 {
/* 00 */ u32 msgFlowID;
/* 04 */ u32 msgFlowNodeIndex;
/* 08 */
};
struct SectionFLI1 {
/* 00 */ SectionBase base;
/* 04 */ u16 numEntries;
/* 08 */ u16 entrySize;
/* 0C */ u32 mUnk_0C; // always zero?
/* 10 */ EntryFLI1 *entries;
/* 14 */
};
struct EntryDAT1 {
/* 00 */ char *text;
/* 04 */
};
struct SectionDAT1 {
/* 00 */ SectionBase base;
/* 08 */ EntryDAT1 *entries;
/* 0C */
};
struct BMGFileInfo {
/* 00 */ BMGHeader *pHeader; // pointer to the file's header
/* 04 */ SectionINF1 *pINF1; // pointer to the data informations (INF -> informations)
/* 08 */ SectionFLW1 *pFLW1; // pointer to the message flow data (FLW -> flow)
/* 0C */ SectionFLI1 *pFLI1; // pointer to the message flow index table (FLI -> flow index table)
/* 10 */ SectionDAT1 *pDAT1; // pointer to the data (DAT -> data)
/* 14 */ BMGHeader *mUnk_14; // same as pHeader (?)
/* 18 */ s16 mUnk_18; // stores `func_020372F0`->param_3 value (currently undetermined purpose)
/* 1A */ s16 groupId; // stores the group id
/* 1C */
};
class BMGGroups : public SysObject {
public:
/* 00 */ BMGFileInfo *entries; // accessed with `groupId`
/* 04 */ s32 numEntries;
/* 08 */
BMGGroups();
~BMGGroups();
};
+16 -5
View File
@@ -2,6 +2,7 @@
#include "Game/GameModeManager.hpp"
#include "Item/Item.hpp"
#include "Message/BMG.hpp"
#include "System/SysNew.hpp"
#include "Unknown/UnkStruct_02049b18.hpp"
#include "global.h"
@@ -34,14 +35,22 @@ public:
unk8 mUnk_0E;
unk8 mUnk_0F;
UnkStruct1(unk32 param1) {
UnkStruct1(unk32 param1, unk32 param2) {
mUnk_00 = 0;
mUnk_08 = -1;
mUnk_08 = param1;
mUnk_0C = 0;
mUnk_0D = 0;
mUnk_04 = 0;
}
UnkStruct1(unk32 param1) {
mUnk_00 = 0;
mUnk_04 = param1;
mUnk_08 = param1;
mUnk_0C = 0;
mUnk_0D = 0;
}
UnkStruct1() {
mUnk_00 = 0;
mUnk_08 = -1;
@@ -71,9 +80,9 @@ typedef void (*UnkCallback2)();
class UnkStruct_ov000_020b504c_Sub3 : public SysObject {
public:
/* 00 */ unk32 mUnk_00;
/* 04 */ unk32 mUnk_04;
/* 08 */ unk32 mUnk_08;
/* 00 */ SectionINF1 *mUnk_00;
/* 04 */ BMGHeader *mUnk_04;
/* 08 */ BMGHeader *mUnk_08;
/* 0C */ unk32 mUnk_0C;
/* 10 */ unk32 mUnk_10;
/* 14 */
@@ -119,6 +128,8 @@ public:
void func_ov000_0206807c(void *param1, void *param2);
void func_ov000_0206807c(void *param1, unk32 param2);
unk32 func_ov000_02067f88(unk32 param1, unk32 param2);
void func_ov001_020be668(void);
void func_ov001_020be6f4(void);
};
+43 -32
View File
@@ -5,21 +5,34 @@
#include "global.h"
#include "types.h"
// seems to be a filesystem targeting the save file
struct UnkStruct5 {
unk8 mUnk_00;
u8 mUnk_01;
u16 mUnk_02;
u16 mUnk_04;
u8 mUnk_06;
};
// data_ov000_020b2078
class UnkSystem1_ov000_Base : public SysObject {
public:
/* 00 (vtable) */
/* 04 */ unk16 mUnk_04;
/* 06 */ u16 mUnk_06;
/* 08 */ unk32 mUnk_08;
UnkSystem1_ov000_Base(unk32 param1, unk32 param2);
UnkSystem1_ov000_Base(unk32 param1);
bool func_ov000_020669b4(u8 *param1);
void func_ov000_020669dc();
unk32 func_ov000_02066a08(UnkStruct5 *param1);
/* 00 */ virtual void vfunc_00(); // func_ov000_020667d8
/* 00 */ virtual void vfunc_00(unk32 param1); // func_ov000_020667d8
/* 04 */ virtual void vfunc_04(); // func_ov000_020667f4
/* 08 */ virtual void vfunc_08(unk32 param1); // func_ov000_020669cc
/* 0C */ virtual void vfunc_0C(); // func_ov000_020669d0
/* 10 */ virtual void vfunc_10(); // func_ov000_02066a5c
/* 14 */ virtual void vfunc_14(); // func_ov000_02066dfc
/* 0C */ virtual unk32 vfunc_0C(); // func_ov000_020669d0
/* 10 */ virtual unk32 vfunc_10(u16 *param1); // func_ov000_02066a5c
/* 14 */ virtual unk32 vfunc_14(void *param1); // func_ov000_02066dfc
/* 18 */ virtual void vfunc_18(); // func_ov000_020669d8
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3); // func_ov000_02067234
/* 20 */ virtual unk32 vfunc_20(unk32 param1, unk32 param2, unk32 param3); // func_ov000_0206723c
@@ -30,21 +43,19 @@ public:
class UnkSystem1_ov000_Derived1 : public UnkSystem1_ov000_Base {
public:
/* 00 (base) */
/* 04 */ unk16 mUnk_04;
/* 06 */ unk16 mUnk_06;
/* 08 */ unk32 mUnk_08;
/* 0C */ unk32 mUnk_0C;
/* 0C */ UnkStruct_ov000_02067bc4::UnkStruct1 *mUnk_0C;
/* 10 */ unk16 mUnk_10;
/* 12 */ unk8 mUnk_12; // file slot index
/* 13 */ unk8 mUnk_13;
/* 14 */
UnkSystem1_ov000_Derived1();
UnkSystem1_ov000_Derived1(unk32 param1, unk32 param2);
UnkSystem1_ov000_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
void func_ov000_0206738c();
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov000_020673c8
/* 0C */ virtual void vfunc_0C() override; // func_ov000_02067434
/* 10 */ virtual void vfunc_10() override; // func_ov000_02067474
/* 0C */ virtual unk32 vfunc_0C() override; // func_ov000_02067434
/* 10 */ virtual unk32 vfunc_10(u16 *param1) override; // func_ov000_02067474
/* 24 */ virtual ~UnkSystem1_ov000_Derived1(); // func_ov000_020672ac & func_ov000_020672f4
};
@@ -56,7 +67,7 @@ public:
UnkSystem1_ov000_Derived2(unk32 param1, unk32 param2);
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov000_0209fbec
/* 0C */ virtual void vfunc_0C() override; // func_ov000_0209fcdc
/* 0C */ virtual unk32 vfunc_0C() override; // func_ov000_0209fcdc
/* 24 */ virtual ~UnkSystem1_ov000_Derived2() override; // func_ov000_0209fb18 & func_ov000_0209fb5c
};
@@ -65,7 +76,7 @@ class UnkSystem1_ov010 : public UnkSystem1_ov000_Derived1 {
public:
/* 00 (base) */
UnkSystem1_ov010(unk32 param1, unk32 param2);
UnkSystem1_ov010(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov010_020b8844
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3) override; // func_ov010_020b8878
@@ -76,7 +87,7 @@ class UnkSystem1_ov010_Derived1 : public UnkSystem1_ov010 {
public:
/* 00 (base) */
UnkSystem1_ov010_Derived1(unk32 param1, unk32 param2);
UnkSystem1_ov010_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 24 */ virtual ~UnkSystem1_ov010_Derived1() override; // func_ov010_020b88b0
};
@@ -85,7 +96,7 @@ class UnkSystem1_ov016 : public UnkSystem1_ov000_Derived1 {
public:
/* 00 (base) */
UnkSystem1_ov016(unk32 param1, unk32 param2);
UnkSystem1_ov016(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 24 */ virtual ~UnkSystem1_ov016() override; // func_ov016_020b7650
};
@@ -94,7 +105,7 @@ class UnkSystem1_ov016_Derived1 : public UnkSystem1_ov016 {
public:
/* 00 (base) */
UnkSystem1_ov016_Derived1(unk32 param1, unk32 param2);
UnkSystem1_ov016_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 24 */ virtual ~UnkSystem1_ov016_Derived1() override; // func_ov016_020b7664
/* 2C */ virtual void vfunc_2C(); // func_ov016_020b776c
};
@@ -105,7 +116,7 @@ public:
/* 00 (base) */
UnkSystem1_ov019_1();
UnkSystem1_ov019_1(unk32 param1, unk32 param2) :
UnkSystem1_ov019_1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2) :
UnkSystem1_ov000_Derived1(param1, param2) {}
/* 24 */ virtual ~UnkSystem1_ov019_1() override {} // func_ov019_020c4914
@@ -121,7 +132,7 @@ public:
/* 1C */
UnkSystem1_ov019_Derived1();
UnkSystem1_ov019_Derived1(unk32 param1, unk32 param2);
UnkSystem1_ov019_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
void func_ov019_020c5200();
unk32 func_ov019_020c5540(bool param1, unk16 param2);
@@ -137,7 +148,7 @@ class UnkSystem1_ov019_2 : public UnkSystem1_ov000_Derived1 {
public:
/* 00 (base) */
UnkSystem1_ov019_2(unk32 param1, unk32 param2) :
UnkSystem1_ov019_2(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2) :
UnkSystem1_ov000_Derived1(param1, param2) {}
/* 24 */ virtual ~UnkSystem1_ov019_2() override {} // func_ov019_020c4c38
@@ -166,7 +177,7 @@ public:
/* 00 (base) */
/* 14 */
UnkSystem1_ov019_3(unk32 param1, unk32 param2) :
UnkSystem1_ov019_3(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2) :
UnkSystem1_ov000_Derived1(param1, param2) {}
/* 24 */ virtual ~UnkSystem1_ov019_3() override {} // func_ov019_020c5fd0
@@ -201,7 +212,7 @@ class UnkSystem1_ov036 : public UnkSystem1_ov000_Derived1 {
public:
/* 00 (base) */
UnkSystem1_ov036(unk32 param1, unk32 param2);
UnkSystem1_ov036(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 24 */ virtual ~UnkSystem1_ov036() override; // func_ov036_0211eb68
};
@@ -210,7 +221,7 @@ class UnkSystem1_ov036_Derived1 : public UnkSystem1_ov036 {
public:
/* 00 (base) */
UnkSystem1_ov036_Derived1(unk32 param1, unk32 param2);
UnkSystem1_ov036_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 24 */ virtual ~UnkSystem1_ov036_Derived1() override; // func_ov036_02120c18
};
@@ -220,7 +231,7 @@ class UnkSystem1_ov056 : public UnkSystem1_ov000_Derived1 {
public:
/* 00 (base) */
UnkSystem1_ov056(unk32 param1, unk32 param2);
UnkSystem1_ov056(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 24 */ virtual ~UnkSystem1_ov056() override; // func_ov056_0213b910
};
@@ -229,7 +240,7 @@ class UnkSystem1_ov056_Derived1 : public UnkSystem1_ov056 {
public:
/* 00 (base) */
UnkSystem1_ov056_Derived1(unk32 param1, unk32 param2);
UnkSystem1_ov056_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 24 */ virtual ~UnkSystem1_ov056_Derived1() override; // func_ov056_0213d4dc
};
@@ -239,7 +250,7 @@ class UnkSystem1_ov059 : public UnkSystem1_ov000_Derived1 {
public:
/* 00 (base) */
UnkSystem1_ov059(unk32 param1, unk32 param2);
UnkSystem1_ov059(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 24 */ virtual ~UnkSystem1_ov059() override; // func_ov059_021605c8 (?)
};
@@ -248,7 +259,7 @@ class UnkSystem1_ov059_Derived1 : public UnkSystem1_ov059 {
public:
/* 00 (base) */
UnkSystem1_ov059_Derived1(unk32 param1, unk32 param2);
UnkSystem1_ov059_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 24 */ virtual ~UnkSystem1_ov059_Derived1() override; // func_ov059_02160d98
};
@@ -258,7 +269,7 @@ class UnkSystem1_ov062 : public UnkSystem1_ov000_Derived1 {
public:
/* 00 (base) */
UnkSystem1_ov062(unk32 param1, unk32 param2);
UnkSystem1_ov062(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 24 */ virtual ~UnkSystem1_ov062() override; // func_ov062_0215cf18
};
@@ -267,7 +278,7 @@ class UnkSystem1_ov062_Derived1 : public UnkSystem1_ov062 {
public:
/* 00 (base) */
UnkSystem1_ov062_Derived1(unk32 param1, unk32 param2);
UnkSystem1_ov062_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 24 */ virtual ~UnkSystem1_ov062_Derived1() override; // func_ov062_0215e734
};
@@ -277,7 +288,7 @@ class UnkSystem1_ov063 : public UnkSystem1_ov000_Derived1 {
public:
/* 00 (base) */
UnkSystem1_ov063(unk32 param1, unk32 param2);
UnkSystem1_ov063(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 24 */ virtual ~UnkSystem1_ov063() override; // func_ov063_0215f1c0
};
@@ -286,7 +297,7 @@ class UnkSystem1_ov063_Derived1 : public UnkSystem1_ov063 {
public:
/* 00 (base) */
UnkSystem1_ov063_Derived1(unk32 param1, unk32 param2);
UnkSystem1_ov063_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
/* 24 */ virtual ~UnkSystem1_ov063_Derived1() override; // func_ov063_0215f29c
};
+68
View File
@@ -0,0 +1,68 @@
#include "Unknown/UnkStruct_ov000_02067bc4.hpp"
#include "Unknown/UnkSystem1.hpp"
ARM UnkSystem1_ov000_Base::UnkSystem1_ov000_Base(unk32 param1) {
this->mUnk_04 = 0;
this->mUnk_06 = -1;
this->mUnk_08 = param1;
}
ARM void UnkSystem1_ov000_Base::vfunc_00(unk32 param1) {
this->mUnk_08 = param1;
this->mUnk_04 = 0;
this->mUnk_06 = -1;
}
ARM void UnkSystem1_ov000_Base::vfunc_04() {}
ARM bool UnkSystem1_ov000_Base::func_ov000_020669b4(u8 *param1) {
u16 unk_06 = this->mUnk_06;
if (unk_06 <= 0xFF) {
*param1 = unk_06;
return true;
}
return false;
}
ARM void UnkSystem1_ov000_Base::vfunc_08(unk32 param1) {}
ARM unk32 UnkSystem1_ov000_Base::vfunc_0C() {
return 0;
}
ARM void UnkSystem1_ov000_Base::vfunc_18() {}
ARM void UnkSystem1_ov000_Base::func_ov000_020669dc() {
this->vfunc_18();
this->mUnk_06 = -1;
this->mUnk_08 = -1;
}
ARM unk32 UnkSystem1_ov000_Base::func_ov000_02066a08(UnkStruct5 *param1) {
if (this->mUnk_04 == 0) {
this->vfunc_08((param1->mUnk_01 << 16) | param1->mUnk_02);
this->mUnk_04++;
} else {
return this->vfunc_0C();
}
return 0;
}
ARM unk32 UnkSystem1_ov000_Base::vfunc_10(u16 *param1) {
return -1;
}
ARM unk32 UnkSystem1_ov000_Base::vfunc_14(void *param1) {
return 1;
}
ARM unk32 UnkSystem1_ov000_Base::vfunc_1C(u32 param1, unk32 param2, unk32 param3) {
return 1;
}
ARM unk32 UnkSystem1_ov000_Base::vfunc_20(unk32 param1, unk32 param2, unk32 param3) {
return -1;
}
+56
View File
@@ -0,0 +1,56 @@
#include "Unknown/UnkStruct_ov000_02067bc4.hpp"
#include "Unknown/UnkSystem1.hpp"
ARM UnkSystem1_ov000_Derived1::UnkSystem1_ov000_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2) :
UnkSystem1_ov000_Base(-1) {
this->mUnk_0C = param2;
this->mUnk_10 = param1;
}
ARM UnkSystem1_ov000_Derived1::~UnkSystem1_ov000_Derived1() {
u8 local_10[4];
if (this->func_ov000_020669b4(local_10)) {
data_ov000_020b504c.func_ov000_02067e60(local_10[0], this->mUnk_10);
}
}
ARM void UnkSystem1_ov000_Derived1::func_ov000_0206738c() {
u8 local_10[4];
if (this->func_ov000_020669b4(local_10)) {
data_ov000_020b504c.func_ov000_02067e60(local_10[0], this->mUnk_10);
}
}
ARM void UnkSystem1_ov000_Derived1::vfunc_08(unk32 param1) {
if (this->mUnk_0C != 0) {
this->mUnk_06 = data_ov000_020b504c.func_ov000_02067cf8(param1, this->mUnk_10, this->mUnk_0C);
} else {
UnkStruct_ov000_02067bc4::UnkStruct1 local_18(-1);
this->mUnk_06 = data_ov000_020b504c.func_ov000_02067cf8(param1, this->mUnk_10, &local_18);
}
}
ARM unk32 UnkSystem1_ov000_Derived1::vfunc_0C() {
u8 local_10[4];
if (this->func_ov000_020669b4(local_10)) {
return data_ov000_020b504c.func_ov000_02067f88(local_10[0], this->mUnk_10);
}
return 0;
}
ARM unk32 UnkSystem1_ov000_Derived1::vfunc_10(u16 *param1) {
switch (param1[1]) {
case 1:
case 2:
case 3:
return data_ov000_020b504c.func_ov000_020682c0(this->mUnk_10);
default:
break;
}
return this->UnkSystem1_ov000_Base::vfunc_10(param1);
}
@@ -126,7 +126,7 @@ ARM unk32 UnkSystem1_ov019_Derived1::func_ov019_020c5540(bool param1, unk16 para
ARM void UnkSystem1_ov019_Derived1::func_ov019_020c5590(unk32 param1, unk32 param2, unk32 param3) {
data_02049bd4.mUnk_04++;
UnkStruct_ov000_02067bc4::UnkStruct1 auStack_20(param3);
UnkStruct_ov000_02067bc4::UnkStruct1 auStack_20(-1, param3);
this->mUnk_1A = data_ov000_020b504c.func_ov000_02067cf8(param1, this->mUnk_10, &auStack_20);
data_ov000_020b504c.func_ov000_02067bc4(this->mUnk_10)->func_02021bec(1);
data_ov000_020b504c.func_ov000_02067bc4(this->mUnk_10)->func_02021c08();
+2
View File
@@ -139,6 +139,8 @@ config.libs = [
[
Object("000_Second/Game/GameModeManagerBase_104_0C.cpp"),
Object("000_Second/Game/GameModeManagerBase_104.cpp"),
Object("000_Second/UnkSystem1_Base.cpp"),
Object("000_Second/UnkSystem1_Derived1.cpp"),
Object("000_Second/Actor/Actor.cpp"),
Object("000_Second/Actor/ActorManager.cpp"),
Object("000_Second/Actor/ActorUnk_ov000_020a8bb0.cpp"),