1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-08-08 07:20:16 +00:00

New assets system (#2481)

* wip: New assets system tm

Builds gc-eu-mq-dbg OK from clean after
1) make setup
2) python3 -m tools.assets.extract -j
3) replace 0x80A8E610 with sShadowTex in extracted/gc-eu-mq-dbg/assets/overlays/ovl_En_Jsjutan/sShadowMaterialDL.inc.c
4) make various symbols in extracted data like sTex static

* use variables from config.yml for gMtxClear and sShadowTex addresses

* Write source with static for overlays using `HACK_IS_STATIC_ON` hack

* gc-eu-mq-dbg OK from clean with `make setup && make`

* implement more skeleton-related types, cleanups, fixups

* fix extracted data to no longer produce compilation warnings

* implement more of RoomShapeImage types

* yeet XmlPath from ExternalFile usage

* Implement PlayerAnimationDataResource (link_animetion data)

* fix csdis CS_TIME extra arg

* dmadata file names no longer hardcoded for gc-eu-mq-dbg

* ntsc-1.0 OK

* xml fixes

* slightly improve standard output

* rm extract_assets.py

* generate and use Limb enums (TODO: check Skin skels and implement for Curve skels)

* handle dependencies between xmls

* introduce RawPointers xml attribute to ignore specific pointers and keep them raw

* add tools/extract_assets.sh

* fixups

* only extract if xmls changed or if -f (force) is used

* fixups, gc-eu OK

* all versions OK

* check attributes of xml resources elements

* Implement legacy skelanime resources

* fix ASSET_FILES_BIN_EXTRACTED/COMMITTED: look for .u8.bin specifically instead of just .bin

* implement JFIFResource

* fix png/jpg wildcards: look specifically for .u64.png .u32.png .u64.jpg

* Makefile: Add rules to build .png, .bin and .jpg in assets/ too

* start writing actual docs

* extract sTransCircleDL and sTransWipeDL

* misc cleanup/fixes, pygfxd 1.0.3

* refactor CDataExt.set_write callback args to use a dataclass

* Move {} to in-source

* misc

* more progress on spec

* fix missing braces in n64dd_error_textures.c

* finish xml spec doc

* assets xmls fixes

* some cleanup, use `gNameTex_WIDTH/HEIGHT` macros in dlists

* handle hackmode_syotes_room, fix compile

* C build_from_png

* rm tools/assets/bin2c

* rm ZAPD

* format

* remove rule to generate dmadata_table.py

* CC0 license (and some import cleanup)

* dont try to build zapd (rmd)

* simplify palettes with single user (ci images with a non-shared palette)

* add docs on how images are handled

* bss

* allow -j N

* fix n64texconv python bindings memory management

* move -j at the end of calling extraction script

* with -j, update last_extracts.json as each job completes rather than only if all complete

* make interrupting less jank by making child processes ignore sigint

* use enum names in `SCENE_CMD_SKYBOX_SETTINGS`

* `multiprocessing.get_context("fork")`

* import rich, except ImportError s

* fix optional rich usage

* .bss

* .bss

* .bss

* assets extraction: -j -> -j$(N_THREADS)

* .bss

* change LIMB_NONE/MAX defaults to be FILE_OFFSET instead of SKELNAME

* 0XHEX -> 0xHEX

* fix bss

* Proper includes for assets

mostly proper, some includes like dlists resources always causing a sys_matrix.h include (when not every dlist references gIdentityMtx) could be done better

* rm z64.h

* rm z64.h take two

* bss

* Make .u64 suffix for pngs optional

* fixup: rm .u64 suffix from n64dd image paths

* Remove elemtype suffixes from .bin and .jpg files

* Update images.md

* some build_from_png cleanup, more error handling, comments

* Handle skybox textures

Introduce "sub-format" suffix for pngs, with sub-formats split_lo and split_hi being used for skybox textures

* fixup for older python

* improve collision output some

* fully use SURFACETYPE[01] macros in writing extracted surface types

* use WATERBOX_PROPERTIES in extracted waterboxes

* some SceneCommandsResource cleanup

* format EnvLightSettingsList output
This commit is contained in:
Dragorn421 2025-05-18 01:29:09 +02:00 committed by GitHub
parent 0c6c112cb9
commit 1e556e3a3d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
460 changed files with 14342 additions and 48656 deletions

View file

@ -0,0 +1,56 @@
# SPDX-FileCopyrightText: © 2025 ZeldaRET
# SPDX-License-Identifier: CC0-1.0
ROOT := ../../../../
DATA_FILES := actor_ids.py object_ids.py entrance_table_mini.py scene_table_mini.py
default:
@echo 'Run `make all` or with the appropriate target to (re)build data files'
all: $(DATA_FILES)
distclean:
$(RM) $(DATA_FILES)
.PHONY: default all distclean
actor_ids.py: $(ROOT)/include/tables/actor_table.h
echo '# This file was generated from $<' > $@
echo >> $@
echo 'DATA = (' >> $@
cpp -P \
-D'DEFINE_ACTOR(_0,enumValue,_2,_3)=#enumValue,' \
-D'DEFINE_ACTOR_UNSET(enumValue)=#enumValue,' \
-D'DEFINE_ACTOR_INTERNAL=DEFINE_ACTOR' \
$< >> $@
echo ')' >> $@
object_ids.py: $(ROOT)/include/tables/object_table.h
echo '# This file was generated from $<' > $@
echo >> $@
echo 'DATA = (' >> $@
cpp -P \
-D'DEFINE_OBJECT(_0,enumValue)=#enumValue,' \
-D'DEFINE_OBJECT_UNSET(enumValue)=#enumValue,' \
-D'DEFINE_OBJECT_NULL(_0,enumValue)=#enumValue,' \
$< >> $@
echo ')' >> $@
entrance_table_mini.py: $(ROOT)/include/tables/entrance_table.h
echo '# This file was generated from $<' > $@
echo >> $@
echo 'DATA = (' >> $@
cpp -P \
-D'DEFINE_ENTRANCE(enumValue, sceneId, spawn, _3, _4, _5, _6)=(#enumValue, #sceneId, spawn),' \
$< >> $@
echo ')' >> $@
scene_table_mini.py: $(ROOT)/include/tables/scene_table.h
echo '# This file was generated from $<' > $@
echo >> $@
echo 'DATA = (' >> $@
cpp -P \
-D'DEFINE_SCENE(name, _1, enumValue, _3, _4, _5)=(#name, #enumValue),' \
$< >> $@
echo ')' >> $@

View file

@ -0,0 +1,131 @@
# SPDX-FileCopyrightText: © 2025 ZeldaRET
# SPDX-License-Identifier: CC0-1.0
from typing import Sequence
I_D_OMEGALUL = True
from . import actor_ids
def get_actor_id_name(actor_id: int) -> str:
return actor_ids.DATA[actor_id]
from . import object_ids
def get_object_id_name(object_id: int) -> str:
return object_ids.DATA[object_id]
from . import entrance_table_mini
from . import entrance_ids_special
def get_entrance_id_name(entrance_id: int) -> str:
if entrance_id in entrance_ids_special.DATA:
return entrance_ids_special.DATA[entrance_id]
return entrance_table_mini.DATA[entrance_id][0]
def get_entrance_scene_id_name(entrance_id: int) -> str:
return entrance_table_mini.DATA[entrance_id][1]
def get_entrance_spawn(entrance_id: int) -> int:
return entrance_table_mini.DATA[entrance_id][2]
entrance_ids_by_scene_id_name: dict[str, list[int]] = dict()
for (
entrance_id,
(
entrance_id_name,
entrance_scene_id_name,
entrance_spawn,
),
) in enumerate(entrance_table_mini.DATA):
entrance_ids_by_scene_id_name.setdefault(entrance_scene_id_name, []).append(
entrance_id
)
def get_entrance_ids_from_scene_id_name(scene_id_name: str) -> Sequence[int]:
return entrance_ids_by_scene_id_name[scene_id_name]
from . import scene_table_mini
def get_scene_rom_file_name(scene_id: int) -> str:
return scene_table_mini.DATA[scene_id][0]
def get_scene_id_name(scene_id: int) -> str:
return scene_table_mini.DATA[scene_id][1]
scene_id_by_rom_file_name = {
rom_file_name: scene_id
for scene_id, (rom_file_name, scene_id_name) in enumerate(scene_table_mini.DATA)
}
def get_scene_id_from_rom_file_name(rom_file_name: str) -> int:
return scene_id_by_rom_file_name[rom_file_name]
from . import audio_ids
def get_sequence_id_name(sequence_id: int) -> str:
return audio_ids.SEQ_IDS[sequence_id]
def get_nature_ambience_id_name(nature_ambience_id: int) -> str:
return audio_ids.NATURE_AMBIENCE_IDS[nature_ambience_id]
from . import misc_ids
def get_scene_cam_type_name(scene_cam_type: int) -> str:
return misc_ids.SCENE_CAM_TYPES[scene_cam_type]
def get_room_behavior_type1_name(behavior_type1: int) -> str:
return misc_ids.ROOM_BEHAVIOR_TYPE1_NAMES[behavior_type1]
def get_room_behavior_type2_name(behavior_type2: int) -> str:
return misc_ids.ROOM_BEHAVIOR_TYPE2_NAMES[behavior_type2]
def get_lens_mode_name(lens_mode: int) -> str:
return misc_ids.LENS_MODES[lens_mode]
def get_camera_setting_type_name(camera_setting_type: int) -> str:
return misc_ids.CAMERA_SETTING_TYPES[camera_setting_type]
def get_room_shape_type_name(room_shape_type: int) -> str:
return misc_ids.ROOM_SHAPE_TYPE[room_shape_type]
def get_room_shape_image_amount_type_name(room_shape_image_amount_type: int) -> str:
return misc_ids.ROOM_SHAPE_IMAGE_AMOUNT_TYPE[room_shape_image_amount_type]
def get_skybox_id(skybox_id: int) -> str:
return misc_ids.SKYBOX_IDS[skybox_id]
def get_light_mode(light_mode: int) -> str:
return misc_ids.LIGHT_MODES[light_mode]
def get_navi_quest_hint_file_id_name(navi_quest_hint_file_id: int) -> str:
return misc_ids.NAVI_QUEST_HINT_FILE_IDS[navi_quest_hint_file_id]

