Delink all actors and all map objects (#42)

* fix jp config

* disambiguate required relocs and misc fixes

* fix wrong relocs

* generate delinks

* generate configure.py entries

* dsd format and rename symbols

* fix some ambiguated relocs

* disambiguate some relocs

* "disambiguate" some relocs

* identify & fix vtables 1

* identify & fix vtables 2

* identify & fix vtables 3

* remove fake symbols

* fix warnings

* minor symbols name fixes

* change func prefix

* find and name actor ctors

* detect and give names to dtors based on D0

* add .init delinks for actors

* ActorType -> ActorProfile

* getinstance - getprofile

* add rupee .init

* mapobjecttype -> mapobjectprofile

* mapobjecttype -> mapobjectprofile 2

* rename profile bss symbols

* delink .bss

* dsd format

* delink .ctor and rename (.p)sinit symbols

* dsd format

* create source files

* fix build issues

* add jp only actors

* fix match issues for eur

* fix match issues for jp

* fix some sinit symbol names

* class changes, thumb/arm changes

* add missing newlines

* add arm on dtors

* fix regressions

* fix warnings

* (jp) sync some symbols with eur

* fix build issues
This commit is contained in:
Yanis
2026-04-11 16:18:06 +02:00
committed by GitHub
parent 9474561b03
commit c537818320
2024 changed files with 122403 additions and 49732 deletions
+1 -1
View File
@@ -4,6 +4,6 @@
enum MapObjectId {
#define DEFINE_MAP_OBJECT_TYPE(id, name) MapObjectId_##name = id,
#include "Map/MapObjectTypeTable.inl"
#include "Map/MapObjectTable.inl"
#undef DEFINE_MAP_OBJECT_TYPE
};
@@ -1,47 +1,37 @@
// IMPORTANT: Map Object types must be sorted by ID!
// DEFINE_MAP_OBJECT_TYPE(id, name)
DEFINE_MAP_OBJECT_TYPE('ACDS', ACDS)
DEFINE_MAP_OBJECT_TYPE('ACFR', ACFR)
DEFINE_MAP_OBJECT_TYPE('ACSN', ACSN)
DEFINE_MAP_OBJECT_TYPE('ACVC', ACVC)
DEFINE_MAP_OBJECT_TYPE('ACWT', ACWT)
DEFINE_MAP_OBJECT_TYPE('ARWL', ARWL)
DEFINE_MAP_OBJECT_TYPE('BAPL', BAPL)
DEFINE_MAP_OBJECT_TYPE('BBFL', BBFL)
DEFINE_MAP_OBJECT_TYPE('BFFL', BFFL)
DEFINE_MAP_OBJECT_TYPE('BFSP', BFSP)
DEFINE_MAP_OBJECT_TYPE('BKCT', BKCT)
DEFINE_MAP_OBJECT_TYPE('BLCC', BLCC)
DEFINE_MAP_OBJECT_TYPE('BLCE', BLCE)
DEFINE_MAP_OBJECT_TYPE('BLCK', BLCK)
DEFINE_MAP_OBJECT_TYPE('BLCM', BLCM)
DEFINE_MAP_OBJECT_TYPE('BLCT', BLCT)
DEFINE_MAP_OBJECT_TYPE('BLHL', BLHL)
DEFINE_MAP_OBJECT_TYPE('BLKF', BLKF)
DEFINE_MAP_OBJECT_TYPE('BLRB', BLRB)
DEFINE_MAP_OBJECT_TYPE('BLSR', BLSR)
DEFINE_MAP_OBJECT_TYPE('BLT3', BLT3)
DEFINE_MAP_OBJECT_TYPE('BLT4', BLT4)
DEFINE_MAP_OBJECT_TYPE('BLVC', BLVC)
DEFINE_MAP_OBJECT_TYPE('BMFL', BMFL)
DEFINE_MAP_OBJECT_TYPE('BOGN', BOGN)
DEFINE_MAP_OBJECT_TYPE('BREX', BREX)
DEFINE_MAP_OBJECT_TYPE('BRGL', BRGL)
DEFINE_MAP_OBJECT_TYPE('BRGS', BRGS)
DEFINE_MAP_OBJECT_TYPE('BRGW', BRGW)
DEFINE_MAP_OBJECT_TYPE('BRLI', BRLI)
DEFINE_MAP_OBJECT_TYPE('CHAI', CHAI)
DEFINE_MAP_OBJECT_TYPE('CLMN', CLMN)
DEFINE_MAP_OBJECT_TYPE('CRLL', CRLL)
DEFINE_MAP_OBJECT_TYPE('CRWL', CRWL)
DEFINE_MAP_OBJECT_TYPE('CSTL', CSTL)
DEFINE_MAP_OBJECT_TYPE('CTPT', CTPT)
DEFINE_MAP_OBJECT_TYPE('DFNC', DFNC)
DEFINE_MAP_OBJECT_TYPE('DNGN', DNGN)
DEFINE_MAP_OBJECT_TYPE('DOPA', DOPA)
DEFINE_MAP_OBJECT_TYPE('DRBK', DRBK)
DEFINE_MAP_OBJECT_TYPE('DRBR', DRBR)
DEFINE_MAP_OBJECT_TYPE('DRCG', DRCG)
DEFINE_MAP_OBJECT_TYPE('DRCK', DRCK)
DEFINE_MAP_OBJECT_TYPE('DRDS', DRDS)
DEFINE_MAP_OBJECT_TYPE('DRGN', DRGN)
DEFINE_MAP_OBJECT_TYPE('DRHS', DRHS)
DEFINE_MAP_OBJECT_TYPE('DRKY', DRKY)
DEFINE_MAP_OBJECT_TYPE('DRMC', DRMC)
@@ -50,6 +40,7 @@ DEFINE_MAP_OBJECT_TYPE('DRSN', DRSN)
DEFINE_MAP_OBJECT_TYPE('DRST', DRST)
DEFINE_MAP_OBJECT_TYPE('DRSW', DRSW)
DEFINE_MAP_OBJECT_TYPE('DRTC', DRTC)
DEFINE_MAP_OBJECT_TYPE('DRTK', DRTK)
DEFINE_MAP_OBJECT_TYPE('DRTW', DRTW)
DEFINE_MAP_OBJECT_TYPE('DRTY', DRTY)
DEFINE_MAP_OBJECT_TYPE('DRVC', DRVC)
@@ -57,8 +48,10 @@ DEFINE_MAP_OBJECT_TYPE('DRVT', DRVT)
DEFINE_MAP_OBJECT_TYPE('EBRD', EBRD)
DEFINE_MAP_OBJECT_TYPE('EFRF', EFRF)
DEFINE_MAP_OBJECT_TYPE('EFRS', EFRS)
DEFINE_MAP_OBJECT_TYPE('ETDD', ETDD)
DEFINE_MAP_OBJECT_TYPE('ETDK', ETDK)
DEFINE_MAP_OBJECT_TYPE('ETET', ETET)
DEFINE_MAP_OBJECT_TYPE('ETFD', ETFD)
DEFINE_MAP_OBJECT_TYPE('ETMW', ETMW)
DEFINE_MAP_OBJECT_TYPE('ETNL', ETNL)
DEFINE_MAP_OBJECT_TYPE('ETNM', ETNM)
@@ -67,25 +60,23 @@ DEFINE_MAP_OBJECT_TYPE('ETSD', ETSD)
DEFINE_MAP_OBJECT_TYPE('ETSW', ETSW)
DEFINE_MAP_OBJECT_TYPE('ETTV', ETTV)
DEFINE_MAP_OBJECT_TYPE('ETUS', ETUS)
DEFINE_MAP_OBJECT_TYPE('ETWP', ETWP)
DEFINE_MAP_OBJECT_TYPE('ETYG', ETYG)
DEFINE_MAP_OBJECT_TYPE('EXCT', EXCT)
DEFINE_MAP_OBJECT_TYPE('EXHS', EXHS)
DEFINE_MAP_OBJECT_TYPE('EXIT', EXIT)
DEFINE_MAP_OBJECT_TYPE('EXTR', EXTR)
DEFINE_MAP_OBJECT_TYPE('FLSP', FLSP)
DEFINE_MAP_OBJECT_TYPE('FNCE', FNCE)
DEFINE_MAP_OBJECT_TYPE('FRA1', FRA1)
DEFINE_MAP_OBJECT_TYPE('FRAI', FRAI)
DEFINE_MAP_OBJECT_TYPE('FRAM', FRAM)
DEFINE_MAP_OBJECT_TYPE('FRSH', FRSH)
DEFINE_MAP_OBJECT_TYPE('FRWL', FRWL)
DEFINE_MAP_OBJECT_TYPE('FSCT', FSCT)
DEFINE_MAP_OBJECT_TYPE('FSFR', FSFR)
DEFINE_MAP_OBJECT_TYPE('FSFS', FSFS)
DEFINE_MAP_OBJECT_TYPE('FSPS', FSPS)
DEFINE_MAP_OBJECT_TYPE('FSSN', FSSN)
DEFINE_MAP_OBJECT_TYPE('FSSV', FSSV)
DEFINE_MAP_OBJECT_TYPE('FST0', FST0)
DEFINE_MAP_OBJECT_TYPE('FST1', FST1)
DEFINE_MAP_OBJECT_TYPE('FST2', FST2)
DEFINE_MAP_OBJECT_TYPE('FST3', FST3)
DEFINE_MAP_OBJECT_TYPE('FSTA', FSTA)
DEFINE_MAP_OBJECT_TYPE('FSVC', FSVC)
DEFINE_MAP_OBJECT_TYPE('FSWT', FSWT)
DEFINE_MAP_OBJECT_TYPE('GATE', GATE)
@@ -95,8 +86,7 @@ DEFINE_MAP_OBJECT_TYPE('GRSG', GRSG)
DEFINE_MAP_OBJECT_TYPE('GRSS', GRSS)
DEFINE_MAP_OBJECT_TYPE('GRSV', GRSV)
DEFINE_MAP_OBJECT_TYPE('GSST', GSST)
DEFINE_MAP_OBJECT_TYPE('GTCT', GTCT)
DEFINE_MAP_OBJECT_TYPE('GTMT', GTMT)
DEFINE_MAP_OBJECT_TYPE('GTAT', GTAT)
DEFINE_MAP_OBJECT_TYPE('GTRB', GTRB)
DEFINE_MAP_OBJECT_TYPE('GTRK', GTRK)
DEFINE_MAP_OBJECT_TYPE('GTSN', GTSN)
@@ -107,31 +97,25 @@ DEFINE_MAP_OBJECT_TYPE('HOL0', HOL0)
DEFINE_MAP_OBJECT_TYPE('HOL1', HOL1)
DEFINE_MAP_OBJECT_TYPE('HOL2', HOL2)
DEFINE_MAP_OBJECT_TYPE('HOLB', HOLB)
DEFINE_MAP_OBJECT_TYPE('HOS0', HOS0)
DEFINE_MAP_OBJECT_TYPE('HOS1', HOS1)
DEFINE_MAP_OBJECT_TYPE('HOSB', HOSB)
DEFINE_MAP_OBJECT_TYPE('HOSO', HOSO)
DEFINE_MAP_OBJECT_TYPE('HOST', HOST)
DEFINE_MAP_OBJECT_TYPE('HOT0', HOT0)
DEFINE_MAP_OBJECT_TYPE('HOT1', HOT1)
DEFINE_MAP_OBJECT_TYPE('HOT2', HOT2)
DEFINE_MAP_OBJECT_TYPE('HOUS', HOUS)
DEFINE_MAP_OBJECT_TYPE('HOV0', HOV0)
DEFINE_MAP_OBJECT_TYPE('HOV1', HOV1)
DEFINE_MAP_OBJECT_TYPE('HOW0', HOW0)
DEFINE_MAP_OBJECT_TYPE('HOW1', HOW1)
DEFINE_MAP_OBJECT_TYPE('ICEB', ICEB)
DEFINE_MAP_OBJECT_TYPE('ICGR', ICGR)
DEFINE_MAP_OBJECT_TYPE('ITFL', ITFL)
DEFINE_MAP_OBJECT_TYPE('KNBN', KNBN)
DEFINE_MAP_OBJECT_TYPE('LEVN', LEVN)
DEFINE_MAP_OBJECT_TYPE('LEVS', LEVS)
DEFINE_MAP_OBJECT_TYPE('LTRW', LTRW)
DEFINE_MAP_OBJECT_TYPE('LTST', LTST)
DEFINE_MAP_OBJECT_TYPE('LVCM', LVCM)
DEFINE_MAP_OBJECT_TYPE('LVVT', LVVT)
DEFINE_MAP_OBJECT_TYPE('MBBS', MBBS)
DEFINE_MAP_OBJECT_TYPE('MBRB', MBRB)
DEFINE_MAP_OBJECT_TYPE('MBRG', MBRG)
DEFINE_MAP_OBJECT_TYPE('MLVC', MLVC)
DEFINE_MAP_OBJECT_TYPE('MSCL', MSCL)
DEFINE_MAP_OBJECT_TYPE('MTFS', MTFS)
DEFINE_MAP_OBJECT_TYPE('MTGT', MTGT)
DEFINE_MAP_OBJECT_TYPE('MTIC', MTIC)
@@ -141,18 +125,24 @@ DEFINE_MAP_OBJECT_TYPE('MTOR', MTOR)
DEFINE_MAP_OBJECT_TYPE('MTWD', MTWD)
DEFINE_MAP_OBJECT_TYPE('MTWR', MTWR)
DEFINE_MAP_OBJECT_TYPE('MZFE', MZFE)
DEFINE_MAP_OBJECT_TYPE('MZFX', MZFX)
DEFINE_MAP_OBJECT_TYPE('MZTR', MZTR)
DEFINE_MAP_OBJECT_TYPE('NPST', NPST)
DEFINE_MAP_OBJECT_TYPE('OJTH', OJTH)
DEFINE_MAP_OBJECT_TYPE('PLCT', PLCT)
DEFINE_MAP_OBJECT_TYPE('PLFA', PLFA)
DEFINE_MAP_OBJECT_TYPE('PLFM', PLFM)
DEFINE_MAP_OBJECT_TYPE('PLFR', PLFR)
DEFINE_MAP_OBJECT_TYPE('PLV2', PLV2)
DEFINE_MAP_OBJECT_TYPE('PRSH', PRSH)
DEFINE_MAP_OBJECT_TYPE('PTFL', PTFL)
DEFINE_MAP_OBJECT_TYPE('RBBL', RBBL)
DEFINE_MAP_OBJECT_TYPE('RBMR', RBMR)
DEFINE_MAP_OBJECT_TYPE('RBRC', RBRC)
DEFINE_MAP_OBJECT_TYPE('RBSR', RBSR)
DEFINE_MAP_OBJECT_TYPE('RCFL', RCFL)
DEFINE_MAP_OBJECT_TYPE('RDSD', RDSD)
DEFINE_MAP_OBJECT_TYPE('RKAG', RKAG)
DEFINE_MAP_OBJECT_TYPE('RLFL', RLFL)
DEFINE_MAP_OBJECT_TYPE('RLPT', RLPT)
DEFINE_MAP_OBJECT_TYPE('RLSG', RLSG)
DEFINE_MAP_OBJECT_TYPE('RNBO', RNBO)
DEFINE_MAP_OBJECT_TYPE('RPFL', RPFL)
@@ -161,10 +151,6 @@ DEFINE_MAP_OBJECT_TYPE('SBDE', SBDE)
DEFINE_MAP_OBJECT_TYPE('SHWB', SHWB)
DEFINE_MAP_OBJECT_TYPE('SKBN', SKBN)
DEFINE_MAP_OBJECT_TYPE('SKDI', SKDI)
DEFINE_MAP_OBJECT_TYPE('SKFR', SKFR)
DEFINE_MAP_OBJECT_TYPE('SKSN', SKSN)
DEFINE_MAP_OBJECT_TYPE('SKVC', SKVC)
DEFINE_MAP_OBJECT_TYPE('SKWT', SKWT)
DEFINE_MAP_OBJECT_TYPE('SPTB', SPTB)
DEFINE_MAP_OBJECT_TYPE('STAL', STAL)
DEFINE_MAP_OBJECT_TYPE('STAT', STAT)
@@ -178,12 +164,15 @@ DEFINE_MAP_OBJECT_TYPE('STSH', STSH)
DEFINE_MAP_OBJECT_TYPE('STSP', STSP)
DEFINE_MAP_OBJECT_TYPE('STSS', STSS)
DEFINE_MAP_OBJECT_TYPE('STSV', STSV)
DEFINE_MAP_OBJECT_TYPE('STTR', STTR)
DEFINE_MAP_OBJECT_TYPE('SWBR', SWBR)
DEFINE_MAP_OBJECT_TYPE('SWCB', SWCB)
DEFINE_MAP_OBJECT_TYPE('SWCR', SWCR)
DEFINE_MAP_OBJECT_TYPE('SWEY', SWEY)
DEFINE_MAP_OBJECT_TYPE('SWFS', SWFS)
DEFINE_MAP_OBJECT_TYPE('SWHT', SWHT)
DEFINE_MAP_OBJECT_TYPE('SWRA', SWRA)
DEFINE_MAP_OBJECT_TYPE('SWRB', SWRB)
DEFINE_MAP_OBJECT_TYPE('SWST', SWST)
DEFINE_MAP_OBJECT_TYPE('SWSW', SWSW)
DEFINE_MAP_OBJECT_TYPE('SWWN', SWWN)
@@ -198,12 +187,10 @@ DEFINE_MAP_OBJECT_TYPE('TDDR', TDDR)
DEFINE_MAP_OBJECT_TYPE('THAW', THAW)
DEFINE_MAP_OBJECT_TYPE('TMDE', TMDE)
DEFINE_MAP_OBJECT_TYPE('TMFR', TMFR)
DEFINE_MAP_OBJECT_TYPE('TMLV', TMLV)
DEFINE_MAP_OBJECT_TYPE('TMSB', TMSB)
DEFINE_MAP_OBJECT_TYPE('TMSN', TMSN)
DEFINE_MAP_OBJECT_TYPE('TMWT', TMWT)
DEFINE_MAP_OBJECT_TYPE('TOWN', TOWN)
DEFINE_MAP_OBJECT_TYPE('TRBB', TRBB)
DEFINE_MAP_OBJECT_TYPE('TRBF', TRBF)
DEFINE_MAP_OBJECT_TYPE('TRBL', TRBL)
DEFINE_MAP_OBJECT_TYPE('TRBM', TRBM)
DEFINE_MAP_OBJECT_TYPE('TRBR', TRBR)
@@ -211,22 +198,26 @@ DEFINE_MAP_OBJECT_TYPE('TRCC', TRCC)
DEFINE_MAP_OBJECT_TYPE('TRDA', TRDA)
DEFINE_MAP_OBJECT_TYPE('TRDR', TRDR)
DEFINE_MAP_OBJECT_TYPE('TRDT', TRDT)
DEFINE_MAP_OBJECT_TYPE('TRED', TRED)
DEFINE_MAP_OBJECT_TYPE('TREE', TREE)
DEFINE_MAP_OBJECT_TYPE('TREP', TREP)
DEFINE_MAP_OBJECT_TYPE('TREN', TREN)
DEFINE_MAP_OBJECT_TYPE('TRES', TRES)
DEFINE_MAP_OBJECT_TYPE('TRET', TRET)
DEFINE_MAP_OBJECT_TYPE('TREW', TREW)
DEFINE_MAP_OBJECT_TYPE('TRFI', TRFI)
DEFINE_MAP_OBJECT_TYPE('TRFO', TRFO)
DEFINE_MAP_OBJECT_TYPE('TRFS', TRFS)
DEFINE_MAP_OBJECT_TYPE('TRFV', TRFV)
DEFINE_MAP_OBJECT_TYPE('TRGE', TRGE)
DEFINE_MAP_OBJECT_TYPE('TRGM', TRGM)
DEFINE_MAP_OBJECT_TYPE('TRGW', TRGW)
DEFINE_MAP_OBJECT_TYPE('TRH0', TRH0)
DEFINE_MAP_OBJECT_TYPE('TRH1', TRH1)
DEFINE_MAP_OBJECT_TYPE('TRH2', TRH2)
DEFINE_MAP_OBJECT_TYPE('TRH3', TRH3)
DEFINE_MAP_OBJECT_TYPE('TRLD', TRLD)
DEFINE_MAP_OBJECT_TYPE('TRLN', TRLN)
DEFINE_MAP_OBJECT_TYPE('TRLS', TRLS)
DEFINE_MAP_OBJECT_TYPE('TRLW', TRLW)
DEFINE_MAP_OBJECT_TYPE('TRMA', TRMA)
DEFINE_MAP_OBJECT_TYPE('TRMR', TRMR)
DEFINE_MAP_OBJECT_TYPE('TRPI', TRPI)
@@ -239,7 +230,6 @@ DEFINE_MAP_OBJECT_TYPE('TRRW', TRRW)
DEFINE_MAP_OBJECT_TYPE('TRSA', TRSA)
DEFINE_MAP_OBJECT_TYPE('TRSD', TRSD)
DEFINE_MAP_OBJECT_TYPE('TRSH', TRSH)
DEFINE_MAP_OBJECT_TYPE('TRSN', TRSN)
DEFINE_MAP_OBJECT_TYPE('TRSR', TRSR)
DEFINE_MAP_OBJECT_TYPE('TRSS', TRSS)
DEFINE_MAP_OBJECT_TYPE('TRST', TRST)
@@ -248,18 +238,13 @@ DEFINE_MAP_OBJECT_TYPE('TRTF', TRTF)
DEFINE_MAP_OBJECT_TYPE('TRTS', TRTS)
DEFINE_MAP_OBJECT_TYPE('TRWA', TRWA)
DEFINE_MAP_OBJECT_TYPE('TRWS', TRWS)
DEFINE_MAP_OBJECT_TYPE('TSGM', TSGM)
DEFINE_MAP_OBJECT_TYPE('TSUB', TSUB)
DEFINE_MAP_OBJECT_TYPE('TWGS', TWGS)
DEFINE_MAP_OBJECT_TYPE('TWPC', TWPC)
DEFINE_MAP_OBJECT_TYPE('TWPG', TWPG)
DEFINE_MAP_OBJECT_TYPE('WDST', WDST)
DEFINE_MAP_OBJECT_TYPE('WHSW', WHSW)
DEFINE_MAP_OBJECT_TYPE('WLM0', WLM0)
DEFINE_MAP_OBJECT_TYPE('WLM1', WLM1)
DEFINE_MAP_OBJECT_TYPE('WLM2', WLM2)
DEFINE_MAP_OBJECT_TYPE('WLM3', WLM3)
DEFINE_MAP_OBJECT_TYPE('WLM4', WLM4)
DEFINE_MAP_OBJECT_TYPE('WLM5', WLM5)
DEFINE_MAP_OBJECT_TYPE('WLM6', WLM6)
DEFINE_MAP_OBJECT_TYPE('WLM7', WLM7)
DEFINE_MAP_OBJECT_TYPE('WLMP', WLMP)
DEFINE_MAP_OBJECT_TYPE('WLMS', WLMS)
DEFINE_MAP_OBJECT_TYPE('ZDPF', ZDPF)
DEFINE_MAP_OBJECT_TYPE('WPHL', WPHL)