Fix up JP splits and link a lot more TUs (#2636)

This commit is contained in:
Max Roncace
2025-09-09 10:15:45 -04:00
committed by GitHub
parent 6b1f5b95de
commit 2d5ae111b7
135 changed files with 365 additions and 309 deletions
+127 -127
View File
@@ -468,7 +468,7 @@ config.libs = [
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "m_Do/m_Do_audio.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "m_Do/m_Do_controller_pad.cpp"),
Object(NonMatching, "m_Do/m_Re_controller_pad.cpp"),
Object(MatchingFor("GZ2E01"), "m_Do/m_Do_graphic.cpp"),
Object(MatchingFor("GZ2E01", "GZ2J01"), "m_Do/m_Do_graphic.cpp"),
Object(NonMatching, "m_Do/m_Do_machine.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "m_Do/m_Do_mtx.cpp"),
Object(NonMatching, "m_Do/m_Do_ext.cpp"),
@@ -584,7 +584,7 @@ config.libs = [
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_a_item_static.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_a_shop_item_static.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_a_horse_static.cpp"),
Object(MatchingFor("GZ2E01"), "d/d_demo.cpp"),
Object(MatchingFor("GZ2E01", "GZ2J01"), "d/d_demo.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_door_param2.cpp"), # debug weak func order
Object(NonMatching, "d/d_resorce.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_map_path.cpp"),
@@ -645,7 +645,7 @@ config.libs = [
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/actor/d_a_itembase.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/actor/d_a_no_chg_room.cpp"),
Object(NonMatching, "d/actor/d_a_npc.cpp"),
Object(MatchingFor("GZ2E01"), "d/actor/d_a_npc_cd.cpp"),
Object(MatchingFor("GZ2E01", "GZ2J01"), "d/actor/d_a_npc_cd.cpp"),
Object(NonMatching, "d/actor/d_a_npc_cd2.cpp"),
Object(NonMatching, "d/actor/d_a_obj_item.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_insect.cpp"),
@@ -657,7 +657,7 @@ config.libs = [
Object(NonMatching, "d/d_file_sel_warning.cpp"),
Object(MatchingFor("GZ2E01", "GZ2J01"), "d/d_file_sel_info.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_bright_check.cpp"),
Object(MatchingFor("GZ2E01"), "d/d_scope.cpp"),
Object(MatchingFor("GZ2E01", "GZ2J01"), "d/d_scope.cpp"),
Object(Equivalent, "d/d_select_cursor.cpp"), # vtable padding
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_select_icon.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d/d_shop_camera.cpp"),
@@ -683,7 +683,7 @@ config.libs = [
Object(MatchingFor("GZ2E01"), "d/d_menu_letter.cpp"),
Object(MatchingFor("GZ2E01"), "d/d_menu_option.cpp"),
Object(MatchingFor("GZ2E01"), "d/d_menu_ring.cpp"),
Object(MatchingFor("GZ2E01"), "d/d_menu_save.cpp"), # missing 0x24 bytes of padding between vtables, likely some abstract base class vtable that gets stripped out
Object(MatchingFor("GZ2E01"), "d/d_menu_save.cpp"),
Object(MatchingFor("GZ2E01"), "d/d_menu_skill.cpp"),
Object(MatchingFor("GZ2E01", "GZ2J01"), "d/d_menu_window_HIO.cpp"),
Object(Equivalent, "d/d_menu_window.cpp"), # weak func order
@@ -897,7 +897,7 @@ config.libs = [
Object(NonMatching, "JSystem/JAudio2/JASHeapCtrl.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "JSystem/JAudio2/JASResArcLoader.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "JSystem/JAudio2/JASProbe.cpp"),
Object(MatchingFor("GZ2E01"), "JSystem/JAudio2/JASReport.cpp"),
Object(MatchingFor("GZ2E01", "GZ2J01"), "JSystem/JAudio2/JASReport.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "JSystem/JAudio2/JASCmdStack.cpp"),
Object(NonMatching, "JSystem/JAudio2/JASTrack.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "JSystem/JAudio2/JASTrackPort.cpp"),
@@ -929,7 +929,7 @@ config.libs = [
Object(MatchingFor("GZ2E01", "GZ2J01"), "JSystem/JAudio2/dspproc.cpp", extra_cflags=["-O4", "-func_align 32"]),
Object(MatchingFor("GZ2E01"), "JSystem/JAudio2/dsptask.cpp", extra_cflags=["-O4", "-func_align 32"]),
Object(MatchingFor("GZ2E01", "GZ2J01"), "JSystem/JAudio2/osdsp.cpp", extra_cflags=["-O4", "-func_align 32", "-str nopool"]),
Object(MatchingFor("GZ2E01"), "JSystem/JAudio2/osdsp_task.cpp", extra_cflags=["-O4", "-func_align 32"]),
Object(MatchingFor("GZ2E01", "GZ2J01"), "JSystem/JAudio2/osdsp_task.cpp", extra_cflags=["-O4", "-func_align 32"]),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01", "ShieldD"), "JSystem/JAudio2/JAIAudible.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "JSystem/JAudio2/JAIAudience.cpp"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "JSystem/JAudio2/JAISe.cpp"),
@@ -977,7 +977,7 @@ config.libs = [
"progress_category": "core",
"host": True,
"objects": [
Object(MatchingFor("GZ2E01"), "Z2AudioLib/Z2Calc.cpp"),
Object(MatchingFor("GZ2E01", "GZ2J01"), "Z2AudioLib/Z2Calc.cpp"),
Object(MatchingFor("GZ2E01", "GZ2J01"), "Z2AudioLib/Z2AudioArcLoader.cpp"),
Object(MatchingFor("GZ2E01"), "Z2AudioLib/Z2Param.cpp"),
Object(MatchingFor("GZ2E01"), "Z2AudioLib/Z2SoundMgr.cpp"),
@@ -1448,9 +1448,9 @@ config.libs = [
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Generic/flush_cache.c"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/mem_TRK.c"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Generic/targimpl.c"),
Object(MatchingFor("GZ2E01"), "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Export/targsupp.s"),
Object(MatchingFor("GZ2E01", "GZ2J01"), "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Export/targsupp.s"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Generic/mpc_7xx_603e.c"),
Object(MatchingFor("GZ2E01"), "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Generic/exception.s"),
Object(MatchingFor("GZ2E01", "GZ2J01"), "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Processor/ppc/Generic/exception.s"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Os/dolphin/dolphin_trk.c"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Portable/main_TRK.c"),
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "TRK_MINNOW_DOLPHIN/debugger/embedded/MetroTRK/Os/dolphin/dolphin_trk_glue.c"),
@@ -1508,7 +1508,7 @@ config.libs = [
"objects": [
Object(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "REL/executor.c"),
Object(
MatchingFor("GZ2E01"),
MatchingFor("GZ2E01", "GZ2J01"),
"REL/global_destructor_chain.c",
source="PowerPC_EABI_Support/Runtime/Src/global_destructor_chain.c",
),
@@ -1535,7 +1535,7 @@ config.libs = [
ActorRel(NonMatching, "d_a_obj_ito"),
ActorRel(NonMatching, "d_a_obj_movebox"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_swpush"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_timer"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_timer"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_path_line"),
ActorRel(NonMatching, "d_a_scene_exit"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_set_bgobj"),
@@ -1555,18 +1555,18 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_push"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_telop"),
ActorRel(NonMatching, "d_a_tbox"),
ActorRel(MatchingFor("GZ2E01"), "d_a_tbox2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tbox2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_vrbox"),
ActorRel(NonMatching, "d_a_vrbox2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_arrow"),
ActorRel(NonMatching, "d_a_boomerang"),
ActorRel(MatchingFor("GZ2E01"), "d_a_crod"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_crod"),
ActorRel(NonMatching, "d_a_demo00"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_disappear"),
ActorRel(NonMatching, "d_a_mg_rod"),
ActorRel(NonMatching, "d_a_midna"),
ActorRel(Equivalent, "d_a_nbomb"), # weak func order
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_life_container"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_life_container"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_yousei"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_spinner"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_suspend"),
@@ -1577,21 +1577,21 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_canoe"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_cstaF"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_demo_item"),
ActorRel(MatchingFor("GZ2E01"), "d_a_door_bossL1"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_door_bossL1"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_dn"),
ActorRel(Equivalent, "d_a_e_fm"), # regalloc
ActorRel(MatchingFor("GZ2E01"), "d_a_e_ga"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_hb"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_nest"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_rd"),
ActorRel(MatchingFor("GZ2E01"), "d_a_econt"),
ActorRel(MatchingFor("GZ2E01"), "d_a_fr"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_ga"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_hb"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_nest"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_rd"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_econt"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_fr"),
ActorRel(NonMatching, "d_a_grass"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_kytag05"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_kytag10"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_kytag11"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_kytag14"),
ActorRel(MatchingFor("GZ2E01"), "d_a_mg_fish"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_mg_fish"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_npc_besu"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_npc_fairy_seirei"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_npc_fish"),
@@ -1613,7 +1613,7 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_hhashi"),
ActorRel(NonMatching, "d_a_obj_kanban2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_kbacket"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_kgate"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_kgate"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_klift00"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_ktOnFire"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_ladder"),
@@ -1623,17 +1623,17 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_mgate"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_nameplate"),
ActorRel(NonMatching, "d_a_obj_ornament_cloth"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_rope_bridge"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_rope_bridge"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_sWallShutter"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_stick"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_stoneMark"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_swpropeller"),
ActorRel(NonMatching, "d_a_obj_swpush5"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_yobikusa"),
ActorRel(MatchingFor("GZ2E01"), "d_a_scene_exit2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_scene_exit2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_shop_item"),
ActorRel(MatchingFor("GZ2E01"), "d_a_sq"),
ActorRel(MatchingFor("GZ2E01"), "d_a_swc00"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_sq"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_swc00"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_CstaSw"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_ajnot"),
ActorRel(NonMatching, "d_a_tag_attack_item"),
@@ -1641,12 +1641,12 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_hinit"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_hjump"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_hstop"),
ActorRel(MatchingFor("GZ2E01"), "d_a_tag_lv2prchk"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_lv2prchk"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_magne"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_mhint"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_mstop"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_spring"),
ActorRel(MatchingFor("GZ2E01"), "d_a_tag_statue_evt"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_statue_evt"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_ykgr"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_L7demo_dr"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_L7low_dr"),
@@ -1659,7 +1659,7 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_b_gg"),
ActorRel(NonMatching, "d_a_b_gm"),
ActorRel(NonMatching, "d_a_b_gnd"),
ActorRel(MatchingFor("GZ2E01"), "d_a_b_go"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_b_go"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_b_gos"),
ActorRel(Equivalent, "d_a_b_mgn"), # extra mr/regalloc
ActorRel(NonMatching, "d_a_b_ob"),
@@ -1667,10 +1667,10 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_b_oh2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_b_tn"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_b_yo"),
ActorRel(MatchingFor("GZ2E01"), "d_a_b_yo_ice"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_b_yo_ice"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_b_zant"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_b_zant_magic"),
ActorRel(MatchingFor("GZ2E01"), "d_a_b_zant_mobile"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_b_zant_mobile"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_b_zant_sima"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_balloon_2D"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_bullet"),
@@ -1679,51 +1679,51 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_cow"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_cstatue"),
ActorRel(Equivalent, "d_a_do"), # Z2SoundObjSimple dtor
ActorRel(MatchingFor("GZ2E01"), "d_a_door_boss"),
ActorRel(MatchingFor("GZ2E01"), "d_a_door_bossL5"),
ActorRel(MatchingFor("GZ2E01"), "d_a_door_mbossL1"),
ActorRel(MatchingFor("GZ2E01"), "d_a_door_push"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_ai"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_door_boss"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_door_bossL5"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_door_mbossL1"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_door_push"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_ai"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_arrow"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_ba"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_ba"),
ActorRel(NonMatching, "d_a_e_bee"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_bg"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_bg"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_bi"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_bi_leaf"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_bs"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_bu"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_bs"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_bu"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_bug"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_cr"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_cr"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_cr_egg"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_db"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_db"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_db_leaf"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_dd"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_df"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_dk"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_dd"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_df"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_dk"),
ActorRel(Equivalent, "d_a_e_dt"), # weak func order
ActorRel(NonMatching, "d_a_e_fb"),
ActorRel(Equivalent, "d_a_e_fk"), # weak func order
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_fs"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_fz"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_fz"),
ActorRel(NonMatching, "d_a_e_gb"),
ActorRel(NonMatching, "d_a_e_ge"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_gi"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_gi"),
ActorRel(NonMatching, "d_a_e_gm"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_gob"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_gs"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_gs"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_hb_leaf"),
ActorRel(NonMatching, "d_a_e_hm"),
ActorRel(NonMatching, "d_a_e_hp"),
ActorRel(NonMatching, "d_a_e_hz"),
ActorRel(NonMatching, "d_a_e_hzelda"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_is"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_kg"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_kk"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_is"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_kg"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_kk"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_kr"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_mb"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_md"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_mf"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_mk"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_mk"),
ActorRel(NonMatching, "d_a_e_mk_bo"),
ActorRel(NonMatching, "d_a_e_mm"),
ActorRel(NonMatching, "d_a_e_mm_mt"),
@@ -1732,11 +1732,11 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_oc"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_oct_bg"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_ot"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_ph"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_ph"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_pm"),
ActorRel(NonMatching, "d_a_e_po"),
ActorRel(Equivalent, "d_a_e_pz"), # inline issue
ActorRel(MatchingFor("GZ2E01"), "d_a_e_rb"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_rb"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_rdb"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_rdy"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_s1"),
@@ -1749,10 +1749,10 @@ config.libs = [
ActorRel(NonMatching, "d_a_e_st"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_st_line"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_sw"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_th"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_th"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_th_ball"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_tk"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_tk2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_tk"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_tk2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_tk_ball"),
ActorRel(NonMatching, "d_a_e_tt"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_vt"),
@@ -1765,14 +1765,14 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_yd_leaf"),
ActorRel(NonMatching, "d_a_e_yg"),
ActorRel(NonMatching, "d_a_e_yh"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_yk"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_ym"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_yk"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_ym"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_ym_tag"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_ymb"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_yr"),
ActorRel(NonMatching, "d_a_e_zh"),
ActorRel(NonMatching, "d_a_e_zm"),
ActorRel(MatchingFor("GZ2E01"), "d_a_e_zs"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_e_zs"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_formation_mng"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_guard_mng"),
ActorRel(NonMatching, "d_a_horse"),
@@ -1846,7 +1846,7 @@ config.libs = [
ActorRel(Equivalent, "d_a_npc_ks"), # weak func order
ActorRel(NonMatching, "d_a_npc_kyury"),
ActorRel(NonMatching, "d_a_npc_len"),
ActorRel(MatchingFor("GZ2E01"), "d_a_npc_lf"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_npc_lf"),
ActorRel(NonMatching, "d_a_npc_lud"),
ActorRel(NonMatching, "d_a_npc_midp"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_npc_mk"),
@@ -1880,15 +1880,15 @@ config.libs = [
ActorRel(NonMatching, "d_a_npc_sola"),
ActorRel(NonMatching, "d_a_npc_soldierA"),
ActorRel(NonMatching, "d_a_npc_soldierB"),
ActorRel(MatchingFor("GZ2E01"), "d_a_npc_sq"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_npc_sq"),
ActorRel(NonMatching, "d_a_npc_the", extra_cflags=[DANPCF_C_HACK]),
ActorRel(NonMatching, "d_a_npc_theB"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_npc_tk"),
ActorRel(NonMatching, "d_a_npc_tkc"),
ActorRel(MatchingFor("GZ2E01"), "d_a_npc_tkj2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_npc_tkj2"),
ActorRel(NonMatching, "d_a_npc_tks", extra_cflags=[DANPCF_C_HACK]),
ActorRel(NonMatching, "d_a_npc_toby"),
ActorRel(MatchingFor("GZ2E01"), "d_a_npc_tr"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_npc_tr"),
ActorRel(NonMatching, "d_a_npc_uri"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_npc_worm"),
ActorRel(NonMatching, "d_a_npc_wrestler", extra_cflags=[DANPCF_C_HACK]),
@@ -1911,12 +1911,12 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_TvCdlst"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_Y_taihou"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_amiShutter"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_ari"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_ari"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_automata"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_avalanche"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_avalanche"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_balloon"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_barDesk"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_batta"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_batta"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_bbox"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_bed"),
ActorRel(NonMatching, "d_a_obj_bemos"),
@@ -1924,19 +1924,19 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_bk_leaf"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_bky_rock"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_bmWindow"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_bmshutter"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_bmshutter"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_bombf"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_boumato"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_brg"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_bsGate"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_bubblePilar"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_catdoor"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_cb"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_cb"),
ActorRel(Equivalent, "d_a_obj_cblock"), # weird weak data issue
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_cdoor"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_chandelier"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_chest"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_cho"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_cdoor"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_chandelier"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_chest"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_cho"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_cowdoor"),
ActorRel(NonMatching, "d_a_obj_crope"),
ActorRel(NonMatching, "d_a_obj_crvfence"),
@@ -1948,9 +1948,9 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_crystal"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_cwall"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_damCps"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_dan"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_dan"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_digholl"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_digsnow"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_digsnow"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_dmelevator"),
ActorRel(NonMatching, "d_a_obj_drop"),
ActorRel(NonMatching, "d_a_obj_dust"),
@@ -1960,22 +1960,22 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_fchain"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_fireWood"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_fireWood2"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_firepillar"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_firepillar2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_firepillar"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_firepillar2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_flag"),
ActorRel(Equivalent, "d_a_obj_flag2"), # weak function order
ActorRel(NonMatching, "d_a_obj_flag3"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_food"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_fw"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_food"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_fw"),
ActorRel(NonMatching, "d_a_obj_gadget"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_ganonwall"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_ganonwall2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_gb"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_geyser"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_geyser"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_glowSphere"),
ActorRel(NonMatching, "d_a_obj_gm"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_goGate"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_gomikabe"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_gomikabe"),
ActorRel(Equivalent, "d_a_obj_gra2"), # weak function order
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_graWall"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_gra_rock"),
@@ -1994,28 +1994,28 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_hsTarget"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_ice_l"),
ActorRel(NonMatching, "d_a_obj_ice_s"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_iceblock"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_iceblock"),
ActorRel(NonMatching, "d_a_obj_iceleaf"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_ihasi"),
ActorRel(NonMatching, "d_a_obj_ikada"),
ActorRel(NonMatching, "d_a_obj_inobone"),
ActorRel(NonMatching, "d_a_obj_ita"),
ActorRel(NonMatching, "d_a_obj_itamato"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_kabuto"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_kag"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_kabuto"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_kag"),
ActorRel(NonMatching, "d_a_obj_kage"),
ActorRel(NonMatching, "d_a_obj_kago"),
ActorRel(NonMatching, "d_a_obj_kaisou"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_kamakiri"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_kantera"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_katatsumuri"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_kamakiri"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_kantera"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_katatsumuri"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_kazeneko"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_kbox"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_key"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_key"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_keyhole"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_ki"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_ki"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_kiPot"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_kita"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_kita"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_kjgjs"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_kkanban"),
ActorRel(NonMatching, "d_a_obj_knBullet"),
@@ -2026,7 +2026,7 @@ config.libs = [
ActorRel(NonMatching, "d_a_obj_kznkarm"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_laundry"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_laundry_rope"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_lbox"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_lbox"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_lp"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_lv1Candle00"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_lv1Candle01"),
@@ -2046,8 +2046,8 @@ config.libs = [
ActorRel(NonMatching, "d_a_obj_lv4SlideWall"),
ActorRel(NonMatching, "d_a_obj_lv4bridge"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_lv4chandelier"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_lv4digsand"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_lv4floor"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_lv4digsand"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_lv4floor"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_lv4gear"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_lv4prelvtr"),
ActorRel(NonMatching, "d_a_obj_lv4prwall"),
@@ -2065,7 +2065,7 @@ config.libs = [
ActorRel(NonMatching, "d_a_obj_lv6Tenbin"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_lv6TogeRoll"),
ActorRel(NonMatching, "d_a_obj_lv6TogeTrap"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_lv6bemos"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_lv6bemos"),
ActorRel(NonMatching, "d_a_obj_lv6bemos2"),
ActorRel(NonMatching, "d_a_obj_lv6egate"),
ActorRel(NonMatching, "d_a_obj_lv6elevta"),
@@ -2080,7 +2080,7 @@ config.libs = [
ActorRel(NonMatching, "d_a_obj_lv9SwShutter"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_magLift"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_magLiftRot"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_maki"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_maki"),
ActorRel(Equivalent, "d_a_obj_master_sword"), #weak function and vtable order
ActorRel(NonMatching, "d_a_obj_mato"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_mhole"),
@@ -2091,18 +2091,18 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_mirror_screw"),
ActorRel(NonMatching, "d_a_obj_mirror_table"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_msima"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_mvstair"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_myogan"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_mvstair"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_myogan"),
ActorRel(NonMatching, "d_a_obj_nagaisu"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_nan"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_nan"),
ActorRel(NonMatching, "d_a_obj_ndoor"),
ActorRel(NonMatching, "d_a_obj_nougu"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_octhashi"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_octhashi"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_oiltubo"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_onsen"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_onsenFire"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_onsenTaru"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_pdoor"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_pdoor"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_pdtile"),
ActorRel(NonMatching, "d_a_obj_pdwall"),
ActorRel(NonMatching, "d_a_obj_picture"),
@@ -2116,25 +2116,25 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_rcircle"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_rfHole"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_rgate"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_riverrock"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_riverrock"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_rock"),
ActorRel(NonMatching, "d_a_obj_rotBridge"),
ActorRel(NonMatching, "d_a_obj_rotTrap"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_roten"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_rstair"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_rstair"),
ActorRel(NonMatching, "d_a_obj_rw"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_saidan"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_sakuita"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_sakuita"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_sakuita_rope"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_scannon"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_scannon_crs"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_scannon_ten"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_scannon"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_scannon_crs"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_scannon_ten"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_sekidoor"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_sekizo"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_sekizoa"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_shield"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_shield"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_sm_door"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_smallkey"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_smallkey"),
ActorRel(NonMatching, "d_a_obj_smgdoor"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_smoke"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_smtile"),
@@ -2146,32 +2146,32 @@ config.libs = [
ActorRel(NonMatching, "d_a_obj_ss_drink"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_ss_item"),
ActorRel(NonMatching, "d_a_obj_stairBlock"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_stone"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_stone"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_stopper"),
ActorRel(NonMatching, "d_a_obj_stopper2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_suisya"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_sw"),
ActorRel(NonMatching, "d_a_obj_swBallA"),
ActorRel(NonMatching, "d_a_obj_swBallB"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_swBallC"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_swBallC"),
ActorRel(NonMatching, "d_a_obj_swLight"),
ActorRel(NonMatching, "d_a_obj_swchain"),
ActorRel(Equivalent, "d_a_obj_swhang"), # vtable order
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_sword"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_sword"),
ActorRel(NonMatching, "d_a_obj_swpush2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_swspinner"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_swturn"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_swturn"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_syRock"),
ActorRel(NonMatching, "d_a_obj_szbridge"),
ActorRel(NonMatching, "d_a_obj_taFence"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_table"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_takaraDai"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_tatigi"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_ten"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_ten"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_testcube"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_tgake"),
ActorRel(NonMatching, "d_a_obj_thashi"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_thdoor"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_thdoor"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_timeFire"),
ActorRel(Equivalent, "d_a_obj_tks", extra_cflags=[DANPCF_C_HACK]), # weak function order, sinShort inline issue
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_tmoon"),
@@ -2179,7 +2179,7 @@ config.libs = [
ActorRel(NonMatching, "d_a_obj_toby"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_tobyhouse"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_togeTrap"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_tombo"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_tombo"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_tornado"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_tornado2"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_tp"),
@@ -2189,22 +2189,22 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_usaku"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_vground"),
ActorRel(NonMatching, "d_a_obj_volcball"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_volcbom"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_warp_kbrg"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_warp_obrg"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_volcbom"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_warp_kbrg"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_warp_obrg"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_waterGate"),
ActorRel(Equivalent, "d_a_obj_waterPillar"), # weak func order
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_waterfall"),
ActorRel(NonMatching, "d_a_obj_wchain"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_wdStick"),
ActorRel(NonMatching, "d_a_obj_web0"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_web1"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_well_cover"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_web1"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_well_cover"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_wflag"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_wind_stone"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_window"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_wood_pendulum"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_wood_statue"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_wood_statue"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_wsword"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_yel_bag"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_ystone"),
@@ -2212,11 +2212,11 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_zdoor"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_zrTurara"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_zrTuraraRock"),
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_zraMark"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_zraMark"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_zra_freeze"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_obj_zra_rock"),
ActorRel(NonMatching, "d_a_passer_mng"),
ActorRel(MatchingFor("GZ2E01"), "d_a_tag_arena"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_arena"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_peru"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_ppolamp"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_skip_2D"),
@@ -2249,7 +2249,7 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_poFire"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_qs"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_ret_room"),
ActorRel(MatchingFor("GZ2E01"), "d_a_tag_river_back"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_river_back"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_rmbit_sw"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_schedule"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_setBall"),
@@ -2264,7 +2264,7 @@ config.libs = [
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_theB_hint"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_wara_howl"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_watchge"),
ActorRel(MatchingFor("GZ2E01"), "d_a_tag_waterfall"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_waterfall"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_wljump"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_tag_yami"),
ActorRel(MatchingFor("GZ2E01", "GZ2J01"), "d_a_talk"),