View file

@ -0,0 +1,475 @@
# This file was generated from ../../../..//include/tables/actor_table.h
DATA = (
"ACTOR_PLAYER",
"ACTOR_UNSET_1",
"ACTOR_EN_TEST",
"ACTOR_UNSET_3",
"ACTOR_EN_GIRLA",
"ACTOR_UNSET_5",
"ACTOR_UNSET_6",
"ACTOR_EN_PART",
"ACTOR_EN_LIGHT",
"ACTOR_EN_DOOR",
"ACTOR_EN_BOX",
"ACTOR_BG_DY_YOSEIZO",
"ACTOR_BG_HIDAN_FIREWALL",
"ACTOR_EN_POH",
"ACTOR_EN_OKUTA",
"ACTOR_BG_YDAN_SP",
"ACTOR_EN_BOM",
"ACTOR_EN_WALLMAS",
"ACTOR_EN_DODONGO",
"ACTOR_EN_FIREFLY",
"ACTOR_EN_HORSE",
"ACTOR_EN_ITEM00",
"ACTOR_EN_ARROW",
"ACTOR_UNSET_17",
"ACTOR_EN_ELF",
"ACTOR_EN_NIW",
"ACTOR_UNSET_1A",
"ACTOR_EN_TITE",
"ACTOR_EN_REEBA",
"ACTOR_EN_PEEHAT",
"ACTOR_EN_BUTTE",
"ACTOR_UNSET_1F",
"ACTOR_EN_INSECT",
"ACTOR_EN_FISH",
"ACTOR_UNSET_22",
"ACTOR_EN_HOLL",
"ACTOR_EN_SCENE_CHANGE",
"ACTOR_EN_ZF",
"ACTOR_EN_HATA",
"ACTOR_BOSS_DODONGO",
"ACTOR_BOSS_GOMA",
"ACTOR_EN_ZL1",
"ACTOR_EN_VIEWER",
"ACTOR_EN_GOMA",
"ACTOR_BG_PUSHBOX",
"ACTOR_EN_BUBBLE",
"ACTOR_DOOR_SHUTTER",
"ACTOR_EN_DODOJR",
"ACTOR_EN_BDFIRE",
"ACTOR_UNSET_31",
"ACTOR_EN_BOOM",
"ACTOR_EN_TORCH2",
"ACTOR_EN_BILI",
"ACTOR_EN_TP",
"ACTOR_UNSET_36",
"ACTOR_EN_ST",
"ACTOR_EN_BW",
"ACTOR_EN_A_OBJ",
"ACTOR_EN_EIYER",
"ACTOR_EN_RIVER_SOUND",
"ACTOR_EN_HORSE_NORMAL",
"ACTOR_EN_OSSAN",
"ACTOR_BG_TREEMOUTH",
"ACTOR_BG_DODOAGO",
"ACTOR_BG_HIDAN_DALM",
"ACTOR_BG_HIDAN_HROCK",
"ACTOR_EN_HORSE_GANON",
"ACTOR_BG_HIDAN_ROCK",
"ACTOR_BG_HIDAN_RSEKIZOU",
"ACTOR_BG_HIDAN_SEKIZOU",
"ACTOR_BG_HIDAN_SIMA",
"ACTOR_BG_HIDAN_SYOKU",
"ACTOR_EN_XC",
"ACTOR_BG_HIDAN_CURTAIN",
"ACTOR_BG_SPOT00_HANEBASI",
"ACTOR_EN_MB",
"ACTOR_EN_BOMBF",
"ACTOR_EN_ZL2",
"ACTOR_BG_HIDAN_FSLIFT",
"ACTOR_EN_OE2",
"ACTOR_BG_YDAN_HASI",
"ACTOR_BG_YDAN_MARUTA",
"ACTOR_BOSS_GANONDROF",
"ACTOR_UNSET_53",
"ACTOR_EN_AM",
"ACTOR_EN_DEKUBABA",
"ACTOR_EN_M_FIRE1",
"ACTOR_EN_M_THUNDER",
"ACTOR_BG_DDAN_JD",
"ACTOR_BG_BREAKWALL",
"ACTOR_EN_JJ",
"ACTOR_EN_HORSE_ZELDA",
"ACTOR_BG_DDAN_KD",
"ACTOR_DOOR_WARP1",
"ACTOR_OBJ_SYOKUDAI",
"ACTOR_ITEM_B_HEART",
"ACTOR_EN_DEKUNUTS",
"ACTOR_BG_MENKURI_KAITEN",
"ACTOR_BG_MENKURI_EYE",
"ACTOR_EN_VALI",
"ACTOR_BG_MIZU_MOVEBG",
"ACTOR_BG_MIZU_WATER",
"ACTOR_ARMS_HOOK",
"ACTOR_EN_FHG",
"ACTOR_BG_MORI_HINERI",
"ACTOR_EN_BB",
"ACTOR_BG_TOKI_HIKARI",
"ACTOR_EN_YUKABYUN",
"ACTOR_BG_TOKI_SWD",
"ACTOR_EN_FHG_FIRE",
"ACTOR_BG_MJIN",
"ACTOR_BG_HIDAN_KOUSI",
"ACTOR_DOOR_TOKI",
"ACTOR_BG_HIDAN_HAMSTEP",
"ACTOR_EN_BIRD",
"ACTOR_UNSET_73",
"ACTOR_UNSET_74",
"ACTOR_UNSET_75",
"ACTOR_UNSET_76",
"ACTOR_EN_WOOD02",
"ACTOR_UNSET_78",
"ACTOR_UNSET_79",
"ACTOR_UNSET_7A",
"ACTOR_UNSET_7B",
"ACTOR_EN_LIGHTBOX",
"ACTOR_EN_PU_BOX",
"ACTOR_UNSET_7E",
"ACTOR_UNSET_7F",
"ACTOR_EN_TRAP",
"ACTOR_EN_AROW_TRAP",
"ACTOR_EN_VASE",
"ACTOR_UNSET_83",
"ACTOR_EN_TA",
"ACTOR_EN_TK",
"ACTOR_BG_MORI_BIGST",
"ACTOR_BG_MORI_ELEVATOR",
"ACTOR_BG_MORI_KAITENKABE",
"ACTOR_BG_MORI_RAKKATENJO",
"ACTOR_EN_VM",
"ACTOR_DEMO_EFFECT",
"ACTOR_DEMO_KANKYO",
"ACTOR_BG_HIDAN_FWBIG",
"ACTOR_EN_FLOORMAS",
"ACTOR_EN_HEISHI1",
"ACTOR_EN_RD",
"ACTOR_EN_PO_SISTERS",
"ACTOR_BG_HEAVY_BLOCK",
"ACTOR_BG_PO_EVENT",
"ACTOR_OBJ_MURE",
"ACTOR_EN_SW",
"ACTOR_BOSS_FD",
"ACTOR_OBJECT_KANKYO",
"ACTOR_EN_DU",
"ACTOR_EN_FD",
"ACTOR_EN_HORSE_LINK_CHILD",
"ACTOR_DOOR_ANA",
"ACTOR_BG_SPOT02_OBJECTS",
"ACTOR_BG_HAKA",
"ACTOR_MAGIC_WIND",
"ACTOR_MAGIC_FIRE",
"ACTOR_UNSET_A0",
"ACTOR_EN_RU1",
"ACTOR_BOSS_FD2",
"ACTOR_EN_FD_FIRE",
"ACTOR_EN_DH",
"ACTOR_EN_DHA",
"ACTOR_EN_RL",
"ACTOR_EN_ENCOUNT1",
"ACTOR_DEMO_DU",
"ACTOR_DEMO_IM",
"ACTOR_DEMO_TRE_LGT",
"ACTOR_EN_FW",
"ACTOR_BG_VB_SIMA",
"ACTOR_EN_VB_BALL",
"ACTOR_BG_HAKA_MEGANE",
"ACTOR_BG_HAKA_MEGANEBG",
"ACTOR_BG_HAKA_SHIP",
"ACTOR_BG_HAKA_SGAMI",
"ACTOR_UNSET_B2",
"ACTOR_EN_HEISHI2",
"ACTOR_EN_ENCOUNT2",
"ACTOR_EN_FIRE_ROCK",
"ACTOR_EN_BROB",
"ACTOR_MIR_RAY",
"ACTOR_BG_SPOT09_OBJ",
"ACTOR_BG_SPOT18_OBJ",
"ACTOR_BOSS_VA",
"ACTOR_BG_HAKA_TUBO",
"ACTOR_BG_HAKA_TRAP",
"ACTOR_BG_HAKA_HUTA",
"ACTOR_BG_HAKA_ZOU",
"ACTOR_BG_SPOT17_FUNEN",
"ACTOR_EN_SYATEKI_ITM",
"ACTOR_EN_SYATEKI_MAN",
"ACTOR_EN_TANA",
"ACTOR_EN_NB",
"ACTOR_BOSS_MO",
"ACTOR_EN_SB",
"ACTOR_EN_BIGOKUTA",
"ACTOR_EN_KAREBABA",
"ACTOR_BG_BDAN_OBJECTS",
"ACTOR_DEMO_SA",
"ACTOR_DEMO_GO",
"ACTOR_EN_IN",
"ACTOR_EN_TR",
"ACTOR_BG_SPOT16_BOMBSTONE",
"ACTOR_UNSET_CE",
"ACTOR_BG_HIDAN_KOWARERUKABE",
"ACTOR_BG_BOMBWALL",
"ACTOR_BG_SPOT08_ICEBLOCK",
"ACTOR_EN_RU2",
"ACTOR_OBJ_DEKUJR",
"ACTOR_BG_MIZU_UZU",
"ACTOR_BG_SPOT06_OBJECTS",
"ACTOR_BG_ICE_OBJECTS",
"ACTOR_BG_HAKA_WATER",
"ACTOR_UNSET_D8",
"ACTOR_EN_MA2",
"ACTOR_EN_BOM_CHU",
"ACTOR_EN_HORSE_GAME_CHECK",
"ACTOR_BOSS_TW",
"ACTOR_EN_RR",
"ACTOR_EN_BA",
"ACTOR_EN_BX",
"ACTOR_EN_ANUBICE",
"ACTOR_EN_ANUBICE_FIRE",
"ACTOR_BG_MORI_HASHIGO",
"ACTOR_BG_MORI_HASHIRA4",
"ACTOR_BG_MORI_IDOMIZU",
"ACTOR_BG_SPOT16_DOUGHNUT",
"ACTOR_BG_BDAN_SWITCH",
"ACTOR_EN_MA1",
"ACTOR_BOSS_GANON",
"ACTOR_BOSS_SST",
"ACTOR_UNSET_EA",
"ACTOR_UNSET_EB",
"ACTOR_EN_NY",
"ACTOR_EN_FR",
"ACTOR_ITEM_SHIELD",
"ACTOR_BG_ICE_SHELTER",
"ACTOR_EN_ICE_HONO",
"ACTOR_ITEM_OCARINA",
"ACTOR_UNSET_F2",
"ACTOR_UNSET_F3",
"ACTOR_MAGIC_DARK",
"ACTOR_DEMO_6K",
"ACTOR_EN_ANUBICE_TAG",
"ACTOR_BG_HAKA_GATE",
"ACTOR_BG_SPOT15_SAKU",
"ACTOR_BG_JYA_GOROIWA",
"ACTOR_BG_JYA_ZURERUKABE",
"ACTOR_UNSET_FB",
"ACTOR_BG_JYA_COBRA",
"ACTOR_BG_JYA_KANAAMI",
"ACTOR_FISHING",
"ACTOR_OBJ_OSHIHIKI",
"ACTOR_BG_GATE_SHUTTER",
"ACTOR_EFF_DUST",
"ACTOR_BG_SPOT01_FUSYA",
"ACTOR_BG_SPOT01_IDOHASHIRA",
"ACTOR_BG_SPOT01_IDOMIZU",
"ACTOR_BG_PO_SYOKUDAI",
"ACTOR_BG_GANON_OTYUKA",
"ACTOR_BG_SPOT15_RRBOX",
"ACTOR_BG_UMAJUMP",
"ACTOR_UNSET_109",
"ACTOR_ARROW_FIRE",
"ACTOR_ARROW_ICE",
"ACTOR_ARROW_LIGHT",
"ACTOR_UNSET_10D",
"ACTOR_UNSET_10E",
"ACTOR_ITEM_ETCETERA",
"ACTOR_OBJ_KIBAKO",
"ACTOR_OBJ_TSUBO",
"ACTOR_EN_WONDER_ITEM",
"ACTOR_EN_IK",
"ACTOR_DEMO_IK",
"ACTOR_EN_SKJ",
"ACTOR_EN_SKJNEEDLE",
"ACTOR_EN_G_SWITCH",
"ACTOR_DEMO_EXT",
"ACTOR_DEMO_SHD",
"ACTOR_EN_DNS",
"ACTOR_ELF_MSG",
"ACTOR_EN_HONOTRAP",
"ACTOR_EN_TUBO_TRAP",
"ACTOR_OBJ_ICE_POLY",
"ACTOR_BG_SPOT03_TAKI",
"ACTOR_BG_SPOT07_TAKI",
"ACTOR_EN_FZ",
"ACTOR_EN_PO_RELAY",
"ACTOR_BG_RELAY_OBJECTS",
"ACTOR_EN_DIVING_GAME",
"ACTOR_EN_KUSA",
"ACTOR_OBJ_BEAN",
"ACTOR_OBJ_BOMBIWA",
"ACTOR_UNSET_128",
"ACTOR_UNSET_129",
"ACTOR_OBJ_SWITCH",
"ACTOR_OBJ_ELEVATOR",
"ACTOR_OBJ_LIFT",
"ACTOR_OBJ_HSBLOCK",
"ACTOR_EN_OKARINA_TAG",
"ACTOR_EN_YABUSAME_MARK",
"ACTOR_EN_GOROIWA",
"ACTOR_EN_EX_RUPPY",
"ACTOR_EN_TORYO",
"ACTOR_EN_DAIKU",
"ACTOR_UNSET_134",
"ACTOR_EN_NWC",
"ACTOR_EN_BLKOBJ",
"ACTOR_ITEM_INBOX",
"ACTOR_EN_GE1",
"ACTOR_OBJ_BLOCKSTOP",
"ACTOR_EN_SDA",
"ACTOR_EN_CLEAR_TAG",
"ACTOR_EN_NIW_LADY",
"ACTOR_EN_GM",
"ACTOR_EN_MS",
"ACTOR_EN_HS",
"ACTOR_BG_INGATE",
"ACTOR_EN_KANBAN",
"ACTOR_EN_HEISHI3",
"ACTOR_EN_SYATEKI_NIW",
"ACTOR_EN_ATTACK_NIW",
"ACTOR_BG_SPOT01_IDOSOKO",
"ACTOR_EN_SA",
"ACTOR_EN_WONDER_TALK",
"ACTOR_BG_GJYO_BRIDGE",
"ACTOR_EN_DS",
"ACTOR_EN_MK",
"ACTOR_EN_BOM_BOWL_MAN",
"ACTOR_EN_BOM_BOWL_PIT",
"ACTOR_EN_OWL",
"ACTOR_EN_ISHI",
"ACTOR_OBJ_HANA",
"ACTOR_OBJ_LIGHTSWITCH",
"ACTOR_OBJ_MURE2",
"ACTOR_EN_GO",
"ACTOR_EN_FU",
"ACTOR_UNSET_154",
"ACTOR_EN_CHANGER",
"ACTOR_BG_JYA_MEGAMI",
"ACTOR_BG_JYA_LIFT",
"ACTOR_BG_JYA_BIGMIRROR",
"ACTOR_BG_JYA_BOMBCHUIWA",
"ACTOR_BG_JYA_AMISHUTTER",
"ACTOR_BG_JYA_BOMBIWA",
"ACTOR_BG_SPOT18_BASKET",
"ACTOR_UNSET_15D",
"ACTOR_EN_GANON_ORGAN",
"ACTOR_EN_SIOFUKI",
"ACTOR_EN_STREAM",
"ACTOR_UNSET_161",
"ACTOR_EN_MM",
"ACTOR_EN_KO",
"ACTOR_EN_KZ",
"ACTOR_EN_WEATHER_TAG",
"ACTOR_BG_SST_FLOOR",
"ACTOR_EN_ANI",
"ACTOR_EN_EX_ITEM",
"ACTOR_BG_JYA_IRONOBJ",
"ACTOR_EN_JS",
"ACTOR_EN_JSJUTAN",
"ACTOR_EN_CS",
"ACTOR_EN_MD",
"ACTOR_EN_HY",
"ACTOR_EN_GANON_MANT",
"ACTOR_EN_OKARINA_EFFECT",
"ACTOR_EN_MAG",
"ACTOR_DOOR_GERUDO",
"ACTOR_ELF_MSG2",
"ACTOR_DEMO_GT",
"ACTOR_EN_PO_FIELD",
"ACTOR_EFC_ERUPC",
"ACTOR_BG_ZG",
"ACTOR_EN_HEISHI4",
"ACTOR_EN_ZL3",
"ACTOR_BOSS_GANON2",
"ACTOR_EN_KAKASI",
"ACTOR_EN_TAKARA_MAN",
"ACTOR_OBJ_MAKEOSHIHIKI",
"ACTOR_OCEFF_SPOT",
"ACTOR_END_TITLE",
"ACTOR_UNSET_180",
"ACTOR_EN_TORCH",
"ACTOR_DEMO_EC",
"ACTOR_SHOT_SUN",
"ACTOR_EN_DY_EXTRA",
"ACTOR_EN_WONDER_TALK2",
"ACTOR_EN_GE2",
"ACTOR_OBJ_ROOMTIMER",
"ACTOR_EN_SSH",
"ACTOR_EN_STH",
"ACTOR_OCEFF_WIPE",
"ACTOR_OCEFF_STORM",
"ACTOR_EN_WEIYER",
"ACTOR_BG_SPOT05_SOKO",
"ACTOR_BG_JYA_1FLIFT",
"ACTOR_BG_JYA_HAHENIRON",
"ACTOR_BG_SPOT12_GATE",
"ACTOR_BG_SPOT12_SAKU",
"ACTOR_EN_HINTNUTS",
"ACTOR_EN_NUTSBALL",
"ACTOR_BG_SPOT00_BREAK",
"ACTOR_EN_SHOPNUTS",
"ACTOR_EN_IT",
"ACTOR_EN_GELDB",
"ACTOR_OCEFF_WIPE2",
"ACTOR_OCEFF_WIPE3",
"ACTOR_EN_NIW_GIRL",
"ACTOR_EN_DOG",
"ACTOR_EN_SI",
"ACTOR_BG_SPOT01_OBJECTS2",
"ACTOR_OBJ_COMB",
"ACTOR_BG_SPOT11_BAKUDANKABE",
"ACTOR_OBJ_KIBAKO2",
"ACTOR_EN_DNT_DEMO",
"ACTOR_EN_DNT_JIJI",
"ACTOR_EN_DNT_NOMAL",
"ACTOR_EN_GUEST",
"ACTOR_BG_BOM_GUARD",
"ACTOR_EN_HS2",
"ACTOR_DEMO_KEKKAI",
"ACTOR_BG_SPOT08_BAKUDANKABE",
"ACTOR_BG_SPOT17_BAKUDANKABE",
"ACTOR_UNSET_1AA",
"ACTOR_OBJ_MURE3",
"ACTOR_EN_TG",
"ACTOR_EN_MU",
"ACTOR_EN_GO2",
"ACTOR_EN_WF",
"ACTOR_EN_SKB",
"ACTOR_DEMO_GJ",
"ACTOR_DEMO_GEFF",
"ACTOR_BG_GND_FIREMEIRO",
"ACTOR_BG_GND_DARKMEIRO",
"ACTOR_BG_GND_SOULMEIRO",
"ACTOR_BG_GND_NISEKABE",
"ACTOR_BG_GND_ICEBLOCK",
"ACTOR_EN_GB",
"ACTOR_EN_GS",
"ACTOR_BG_MIZU_BWALL",
"ACTOR_BG_MIZU_SHUTTER",
"ACTOR_EN_DAIKU_KAKARIKO",
"ACTOR_BG_BOWL_WALL",
"ACTOR_EN_WALL_TUBO",
"ACTOR_EN_PO_DESERT",
"ACTOR_EN_CROW",
"ACTOR_DOOR_KILLER",
"ACTOR_BG_SPOT11_OASIS",
"ACTOR_BG_SPOT18_FUTA",
"ACTOR_BG_SPOT18_SHUTTER",
"ACTOR_EN_MA3",
"ACTOR_EN_COW",
"ACTOR_BG_ICE_TURARA",
"ACTOR_BG_ICE_SHUTTER",
"ACTOR_EN_KAKASI2",
"ACTOR_EN_KAKASI3",
"ACTOR_OCEFF_WIPE4",
"ACTOR_EN_EG",
"ACTOR_BG_MENKURI_NISEKABE",
"ACTOR_EN_ZO",
"ACTOR_OBJ_MAKEKINSUTA",
"ACTOR_EN_GE3",
"ACTOR_OBJ_TIMEBLOCK",
"ACTOR_OBJ_HAMISHI",
"ACTOR_EN_ZL4",
"ACTOR_EN_MM2",
"ACTOR_BG_JYA_BLOCK",
"ACTOR_OBJ_WARP2BLOCK",
)

View file

@ -0,0 +1,141 @@
# This file was made manually
SEQ_IDS = {
0x00: "NA_BGM_GENERAL_SFX",
0x01: "NA_BGM_NATURE_AMBIENCE",
0x02: "NA_BGM_FIELD_LOGIC",
0x03: "NA_BGM_FIELD_INIT",
0x04: "NA_BGM_FIELD_DEFAULT_1",
0x05: "NA_BGM_FIELD_DEFAULT_2",
0x06: "NA_BGM_FIELD_DEFAULT_3",
0x07: "NA_BGM_FIELD_DEFAULT_4",
0x08: "NA_BGM_FIELD_DEFAULT_5",
0x09: "NA_BGM_FIELD_DEFAULT_6",
0x0A: "NA_BGM_FIELD_DEFAULT_7",
0x0B: "NA_BGM_FIELD_DEFAULT_8",
0x0C: "NA_BGM_FIELD_DEFAULT_9",
0x0D: "NA_BGM_FIELD_DEFAULT_A",
0x0E: "NA_BGM_FIELD_DEFAULT_B",
0x0F: "NA_BGM_FIELD_ENEMY_INIT",
0x10: "NA_BGM_FIELD_ENEMY_1",
0x11: "NA_BGM_FIELD_ENEMY_2",
0x12: "NA_BGM_FIELD_ENEMY_3",
0x13: "NA_BGM_FIELD_ENEMY_4",
0x14: "NA_BGM_FIELD_STILL_1",
0x15: "NA_BGM_FIELD_STILL_2",
0x16: "NA_BGM_FIELD_STILL_3",
0x17: "NA_BGM_FIELD_STILL_4",
0x18: "NA_BGM_DUNGEON",
0x19: "NA_BGM_KAKARIKO_ADULT",
0x1A: "NA_BGM_ENEMY",
0x1B: "NA_BGM_BOSS",
0x1C: "NA_BGM_INSIDE_DEKU_TREE",
0x1D: "NA_BGM_MARKET",
0x1E: "NA_BGM_TITLE",
0x1F: "NA_BGM_LINK_HOUSE",
0x20: "NA_BGM_GAME_OVER",
0x21: "NA_BGM_BOSS_CLEAR",
0x22: "NA_BGM_ITEM_GET",
0x23: "NA_BGM_OPENING_GANON",
0x24: "NA_BGM_HEART_GET",
0x25: "NA_BGM_OCA_LIGHT",
0x26: "NA_BGM_JABU_JABU",
0x27: "NA_BGM_KAKARIKO_KID",
0x28: "NA_BGM_GREAT_FAIRY",
0x29: "NA_BGM_ZELDA_THEME",
0x2A: "NA_BGM_FIRE_TEMPLE",
0x2B: "NA_BGM_OPEN_TRE_BOX",
0x2C: "NA_BGM_FOREST_TEMPLE",
0x2D: "NA_BGM_COURTYARD",
0x2E: "NA_BGM_GANON_TOWER",
0x2F: "NA_BGM_LONLON",
0x30: "NA_BGM_GORON_CITY",
0x31: "NA_BGM_FIELD_MORNING",
0x32: "NA_BGM_SPIRITUAL_STONE",
0x33: "NA_BGM_OCA_BOLERO",
0x34: "NA_BGM_OCA_MINUET",
0x35: "NA_BGM_OCA_SERENADE",
0x36: "NA_BGM_OCA_REQUIEM",
0x37: "NA_BGM_OCA_NOCTURNE",
0x38: "NA_BGM_MINI_BOSS",
0x39: "NA_BGM_SMALL_ITEM_GET",
0x3A: "NA_BGM_TEMPLE_OF_TIME",
0x3B: "NA_BGM_EVENT_CLEAR",
0x3C: "NA_BGM_KOKIRI",
0x3D: "NA_BGM_OCA_FAIRY_GET",
0x3E: "NA_BGM_SARIA_THEME",
0x3F: "NA_BGM_SPIRIT_TEMPLE",
0x40: "NA_BGM_HORSE",
0x41: "NA_BGM_HORSE_GOAL",
0x42: "NA_BGM_INGO",
0x43: "NA_BGM_MEDALLION_GET",
0x44: "NA_BGM_OCA_SARIA",
0x45: "NA_BGM_OCA_EPONA",
0x46: "NA_BGM_OCA_ZELDA",
0x47: "NA_BGM_OCA_SUNS",
0x48: "NA_BGM_OCA_TIME",
0x49: "NA_BGM_OCA_STORM",
0x4A: "NA_BGM_NAVI_OPENING",
0x4B: "NA_BGM_DEKU_TREE_CS",
0x4C: "NA_BGM_WINDMILL",
0x4D: "NA_BGM_HYRULE_CS",
0x4E: "NA_BGM_MINI_GAME",
0x4F: "NA_BGM_SHEIK",
0x50: "NA_BGM_ZORA_DOMAIN",
0x51: "NA_BGM_APPEAR",
0x52: "NA_BGM_ADULT_LINK",
0x53: "NA_BGM_MASTER_SWORD",
0x54: "NA_BGM_INTRO_GANON",
0x55: "NA_BGM_SHOP",
0x56: "NA_BGM_CHAMBER_OF_SAGES",
0x57: "NA_BGM_FILE_SELECT",
0x58: "NA_BGM_ICE_CAVERN",
0x59: "NA_BGM_DOOR_OF_TIME",
0x5A: "NA_BGM_OWL",
0x5B: "NA_BGM_SHADOW_TEMPLE",
0x5C: "NA_BGM_WATER_TEMPLE",
0x5D: "NA_BGM_BRIDGE_TO_GANONS",
0x5E: "NA_BGM_OCARINA_OF_TIME",
0x5F: "NA_BGM_GERUDO_VALLEY",
0x60: "NA_BGM_POTION_SHOP",
0x61: "NA_BGM_KOTAKE_KOUME",
0x62: "NA_BGM_ESCAPE",
0x63: "NA_BGM_UNDERGROUND",
0x64: "NA_BGM_GANONDORF_BOSS",
0x65: "NA_BGM_GANON_BOSS",
0x66: "NA_BGM_END_DEMO",
0x67: "NA_BGM_STAFF_1",
0x68: "NA_BGM_STAFF_2",
0x69: "NA_BGM_STAFF_3",
0x6A: "NA_BGM_STAFF_4",
0x6B: "NA_BGM_FIRE_BOSS",
0x6C: "NA_BGM_TIMED_MINI_GAME",
0x6D: "NA_BGM_CUTSCENE_EFFECTS",
0x7F: "NA_BGM_NO_MUSIC",
0x80: "NA_BGM_NATURE_SFX_RAIN",
0xFFFF: "NA_BGM_DISABLED",
}
NATURE_AMBIENCE_IDS = {
0x00: "NATURE_ID_GENERAL_NIGHT",
0x01: "NATURE_ID_MARKET_ENTRANCE",
0x02: "NATURE_ID_KAKARIKO_REGION",
0x03: "NATURE_ID_MARKET_RUINS",
0x04: "NATURE_ID_KOKIRI_REGION",
0x05: "NATURE_ID_MARKET_NIGHT",
0x06: "NATURE_ID_06",
0x07: "NATURE_ID_GANONS_LAIR",
0x08: "NATURE_ID_08",
0x09: "NATURE_ID_09",
0x0A: "NATURE_ID_WASTELAND",
0x0B: "NATURE_ID_COLOSSUS",
0x0C: "NATURE_ID_DEATH_MOUNTAIN_TRAIL",
0x0D: "NATURE_ID_0D",
0x0E: "NATURE_ID_0E",
0x0F: "NATURE_ID_0F",
0x10: "NATURE_ID_10",
0x11: "NATURE_ID_11",
0x12: "NATURE_ID_12",
0x13: "NATURE_ID_NONE",
0xFF: "NATURE_ID_DISABLED",
}

View file

@ -0,0 +1,11 @@
# This file was made manually
DATA = {
0x7FF9: "ENTR_RETURN_GREAT_FAIRYS_FOUNTAIN_SPELLS",
0x7FFA: "ENTR_RETURN_SHOOTING_GALLERY",
0x7FFB: "ENTR_RETURN_2",
0x7FFC: "ENTR_RETURN_BAZAAR",
0x7FFD: "ENTR_RETURN_4",
0x7FFE: "ENTR_RETURN_GREAT_FAIRYS_FOUNTAIN_MAGIC",
0x7FFF: "ENTR_RETURN_GROTTO",
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,235 @@
# This file was made manually
SCENE_CAM_TYPES = {
0: "SCENE_CAM_TYPE_DEFAULT",
0x10: "SCENE_CAM_TYPE_FIXED_SHOP_VIEWPOINT",
0x20: "SCENE_CAM_TYPE_FIXED_TOGGLE_VIEWPOINT",
0x30: "SCENE_CAM_TYPE_FIXED",
0x40: "SCENE_CAM_TYPE_FIXED_MARKET",
0x50: "SCENE_CAM_TYPE_SHOOTING_GALLERY",
}
ROOM_BEHAVIOR_TYPE1_NAMES = {
0: "ROOM_TYPE_NORMAL",
1: "ROOM_TYPE_DUNGEON",
2: "ROOM_TYPE_INDOORS",
3: "ROOM_TYPE_3",
4: "ROOM_TYPE_4",
5: "ROOM_TYPE_BOSS",
}
ROOM_BEHAVIOR_TYPE2_NAMES = {
0: "ROOM_ENV_DEFAULT",
1: "ROOM_ENV_COLD",
2: "ROOM_ENV_WARM",
3: "ROOM_ENV_HOT",
4: "ROOM_ENV_UNK_STRETCH_1",
5: "ROOM_ENV_UNK_STRETCH_2",
6: "ROOM_ENV_UNK_STRETCH_3",
}
LENS_MODES = {
0: "LENS_MODE_SHOW_ACTORS",
1: "LENS_MODE_HIDE_ACTORS",
}
CAMERA_SETTING_TYPES = {
0x00: "CAM_SET_NONE",
0x01: "CAM_SET_NORMAL0",
0x02: "CAM_SET_NORMAL1",
0x03: "CAM_SET_DUNGEON0",
0x04: "CAM_SET_DUNGEON1",
0x05: "CAM_SET_NORMAL3",
0x06: "CAM_SET_HORSE",
0x07: "CAM_SET_BOSS_GOHMA",
0x08: "CAM_SET_BOSS_DODONGO",
0x09: "CAM_SET_BOSS_BARINADE",
0x0A: "CAM_SET_BOSS_PHANTOM_GANON",
0x0B: "CAM_SET_BOSS_VOLVAGIA",
0x0C: "CAM_SET_BOSS_BONGO",
0x0D: "CAM_SET_BOSS_MORPHA",
0x0E: "CAM_SET_BOSS_TWINROVA_PLATFORM",
0x0F: "CAM_SET_BOSS_TWINROVA_FLOOR",
0x10: "CAM_SET_BOSS_GANONDORF",
0x11: "CAM_SET_BOSS_GANON",
0x12: "CAM_SET_TOWER_CLIMB",
0x13: "CAM_SET_TOWER_UNUSED",
0x14: "CAM_SET_MARKET_BALCONY",
0x15: "CAM_SET_CHU_BOWLING",
0x16: "CAM_SET_PIVOT_CRAWLSPACE",
0x17: "CAM_SET_PIVOT_SHOP_BROWSING",
0x18: "CAM_SET_PIVOT_IN_FRONT",
0x19: "CAM_SET_PREREND_FIXED",
0x1A: "CAM_SET_PREREND_PIVOT",
0x1B: "CAM_SET_PREREND_SIDE_SCROLL",
0x1C: "CAM_SET_DOOR0",
0x1D: "CAM_SET_DOORC",
0x1E: "CAM_SET_CRAWLSPACE",
0x1F: "CAM_SET_START0",
0x20: "CAM_SET_START1",
0x21: "CAM_SET_FREE0",
0x22: "CAM_SET_FREE2",
0x23: "CAM_SET_PIVOT_CORNER",
0x24: "CAM_SET_PIVOT_WATER_SURFACE",
0x25: "CAM_SET_CS_0",
0x26: "CAM_SET_CS_TWISTED_HALLWAY",
0x27: "CAM_SET_FOREST_BIRDS_EYE",
0x28: "CAM_SET_SLOW_CHEST_CS",
0x29: "CAM_SET_ITEM_UNUSED",
0x2A: "CAM_SET_CS_3",
0x2B: "CAM_SET_CS_ATTENTION",
0x2C: "CAM_SET_BEAN_GENERIC",
0x2D: "CAM_SET_BEAN_LOST_WOODS",
0x2E: "CAM_SET_SCENE_UNUSED",
0x2F: "CAM_SET_SCENE_TRANSITION",
0x30: "CAM_SET_ELEVATOR_PLATFORM",
0x31: "CAM_SET_FIRE_STAIRCASE",
0x32: "CAM_SET_FOREST_UNUSED",
0x33: "CAM_SET_FOREST_DEFEAT_POE",
0x34: "CAM_SET_BIG_OCTO",
0x35: "CAM_SET_MEADOW_BIRDS_EYE",
0x36: "CAM_SET_MEADOW_UNUSED",
0x37: "CAM_SET_FIRE_BIRDS_EYE",
0x38: "CAM_SET_TURN_AROUND",
0x39: "CAM_SET_PIVOT_VERTICAL",
0x3A: "CAM_SET_NORMAL2",
0x3B: "CAM_SET_FISHING",
0x3C: "CAM_SET_CS_C",
0x3D: "CAM_SET_JABU_TENTACLE",
0x3E: "CAM_SET_DUNGEON2",
0x3F: "CAM_SET_DIRECTED_YAW",
0x40: "CAM_SET_PIVOT_FROM_SIDE",
0x41: "CAM_SET_NORMAL4",
}
SKIN_LIMB_TYPES = {
4: "SKIN_LIMB_TYPE_ANIMATED",
11: "SKIN_LIMB_TYPE_NORMAL",
}
ROOM_SHAPE_TYPE = {
0: "ROOM_SHAPE_TYPE_NORMAL",
1: "ROOM_SHAPE_TYPE_IMAGE",
2: "ROOM_SHAPE_TYPE_CULLABLE",
}
ROOM_SHAPE_IMAGE_AMOUNT_TYPE = {
1: "ROOM_SHAPE_IMAGE_AMOUNT_SINGLE",
2: "ROOM_SHAPE_IMAGE_AMOUNT_MULTI",
}
SKYBOX_IDS = {
0x00: "SKYBOX_NONE",
0x01: "SKYBOX_NORMAL_SKY",
0x02: "SKYBOX_BAZAAR",
0x03: "SKYBOX_OVERCAST_SUNSET",
0x04: "SKYBOX_MARKET_ADULT",
0x05: "SKYBOX_CUTSCENE_MAP",
0x07: "SKYBOX_HOUSE_LINK",
0x09: "SKYBOX_MARKET_CHILD_DAY",
0x0A: "SKYBOX_MARKET_CHILD_NIGHT",
0x0B: "SKYBOX_HAPPY_MASK_SHOP",
0x0C: "SKYBOX_HOUSE_KNOW_IT_ALL_BROTHERS",
0x0E: "SKYBOX_HOUSE_OF_TWINS",
0x0F: "SKYBOX_STABLES",
0x10: "SKYBOX_HOUSE_KAKARIKO",
0x11: "SKYBOX_KOKIRI_SHOP",
0x13: "SKYBOX_GORON_SHOP",
0x14: "SKYBOX_ZORA_SHOP",
0x16: "SKYBOX_POTION_SHOP_KAKARIKO",
0x17: "SKYBOX_POTION_SHOP_MARKET",
0x18: "SKYBOX_BOMBCHU_SHOP",
0x1A: "SKYBOX_HOUSE_RICHARD",
0x1B: "SKYBOX_HOUSE_IMPA",
0x1C: "SKYBOX_TENT",
0x1D: "SKYBOX_UNSET_1D",
0x20: "SKYBOX_HOUSE_MIDO",
0x21: "SKYBOX_HOUSE_SARIA",
0x22: "SKYBOX_HOUSE_ALLEY",
0x27: "SKYBOX_UNSET_27",
}
LIGHT_MODES = {
0: "LIGHT_MODE_TIME",
1: "LIGHT_MODE_SETTINGS",
}
NAVI_QUEST_HINT_FILE_IDS = {
0: "NAVI_QUEST_HINTS_NONE",
1: "NAVI_QUEST_HINTS_OVERWORLD",
2: "NAVI_QUEST_HINTS_DUNGEON",
}
FLOOR_TYPES = {
0: "FLOOR_TYPE_0",
1: "FLOOR_TYPE_1",
2: "FLOOR_TYPE_2",
3: "FLOOR_TYPE_3",
4: "FLOOR_TYPE_4",
5: "FLOOR_TYPE_5",
6: "FLOOR_TYPE_6",
7: "FLOOR_TYPE_7",
8: "FLOOR_TYPE_8",
9: "FLOOR_TYPE_9",
10: "FLOOR_TYPE_10",
11: "FLOOR_TYPE_11",
12: "FLOOR_TYPE_12",
}
WALL_TYPES = {
0: "WALL_TYPE_0",
1: "WALL_TYPE_1",
2: "WALL_TYPE_2",
3: "WALL_TYPE_3",
4: "WALL_TYPE_4",
5: "WALL_TYPE_5",
6: "WALL_TYPE_6",
7: "WALL_TYPE_7",
8: "WALL_TYPE_8",
9: "WALL_TYPE_9",
10: "WALL_TYPE_10",
11: "WALL_TYPE_11",
12: "WALL_TYPE_12",
}
FLOOR_PROPERTIES = {
0: "FLOOR_PROPERTY_0",
5: "FLOOR_PROPERTY_5",
6: "FLOOR_PROPERTY_6",
7: "FLOOR_PROPERTY_7",
8: "FLOOR_PROPERTY_8",
9: "FLOOR_PROPERTY_9",
11: "FLOOR_PROPERTY_11",
12: "FLOOR_PROPERTY_12",
}
SURFACE_MATERIALS = {
0: "SURFACE_MATERIAL_DIRT",
1: "SURFACE_MATERIAL_SAND",
2: "SURFACE_MATERIAL_STONE",
3: "SURFACE_MATERIAL_JABU",
4: "SURFACE_MATERIAL_WATER_SHALLOW",
5: "SURFACE_MATERIAL_WATER_DEEP",
6: "SURFACE_MATERIAL_TALL_GRASS",
7: "SURFACE_MATERIAL_LAVA",
8: "SURFACE_MATERIAL_GRASS",
9: "SURFACE_MATERIAL_BRIDGE",
10: "SURFACE_MATERIAL_WOOD",
11: "SURFACE_MATERIAL_DIRT_SOFT",
12: "SURFACE_MATERIAL_ICE",
13: "SURFACE_MATERIAL_CARPET",
14: "SURFACE_MATERIAL_MAX",
}
FLOOR_EFFECTS = {
0: "FLOOR_EFFECT_0",
1: "FLOOR_EFFECT_1",
2: "FLOOR_EFFECT_2",
}
CONVEYOR_SPEEDS = {
0: "CONVEYOR_SPEED_DISABLED",
1: "CONVEYOR_SPEED_SLOW",
2: "CONVEYOR_SPEED_MEDIUM",
3: "CONVEYOR_SPEED_FAST",
}

View file

@ -0,0 +1,406 @@
# This file was generated from ../../../..//include/tables/object_table.h
DATA = (
"OBJECT_INVALID",
"OBJECT_GAMEPLAY_KEEP",
"OBJECT_GAMEPLAY_FIELD_KEEP",
"OBJECT_GAMEPLAY_DANGEON_KEEP",
"OBJECT_UNSET_4",
"OBJECT_UNSET_5",
"OBJECT_HUMAN",
"OBJECT_OKUTA",
"OBJECT_CROW",
"OBJECT_POH",
"OBJECT_DY_OBJ",
"OBJECT_WALLMASTER",
"OBJECT_DODONGO",
"OBJECT_FIREFLY",
"OBJECT_BOX",
"OBJECT_FIRE",
"OBJECT_UNSET_10",
"OBJECT_UNSET_11",
"OBJECT_BUBBLE",
"OBJECT_NIW",
"OBJECT_LINK_BOY",
"OBJECT_LINK_CHILD",
"OBJECT_TITE",
"OBJECT_REEBA",
"OBJECT_PEEHAT",
"OBJECT_KINGDODONGO",
"OBJECT_HORSE",
"OBJECT_ZF",
"OBJECT_GOMA",
"OBJECT_ZL1",
"OBJECT_GOL",
"OBJECT_DODOJR",
"OBJECT_TORCH2",
"OBJECT_BL",
"OBJECT_TP",
"OBJECT_OA1",
"OBJECT_ST",
"OBJECT_BW",
"OBJECT_EI",
"OBJECT_HORSE_NORMAL",
"OBJECT_OB1",
"OBJECT_O_ANIME",
"OBJECT_SPOT04_OBJECTS",
"OBJECT_DDAN_OBJECTS",
"OBJECT_HIDAN_OBJECTS",
"OBJECT_HORSE_GANON",
"OBJECT_OA2",
"OBJECT_SPOT00_OBJECTS",
"OBJECT_MB",
"OBJECT_BOMBF",
"OBJECT_SK2",
"OBJECT_OE1",
"OBJECT_OE_ANIME",
"OBJECT_OE2",
"OBJECT_YDAN_OBJECTS",
"OBJECT_GND",
"OBJECT_AM",
"OBJECT_DEKUBABA",
"OBJECT_UNSET_3A",
"OBJECT_OA3",
"OBJECT_OA4",
"OBJECT_OA5",
"OBJECT_OA6",
"OBJECT_OA7",
"OBJECT_JJ",
"OBJECT_OA8",
"OBJECT_OA9",
"OBJECT_OB2",
"OBJECT_OB3",
"OBJECT_OB4",
"OBJECT_HORSE_ZELDA",
"OBJECT_OPENING_DEMO1",
"OBJECT_WARP1",
"OBJECT_B_HEART",
"OBJECT_DEKUNUTS",
"OBJECT_OE3",
"OBJECT_OE4",
"OBJECT_MENKURI_OBJECTS",
"OBJECT_OE5",
"OBJECT_OE6",
"OBJECT_OE7",
"OBJECT_OE8",
"OBJECT_OE9",
"OBJECT_OE10",
"OBJECT_OE11",
"OBJECT_OE12",
"OBJECT_VALI",
"OBJECT_OA10",
"OBJECT_OA11",
"OBJECT_MIZU_OBJECTS",
"OBJECT_FHG",
"OBJECT_OSSAN",
"OBJECT_MORI_HINERI1",
"OBJECT_BB",
"OBJECT_TOKI_OBJECTS",
"OBJECT_YUKABYUN",
"OBJECT_ZL2",
"OBJECT_MJIN",
"OBJECT_MJIN_FLASH",
"OBJECT_MJIN_DARK",
"OBJECT_MJIN_FLAME",
"OBJECT_MJIN_ICE",
"OBJECT_MJIN_SOUL",
"OBJECT_MJIN_WIND",
"OBJECT_MJIN_OKA",
"OBJECT_HAKA_OBJECTS",
"OBJECT_SPOT06_OBJECTS",
"OBJECT_ICE_OBJECTS",
"OBJECT_RELAY_OBJECTS",
"OBJECT_PO_FIELD",
"OBJECT_PO_COMPOSER",
"OBJECT_MORI_HINERI1A",
"OBJECT_MORI_HINERI2",
"OBJECT_MORI_HINERI2A",
"OBJECT_MORI_OBJECTS",
"OBJECT_MORI_TEX",
"OBJECT_SPOT08_OBJ",
"OBJECT_WARP2",
"OBJECT_HATA",
"OBJECT_BIRD",
"OBJECT_UNSET_78",
"OBJECT_UNSET_79",
"OBJECT_UNSET_7A",
"OBJECT_UNSET_7B",
"OBJECT_WOOD02",
"OBJECT_UNSET_7D",
"OBJECT_UNSET_7E",
"OBJECT_UNSET_7F",
"OBJECT_UNSET_80",
"OBJECT_LIGHTBOX",
"OBJECT_PU_BOX",
"OBJECT_UNSET_83",
"OBJECT_UNSET_84",
"OBJECT_TRAP",
"OBJECT_VASE",
"OBJECT_IM",
"OBJECT_TA",
"OBJECT_TK",
"OBJECT_XC",
"OBJECT_VM",
"OBJECT_BV",
"OBJECT_HAKACH_OBJECTS",
"OBJECT_EFC_CRYSTAL_LIGHT",
"OBJECT_EFC_FIRE_BALL",
"OBJECT_EFC_FLASH",
"OBJECT_EFC_LGT_SHOWER",
"OBJECT_EFC_STAR_FIELD",
"OBJECT_GOD_LGT",
"OBJECT_LIGHT_RING",
"OBJECT_TRIFORCE_SPOT",
"OBJECT_BDAN_OBJECTS",
"OBJECT_SD",
"OBJECT_RD",
"OBJECT_PO_SISTERS",
"OBJECT_HEAVY_OBJECT",
"OBJECT_GNDD",
"OBJECT_FD",
"OBJECT_DU",
"OBJECT_FW",
"OBJECT_MEDAL",
"OBJECT_HORSE_LINK_CHILD",
"OBJECT_SPOT02_OBJECTS",
"OBJECT_HAKA",
"OBJECT_RU1",
"OBJECT_SYOKUDAI",
"OBJECT_FD2",
"OBJECT_DH",
"OBJECT_RL",
"OBJECT_EFC_TW",
"OBJECT_DEMO_TRE_LGT",
"OBJECT_GI_KEY",
"OBJECT_MIR_RAY",
"OBJECT_BROB",
"OBJECT_GI_JEWEL",
"OBJECT_SPOT09_OBJ",
"OBJECT_SPOT18_OBJ",
"OBJECT_BDOOR",
"OBJECT_SPOT17_OBJ",
"OBJECT_SHOP_DUNGEN",
"OBJECT_NB",
"OBJECT_MO",
"OBJECT_SB",
"OBJECT_GI_MELODY",
"OBJECT_GI_HEART",
"OBJECT_GI_COMPASS",
"OBJECT_GI_BOSSKEY",
"OBJECT_GI_MEDAL",
"OBJECT_GI_NUTS",
"OBJECT_SA",
"OBJECT_GI_HEARTS",
"OBJECT_GI_ARROWCASE",
"OBJECT_GI_BOMBPOUCH",
"OBJECT_IN",
"OBJECT_TR",
"OBJECT_SPOT16_OBJ",
"OBJECT_OE1S",
"OBJECT_OE4S",
"OBJECT_OS_ANIME",
"OBJECT_GI_BOTTLE",
"OBJECT_GI_STICK",
"OBJECT_GI_MAP",
"OBJECT_OF1D_MAP",
"OBJECT_RU2",
"OBJECT_GI_SHIELD_1",
"OBJECT_DEKUJR",
"OBJECT_GI_MAGICPOT",
"OBJECT_GI_BOMB_1",
"OBJECT_OF1S",
"OBJECT_MA2",
"OBJECT_GI_PURSE",
"OBJECT_HNI",
"OBJECT_TW",
"OBJECT_RR",
"OBJECT_BXA",
"OBJECT_ANUBICE",
"OBJECT_GI_GERUDO",
"OBJECT_GI_ARROW",
"OBJECT_GI_BOMB_2",
"OBJECT_GI_EGG",
"OBJECT_GI_SCALE",
"OBJECT_GI_SHIELD_2",
"OBJECT_GI_HOOKSHOT",
"OBJECT_GI_OCARINA",
"OBJECT_GI_MILK",
"OBJECT_MA1",
"OBJECT_GANON",
"OBJECT_SST",
"OBJECT_NY_UNUSED",
"OBJECT_UNSET_E4",
"OBJECT_NY",
"OBJECT_FR",
"OBJECT_GI_PACHINKO",
"OBJECT_GI_BOOMERANG",
"OBJECT_GI_BOW",
"OBJECT_GI_GLASSES",
"OBJECT_GI_LIQUID",
"OBJECT_ANI",
"OBJECT_DEMO_6K",
"OBJECT_GI_SHIELD_3",
"OBJECT_GI_LETTER",
"OBJECT_SPOT15_OBJ",
"OBJECT_JYA_OBJ",
"OBJECT_GI_CLOTHES",
"OBJECT_GI_BEAN",
"OBJECT_GI_FISH",
"OBJECT_GI_SAW",
"OBJECT_GI_HAMMER",
"OBJECT_GI_GRASS",
"OBJECT_GI_LONGSWORD",
"OBJECT_SPOT01_OBJECTS",
"OBJECT_MD_UNUSED",
"OBJECT_MD",
"OBJECT_KM1",
"OBJECT_KW1",
"OBJECT_ZO",
"OBJECT_KZ",
"OBJECT_UMAJUMP",
"OBJECT_MASTERKOKIRI",
"OBJECT_MASTERKOKIRIHEAD",
"OBJECT_MASTERGOLON",
"OBJECT_MASTERZOORA",
"OBJECT_AOB",
"OBJECT_IK",
"OBJECT_AHG",
"OBJECT_CNE",
"OBJECT_GI_NIWATORI",
"OBJECT_SKJ",
"OBJECT_GI_BOTTLE_LETTER",
"OBJECT_BJI",
"OBJECT_BBA",
"OBJECT_GI_OCARINA_0",
"OBJECT_DS",
"OBJECT_ANE",
"OBJECT_BOJ",
"OBJECT_SPOT03_OBJECT",
"OBJECT_SPOT07_OBJECT",
"OBJECT_FZ",
"OBJECT_BOB",
"OBJECT_GE1",
"OBJECT_YABUSAME_POINT",
"OBJECT_GI_BOOTS_2",
"OBJECT_GI_SEED",
"OBJECT_GND_MAGIC",
"OBJECT_D_ELEVATOR",
"OBJECT_D_HSBLOCK",
"OBJECT_D_LIFT",
"OBJECT_MAMENOKI",
"OBJECT_GOROIWA",
"OBJECT_UNSET_120",
"OBJECT_TORYO",
"OBJECT_DAIKU",
"OBJECT_UNSET_123",
"OBJECT_NWC",
"OBJECT_BLKOBJ",
"OBJECT_GM",
"OBJECT_MS",
"OBJECT_HS",
"OBJECT_INGATE",
"OBJECT_LIGHTSWITCH",
"OBJECT_KUSA",
"OBJECT_TSUBO",
"OBJECT_GI_GLOVES",
"OBJECT_GI_COIN",
"OBJECT_KANBAN",
"OBJECT_GJYO_OBJECTS",
"OBJECT_OWL",
"OBJECT_MK",
"OBJECT_FU",
"OBJECT_GI_KI_TAN_MASK",
"OBJECT_GI_REDEAD_MASK",
"OBJECT_GI_SKJ_MASK",
"OBJECT_GI_RABIT_MASK",
"OBJECT_GI_TRUTH_MASK",
"OBJECT_GANON_OBJECTS",
"OBJECT_SIOFUKI",
"OBJECT_STREAM",
"OBJECT_MM",
"OBJECT_FA",
"OBJECT_OS",
"OBJECT_GI_EYE_LOTION",
"OBJECT_GI_POWDER",
"OBJECT_GI_MUSHROOM",
"OBJECT_GI_TICKETSTONE",
"OBJECT_GI_BROKENSWORD",
"OBJECT_JS",
"OBJECT_CS",
"OBJECT_GI_PRESCRIPTION",
"OBJECT_GI_BRACELET",
"OBJECT_GI_SOLDOUT",
"OBJECT_GI_FROG",
"OBJECT_MAG",
"OBJECT_DOOR_GERUDO",
"OBJECT_GT",
"OBJECT_EFC_ERUPC",
"OBJECT_ZL2_ANIME1",
"OBJECT_ZL2_ANIME2",
"OBJECT_GI_GOLONMASK",
"OBJECT_GI_ZORAMASK",
"OBJECT_GI_GERUDOMASK",
"OBJECT_GANON2",
"OBJECT_KA",
"OBJECT_TS",
"OBJECT_ZG",
"OBJECT_GI_HOVERBOOTS",
"OBJECT_GI_M_ARROW",
"OBJECT_DS2",
"OBJECT_EC",
"OBJECT_FISH",
"OBJECT_GI_SUTARU",
"OBJECT_GI_GODDESS",
"OBJECT_SSH",
"OBJECT_BIGOKUTA",
"OBJECT_BG",
"OBJECT_SPOT05_OBJECTS",
"OBJECT_SPOT12_OBJ",
"OBJECT_BOMBIWA",
"OBJECT_HINTNUTS",
"OBJECT_RS",
"OBJECT_SPOT00_BREAK",
"OBJECT_GLA",
"OBJECT_SHOPNUTS",
"OBJECT_GELDB",
"OBJECT_GR",
"OBJECT_DOG",
"OBJECT_JYA_IRON",
"OBJECT_JYA_DOOR",
"OBJECT_UNSET_16E",
"OBJECT_SPOT11_OBJ",
"OBJECT_KIBAKO2",
"OBJECT_DNS",
"OBJECT_DNK",
"OBJECT_GI_FIRE",
"OBJECT_GI_INSECT",
"OBJECT_GI_BUTTERFLY",
"OBJECT_GI_GHOST",
"OBJECT_GI_SOUL",
"OBJECT_BOWL",
"OBJECT_DEMO_KEKKAI",
"OBJECT_EFC_DOUGHNUT",
"OBJECT_GI_DEKUPOUCH",
"OBJECT_GANON_ANIME1",
"OBJECT_GANON_ANIME2",
"OBJECT_GANON_ANIME3",
"OBJECT_GI_RUPY",
"OBJECT_SPOT01_MATOYA",
"OBJECT_SPOT01_MATOYAB",
"OBJECT_MU",
"OBJECT_WF",
"OBJECT_SKB",
"OBJECT_GJ",
"OBJECT_GEFF",
"OBJECT_HAKA_DOOR",
"OBJECT_GS",
"OBJECT_PS",
"OBJECT_BWALL",
"OBJECT_COW",
"OBJECT_COB",
"OBJECT_GI_SWORD_1",
"OBJECT_DOOR_KILLER",
"OBJECT_OUKE_HAKA",
"OBJECT_TIMEBLOCK",
"OBJECT_ZL4",
)

View file

@ -0,0 +1,114 @@
# This file was generated from ../../../..//include/tables/scene_table.h
DATA = (
("ydan_scene", "SCENE_DEKU_TREE"),
("ddan_scene", "SCENE_DODONGOS_CAVERN"),
("bdan_scene", "SCENE_JABU_JABU"),
("Bmori1_scene", "SCENE_FOREST_TEMPLE"),
("HIDAN_scene", "SCENE_FIRE_TEMPLE"),
("MIZUsin_scene", "SCENE_WATER_TEMPLE"),
("jyasinzou_scene", "SCENE_SPIRIT_TEMPLE"),
("HAKAdan_scene", "SCENE_SHADOW_TEMPLE"),
("HAKAdanCH_scene", "SCENE_BOTTOM_OF_THE_WELL"),
("ice_doukutu_scene", "SCENE_ICE_CAVERN"),
("ganon_scene", "SCENE_GANONS_TOWER"),
("men_scene", "SCENE_GERUDO_TRAINING_GROUND"),
("gerudoway_scene", "SCENE_THIEVES_HIDEOUT"),
("ganontika_scene", "SCENE_INSIDE_GANONS_CASTLE"),
("ganon_sonogo_scene", "SCENE_GANONS_TOWER_COLLAPSE_INTERIOR"),
("ganontikasonogo_scene", "SCENE_INSIDE_GANONS_CASTLE_COLLAPSE"),
("takaraya_scene", "SCENE_TREASURE_BOX_SHOP"),
("ydan_boss_scene", "SCENE_DEKU_TREE_BOSS"),
("ddan_boss_scene", "SCENE_DODONGOS_CAVERN_BOSS"),
("bdan_boss_scene", "SCENE_JABU_JABU_BOSS"),
("moribossroom_scene", "SCENE_FOREST_TEMPLE_BOSS"),
("FIRE_bs_scene", "SCENE_FIRE_TEMPLE_BOSS"),
("MIZUsin_bs_scene", "SCENE_WATER_TEMPLE_BOSS"),
("jyasinboss_scene", "SCENE_SPIRIT_TEMPLE_BOSS"),
("HAKAdan_bs_scene", "SCENE_SHADOW_TEMPLE_BOSS"),
("ganon_boss_scene", "SCENE_GANONDORF_BOSS"),
("ganon_final_scene", "SCENE_GANONS_TOWER_COLLAPSE_EXTERIOR"),
("entra_scene", "SCENE_MARKET_ENTRANCE_DAY"),
("entra_n_scene", "SCENE_MARKET_ENTRANCE_NIGHT"),
("enrui_scene", "SCENE_MARKET_ENTRANCE_RUINS"),
("market_alley_scene", "SCENE_BACK_ALLEY_DAY"),
("market_alley_n_scene", "SCENE_BACK_ALLEY_NIGHT"),
("market_day_scene", "SCENE_MARKET_DAY"),
("market_night_scene", "SCENE_MARKET_NIGHT"),
("market_ruins_scene", "SCENE_MARKET_RUINS"),
("shrine_scene", "SCENE_TEMPLE_OF_TIME_EXTERIOR_DAY"),
("shrine_n_scene", "SCENE_TEMPLE_OF_TIME_EXTERIOR_NIGHT"),
("shrine_r_scene", "SCENE_TEMPLE_OF_TIME_EXTERIOR_RUINS"),
("kokiri_home_scene", "SCENE_KNOW_IT_ALL_BROS_HOUSE"),
("kokiri_home3_scene", "SCENE_TWINS_HOUSE"),
("kokiri_home4_scene", "SCENE_MIDOS_HOUSE"),
("kokiri_home5_scene", "SCENE_SARIAS_HOUSE"),
("kakariko_scene", "SCENE_KAKARIKO_CENTER_GUEST_HOUSE"),
("kakariko3_scene", "SCENE_BACK_ALLEY_HOUSE"),
("shop1_scene", "SCENE_BAZAAR"),
("kokiri_shop_scene", "SCENE_KOKIRI_SHOP"),
("golon_scene", "SCENE_GORON_SHOP"),
("zoora_scene", "SCENE_ZORA_SHOP"),
("drag_scene", "SCENE_POTION_SHOP_KAKARIKO"),
("alley_shop_scene", "SCENE_POTION_SHOP_MARKET"),
("night_shop_scene", "SCENE_BOMBCHU_SHOP"),
("face_shop_scene", "SCENE_HAPPY_MASK_SHOP"),
("link_home_scene", "SCENE_LINKS_HOUSE"),
("impa_scene", "SCENE_DOG_LADY_HOUSE"),
("malon_stable_scene", "SCENE_STABLE"),
("labo_scene", "SCENE_IMPAS_HOUSE"),
("hylia_labo_scene", "SCENE_LAKESIDE_LABORATORY"),
("tent_scene", "SCENE_CARPENTERS_TENT"),
("hut_scene", "SCENE_GRAVEKEEPERS_HUT"),
("daiyousei_izumi_scene", "SCENE_GREAT_FAIRYS_FOUNTAIN_MAGIC"),
("yousei_izumi_tate_scene", "SCENE_FAIRYS_FOUNTAIN"),
("yousei_izumi_yoko_scene", "SCENE_GREAT_FAIRYS_FOUNTAIN_SPELLS"),
("kakusiana_scene", "SCENE_GROTTOS"),
("hakaana_scene", "SCENE_REDEAD_GRAVE"),
("hakaana2_scene", "SCENE_GRAVE_WITH_FAIRYS_FOUNTAIN"),
("hakaana_ouke_scene", "SCENE_ROYAL_FAMILYS_TOMB"),
("syatekijyou_scene", "SCENE_SHOOTING_GALLERY"),
("tokinoma_scene", "SCENE_TEMPLE_OF_TIME"),
("kenjyanoma_scene", "SCENE_CHAMBER_OF_THE_SAGES"),
("hairal_niwa_scene", "SCENE_CASTLE_COURTYARD_GUARDS_DAY"),
("hairal_niwa_n_scene", "SCENE_CASTLE_COURTYARD_GUARDS_NIGHT"),
("hiral_demo_scene", "SCENE_CUTSCENE_MAP"),
("hakasitarelay_scene", "SCENE_WINDMILL_AND_DAMPES_GRAVE"),
("turibori_scene", "SCENE_FISHING_POND"),
("nakaniwa_scene", "SCENE_CASTLE_COURTYARD_ZELDA"),
("bowling_scene", "SCENE_BOMBCHU_BOWLING_ALLEY"),
("souko_scene", "SCENE_LON_LON_BUILDINGS"),
("miharigoya_scene", "SCENE_MARKET_GUARD_HOUSE"),
("mahouya_scene", "SCENE_POTION_SHOP_GRANNY"),
("ganon_demo_scene", "SCENE_GANON_BOSS"),
("kinsuta_scene", "SCENE_HOUSE_OF_SKULLTULA"),
("spot00_scene", "SCENE_HYRULE_FIELD"),
("spot01_scene", "SCENE_KAKARIKO_VILLAGE"),
("spot02_scene", "SCENE_GRAVEYARD"),
("spot03_scene", "SCENE_ZORAS_RIVER"),
("spot04_scene", "SCENE_KOKIRI_FOREST"),
("spot05_scene", "SCENE_SACRED_FOREST_MEADOW"),
("spot06_scene", "SCENE_LAKE_HYLIA"),
("spot07_scene", "SCENE_ZORAS_DOMAIN"),
("spot08_scene", "SCENE_ZORAS_FOUNTAIN"),
("spot09_scene", "SCENE_GERUDO_VALLEY"),
("spot10_scene", "SCENE_LOST_WOODS"),
("spot11_scene", "SCENE_DESERT_COLOSSUS"),
("spot12_scene", "SCENE_GERUDOS_FORTRESS"),
("spot13_scene", "SCENE_HAUNTED_WASTELAND"),
("spot15_scene", "SCENE_HYRULE_CASTLE"),
("spot16_scene", "SCENE_DEATH_MOUNTAIN_TRAIL"),
("spot17_scene", "SCENE_DEATH_MOUNTAIN_CRATER"),
("spot18_scene", "SCENE_GORON_CITY"),
("spot20_scene", "SCENE_LON_LON_RANCH"),
("ganon_tou_scene", "SCENE_OUTSIDE_GANONS_CASTLE"),
("test01_scene", "SCENE_TEST01"),
("besitu_scene", "SCENE_BESITU"),
("depth_test_scene", "SCENE_DEPTH_TEST"),
("syotes_scene", "SCENE_SYOTES"),
("syotes2_scene", "SCENE_SYOTES2"),
("sutaru_scene", "SCENE_SUTARU"),
("hairal_niwa2_scene", "SCENE_HAIRAL_NIWA2"),
("sasatest_scene", "SCENE_SASATEST"),
("testroom_scene", "SCENE_TESTROOM"),
)