From 4dc70fefeee8f6b587aa611da580141c6b9ea4be Mon Sep 17 00:00:00 2001 From: cadmic Date: Mon, 24 Jun 2024 14:50:45 -0700 Subject: [PATCH 1/7] Rename gTitleZeldaShieldLogoMQTex -> gTitleZeldaShieldLogoTex (#1974) --- assets/xml/objects/object_mag.xml | 2 +- assets/xml/objects/object_mag_mq.xml | 2 +- src/overlays/actors/ovl_En_Mag/z_en_mag.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/assets/xml/objects/object_mag.xml b/assets/xml/objects/object_mag.xml index 21f48d734..66874b0c0 100644 --- a/assets/xml/objects/object_mag.xml +++ b/assets/xml/objects/object_mag.xml @@ -1,6 +1,6 @@ - + diff --git a/assets/xml/objects/object_mag_mq.xml b/assets/xml/objects/object_mag_mq.xml index d528754db..541dc6c38 100644 --- a/assets/xml/objects/object_mag_mq.xml +++ b/assets/xml/objects/object_mag_mq.xml @@ -1,6 +1,6 @@ - + diff --git a/src/overlays/actors/ovl_En_Mag/z_en_mag.c b/src/overlays/actors/ovl_En_Mag/z_en_mag.c index fde43d48e..e32b01b4e 100644 --- a/src/overlays/actors/ovl_En_Mag/z_en_mag.c +++ b/src/overlays/actors/ovl_En_Mag/z_en_mag.c @@ -456,7 +456,7 @@ void EnMag_DrawInner(Actor* thisx, PlayState* play, Gfx** gfxP) { gDPSetPrimColor(gfx++, 0, 0, 255, 255, 255, (s16)this->mainAlpha); if ((s16)this->mainAlpha != 0) { - EnMag_DrawImageRGBA32(&gfx, 160 + LOGO_X_SHIFT, 100, (u8*)gTitleZeldaShieldLogoMQTex, 160, 160); + EnMag_DrawImageRGBA32(&gfx, 160 + LOGO_X_SHIFT, 100, (u8*)gTitleZeldaShieldLogoTex, 160, 160); } Gfx_SetupDL_39Ptr(&gfx); From 2ce4742bf69faebb16ea1710c4d4e7902b1be0f1 Mon Sep 17 00:00:00 2001 From: Dragorn421 Date: Tue, 25 Jun 2024 00:39:08 +0200 Subject: [PATCH 2/7] Fix misc 22 (#1971) * remove trailing whitespace * fix/docbug about dright for next page of fault menu * // size = ...; -> // size = ... * access `ColliderJntSph.elements` as an array * fixup doc in PreRender.c * empty line after decl * gdSPDefLights1 xyz arguments for direction are signed 8bit values * doc bug of bad use of free in EffDust actor * decimal for Actor.colorFilterTimer * shopItemEntries -> sShopItemEntries * HEISHI4_AT_KAKRIKO_ENTRANCE -> HEISHI4_AT_KAKARIKO_ENTRANCE * format --- include/audiothread_cmd.h | 2 +- include/z64animation.h | 8 ++++---- include/z64player.h | 6 +++--- include/z64transition_instances.h | 4 ++-- src/code/PreRender.c | 5 +++-- src/code/fault.c | 4 +++- src/code/graph.c | 1 + src/code/z_player_lib.c | 2 +- src/code/z_view.c | 1 + .../z_bg_spot06_objects.c | 2 +- src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c | 2 ++ src/overlays/actors/ovl_En_Bb/z_en_bb.c | 6 +++--- .../actors/ovl_En_Bigokuta/z_en_bigokuta.c | 18 +++++++++--------- src/overlays/actors/ovl_En_Brob/z_en_brob.c | 2 +- src/overlays/actors/ovl_En_GirlA/z_en_girla.c | 10 +++++----- .../actors/ovl_En_Heishi4/z_en_heishi4.c | 8 ++++---- .../actors/ovl_En_Heishi4/z_en_heishi4.h | 2 +- src/overlays/actors/ovl_En_Nwc/z_en_nwc.c | 2 +- src/overlays/actors/ovl_En_Tp/z_en_tp.c | 2 +- src/overlays/actors/ovl_En_fHG/z_en_fhg.c | 2 +- src/overlays/actors/ovl_Fishing/z_fishing.h | 2 +- 21 files changed, 49 insertions(+), 42 deletions(-) diff --git a/include/audiothread_cmd.h b/include/audiothread_cmd.h index 3ec2cdeba..ab0ea1c17 100644 --- a/include/audiothread_cmd.h +++ b/include/audiothread_cmd.h @@ -428,7 +428,7 @@ typedef enum { /** * Unmute all sequence players * - * @param restartNotes (s32) if set to 1, then notes with the `MUTE_BEHAVIOR_STOP_SAMPLES` flag set + * @param restartNotes (s32) if set to 1, then notes with the `MUTE_BEHAVIOR_STOP_SAMPLES` flag set * are marked as finished for all seqPlayers */ #define AUDIOCMD_GLOBAL_UNMUTE(restartNotes) \ diff --git a/include/z64animation.h b/include/z64animation.h index 1851defc5..2be8a5a21 100644 --- a/include/z64animation.h +++ b/include/z64animation.h @@ -88,7 +88,7 @@ typedef enum { /* 1 */ ANIMTAPER_ACCEL } AnimationTapers; -// This flag seems like it was intended to be paired with `ANIM_FLAG_UPDATE_Y` to control +// This flag seems like it was intended to be paired with `ANIM_FLAG_UPDATE_Y` to control // XZ movement based on the current animation. // However, this flag is not checked by the Skelanime system. XZ movement will always occur // regardless of the current state of this flag, as long as the "Actor Move" Anim Task is in use. @@ -102,16 +102,16 @@ typedef enum { #define ANIM_FLAG_UPDATE_Y (1 << 1) // (player-only) Related to scaling an animation from/to child/adult -#define ANIM_FLAG_PLAYER_2 (1 << 2) +#define ANIM_FLAG_PLAYER_2 (1 << 2) // (player-only) Call AnimTaskQueue_AddActorMove -#define ANIM_FLAG_PLAYER_SETMOVE (1 << 3) +#define ANIM_FLAG_PLAYER_SETMOVE (1 << 3) // #define ANIM_FLAG_NO_MOVE (1 << 4) // (player-only) -#define ANIM_FLAG_PLAYER_7 (1 << 7) +#define ANIM_FLAG_PLAYER_7 (1 << 7) typedef struct SkelAnime { /* 0x00 */ u8 limbCount; // Number of limbs in the skeleton diff --git a/include/z64player.h b/include/z64player.h index 6f6239251..979afd744 100644 --- a/include/z64player.h +++ b/include/z64player.h @@ -786,7 +786,7 @@ typedef struct Player { /* 0x0450 */ Vec3f unk_450; /* 0x045C */ Vec3f unk_45C; /* 0x0468 */ char unk_468[0x002]; - /* 0x046A */ union { + /* 0x046A */ union { s16 haltActorsDuringCsAction; // If true, halt actors belonging to certain categories during a `csAction` s16 slidingDoorBgCamIndex; // `BgCamIndex` used during a sliding door cutscene } cv; // "Cutscene Variable": context dependent variable that has different meanings depending on what function is called @@ -848,11 +848,11 @@ typedef struct Player { /* 0x0847 */ s8 controlStickSpinAngles[4]; // Stores a modified version of the control stick angle for the last 4 frames. Used for checking spins. /* 0x084B */ s8 controlStickDirections[4]; // Stores the control stick direction (relative to shape yaw) for the last 4 frames. See `PlayerStickDirection`. - /* 0x084F */ union { + /* 0x084F */ union { s8 actionVar1; } av1; // "Action Variable 1": context dependent variable that has different meanings depending on what action is currently running - /* 0x0850 */ union { + /* 0x0850 */ union { s16 actionVar2; } av2; // "Action Variable 2": context dependent variable that has different meanings depending on what action is currently running diff --git a/include/z64transition_instances.h b/include/z64transition_instances.h index c8fd3f16c..1d08ab34b 100644 --- a/include/z64transition_instances.h +++ b/include/z64transition_instances.h @@ -88,7 +88,7 @@ typedef struct { /* 0x060 */ Mtx lookAt; /* 0x0A0 */ void* texture; /* 0x0A8 */ Mtx modelView[2][3]; -} TransitionCircle; // size = 0x228; +} TransitionCircle; // size = 0x228 typedef struct { /* 0x000 */ Color_RGBA8_u32 color; @@ -99,6 +99,6 @@ typedef struct { /* 0x018 */ Mtx projection; /* 0x058 */ s32 frame; /* 0x060 */ Mtx modelView[2][3]; -} TransitionTriforce; // size = 0x1E0; +} TransitionTriforce; // size = 0x1E0 #endif diff --git a/src/code/PreRender.c b/src/code/PreRender.c index df71d059e..e960acfec 100644 --- a/src/code/PreRender.c +++ b/src/code/PreRender.c @@ -659,11 +659,12 @@ void PreRender_AntiAliasFilter(PreRender* this, s32 x, s32 y) { } } - // The background color is determined by averaging the penultimate minimum and maximum pixels, and subtracting the + // The background color is determined by adding the penultimate minimum and maximum pixels, and subtracting the // ForeGround color: - // BackGround = (pMax + pMin) - (ForeGround) * 2 + // BackGround = (pMax + pMin) - ForeGround // OutputColor = cvg * ForeGround + (1.0 - cvg) * BackGround + // = ForeGround + (1.0 - cvg) * (BackGround - ForeGround) invCvg = 7 - buffCvg[7]; outR = buffR[7] + ((s32)(invCvg * (pmaxR + pminR - (buffR[7] * 2)) + 4) >> 3); outG = buffG[7] + ((s32)(invCvg * (pmaxG + pminG - (buffG[7] * 2)) + 4) >> 3); diff --git a/src/code/fault.c b/src/code/fault.c index 7d8e62fef..16f1a183f 100644 --- a/src/code/fault.c +++ b/src/code/fault.c @@ -35,7 +35,7 @@ * - End Screen * This page informs you that there are no more pages to display. * - * To navigate the pages, START and A may be used to advance to the next page, and L toggles whether to + * To navigate the pages, DPad-Right or A may be used to advance to the next page, and L toggles whether to * automatically scroll to the next page after some time has passed. * DPad-Up may be pressed to enable sending fault pages over osSyncPrintf as well as displaying them on-screen. * DPad-Down disables sending fault pages over osSyncPrintf. @@ -911,6 +911,8 @@ void Fault_DrawMemDump(uintptr_t pc, uintptr_t sp, uintptr_t cLeftJump, uintptr_ } while (input->press.button == 0); // Move to next page + //! @bug DPad-Right does not move to the next page, unlike when on any other page + // START moving to the next page is unique to this page. if (CHECK_BTN_ALL(input->press.button, BTN_START) || CHECK_BTN_ALL(input->cur.button, BTN_A)) { return; } diff --git a/src/code/graph.c b/src/code/graph.c index 33b523ea2..92df90d8f 100644 --- a/src/code/graph.c +++ b/src/code/graph.c @@ -462,6 +462,7 @@ void Graph_ThreadEntry(void* arg0) { if (gameState == NULL) { #if OOT_DEBUG char faultMsg[0x50]; + PRINTF("確保失敗\n"); // "Failure to secure" sprintf(faultMsg, "CLASS SIZE= %d bytes", size); diff --git a/src/code/z_player_lib.c b/src/code/z_player_lib.c index 391407644..80d4c210d 100644 --- a/src/code/z_player_lib.c +++ b/src/code/z_player_lib.c @@ -1785,7 +1785,7 @@ void Player_DrawPauseImpl(PlayState* play, void* gameplayKeep, void* linkObject, // Note: the viewport x and y values are overwritten below, before usage static Vp viewport = { (PAUSE_EQUIP_PLAYER_WIDTH / 2) << 2, (PAUSE_EQUIP_PLAYER_HEIGHT / 2) << 2, G_MAXZ / 2, 0, (PAUSE_EQUIP_PLAYER_WIDTH / 2) << 2, (PAUSE_EQUIP_PLAYER_HEIGHT / 2) << 2, G_MAXZ / 2, 0 }; - static Lights1 lights1 = gdSPDefLights1(80, 80, 80, 255, 255, 255, 84, 84, 172); + static Lights1 lights1 = gdSPDefLights1(80, 80, 80, 255, 255, 255, 84, 84, -84); static Vec3f lightDir = { 89.8f, 0.0f, 89.8f }; u8 playerSwordAndShield[2]; Gfx* opaRef; diff --git a/src/code/z_view.c b/src/code/z_view.c index 7ed124742..850979368 100644 --- a/src/code/z_view.c +++ b/src/code/z_view.c @@ -380,6 +380,7 @@ s32 View_ApplyPerspective(View* view) { if (QREG(88) & 2) { s32 i; MtxF mf; + Matrix_MtxToMtxF(view->viewingPtr, &mf); PRINTF("viewing\n"); diff --git a/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c b/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c index 5b183b972..acba75f76 100644 --- a/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c +++ b/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c @@ -310,7 +310,7 @@ void BgSpot06Objects_LockWait(BgSpot06Objects* this, PlayState* play) { } EffectSsGSplash_Spawn(play, &this->dyna.actor.world.pos, NULL, NULL, 1, 700); - this->collider.elements->dim.worldSphere.radius = 45; + this->collider.elements[0].dim.worldSphere.radius = 45; this->actionFunc = BgSpot06Objects_LockPullOutward; Audio_PlaySfxGeneral(NA_SE_SY_CORRECT_CHIME, &gSfxDefaultPos, 4, &gSfxDefaultFreqAndVolScale, &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb); diff --git a/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c b/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c index 893360582..289fee6a8 100644 --- a/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c +++ b/src/overlays/actors/ovl_Eff_Dust/z_eff_dust.c @@ -102,6 +102,8 @@ void EffDust_Init(Actor* thisx, PlayState* play) { this->scalingFactor = 20.0f; break; default: + //! @bug Actor_Kill should be used, not free. + //! Note this also frees with a function for the wrong memory arena. SYSTEM_ARENA_FREE(this, "../z_eff_dust.c", 202); break; } diff --git a/src/overlays/actors/ovl_En_Bb/z_en_bb.c b/src/overlays/actors/ovl_En_Bb/z_en_bb.c index 63875b009..2c05b0997 100644 --- a/src/overlays/actors/ovl_En_Bb/z_en_bb.c +++ b/src/overlays/actors/ovl_En_Bb/z_en_bb.c @@ -1248,10 +1248,10 @@ void EnBb_Update(Actor* thisx, PlayState* play2) { UPDBGCHECKINFO_FLAG_0 | UPDBGCHECKINFO_FLAG_2); } this->actor.focus.pos = this->actor.world.pos; - this->collider.elements->dim.worldSphere.center.x = this->actor.world.pos.x; - this->collider.elements->dim.worldSphere.center.y = + this->collider.elements[0].dim.worldSphere.center.x = this->actor.world.pos.x; + this->collider.elements[0].dim.worldSphere.center.y = this->actor.world.pos.y + (this->actor.shape.yOffset * this->actor.scale.y); - this->collider.elements->dim.worldSphere.center.z = this->actor.world.pos.z; + this->collider.elements[0].dim.worldSphere.center.z = this->actor.world.pos.z; if ((this->action > BB_KILL) && ((this->actor.speed != 0.0f) || (this->action == BB_GREEN))) { CollisionCheck_SetAT(play, &play->colChkCtx, &this->collider.base); diff --git a/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c b/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c index 23c7bb6db..54248862c 100644 --- a/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c +++ b/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c @@ -165,7 +165,7 @@ void EnBigokuta_Init(Actor* thisx, PlayState* play) { Collider_InitJntSph(play, &this->collider); Collider_SetJntSph(play, &this->collider, &this->actor, &sJntSphInit, &this->element); - this->collider.elements->dim.worldSphere.radius = this->collider.elements->dim.modelSphere.radius; + this->collider.elements[0].dim.worldSphere.radius = this->collider.elements[0].dim.modelSphere.radius; for (i = 0; i < ARRAY_COUNT(sCylinderInit); i++) { Collider_InitCylinder(play, &this->cylinder[i]); @@ -694,14 +694,14 @@ void func_809BE568(EnBigokuta* this) { f32 sin = Math_SinS(this->actor.shape.rot.y); f32 cos = Math_CosS(this->actor.shape.rot.y); - this->collider.elements->dim.worldSphere.center.x = - (this->collider.elements->dim.modelSphere.center.z * sin) + - (this->actor.world.pos.x + (this->collider.elements->dim.modelSphere.center.x * cos)); - this->collider.elements->dim.worldSphere.center.z = - (this->actor.world.pos.z + (this->collider.elements->dim.modelSphere.center.z * cos)) - - (this->collider.elements->dim.modelSphere.center.x * sin); - this->collider.elements->dim.worldSphere.center.y = - this->collider.elements->dim.modelSphere.center.y + this->actor.world.pos.y; + this->collider.elements[0].dim.worldSphere.center.x = this->actor.world.pos.x + + (this->collider.elements[0].dim.modelSphere.center.x * cos) + + (this->collider.elements[0].dim.modelSphere.center.z * sin); + this->collider.elements[0].dim.worldSphere.center.z = this->actor.world.pos.z + + (this->collider.elements[0].dim.modelSphere.center.z * cos) - + (this->collider.elements[0].dim.modelSphere.center.x * sin); + this->collider.elements[0].dim.worldSphere.center.y = + this->actor.world.pos.y + this->collider.elements[0].dim.modelSphere.center.y; for (i = 0; i < ARRAY_COUNT(this->cylinder); i++) { this->cylinder[i].dim.pos.x = diff --git a/src/overlays/actors/ovl_En_Brob/z_en_brob.c b/src/overlays/actors/ovl_En_Brob/z_en_brob.c index 99e9775ea..58bd6d52e 100644 --- a/src/overlays/actors/ovl_En_Brob/z_en_brob.c +++ b/src/overlays/actors/ovl_En_Brob/z_en_brob.c @@ -198,7 +198,7 @@ void EnBrob_Stunned(EnBrob* this, PlayState* play) { } else if (this->skelAnime.curFrame < 8.0f) { this->modelOffsetY -= 1250.0f; } - this->dyna.actor.colorFilterTimer = 0x50; + this->dyna.actor.colorFilterTimer = 80; } void EnBrob_MoveDown(EnBrob* this, PlayState* play) { diff --git a/src/overlays/actors/ovl_En_GirlA/z_en_girla.c b/src/overlays/actors/ovl_En_GirlA/z_en_girla.c index 0f6569d86..13a545dc1 100644 --- a/src/overlays/actors/ovl_En_GirlA/z_en_girla.c +++ b/src/overlays/actors/ovl_En_GirlA/z_en_girla.c @@ -155,7 +155,7 @@ typedef struct { /* 0x1C */ void (*buyEventFunc)(PlayState*, EnGirlA*); } ShopItemEntry; // size = 0x20 -static ShopItemEntry shopItemEntries[] = { +static ShopItemEntry sShopItemEntries[] = { // SI_DEKU_NUTS_5 { OBJECT_GI_NUTS, GID_DEKU_NUTS, func_8002ED80, 15, 5, 0x00B2, 0x007F, GI_DEKU_NUTS_5_2, EnGirlA_CanBuy_DekuNuts, EnGirlA_ItemGive_DekuNuts, EnGirlA_BuyEvent_ShieldDiscount }, @@ -389,7 +389,7 @@ void EnGirlA_InitItem(EnGirlA* this, PlayState* play) { return; } - this->requiredObjectSlot = Object_GetSlot(&play->objectCtx, shopItemEntries[params].objID); + this->requiredObjectSlot = Object_GetSlot(&play->objectCtx, sShopItemEntries[params].objID); if (this->requiredObjectSlot < 0) { Actor_Kill(&this->actor); @@ -895,7 +895,7 @@ void EnGirlA_Noop(EnGirlA* this, PlayState* play) { } void EnGirlA_SetItemDescription(PlayState* play, EnGirlA* this) { - ShopItemEntry* tmp = &shopItemEntries[this->actor.params]; + ShopItemEntry* tmp = &sShopItemEntries[this->actor.params]; s32 params = this->actor.params; if ((this->actor.params >= SI_KEATON_MASK) && (this->actor.params <= SI_MASK_OF_TRUTH)) { @@ -954,7 +954,7 @@ void EnGirlA_UpdateStockedItem(PlayState* play, EnGirlA* this) { if (EnGirlA_TryChangeShopItem(this)) { EnGirlA_InitItem(this, play); - itemEntry = &shopItemEntries[this->actor.params]; + itemEntry = &sShopItemEntries[this->actor.params]; this->actor.textId = itemEntry->itemDescTextId; } else { this->isInvisible = false; @@ -979,7 +979,7 @@ s32 EnGirlA_TrySetMaskItemDescription(EnGirlA* this, PlayState* play) { void EnGirlA_WaitForObject(EnGirlA* this, PlayState* play) { s16 params = this->actor.params; - ShopItemEntry* itemEntry = &shopItemEntries[params]; + ShopItemEntry* itemEntry = &sShopItemEntries[params]; if (Object_IsLoaded(&play->objectCtx, this->requiredObjectSlot)) { this->actor.flags &= ~ACTOR_FLAG_4; diff --git a/src/overlays/actors/ovl_En_Heishi4/z_en_heishi4.c b/src/overlays/actors/ovl_En_Heishi4/z_en_heishi4.c index 373d28ca9..c02946ac2 100644 --- a/src/overlays/actors/ovl_En_Heishi4/z_en_heishi4.c +++ b/src/overlays/actors/ovl_En_Heishi4/z_en_heishi4.c @@ -80,7 +80,7 @@ void EnHeishi4_Init(Actor* thisx, PlayState* play) { this->collider.dim.radius = 15; this->collider.dim.height = 70; switch (this->type) { - case HEISHI4_AT_KAKRIKO_ENTRANCE: + case HEISHI4_AT_KAKARIKO_ENTRANCE: case HEISHI4_AT_IMPAS_HOUSE: this->actionFunc = func_80A56328; break; @@ -304,7 +304,7 @@ void func_80A56B40(EnHeishi4* this, PlayState* play) { } if (MaskReaction_GetTextId(play, sMaskReactionSets[reactionOffset]) != 0) { if (this->unk_2B4 == 0) { - if ((this->type == HEISHI4_AT_KAKRIKO_ENTRANCE) || (this->type == HEISHI4_AT_IMPAS_HOUSE)) { + if ((this->type == HEISHI4_AT_KAKARIKO_ENTRANCE) || (this->type == HEISHI4_AT_IMPAS_HOUSE)) { this->actionFunc = func_80A563BC; return; } @@ -315,7 +315,7 @@ void func_80A56B40(EnHeishi4* this, PlayState* play) { } } else { if (this->unk_2B4 != 0) { - if ((this->type == HEISHI4_AT_KAKRIKO_ENTRANCE) || (this->type == HEISHI4_AT_IMPAS_HOUSE)) { + if ((this->type == HEISHI4_AT_KAKARIKO_ENTRANCE) || (this->type == HEISHI4_AT_IMPAS_HOUSE)) { this->actionFunc = func_80A563BC; return; } @@ -326,7 +326,7 @@ void func_80A56B40(EnHeishi4* this, PlayState* play) { } } if (Actor_TalkOfferAccepted(&this->actor, play)) { - if ((this->type == HEISHI4_AT_KAKRIKO_ENTRANCE) || (this->type == HEISHI4_AT_IMPAS_HOUSE)) { + if ((this->type == HEISHI4_AT_KAKARIKO_ENTRANCE) || (this->type == HEISHI4_AT_IMPAS_HOUSE)) { this->unk_284 = 1; this->actionFunc = func_80A563BC; return; diff --git a/src/overlays/actors/ovl_En_Heishi4/z_en_heishi4.h b/src/overlays/actors/ovl_En_Heishi4/z_en_heishi4.h index 2c3677adc..0bc2fc99d 100644 --- a/src/overlays/actors/ovl_En_Heishi4/z_en_heishi4.h +++ b/src/overlays/actors/ovl_En_Heishi4/z_en_heishi4.h @@ -5,7 +5,7 @@ #include "global.h" typedef enum { - /* 0x00 */ HEISHI4_AT_KAKRIKO_ENTRANCE, + /* 0x00 */ HEISHI4_AT_KAKARIKO_ENTRANCE, /* 0x04 */ HEISHI4_AT_IMPAS_HOUSE = 4, /* 0x07 */ HEISHI4_AT_MARKET_DYING = 7, /* 0x08 */ HEISHI4_AT_MARKET_NIGHT diff --git a/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c b/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c index a662e0240..b6942de60 100644 --- a/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c +++ b/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c @@ -111,7 +111,7 @@ void EnNwc_ChickFall(EnNwcChick* chick, EnNwc* this, PlayState* play) { void EnNwc_UpdateChicks(EnNwc* this, PlayState* play) { static EnNwcChickFunc chickActionFuncs[] = { EnNwc_ChickNoop, EnNwc_ChickFall }; EnNwcChick* chick = this->chicks; - ColliderJntSphElement* element = this->collider.elements; + ColliderJntSphElement* element = &this->collider.elements[0]; Vec3f prevChickPos; s32 i; f32 test; diff --git a/src/overlays/actors/ovl_En_Tp/z_en_tp.c b/src/overlays/actors/ovl_En_Tp/z_en_tp.c index 73282570e..cf99f6eca 100644 --- a/src/overlays/actors/ovl_En_Tp/z_en_tp.c +++ b/src/overlays/actors/ovl_En_Tp/z_en_tp.c @@ -150,7 +150,7 @@ void EnTp_Init(Actor* thisx, PlayState* play2) { this->actor.naviEnemyId = NAVI_ENEMY_TAILPASARAN; this->timer = 0; this->collider.base.acFlags |= AC_HARD; - this->collider.elements->dim.modelSphere.radius = this->collider.elements->dim.worldSphere.radius = 8; + this->collider.elements[0].dim.modelSphere.radius = this->collider.elements[0].dim.worldSphere.radius = 8; EnTp_Head_SetupWait(this); this->actor.focus.pos = this->actor.world.pos; this->actor.flags |= ACTOR_FLAG_0 | ACTOR_FLAG_2 | ACTOR_FLAG_4; diff --git a/src/overlays/actors/ovl_En_fHG/z_en_fhg.c b/src/overlays/actors/ovl_En_fHG/z_en_fhg.c index 37771a389..de1bc675f 100644 --- a/src/overlays/actors/ovl_En_fHG/z_en_fhg.c +++ b/src/overlays/actors/ovl_En_fHG/z_en_fhg.c @@ -15,7 +15,7 @@ typedef struct { /* 0x00 */ Vec3f pos; /* 0x0C */ s16 yRot; -} EnfHGPainting; // size = 0x10; +} EnfHGPainting; // size = 0x10 typedef enum { /* 0 */ INTRO_WAIT, diff --git a/src/overlays/actors/ovl_Fishing/z_fishing.h b/src/overlays/actors/ovl_Fishing/z_fishing.h index 40b7f908b..57a7569fe 100644 --- a/src/overlays/actors/ovl_Fishing/z_fishing.h +++ b/src/overlays/actors/ovl_Fishing/z_fishing.h @@ -9,7 +9,7 @@ struct Fishing; typedef struct Fishing { /* 0x0000 */ Actor actor; /* 0x014C */ char unk_14C[0x004]; - /* 0x0150 */ u8 isLoach; + /* 0x0150 */ u8 isLoach; /* 0x0151 */ u8 lilyTimer; // if near lily and >0, lily moves. Move more if >20 /* 0x0152 */ u8 unk_152; /* 0x0154 */ s16 unk_154; From d8f2e9abc67163a366fa2e62ac5d2d7467dfdb65 Mon Sep 17 00:00:00 2001 From: Anghelo Carvajal Date: Tue, 25 Jun 2024 15:13:31 -0400 Subject: [PATCH 3/7] Move `PlayState` to a new `z64play.h` (#1966) * ActorContext * frameadvance * SfxSource * GameOverContext * RoomContext * TransitionActorContext * fix bss * Move PlayState * Move play functions to new header * SAC_ENABLE * no longer needed * SAC_ENABLE again * z_demo being silly * comment * format headers * fix retail bss * actually fix bss * Cutscene_ProcessScript comment * bss again * Update src/code/z_demo.c Co-authored-by: cadmic * rename to frame_advance and remove it from z64.h * move macros too * review * Rename SequenceContext to SceneSequences --------- Co-authored-by: cadmic --- include/color.h | 2 +- include/functions.h | 43 +-- include/macros.h | 4 - include/padmgr.h | 2 +- include/variables.h | 7 +- include/z64.h | 250 +----------------- include/z64actor.h | 70 +++++ include/z64collision_check.h | 12 + include/z64frame_advance.h | 19 ++ include/z64game_over.h | 29 ++ include/z64play.h | 161 +++++++++++ include/z64scene.h | 49 ++++ include/z64sfx_source.h | 21 ++ include/z64vis.h | 2 +- src/code/z_camera.c | 2 +- src/code/z_collision_check.c | 9 +- src/code/z_demo.c | 8 +- src/code/z_effect.c | 2 + src/code/z_effect_soft_sprite.c | 2 + src/code/z_frame_advance.c | 7 +- src/code/z_game_over.c | 2 + src/code/z_kankyo.c | 41 +-- src/code/z_play.c | 6 +- src/code/z_scene.c | 4 +- src/code/z_scene_table.c | 2 + src/code/z_sfx_source.c | 2 + src/overlays/actors/ovl_Demo_Gt/z_demo_gt.c | 3 + .../z_en_okarina_effect.c | 2 + .../ovl_En_Wonder_Item/z_en_wonder_item.c | 2 + src/overlays/actors/ovl_En_Zl2/z_en_zl2.c | 2 + src/overlays/actors/ovl_En_Zl3/z_en_zl3.c | 3 + src/overlays/actors/ovl_Fishing/z_fishing.c | 2 +- 32 files changed, 443 insertions(+), 329 deletions(-) create mode 100644 include/z64frame_advance.h create mode 100644 include/z64game_over.h create mode 100644 include/z64play.h create mode 100644 include/z64sfx_source.h diff --git a/include/color.h b/include/color.h index 014e7accf..723983f83 100644 --- a/include/color.h +++ b/include/color.h @@ -10,7 +10,7 @@ typedef struct { } Color_RGBA8; // only use when necessary for alignment purposes -typedef union { +typedef union Color_RGBA8_u32 { struct { u8 r, g, b, a; }; diff --git a/include/functions.h b/include/functions.h index 54b57c8ea..d9c29270a 100644 --- a/include/functions.h +++ b/include/functions.h @@ -757,9 +757,7 @@ void Cutscene_HandleConditionalTriggers(PlayState* play); void Cutscene_SetScript(PlayState* play, void* script); void* MemCpy(void* dest, const void* src, s32 len); void GetItem_Draw(PlayState* play, s16 drawId); -void SfxSource_InitAll(PlayState* play); -void SfxSource_UpdateAll(PlayState* play); -void SfxSource_PlaySfxAtFixedWorldPos(PlayState* play, Vec3f* worldPos, s32 duration, u16 sfxId); + u16 QuestHint_GetSariaTextId(PlayState* play); u16 QuestHint_GetNaviTextId(PlayState* play); u16 MaskReaction_GetTextId(PlayState* play, u32 maskReactionSet); @@ -932,8 +930,7 @@ void Interface_Update(PlayState* play); Path* Path_GetByIndex(PlayState* play, s16 index, s16 max); f32 Path_OrientAndGetDistSq(Actor* actor, Path* path, s16 waypoint, s16* yaw); void Path_CopyLastPoint(Path* path, Vec3f* dest); -void FrameAdvance_Init(FrameAdvanceContext* frameAdvCtx); -s32 FrameAdvance_Update(FrameAdvanceContext* frameAdvCtx, Input* input); + void Player_SetBootData(PlayState* play, Player* this); int Player_InBlockingCsMode(PlayState* play, Player* this); int Player_InCsMode(PlayState* play); @@ -1204,37 +1201,7 @@ void KaleidoScopeCall_Init(PlayState* play); void KaleidoScopeCall_Destroy(PlayState* play); void KaleidoScopeCall_Update(PlayState* play); void KaleidoScopeCall_Draw(PlayState* play); -void Play_SetViewpoint(PlayState* this, s16 viewpoint); -s32 Play_CheckViewpoint(PlayState* this, s16 viewpoint); -void Play_SetShopBrowsingViewpoint(PlayState* this); -Gfx* Play_SetFog(PlayState* this, Gfx* gfx); -void Play_Destroy(GameState* thisx); -void Play_Init(GameState* thisx); -void Play_Main(GameState* thisx); -int Play_InCsMode(PlayState* this); -f32 func_800BFCB8(PlayState* this, MtxF* mf, Vec3f* pos); -void* Play_LoadFile(PlayState* this, RomFile* file); -void Play_GetScreenPos(PlayState* this, Vec3f* src, Vec3f* dest); -s16 Play_CreateSubCamera(PlayState* this); -s16 Play_GetActiveCamId(PlayState* this); -s16 Play_ChangeCameraStatus(PlayState* this, s16 camId, s16 status); -void Play_ClearCamera(PlayState* this, s16 camId); -void Play_ClearAllSubCameras(PlayState* this); -Camera* Play_GetCamera(PlayState* this, s16 camId); -s32 Play_SetCameraAtEye(PlayState* this, s16 camId, Vec3f* at, Vec3f* eye); -s32 Play_SetCameraAtEyeUp(PlayState* this, s16 camId, Vec3f* at, Vec3f* eye, Vec3f* up); -s32 Play_SetCameraFov(PlayState* this, s16 camId, f32 fov); -s32 Play_SetCameraRoll(PlayState* this, s16 camId, s16 roll); -void Play_CopyCamera(PlayState* this, s16 destCamId, s16 srcCamId); -s32 Play_InitCameraDataUsingPlayer(PlayState* this, s16 camId, Player* player, s16 setting); -s32 Play_RequestCameraSetting(PlayState* this, s16 camId, s16 setting); -void Play_ReturnToMainCam(PlayState* this, s16 camId, s16 duration); -void Play_SaveSceneFlags(PlayState* this); -void Play_SetupRespawnPoint(PlayState* this, s32 respawnMode, s32 playerParams); -void Play_TriggerVoidOut(PlayState* this); -void Play_TriggerRespawn(PlayState* this); -int Play_CamIsNotFixed(PlayState* this); -int FrameAdvance_IsEnabled(PlayState* this); + s32 func_800C0D34(PlayState* this, Actor* actor, s16* yaw); s32 func_800C0DB4(PlayState* this, Vec3f* pos); void PreRender_SetValuesSave(PreRender* this, u32 width, u32 height, void* fbuf, void* zbuf, void* cvg); @@ -1777,9 +1744,7 @@ u8 Message_GetState(MessageContext* msgCtx); void Message_Draw(PlayState* play); void Message_Update(PlayState* play); void Message_SetTables(void); -void GameOver_Init(PlayState* play); -void GameOver_FadeInLights(PlayState* play); -void GameOver_Update(PlayState* play); + void Interface_Destroy(PlayState* play); void Interface_Init(PlayState* play); void Message_Init(PlayState* play); diff --git a/include/macros.h b/include/macros.h index 6315fbe94..a42693b39 100644 --- a/include/macros.h +++ b/include/macros.h @@ -30,10 +30,6 @@ #define RGBA8(r, g, b, a) ((((r) & 0xFF) << 24) | (((g) & 0xFF) << 16) | (((b) & 0xFF) << 8) | (((a) & 0xFF) << 0)) -#define GET_PLAYER(play) ((Player*)(play)->actorCtx.actorLists[ACTORCAT_PLAYER].head) - -#define GET_ACTIVE_CAM(play) ((play)->cameraPtrs[(play)->activeCamId]) - #define LINK_IS_ADULT (gSaveContext.save.linkAge == LINK_AGE_ADULT) #define LINK_IS_CHILD (gSaveContext.save.linkAge == LINK_AGE_CHILD) diff --git a/include/padmgr.h b/include/padmgr.h index ba86315c6..fd58765c0 100644 --- a/include/padmgr.h +++ b/include/padmgr.h @@ -10,7 +10,7 @@ typedef enum { CONT_PAK_OTHER } ControllerPakType; -typedef struct { +typedef struct Input { /* 0x00 */ OSContPad cur; /* 0x06 */ OSContPad prev; /* 0x0C */ OSContPad press; // X/Y store delta from last frame diff --git a/include/variables.h b/include/variables.h index 0b3b260bf..10f67329f 100644 --- a/include/variables.h +++ b/include/variables.h @@ -98,7 +98,7 @@ extern u64 gMojiFontTex[]; // original name: "font_ff" extern KaleidoMgrOverlay gKaleidoMgrOverlayTable[KALEIDO_OVL_MAX]; extern KaleidoMgrOverlay* gKaleidoMgrCurOvl; extern u8 gBossMarkState; -extern void* gDebugCutsceneScript; + extern s32 gScreenWidth; extern s32 gScreenHeight; extern Mtx gMtxClear; @@ -197,10 +197,7 @@ extern MapData* gMapData; extern f32 gBossMarkScale; extern u32 D_8016139C; extern PauseMapMarksData* gLoadedPauseMarkDataTable; -extern TransitionTile gTransitionTile; -extern s32 gTransitionTileState; -extern VisMono gPlayVisMono; -extern Color_RGBA8_u32 gVisMonoColor; + extern PreNmiBuff* gAppNmiBufferPtr; extern uintptr_t gSegments[NUM_SEGMENTS]; extern Scheduler gScheduler; diff --git a/include/z64.h b/include/z64.h index 2a556d3f9..03ef633b7 100644 --- a/include/z64.h +++ b/include/z64.h @@ -20,6 +20,7 @@ #include "z64curve.h" #include "z64scene.h" #include "z64effect.h" +#include "z64game_over.h" #include "z64item.h" #include "z64animation.h" #include "z64animation_legacy.h" @@ -28,11 +29,13 @@ #include "z64map_mark.h" #include "z64message.h" #include "z64pause.h" +#include "z64play.h" #include "z64skin.h" #include "z64game.h" #include "z64transition.h" #include "z64transition_instances.h" #include "z64interface.h" +#include "z64sfx_source.h" #include "z64skybox.h" #include "z64sram.h" #include "z64view.h" @@ -104,90 +107,6 @@ // NOTE: Once we start supporting other builds, this can be changed with an ifdef #define REGION_NATIVE REGION_EU -typedef struct { - /* 0x00 */ u8 seqId; - /* 0x01 */ u8 natureAmbienceId; -} SequenceContext; // size = 0x2 - -typedef struct { - /* 0x00 */ s32 enabled; - /* 0x04 */ s32 timer; -} FrameAdvanceContext; // size = 0x8 - -typedef struct { - /* 0x00 */ Vec3f pos; - /* 0x0C */ f32 unk_0C; // radius? - /* 0x10 */ Color_RGB8 color; -} TargetContextEntry; // size = 0x14 - -typedef struct { - /* 0x00 */ Vec3f naviRefPos; // possibly wrong - /* 0x0C */ Vec3f targetCenterPos; - /* 0x18 */ Color_RGBAf naviInner; - /* 0x28 */ Color_RGBAf naviOuter; - /* 0x38 */ Actor* arrowPointedActor; - /* 0x3C */ Actor* targetedActor; - /* 0x40 */ f32 unk_40; - /* 0x44 */ f32 unk_44; - /* 0x48 */ s16 unk_48; - /* 0x4A */ u8 activeCategory; - /* 0x4B */ u8 unk_4B; - /* 0x4C */ s8 unk_4C; - /* 0x4D */ char unk_4D[0x03]; - /* 0x50 */ TargetContextEntry arr_50[3]; - /* 0x8C */ Actor* unk_8C; - /* 0x90 */ Actor* bgmEnemy; // The nearest enemy to player with the right flags that will trigger NA_BGM_ENEMY - /* 0x94 */ Actor* unk_94; -} TargetContext; // size = 0x98 - -typedef struct { - /* 0x00 */ void* texture; - /* 0x04 */ s16 x; - /* 0x06 */ s16 y; - /* 0x08 */ u8 width; - /* 0x09 */ u8 height; - /* 0x0A */ u8 durationTimer; // how long the title card appears for before fading - /* 0x0B */ u8 delayTimer; // how long the title card waits to appear - /* 0x0C */ s16 alpha; - /* 0x0E */ s16 intensity; -} TitleCardContext; // size = 0x10 - -typedef struct { - /* 0x00 */ s32 length; // number of actors loaded of this category - /* 0x04 */ Actor* head; // pointer to head of the linked list of this category (most recent actor added) -} ActorListEntry; // size = 0x08 - -typedef struct { - /* 0x0000 */ u8 freezeFlashTimer; - /* 0x0001 */ char unk_01[0x01]; - /* 0x0002 */ u8 unk_02; - /* 0x0003 */ u8 lensActive; - /* 0x0004 */ char unk_04[0x04]; - /* 0x0008 */ u8 total; // total number of actors loaded - /* 0x000C */ ActorListEntry actorLists[ACTORCAT_MAX]; - /* 0x006C */ TargetContext targetCtx; - struct { - /* 0x0104 */ u32 swch; - /* 0x0108 */ u32 tempSwch; - /* 0x010C */ u32 unk0; - /* 0x0110 */ u32 unk1; - /* 0x0114 */ u32 chest; - /* 0x0118 */ u32 clear; - /* 0x011C */ u32 tempClear; - /* 0x0120 */ u32 collect; - /* 0x0124 */ u32 tempCollect; - } flags; - /* 0x0128 */ TitleCardContext titleCtx; - /* 0x0138 */ char unk_138[0x04]; - /* 0x013C */ void* absoluteSpace; // Space used to allocate actor overlays with alloc type ACTOROVL_ALLOC_ABSOLUTE -} ActorContext; // size = 0x140 - -typedef struct { - /* 0x00 */ u16 countdown; - /* 0x04 */ Vec3f worldPos; - /* 0x10 */ Vec3f projectedPos; -} SfxSource; // size = 0x1C - typedef struct { /* 0x00 */ void* loadedRamAddr; /* 0x04 */ RomFile file; @@ -203,86 +122,11 @@ typedef enum { /* 2 */ KALEIDO_OVL_MAX } KaleidoOverlayType; -typedef enum { - /* 00 */ GAMEOVER_INACTIVE, - /* 01 */ GAMEOVER_DEATH_START, - /* 02 */ GAMEOVER_DEATH_WAIT_GROUND, // wait for link to fall and hit the ground - /* 03 */ GAMEOVER_DEATH_DELAY_MENU, // wait for 1 second before showing the game over menu - /* 04 */ GAMEOVER_DEATH_MENU, // do nothing while kaleidoscope handles the game over menu - /* 20 */ GAMEOVER_REVIVE_START = 20, - /* 21 */ GAMEOVER_REVIVE_RUMBLE, - /* 22 */ GAMEOVER_REVIVE_WAIT_GROUND, // wait for link to fall and hit the ground - /* 23 */ GAMEOVER_REVIVE_WAIT_FAIRY, // wait for the fairy to rise all the way up out of links body - /* 24 */ GAMEOVER_REVIVE_FADE_OUT // fade out the game over lights as link is revived and gets back up -} GameOverState; - -typedef struct { - /* 0x00 */ u16 state; -} GameOverContext; // size = 0x2 - typedef enum { /* 0 */ LENS_MODE_SHOW_ACTORS, // lens actors are invisible by default, and shown by using lens (for example, invisible enemies) /* 1 */ LENS_MODE_HIDE_ACTORS // lens actors are visible by default, and hidden by using lens (for example, fake walls) } LensMode; -typedef enum { - /* 0 */ ROOM_BEHAVIOR_TYPE1_0, - /* 1 */ ROOM_BEHAVIOR_TYPE1_1, - /* 2 */ ROOM_BEHAVIOR_TYPE1_2, - /* 3 */ ROOM_BEHAVIOR_TYPE1_3, // unused - /* 4 */ ROOM_BEHAVIOR_TYPE1_4, // unused - /* 5 */ ROOM_BEHAVIOR_TYPE1_5 -} RoomBehaviorType1; - -typedef enum { - /* 0 */ ROOM_BEHAVIOR_TYPE2_0, - /* 1 */ ROOM_BEHAVIOR_TYPE2_1, - /* 2 */ ROOM_BEHAVIOR_TYPE2_2, - /* 3 */ ROOM_BEHAVIOR_TYPE2_3, - /* 4 */ ROOM_BEHAVIOR_TYPE2_4, - /* 5 */ ROOM_BEHAVIOR_TYPE2_5, - /* 6 */ ROOM_BEHAVIOR_TYPE2_6 -} RoomBehaviorType2; - -typedef struct { - /* 0x00 */ s8 num; - /* 0x01 */ u8 unk_01; - /* 0x02 */ u8 behaviorType2; - /* 0x03 */ u8 behaviorType1; - /* 0x04 */ s8 echo; - /* 0x05 */ u8 lensMode; - /* 0x08 */ RoomShape* roomShape; // original name: "ground_shape" - /* 0x0C */ void* segment; - /* 0x10 */ char unk_10[0x4]; -} Room; // size = 0x14 - -typedef struct { - /* 0x00 */ Room curRoom; - /* 0x14 */ Room prevRoom; - /* 0x28 */ void* bufPtrs[2]; - /* 0x30 */ u8 unk_30; - /* 0x31 */ s8 status; - /* 0x34 */ void* unk_34; - /* 0x38 */ DmaRequest dmaRequest; - /* 0x58 */ OSMesgQueue loadQueue; - /* 0x70 */ OSMesg loadMsg; - /* 0x74 */ s16 unk_74[2]; // context-specific data used by the current scene draw config -} RoomContext; // size = 0x78 - -#define SAC_ENABLE (1 << 0) - -typedef struct { - /* 0x000 */ s16 colATCount; - /* 0x002 */ u16 sacFlags; - /* 0x004 */ Collider* colAT[COLLISION_CHECK_AT_MAX]; - /* 0x0CC */ s32 colACCount; - /* 0x0D0 */ Collider* colAC[COLLISION_CHECK_AC_MAX]; - /* 0x1C0 */ s32 colOCCount; - /* 0x1C4 */ Collider* colOC[COLLISION_CHECK_OC_MAX]; - /* 0x28C */ s32 colLineCount; - /* 0x290 */ OcLine* colLine[COLLISION_CHECK_OC_LINE_MAX]; -} CollisionCheckContext; // size = 0x29C - typedef struct { /* 0x00 */ GameState state; } SetupState; // size = 0xA4 @@ -339,18 +183,13 @@ typedef struct { /* 0x00A8 */ View view; } SampleState; // size = 0x1D0 -typedef struct { +typedef struct QuestHintCmd { /* 0x00 */ u8 byte0; /* 0x01 */ u8 byte1; /* 0x02 */ u8 byte2; /* 0x03 */ u8 byte3; } QuestHintCmd; // size = 0x4 -typedef struct { - /* 0x00 */ u8 numActors; - /* 0x04 */ TransitionActorEntry* list; -} TransitionActorContext; // size = 0x8 - typedef enum { /* 0 */ PAUSE_BG_PRERENDER_OFF, // Inactive, do nothing. /* 1 */ PAUSE_BG_PRERENDER_SETUP, // The current frame is only drawn for the purpose of serving as the pause background. @@ -366,87 +205,6 @@ typedef enum { /* 3 */ TRANS_TILE_READY // The transition is ready, so will update and draw each frame } TransitionTileState; -typedef struct PlayState { - /* 0x00000 */ GameState state; - /* 0x000A4 */ s16 sceneId; - /* 0x000A6 */ u8 sceneDrawConfig; - /* 0x000A7 */ char unk_A7[0x9]; - /* 0x000B0 */ void* sceneSegment; - /* 0x000B8 */ View view; - /* 0x001E0 */ Camera mainCamera; - /* 0x0034C */ Camera subCameras[NUM_CAMS - CAM_ID_SUB_FIRST]; - /* 0x00790 */ Camera* cameraPtrs[NUM_CAMS]; - /* 0x007A0 */ s16 activeCamId; - /* 0x007A2 */ s16 nextCamId; - /* 0x007A4 */ SequenceContext sequenceCtx; - /* 0x007A8 */ LightContext lightCtx; - /* 0x007B8 */ FrameAdvanceContext frameAdvCtx; - /* 0x007C0 */ CollisionContext colCtx; - /* 0x01C24 */ ActorContext actorCtx; - /* 0x01D64 */ CutsceneContext csCtx; // "demo_play" - /* 0x01DB4 */ SfxSource sfxSources[16]; - /* 0x01F74 */ SramContext sramCtx; - /* 0x01F78 */ SkyboxContext skyboxCtx; - /* 0x020D8 */ MessageContext msgCtx; // "message" - /* 0x104F0 */ InterfaceContext interfaceCtx; // "parameter" - /* 0x10760 */ PauseContext pauseCtx; - /* 0x10A20 */ GameOverContext gameOverCtx; - /* 0x10A24 */ EnvironmentContext envCtx; - /* 0x10B20 */ AnimTaskQueue animTaskQueue; - /* 0x117A4 */ ObjectContext objectCtx; - /* 0x11CBC */ RoomContext roomCtx; - /* 0x11D34 */ TransitionActorContext transiActorCtx; - /* 0x11D3C */ void (*playerInit)(Player* player, struct PlayState* play, FlexSkeletonHeader* skelHeader); - /* 0x11D40 */ void (*playerUpdate)(Player* player, struct PlayState* play, Input* input); - /* 0x11D44 */ int (*isPlayerDroppingFish)(struct PlayState* play); - /* 0x11D48 */ s32 (*startPlayerFishing)(struct PlayState* play); - /* 0x11D4C */ s32 (*grabPlayer)(struct PlayState* play, Player* player); - /* 0x11D50 */ s32 (*tryPlayerCsAction)(struct PlayState* play, Actor* actor, s32 csAction); - /* 0x11D54 */ void (*func_11D54)(Player* player, struct PlayState* play); - /* 0x11D58 */ s32 (*damagePlayer)(struct PlayState* play, s32 damage); - /* 0x11D5C */ void (*talkWithPlayer)(struct PlayState* play, Actor* actor); - /* 0x11D60 */ MtxF viewProjectionMtxF; - /* 0x11DA0 */ MtxF billboardMtxF; - /* 0x11DE0 */ Mtx* billboardMtx; - /* 0x11DE4 */ u32 gameplayFrames; - /* 0x11DE8 */ u8 linkAgeOnLoad; - /* 0x11DE9 */ u8 haltAllActors; - /* 0x11DEA */ u8 spawn; - /* 0x11DEB */ u8 numActorEntries; - /* 0x11DEC */ u8 numRooms; - /* 0x11DF0 */ RomFile* roomList; - /* 0x11DF4 */ ActorEntry* playerEntry; - /* 0x11DF8 */ ActorEntry* actorEntryList; - /* 0x11DFC */ void* unk_11DFC; - /* 0x11E00 */ Spawn* spawnList; - /* 0x11E04 */ s16* exitList; - /* 0x11E08 */ Path* pathList; - /* 0x11E0C */ QuestHintCmd* naviQuestHints; - /* 0x11E10 */ void* specialEffects; - /* 0x11E14 */ u8 skyboxId; - /* 0x11E15 */ s8 transitionTrigger; // "fade_direction" - /* 0x11E16 */ s16 unk_11E16; - /* 0x11E18 */ s16 bgCoverAlpha; - /* 0x11E1A */ s16 nextEntranceIndex; - /* 0x11E1C */ char unk_11E1C[0x40]; - /* 0x11E5C */ s8 shootingGalleryStatus; - /* 0x11E5D */ s8 bombchuBowlingStatus; // "bombchu_game_flag" - /* 0x11E5E */ u8 transitionType; - /* 0x11E60 */ CollisionCheckContext colChkCtx; - /* 0x120FC */ u16 cutsceneFlags[20]; - /* 0x12124 */ PreRender pauseBgPreRender; - /* 0x12174 */ char unk_12174[0x53]; - /* 0x121C7 */ s8 unk_121C7; - /* 0x121C8 */ TransitionContext transitionCtx; - /* 0x12418 */ char unk_12418[0x3]; - /* 0x1241B */ u8 transitionMode; // "fbdemo_wipe_modem" - /* 0x1241C */ TransitionFade transitionFadeFlash; // Transition fade instance which flashes screen, see R_TRANS_FADE_FLASH_ALPHA_STEP - /* 0x12428 */ char unk_12428[0x3]; - /* 0x1242B */ u8 viewpoint; // toggleable camera setting by shops or player. Is also equal to the bgCamIndex + 1 - /* 0x1242C */ SceneTableEntry* loadedScene; - /* 0x12430 */ char unk_12430[0xE8]; -} PlayState; // size = 0x12518 - typedef struct { /* 0x0000 */ GameState state; /* 0x00A8 */ View view; diff --git a/include/z64actor.h b/include/z64actor.h index 68991ca7d..ecd6a2911 100644 --- a/include/z64actor.h +++ b/include/z64actor.h @@ -574,6 +574,76 @@ typedef enum { /* 0xFF */ NAVI_ENEMY_NONE = 0xFF } NaviEnemy; +typedef struct TargetContextEntry { + /* 0x00 */ Vec3f pos; + /* 0x0C */ f32 unk_0C; // radius? + /* 0x10 */ Color_RGB8 color; +} TargetContextEntry; // size = 0x14 + +typedef struct TargetContext { + /* 0x00 */ Vec3f naviRefPos; // possibly wrong + /* 0x0C */ Vec3f targetCenterPos; + /* 0x18 */ Color_RGBAf naviInner; + /* 0x28 */ Color_RGBAf naviOuter; + /* 0x38 */ Actor* arrowPointedActor; + /* 0x3C */ Actor* targetedActor; + /* 0x40 */ f32 unk_40; + /* 0x44 */ f32 unk_44; + /* 0x48 */ s16 unk_48; + /* 0x4A */ u8 activeCategory; + /* 0x4B */ u8 unk_4B; + /* 0x4C */ s8 unk_4C; + /* 0x4D */ char unk_4D[0x03]; + /* 0x50 */ TargetContextEntry arr_50[3]; + /* 0x8C */ Actor* unk_8C; + /* 0x90 */ Actor* bgmEnemy; // The nearest enemy to player with the right flags that will trigger NA_BGM_ENEMY + /* 0x94 */ Actor* unk_94; +} TargetContext; // size = 0x98 + +typedef struct TitleCardContext { + /* 0x00 */ void* texture; + /* 0x04 */ s16 x; + /* 0x06 */ s16 y; + /* 0x08 */ u8 width; + /* 0x09 */ u8 height; + /* 0x0A */ u8 durationTimer; // how long the title card appears for before fading + /* 0x0B */ u8 delayTimer; // how long the title card waits to appear + /* 0x0C */ s16 alpha; + /* 0x0E */ s16 intensity; +} TitleCardContext; // size = 0x10 + +typedef struct ActorListEntry { + /* 0x00 */ s32 length; // number of actors loaded of this category + /* 0x04 */ Actor* head; // pointer to head of the linked list of this category (most recent actor added) +} ActorListEntry; // size = 0x08 + +typedef struct ActorContextSceneFlags { + /* 0x00 */ u32 swch; + /* 0x04 */ u32 tempSwch; + /* 0x08 */ u32 unk0; + /* 0x0C */ u32 unk1; + /* 0x10 */ u32 chest; + /* 0x14 */ u32 clear; + /* 0x18 */ u32 tempClear; + /* 0x1C */ u32 collect; + /* 0x20 */ u32 tempCollect; +} ActorContextSceneFlags; // size = 0x24 + +typedef struct ActorContext { + /* 0x000 */ u8 freezeFlashTimer; + /* 0x001 */ char unk_01[0x01]; + /* 0x002 */ u8 unk_02; + /* 0x003 */ u8 lensActive; + /* 0x004 */ char unk_04[0x04]; + /* 0x008 */ u8 total; // total number of actors loaded + /* 0x00C */ ActorListEntry actorLists[ACTORCAT_MAX]; + /* 0x06C */ TargetContext targetCtx; + /* 0x104 */ ActorContextSceneFlags flags; + /* 0x128 */ TitleCardContext titleCtx; + /* 0x138 */ char unk_138[0x04]; + /* 0x13C */ void* absoluteSpace; // Space used to allocate actor overlays with alloc type ACTOROVL_ALLOC_ABSOLUTE +} ActorContext; // size = 0x140 + #define TRANSITION_ACTOR_PARAMS_INDEX_SHIFT 10 #define GET_TRANSITION_ACTOR_INDEX(actor) ((u16)(actor)->params >> TRANSITION_ACTOR_PARAMS_INDEX_SHIFT) diff --git a/include/z64collision_check.h b/include/z64collision_check.h index aa69dedb0..a9cff3a58 100644 --- a/include/z64collision_check.h +++ b/include/z64collision_check.h @@ -306,6 +306,18 @@ typedef struct { /* 0x18 */ u16 ocFlags; } OcLine; // size = 0x1C +typedef struct CollisionCheckContext { + /* 0x000 */ s16 colATCount; + /* 0x002 */ u16 sacFlags; + /* 0x004 */ Collider* colAT[COLLISION_CHECK_AT_MAX]; + /* 0x0CC */ s32 colACCount; + /* 0x0D0 */ Collider* colAC[COLLISION_CHECK_AC_MAX]; + /* 0x1C0 */ s32 colOCCount; + /* 0x1C4 */ Collider* colOC[COLLISION_CHECK_OC_MAX]; + /* 0x28C */ s32 colLineCount; + /* 0x290 */ OcLine* colLine[COLLISION_CHECK_OC_LINE_MAX]; +} CollisionCheckContext; // size = 0x29C + /* * Collider properties, for all shapes */ diff --git a/include/z64frame_advance.h b/include/z64frame_advance.h new file mode 100644 index 000000000..b8c77372d --- /dev/null +++ b/include/z64frame_advance.h @@ -0,0 +1,19 @@ +#ifndef Z64FRAME_ADVANCE_H +#define Z64FRAME_ADVANCE_H + +#include "ultra64.h" + +struct Input; +struct PlayState; + +typedef struct { + /* 0x0 */ s32 enabled; + /* 0x4 */ s32 timer; +} FrameAdvanceContext; // size = 0x8 + +void FrameAdvance_Init(FrameAdvanceContext* frameAdvCtx); +s32 FrameAdvance_Update(FrameAdvanceContext* frameAdvCtx, struct Input* input); + +int FrameAdvance_IsEnabled(struct PlayState* this); + +#endif diff --git a/include/z64game_over.h b/include/z64game_over.h new file mode 100644 index 000000000..03697c1f5 --- /dev/null +++ b/include/z64game_over.h @@ -0,0 +1,29 @@ +#ifndef Z64GAME_OVER_H +#define Z64GAME_OVER_H + +#include "ultra64.h" + +struct PlayState; + +typedef enum GameOverState { + /* 00 */ GAMEOVER_INACTIVE, + /* 01 */ GAMEOVER_DEATH_START, + /* 02 */ GAMEOVER_DEATH_WAIT_GROUND, // wait for link to fall and hit the ground + /* 03 */ GAMEOVER_DEATH_DELAY_MENU, // wait for 1 second before showing the game over menu + /* 04 */ GAMEOVER_DEATH_MENU, // do nothing while kaleidoscope handles the game over menu + /* 20 */ GAMEOVER_REVIVE_START = 20, + /* 21 */ GAMEOVER_REVIVE_RUMBLE, + /* 22 */ GAMEOVER_REVIVE_WAIT_GROUND, // wait for link to fall and hit the ground + /* 23 */ GAMEOVER_REVIVE_WAIT_FAIRY, // wait for the fairy to rise all the way up out of links body + /* 24 */ GAMEOVER_REVIVE_FADE_OUT // fade out the game over lights as link is revived and gets back up +} GameOverState; + +typedef struct GameOverContext { + /* 0x00 */ u16 state; +} GameOverContext; // size = 0x2 + +void GameOver_Init(struct PlayState* play); +void GameOver_FadeInLights(struct PlayState* play); +void GameOver_Update(struct PlayState* play); + +#endif diff --git a/include/z64play.h b/include/z64play.h new file mode 100644 index 000000000..bfea00883 --- /dev/null +++ b/include/z64play.h @@ -0,0 +1,161 @@ +#ifndef Z64PLAY_H +#define Z64PLAY_H + +#include "ultra64.h" + +#include "prerender.h" + +#include "z64actor.h" +#include "z64bgcheck.h" +#include "z64camera.h" +#include "z64cutscene.h" +#include "z64environment.h" +#include "z64frame_advance.h" +#include "z64game.h" +#include "z64game_over.h" +#include "z64interface.h" +#include "z64light.h" +#include "z64message.h" +#include "z64object.h" +#include "z64pause.h" +#include "z64scene.h" +#include "z64sfx_source.h" +#include "z64skybox.h" +#include "z64sram.h" +#include "z64transition.h" +#include "z64view.h" + +union Color_RGBA8_u32; +struct QuestHintCmd; +struct VisMono; + +typedef struct SceneSequences { + /* 0x00 */ u8 seqId; + /* 0x01 */ u8 natureAmbienceId; +} SceneSequences; // size = 0x2 + +typedef struct PlayState { + /* 0x00000 */ GameState state; + /* 0x000A4 */ s16 sceneId; + /* 0x000A6 */ u8 sceneDrawConfig; + /* 0x000A7 */ char unk_A7[0x9]; + /* 0x000B0 */ void* sceneSegment; + /* 0x000B8 */ View view; + /* 0x001E0 */ Camera mainCamera; + /* 0x0034C */ Camera subCameras[NUM_CAMS - CAM_ID_SUB_FIRST]; + /* 0x00790 */ Camera* cameraPtrs[NUM_CAMS]; + /* 0x007A0 */ s16 activeCamId; + /* 0x007A2 */ s16 nextCamId; + /* 0x007A4 */ SceneSequences sceneSequences; + /* 0x007A8 */ LightContext lightCtx; + /* 0x007B8 */ FrameAdvanceContext frameAdvCtx; + /* 0x007C0 */ CollisionContext colCtx; + /* 0x01C24 */ ActorContext actorCtx; + /* 0x01D64 */ CutsceneContext csCtx; // "demo_play" + /* 0x01DB4 */ SfxSource sfxSources[SFX_SOURCE_COUNT]; + /* 0x01F74 */ SramContext sramCtx; + /* 0x01F78 */ SkyboxContext skyboxCtx; + /* 0x020D8 */ MessageContext msgCtx; // "message" + /* 0x104F0 */ InterfaceContext interfaceCtx; // "parameter" + /* 0x10760 */ PauseContext pauseCtx; + /* 0x10A20 */ GameOverContext gameOverCtx; + /* 0x10A24 */ EnvironmentContext envCtx; + /* 0x10B20 */ AnimTaskQueue animTaskQueue; + /* 0x117A4 */ ObjectContext objectCtx; + /* 0x11CBC */ RoomContext roomCtx; + /* 0x11D34 */ TransitionActorContext transiActorCtx; + /* 0x11D3C */ void (*playerInit)(Player* player, struct PlayState* play, FlexSkeletonHeader* skelHeader); + /* 0x11D40 */ void (*playerUpdate)(Player* player, struct PlayState* play, Input* input); + /* 0x11D44 */ int (*isPlayerDroppingFish)(struct PlayState* play); + /* 0x11D48 */ s32 (*startPlayerFishing)(struct PlayState* play); + /* 0x11D4C */ s32 (*grabPlayer)(struct PlayState* play, Player* player); + /* 0x11D50 */ s32 (*tryPlayerCsAction)(struct PlayState* play, Actor* actor, s32 csAction); + /* 0x11D54 */ void (*func_11D54)(Player* player, struct PlayState* play); + /* 0x11D58 */ s32 (*damagePlayer)(struct PlayState* play, s32 damage); + /* 0x11D5C */ void (*talkWithPlayer)(struct PlayState* play, Actor* actor); + /* 0x11D60 */ MtxF viewProjectionMtxF; + /* 0x11DA0 */ MtxF billboardMtxF; + /* 0x11DE0 */ Mtx* billboardMtx; + /* 0x11DE4 */ u32 gameplayFrames; + /* 0x11DE8 */ u8 linkAgeOnLoad; + /* 0x11DE9 */ u8 haltAllActors; + /* 0x11DEA */ u8 spawn; + /* 0x11DEB */ u8 numActorEntries; + /* 0x11DEC */ u8 numRooms; + /* 0x11DF0 */ RomFile* roomList; + /* 0x11DF4 */ ActorEntry* playerEntry; + /* 0x11DF8 */ ActorEntry* actorEntryList; + /* 0x11DFC */ void* unk_11DFC; + /* 0x11E00 */ Spawn* spawnList; + /* 0x11E04 */ s16* exitList; + /* 0x11E08 */ Path* pathList; + /* 0x11E0C */ struct QuestHintCmd* naviQuestHints; + /* 0x11E10 */ void* specialEffects; + /* 0x11E14 */ u8 skyboxId; + /* 0x11E15 */ s8 transitionTrigger; // "fade_direction" + /* 0x11E16 */ s16 unk_11E16; + /* 0x11E18 */ s16 bgCoverAlpha; + /* 0x11E1A */ s16 nextEntranceIndex; + /* 0x11E1C */ char unk_11E1C[0x40]; + /* 0x11E5C */ s8 shootingGalleryStatus; + /* 0x11E5D */ s8 bombchuBowlingStatus; // "bombchu_game_flag" + /* 0x11E5E */ u8 transitionType; + /* 0x11E60 */ CollisionCheckContext colChkCtx; + /* 0x120FC */ u16 cutsceneFlags[20]; + /* 0x12124 */ PreRender pauseBgPreRender; + /* 0x12174 */ char unk_12174[0x53]; + /* 0x121C7 */ s8 unk_121C7; + /* 0x121C8 */ TransitionContext transitionCtx; + /* 0x12418 */ char unk_12418[0x3]; + /* 0x1241B */ u8 transitionMode; // "fbdemo_wipe_modem" + /* 0x1241C */ TransitionFade transitionFadeFlash; // Transition fade instance which flashes screen, see R_TRANS_FADE_FLASH_ALPHA_STEP + /* 0x12428 */ char unk_12428[0x3]; + /* 0x1242B */ u8 viewpoint; // toggleable camera setting by shops or player. Is also equal to the bgCamIndex + 1 + /* 0x1242C */ SceneTableEntry* loadedScene; + /* 0x12430 */ char unk_12430[0xE8]; +} PlayState; // size = 0x12518 + +#define GET_ACTIVE_CAM(play) ((play)->cameraPtrs[(play)->activeCamId]) +#define GET_PLAYER(play) ((Player*)(play)->actorCtx.actorLists[ACTORCAT_PLAYER].head) + +void Play_SetViewpoint(PlayState* this, s16 viewpoint); +s32 Play_CheckViewpoint(PlayState* this, s16 viewpoint); +void Play_SetShopBrowsingViewpoint(PlayState* this); +Gfx* Play_SetFog(PlayState* this, Gfx* gfx); +void Play_Destroy(GameState* thisx); +void Play_Init(GameState* thisx); +void Play_Main(GameState* thisx); +int Play_InCsMode(PlayState* this); +f32 func_800BFCB8(PlayState* this, MtxF* mf, Vec3f* pos); +void* Play_LoadFile(PlayState* this, RomFile* file); +void Play_GetScreenPos(PlayState* this, Vec3f* src, Vec3f* dest); +s16 Play_CreateSubCamera(PlayState* this); +s16 Play_GetActiveCamId(PlayState* this); +s16 Play_ChangeCameraStatus(PlayState* this, s16 camId, s16 status); +void Play_ClearCamera(PlayState* this, s16 camId); +void Play_ClearAllSubCameras(PlayState* this); +Camera* Play_GetCamera(PlayState* this, s16 camId); +s32 Play_SetCameraAtEye(PlayState* this, s16 camId, Vec3f* at, Vec3f* eye); +s32 Play_SetCameraAtEyeUp(PlayState* this, s16 camId, Vec3f* at, Vec3f* eye, Vec3f* up); +s32 Play_SetCameraFov(PlayState* this, s16 camId, f32 fov); +s32 Play_SetCameraRoll(PlayState* this, s16 camId, s16 roll); +void Play_CopyCamera(PlayState* this, s16 destCamId, s16 srcCamId); +s32 Play_InitCameraDataUsingPlayer(PlayState* this, s16 camId, Player* player, s16 setting); +s32 Play_RequestCameraSetting(PlayState* this, s16 camId, s16 setting); +void Play_ReturnToMainCam(PlayState* this, s16 camId, s16 duration); +void Play_SaveSceneFlags(PlayState* this); +void Play_SetupRespawnPoint(PlayState* this, s32 respawnMode, s32 playerParams); +void Play_TriggerVoidOut(PlayState* this); +void Play_TriggerRespawn(PlayState* this); +int Play_CamIsNotFixed(PlayState* this); + +#if OOT_DEBUG +extern void* gDebugCutsceneScript; +#endif + +extern TransitionTile gTransitionTile; +extern s32 gTransitionTileState; +extern struct VisMono gPlayVisMono; +extern union Color_RGBA8_u32 gVisMonoColor; + +#endif diff --git a/include/z64scene.h b/include/z64scene.h index c966913f1..f1a45af70 100644 --- a/include/z64scene.h +++ b/include/z64scene.h @@ -33,6 +33,11 @@ typedef struct { /* 0x0E */ s16 params; } TransitionActorEntry; // size = 0x10 +typedef struct TransitionActorContext { + /* 0x00 */ u8 numActors; + /* 0x04 */ TransitionActorEntry* list; +} TransitionActorContext; // size = 0x8 + typedef struct { /* 0x00 */ u8 playerEntryIndex; /* 0x01 */ u8 room; @@ -139,6 +144,50 @@ typedef union { RoomShapeCullable cullable; } RoomShape; // "Ground Shape" +typedef enum RoomBehaviorType1 { + /* 0 */ ROOM_BEHAVIOR_TYPE1_0, + /* 1 */ ROOM_BEHAVIOR_TYPE1_1, + /* 2 */ ROOM_BEHAVIOR_TYPE1_2, + /* 3 */ ROOM_BEHAVIOR_TYPE1_3, // unused + /* 4 */ ROOM_BEHAVIOR_TYPE1_4, // unused + /* 5 */ ROOM_BEHAVIOR_TYPE1_5 +} RoomBehaviorType1; + +typedef enum RoomBehaviorType2 { + /* 0 */ ROOM_BEHAVIOR_TYPE2_0, + /* 1 */ ROOM_BEHAVIOR_TYPE2_1, + /* 2 */ ROOM_BEHAVIOR_TYPE2_2, + /* 3 */ ROOM_BEHAVIOR_TYPE2_3, + /* 4 */ ROOM_BEHAVIOR_TYPE2_4, + /* 5 */ ROOM_BEHAVIOR_TYPE2_5, + /* 6 */ ROOM_BEHAVIOR_TYPE2_6 +} RoomBehaviorType2; + +typedef struct Room { + /* 0x00 */ s8 num; + /* 0x01 */ u8 unk_01; + /* 0x02 */ u8 behaviorType2; + /* 0x03 */ u8 behaviorType1; + /* 0x04 */ s8 echo; + /* 0x05 */ u8 lensMode; + /* 0x08 */ RoomShape* roomShape; // original name: "ground_shape" + /* 0x0C */ void* segment; + /* 0x10 */ char unk_10[0x4]; +} Room; // size = 0x14 + +typedef struct RoomContext { + /* 0x00 */ Room curRoom; + /* 0x14 */ Room prevRoom; + /* 0x28 */ void* bufPtrs[2]; + /* 0x30 */ u8 unk_30; + /* 0x31 */ s8 status; + /* 0x34 */ void* unk_34; + /* 0x38 */ DmaRequest dmaRequest; + /* 0x58 */ OSMesgQueue loadQueue; + /* 0x70 */ OSMesg loadMsg; + /* 0x74 */ s16 unk_74[2]; // context-specific data used by the current scene draw config +} RoomContext; // size = 0x78 + #define ROOM_DRAW_OPA (1 << 0) #define ROOM_DRAW_XLU (1 << 1) diff --git a/include/z64sfx_source.h b/include/z64sfx_source.h new file mode 100644 index 000000000..0034bc90a --- /dev/null +++ b/include/z64sfx_source.h @@ -0,0 +1,21 @@ +#ifndef Z64SFX_SOURCE_H +#define Z64SFX_SOURCE_H + +#include "ultra64.h" +#include "z64math.h" + +struct PlayState; + +typedef struct SfxSource { + /* 0x00 */ u16 countdown; + /* 0x04 */ Vec3f worldPos; + /* 0x10 */ Vec3f projectedPos; +} SfxSource; // size = 0x1C + +#define SFX_SOURCE_COUNT 16 + +void SfxSource_InitAll(struct PlayState* play); +void SfxSource_UpdateAll(struct PlayState* play); +void SfxSource_PlaySfxAtFixedWorldPos(struct PlayState* play, Vec3f* worldPos, s32 duration, u16 sfxId); + +#endif diff --git a/include/z64vis.h b/include/z64vis.h index c88d6de48..371b2346b 100644 --- a/include/z64vis.h +++ b/include/z64vis.h @@ -55,7 +55,7 @@ void VisCvg_Draw(VisCvg* this, Gfx** gfxP); // Only one type -typedef struct { +typedef struct VisMono { /* 0x00 */ Vis vis; /* 0x10 */ u16* tlut; /* 0x14 */ Gfx* dList; diff --git a/src/code/z_camera.c b/src/code/z_camera.c index 4caafe18c..681fa2d51 100644 --- a/src/code/z_camera.c +++ b/src/code/z_camera.c @@ -6,7 +6,7 @@ // For retail BSS ordering, the block number of D_8015BD7C // must be between 88 and 123 inclusive. -#pragma increment_block_number 30 +#pragma increment_block_number 26 s16 Camera_RequestSettingImpl(Camera* camera, s16 requestedSetting, s16 flags); s32 Camera_RequestModeImpl(Camera* camera, s16 requestedMode, u8 forceModeChange); diff --git a/src/code/z_collision_check.c b/src/code/z_collision_check.c index bebcac08d..9b0e03131 100644 --- a/src/code/z_collision_check.c +++ b/src/code/z_collision_check.c @@ -1,5 +1,8 @@ #include "global.h" #include "terminal.h" + +#include "z64frame_advance.h" + #include "overlays/effects/ovl_Effect_Ss_HitMark/z_eff_ss_hitmark.h" typedef s32 (*ColChkResetFunc)(PlayState*, Collider*); @@ -7,6 +10,8 @@ typedef void (*ColChkApplyFunc)(PlayState*, CollisionCheckContext*, Collider*); typedef void (*ColChkVsFunc)(PlayState*, CollisionCheckContext*, Collider*, Collider*); typedef s32 (*ColChkLineFunc)(PlayState*, CollisionCheckContext*, Collider*, Vec3f*, Vec3f*); +#define SAC_ENABLE (1 << 0) + // For retail BSS ordering, the block number of sparkInit in CollisionCheck_BlueBlood // must be between 183 and 255 inclusive. #pragma increment_block_number 50 @@ -2358,10 +2363,6 @@ void CollisionCheck_ATTrisVsACTris(PlayState* play, CollisionCheckContext* colCh } } -#if OOT_DEBUG -static s8 sBssDummy7; -#endif - void CollisionCheck_ATTrisVsACQuad(PlayState* play, CollisionCheckContext* colChkCtx, Collider* atCol, Collider* acCol) { static Vec3f hitPos; diff --git a/src/code/z_demo.c b/src/code/z_demo.c index 8cea75bab..4e516005c 100644 --- a/src/code/z_demo.c +++ b/src/code/z_demo.c @@ -115,7 +115,7 @@ void* sUnusedEntranceCsList[] = { gDekuTreeIntroCs, gJabuJabuIntroCs, gDcOpeningCs, gMinuetCs, gIceCavernSerenadeCs, gTowerBarrierCs, }; -#pragma increment_block_number 254 +#pragma increment_block_number 248 // Stores the frame the relevant cam data was last applied on u16 gCamAtSplinePointsAppliedFrame; @@ -2229,11 +2229,15 @@ void CutsceneHandler_RunScript(PlayState* play, CutsceneContext* csCtx) { csCtx->curFrame++; - if (OOT_DEBUG && R_USE_DEBUG_CUTSCENE) { +#if OOT_DEBUG + if (R_USE_DEBUG_CUTSCENE) { Cutscene_ProcessScript(play, csCtx, gDebugCutsceneScript); } else { Cutscene_ProcessScript(play, csCtx, play->csCtx.script); } +#else + Cutscene_ProcessScript(play, csCtx, play->csCtx.script); +#endif } } diff --git a/src/code/z_effect.c b/src/code/z_effect.c index b4226e9de..089387b17 100644 --- a/src/code/z_effect.c +++ b/src/code/z_effect.c @@ -1,5 +1,7 @@ #include "global.h" +#include "z64frame_advance.h" + EffectContext sEffectContext; EffectInfo sEffectInfoTable[] = { diff --git a/src/code/z_effect_soft_sprite.c b/src/code/z_effect_soft_sprite.c index 2fddd8270..20691e716 100644 --- a/src/code/z_effect_soft_sprite.c +++ b/src/code/z_effect_soft_sprite.c @@ -1,6 +1,8 @@ #include "global.h" #include "terminal.h" +#include "z64frame_advance.h" + EffectSsInfo sEffectSsInfo = { 0 }; // "EffectSS2Info" void EffectSs_InitInfo(PlayState* play, s32 tableSize) { diff --git a/src/code/z_frame_advance.c b/src/code/z_frame_advance.c index 930db59b3..64404fb2f 100644 --- a/src/code/z_frame_advance.c +++ b/src/code/z_frame_advance.c @@ -1,4 +1,9 @@ -#include "global.h" +#include "z64frame_advance.h" + +#include "stdbool.h" + +#include "padmgr.h" +#include "macros.h" void FrameAdvance_Init(FrameAdvanceContext* frameAdvCtx) { frameAdvCtx->timer = 0; diff --git a/src/code/z_game_over.c b/src/code/z_game_over.c index b282fc9e7..ff2f2a57d 100644 --- a/src/code/z_game_over.c +++ b/src/code/z_game_over.c @@ -1,3 +1,5 @@ +#include "z64game_over.h" + #include "global.h" void GameOver_Init(PlayState* play) { diff --git a/src/code/z_kankyo.c b/src/code/z_kankyo.c index 5a728aac7..ee1af2c1e 100644 --- a/src/code/z_kankyo.c +++ b/src/code/z_kankyo.c @@ -1,13 +1,16 @@ #include "global.h" #include "ultra64.h" #include "terminal.h" + +#include "z64frame_advance.h" + #include "assets/objects/gameplay_keep/gameplay_keep.h" #include "assets/objects/gameplay_field_keep/gameplay_field_keep.h" // For retail BSS ordering, the block number of sLensFlareUnused must be lower // than the extern variables declared in the header (e.g. gLightningStrike) // while the block number of sNGameOverLightNode must be higher. -#pragma increment_block_number 78 +#pragma increment_block_number 70 typedef enum { /* 0x00 */ LIGHTNING_BOLT_START, @@ -2069,30 +2072,30 @@ void Environment_PlaySceneSequence(PlayState* play) { SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 0, 0, ((void)0, gSaveContext.forcedSeqId)); } gSaveContext.forcedSeqId = NA_BGM_GENERAL_SFX; - } else if (play->sequenceCtx.seqId == NA_BGM_NO_MUSIC) { - if (play->sequenceCtx.natureAmbienceId == NATURE_ID_NONE) { + } else if (play->sceneSequences.seqId == NA_BGM_NO_MUSIC) { + if (play->sceneSequences.natureAmbienceId == NATURE_ID_NONE) { return; } - if (((void)0, gSaveContext.natureAmbienceId) != play->sequenceCtx.natureAmbienceId) { - Audio_PlayNatureAmbienceSequence(play->sequenceCtx.natureAmbienceId); + if (((void)0, gSaveContext.natureAmbienceId) != play->sceneSequences.natureAmbienceId) { + Audio_PlayNatureAmbienceSequence(play->sceneSequences.natureAmbienceId); } - } else if (play->sequenceCtx.natureAmbienceId == NATURE_ID_NONE) { + } else if (play->sceneSequences.natureAmbienceId == NATURE_ID_NONE) { // "BGM Configuration" - PRINTF("\n\n\nBGM設定game_play->sound_info.BGM=[%d] old_bgm=[%d]\n\n", play->sequenceCtx.seqId, + PRINTF("\n\n\nBGM設定game_play->sound_info.BGM=[%d] old_bgm=[%d]\n\n", play->sceneSequences.seqId, ((void)0, gSaveContext.seqId)); - if (((void)0, gSaveContext.seqId) != play->sequenceCtx.seqId) { - Audio_PlaySceneSequence(play->sequenceCtx.seqId); + if (((void)0, gSaveContext.seqId) != play->sceneSequences.seqId) { + Audio_PlaySceneSequence(play->sceneSequences.seqId); } } else if (((void)0, gSaveContext.save.dayTime) >= CLOCK_TIME(7, 0) && ((void)0, gSaveContext.save.dayTime) <= CLOCK_TIME(17, 10)) { - if (((void)0, gSaveContext.seqId) != play->sequenceCtx.seqId) { - Audio_PlaySceneSequence(play->sequenceCtx.seqId); + if (((void)0, gSaveContext.seqId) != play->sceneSequences.seqId) { + Audio_PlaySceneSequence(play->sceneSequences.seqId); } play->envCtx.timeSeqState = TIMESEQ_FADE_DAY_BGM; } else { - if (((void)0, gSaveContext.natureAmbienceId) != play->sequenceCtx.natureAmbienceId) { - Audio_PlayNatureAmbienceSequence(play->sequenceCtx.natureAmbienceId); + if (((void)0, gSaveContext.natureAmbienceId) != play->sceneSequences.natureAmbienceId) { + Audio_PlayNatureAmbienceSequence(play->sceneSequences.natureAmbienceId); } if (((void)0, gSaveContext.save.dayTime) > CLOCK_TIME(17, 10) && @@ -2108,8 +2111,8 @@ void Environment_PlaySceneSequence(PlayState* play) { PRINTF("\n-----------------\n", ((void)0, gSaveContext.forcedSeqId)); PRINTF("\n 強制BGM=[%d]", ((void)0, gSaveContext.forcedSeqId)); // "Forced BGM" - PRINTF("\n BGM=[%d]", play->sequenceCtx.seqId); - PRINTF("\n エンブ=[%d]", play->sequenceCtx.natureAmbienceId); + PRINTF("\n BGM=[%d]", play->sceneSequences.seqId); + PRINTF("\n エンブ=[%d]", play->sceneSequences.natureAmbienceId); PRINTF("\n status=[%d]", play->envCtx.timeSeqState); Audio_SetEnvReverb(play->roomCtx.curRoom.echo); @@ -2123,7 +2126,7 @@ void Environment_PlayTimeBasedSequence(PlayState* play) { if (play->envCtx.precipitation[PRECIP_RAIN_MAX] == 0 && play->envCtx.precipitation[PRECIP_SOS_MAX] == 0) { PRINTF("\n\n\nNa_StartMorinigBgm\n\n"); - Audio_PlayMorningSceneSequence(play->sequenceCtx.seqId); + Audio_PlayMorningSceneSequence(play->sceneSequences.seqId); } play->envCtx.timeSeqState++; @@ -2149,7 +2152,7 @@ void Environment_PlayTimeBasedSequence(PlayState* play) { case TIMESEQ_EARLY_NIGHT_CRITTERS: if (play->envCtx.precipitation[PRECIP_RAIN_MAX] == 0 && play->envCtx.precipitation[PRECIP_SOS_MAX] == 0) { - Audio_PlayNatureAmbienceSequence(play->sequenceCtx.natureAmbienceId); + Audio_PlayNatureAmbienceSequence(play->sceneSequences.natureAmbienceId); Audio_SetNatureAmbienceChannelIO(NATURE_CHANNEL_CRITTER_0, CHANNEL_IO_PORT_1, 1); } @@ -2586,10 +2589,10 @@ s32 Environment_IsForcedSequenceDisabled(void) { } void Environment_PlayStormNatureAmbience(PlayState* play) { - if (play->sequenceCtx.natureAmbienceId == NATURE_ID_NONE) { + if (play->sceneSequences.natureAmbienceId == NATURE_ID_NONE) { Audio_PlayNatureAmbienceSequence(NATURE_ID_MARKET_NIGHT); } else { - Audio_PlayNatureAmbienceSequence(play->sequenceCtx.natureAmbienceId); + Audio_PlayNatureAmbienceSequence(play->sceneSequences.natureAmbienceId); } Audio_SetNatureAmbienceChannelIO(NATURE_CHANNEL_RAIN, CHANNEL_IO_PORT_1, 1); diff --git a/src/code/z_play.c b/src/code/z_play.c index 589ea596c..e763cd9e0 100644 --- a/src/code/z_play.c +++ b/src/code/z_play.c @@ -2,6 +2,8 @@ #include "quake.h" #include "terminal.h" +#include "z64frame_advance.h" + #if OOT_DEBUG void* gDebugCutsceneScript = NULL; UNK_TYPE D_8012D1F4 = 0; // unused @@ -451,8 +453,8 @@ void Play_Init(GameState* thisx) { Interface_SetSceneRestrictions(this); Environment_PlaySceneSequence(this); - gSaveContext.seqId = this->sequenceCtx.seqId; - gSaveContext.natureAmbienceId = this->sequenceCtx.natureAmbienceId; + gSaveContext.seqId = this->sceneSequences.seqId; + gSaveContext.natureAmbienceId = this->sceneSequences.natureAmbienceId; func_8002DF18(this, GET_PLAYER(this)); AnimTaskQueue_Update(this, &this->animTaskQueue); gSaveContext.respawnFlag = 0; diff --git a/src/code/z_scene.c b/src/code/z_scene.c index 0375786e5..849d936a4 100644 --- a/src/code/z_scene.c +++ b/src/code/z_scene.c @@ -409,8 +409,8 @@ BAD_RETURN(s32) Scene_CommandUndefined9(PlayState* play, SceneCmd* cmd) { } BAD_RETURN(s32) Scene_CommandSoundSettings(PlayState* play, SceneCmd* cmd) { - play->sequenceCtx.seqId = cmd->soundSettings.seqId; - play->sequenceCtx.natureAmbienceId = cmd->soundSettings.natureAmbienceId; + play->sceneSequences.seqId = cmd->soundSettings.seqId; + play->sceneSequences.natureAmbienceId = cmd->soundSettings.natureAmbienceId; if (gSaveContext.seqId == (u8)NA_BGM_DISABLED) { SEQCMD_RESET_AUDIO_HEAP(0, cmd->soundSettings.specId); diff --git a/src/code/z_scene_table.c b/src/code/z_scene_table.c index 4f4ac1143..b38aa2c8e 100644 --- a/src/code/z_scene_table.c +++ b/src/code/z_scene_table.c @@ -1,6 +1,8 @@ #include "global.h" #include "quake.h" +#include "z64frame_advance.h" + #include "assets/scenes/indoors/miharigoya/miharigoya_scene.h" #include "assets/scenes/indoors/souko/souko_scene.h" diff --git a/src/code/z_sfx_source.c b/src/code/z_sfx_source.c index c80e0c9b4..1dad38659 100644 --- a/src/code/z_sfx_source.c +++ b/src/code/z_sfx_source.c @@ -1,3 +1,5 @@ +#include "z64sfx_source.h" + #include "global.h" void SfxSource_InitAll(PlayState* play) { diff --git a/src/overlays/actors/ovl_Demo_Gt/z_demo_gt.c b/src/overlays/actors/ovl_Demo_Gt/z_demo_gt.c index c3ce4fa67..6e3d23613 100644 --- a/src/overlays/actors/ovl_Demo_Gt/z_demo_gt.c +++ b/src/overlays/actors/ovl_Demo_Gt/z_demo_gt.c @@ -1,4 +1,7 @@ #include "z_demo_gt.h" + +#include "z64frame_advance.h" + #include "assets/objects/object_gt/object_gt.h" #include "assets/objects/object_geff/object_geff.h" #include "terminal.h" diff --git a/src/overlays/actors/ovl_En_Okarina_Effect/z_en_okarina_effect.c b/src/overlays/actors/ovl_En_Okarina_Effect/z_en_okarina_effect.c index 8dd65a769..4b755ca61 100644 --- a/src/overlays/actors/ovl_En_Okarina_Effect/z_en_okarina_effect.c +++ b/src/overlays/actors/ovl_En_Okarina_Effect/z_en_okarina_effect.c @@ -7,6 +7,8 @@ #include "z_en_okarina_effect.h" #include "terminal.h" +#include "z64frame_advance.h" + #define FLAGS (ACTOR_FLAG_4 | ACTOR_FLAG_25) void EnOkarinaEffect_Init(Actor* thisx, PlayState* play); diff --git a/src/overlays/actors/ovl_En_Wonder_Item/z_en_wonder_item.c b/src/overlays/actors/ovl_En_Wonder_Item/z_en_wonder_item.c index 2ead51933..acf36140c 100644 --- a/src/overlays/actors/ovl_En_Wonder_Item/z_en_wonder_item.c +++ b/src/overlays/actors/ovl_En_Wonder_Item/z_en_wonder_item.c @@ -53,6 +53,8 @@ ActorInit En_Wonder_Item_InitVars = { /**/ NULL, }; +#pragma increment_block_number 1 + static Vec3f sTagPointsFree[9]; static Vec3f sTagPointsOrdered[9]; diff --git a/src/overlays/actors/ovl_En_Zl2/z_en_zl2.c b/src/overlays/actors/ovl_En_Zl2/z_en_zl2.c index d518e4da4..e3b0c516b 100644 --- a/src/overlays/actors/ovl_En_Zl2/z_en_zl2.c +++ b/src/overlays/actors/ovl_En_Zl2/z_en_zl2.c @@ -7,6 +7,8 @@ #include "z_en_zl2.h" #include "terminal.h" +#include "z64frame_advance.h" + #include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h" #include "assets/objects/object_zl2/object_zl2.h" #include "assets/objects/object_zl2_anime1/object_zl2_anime1.h" diff --git a/src/overlays/actors/ovl_En_Zl3/z_en_zl3.c b/src/overlays/actors/ovl_En_Zl3/z_en_zl3.c index 08620c602..cdc701bdd 100644 --- a/src/overlays/actors/ovl_En_Zl3/z_en_zl3.c +++ b/src/overlays/actors/ovl_En_Zl3/z_en_zl3.c @@ -7,6 +7,9 @@ #include "z_en_zl3.h" #include "terminal.h" + +#include "z64frame_advance.h" + #include "overlays/actors/ovl_En_Encount2/z_en_encount2.h" #include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h" #include "assets/objects/object_zl2/object_zl2.h" diff --git a/src/overlays/actors/ovl_Fishing/z_fishing.c b/src/overlays/actors/ovl_Fishing/z_fishing.c index ef33cada4..6427395ae 100644 --- a/src/overlays/actors/ovl_Fishing/z_fishing.c +++ b/src/overlays/actors/ovl_Fishing/z_fishing.c @@ -11,7 +11,7 @@ #include "terminal.h" // For retail BSS ordering, the block number of sStreamSfxProjectedPos must be 0. -#pragma increment_block_number 190 +#pragma increment_block_number 183 #define FLAGS ACTOR_FLAG_4 From a599d7d54819d5644cbc5f19a29d8a6da37e4d8a Mon Sep 17 00:00:00 2001 From: fig02 Date: Tue, 25 Jun 2024 15:50:01 -0400 Subject: [PATCH 4/7] Rename ANIM_FLAG_PLAYER_7 to ANIM_FLAG_OVERRIDE_MOVEMENT (#1969) * rename and add comments * format * override movement * format * rework comments * Remove whitespace at end of lines --------- Co-authored-by: Dragorn421 --- include/z64animation.h | 13 ++++- .../actors/ovl_player_actor/z_player.c | 55 +++++++++++-------- 2 files changed, 42 insertions(+), 26 deletions(-) diff --git a/include/z64animation.h b/include/z64animation.h index 2be8a5a21..2365db14b 100644 --- a/include/z64animation.h +++ b/include/z64animation.h @@ -99,6 +99,11 @@ typedef enum { // Enables the movement of an actor in the Y-axis based on the current animation. // This only has an effect if the "Actor Move" Anim Task is in use. +// +// This animation-driven movement does not replace "normal" movement from other sources +// such as speed/velocity and collisions. The actor should stop updating other sources of movement +// as required if they are preventing the animation from playing as intended. +// An option is to implement and use `ANIM_FLAG_OVERRIDE_MOVEMENT`. #define ANIM_FLAG_UPDATE_Y (1 << 1) // (player-only) Related to scaling an animation from/to child/adult @@ -110,8 +115,12 @@ typedef enum { // #define ANIM_FLAG_NO_MOVE (1 << 4) -// (player-only) -#define ANIM_FLAG_PLAYER_7 (1 << 7) +// Disables "normal" movement from sources like speed/velocity and collisions, which allows the +// animation to have full control over the actor's movement. +// +// Note that individual actors are responsible for implementing the functionality of this flag. +// In practice, Player is the only actor who implements this flag. +#define ANIM_FLAG_OVERRIDE_MOVEMENT (1 << 7) typedef struct SkelAnime { /* 0x00 */ u8 limbCount; // Number of limbs in the skeleton diff --git a/src/overlays/actors/ovl_player_actor/z_player.c b/src/overlays/actors/ovl_player_actor/z_player.c index c4eea92ed..c397d8ea5 100644 --- a/src/overlays/actors/ovl_player_actor/z_player.c +++ b/src/overlays/actors/ovl_player_actor/z_player.c @@ -2984,7 +2984,7 @@ s32 func_80835588(Player* this, PlayState* play) { void func_808355DC(Player* this) { this->stateFlags1 |= PLAYER_STATE1_17; - if (!(this->skelAnime.moveFlags & ANIM_FLAG_PLAYER_7) && + if (!(this->skelAnime.moveFlags & ANIM_FLAG_OVERRIDE_MOVEMENT) && (this->actor.bgCheckFlags & BGCHECKFLAG_PLAYER_WALL_INTERACT) && (sShapeYawToTouchedWall < 0x2000)) { this->yaw = this->actor.shape.rot.y = this->actor.wallYaw + 0x8000; } @@ -3400,7 +3400,7 @@ s32 Player_UpdateUpperBody(Player* this, PlayState* play) { Player_AnimPlayOnce(play, this, &gPlayerAnim_link_hook_fly_start); Player_AnimReplaceApplyFlags(play, this, ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | ANIM_FLAG_PLAYER_SETMOVE | - ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT); func_80832224(this); this->yaw = this->actor.shape.rot.y; this->actor.bgCheckFlags &= ~BGCHECKFLAG_GROUND; @@ -5056,7 +5056,8 @@ s32 Player_ActionChange_1(Player* this, PlayState* play) { func_80832224(this); Player_AnimReplaceApplyFlags(play, this, ANIM_REPLACE_APPLY_FLAG_9 | ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | - ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | + ANIM_FLAG_OVERRIDE_MOVEMENT); // If this door is the second half of a double door (spawned as child) if (doorActor->parent != NULL) { @@ -5367,7 +5368,8 @@ s32 func_8083A6AC(Player* this, PlayState* play) { this->stateFlags1 |= PLAYER_STATE1_21; Player_AnimReplaceApplyFlags(play, this, ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | ANIM_FLAG_PLAYER_2 | - ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | + ANIM_FLAG_OVERRIDE_MOVEMENT); this->av2.actionVar2 = -1; this->av1.actionVar1 = sp50; @@ -5412,7 +5414,7 @@ void func_8083AA10(Player* this, PlayState* play) { return; } - if (!(this->stateFlags3 & PLAYER_STATE3_1) && !(this->skelAnime.moveFlags & ANIM_FLAG_PLAYER_7) && + if (!(this->stateFlags3 & PLAYER_STATE3_1) && !(this->skelAnime.moveFlags & ANIM_FLAG_OVERRIDE_MOVEMENT) && (Player_Action_8084411C != this->actionFunc) && (Player_Action_80844A44 != this->actionFunc)) { if ((sPrevFloorProperty == FLOOR_PROPERTY_7) || (this->meleeWeaponState != 0)) { @@ -6722,7 +6724,7 @@ s32 Player_ActionChange_3(Player* this, PlayState* play) { Player_AnimPlayOnce(play, this, D_80854578[temp].anim); Player_AnimReplaceApplyFlags(play, this, ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | ANIM_FLAG_PLAYER_SETMOVE | - ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT); this->actor.parent = this->rideActor; func_80832224(this); @@ -6891,7 +6893,7 @@ s32 Player_ActionChange_2(Player* this, PlayState* play) { Player_AnimReplaceApplyFlags(play, this, ANIM_REPLACE_APPLY_FLAG_9 | ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | - ANIM_FLAG_PLAYER_7); + ANIM_FLAG_OVERRIDE_MOVEMENT); chest->unk_1F4 = 1; Camera_RequestSetting(Play_GetCamera(play, CAM_ID_MAIN), CAM_SET_SLOW_CHEST_CS); } else { @@ -7069,7 +7071,8 @@ s32 func_8083EC18(Player* this, PlayState* play, u32 wallFlags) { Player_AnimPlayOnce(play, this, anim); Player_AnimReplaceApplyFlags(play, this, ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | ANIM_FLAG_PLAYER_2 | - ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | + ANIM_FLAG_OVERRIDE_MOVEMENT); return true; } @@ -7150,7 +7153,7 @@ s32 Player_TryEnteringCrawlspace(Player* this, PlayState* play, u32 interactWall Player_AnimPlayOnce(play, this, &gPlayerAnim_link_child_tunnel_start); Player_AnimReplaceApplyFlags(play, this, ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | - ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT); return true; } @@ -7240,7 +7243,7 @@ s32 Player_TryLeavingCrawlspace(Player* this, PlayState* play) { Player_AnimPlayOnce(play, this, &gPlayerAnim_link_child_tunnel_end); Player_AnimReplaceApplyFlags(play, this, ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | - ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT); OnePointCutscene_Init(play, 9601, 999, NULL, CAM_ID_MAIN); } else { // Leaving a crawlspace backwards @@ -7250,7 +7253,7 @@ s32 Player_TryLeavingCrawlspace(Player* this, PlayState* play) { 0.0f); Player_AnimReplaceApplyFlags(play, this, ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | - ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT); OnePointCutscene_Init(play, 9602, 999, NULL, CAM_ID_MAIN); } @@ -9969,7 +9972,7 @@ void func_808467D4(PlayState* play, Player* this) { 0.0f); Player_AnimReplaceApplyFlags(play, this, ANIM_REPLACE_APPLY_FLAG_9 | ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | - ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_OVERRIDE_MOVEMENT); if (LINK_IS_ADULT) { func_80846720(play, this, 0); } @@ -9980,7 +9983,7 @@ void func_808468A8(PlayState* play, Player* this) { Player_SetupAction(play, this, Player_Action_8084F9A0, 0); Player_AnimReplaceApplyFlags(play, this, ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | ANIM_FLAG_PLAYER_SETMOVE | - ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT); } void func_808468E8(PlayState* play, Player* this) { @@ -11136,7 +11139,7 @@ void Player_UpdateCommon(Player* this, PlayState* play, Input* input) { Player_AnimPlayOnce(play, this, &gPlayerAnim_link_uma_wait_1); Player_AnimReplaceApplyFlags(play, this, ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | ANIM_FLAG_PLAYER_SETMOVE | - ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT); this->av2.actionVar2 = 99; } @@ -11161,7 +11164,7 @@ void Player_UpdateCommon(Player* this, PlayState* play, Input* input) { func_8084FF7C(this); } - if (!(this->skelAnime.moveFlags & ANIM_FLAG_PLAYER_7)) { + if (!(this->skelAnime.moveFlags & ANIM_FLAG_OVERRIDE_MOVEMENT)) { if (((this->actor.bgCheckFlags & BGCHECKFLAG_GROUND) && (sFloorType == FLOOR_TYPE_5) && (this->currentBoots != PLAYER_BOOTS_IRON)) || ((this->currentBoots == PLAYER_BOOTS_HOVER) && @@ -14546,7 +14549,8 @@ void func_808510D4(PlayState* play, Player* this, void* anim) { void func_808510F4(PlayState* play, Player* this, void* anim) { Player_AnimReplacePlayOnce(play, this, anim, - ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | + ANIM_FLAG_OVERRIDE_MOVEMENT); } void func_80851114(PlayState* play, Player* this, void* anim) { @@ -14555,7 +14559,8 @@ void func_80851114(PlayState* play, Player* this, void* anim) { void func_80851134(PlayState* play, Player* this, void* anim) { Player_AnimReplacePlayLoop(play, this, anim, - ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | + ANIM_FLAG_OVERRIDE_MOVEMENT); } void func_80851154(PlayState* play, Player* this, void* anim) { @@ -14802,7 +14807,7 @@ void func_808519EC(PlayState* play, Player* this, CsCmdActorCue* cue) { Player_AnimPlayOnceAdjusted(play, this, this->ageProperties->unk_9C); Player_AnimReplaceApplyFlags(play, this, ANIM_REPLACE_APPLY_FLAG_9 | ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_UPDATE_Y | - ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_OVERRIDE_MOVEMENT); } static struct_808551A4 D_808551A4[] = { @@ -14913,12 +14918,13 @@ void func_80851E28(PlayState* play, Player* this, CsCmdActorCue* cue) { void func_80851E64(PlayState* play, Player* this, CsCmdActorCue* cue) { Player_AnimReplacePlayOnceAdjusted(play, this, &gPlayerAnim_link_swimer_swim_get, - ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT); } void func_80851E90(PlayState* play, Player* this, CsCmdActorCue* cue) { Player_AnimReplacePlayOnce(play, this, &gPlayerAnim_clink_op3_negaeri, - ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | + ANIM_FLAG_OVERRIDE_MOVEMENT); func_80832698(this, NA_SE_VO_LI_GROAN); } @@ -14926,7 +14932,7 @@ void func_80851ECC(PlayState* play, Player* this, CsCmdActorCue* cue) { if (LinkAnimation_Update(play, &this->skelAnime)) { Player_AnimReplacePlayLoop(play, this, &gPlayerAnim_clink_op3_wait2, ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | - ANIM_FLAG_PLAYER_7); + ANIM_FLAG_OVERRIDE_MOVEMENT); } } @@ -14954,7 +14960,7 @@ void func_80851FB0(PlayState* play, Player* this, CsCmdActorCue* cue) { if (LinkAnimation_Update(play, &this->skelAnime)) { Player_AnimReplacePlayLoop(play, this, &gPlayerAnim_clink_op3_wait3, ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | - ANIM_FLAG_PLAYER_7); + ANIM_FLAG_OVERRIDE_MOVEMENT); this->av2.actionVar2 = 1; } else if (this->av2.actionVar2 == 0) { Player_ProcessAnimSfxList(this, D_808551BC); @@ -14979,7 +14985,7 @@ void func_80852048(PlayState* play, Player* this, CsCmdActorCue* cue) { void func_80852080(PlayState* play, Player* this, CsCmdActorCue* cue) { Player_AnimReplacePlayOnceAdjusted(play, this, &gPlayerAnim_clink_demo_futtobi, ANIM_FLAG_UPDATE_XZ | ANIM_FLAG_PLAYER_2 | ANIM_FLAG_PLAYER_SETMOVE | - ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT); func_80832698(this, NA_SE_VO_LI_FALL_L); } @@ -15027,7 +15033,8 @@ void func_80852234(PlayState* play, Player* this, CsCmdActorCue* cue) { } void func_8085225C(PlayState* play, Player* this, CsCmdActorCue* cue) { - Player_AnimReplaceApplyFlags(play, this, ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_PLAYER_7); + Player_AnimReplaceApplyFlags(play, this, + ANIM_FLAG_PLAYER_SETMOVE | ANIM_FLAG_NO_MOVE | ANIM_FLAG_OVERRIDE_MOVEMENT); } void func_80852280(PlayState* play, Player* this, CsCmdActorCue* cue) { From 24571203df84c3294c8410260160cd5a3e9cfa68 Mon Sep 17 00:00:00 2001 From: cadmic Date: Tue, 25 Jun 2024 15:48:24 -0700 Subject: [PATCH 5/7] Remove global.h from z_fishing (#1977) --- include/z64actor.h | 13 +++++-------- include/z64bgcheck.h | 2 +- include/z64camera.h | 13 ++++++++----- include/z64cutscene.h | 1 + include/z64math.h | 5 +++++ src/code/sys_math3d.c | 2 +- src/overlays/actors/ovl_Fishing/z_fishing.c | 3 ++- src/overlays/actors/ovl_Fishing/z_fishing.h | 3 ++- 8 files changed, 25 insertions(+), 17 deletions(-) diff --git a/include/z64actor.h b/include/z64actor.h index ecd6a2911..3479b7a91 100644 --- a/include/z64actor.h +++ b/include/z64actor.h @@ -1,6 +1,7 @@ #ifndef Z64ACTOR_H #define Z64ACTOR_H +#include "color.h" #include "z64dma.h" #include "z64animation.h" #include "z64math.h" @@ -14,19 +15,15 @@ #define MASS_HEAVY 0xFE // Can only be pushed by OC colliders from actors with IMMOVABLE or HEAVY mass. struct Actor; -struct PlayState; +struct CollisionPoly; struct Lights; +struct PlayState; typedef void (*ActorFunc)(struct Actor*, struct PlayState*); typedef void (*ActorShadowFunc)(struct Actor*, struct Lights*, struct PlayState*); typedef u16 (*NpcGetTextIdFunc)(struct PlayState*, struct Actor*); typedef s16 (*NpcUpdateTalkStateFunc)(struct PlayState*, struct Actor*); -typedef struct { - Vec3f pos; - Vec3s rot; -} PosRot; // size = 0x14 - typedef struct { /* 0x00 */ s16 id; /* 0x02 */ u8 category; // Classifies actor and determines when it will update or draw @@ -270,8 +267,8 @@ typedef struct Actor { /* 0x068 */ f32 speed; // Context dependent speed value. Can be used for XZ or XYZ depending on which move function is used /* 0x06C */ f32 gravity; // Acceleration due to gravity. Value is added to Y velocity every frame /* 0x070 */ f32 minVelocityY; // Sets the lower bounds cap for velocity along the Y axis. Only relevant when moved with gravity. - /* 0x074 */ CollisionPoly* wallPoly; // Wall polygon the actor is touching - /* 0x078 */ CollisionPoly* floorPoly; // Floor polygon directly below the actor + /* 0x074 */ struct CollisionPoly* wallPoly; // Wall polygon the actor is touching + /* 0x078 */ struct CollisionPoly* floorPoly; // Floor polygon directly below the actor /* 0x07C */ u8 wallBgId; // Bg ID of the wall polygon the actor is touching /* 0x07D */ u8 floorBgId; // Bg ID of the floor polygon directly below the actor /* 0x07E */ s16 wallYaw; // Y rotation of the wall polygon the actor is touching diff --git a/include/z64bgcheck.h b/include/z64bgcheck.h index 9ff85c55e..6a66cc829 100644 --- a/include/z64bgcheck.h +++ b/include/z64bgcheck.h @@ -49,7 +49,7 @@ typedef struct { // flags for flags_vIB #define COLPOLY_IS_FLOOR_CONVEYOR (1 << 0) -typedef struct { +typedef struct CollisionPoly { /* 0x00 */ u16 type; union { u16 vtxData[3]; diff --git a/include/z64camera.h b/include/z64camera.h index e3696b4fb..3214bdab1 100644 --- a/include/z64camera.h +++ b/include/z64camera.h @@ -130,6 +130,9 @@ // Use a camera pivot setting that allows camera rotation (CAM_SET_PIVOT_SHOP_BROWSING for shop specifically) #define VIEWPOINT_PIVOT (BGCAM_INDEX_TOGGLE_PIVOT + 1) +struct Actor; +struct CollisionPoly; + typedef enum { /* 0x00 */ CAM_SET_NONE, /* 0x01 */ CAM_SET_NORMAL0, @@ -336,7 +339,7 @@ typedef enum { typedef struct { /* 0x00 */ Vec3f collisionClosePoint; - /* 0x0C */ CollisionPoly* atEyePoly; + /* 0x0C */ struct CollisionPoly* atEyePoly; /* 0x10 */ f32 swingUpdateRate; /* 0x14 */ s16 unk_14; /* 0x16 */ s16 unk_16; @@ -676,7 +679,7 @@ typedef struct { /* 0x00 */ f32 initialEyeToAtDist; /* 0x04 */ f32 roll; /* 0x08 */ f32 yPosOffset; - /* 0x0C */ Actor* target; + /* 0x0C */ struct Actor* target; /* 0x10 */ f32 unk_10; /* 0x14 */ s16 unk_14; // unused /* 0x16 */ s16 initialEyeToAtYaw; @@ -757,7 +760,7 @@ typedef struct { /* 0x00 */ f32 unk_00; /* 0x04 */ f32 unk_04; /* 0x08 */ f32 unk_08; - /* 0x0C */ Actor* unk_0C; + /* 0x0C */ struct Actor* unk_0C; /* 0x10 */ s16 unk_10; /* 0x12 */ s16 unk_12; /* 0x14 */ s16 unk_14; @@ -806,7 +809,7 @@ typedef struct { /* 0x00 */ f32 eyeToAtTargetR; /* 0x08 */ f32 eyeToAtTargetYaw; /* 0x04 */ f32 eyeToAtTargetPitch; - /* 0x0C */ Actor* target; + /* 0x0C */ struct Actor* target; /* 0x10 */ Vec3f atTarget; /* 0x1C */ s16 animTimer; } KeepOn3ReadWriteData; // size = 0x20 @@ -1548,7 +1551,7 @@ typedef union { typedef struct { /* 0x00 */ Vec3f pos; /* 0x0C */ Vec3f norm; - /* 0x18 */ CollisionPoly* poly; + /* 0x18 */ struct CollisionPoly* poly; /* 0x1C */ VecGeo geoNorm; /* 0x24 */ s32 bgId; } CamColChk; // size = 0x28 diff --git a/include/z64cutscene.h b/include/z64cutscene.h index 99cca6263..5cfe81dd8 100644 --- a/include/z64cutscene.h +++ b/include/z64cutscene.h @@ -2,6 +2,7 @@ #define Z64CUTSCENE_H #include "ultra64.h" +#include "z64math.h" typedef union CutsceneData { s32 i; diff --git a/include/z64math.h b/include/z64math.h index 16ba1a203..247cafdaf 100644 --- a/include/z64math.h +++ b/include/z64math.h @@ -37,6 +37,11 @@ typedef struct { f32 radius; } Spheref; // size = 0x10 +typedef struct { + /* 0x00 */ Vec3f pos; + /* 0x0C */ Vec3s rot; +} PosRot; // size = 0x14 + typedef struct { Vec3f normal; f32 originDist; diff --git a/src/code/sys_math3d.c b/src/code/sys_math3d.c index 08578e8fd..bb86036ad 100644 --- a/src/code/sys_math3d.c +++ b/src/code/sys_math3d.c @@ -7,7 +7,7 @@ // For retail BSS ordering, the block number of cbf in Math3D_CylVsCylOverlapCenterDist // must be 0. -#pragma increment_block_number 111 +#pragma increment_block_number 108 s32 Math3D_LineVsLineClosestTwoPoints(Vec3f* lineAPointA, Vec3f* lineAPointB, Vec3f* lineBPointA, Vec3f* lineBPointB, Vec3f* lineAClosestToB, Vec3f* lineBClosestToA); diff --git a/src/overlays/actors/ovl_Fishing/z_fishing.c b/src/overlays/actors/ovl_Fishing/z_fishing.c index 6427395ae..199fba0fe 100644 --- a/src/overlays/actors/ovl_Fishing/z_fishing.c +++ b/src/overlays/actors/ovl_Fishing/z_fishing.c @@ -8,10 +8,11 @@ #include "overlays/actors/ovl_En_Kanban/z_en_kanban.h" #include "assets/objects/object_fish/object_fish.h" +#include "ichain.h" #include "terminal.h" // For retail BSS ordering, the block number of sStreamSfxProjectedPos must be 0. -#pragma increment_block_number 183 +#pragma increment_block_number 182 #define FLAGS ACTOR_FLAG_4 diff --git a/src/overlays/actors/ovl_Fishing/z_fishing.h b/src/overlays/actors/ovl_Fishing/z_fishing.h index 57a7569fe..3524c88a7 100644 --- a/src/overlays/actors/ovl_Fishing/z_fishing.h +++ b/src/overlays/actors/ovl_Fishing/z_fishing.h @@ -2,7 +2,8 @@ #define Z_FISHING_H #include "ultra64.h" -#include "global.h" +#include "z64actor.h" +#include "z64light.h" struct Fishing; From 1b0e35c89ad8875272a568ae4ab1e301e99e9316 Mon Sep 17 00:00:00 2001 From: cadmic Date: Wed, 26 Jun 2024 03:22:26 -0700 Subject: [PATCH 6/7] Extract NTSC assets for gc-us (#1973) * Extract NTSC assets for gc-us * Extract kanji https://github.com/zeldaret/mm/pull/1536 Co-authored-by: Derek Hensley Co-authored-by: emilybrooks --------- Co-authored-by: Derek Hensley Co-authored-by: emilybrooks --- Makefile | 6 +- assets/xml/objects/gameplay_keep.xml | 662 +-- assets/xml/objects/gameplay_keep_pal.xml | 968 ++++ assets/xml/objects/object_bv.xml | 116 +- assets/xml/objects/object_bv_pal.xml | 79 + assets/xml/objects/object_demo_6k.xml | 1 - assets/xml/objects/object_demo_kekkai.xml | 1 - assets/xml/objects/object_du.xml | 78 +- assets/xml/objects/object_du_pal.xml | 81 + assets/xml/objects/object_efc_erupc.xml | 1 - assets/xml/objects/object_fd.xml | 16 +- assets/xml/objects/object_fd_pal.xml | 76 + assets/xml/objects/object_fhg.xml | 30 +- assets/xml/objects/object_fhg_pal.xml | 34 + assets/xml/objects/object_fish.xml | 1 - assets/xml/objects/object_fz.xml | 1 - assets/xml/objects/object_ganon.xml | 56 +- assets/xml/objects/object_ganon2.xml | 118 +- assets/xml/objects/object_ganon2_pal.xml | 174 + assets/xml/objects/object_ganon_pal.xml | 106 + assets/xml/objects/object_gi_arrow.xml | 1 - assets/xml/objects/object_gi_arrowcase.xml | 1 - assets/xml/objects/object_gi_bean.xml | 1 - assets/xml/objects/object_gi_bomb_1.xml | 1 - assets/xml/objects/object_gi_bomb_2.xml | 1 - assets/xml/objects/object_gi_bombpouch.xml | 1 - assets/xml/objects/object_gi_boomerang.xml | 1 - assets/xml/objects/object_gi_boots_2.xml | 1 - assets/xml/objects/object_gi_bosskey.xml | 1 - assets/xml/objects/object_gi_bottle.xml | 1 - .../xml/objects/object_gi_bottle_letter.xml | 1 - assets/xml/objects/object_gi_bow.xml | 1 - assets/xml/objects/object_gi_bracelet.xml | 1 - assets/xml/objects/object_gi_brokensword.xml | 1 - assets/xml/objects/object_gi_butterfly.xml | 1 - assets/xml/objects/object_gi_coin.xml | 1 - assets/xml/objects/object_gi_compass.xml | 1 - assets/xml/objects/object_gi_dekupouch.xml | 1 - assets/xml/objects/object_gi_egg.xml | 1 - assets/xml/objects/object_gi_eye_lotion.xml | 1 - assets/xml/objects/object_gi_fire.xml | 1 - assets/xml/objects/object_gi_fish.xml | 1 - assets/xml/objects/object_gi_frog.xml | 1 - assets/xml/objects/object_gi_gerudo.xml | 1 - assets/xml/objects/object_gi_gerudomask.xml | 1 - assets/xml/objects/object_gi_ghost.xml | 1 - assets/xml/objects/object_gi_glasses.xml | 1 - assets/xml/objects/object_gi_gloves.xml | 1 - assets/xml/objects/object_gi_goddess.xml | 1 - assets/xml/objects/object_gi_grass.xml | 1 - assets/xml/objects/object_gi_hammer.xml | 1 - assets/xml/objects/object_gi_heart.xml | 1 - assets/xml/objects/object_gi_hearts.xml | 1 - assets/xml/objects/object_gi_hookshot.xml | 1 - assets/xml/objects/object_gi_hoverboots.xml | 1 - assets/xml/objects/object_gi_insect.xml | 1 - assets/xml/objects/object_gi_jewel.xml | 1 - assets/xml/objects/object_gi_key.xml | 1 - assets/xml/objects/object_gi_ki_tan_mask.xml | 1 - assets/xml/objects/object_gi_liquid.xml | 1 - assets/xml/objects/object_gi_longsword.xml | 1 - assets/xml/objects/object_gi_m_arrow.xml | 1 - assets/xml/objects/object_gi_magicpot.xml | 1 - assets/xml/objects/object_gi_map.xml | 1 - assets/xml/objects/object_gi_medal.xml | 1 - assets/xml/objects/object_gi_melody.xml | 1 - assets/xml/objects/object_gi_milk.xml | 1 - assets/xml/objects/object_gi_mushroom.xml | 1 - assets/xml/objects/object_gi_niwatori.xml | 1 - assets/xml/objects/object_gi_nuts.xml | 1 - assets/xml/objects/object_gi_ocarina.xml | 1 - assets/xml/objects/object_gi_ocarina_0.xml | 1 - assets/xml/objects/object_gi_pachinko.xml | 1 - assets/xml/objects/object_gi_powder.xml | 1 - assets/xml/objects/object_gi_prescription.xml | 1 - assets/xml/objects/object_gi_rabit_mask.xml | 1 - assets/xml/objects/object_gi_redead_mask.xml | 1 - assets/xml/objects/object_gi_rupy.xml | 1 - assets/xml/objects/object_gi_saw.xml | 1 - assets/xml/objects/object_gi_scale.xml | 1 - assets/xml/objects/object_gi_seed.xml | 1 - assets/xml/objects/object_gi_shield_1.xml | 1 - assets/xml/objects/object_gi_shield_2.xml | 1 - assets/xml/objects/object_gi_shield_3.xml | 1 - assets/xml/objects/object_gi_skj_mask.xml | 1 - assets/xml/objects/object_gi_soul.xml | 1 - assets/xml/objects/object_gi_stick.xml | 1 - assets/xml/objects/object_gi_sutaru.xml | 1 - assets/xml/objects/object_gi_sword_1.xml | 1 - assets/xml/objects/object_gi_ticketstone.xml | 1 - assets/xml/objects/object_gi_truth_mask.xml | 1 - assets/xml/objects/object_god_lgt.xml | 1 - assets/xml/objects/object_goma.xml | 182 +- assets/xml/objects/object_goma_pal.xml | 169 + assets/xml/objects/object_kanban.xml | 1 - assets/xml/objects/object_kingdodongo.xml | 156 +- assets/xml/objects/object_kingdodongo_pal.xml | 130 + assets/xml/objects/object_kusa.xml | 1 - assets/xml/objects/object_link_boy.xml | 1 - assets/xml/objects/object_link_child.xml | 1 - assets/xml/objects/object_medal.xml | 1 - assets/xml/objects/object_mo.xml | 100 +- assets/xml/objects/object_mo_pal.xml | 82 + assets/xml/objects/object_nwc.xml | 1 - assets/xml/objects/object_ny.xml | 1 - assets/xml/objects/object_po_composer.xml | 1 - assets/xml/objects/object_po_field.xml | 1 - assets/xml/objects/object_poh.xml | 1 - assets/xml/objects/object_ps.xml | 1 - assets/xml/objects/object_sb.xml | 1 - assets/xml/objects/object_siofuki.xml | 1 - assets/xml/objects/object_sst.xml | 73 +- assets/xml/objects/object_sst_pal.xml | 55 + assets/xml/objects/object_st.xml | 1 - assets/xml/objects/object_stream.xml | 1 - assets/xml/objects/object_toki_objects.xml | 1 - assets/xml/objects/object_trap.xml | 1 - assets/xml/objects/object_tw.xml | 110 +- assets/xml/objects/object_tw_pal.xml | 417 ++ assets/xml/objects/object_xc.xml | 58 +- assets/xml/objects/object_xc_pal.xml | 33 + assets/xml/objects/object_ydan_objects.xml | 1 - assets/xml/objects/object_zf.xml | 1 - assets/xml/objects/object_zo.xml | 1 - assets/xml/overlays/ovl_Boss_Ganon.xml | 1 - assets/xml/overlays/ovl_Boss_Ganon2.xml | 1 - assets/xml/overlays/ovl_Magic_Dark.xml | 1 - assets/xml/overlays/ovl_Oceff_Storm.xml | 1 - assets/xml/overlays/ovl_Oceff_Wipe4.xml | 1 - assets/xml/scenes/overworld/spot20.xml | 8 +- assets/xml/scenes/overworld/spot20_pal.xml | 14 + assets/xml/textures/do_action_static.xml | 151 +- assets/xml/textures/do_action_static_pal.xml | 96 + .../textures/icon_item_gameover_static.xml | 5 +- .../icon_item_gameover_static_pal.xml | 11 + assets/xml/textures/icon_item_jpn_static.xml | 35 + assets/xml/textures/icon_item_static.xml | 38 +- assets/xml/textures/icon_item_static_pal.xml | 190 + assets/xml/textures/item_name_static.xml | 571 +-- assets/xml/textures/item_name_static_pal.xml | 373 ++ assets/xml/textures/kanji.xml | 3984 +++++++++++++++++ assets/xml/textures/map_name_static.xml | 170 +- assets/xml/textures/map_name_static_pal.xml | 106 + assets/xml/textures/place_title_cards.xml | 285 +- assets/xml/textures/place_title_cards_pal.xml | 287 ++ assets/xml/textures/title_static.xml | 271 +- assets/xml/textures/title_static_pal.xml | 194 + baseroms/gc-eu-mq-dbg/config.yml | 42 +- baseroms/gc-eu-mq/config.yml | 42 +- baseroms/gc-eu/config.yml | 42 +- baseroms/gc-us/checksum-compressed.md5 | 1 + baseroms/gc-us/checksum.md5 | 1 + baseroms/gc-us/config.yml | 1166 +++++ baseroms/gc-us/segments.csv | 1510 +++++++ tools/ZAPDConfigs/gc-eu-mq-dbg/Config.xml | 1 + tools/ZAPDConfigs/gc-eu-mq/Config.xml | 1 + tools/ZAPDConfigs/gc-eu/Config.xml | 1 + tools/ZAPDConfigs/gc-us/Config.xml | 10 + tools/ZAPDConfigs/gc-us/SymbolMap.txt | 2 + 159 files changed, 11961 insertions(+), 1914 deletions(-) create mode 100644 assets/xml/objects/gameplay_keep_pal.xml create mode 100644 assets/xml/objects/object_bv_pal.xml create mode 100644 assets/xml/objects/object_du_pal.xml create mode 100644 assets/xml/objects/object_fd_pal.xml create mode 100644 assets/xml/objects/object_fhg_pal.xml create mode 100644 assets/xml/objects/object_ganon2_pal.xml create mode 100644 assets/xml/objects/object_ganon_pal.xml create mode 100644 assets/xml/objects/object_goma_pal.xml create mode 100644 assets/xml/objects/object_kingdodongo_pal.xml create mode 100644 assets/xml/objects/object_mo_pal.xml create mode 100644 assets/xml/objects/object_sst_pal.xml create mode 100644 assets/xml/objects/object_tw_pal.xml create mode 100644 assets/xml/objects/object_xc_pal.xml create mode 100644 assets/xml/scenes/overworld/spot20_pal.xml create mode 100644 assets/xml/textures/do_action_static_pal.xml create mode 100644 assets/xml/textures/icon_item_gameover_static_pal.xml create mode 100644 assets/xml/textures/icon_item_jpn_static.xml create mode 100644 assets/xml/textures/icon_item_static_pal.xml create mode 100644 assets/xml/textures/item_name_static_pal.xml create mode 100644 assets/xml/textures/kanji.xml create mode 100644 assets/xml/textures/map_name_static_pal.xml create mode 100644 assets/xml/textures/place_title_cards_pal.xml create mode 100644 assets/xml/textures/title_static_pal.xml create mode 100644 baseroms/gc-us/checksum-compressed.md5 create mode 100644 baseroms/gc-us/checksum.md5 create mode 100644 baseroms/gc-us/config.yml create mode 100644 baseroms/gc-us/segments.csv create mode 100644 tools/ZAPDConfigs/gc-us/Config.xml create mode 100644 tools/ZAPDConfigs/gc-us/SymbolMap.txt diff --git a/Makefile b/Makefile index 5aebaf11c..2a9a29fd0 100644 --- a/Makefile +++ b/Makefile @@ -19,7 +19,7 @@ COMPILER := ido # gc-eu-mq GameCube Europe/PAL Master Quest # gc-eu-mq-dbg GameCube Europe/PAL Master Quest Debug (default) # The following versions are work-in-progress and not yet matching: -# (none currently) +# gc-us GameCube US VERSION := gc-eu-mq-dbg # Number of threads to extract and compress with N_THREADS := $(shell nproc) @@ -52,7 +52,9 @@ ifeq ($(NON_MATCHING),1) endif # Version-specific settings -ifeq ($(VERSION),gc-eu) +ifeq ($(VERSION),gc-us) + DEBUG := 0 +else ifeq ($(VERSION),gc-eu) DEBUG := 0 else ifeq ($(VERSION),gc-eu-mq) DEBUG := 0 diff --git a/assets/xml/objects/gameplay_keep.xml b/assets/xml/objects/gameplay_keep.xml index f5c0c9e68..fa68e7285 100644 --- a/assets/xml/objects/gameplay_keep.xml +++ b/assets/xml/objects/gameplay_keep.xml @@ -644,325 +644,359 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/gameplay_keep_pal.xml b/assets/xml/objects/gameplay_keep_pal.xml new file mode 100644 index 000000000..f5c0c9e68 --- /dev/null +++ b/assets/xml/objects/gameplay_keep_pal.xml @@ -0,0 +1,968 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_bv.xml b/assets/xml/objects/object_bv.xml index 204273fc0..e2c2ce920 100644 --- a/assets/xml/objects/object_bv.xml +++ b/assets/xml/objects/object_bv.xml @@ -1,79 +1,79 @@ - + - - - - - - + + + + + + - - - - + + + + - - - - - - + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + diff --git a/assets/xml/objects/object_bv_pal.xml b/assets/xml/objects/object_bv_pal.xml new file mode 100644 index 000000000..204273fc0 --- /dev/null +++ b/assets/xml/objects/object_bv_pal.xml @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_demo_6k.xml b/assets/xml/objects/object_demo_6k.xml index f64a0898b..73058d5e4 100644 --- a/assets/xml/objects/object_demo_6k.xml +++ b/assets/xml/objects/object_demo_6k.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_demo_kekkai.xml b/assets/xml/objects/object_demo_kekkai.xml index 0c26063c9..1b9c9b402 100644 --- a/assets/xml/objects/object_demo_kekkai.xml +++ b/assets/xml/objects/object_demo_kekkai.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_du.xml b/assets/xml/objects/object_du.xml index 44bbd1aa0..0babd962b 100644 --- a/assets/xml/objects/object_du.xml +++ b/assets/xml/objects/object_du.xml @@ -1,9 +1,9 @@ - + - + @@ -16,66 +16,66 @@ - + - + - + - + - + - - + + - + - - - + + + - - - - + + + + - - - - + + + + - - + + - - - - + + + + - - - - - - + + + + + + - - - - - - + + + + + + diff --git a/assets/xml/objects/object_du_pal.xml b/assets/xml/objects/object_du_pal.xml new file mode 100644 index 000000000..44bbd1aa0 --- /dev/null +++ b/assets/xml/objects/object_du_pal.xml @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_efc_erupc.xml b/assets/xml/objects/object_efc_erupc.xml index 866ca1117..800d9535f 100644 --- a/assets/xml/objects/object_efc_erupc.xml +++ b/assets/xml/objects/object_efc_erupc.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_fd.xml b/assets/xml/objects/object_fd.xml index 776a2ee49..a28919d8e 100644 --- a/assets/xml/objects/object_fd.xml +++ b/assets/xml/objects/object_fd.xml @@ -1,17 +1,17 @@ - + - - - + + + - - - + + + @@ -59,7 +59,7 @@ - + diff --git a/assets/xml/objects/object_fd_pal.xml b/assets/xml/objects/object_fd_pal.xml new file mode 100644 index 000000000..776a2ee49 --- /dev/null +++ b/assets/xml/objects/object_fd_pal.xml @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_fhg.xml b/assets/xml/objects/object_fhg.xml index d12a90cb0..5f69fcb5a 100644 --- a/assets/xml/objects/object_fhg.xml +++ b/assets/xml/objects/object_fhg.xml @@ -2,33 +2,33 @@ - + - - - - - - + + + + + + - + - + - - - - + + + + - - + + diff --git a/assets/xml/objects/object_fhg_pal.xml b/assets/xml/objects/object_fhg_pal.xml new file mode 100644 index 000000000..d12a90cb0 --- /dev/null +++ b/assets/xml/objects/object_fhg_pal.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_fish.xml b/assets/xml/objects/object_fish.xml index 62a86c0e9..f5ad4f6da 100644 --- a/assets/xml/objects/object_fish.xml +++ b/assets/xml/objects/object_fish.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_fz.xml b/assets/xml/objects/object_fz.xml index 5f3a5095b..dad6fec5c 100644 --- a/assets/xml/objects/object_fz.xml +++ b/assets/xml/objects/object_fz.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_ganon.xml b/assets/xml/objects/object_ganon.xml index 094c1394f..412acb66e 100644 --- a/assets/xml/objects/object_ganon.xml +++ b/assets/xml/objects/object_ganon.xml @@ -68,39 +68,39 @@ - + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - + diff --git a/assets/xml/objects/object_ganon2.xml b/assets/xml/objects/object_ganon2.xml index 93f3a05e5..cebdf819b 100644 --- a/assets/xml/objects/object_ganon2.xml +++ b/assets/xml/objects/object_ganon2.xml @@ -105,70 +105,70 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - + + + + + + + + + + + diff --git a/assets/xml/objects/object_ganon2_pal.xml b/assets/xml/objects/object_ganon2_pal.xml new file mode 100644 index 000000000..93f3a05e5 --- /dev/null +++ b/assets/xml/objects/object_ganon2_pal.xml @@ -0,0 +1,174 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_ganon_pal.xml b/assets/xml/objects/object_ganon_pal.xml new file mode 100644 index 000000000..c5dd93823 --- /dev/null +++ b/assets/xml/objects/object_ganon_pal.xml @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_gi_arrow.xml b/assets/xml/objects/object_gi_arrow.xml index b2db5f16c..4b58787a9 100644 --- a/assets/xml/objects/object_gi_arrow.xml +++ b/assets/xml/objects/object_gi_arrow.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_arrowcase.xml b/assets/xml/objects/object_gi_arrowcase.xml index 5c635b57f..267b0a734 100644 --- a/assets/xml/objects/object_gi_arrowcase.xml +++ b/assets/xml/objects/object_gi_arrowcase.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_bean.xml b/assets/xml/objects/object_gi_bean.xml index 59159e118..e74247816 100644 --- a/assets/xml/objects/object_gi_bean.xml +++ b/assets/xml/objects/object_gi_bean.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_bomb_1.xml b/assets/xml/objects/object_gi_bomb_1.xml index 6293a8af0..bae86c11d 100644 --- a/assets/xml/objects/object_gi_bomb_1.xml +++ b/assets/xml/objects/object_gi_bomb_1.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_bomb_2.xml b/assets/xml/objects/object_gi_bomb_2.xml index cebc04d07..1400c4a4d 100644 --- a/assets/xml/objects/object_gi_bomb_2.xml +++ b/assets/xml/objects/object_gi_bomb_2.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_bombpouch.xml b/assets/xml/objects/object_gi_bombpouch.xml index e47807819..07134748c 100644 --- a/assets/xml/objects/object_gi_bombpouch.xml +++ b/assets/xml/objects/object_gi_bombpouch.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_boomerang.xml b/assets/xml/objects/object_gi_boomerang.xml index 5c5d7301c..3c1a0fe7f 100644 --- a/assets/xml/objects/object_gi_boomerang.xml +++ b/assets/xml/objects/object_gi_boomerang.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_boots_2.xml b/assets/xml/objects/object_gi_boots_2.xml index 9cca688c3..8e9cd1028 100644 --- a/assets/xml/objects/object_gi_boots_2.xml +++ b/assets/xml/objects/object_gi_boots_2.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_bosskey.xml b/assets/xml/objects/object_gi_bosskey.xml index c737de1dd..e5e4bc86c 100644 --- a/assets/xml/objects/object_gi_bosskey.xml +++ b/assets/xml/objects/object_gi_bosskey.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_bottle.xml b/assets/xml/objects/object_gi_bottle.xml index 2221b13aa..3b0884a03 100644 --- a/assets/xml/objects/object_gi_bottle.xml +++ b/assets/xml/objects/object_gi_bottle.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_bottle_letter.xml b/assets/xml/objects/object_gi_bottle_letter.xml index c0fa7e814..443219caf 100644 --- a/assets/xml/objects/object_gi_bottle_letter.xml +++ b/assets/xml/objects/object_gi_bottle_letter.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_bow.xml b/assets/xml/objects/object_gi_bow.xml index 0c740f303..946e9c496 100644 --- a/assets/xml/objects/object_gi_bow.xml +++ b/assets/xml/objects/object_gi_bow.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_bracelet.xml b/assets/xml/objects/object_gi_bracelet.xml index 4fa21e345..5a0b62a60 100644 --- a/assets/xml/objects/object_gi_bracelet.xml +++ b/assets/xml/objects/object_gi_bracelet.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_brokensword.xml b/assets/xml/objects/object_gi_brokensword.xml index d77475f1b..408741ac5 100644 --- a/assets/xml/objects/object_gi_brokensword.xml +++ b/assets/xml/objects/object_gi_brokensword.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_butterfly.xml b/assets/xml/objects/object_gi_butterfly.xml index 4574be9d1..76ac70609 100644 --- a/assets/xml/objects/object_gi_butterfly.xml +++ b/assets/xml/objects/object_gi_butterfly.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_coin.xml b/assets/xml/objects/object_gi_coin.xml index fc2660d09..22e29f255 100644 --- a/assets/xml/objects/object_gi_coin.xml +++ b/assets/xml/objects/object_gi_coin.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_compass.xml b/assets/xml/objects/object_gi_compass.xml index a0e0ce696..076229b11 100644 --- a/assets/xml/objects/object_gi_compass.xml +++ b/assets/xml/objects/object_gi_compass.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_dekupouch.xml b/assets/xml/objects/object_gi_dekupouch.xml index 30db99967..3d6d95d98 100644 --- a/assets/xml/objects/object_gi_dekupouch.xml +++ b/assets/xml/objects/object_gi_dekupouch.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_egg.xml b/assets/xml/objects/object_gi_egg.xml index e9b4909f6..2b2e2847d 100644 --- a/assets/xml/objects/object_gi_egg.xml +++ b/assets/xml/objects/object_gi_egg.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_eye_lotion.xml b/assets/xml/objects/object_gi_eye_lotion.xml index 8f3f89ae8..5128c5f6f 100644 --- a/assets/xml/objects/object_gi_eye_lotion.xml +++ b/assets/xml/objects/object_gi_eye_lotion.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_fire.xml b/assets/xml/objects/object_gi_fire.xml index 64588486c..a57fba6e8 100644 --- a/assets/xml/objects/object_gi_fire.xml +++ b/assets/xml/objects/object_gi_fire.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_fish.xml b/assets/xml/objects/object_gi_fish.xml index c701eaf2c..edb39dc29 100644 --- a/assets/xml/objects/object_gi_fish.xml +++ b/assets/xml/objects/object_gi_fish.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_frog.xml b/assets/xml/objects/object_gi_frog.xml index c9a9f3cf3..f180fd267 100644 --- a/assets/xml/objects/object_gi_frog.xml +++ b/assets/xml/objects/object_gi_frog.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_gerudo.xml b/assets/xml/objects/object_gi_gerudo.xml index ae80fe88b..3be8d3462 100644 --- a/assets/xml/objects/object_gi_gerudo.xml +++ b/assets/xml/objects/object_gi_gerudo.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_gerudomask.xml b/assets/xml/objects/object_gi_gerudomask.xml index 57da5cb61..b53bf24af 100644 --- a/assets/xml/objects/object_gi_gerudomask.xml +++ b/assets/xml/objects/object_gi_gerudomask.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_ghost.xml b/assets/xml/objects/object_gi_ghost.xml index 3b2830c5e..186f4c74b 100644 --- a/assets/xml/objects/object_gi_ghost.xml +++ b/assets/xml/objects/object_gi_ghost.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_glasses.xml b/assets/xml/objects/object_gi_glasses.xml index ec7744a5f..63d32ab5a 100644 --- a/assets/xml/objects/object_gi_glasses.xml +++ b/assets/xml/objects/object_gi_glasses.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_gloves.xml b/assets/xml/objects/object_gi_gloves.xml index 5dd988712..1b4282dca 100644 --- a/assets/xml/objects/object_gi_gloves.xml +++ b/assets/xml/objects/object_gi_gloves.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_goddess.xml b/assets/xml/objects/object_gi_goddess.xml index 072a32ecd..50cbdd891 100644 --- a/assets/xml/objects/object_gi_goddess.xml +++ b/assets/xml/objects/object_gi_goddess.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_grass.xml b/assets/xml/objects/object_gi_grass.xml index 5e7b6c92d..ae7834201 100644 --- a/assets/xml/objects/object_gi_grass.xml +++ b/assets/xml/objects/object_gi_grass.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_hammer.xml b/assets/xml/objects/object_gi_hammer.xml index 95448b01e..feb5c8659 100644 --- a/assets/xml/objects/object_gi_hammer.xml +++ b/assets/xml/objects/object_gi_hammer.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_heart.xml b/assets/xml/objects/object_gi_heart.xml index 2db6b8396..48e78b1b5 100644 --- a/assets/xml/objects/object_gi_heart.xml +++ b/assets/xml/objects/object_gi_heart.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_hearts.xml b/assets/xml/objects/object_gi_hearts.xml index 29463b10b..d2e763e63 100644 --- a/assets/xml/objects/object_gi_hearts.xml +++ b/assets/xml/objects/object_gi_hearts.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_hookshot.xml b/assets/xml/objects/object_gi_hookshot.xml index f568f10a2..a6b3b0fda 100644 --- a/assets/xml/objects/object_gi_hookshot.xml +++ b/assets/xml/objects/object_gi_hookshot.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_hoverboots.xml b/assets/xml/objects/object_gi_hoverboots.xml index 138e6848e..c4a67877b 100644 --- a/assets/xml/objects/object_gi_hoverboots.xml +++ b/assets/xml/objects/object_gi_hoverboots.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_insect.xml b/assets/xml/objects/object_gi_insect.xml index 5923d4351..7af5b5b3b 100644 --- a/assets/xml/objects/object_gi_insect.xml +++ b/assets/xml/objects/object_gi_insect.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_jewel.xml b/assets/xml/objects/object_gi_jewel.xml index e0c3a0a3a..e83c65116 100644 --- a/assets/xml/objects/object_gi_jewel.xml +++ b/assets/xml/objects/object_gi_jewel.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_key.xml b/assets/xml/objects/object_gi_key.xml index 18c6c4158..a37d45a71 100644 --- a/assets/xml/objects/object_gi_key.xml +++ b/assets/xml/objects/object_gi_key.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_ki_tan_mask.xml b/assets/xml/objects/object_gi_ki_tan_mask.xml index 36b24288b..f66535af3 100644 --- a/assets/xml/objects/object_gi_ki_tan_mask.xml +++ b/assets/xml/objects/object_gi_ki_tan_mask.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_liquid.xml b/assets/xml/objects/object_gi_liquid.xml index 8f859495f..5eeeca0fd 100644 --- a/assets/xml/objects/object_gi_liquid.xml +++ b/assets/xml/objects/object_gi_liquid.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_longsword.xml b/assets/xml/objects/object_gi_longsword.xml index bbf33aae7..7161e42e3 100644 --- a/assets/xml/objects/object_gi_longsword.xml +++ b/assets/xml/objects/object_gi_longsword.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_m_arrow.xml b/assets/xml/objects/object_gi_m_arrow.xml index 2155c96e3..0fd659ae9 100644 --- a/assets/xml/objects/object_gi_m_arrow.xml +++ b/assets/xml/objects/object_gi_m_arrow.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_magicpot.xml b/assets/xml/objects/object_gi_magicpot.xml index dd54e80c4..7623e6353 100644 --- a/assets/xml/objects/object_gi_magicpot.xml +++ b/assets/xml/objects/object_gi_magicpot.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_map.xml b/assets/xml/objects/object_gi_map.xml index 6f1e3f568..8887dd22c 100644 --- a/assets/xml/objects/object_gi_map.xml +++ b/assets/xml/objects/object_gi_map.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_medal.xml b/assets/xml/objects/object_gi_medal.xml index dbb508ed9..28e5b1e68 100644 --- a/assets/xml/objects/object_gi_medal.xml +++ b/assets/xml/objects/object_gi_medal.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_melody.xml b/assets/xml/objects/object_gi_melody.xml index 9908dc203..b01fca953 100644 --- a/assets/xml/objects/object_gi_melody.xml +++ b/assets/xml/objects/object_gi_melody.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_milk.xml b/assets/xml/objects/object_gi_milk.xml index ea6908bcb..00b9530d9 100644 --- a/assets/xml/objects/object_gi_milk.xml +++ b/assets/xml/objects/object_gi_milk.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_mushroom.xml b/assets/xml/objects/object_gi_mushroom.xml index 759e12dfa..5b19bca74 100644 --- a/assets/xml/objects/object_gi_mushroom.xml +++ b/assets/xml/objects/object_gi_mushroom.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_niwatori.xml b/assets/xml/objects/object_gi_niwatori.xml index 2a18453e4..713cc1ce5 100644 --- a/assets/xml/objects/object_gi_niwatori.xml +++ b/assets/xml/objects/object_gi_niwatori.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_nuts.xml b/assets/xml/objects/object_gi_nuts.xml index 1ff8cf9a9..5508fe856 100644 --- a/assets/xml/objects/object_gi_nuts.xml +++ b/assets/xml/objects/object_gi_nuts.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_ocarina.xml b/assets/xml/objects/object_gi_ocarina.xml index 40a8827f6..7693cc122 100644 --- a/assets/xml/objects/object_gi_ocarina.xml +++ b/assets/xml/objects/object_gi_ocarina.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_ocarina_0.xml b/assets/xml/objects/object_gi_ocarina_0.xml index 89f8e8964..336d33894 100644 --- a/assets/xml/objects/object_gi_ocarina_0.xml +++ b/assets/xml/objects/object_gi_ocarina_0.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_pachinko.xml b/assets/xml/objects/object_gi_pachinko.xml index 9a17048a8..5f808baf9 100644 --- a/assets/xml/objects/object_gi_pachinko.xml +++ b/assets/xml/objects/object_gi_pachinko.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_powder.xml b/assets/xml/objects/object_gi_powder.xml index 835b4152b..fb7dc0155 100644 --- a/assets/xml/objects/object_gi_powder.xml +++ b/assets/xml/objects/object_gi_powder.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_prescription.xml b/assets/xml/objects/object_gi_prescription.xml index b7119e329..081de301c 100644 --- a/assets/xml/objects/object_gi_prescription.xml +++ b/assets/xml/objects/object_gi_prescription.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_rabit_mask.xml b/assets/xml/objects/object_gi_rabit_mask.xml index 215c8869d..75f855550 100644 --- a/assets/xml/objects/object_gi_rabit_mask.xml +++ b/assets/xml/objects/object_gi_rabit_mask.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_redead_mask.xml b/assets/xml/objects/object_gi_redead_mask.xml index 1ee2dc9dc..7de08487f 100644 --- a/assets/xml/objects/object_gi_redead_mask.xml +++ b/assets/xml/objects/object_gi_redead_mask.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_rupy.xml b/assets/xml/objects/object_gi_rupy.xml index dd14ed880..0a1af96d0 100644 --- a/assets/xml/objects/object_gi_rupy.xml +++ b/assets/xml/objects/object_gi_rupy.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_saw.xml b/assets/xml/objects/object_gi_saw.xml index 3cf658247..dcc038b7c 100644 --- a/assets/xml/objects/object_gi_saw.xml +++ b/assets/xml/objects/object_gi_saw.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_scale.xml b/assets/xml/objects/object_gi_scale.xml index 9c798dc36..1cf5de5b9 100644 --- a/assets/xml/objects/object_gi_scale.xml +++ b/assets/xml/objects/object_gi_scale.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_seed.xml b/assets/xml/objects/object_gi_seed.xml index fa02c2adc..82c15c82d 100644 --- a/assets/xml/objects/object_gi_seed.xml +++ b/assets/xml/objects/object_gi_seed.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_shield_1.xml b/assets/xml/objects/object_gi_shield_1.xml index 1957b4bb8..2e9369569 100644 --- a/assets/xml/objects/object_gi_shield_1.xml +++ b/assets/xml/objects/object_gi_shield_1.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_shield_2.xml b/assets/xml/objects/object_gi_shield_2.xml index 69a09a270..176ae025f 100644 --- a/assets/xml/objects/object_gi_shield_2.xml +++ b/assets/xml/objects/object_gi_shield_2.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_shield_3.xml b/assets/xml/objects/object_gi_shield_3.xml index 8fbb6e4fa..250bf7fea 100644 --- a/assets/xml/objects/object_gi_shield_3.xml +++ b/assets/xml/objects/object_gi_shield_3.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_skj_mask.xml b/assets/xml/objects/object_gi_skj_mask.xml index d310c2cc8..e6c90f76f 100644 --- a/assets/xml/objects/object_gi_skj_mask.xml +++ b/assets/xml/objects/object_gi_skj_mask.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_soul.xml b/assets/xml/objects/object_gi_soul.xml index 6191e465e..76ffc5685 100644 --- a/assets/xml/objects/object_gi_soul.xml +++ b/assets/xml/objects/object_gi_soul.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_stick.xml b/assets/xml/objects/object_gi_stick.xml index 590ad2721..fed89f465 100644 --- a/assets/xml/objects/object_gi_stick.xml +++ b/assets/xml/objects/object_gi_stick.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_sutaru.xml b/assets/xml/objects/object_gi_sutaru.xml index cf4cb816c..a2606afbe 100644 --- a/assets/xml/objects/object_gi_sutaru.xml +++ b/assets/xml/objects/object_gi_sutaru.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_sword_1.xml b/assets/xml/objects/object_gi_sword_1.xml index a8cda5689..e1119abca 100644 --- a/assets/xml/objects/object_gi_sword_1.xml +++ b/assets/xml/objects/object_gi_sword_1.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_ticketstone.xml b/assets/xml/objects/object_gi_ticketstone.xml index cef11b25a..0fa37fe11 100644 --- a/assets/xml/objects/object_gi_ticketstone.xml +++ b/assets/xml/objects/object_gi_ticketstone.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_gi_truth_mask.xml b/assets/xml/objects/object_gi_truth_mask.xml index 522d9712a..f28c7cbca 100644 --- a/assets/xml/objects/object_gi_truth_mask.xml +++ b/assets/xml/objects/object_gi_truth_mask.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_god_lgt.xml b/assets/xml/objects/object_god_lgt.xml index 6feb5f0bb..60df9e469 100644 --- a/assets/xml/objects/object_god_lgt.xml +++ b/assets/xml/objects/object_god_lgt.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_goma.xml b/assets/xml/objects/object_goma.xml index 543d9ce2a..bfe6df0fc 100644 --- a/assets/xml/objects/object_goma.xml +++ b/assets/xml/objects/object_goma.xml @@ -1,94 +1,94 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -145,7 +145,7 @@ - + @@ -159,11 +159,11 @@ - + - - - + + + diff --git a/assets/xml/objects/object_goma_pal.xml b/assets/xml/objects/object_goma_pal.xml new file mode 100644 index 000000000..543d9ce2a --- /dev/null +++ b/assets/xml/objects/object_goma_pal.xml @@ -0,0 +1,169 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_kanban.xml b/assets/xml/objects/object_kanban.xml index c2f47a155..9ffc7a2ce 100644 --- a/assets/xml/objects/object_kanban.xml +++ b/assets/xml/objects/object_kanban.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_kingdodongo.xml b/assets/xml/objects/object_kingdodongo.xml index 1aa1735cb..32c28766b 100644 --- a/assets/xml/objects/object_kingdodongo.xml +++ b/assets/xml/objects/object_kingdodongo.xml @@ -48,83 +48,83 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_kingdodongo_pal.xml b/assets/xml/objects/object_kingdodongo_pal.xml new file mode 100644 index 000000000..1aa1735cb --- /dev/null +++ b/assets/xml/objects/object_kingdodongo_pal.xml @@ -0,0 +1,130 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_kusa.xml b/assets/xml/objects/object_kusa.xml index 5385cb732..67291a554 100644 --- a/assets/xml/objects/object_kusa.xml +++ b/assets/xml/objects/object_kusa.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_link_boy.xml b/assets/xml/objects/object_link_boy.xml index 7e7d50c08..c5e11f54c 100644 --- a/assets/xml/objects/object_link_boy.xml +++ b/assets/xml/objects/object_link_boy.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_link_child.xml b/assets/xml/objects/object_link_child.xml index 046be98ff..640228441 100644 --- a/assets/xml/objects/object_link_child.xml +++ b/assets/xml/objects/object_link_child.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_medal.xml b/assets/xml/objects/object_medal.xml index 2e6a1548a..533872a55 100644 --- a/assets/xml/objects/object_medal.xml +++ b/assets/xml/objects/object_medal.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_mo.xml b/assets/xml/objects/object_mo.xml index b191e8395..68035c384 100644 --- a/assets/xml/objects/object_mo.xml +++ b/assets/xml/objects/object_mo.xml @@ -1,56 +1,56 @@ - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -59,7 +59,7 @@ - + @@ -68,13 +68,13 @@ - + - + - + diff --git a/assets/xml/objects/object_mo_pal.xml b/assets/xml/objects/object_mo_pal.xml new file mode 100644 index 000000000..b191e8395 --- /dev/null +++ b/assets/xml/objects/object_mo_pal.xml @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_nwc.xml b/assets/xml/objects/object_nwc.xml index 2b77e2f81..96ffa3238 100644 --- a/assets/xml/objects/object_nwc.xml +++ b/assets/xml/objects/object_nwc.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_ny.xml b/assets/xml/objects/object_ny.xml index 4501e0649..e2e8187ff 100644 --- a/assets/xml/objects/object_ny.xml +++ b/assets/xml/objects/object_ny.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_po_composer.xml b/assets/xml/objects/object_po_composer.xml index b02f73dbe..2ab8d64d8 100644 --- a/assets/xml/objects/object_po_composer.xml +++ b/assets/xml/objects/object_po_composer.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_po_field.xml b/assets/xml/objects/object_po_field.xml index ab1282657..10b402e2c 100644 --- a/assets/xml/objects/object_po_field.xml +++ b/assets/xml/objects/object_po_field.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_poh.xml b/assets/xml/objects/object_poh.xml index 90a57ae1c..009d0fca3 100644 --- a/assets/xml/objects/object_poh.xml +++ b/assets/xml/objects/object_poh.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_ps.xml b/assets/xml/objects/object_ps.xml index 723024f54..043e232d6 100644 --- a/assets/xml/objects/object_ps.xml +++ b/assets/xml/objects/object_ps.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_sb.xml b/assets/xml/objects/object_sb.xml index 22ec621b5..64d3bb005 100644 --- a/assets/xml/objects/object_sb.xml +++ b/assets/xml/objects/object_sb.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_siofuki.xml b/assets/xml/objects/object_siofuki.xml index 2e4f9a00d..a23240a72 100644 --- a/assets/xml/objects/object_siofuki.xml +++ b/assets/xml/objects/object_siofuki.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_sst.xml b/assets/xml/objects/object_sst.xml index ba1fad817..c142c50f4 100644 --- a/assets/xml/objects/object_sst.xml +++ b/assets/xml/objects/object_sst.xml @@ -1,56 +1,55 @@ - - + - - - + + + - - - - - - - - + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - + + - - + + - - + + diff --git a/assets/xml/objects/object_sst_pal.xml b/assets/xml/objects/object_sst_pal.xml new file mode 100644 index 000000000..9a9199b58 --- /dev/null +++ b/assets/xml/objects/object_sst_pal.xml @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_st.xml b/assets/xml/objects/object_st.xml index 8b0cc71bf..983b9e2ea 100644 --- a/assets/xml/objects/object_st.xml +++ b/assets/xml/objects/object_st.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_stream.xml b/assets/xml/objects/object_stream.xml index 6cbd11c46..59b0838e4 100644 --- a/assets/xml/objects/object_stream.xml +++ b/assets/xml/objects/object_stream.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_toki_objects.xml b/assets/xml/objects/object_toki_objects.xml index 562eba17b..cd07e60d2 100644 --- a/assets/xml/objects/object_toki_objects.xml +++ b/assets/xml/objects/object_toki_objects.xml @@ -1,5 +1,4 @@  - diff --git a/assets/xml/objects/object_trap.xml b/assets/xml/objects/object_trap.xml index fdb127735..56195cf41 100644 --- a/assets/xml/objects/object_trap.xml +++ b/assets/xml/objects/object_trap.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_tw.xml b/assets/xml/objects/object_tw.xml index 126926356..c6b9ec609 100644 --- a/assets/xml/objects/object_tw.xml +++ b/assets/xml/objects/object_tw.xml @@ -350,68 +350,68 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - + + + + + + + + - - + + diff --git a/assets/xml/objects/object_tw_pal.xml b/assets/xml/objects/object_tw_pal.xml new file mode 100644 index 000000000..126926356 --- /dev/null +++ b/assets/xml/objects/object_tw_pal.xml @@ -0,0 +1,417 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_xc.xml b/assets/xml/objects/object_xc.xml index 7fae3a087..7a69f52f3 100644 --- a/assets/xml/objects/object_xc.xml +++ b/assets/xml/objects/object_xc.xml @@ -1,33 +1,33 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_xc_pal.xml b/assets/xml/objects/object_xc_pal.xml new file mode 100644 index 000000000..7fae3a087 --- /dev/null +++ b/assets/xml/objects/object_xc_pal.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_ydan_objects.xml b/assets/xml/objects/object_ydan_objects.xml index a245165d2..baf7ca4c9 100644 --- a/assets/xml/objects/object_ydan_objects.xml +++ b/assets/xml/objects/object_ydan_objects.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_zf.xml b/assets/xml/objects/object_zf.xml index 7779fa2e1..7f20eb786 100644 --- a/assets/xml/objects/object_zf.xml +++ b/assets/xml/objects/object_zf.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/objects/object_zo.xml b/assets/xml/objects/object_zo.xml index 3cfcde6fd..77465760e 100644 --- a/assets/xml/objects/object_zo.xml +++ b/assets/xml/objects/object_zo.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/overlays/ovl_Boss_Ganon.xml b/assets/xml/overlays/ovl_Boss_Ganon.xml index 83a19c9b5..a6ed9c66e 100644 --- a/assets/xml/overlays/ovl_Boss_Ganon.xml +++ b/assets/xml/overlays/ovl_Boss_Ganon.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/overlays/ovl_Boss_Ganon2.xml b/assets/xml/overlays/ovl_Boss_Ganon2.xml index 4b1879a17..07b11108c 100644 --- a/assets/xml/overlays/ovl_Boss_Ganon2.xml +++ b/assets/xml/overlays/ovl_Boss_Ganon2.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/overlays/ovl_Magic_Dark.xml b/assets/xml/overlays/ovl_Magic_Dark.xml index 5c8b75c1f..965d140db 100644 --- a/assets/xml/overlays/ovl_Magic_Dark.xml +++ b/assets/xml/overlays/ovl_Magic_Dark.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/overlays/ovl_Oceff_Storm.xml b/assets/xml/overlays/ovl_Oceff_Storm.xml index d8217a615..385f56dbf 100644 --- a/assets/xml/overlays/ovl_Oceff_Storm.xml +++ b/assets/xml/overlays/ovl_Oceff_Storm.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/overlays/ovl_Oceff_Wipe4.xml b/assets/xml/overlays/ovl_Oceff_Wipe4.xml index 086491fa3..6446beedb 100644 --- a/assets/xml/overlays/ovl_Oceff_Wipe4.xml +++ b/assets/xml/overlays/ovl_Oceff_Wipe4.xml @@ -1,5 +1,4 @@ - diff --git a/assets/xml/scenes/overworld/spot20.xml b/assets/xml/scenes/overworld/spot20.xml index cc94f8443..6e09a5de8 100644 --- a/assets/xml/scenes/overworld/spot20.xml +++ b/assets/xml/scenes/overworld/spot20.xml @@ -1,9 +1,9 @@ - - - - + + + + diff --git a/assets/xml/scenes/overworld/spot20_pal.xml b/assets/xml/scenes/overworld/spot20_pal.xml new file mode 100644 index 000000000..cc94f8443 --- /dev/null +++ b/assets/xml/scenes/overworld/spot20_pal.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/assets/xml/textures/do_action_static.xml b/assets/xml/textures/do_action_static.xml index a821e7b2a..f628496c1 100644 --- a/assets/xml/textures/do_action_static.xml +++ b/assets/xml/textures/do_action_static.xml @@ -1,96 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/textures/do_action_static_pal.xml b/assets/xml/textures/do_action_static_pal.xml new file mode 100644 index 000000000..a821e7b2a --- /dev/null +++ b/assets/xml/textures/do_action_static_pal.xml @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/textures/icon_item_gameover_static.xml b/assets/xml/textures/icon_item_gameover_static.xml index fc2a50642..ffd392868 100644 --- a/assets/xml/textures/icon_item_gameover_static.xml +++ b/assets/xml/textures/icon_item_gameover_static.xml @@ -4,8 +4,7 @@ - - - + + diff --git a/assets/xml/textures/icon_item_gameover_static_pal.xml b/assets/xml/textures/icon_item_gameover_static_pal.xml new file mode 100644 index 000000000..fc2a50642 --- /dev/null +++ b/assets/xml/textures/icon_item_gameover_static_pal.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/assets/xml/textures/icon_item_jpn_static.xml b/assets/xml/textures/icon_item_jpn_static.xml new file mode 100644 index 000000000..95e1ea055 --- /dev/null +++ b/assets/xml/textures/icon_item_jpn_static.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/textures/icon_item_static.xml b/assets/xml/textures/icon_item_static.xml index 411f0f201..c302699d2 100644 --- a/assets/xml/textures/icon_item_static.xml +++ b/assets/xml/textures/icon_item_static.xml @@ -166,25 +166,23 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + / + + + + + diff --git a/assets/xml/textures/icon_item_static_pal.xml b/assets/xml/textures/icon_item_static_pal.xml new file mode 100644 index 000000000..411f0f201 --- /dev/null +++ b/assets/xml/textures/icon_item_static_pal.xml @@ -0,0 +1,190 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/textures/item_name_static.xml b/assets/xml/textures/item_name_static.xml index adf66fcb9..0740038d9 100644 --- a/assets/xml/textures/item_name_static.xml +++ b/assets/xml/textures/item_name_static.xml @@ -1,373 +1,250 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + diff --git a/assets/xml/textures/item_name_static_pal.xml b/assets/xml/textures/item_name_static_pal.xml new file mode 100644 index 000000000..adf66fcb9 --- /dev/null +++ b/assets/xml/textures/item_name_static_pal.xml @@ -0,0 +1,373 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/textures/kanji.xml b/assets/xml/textures/kanji.xml new file mode 100644 index 000000000..25987b86d --- /dev/null +++ b/assets/xml/textures/kanji.xml @@ -0,0 +1,3984 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/textures/map_name_static.xml b/assets/xml/textures/map_name_static.xml index 0504aa432..42448de7c 100644 --- a/assets/xml/textures/map_name_static.xml +++ b/assets/xml/textures/map_name_static.xml @@ -1,106 +1,72 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/textures/map_name_static_pal.xml b/assets/xml/textures/map_name_static_pal.xml new file mode 100644 index 000000000..0504aa432 --- /dev/null +++ b/assets/xml/textures/map_name_static_pal.xml @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/textures/place_title_cards.xml b/assets/xml/textures/place_title_cards.xml index 44bd6c8fb..c9023bc4e 100644 --- a/assets/xml/textures/place_title_cards.xml +++ b/assets/xml/textures/place_title_cards.xml @@ -1,287 +1,230 @@ - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + diff --git a/assets/xml/textures/place_title_cards_pal.xml b/assets/xml/textures/place_title_cards_pal.xml new file mode 100644 index 000000000..44bd6c8fb --- /dev/null +++ b/assets/xml/textures/place_title_cards_pal.xml @@ -0,0 +1,287 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/textures/title_static.xml b/assets/xml/textures/title_static.xml index 422b60cdc..537e23374 100644 --- a/assets/xml/textures/title_static.xml +++ b/assets/xml/textures/title_static.xml @@ -1,194 +1,169 @@ - + + + + + - - - - - - + - - - - - - - - - - - - - - - - - - - - + + + + + + - - - + + + + - - - + + - - + + + - - - - - + + - - - - - - - + + + - - - + - - - - - + - - - - - + + + - - - - - + - - - - + - - - - + + + + + + + + + + + + + + + + + + + + - - - - + - - + + + - - + - - + - - - + + + - - - + - - - + - - + - - - + + + + + - - - + + - - - + + + - - - + - - - + + + + - - - + + + - - - + + + + + - - - + + + + - - - + + - + + + - - - + - + - - + + + + - - + + + - - - + - - - + - - - + - - - + + + - - + - + - - - + + + + + + + + + diff --git a/assets/xml/textures/title_static_pal.xml b/assets/xml/textures/title_static_pal.xml new file mode 100644 index 000000000..422b60cdc --- /dev/null +++ b/assets/xml/textures/title_static_pal.xml @@ -0,0 +1,194 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/baseroms/gc-eu-mq-dbg/config.yml b/baseroms/gc-eu-mq-dbg/config.yml index 52f36a53b..d4c8f3807 100644 --- a/baseroms/gc-eu-mq-dbg/config.yml +++ b/baseroms/gc-eu-mq-dbg/config.yml @@ -28,7 +28,7 @@ assets: - name: objects/gameplay_field_keep xml_path: assets/xml/objects/gameplay_field_keep.xml - name: objects/gameplay_keep - xml_path: assets/xml/objects/gameplay_keep.xml + xml_path: assets/xml/objects/gameplay_keep_pal.xml - name: objects/object_ahg xml_path: assets/xml/objects/object_ahg.xml - name: objects/object_am @@ -80,7 +80,7 @@ assets: - name: objects/object_bubble xml_path: assets/xml/objects/object_bubble.xml - name: objects/object_bv - xml_path: assets/xml/objects/object_bv.xml + xml_path: assets/xml/objects/object_bv_pal.xml - name: objects/object_bw xml_path: assets/xml/objects/object_bw.xml - name: objects/object_bwall @@ -140,7 +140,7 @@ assets: - name: objects/object_ds2 xml_path: assets/xml/objects/object_ds2.xml - name: objects/object_du - xml_path: assets/xml/objects/object_du.xml + xml_path: assets/xml/objects/object_du_pal.xml - name: objects/object_dy_obj xml_path: assets/xml/objects/object_dy_obj.xml - name: objects/object_ec @@ -166,11 +166,11 @@ assets: - name: objects/object_fa xml_path: assets/xml/objects/object_fa.xml - name: objects/object_fd - xml_path: assets/xml/objects/object_fd.xml + xml_path: assets/xml/objects/object_fd_pal.xml - name: objects/object_fd2 xml_path: assets/xml/objects/object_fd2.xml - name: objects/object_fhg - xml_path: assets/xml/objects/object_fhg.xml + xml_path: assets/xml/objects/object_fhg_pal.xml - name: objects/object_fire xml_path: assets/xml/objects/object_fire.xml - name: objects/object_firefly @@ -186,9 +186,9 @@ assets: - name: objects/object_fz xml_path: assets/xml/objects/object_fz.xml - name: objects/object_ganon - xml_path: assets/xml/objects/object_ganon.xml + xml_path: assets/xml/objects/object_ganon_pal.xml - name: objects/object_ganon2 - xml_path: assets/xml/objects/object_ganon2.xml + xml_path: assets/xml/objects/object_ganon2_pal.xml - name: objects/object_ganon_anime1 xml_path: assets/xml/objects/object_ganon_anime1.xml - name: objects/object_ganon_anime2 @@ -376,7 +376,7 @@ assets: - name: objects/object_gol xml_path: assets/xml/objects/object_gol.xml - name: objects/object_goma - xml_path: assets/xml/objects/object_goma.xml + xml_path: assets/xml/objects/object_goma_pal.xml - name: objects/object_goroiwa xml_path: assets/xml/objects/object_goroiwa.xml - name: objects/object_gr @@ -444,7 +444,7 @@ assets: - name: objects/object_kibako2 xml_path: assets/xml/objects/object_kibako2.xml - name: objects/object_kingdodongo - xml_path: assets/xml/objects/object_kingdodongo.xml + xml_path: assets/xml/objects/object_kingdodongo_pal.xml - name: objects/object_km1 xml_path: assets/xml/objects/object_km1.xml - name: objects/object_kusa @@ -512,7 +512,7 @@ assets: - name: objects/object_mm xml_path: assets/xml/objects/object_mm.xml - name: objects/object_mo - xml_path: assets/xml/objects/object_mo.xml + xml_path: assets/xml/objects/object_mo_pal.xml - name: objects/object_mori_hineri1 xml_path: assets/xml/objects/object_mori_hineri1.xml - name: objects/object_mori_hineri1a @@ -708,7 +708,7 @@ assets: - name: objects/object_ssh xml_path: assets/xml/objects/object_ssh.xml - name: objects/object_sst - xml_path: assets/xml/objects/object_sst.xml + xml_path: assets/xml/objects/object_sst_pal.xml - name: objects/object_st xml_path: assets/xml/objects/object_st.xml - name: objects/object_stream @@ -742,7 +742,7 @@ assets: - name: objects/object_tsubo xml_path: assets/xml/objects/object_tsubo.xml - name: objects/object_tw - xml_path: assets/xml/objects/object_tw.xml + xml_path: assets/xml/objects/object_tw_pal.xml - name: objects/object_umajump xml_path: assets/xml/objects/object_umajump.xml - name: objects/object_vali @@ -762,7 +762,7 @@ assets: - name: objects/object_wood02 xml_path: assets/xml/objects/object_wood02.xml - name: objects/object_xc - xml_path: assets/xml/objects/object_xc.xml + xml_path: assets/xml/objects/object_xc_pal.xml - name: objects/object_yabusame_point xml_path: assets/xml/objects/object_yabusame_point.xml - name: objects/object_ydan_objects @@ -1112,7 +1112,7 @@ assets: - name: scenes/overworld/spot18 xml_path: assets/xml/scenes/overworld/spot18.xml - name: scenes/overworld/spot20 - xml_path: assets/xml/scenes/overworld/spot20.xml + xml_path: assets/xml/scenes/overworld/spot20_pal.xml - name: scenes/shops/alley_shop xml_path: assets/xml/scenes/shops/alley_shop.xml - name: scenes/shops/drag @@ -1148,7 +1148,7 @@ assets: - name: textures/backgrounds xml_path: assets/xml/textures/backgrounds.xml - name: textures/do_action_static - xml_path: assets/xml/textures/do_action_static.xml + xml_path: assets/xml/textures/do_action_static_pal.xml - name: textures/icon_item_24_static xml_path: assets/xml/textures/icon_item_24_static.xml - name: textures/icon_item_dungeon_static @@ -1158,15 +1158,15 @@ assets: - name: textures/icon_item_fra_static xml_path: assets/xml/textures/icon_item_fra_static.xml - name: textures/icon_item_gameover_static - xml_path: assets/xml/textures/icon_item_gameover_static.xml + xml_path: assets/xml/textures/icon_item_gameover_static_pal.xml - name: textures/icon_item_ger_static xml_path: assets/xml/textures/icon_item_ger_static.xml - name: textures/icon_item_nes_static xml_path: assets/xml/textures/icon_item_nes_static.xml - name: textures/icon_item_static - xml_path: assets/xml/textures/icon_item_static.xml + xml_path: assets/xml/textures/icon_item_static_pal.xml - name: textures/item_name_static - xml_path: assets/xml/textures/item_name_static.xml + xml_path: assets/xml/textures/item_name_static_pal.xml - name: textures/map_48x85_static xml_path: assets/xml/textures/map_48x85_static.xml - name: textures/map_grand_static @@ -1174,7 +1174,7 @@ assets: - name: textures/map_i_static xml_path: assets/xml/textures/map_i_static.xml - name: textures/map_name_static - xml_path: assets/xml/textures/map_name_static.xml + xml_path: assets/xml/textures/map_name_static_pal.xml - name: textures/message_static xml_path: assets/xml/textures/message_static.xml - name: textures/message_texture_static @@ -1186,8 +1186,8 @@ assets: - name: textures/parameter_static xml_path: assets/xml/textures/parameter_static.xml - name: textures/place_title_cards - xml_path: assets/xml/textures/place_title_cards.xml + xml_path: assets/xml/textures/place_title_cards_pal.xml - name: textures/skyboxes xml_path: assets/xml/textures/skyboxes.xml - name: textures/title_static - xml_path: assets/xml/textures/title_static.xml + xml_path: assets/xml/textures/title_static_pal.xml diff --git a/baseroms/gc-eu-mq/config.yml b/baseroms/gc-eu-mq/config.yml index 69d531bd0..278bdcf51 100644 --- a/baseroms/gc-eu-mq/config.yml +++ b/baseroms/gc-eu-mq/config.yml @@ -28,7 +28,7 @@ assets: - name: objects/gameplay_field_keep xml_path: assets/xml/objects/gameplay_field_keep.xml - name: objects/gameplay_keep - xml_path: assets/xml/objects/gameplay_keep.xml + xml_path: assets/xml/objects/gameplay_keep_pal.xml - name: objects/object_ahg xml_path: assets/xml/objects/object_ahg.xml - name: objects/object_am @@ -80,7 +80,7 @@ assets: - name: objects/object_bubble xml_path: assets/xml/objects/object_bubble.xml - name: objects/object_bv - xml_path: assets/xml/objects/object_bv.xml + xml_path: assets/xml/objects/object_bv_pal.xml - name: objects/object_bw xml_path: assets/xml/objects/object_bw.xml - name: objects/object_bwall @@ -140,7 +140,7 @@ assets: - name: objects/object_ds2 xml_path: assets/xml/objects/object_ds2.xml - name: objects/object_du - xml_path: assets/xml/objects/object_du.xml + xml_path: assets/xml/objects/object_du_pal.xml - name: objects/object_dy_obj xml_path: assets/xml/objects/object_dy_obj.xml - name: objects/object_ec @@ -166,11 +166,11 @@ assets: - name: objects/object_fa xml_path: assets/xml/objects/object_fa.xml - name: objects/object_fd - xml_path: assets/xml/objects/object_fd.xml + xml_path: assets/xml/objects/object_fd_pal.xml - name: objects/object_fd2 xml_path: assets/xml/objects/object_fd2.xml - name: objects/object_fhg - xml_path: assets/xml/objects/object_fhg.xml + xml_path: assets/xml/objects/object_fhg_pal.xml - name: objects/object_fire xml_path: assets/xml/objects/object_fire.xml - name: objects/object_firefly @@ -186,9 +186,9 @@ assets: - name: objects/object_fz xml_path: assets/xml/objects/object_fz.xml - name: objects/object_ganon - xml_path: assets/xml/objects/object_ganon.xml + xml_path: assets/xml/objects/object_ganon_pal.xml - name: objects/object_ganon2 - xml_path: assets/xml/objects/object_ganon2.xml + xml_path: assets/xml/objects/object_ganon2_pal.xml - name: objects/object_ganon_anime1 xml_path: assets/xml/objects/object_ganon_anime1.xml - name: objects/object_ganon_anime2 @@ -376,7 +376,7 @@ assets: - name: objects/object_gol xml_path: assets/xml/objects/object_gol.xml - name: objects/object_goma - xml_path: assets/xml/objects/object_goma.xml + xml_path: assets/xml/objects/object_goma_pal.xml - name: objects/object_goroiwa xml_path: assets/xml/objects/object_goroiwa.xml - name: objects/object_gr @@ -444,7 +444,7 @@ assets: - name: objects/object_kibako2 xml_path: assets/xml/objects/object_kibako2.xml - name: objects/object_kingdodongo - xml_path: assets/xml/objects/object_kingdodongo.xml + xml_path: assets/xml/objects/object_kingdodongo_pal.xml - name: objects/object_km1 xml_path: assets/xml/objects/object_km1.xml - name: objects/object_kusa @@ -512,7 +512,7 @@ assets: - name: objects/object_mm xml_path: assets/xml/objects/object_mm.xml - name: objects/object_mo - xml_path: assets/xml/objects/object_mo.xml + xml_path: assets/xml/objects/object_mo_pal.xml - name: objects/object_mori_hineri1 xml_path: assets/xml/objects/object_mori_hineri1.xml - name: objects/object_mori_hineri1a @@ -708,7 +708,7 @@ assets: - name: objects/object_ssh xml_path: assets/xml/objects/object_ssh.xml - name: objects/object_sst - xml_path: assets/xml/objects/object_sst.xml + xml_path: assets/xml/objects/object_sst_pal.xml - name: objects/object_st xml_path: assets/xml/objects/object_st.xml - name: objects/object_stream @@ -742,7 +742,7 @@ assets: - name: objects/object_tsubo xml_path: assets/xml/objects/object_tsubo.xml - name: objects/object_tw - xml_path: assets/xml/objects/object_tw.xml + xml_path: assets/xml/objects/object_tw_pal.xml - name: objects/object_umajump xml_path: assets/xml/objects/object_umajump.xml - name: objects/object_vali @@ -762,7 +762,7 @@ assets: - name: objects/object_wood02 xml_path: assets/xml/objects/object_wood02.xml - name: objects/object_xc - xml_path: assets/xml/objects/object_xc.xml + xml_path: assets/xml/objects/object_xc_pal.xml - name: objects/object_yabusame_point xml_path: assets/xml/objects/object_yabusame_point.xml - name: objects/object_ydan_objects @@ -1102,7 +1102,7 @@ assets: - name: scenes/overworld/spot18 xml_path: assets/xml/scenes/overworld/spot18.xml - name: scenes/overworld/spot20 - xml_path: assets/xml/scenes/overworld/spot20.xml + xml_path: assets/xml/scenes/overworld/spot20_pal.xml - name: scenes/shops/alley_shop xml_path: assets/xml/scenes/shops/alley_shop.xml - name: scenes/shops/drag @@ -1122,7 +1122,7 @@ assets: - name: textures/backgrounds xml_path: assets/xml/textures/backgrounds.xml - name: textures/do_action_static - xml_path: assets/xml/textures/do_action_static.xml + xml_path: assets/xml/textures/do_action_static_pal.xml - name: textures/icon_item_24_static xml_path: assets/xml/textures/icon_item_24_static.xml - name: textures/icon_item_dungeon_static @@ -1132,15 +1132,15 @@ assets: - name: textures/icon_item_fra_static xml_path: assets/xml/textures/icon_item_fra_static.xml - name: textures/icon_item_gameover_static - xml_path: assets/xml/textures/icon_item_gameover_static.xml + xml_path: assets/xml/textures/icon_item_gameover_static_pal.xml - name: textures/icon_item_ger_static xml_path: assets/xml/textures/icon_item_ger_static.xml - name: textures/icon_item_nes_static xml_path: assets/xml/textures/icon_item_nes_static.xml - name: textures/icon_item_static - xml_path: assets/xml/textures/icon_item_static.xml + xml_path: assets/xml/textures/icon_item_static_pal.xml - name: textures/item_name_static - xml_path: assets/xml/textures/item_name_static.xml + xml_path: assets/xml/textures/item_name_static_pal.xml - name: textures/map_48x85_static xml_path: assets/xml/textures/map_48x85_static.xml - name: textures/map_grand_static @@ -1148,7 +1148,7 @@ assets: - name: textures/map_i_static xml_path: assets/xml/textures/map_i_static.xml - name: textures/map_name_static - xml_path: assets/xml/textures/map_name_static.xml + xml_path: assets/xml/textures/map_name_static_pal.xml - name: textures/message_static xml_path: assets/xml/textures/message_static.xml - name: textures/message_texture_static @@ -1160,8 +1160,8 @@ assets: - name: textures/parameter_static xml_path: assets/xml/textures/parameter_static.xml - name: textures/place_title_cards - xml_path: assets/xml/textures/place_title_cards.xml + xml_path: assets/xml/textures/place_title_cards_pal.xml - name: textures/skyboxes xml_path: assets/xml/textures/skyboxes.xml - name: textures/title_static - xml_path: assets/xml/textures/title_static.xml + xml_path: assets/xml/textures/title_static_pal.xml diff --git a/baseroms/gc-eu/config.yml b/baseroms/gc-eu/config.yml index 219632a22..d2a544ca0 100644 --- a/baseroms/gc-eu/config.yml +++ b/baseroms/gc-eu/config.yml @@ -28,7 +28,7 @@ assets: - name: objects/gameplay_field_keep xml_path: assets/xml/objects/gameplay_field_keep.xml - name: objects/gameplay_keep - xml_path: assets/xml/objects/gameplay_keep.xml + xml_path: assets/xml/objects/gameplay_keep_pal.xml - name: objects/object_ahg xml_path: assets/xml/objects/object_ahg.xml - name: objects/object_am @@ -80,7 +80,7 @@ assets: - name: objects/object_bubble xml_path: assets/xml/objects/object_bubble.xml - name: objects/object_bv - xml_path: assets/xml/objects/object_bv.xml + xml_path: assets/xml/objects/object_bv_pal.xml - name: objects/object_bw xml_path: assets/xml/objects/object_bw.xml - name: objects/object_bwall @@ -140,7 +140,7 @@ assets: - name: objects/object_ds2 xml_path: assets/xml/objects/object_ds2.xml - name: objects/object_du - xml_path: assets/xml/objects/object_du.xml + xml_path: assets/xml/objects/object_du_pal.xml - name: objects/object_dy_obj xml_path: assets/xml/objects/object_dy_obj.xml - name: objects/object_ec @@ -166,11 +166,11 @@ assets: - name: objects/object_fa xml_path: assets/xml/objects/object_fa.xml - name: objects/object_fd - xml_path: assets/xml/objects/object_fd.xml + xml_path: assets/xml/objects/object_fd_pal.xml - name: objects/object_fd2 xml_path: assets/xml/objects/object_fd2.xml - name: objects/object_fhg - xml_path: assets/xml/objects/object_fhg.xml + xml_path: assets/xml/objects/object_fhg_pal.xml - name: objects/object_fire xml_path: assets/xml/objects/object_fire.xml - name: objects/object_firefly @@ -186,9 +186,9 @@ assets: - name: objects/object_fz xml_path: assets/xml/objects/object_fz.xml - name: objects/object_ganon - xml_path: assets/xml/objects/object_ganon.xml + xml_path: assets/xml/objects/object_ganon_pal.xml - name: objects/object_ganon2 - xml_path: assets/xml/objects/object_ganon2.xml + xml_path: assets/xml/objects/object_ganon2_pal.xml - name: objects/object_ganon_anime1 xml_path: assets/xml/objects/object_ganon_anime1.xml - name: objects/object_ganon_anime2 @@ -376,7 +376,7 @@ assets: - name: objects/object_gol xml_path: assets/xml/objects/object_gol.xml - name: objects/object_goma - xml_path: assets/xml/objects/object_goma.xml + xml_path: assets/xml/objects/object_goma_pal.xml - name: objects/object_goroiwa xml_path: assets/xml/objects/object_goroiwa.xml - name: objects/object_gr @@ -444,7 +444,7 @@ assets: - name: objects/object_kibako2 xml_path: assets/xml/objects/object_kibako2.xml - name: objects/object_kingdodongo - xml_path: assets/xml/objects/object_kingdodongo.xml + xml_path: assets/xml/objects/object_kingdodongo_pal.xml - name: objects/object_km1 xml_path: assets/xml/objects/object_km1.xml - name: objects/object_kusa @@ -512,7 +512,7 @@ assets: - name: objects/object_mm xml_path: assets/xml/objects/object_mm.xml - name: objects/object_mo - xml_path: assets/xml/objects/object_mo.xml + xml_path: assets/xml/objects/object_mo_pal.xml - name: objects/object_mori_hineri1 xml_path: assets/xml/objects/object_mori_hineri1.xml - name: objects/object_mori_hineri1a @@ -708,7 +708,7 @@ assets: - name: objects/object_ssh xml_path: assets/xml/objects/object_ssh.xml - name: objects/object_sst - xml_path: assets/xml/objects/object_sst.xml + xml_path: assets/xml/objects/object_sst_pal.xml - name: objects/object_st xml_path: assets/xml/objects/object_st.xml - name: objects/object_stream @@ -742,7 +742,7 @@ assets: - name: objects/object_tsubo xml_path: assets/xml/objects/object_tsubo.xml - name: objects/object_tw - xml_path: assets/xml/objects/object_tw.xml + xml_path: assets/xml/objects/object_tw_pal.xml - name: objects/object_umajump xml_path: assets/xml/objects/object_umajump.xml - name: objects/object_vali @@ -762,7 +762,7 @@ assets: - name: objects/object_wood02 xml_path: assets/xml/objects/object_wood02.xml - name: objects/object_xc - xml_path: assets/xml/objects/object_xc.xml + xml_path: assets/xml/objects/object_xc_pal.xml - name: objects/object_yabusame_point xml_path: assets/xml/objects/object_yabusame_point.xml - name: objects/object_ydan_objects @@ -1102,7 +1102,7 @@ assets: - name: scenes/overworld/spot18 xml_path: assets/xml/scenes/overworld/spot18.xml - name: scenes/overworld/spot20 - xml_path: assets/xml/scenes/overworld/spot20.xml + xml_path: assets/xml/scenes/overworld/spot20_pal.xml - name: scenes/shops/alley_shop xml_path: assets/xml/scenes/shops/alley_shop.xml - name: scenes/shops/drag @@ -1122,7 +1122,7 @@ assets: - name: textures/backgrounds xml_path: assets/xml/textures/backgrounds.xml - name: textures/do_action_static - xml_path: assets/xml/textures/do_action_static.xml + xml_path: assets/xml/textures/do_action_static_pal.xml - name: textures/icon_item_24_static xml_path: assets/xml/textures/icon_item_24_static.xml - name: textures/icon_item_dungeon_static @@ -1132,15 +1132,15 @@ assets: - name: textures/icon_item_fra_static xml_path: assets/xml/textures/icon_item_fra_static.xml - name: textures/icon_item_gameover_static - xml_path: assets/xml/textures/icon_item_gameover_static.xml + xml_path: assets/xml/textures/icon_item_gameover_static_pal.xml - name: textures/icon_item_ger_static xml_path: assets/xml/textures/icon_item_ger_static.xml - name: textures/icon_item_nes_static xml_path: assets/xml/textures/icon_item_nes_static.xml - name: textures/icon_item_static - xml_path: assets/xml/textures/icon_item_static.xml + xml_path: assets/xml/textures/icon_item_static_pal.xml - name: textures/item_name_static - xml_path: assets/xml/textures/item_name_static.xml + xml_path: assets/xml/textures/item_name_static_pal.xml - name: textures/map_48x85_static xml_path: assets/xml/textures/map_48x85_static.xml - name: textures/map_grand_static @@ -1148,7 +1148,7 @@ assets: - name: textures/map_i_static xml_path: assets/xml/textures/map_i_static.xml - name: textures/map_name_static - xml_path: assets/xml/textures/map_name_static.xml + xml_path: assets/xml/textures/map_name_static_pal.xml - name: textures/message_static xml_path: assets/xml/textures/message_static.xml - name: textures/message_texture_static @@ -1160,8 +1160,8 @@ assets: - name: textures/parameter_static xml_path: assets/xml/textures/parameter_static.xml - name: textures/place_title_cards - xml_path: assets/xml/textures/place_title_cards.xml + xml_path: assets/xml/textures/place_title_cards_pal.xml - name: textures/skyboxes xml_path: assets/xml/textures/skyboxes.xml - name: textures/title_static - xml_path: assets/xml/textures/title_static.xml + xml_path: assets/xml/textures/title_static_pal.xml diff --git a/baseroms/gc-us/checksum-compressed.md5 b/baseroms/gc-us/checksum-compressed.md5 new file mode 100644 index 000000000..1871ba60c --- /dev/null +++ b/baseroms/gc-us/checksum-compressed.md5 @@ -0,0 +1 @@ +cd09029edcfb7c097ac01986a0f83d3f build/gc-us/oot-gc-us-compressed.z64 diff --git a/baseroms/gc-us/checksum.md5 b/baseroms/gc-us/checksum.md5 new file mode 100644 index 000000000..160c935c7 --- /dev/null +++ b/baseroms/gc-us/checksum.md5 @@ -0,0 +1 @@ +282e6281bc7f030cddccf2422237e9a7 build/gc-us/oot-gc-us.z64 diff --git a/baseroms/gc-us/config.yml b/baseroms/gc-us/config.yml new file mode 100644 index 000000000..78ee329db --- /dev/null +++ b/baseroms/gc-us/config.yml @@ -0,0 +1,1166 @@ +dmadata_start: 0x7170 +variables: + gMtxClear: 0x800FE2A0 + sJpnMessageEntryTable: 0x80107810 + sNesMessageEntryTable: 0x8010DFCC + sStaffMessageEntryTable: 0x801121EC + sShadowTex: 0x80A74130 +assets: +- name: code/fbdemo_circle + xml_path: assets/xml/code/fbdemo_circle.xml + start_offset: 0xEB768 + end_offset: 0xEC988 +- name: code/fbdemo_triforce + xml_path: assets/xml/code/fbdemo_triforce.xml + start_offset: 0xEABF0 + end_offset: 0xEACC0 +- name: code/fbdemo_wipe1 + xml_path: assets/xml/code/fbdemo_wipe1.xml + start_offset: 0xEACC0 + end_offset: 0xEB650 +- name: misc/link_animetion + xml_path: assets/xml/misc/link_animetion.xml +- name: misc/z_select_static + xml_path: assets/xml/misc/z_select_static.xml +- name: objects/gameplay_dangeon_keep + xml_path: assets/xml/objects/gameplay_dangeon_keep.xml +- name: objects/gameplay_field_keep + xml_path: assets/xml/objects/gameplay_field_keep.xml +- name: objects/gameplay_keep + xml_path: assets/xml/objects/gameplay_keep.xml +- name: objects/object_ahg + xml_path: assets/xml/objects/object_ahg.xml +- name: objects/object_am + xml_path: assets/xml/objects/object_am.xml +- name: objects/object_ane + xml_path: assets/xml/objects/object_ane.xml +- name: objects/object_ani + xml_path: assets/xml/objects/object_ani.xml +- name: objects/object_anubice + xml_path: assets/xml/objects/object_anubice.xml +- name: objects/object_aob + xml_path: assets/xml/objects/object_aob.xml +- name: objects/object_b_heart + xml_path: assets/xml/objects/object_b_heart.xml +- name: objects/object_Bb + xml_path: assets/xml/objects/object_Bb.xml +- name: objects/object_bba + xml_path: assets/xml/objects/object_bba.xml +- name: objects/object_bdan_objects + xml_path: assets/xml/objects/object_bdan_objects.xml +- name: objects/object_bdoor + xml_path: assets/xml/objects/object_bdoor.xml +- name: objects/object_bg + xml_path: assets/xml/objects/object_bg.xml +- name: objects/object_bigokuta + xml_path: assets/xml/objects/object_bigokuta.xml +- name: objects/object_bird + xml_path: assets/xml/objects/object_bird.xml +- name: objects/object_bji + xml_path: assets/xml/objects/object_bji.xml +- name: objects/object_bl + xml_path: assets/xml/objects/object_bl.xml +- name: objects/object_blkobj + xml_path: assets/xml/objects/object_blkobj.xml +- name: objects/object_bob + xml_path: assets/xml/objects/object_bob.xml +- name: objects/object_boj + xml_path: assets/xml/objects/object_boj.xml +- name: objects/object_bombf + xml_path: assets/xml/objects/object_bombf.xml +- name: objects/object_bombiwa + xml_path: assets/xml/objects/object_bombiwa.xml +- name: objects/object_bowl + xml_path: assets/xml/objects/object_bowl.xml +- name: objects/object_box + xml_path: assets/xml/objects/object_box.xml +- name: objects/object_brob + xml_path: assets/xml/objects/object_brob.xml +- name: objects/object_bubble + xml_path: assets/xml/objects/object_bubble.xml +- name: objects/object_bv + xml_path: assets/xml/objects/object_bv.xml +- name: objects/object_bw + xml_path: assets/xml/objects/object_bw.xml +- name: objects/object_bwall + xml_path: assets/xml/objects/object_bwall.xml +- name: objects/object_bxa + xml_path: assets/xml/objects/object_bxa.xml +- name: objects/object_cne + xml_path: assets/xml/objects/object_cne.xml +- name: objects/object_cob + xml_path: assets/xml/objects/object_cob.xml +- name: objects/object_cow + xml_path: assets/xml/objects/object_cow.xml +- name: objects/object_crow + xml_path: assets/xml/objects/object_crow.xml +- name: objects/object_cs + xml_path: assets/xml/objects/object_cs.xml +- name: objects/object_d_elevator + xml_path: assets/xml/objects/object_d_elevator.xml +- name: objects/object_d_hsblock + xml_path: assets/xml/objects/object_d_hsblock.xml +- name: objects/object_d_lift + xml_path: assets/xml/objects/object_d_lift.xml +- name: objects/object_daiku + xml_path: assets/xml/objects/object_daiku.xml +- name: objects/object_ddan_objects + xml_path: assets/xml/objects/object_ddan_objects.xml +- name: objects/object_dekubaba + xml_path: assets/xml/objects/object_dekubaba.xml +- name: objects/object_dekujr + xml_path: assets/xml/objects/object_dekujr.xml +- name: objects/object_dekunuts + xml_path: assets/xml/objects/object_dekunuts.xml +- name: objects/object_demo_6k + xml_path: assets/xml/objects/object_demo_6k.xml +- name: objects/object_demo_kekkai + xml_path: assets/xml/objects/object_demo_kekkai.xml +- name: objects/object_demo_tre_lgt + xml_path: assets/xml/objects/object_demo_tre_lgt.xml +- name: objects/object_dh + xml_path: assets/xml/objects/object_dh.xml +- name: objects/object_dnk + xml_path: assets/xml/objects/object_dnk.xml +- name: objects/object_dns + xml_path: assets/xml/objects/object_dns.xml +- name: objects/object_dodojr + xml_path: assets/xml/objects/object_dodojr.xml +- name: objects/object_dodongo + xml_path: assets/xml/objects/object_dodongo.xml +- name: objects/object_dog + xml_path: assets/xml/objects/object_dog.xml +- name: objects/object_door_gerudo + xml_path: assets/xml/objects/object_door_gerudo.xml +- name: objects/object_door_killer + xml_path: assets/xml/objects/object_door_killer.xml +- name: objects/object_ds + xml_path: assets/xml/objects/object_ds.xml +- name: objects/object_ds2 + xml_path: assets/xml/objects/object_ds2.xml +- name: objects/object_du + xml_path: assets/xml/objects/object_du.xml +- name: objects/object_dy_obj + xml_path: assets/xml/objects/object_dy_obj.xml +- name: objects/object_ec + xml_path: assets/xml/objects/object_ec.xml +- name: objects/object_efc_crystal_light + xml_path: assets/xml/objects/object_efc_crystal_light.xml +- name: objects/object_efc_doughnut + xml_path: assets/xml/objects/object_efc_doughnut.xml +- name: objects/object_efc_erupc + xml_path: assets/xml/objects/object_efc_erupc.xml +- name: objects/object_efc_fire_ball + xml_path: assets/xml/objects/object_efc_fire_ball.xml +- name: objects/object_efc_flash + xml_path: assets/xml/objects/object_efc_flash.xml +- name: objects/object_efc_lgt_shower + xml_path: assets/xml/objects/object_efc_lgt_shower.xml +- name: objects/object_efc_star_field + xml_path: assets/xml/objects/object_efc_star_field.xml +- name: objects/object_efc_tw + xml_path: assets/xml/objects/object_efc_tw.xml +- name: objects/object_ei + xml_path: assets/xml/objects/object_ei.xml +- name: objects/object_fa + xml_path: assets/xml/objects/object_fa.xml +- name: objects/object_fd + xml_path: assets/xml/objects/object_fd.xml +- name: objects/object_fd2 + xml_path: assets/xml/objects/object_fd2.xml +- name: objects/object_fhg + xml_path: assets/xml/objects/object_fhg.xml +- name: objects/object_fire + xml_path: assets/xml/objects/object_fire.xml +- name: objects/object_firefly + xml_path: assets/xml/objects/object_firefly.xml +- name: objects/object_fish + xml_path: assets/xml/objects/object_fish.xml +- name: objects/object_fr + xml_path: assets/xml/objects/object_fr.xml +- name: objects/object_fu + xml_path: assets/xml/objects/object_fu.xml +- name: objects/object_fw + xml_path: assets/xml/objects/object_fw.xml +- name: objects/object_fz + xml_path: assets/xml/objects/object_fz.xml +- name: objects/object_ganon + xml_path: assets/xml/objects/object_ganon.xml +- name: objects/object_ganon2 + xml_path: assets/xml/objects/object_ganon2.xml +- name: objects/object_ganon_anime1 + xml_path: assets/xml/objects/object_ganon_anime1.xml +- name: objects/object_ganon_anime2 + xml_path: assets/xml/objects/object_ganon_anime2.xml +- name: objects/object_ganon_anime3 + xml_path: assets/xml/objects/object_ganon_anime3.xml +- name: objects/object_ganon_objects + xml_path: assets/xml/objects/object_ganon_objects.xml +- name: objects/object_ge1 + xml_path: assets/xml/objects/object_ge1.xml +- name: objects/object_geff + xml_path: assets/xml/objects/object_geff.xml +- name: objects/object_geldb + xml_path: assets/xml/objects/object_geldb.xml +- name: objects/object_gi_arrow + xml_path: assets/xml/objects/object_gi_arrow.xml +- name: objects/object_gi_arrowcase + xml_path: assets/xml/objects/object_gi_arrowcase.xml +- name: objects/object_gi_bean + xml_path: assets/xml/objects/object_gi_bean.xml +- name: objects/object_gi_bomb_1 + xml_path: assets/xml/objects/object_gi_bomb_1.xml +- name: objects/object_gi_bomb_2 + xml_path: assets/xml/objects/object_gi_bomb_2.xml +- name: objects/object_gi_bombpouch + xml_path: assets/xml/objects/object_gi_bombpouch.xml +- name: objects/object_gi_boomerang + xml_path: assets/xml/objects/object_gi_boomerang.xml +- name: objects/object_gi_boots_2 + xml_path: assets/xml/objects/object_gi_boots_2.xml +- name: objects/object_gi_bosskey + xml_path: assets/xml/objects/object_gi_bosskey.xml +- name: objects/object_gi_bottle + xml_path: assets/xml/objects/object_gi_bottle.xml +- name: objects/object_gi_bottle_letter + xml_path: assets/xml/objects/object_gi_bottle_letter.xml +- name: objects/object_gi_bow + xml_path: assets/xml/objects/object_gi_bow.xml +- name: objects/object_gi_bracelet + xml_path: assets/xml/objects/object_gi_bracelet.xml +- name: objects/object_gi_brokensword + xml_path: assets/xml/objects/object_gi_brokensword.xml +- name: objects/object_gi_butterfly + xml_path: assets/xml/objects/object_gi_butterfly.xml +- name: objects/object_gi_clothes + xml_path: assets/xml/objects/object_gi_clothes.xml +- name: objects/object_gi_coin + xml_path: assets/xml/objects/object_gi_coin.xml +- name: objects/object_gi_compass + xml_path: assets/xml/objects/object_gi_compass.xml +- name: objects/object_gi_dekupouch + xml_path: assets/xml/objects/object_gi_dekupouch.xml +- name: objects/object_gi_egg + xml_path: assets/xml/objects/object_gi_egg.xml +- name: objects/object_gi_eye_lotion + xml_path: assets/xml/objects/object_gi_eye_lotion.xml +- name: objects/object_gi_fire + xml_path: assets/xml/objects/object_gi_fire.xml +- name: objects/object_gi_fish + xml_path: assets/xml/objects/object_gi_fish.xml +- name: objects/object_gi_frog + xml_path: assets/xml/objects/object_gi_frog.xml +- name: objects/object_gi_gerudo + xml_path: assets/xml/objects/object_gi_gerudo.xml +- name: objects/object_gi_gerudomask + xml_path: assets/xml/objects/object_gi_gerudomask.xml +- name: objects/object_gi_ghost + xml_path: assets/xml/objects/object_gi_ghost.xml +- name: objects/object_gi_glasses + xml_path: assets/xml/objects/object_gi_glasses.xml +- name: objects/object_gi_gloves + xml_path: assets/xml/objects/object_gi_gloves.xml +- name: objects/object_gi_goddess + xml_path: assets/xml/objects/object_gi_goddess.xml +- name: objects/object_gi_golonmask + xml_path: assets/xml/objects/object_gi_golonmask.xml +- name: objects/object_gi_grass + xml_path: assets/xml/objects/object_gi_grass.xml +- name: objects/object_gi_hammer + xml_path: assets/xml/objects/object_gi_hammer.xml +- name: objects/object_gi_heart + xml_path: assets/xml/objects/object_gi_heart.xml +- name: objects/object_gi_hearts + xml_path: assets/xml/objects/object_gi_hearts.xml +- name: objects/object_gi_hookshot + xml_path: assets/xml/objects/object_gi_hookshot.xml +- name: objects/object_gi_hoverboots + xml_path: assets/xml/objects/object_gi_hoverboots.xml +- name: objects/object_gi_insect + xml_path: assets/xml/objects/object_gi_insect.xml +- name: objects/object_gi_jewel + xml_path: assets/xml/objects/object_gi_jewel.xml +- name: objects/object_gi_key + xml_path: assets/xml/objects/object_gi_key.xml +- name: objects/object_gi_ki_tan_mask + xml_path: assets/xml/objects/object_gi_ki_tan_mask.xml +- name: objects/object_gi_letter + xml_path: assets/xml/objects/object_gi_letter.xml +- name: objects/object_gi_liquid + xml_path: assets/xml/objects/object_gi_liquid.xml +- name: objects/object_gi_longsword + xml_path: assets/xml/objects/object_gi_longsword.xml +- name: objects/object_gi_m_arrow + xml_path: assets/xml/objects/object_gi_m_arrow.xml +- name: objects/object_gi_magicpot + xml_path: assets/xml/objects/object_gi_magicpot.xml +- name: objects/object_gi_map + xml_path: assets/xml/objects/object_gi_map.xml +- name: objects/object_gi_medal + xml_path: assets/xml/objects/object_gi_medal.xml +- name: objects/object_gi_melody + xml_path: assets/xml/objects/object_gi_melody.xml +- name: objects/object_gi_milk + xml_path: assets/xml/objects/object_gi_milk.xml +- name: objects/object_gi_mushroom + xml_path: assets/xml/objects/object_gi_mushroom.xml +- name: objects/object_gi_niwatori + xml_path: assets/xml/objects/object_gi_niwatori.xml +- name: objects/object_gi_nuts + xml_path: assets/xml/objects/object_gi_nuts.xml +- name: objects/object_gi_ocarina + xml_path: assets/xml/objects/object_gi_ocarina.xml +- name: objects/object_gi_ocarina_0 + xml_path: assets/xml/objects/object_gi_ocarina_0.xml +- name: objects/object_gi_pachinko + xml_path: assets/xml/objects/object_gi_pachinko.xml +- name: objects/object_gi_powder + xml_path: assets/xml/objects/object_gi_powder.xml +- name: objects/object_gi_prescription + xml_path: assets/xml/objects/object_gi_prescription.xml +- name: objects/object_gi_purse + xml_path: assets/xml/objects/object_gi_purse.xml +- name: objects/object_gi_rabit_mask + xml_path: assets/xml/objects/object_gi_rabit_mask.xml +- name: objects/object_gi_redead_mask + xml_path: assets/xml/objects/object_gi_redead_mask.xml +- name: objects/object_gi_rupy + xml_path: assets/xml/objects/object_gi_rupy.xml +- name: objects/object_gi_saw + xml_path: assets/xml/objects/object_gi_saw.xml +- name: objects/object_gi_scale + xml_path: assets/xml/objects/object_gi_scale.xml +- name: objects/object_gi_seed + xml_path: assets/xml/objects/object_gi_seed.xml +- name: objects/object_gi_shield_1 + xml_path: assets/xml/objects/object_gi_shield_1.xml +- name: objects/object_gi_shield_2 + xml_path: assets/xml/objects/object_gi_shield_2.xml +- name: objects/object_gi_shield_3 + xml_path: assets/xml/objects/object_gi_shield_3.xml +- name: objects/object_gi_skj_mask + xml_path: assets/xml/objects/object_gi_skj_mask.xml +- name: objects/object_gi_soldout + xml_path: assets/xml/objects/object_gi_soldout.xml +- name: objects/object_gi_soul + xml_path: assets/xml/objects/object_gi_soul.xml +- name: objects/object_gi_stick + xml_path: assets/xml/objects/object_gi_stick.xml +- name: objects/object_gi_sutaru + xml_path: assets/xml/objects/object_gi_sutaru.xml +- name: objects/object_gi_sword_1 + xml_path: assets/xml/objects/object_gi_sword_1.xml +- name: objects/object_gi_ticketstone + xml_path: assets/xml/objects/object_gi_ticketstone.xml +- name: objects/object_gi_truth_mask + xml_path: assets/xml/objects/object_gi_truth_mask.xml +- name: objects/object_gi_zoramask + xml_path: assets/xml/objects/object_gi_zoramask.xml +- name: objects/object_gj + xml_path: assets/xml/objects/object_gj.xml +- name: objects/object_gjyo_objects + xml_path: assets/xml/objects/object_gjyo_objects.xml +- name: objects/object_gla + xml_path: assets/xml/objects/object_gla.xml +- name: objects/object_gm + xml_path: assets/xml/objects/object_gm.xml +- name: objects/object_gnd + xml_path: assets/xml/objects/object_gnd.xml +- name: objects/object_gnd_magic + xml_path: assets/xml/objects/object_gnd_magic.xml +- name: objects/object_gndd + xml_path: assets/xml/objects/object_gndd.xml +- name: objects/object_god_lgt + xml_path: assets/xml/objects/object_god_lgt.xml +- name: objects/object_gol + xml_path: assets/xml/objects/object_gol.xml +- name: objects/object_goma + xml_path: assets/xml/objects/object_goma.xml +- name: objects/object_goroiwa + xml_path: assets/xml/objects/object_goroiwa.xml +- name: objects/object_gr + xml_path: assets/xml/objects/object_gr.xml +- name: objects/object_gs + xml_path: assets/xml/objects/object_gs.xml +- name: objects/object_gt + xml_path: assets/xml/objects/object_gt.xml +- name: objects/object_haka + xml_path: assets/xml/objects/object_haka.xml +- name: objects/object_haka_door + xml_path: assets/xml/objects/object_haka_door.xml +- name: objects/object_haka_objects + xml_path: assets/xml/objects/object_haka_objects.xml +- name: objects/object_hakach_objects + xml_path: assets/xml/objects/object_hakach_objects.xml +- name: objects/object_hata + xml_path: assets/xml/objects/object_hata.xml +- name: objects/object_heavy_object + xml_path: assets/xml/objects/object_heavy_object.xml +- name: objects/object_hidan_objects + xml_path: assets/xml/objects/object_hidan_objects.xml +- name: objects/object_hintnuts + xml_path: assets/xml/objects/object_hintnuts.xml +- name: objects/object_hni + xml_path: assets/xml/objects/object_hni.xml +- name: objects/object_horse + xml_path: assets/xml/objects/object_horse.xml +- name: objects/object_horse_ganon + xml_path: assets/xml/objects/object_horse_ganon.xml +- name: objects/object_horse_link_child + xml_path: assets/xml/objects/object_horse_link_child.xml +- name: objects/object_horse_normal + xml_path: assets/xml/objects/object_horse_normal.xml +- name: objects/object_horse_zelda + xml_path: assets/xml/objects/object_horse_zelda.xml +- name: objects/object_hs + xml_path: assets/xml/objects/object_hs.xml +- name: objects/object_human + xml_path: assets/xml/objects/object_human.xml +- name: objects/object_ice_objects + xml_path: assets/xml/objects/object_ice_objects.xml +- name: objects/object_ik + xml_path: assets/xml/objects/object_ik.xml +- name: objects/object_im + xml_path: assets/xml/objects/object_im.xml +- name: objects/object_in + xml_path: assets/xml/objects/object_in.xml +- name: objects/object_ingate + xml_path: assets/xml/objects/object_ingate.xml +- name: objects/object_jj + xml_path: assets/xml/objects/object_jj.xml +- name: objects/object_js + xml_path: assets/xml/objects/object_js.xml +- name: objects/object_jya_door + xml_path: assets/xml/objects/object_jya_door.xml +- name: objects/object_jya_iron + xml_path: assets/xml/objects/object_jya_iron.xml +- name: objects/object_jya_obj + xml_path: assets/xml/objects/object_jya_obj.xml +- name: objects/object_ka + xml_path: assets/xml/objects/object_ka.xml +- name: objects/object_kanban + xml_path: assets/xml/objects/object_kanban.xml +- name: objects/object_kibako2 + xml_path: assets/xml/objects/object_kibako2.xml +- name: objects/object_kingdodongo + xml_path: assets/xml/objects/object_kingdodongo.xml +- name: objects/object_km1 + xml_path: assets/xml/objects/object_km1.xml +- name: objects/object_kusa + xml_path: assets/xml/objects/object_kusa.xml +- name: objects/object_kw1 + xml_path: assets/xml/objects/object_kw1.xml +- name: objects/object_kz + xml_path: assets/xml/objects/object_kz.xml +- name: objects/object_light_ring + xml_path: assets/xml/objects/object_light_ring.xml +- name: objects/object_lightbox + xml_path: assets/xml/objects/object_lightbox.xml +- name: objects/object_lightswitch + xml_path: assets/xml/objects/object_lightswitch.xml +- name: objects/object_link_boy + xml_path: assets/xml/objects/object_link_boy.xml +- name: objects/object_link_child + xml_path: assets/xml/objects/object_link_child.xml +- name: objects/object_ma1 + xml_path: assets/xml/objects/object_ma1.xml +- name: objects/object_ma2 + xml_path: assets/xml/objects/object_ma2.xml +- name: objects/object_mag + xml_path: assets/xml/objects/object_mag.xml +- name: objects/object_mamenoki + xml_path: assets/xml/objects/object_mamenoki.xml +- name: objects/object_mastergolon + xml_path: assets/xml/objects/object_mastergolon.xml +- name: objects/object_masterkokiri + xml_path: assets/xml/objects/object_masterkokiri.xml +- name: objects/object_masterkokirihead + xml_path: assets/xml/objects/object_masterkokirihead.xml +- name: objects/object_masterzoora + xml_path: assets/xml/objects/object_masterzoora.xml +- name: objects/object_mb + xml_path: assets/xml/objects/object_mb.xml +- name: objects/object_md + xml_path: assets/xml/objects/object_md.xml +- name: objects/object_medal + xml_path: assets/xml/objects/object_medal.xml +- name: objects/object_menkuri_objects + xml_path: assets/xml/objects/object_menkuri_objects.xml +- name: objects/object_mir_ray + xml_path: assets/xml/objects/object_mir_ray.xml +- name: objects/object_mizu_objects + xml_path: assets/xml/objects/object_mizu_objects.xml +- name: objects/object_mjin + xml_path: assets/xml/objects/object_mjin.xml +- name: objects/object_mjin_dark + xml_path: assets/xml/objects/object_mjin_dark.xml +- name: objects/object_mjin_flame + xml_path: assets/xml/objects/object_mjin_flame.xml +- name: objects/object_mjin_flash + xml_path: assets/xml/objects/object_mjin_flash.xml +- name: objects/object_mjin_ice + xml_path: assets/xml/objects/object_mjin_ice.xml +- name: objects/object_mjin_oka + xml_path: assets/xml/objects/object_mjin_oka.xml +- name: objects/object_mjin_soul + xml_path: assets/xml/objects/object_mjin_soul.xml +- name: objects/object_mjin_wind + xml_path: assets/xml/objects/object_mjin_wind.xml +- name: objects/object_mk + xml_path: assets/xml/objects/object_mk.xml +- name: objects/object_mm + xml_path: assets/xml/objects/object_mm.xml +- name: objects/object_mo + xml_path: assets/xml/objects/object_mo.xml +- name: objects/object_mori_hineri1 + xml_path: assets/xml/objects/object_mori_hineri1.xml +- name: objects/object_mori_hineri1a + xml_path: assets/xml/objects/object_mori_hineri1a.xml +- name: objects/object_mori_hineri2 + xml_path: assets/xml/objects/object_mori_hineri2.xml +- name: objects/object_mori_hineri2a + xml_path: assets/xml/objects/object_mori_hineri2a.xml +- name: objects/object_mori_objects + xml_path: assets/xml/objects/object_mori_objects.xml +- name: objects/object_mori_tex + xml_path: assets/xml/objects/object_mori_tex.xml +- name: objects/object_ms + xml_path: assets/xml/objects/object_ms.xml +- name: objects/object_mu + xml_path: assets/xml/objects/object_mu.xml +- name: objects/object_nb + xml_path: assets/xml/objects/object_nb.xml +- name: objects/object_niw + xml_path: assets/xml/objects/object_niw.xml +- name: objects/object_nwc + xml_path: assets/xml/objects/object_nwc.xml +- name: objects/object_ny + xml_path: assets/xml/objects/object_ny.xml +- name: objects/object_o_anime + xml_path: assets/xml/objects/object_o_anime.xml +- name: objects/object_oA1 + xml_path: assets/xml/objects/object_oA1.xml +- name: objects/object_oA2 + xml_path: assets/xml/objects/object_oA2.xml +- name: objects/object_oA3 + xml_path: assets/xml/objects/object_oA3.xml +- name: objects/object_oA4 + xml_path: assets/xml/objects/object_oA4.xml +- name: objects/object_oA5 + xml_path: assets/xml/objects/object_oA5.xml +- name: objects/object_oA6 + xml_path: assets/xml/objects/object_oA6.xml +- name: objects/object_oA7 + xml_path: assets/xml/objects/object_oA7.xml +- name: objects/object_oA8 + xml_path: assets/xml/objects/object_oA8.xml +- name: objects/object_oA9 + xml_path: assets/xml/objects/object_oA9.xml +- name: objects/object_oA10 + xml_path: assets/xml/objects/object_oA10.xml +- name: objects/object_oA11 + xml_path: assets/xml/objects/object_oA11.xml +- name: objects/object_oB1 + xml_path: assets/xml/objects/object_oB1.xml +- name: objects/object_oB2 + xml_path: assets/xml/objects/object_oB2.xml +- name: objects/object_oB3 + xml_path: assets/xml/objects/object_oB3.xml +- name: objects/object_oB4 + xml_path: assets/xml/objects/object_oB4.xml +- name: objects/object_oE1 + xml_path: assets/xml/objects/object_oE1.xml +- name: objects/object_oE1s + xml_path: assets/xml/objects/object_oE1s.xml +- name: objects/object_oE2 + xml_path: assets/xml/objects/object_oE2.xml +- name: objects/object_oE3 + xml_path: assets/xml/objects/object_oE3.xml +- name: objects/object_oE4 + xml_path: assets/xml/objects/object_oE4.xml +- name: objects/object_oE4s + xml_path: assets/xml/objects/object_oE4s.xml +- name: objects/object_oE5 + xml_path: assets/xml/objects/object_oE5.xml +- name: objects/object_oE6 + xml_path: assets/xml/objects/object_oE6.xml +- name: objects/object_oE7 + xml_path: assets/xml/objects/object_oE7.xml +- name: objects/object_oE8 + xml_path: assets/xml/objects/object_oE8.xml +- name: objects/object_oE9 + xml_path: assets/xml/objects/object_oE9.xml +- name: objects/object_oE10 + xml_path: assets/xml/objects/object_oE10.xml +- name: objects/object_oE11 + xml_path: assets/xml/objects/object_oE11.xml +- name: objects/object_oE12 + xml_path: assets/xml/objects/object_oE12.xml +- name: objects/object_oE_anime + xml_path: assets/xml/objects/object_oE_anime.xml +- name: objects/object_oF1d_map + xml_path: assets/xml/objects/object_oF1d_map.xml +- name: objects/object_oF1s + xml_path: assets/xml/objects/object_oF1s.xml +- name: objects/object_okuta + xml_path: assets/xml/objects/object_okuta.xml +- name: objects/object_opening_demo1 + xml_path: assets/xml/objects/object_opening_demo1.xml +- name: objects/object_os + xml_path: assets/xml/objects/object_os.xml +- name: objects/object_os_anime + xml_path: assets/xml/objects/object_os_anime.xml +- name: objects/object_ossan + xml_path: assets/xml/objects/object_ossan.xml +- name: objects/object_ouke_haka + xml_path: assets/xml/objects/object_ouke_haka.xml +- name: objects/object_owl + xml_path: assets/xml/objects/object_owl.xml +- name: objects/object_peehat + xml_path: assets/xml/objects/object_peehat.xml +- name: objects/object_po_composer + xml_path: assets/xml/objects/object_po_composer.xml +- name: objects/object_po_field + xml_path: assets/xml/objects/object_po_field.xml +- name: objects/object_po_sisters + xml_path: assets/xml/objects/object_po_sisters.xml +- name: objects/object_poh + xml_path: assets/xml/objects/object_poh.xml +- name: objects/object_ps + xml_path: assets/xml/objects/object_ps.xml +- name: objects/object_pu_box + xml_path: assets/xml/objects/object_pu_box.xml +- name: objects/object_rd + xml_path: assets/xml/objects/object_rd.xml +- name: objects/object_reeba + xml_path: assets/xml/objects/object_reeba.xml +- name: objects/object_relay_objects + xml_path: assets/xml/objects/object_relay_objects.xml +- name: objects/object_rl + xml_path: assets/xml/objects/object_rl.xml +- name: objects/object_rr + xml_path: assets/xml/objects/object_rr.xml +- name: objects/object_rs + xml_path: assets/xml/objects/object_rs.xml +- name: objects/object_ru1 + xml_path: assets/xml/objects/object_ru1.xml +- name: objects/object_ru2 + xml_path: assets/xml/objects/object_ru2.xml +- name: objects/object_sa + xml_path: assets/xml/objects/object_sa.xml +- name: objects/object_sb + xml_path: assets/xml/objects/object_sb.xml +- name: objects/object_sd + xml_path: assets/xml/objects/object_sd.xml +- name: objects/object_shop_dungen + xml_path: assets/xml/objects/object_shop_dungen.xml +- name: objects/object_shopnuts + xml_path: assets/xml/objects/object_shopnuts.xml +- name: objects/object_siofuki + xml_path: assets/xml/objects/object_siofuki.xml +- name: objects/object_sk2 + xml_path: assets/xml/objects/object_sk2.xml +- name: objects/object_skb + xml_path: assets/xml/objects/object_skb.xml +- name: objects/object_skj + xml_path: assets/xml/objects/object_skj.xml +- name: objects/object_spot00_break + xml_path: assets/xml/objects/object_spot00_break.xml +- name: objects/object_spot00_objects + xml_path: assets/xml/objects/object_spot00_objects.xml +- name: objects/object_spot01_matoya + xml_path: assets/xml/objects/object_spot01_matoya.xml +- name: objects/object_spot01_matoyab + xml_path: assets/xml/objects/object_spot01_matoyab.xml +- name: objects/object_spot01_objects + xml_path: assets/xml/objects/object_spot01_objects.xml +- name: objects/object_spot01_objects2 + xml_path: assets/xml/objects/object_spot01_objects2.xml +- name: objects/object_spot02_objects + xml_path: assets/xml/objects/object_spot02_objects.xml +- name: objects/object_spot03_object + xml_path: assets/xml/objects/object_spot03_object.xml +- name: objects/object_spot04_objects + xml_path: assets/xml/objects/object_spot04_objects.xml +- name: objects/object_spot05_objects + xml_path: assets/xml/objects/object_spot05_objects.xml +- name: objects/object_spot06_objects + xml_path: assets/xml/objects/object_spot06_objects.xml +- name: objects/object_spot07_object + xml_path: assets/xml/objects/object_spot07_object.xml +- name: objects/object_spot08_obj + xml_path: assets/xml/objects/object_spot08_obj.xml +- name: objects/object_spot09_obj + xml_path: assets/xml/objects/object_spot09_obj.xml +- name: objects/object_spot11_obj + xml_path: assets/xml/objects/object_spot11_obj.xml +- name: objects/object_spot12_obj + xml_path: assets/xml/objects/object_spot12_obj.xml +- name: objects/object_spot15_obj + xml_path: assets/xml/objects/object_spot15_obj.xml +- name: objects/object_spot16_obj + xml_path: assets/xml/objects/object_spot16_obj.xml +- name: objects/object_spot17_obj + xml_path: assets/xml/objects/object_spot17_obj.xml +- name: objects/object_spot18_obj + xml_path: assets/xml/objects/object_spot18_obj.xml +- name: objects/object_ssh + xml_path: assets/xml/objects/object_ssh.xml +- name: objects/object_sst + xml_path: assets/xml/objects/object_sst.xml +- name: objects/object_st + xml_path: assets/xml/objects/object_st.xml +- name: objects/object_stream + xml_path: assets/xml/objects/object_stream.xml +- name: objects/object_syokudai + xml_path: assets/xml/objects/object_syokudai.xml +- name: objects/object_ta + xml_path: assets/xml/objects/object_ta.xml +- name: objects/object_timeblock + xml_path: assets/xml/objects/object_timeblock.xml +- name: objects/object_tite + xml_path: assets/xml/objects/object_tite.xml +- name: objects/object_tk + xml_path: assets/xml/objects/object_tk.xml +- name: objects/object_toki_objects + xml_path: assets/xml/objects/object_toki_objects.xml +- name: objects/object_torch2 + xml_path: assets/xml/objects/object_torch2.xml +- name: objects/object_toryo + xml_path: assets/xml/objects/object_toryo.xml +- name: objects/object_tp + xml_path: assets/xml/objects/object_tp.xml +- name: objects/object_tr + xml_path: assets/xml/objects/object_tr.xml +- name: objects/object_trap + xml_path: assets/xml/objects/object_trap.xml +- name: objects/object_triforce_spot + xml_path: assets/xml/objects/object_triforce_spot.xml +- name: objects/object_ts + xml_path: assets/xml/objects/object_ts.xml +- name: objects/object_tsubo + xml_path: assets/xml/objects/object_tsubo.xml +- name: objects/object_tw + xml_path: assets/xml/objects/object_tw.xml +- name: objects/object_umajump + xml_path: assets/xml/objects/object_umajump.xml +- name: objects/object_vali + xml_path: assets/xml/objects/object_vali.xml +- name: objects/object_vase + xml_path: assets/xml/objects/object_vase.xml +- name: objects/object_vm + xml_path: assets/xml/objects/object_vm.xml +- name: objects/object_wallmaster + xml_path: assets/xml/objects/object_wallmaster.xml +- name: objects/object_warp1 + xml_path: assets/xml/objects/object_warp1.xml +- name: objects/object_warp2 + xml_path: assets/xml/objects/object_warp2.xml +- name: objects/object_wf + xml_path: assets/xml/objects/object_wf.xml +- name: objects/object_wood02 + xml_path: assets/xml/objects/object_wood02.xml +- name: objects/object_xc + xml_path: assets/xml/objects/object_xc.xml +- name: objects/object_yabusame_point + xml_path: assets/xml/objects/object_yabusame_point.xml +- name: objects/object_ydan_objects + xml_path: assets/xml/objects/object_ydan_objects.xml +- name: objects/object_yukabyun + xml_path: assets/xml/objects/object_yukabyun.xml +- name: objects/object_zf + xml_path: assets/xml/objects/object_zf.xml +- name: objects/object_zg + xml_path: assets/xml/objects/object_zg.xml +- name: objects/object_zl1 + xml_path: assets/xml/objects/object_zl1.xml +- name: objects/object_zl2 + xml_path: assets/xml/objects/object_zl2.xml +- name: objects/object_zl2_anime1 + xml_path: assets/xml/objects/object_zl2_anime1.xml +- name: objects/object_zl2_anime2 + xml_path: assets/xml/objects/object_zl2_anime2.xml +- name: objects/object_zl4 + xml_path: assets/xml/objects/object_zl4.xml +- name: objects/object_zo + xml_path: assets/xml/objects/object_zo.xml +- name: overlays/ovl_Arrow_Fire + xml_path: assets/xml/overlays/ovl_Arrow_Fire.xml + start_offset: 0x980 + end_offset: 0x1DA0 +- name: overlays/ovl_Arrow_Ice + xml_path: assets/xml/overlays/ovl_Arrow_Ice.xml + start_offset: 0x9A0 + end_offset: 0x1DC0 +- name: overlays/ovl_Arrow_Light + xml_path: assets/xml/overlays/ovl_Arrow_Light.xml + start_offset: 0x9B0 + end_offset: 0x1DD0 +- name: overlays/ovl_Bg_Ganon_Otyuka + xml_path: assets/xml/overlays/ovl_Bg_Ganon_Otyuka.xml + start_offset: 0x1100 + end_offset: 0x24DC +- name: overlays/ovl_Bg_Jya_Cobra + xml_path: assets/xml/overlays/ovl_Bg_Jya_Cobra.xml + start_offset: 0x1850 + end_offset: 0x18C8 +- name: overlays/ovl_Boss_Dodongo + xml_path: assets/xml/overlays/ovl_Boss_Dodongo.xml + start_offset: 0x61E8 + end_offset: 0x91E8 +- name: overlays/ovl_Boss_Ganon + xml_path: assets/xml/overlays/ovl_Boss_Ganon.xml + start_offset: 0xE3C8 + end_offset: 0x20EE8 +- name: overlays/ovl_Boss_Ganon2 + xml_path: assets/xml/overlays/ovl_Boss_Ganon2.xml + start_offset: 0x9F88 + end_offset: 0x10438 +- name: overlays/ovl_Boss_Sst + xml_path: assets/xml/overlays/ovl_Boss_Sst.xml + start_offset: 0xA380 + end_offset: 0xAD30 +- name: overlays/ovl_Demo_Shd + xml_path: assets/xml/overlays/ovl_Demo_Shd.xml + start_offset: 0x410 + end_offset: 0x2390 +- name: overlays/ovl_Effect_Ss_Fhg_Flash + xml_path: assets/xml/overlays/ovl_Effect_Ss_Fhg_Flash.xml + start_offset: 0x9F0 + end_offset: 0xEA8 +- name: overlays/ovl_En_Bili + xml_path: assets/xml/overlays/ovl_En_Bili.xml + start_offset: 0x1E40 + end_offset: 0x1E60 +- name: overlays/ovl_En_Clear_Tag + xml_path: assets/xml/overlays/ovl_En_Clear_Tag.xml + start_offset: 0x2600 + end_offset: 0x8900 +- name: overlays/ovl_En_Ganon_Mant + xml_path: assets/xml/overlays/ovl_En_Ganon_Mant.xml + start_offset: 0x11F8 + end_offset: 0x40F8 +- name: overlays/ovl_En_Ganon_Organ + xml_path: assets/xml/overlays/ovl_En_Ganon_Organ.xml + start_offset: 0x368 + end_offset: 0x6EF0 +- name: overlays/ovl_En_Holl + xml_path: assets/xml/overlays/ovl_En_Holl.xml + start_offset: 0xE68 + end_offset: 0xED0 +- name: overlays/ovl_En_Jsjutan + xml_path: assets/xml/overlays/ovl_En_Jsjutan.xml + start_offset: 0x12C8 + end_offset: 0x4C60 +- name: overlays/ovl_En_Kanban + xml_path: assets/xml/overlays/ovl_En_Kanban.xml + start_offset: 0x2E70 + end_offset: 0x2F30 +- name: overlays/ovl_En_Sda + xml_path: assets/xml/overlays/ovl_En_Sda.xml + start_offset: 0x1498 + end_offset: 0x1528 +- name: overlays/ovl_En_Ssh + xml_path: assets/xml/overlays/ovl_En_Ssh.xml + start_offset: 0x2150 + end_offset: 0x21E0 +- name: overlays/ovl_En_St + xml_path: assets/xml/overlays/ovl_En_St.xml + start_offset: 0x26A0 + end_offset: 0x2730 +- name: overlays/ovl_En_Sth + xml_path: assets/xml/overlays/ovl_En_Sth.xml + start_offset: 0xE70 + end_offset: 0x3E44 +- name: overlays/ovl_End_Title + xml_path: assets/xml/overlays/ovl_End_Title.xml + start_offset: 0x6E0 + end_offset: 0x4088 +- name: overlays/ovl_file_choose + xml_path: assets/xml/overlays/ovl_file_choose.xml + start_offset: 0xD740 + end_offset: 0xDF80 +- name: overlays/ovl_Magic_Dark + xml_path: assets/xml/overlays/ovl_Magic_Dark.xml + start_offset: 0xC90 + end_offset: 0x16C0 +- name: overlays/ovl_Magic_Fire + xml_path: assets/xml/overlays/ovl_Magic_Fire.xml + start_offset: 0xB50 + end_offset: 0x21A0 +- name: overlays/ovl_Magic_Wind + xml_path: assets/xml/overlays/ovl_Magic_Wind.xml + start_offset: 0x6A0 + end_offset: 0x1BB8 +- name: overlays/ovl_Oceff_Spot + xml_path: assets/xml/overlays/ovl_Oceff_Spot.xml + start_offset: 0x780 + end_offset: 0xE58 +- name: overlays/ovl_Oceff_Storm + xml_path: assets/xml/overlays/ovl_Oceff_Storm.xml + start_offset: 0x750 + end_offset: 0x1AE0 +- name: overlays/ovl_Oceff_Wipe + xml_path: assets/xml/overlays/ovl_Oceff_Wipe.xml + start_offset: 0x520 + end_offset: 0xCE0 +- name: overlays/ovl_Oceff_Wipe2 + xml_path: assets/xml/overlays/ovl_Oceff_Wipe2.xml + start_offset: 0x430 + end_offset: 0x1698 +- name: overlays/ovl_Oceff_Wipe3 + xml_path: assets/xml/overlays/ovl_Oceff_Wipe3.xml + start_offset: 0x430 + end_offset: 0x1678 +- name: overlays/ovl_Oceff_Wipe4 + xml_path: assets/xml/overlays/ovl_Oceff_Wipe4.xml + start_offset: 0x410 + end_offset: 0xEF8 +- name: scenes/dungeons/bdan + xml_path: assets/xml/scenes/dungeons/bdan.xml +- name: scenes/dungeons/bdan_boss + xml_path: assets/xml/scenes/dungeons/bdan_boss.xml +- name: scenes/dungeons/Bmori1 + xml_path: assets/xml/scenes/dungeons/Bmori1.xml +- name: scenes/dungeons/ddan + xml_path: assets/xml/scenes/dungeons/ddan.xml +- name: scenes/dungeons/ddan_boss + xml_path: assets/xml/scenes/dungeons/ddan_boss.xml +- name: scenes/dungeons/FIRE_bs + xml_path: assets/xml/scenes/dungeons/FIRE_bs.xml +- name: scenes/dungeons/ganon + xml_path: assets/xml/scenes/dungeons/ganon.xml +- name: scenes/dungeons/ganon_boss + xml_path: assets/xml/scenes/dungeons/ganon_boss.xml +- name: scenes/dungeons/ganon_demo + xml_path: assets/xml/scenes/dungeons/ganon_demo.xml +- name: scenes/dungeons/ganon_final + xml_path: assets/xml/scenes/dungeons/ganon_final.xml +- name: scenes/dungeons/ganon_sonogo + xml_path: assets/xml/scenes/dungeons/ganon_sonogo.xml +- name: scenes/dungeons/ganontika + xml_path: assets/xml/scenes/dungeons/ganontika.xml +- name: scenes/dungeons/ganontikasonogo + xml_path: assets/xml/scenes/dungeons/ganontikasonogo.xml +- name: scenes/dungeons/gerudoway + xml_path: assets/xml/scenes/dungeons/gerudoway.xml +- name: scenes/dungeons/HAKAdan + xml_path: assets/xml/scenes/dungeons/HAKAdan.xml +- name: scenes/dungeons/HAKAdan_bs + xml_path: assets/xml/scenes/dungeons/HAKAdan_bs.xml +- name: scenes/dungeons/HAKAdanCH + xml_path: assets/xml/scenes/dungeons/HAKAdanCH.xml +- name: scenes/dungeons/HIDAN + xml_path: assets/xml/scenes/dungeons/HIDAN.xml +- name: scenes/dungeons/ice_doukutu + xml_path: assets/xml/scenes/dungeons/ice_doukutu.xml +- name: scenes/dungeons/jyasinboss + xml_path: assets/xml/scenes/dungeons/jyasinboss.xml +- name: scenes/dungeons/jyasinzou + xml_path: assets/xml/scenes/dungeons/jyasinzou.xml +- name: scenes/dungeons/men + xml_path: assets/xml/scenes/dungeons/men.xml +- name: scenes/dungeons/MIZUsin + xml_path: assets/xml/scenes/dungeons/MIZUsin.xml +- name: scenes/dungeons/MIZUsin_bs + xml_path: assets/xml/scenes/dungeons/MIZUsin_bs.xml +- name: scenes/dungeons/moribossroom + xml_path: assets/xml/scenes/dungeons/moribossroom.xml +- name: scenes/dungeons/ydan + xml_path: assets/xml/scenes/dungeons/ydan.xml +- name: scenes/dungeons/ydan_boss + xml_path: assets/xml/scenes/dungeons/ydan_boss.xml +- name: scenes/indoors/bowling + xml_path: assets/xml/scenes/indoors/bowling.xml +- name: scenes/indoors/daiyousei_izumi + xml_path: assets/xml/scenes/indoors/daiyousei_izumi.xml +- name: scenes/indoors/hairal_niwa + xml_path: assets/xml/scenes/indoors/hairal_niwa.xml +- name: scenes/indoors/hairal_niwa_n + xml_path: assets/xml/scenes/indoors/hairal_niwa_n.xml +- name: scenes/indoors/hakasitarelay + xml_path: assets/xml/scenes/indoors/hakasitarelay.xml +- name: scenes/indoors/hut + xml_path: assets/xml/scenes/indoors/hut.xml +- name: scenes/indoors/hylia_labo + xml_path: assets/xml/scenes/indoors/hylia_labo.xml +- name: scenes/indoors/impa + xml_path: assets/xml/scenes/indoors/impa.xml +- name: scenes/indoors/kakariko + xml_path: assets/xml/scenes/indoors/kakariko.xml +- name: scenes/indoors/kenjyanoma + xml_path: assets/xml/scenes/indoors/kenjyanoma.xml +- name: scenes/indoors/kokiri_home + xml_path: assets/xml/scenes/indoors/kokiri_home.xml +- name: scenes/indoors/kokiri_home3 + xml_path: assets/xml/scenes/indoors/kokiri_home3.xml +- name: scenes/indoors/kokiri_home4 + xml_path: assets/xml/scenes/indoors/kokiri_home4.xml +- name: scenes/indoors/kokiri_home5 + xml_path: assets/xml/scenes/indoors/kokiri_home5.xml +- name: scenes/indoors/labo + xml_path: assets/xml/scenes/indoors/labo.xml +- name: scenes/indoors/link_home + xml_path: assets/xml/scenes/indoors/link_home.xml +- name: scenes/indoors/mahouya + xml_path: assets/xml/scenes/indoors/mahouya.xml +- name: scenes/indoors/malon_stable + xml_path: assets/xml/scenes/indoors/malon_stable.xml +- name: scenes/indoors/miharigoya + xml_path: assets/xml/scenes/indoors/miharigoya.xml +- name: scenes/indoors/nakaniwa + xml_path: assets/xml/scenes/indoors/nakaniwa.xml +- name: scenes/indoors/souko + xml_path: assets/xml/scenes/indoors/souko.xml +- name: scenes/indoors/syatekijyou + xml_path: assets/xml/scenes/indoors/syatekijyou.xml +- name: scenes/indoors/takaraya + xml_path: assets/xml/scenes/indoors/takaraya.xml +- name: scenes/indoors/tent + xml_path: assets/xml/scenes/indoors/tent.xml +- name: scenes/indoors/tokinoma + xml_path: assets/xml/scenes/indoors/tokinoma.xml +- name: scenes/indoors/yousei_izumi_tate + xml_path: assets/xml/scenes/indoors/yousei_izumi_tate.xml +- name: scenes/indoors/yousei_izumi_yoko + xml_path: assets/xml/scenes/indoors/yousei_izumi_yoko.xml +- name: scenes/misc/enrui + xml_path: assets/xml/scenes/misc/enrui.xml +- name: scenes/misc/entra + xml_path: assets/xml/scenes/misc/entra.xml +- name: scenes/misc/entra_n + xml_path: assets/xml/scenes/misc/entra_n.xml +- name: scenes/misc/hakaana + xml_path: assets/xml/scenes/misc/hakaana.xml +- name: scenes/misc/hakaana2 + xml_path: assets/xml/scenes/misc/hakaana2.xml +- name: scenes/misc/hakaana_ouke + xml_path: assets/xml/scenes/misc/hakaana_ouke.xml +- name: scenes/misc/hiral_demo + xml_path: assets/xml/scenes/misc/hiral_demo.xml +- name: scenes/misc/kakariko3 + xml_path: assets/xml/scenes/misc/kakariko3.xml +- name: scenes/misc/kakusiana + xml_path: assets/xml/scenes/misc/kakusiana.xml +- name: scenes/misc/kinsuta + xml_path: assets/xml/scenes/misc/kinsuta.xml +- name: scenes/misc/market_alley + xml_path: assets/xml/scenes/misc/market_alley.xml +- name: scenes/misc/market_alley_n + xml_path: assets/xml/scenes/misc/market_alley_n.xml +- name: scenes/misc/market_day + xml_path: assets/xml/scenes/misc/market_day.xml +- name: scenes/misc/market_night + xml_path: assets/xml/scenes/misc/market_night.xml +- name: scenes/misc/market_ruins + xml_path: assets/xml/scenes/misc/market_ruins.xml +- name: scenes/misc/shrine + xml_path: assets/xml/scenes/misc/shrine.xml +- name: scenes/misc/shrine_n + xml_path: assets/xml/scenes/misc/shrine_n.xml +- name: scenes/misc/shrine_r + xml_path: assets/xml/scenes/misc/shrine_r.xml +- name: scenes/misc/turibori + xml_path: assets/xml/scenes/misc/turibori.xml +- name: scenes/overworld/ganon_tou + xml_path: assets/xml/scenes/overworld/ganon_tou.xml +- name: scenes/overworld/spot00 + xml_path: assets/xml/scenes/overworld/spot00.xml +- name: scenes/overworld/spot01 + xml_path: assets/xml/scenes/overworld/spot01.xml +- name: scenes/overworld/spot02 + xml_path: assets/xml/scenes/overworld/spot02.xml +- name: scenes/overworld/spot03 + xml_path: assets/xml/scenes/overworld/spot03.xml +- name: scenes/overworld/spot04 + xml_path: assets/xml/scenes/overworld/spot04.xml +- name: scenes/overworld/spot05 + xml_path: assets/xml/scenes/overworld/spot05.xml +- name: scenes/overworld/spot06 + xml_path: assets/xml/scenes/overworld/spot06.xml +- name: scenes/overworld/spot07 + xml_path: assets/xml/scenes/overworld/spot07.xml +- name: scenes/overworld/spot08 + xml_path: assets/xml/scenes/overworld/spot08.xml +- name: scenes/overworld/spot09 + xml_path: assets/xml/scenes/overworld/spot09.xml +- name: scenes/overworld/spot10 + xml_path: assets/xml/scenes/overworld/spot10.xml +- name: scenes/overworld/spot11 + xml_path: assets/xml/scenes/overworld/spot11.xml +- name: scenes/overworld/spot12 + xml_path: assets/xml/scenes/overworld/spot12.xml +- name: scenes/overworld/spot13 + xml_path: assets/xml/scenes/overworld/spot13.xml +- name: scenes/overworld/spot15 + xml_path: assets/xml/scenes/overworld/spot15.xml +- name: scenes/overworld/spot16 + xml_path: assets/xml/scenes/overworld/spot16.xml +- name: scenes/overworld/spot17 + xml_path: assets/xml/scenes/overworld/spot17.xml +- name: scenes/overworld/spot18 + xml_path: assets/xml/scenes/overworld/spot18.xml +- name: scenes/overworld/spot20 + xml_path: assets/xml/scenes/overworld/spot20.xml +- name: scenes/shops/alley_shop + xml_path: assets/xml/scenes/shops/alley_shop.xml +- name: scenes/shops/drag + xml_path: assets/xml/scenes/shops/drag.xml +- name: scenes/shops/face_shop + xml_path: assets/xml/scenes/shops/face_shop.xml +- name: scenes/shops/golon + xml_path: assets/xml/scenes/shops/golon.xml +- name: scenes/shops/kokiri_shop + xml_path: assets/xml/scenes/shops/kokiri_shop.xml +- name: scenes/shops/night_shop + xml_path: assets/xml/scenes/shops/night_shop.xml +- name: scenes/shops/shop1 + xml_path: assets/xml/scenes/shops/shop1.xml +- name: scenes/shops/zoora + xml_path: assets/xml/scenes/shops/zoora.xml +- name: textures/backgrounds + xml_path: assets/xml/textures/backgrounds.xml +- name: textures/do_action_static + xml_path: assets/xml/textures/do_action_static.xml +- name: textures/icon_item_24_static + xml_path: assets/xml/textures/icon_item_24_static.xml +- name: textures/icon_item_dungeon_static + xml_path: assets/xml/textures/icon_item_dungeon_static.xml +- name: textures/icon_item_field_static + xml_path: assets/xml/textures/icon_item_field_static.xml +- name: textures/icon_item_gameover_static + xml_path: assets/xml/textures/icon_item_gameover_static.xml +- name: textures/icon_item_jpn_static + xml_path: assets/xml/textures/icon_item_jpn_static.xml +- name: textures/icon_item_nes_static + xml_path: assets/xml/textures/icon_item_nes_static.xml +- name: textures/icon_item_static + xml_path: assets/xml/textures/icon_item_static.xml +- name: textures/item_name_static + xml_path: assets/xml/textures/item_name_static.xml +- name: textures/kanji + xml_path: assets/xml/textures/kanji.xml +- name: textures/map_48x85_static + xml_path: assets/xml/textures/map_48x85_static.xml +- name: textures/map_grand_static + xml_path: assets/xml/textures/map_grand_static.xml +- name: textures/map_i_static + xml_path: assets/xml/textures/map_i_static.xml +- name: textures/map_name_static + xml_path: assets/xml/textures/map_name_static.xml +- name: textures/message_static + xml_path: assets/xml/textures/message_static.xml +- name: textures/message_texture_static + xml_path: assets/xml/textures/message_texture_static.xml +- name: textures/nes_font_static + xml_path: assets/xml/textures/nes_font_static.xml +- name: textures/nintendo_rogo_static + xml_path: assets/xml/textures/nintendo_rogo_static.xml +- name: textures/parameter_static + xml_path: assets/xml/textures/parameter_static.xml +- name: textures/place_title_cards + xml_path: assets/xml/textures/place_title_cards.xml +- name: textures/skyboxes + xml_path: assets/xml/textures/skyboxes.xml +- name: textures/title_static + xml_path: assets/xml/textures/title_static.xml diff --git a/baseroms/gc-us/segments.csv b/baseroms/gc-us/segments.csv new file mode 100644 index 000000000..857186741 --- /dev/null +++ b/baseroms/gc-us/segments.csv @@ -0,0 +1,1510 @@ +Name,VRAM start +makerom,80000000 +boot,80000460 +dmadata, +Audiobank, +Audioseq, +Audiotable, +kanji, +link_animetion, +icon_item_static, +icon_item_24_static, +icon_item_field_static, +icon_item_dungeon_static, +icon_item_gameover_static, +icon_item_jpn_static, +icon_item_nes_static, +item_name_static, +map_name_static, +do_action_static, +message_static, +message_texture_static, +nes_font_static, +jpn_message_data_static, +nes_message_data_static, +staff_message_data_static, +map_grand_static, +map_48x85_static, +map_i_static, +code,80010EE0 +ovl_title,80800000 +ovl_select,80800850 +ovl_opening,808034D0 +ovl_file_choose,80803630 +ovl_kaleido_scope,808135B0 +ovl_player_actor,8082FDA0 +ovl_map_mark_data,80856580 +ovl_En_Test,8085D0E0 +ovl_Arms_Hook,80862990 +ovl_Arrow_Fire,80863700 +ovl_Arrow_Ice,808655E0 +ovl_Arrow_Light,808674E0 +ovl_Bg_Bdan_Objects,808693F0 +ovl_Bg_Bdan_Switch,8086A6C0 +ovl_Bg_Bom_Guard,8086BAF0 +ovl_Bg_Bombwall,8086BD10 +ovl_Bg_Bowl_Wall,8086C5D0 +ovl_Bg_Breakwall,8086CF50 +ovl_Bg_Ddan_Jd,8086DDC0 +ovl_Bg_Ddan_Kd,8086E410 +ovl_Bg_Dodoago,8086ED00 +ovl_Bg_Dy_Yoseizo,8086FAB0 +ovl_Bg_Ganon_Otyuka,808728A0 +ovl_Bg_Gate_Shutter,80874EE0 +ovl_Bg_Gjyo_Bridge,80875370 +ovl_Bg_Gnd_Darkmeiro,80875860 +ovl_Bg_Gnd_Firemeiro,80876020 +ovl_Bg_Gnd_Iceblock,80876570 +ovl_Bg_Gnd_Nisekabe,80877670 +ovl_Bg_Gnd_Soulmeiro,808777E0 +ovl_Bg_Haka,80878040 +ovl_Bg_Haka_Gate,80878700 +ovl_Bg_Haka_Huta,808797A0 +ovl_Bg_Haka_Megane,8087A240 +ovl_Bg_Haka_MeganeBG,8087A640 +ovl_Bg_Haka_Sgami,8087AD00 +ovl_Bg_Haka_Ship,8087B920 +ovl_Bg_Haka_Trap,8087C370 +ovl_Bg_Haka_Tubo,8087D940 +ovl_Bg_Haka_Water,8087E360 +ovl_Bg_Haka_Zou,8087EB60 +ovl_Bg_Heavy_Block,8087FD50 +ovl_Bg_Hidan_Curtain,80881640 +ovl_Bg_Hidan_Dalm,808820E0 +ovl_Bg_Hidan_Firewall,80882930 +ovl_Bg_Hidan_Fslift,80883090 +ovl_Bg_Hidan_Fwbig,80883560 +ovl_Bg_Hidan_Hamstep,80884240 +ovl_Bg_Hidan_Hrock,808850F0 +ovl_Bg_Hidan_Kousi,80885920 +ovl_Bg_Hidan_Kowarerukabe,80885EB0 +ovl_Bg_Hidan_Rock,80886D90 +ovl_Bg_Hidan_Rsekizou,80887E90 +ovl_Bg_Hidan_Sekizou,80888A70 +ovl_Bg_Hidan_Sima,80889EC0 +ovl_Bg_Hidan_Syoku,8088ADC0 +ovl_Bg_Ice_Objects,8088B220 +ovl_Bg_Ice_Shelter,8088C160 +ovl_Bg_Ice_Shutter,8088D3A0 +ovl_Bg_Ice_Turara,8088D810 +ovl_Bg_Ingate,8088E040 +ovl_Bg_Jya_1flift,8088E3D0 +ovl_Bg_Jya_Amishutter,8088EA60 +ovl_Bg_Jya_Bigmirror,8088EDF0 +ovl_Bg_Jya_Block,8088F640 +ovl_Bg_Jya_Bombchuiwa,8088F8B0 +ovl_Bg_Jya_Bombiwa,808903F0 +ovl_Bg_Jya_Cobra,808909B0 +ovl_Bg_Jya_Goroiwa,808926F0 +ovl_Bg_Jya_Haheniron,80892E70 +ovl_Bg_Jya_Ironobj,80893660 +ovl_Bg_Jya_Kanaami,80894410 +ovl_Bg_Jya_Lift,808947C0 +ovl_Bg_Jya_Megami,80894D10 +ovl_Bg_Jya_Zurerukabe,80895F00 +ovl_Bg_Menkuri_Eye,808965B0 +ovl_Bg_Menkuri_Kaiten,80896A50 +ovl_Bg_Menkuri_Nisekabe,80896BE0 +ovl_Bg_Mizu_Bwall,80896D30 +ovl_Bg_Mizu_Movebg,80898200 +ovl_Bg_Mizu_Shutter,80899390 +ovl_Bg_Mizu_Uzu,80899B90 +ovl_Bg_Mizu_Water,80899D60 +ovl_Bg_Mjin,8089AA30 +ovl_Bg_Mori_Bigst,8089AE20 +ovl_Bg_Mori_Elevator,8089B750 +ovl_Bg_Mori_Hashigo,8089C240 +ovl_Bg_Mori_Hashira4,8089CB00 +ovl_Bg_Mori_Hineri,8089D090 +ovl_Bg_Mori_Idomizu,8089DDE0 +ovl_Bg_Mori_Kaitenkabe,8089E420 +ovl_Bg_Mori_Rakkatenjo,8089EA90 +ovl_Bg_Po_Event,8089F410 +ovl_Bg_Po_Syokudai,808A1250 +ovl_Bg_Pushbox,808A1BC0 +ovl_Bg_Relay_Objects,808A1EC0 +ovl_Bg_Spot00_Break,808A2670 +ovl_Bg_Spot00_Hanebasi,808A2810 +ovl_Bg_Spot01_Fusya,808A3920 +ovl_Bg_Spot01_Idohashira,808A3BC0 +ovl_Bg_Spot01_Idomizu,808A47C0 +ovl_Bg_Spot01_Idosoko,808A4AE0 +ovl_Bg_Spot01_Objects2,808A4CF0 +ovl_Bg_Spot02_Objects,808A51B0 +ovl_Bg_Spot03_Taki,808A6510 +ovl_Bg_Spot05_Soko,808A6E30 +ovl_Bg_Spot06_Objects,808A7150 +ovl_Bg_Spot07_Taki,808A8550 +ovl_Bg_Spot08_Bakudankabe,808A8B40 +ovl_Bg_Spot08_Iceblock,808A91E0 +ovl_Bg_Spot09_Obj,808AA220 +ovl_Bg_Spot11_Bakudankabe,808AA740 +ovl_Bg_Spot11_Oasis,808AAD80 +ovl_Bg_Spot12_Gate,808AB4B0 +ovl_Bg_Spot12_Saku,808AB8C0 +ovl_Bg_Spot15_Rrbox,808ABD80 +ovl_Bg_Spot15_Saku,808ACB60 +ovl_Bg_Spot16_Bombstone,808ACEA0 +ovl_Bg_Spot16_Doughnut,808AE3F0 +ovl_Bg_Spot17_Bakudankabe,808AE9B0 +ovl_Bg_Spot17_Funen,808AF0A0 +ovl_Bg_Spot18_Basket,808AF2F0 +ovl_Bg_Spot18_Futa,808B02E0 +ovl_Bg_Spot18_Obj,808B0480 +ovl_Bg_Spot18_Shutter,808B0D50 +ovl_Bg_Sst_Floor,808B12A0 +ovl_Bg_Toki_Hikari,808B1800 +ovl_Bg_Toki_Swd,808B25A0 +ovl_Bg_Treemouth,808B3BF0 +ovl_Bg_Umajump,808B5250 +ovl_Bg_Vb_Sima,808B53E0 +ovl_Bg_Ydan_Hasi,808B5B00 +ovl_Bg_Ydan_Maruta,808B62B0 +ovl_Bg_Ydan_Sp,808B6990 +ovl_Bg_Zg,808B80B0 +ovl_Boss_Dodongo,808B8500 +ovl_Boss_Fd,808C2000 +ovl_Boss_Fd2,808C9360 +ovl_Boss_Ganon,808CD090 +ovl_Boss_Ganon2,808F2EC0 +ovl_Boss_Ganondrof,80905D30 +ovl_Boss_Goma,8090AAC0 +ovl_Boss_Mo,80910A60 +ovl_Boss_Sst,80921040 +ovl_Boss_Tw,8092D610 +ovl_Boss_Va,809431E0 +ovl_Demo_6K,8095A470 +ovl_Demo_Du,8095D1D0 +ovl_Demo_Ec,809609B0 +ovl_Demo_Effect,80964210 +ovl_Demo_Ext,80969DB0 +ovl_Demo_Geff,8096A700 +ovl_Demo_Gj,8096AF20 +ovl_Demo_Go,8096EBD0 +ovl_Demo_Gt,8096F920 +ovl_Demo_Ik,80974F30 +ovl_Demo_Im,80976440 +ovl_Demo_Kankyo,8097A3B0 +ovl_Demo_Kekkai,8097E0A0 +ovl_Demo_Sa,8097F390 +ovl_Demo_Shd,80981EB0 +ovl_Demo_Tre_Lgt,809842C0 +ovl_Door_Ana,809849D0 +ovl_Door_Gerudo,80985040 +ovl_Door_Killer,80985630 +ovl_Door_Shutter,80986BA0 +ovl_Door_Toki,80988E60 +ovl_Door_Warp1,80988FC0 +ovl_Efc_Erupc,8098D2D0 +ovl_Eff_Dust,8098DDC0 +ovl_Effect_Ss_Blast,8098F190 +ovl_Effect_Ss_Bomb,8098F520 +ovl_Effect_Ss_Bomb2,8098F950 +ovl_Effect_Ss_Bubble,80990250 +ovl_Effect_Ss_D_Fire,809906D0 +ovl_Effect_Ss_Dead_Db,80990BC0 +ovl_Effect_Ss_Dead_Dd,809910A0 +ovl_Effect_Ss_Dead_Ds,80991630 +ovl_Effect_Ss_Dead_Sound,80991AB0 +ovl_Effect_Ss_Dt_Bubble,80991BF0 +ovl_Effect_Ss_Dust,80992180 +ovl_Effect_Ss_En_Fire,809929C0 +ovl_Effect_Ss_En_Ice,80993110 +ovl_Effect_Ss_Extra,809939D0 +ovl_Effect_Ss_Fcircle,80993D90 +ovl_Effect_Ss_Fhg_Flash,80994240 +ovl_Effect_Ss_Fire_Tail,809951C0 +ovl_Effect_Ss_G_Fire,809958C0 +ovl_Effect_Ss_G_Magma,80995B50 +ovl_Effect_Ss_G_Magma2,80995DB0 +ovl_Effect_Ss_G_Ripple,809962C0 +ovl_Effect_Ss_G_Spk,80996820 +ovl_Effect_Ss_G_Splash,80996DD0 +ovl_Effect_Ss_Hahen,80997280 +ovl_Effect_Ss_HitMark,809978C0 +ovl_Effect_Ss_Ice_Piece,80997E10 +ovl_Effect_Ss_Ice_Smoke,80998250 +ovl_Effect_Ss_K_Fire,80998730 +ovl_Effect_Ss_Kakera,80998B70 +ovl_Effect_Ss_KiraKira,80999C00 +ovl_Effect_Ss_Lightning,8099A270 +ovl_Effect_Ss_Sibuki,8099A940 +ovl_Effect_Ss_Sibuki2,8099B010 +ovl_Effect_Ss_Solder_Srch_Ball,8099B340 +ovl_Effect_Ss_Stick,8099B4F0 +ovl_Effect_Ss_Stone1,8099B890 +ovl_Elf_Msg,8099BC10 +ovl_Elf_Msg2,8099C200 +ovl_En_Am,8099C670 +ovl_En_Ani,8099EA70 +ovl_En_Anubice,8099F7E0 +ovl_En_Anubice_Fire,809A0A90 +ovl_En_Anubice_Tag,809A1850 +ovl_En_Arow_Trap,809A1B20 +ovl_En_Arrow,809A1C70 +ovl_En_Attack_Niw,809A3370 +ovl_En_Ba,809A45D0 +ovl_En_Bb,809A64A0 +ovl_En_Bdfire,809AA180 +ovl_En_Bigokuta,809AAD20 +ovl_En_Bili,809AD820 +ovl_En_Bird,809AFAF0 +ovl_En_Blkobj,809AFFB0 +ovl_En_Bom,809B0510 +ovl_En_Bom_Bowl_Man,809B13E0 +ovl_En_Bom_Bowl_Pit,809B2920 +ovl_En_Bom_Chu,809B3290 +ovl_En_Bombf,809B4930 +ovl_En_Boom,809B5DC0 +ovl_En_Box,809B6690 +ovl_En_Brob,809B81F0 +ovl_En_Bubble,809B92E0 +ovl_En_Butte,809BA700 +ovl_En_Bw,809BBCD0 +ovl_En_Bx,809BF060 +ovl_En_Changer,809BFB60 +ovl_En_Clear_Tag,809C0540 +ovl_En_Cow,809CBAE0 +ovl_En_Crow,809CCF40 +ovl_En_Cs,809CE5E0 +ovl_En_Daiku,809CF810 +ovl_En_Daiku_Kakariko,809D0F50 +ovl_En_Dekubaba,809D2310 +ovl_En_Dekunuts,809D5DC0 +ovl_En_Dh,809D75C0 +ovl_En_Dha,809D90A0 +ovl_En_Diving_Game,809DA0A0 +ovl_En_Dns,809DBA50 +ovl_En_Dnt_Demo,809DCDE0 +ovl_En_Dnt_Jiji,809DDB00 +ovl_En_Dnt_Nomal,809DF020 +ovl_En_Dodojr,809E1E20 +ovl_En_Dodongo,809E3CC0 +ovl_En_Dog,809E6A60 +ovl_En_Door,809E7C10 +ovl_En_Ds,809E8A50 +ovl_En_Du,809E9670 +ovl_En_Dy_Extra,809EB100 +ovl_En_Eg,809EB6A0 +ovl_En_Eiyer,809EB850 +ovl_En_Elf,809ED4B0 +ovl_En_Encount1,809F1E70 +ovl_En_Encount2,809F29D0 +ovl_En_Ex_Item,809F3C00 +ovl_En_Ex_Ruppy,809F4D80 +ovl_En_Fd,809F5E40 +ovl_En_Fd_Fire,809F8AE0 +ovl_En_Fhg_Fire,809F97F0 +ovl_En_Fire_Rock,809FBE90 +ovl_En_Firefly,809FCFA0 +ovl_En_Fish,809FF110 +ovl_En_Floormas,80A01220 +ovl_En_Fr,80A04600 +ovl_En_Fu,80A07090 +ovl_En_Fw,80A07DE0 +ovl_En_Fz,80A095A0 +ovl_En_G_Switch,80A0B5B0 +ovl_En_Ganon_Mant,80A0CDD0 +ovl_En_Ganon_Organ,80A11000 +ovl_En_Gb,80A18040 +ovl_En_Ge1,80A19770 +ovl_En_Ge2,80A1B7A0 +ovl_En_Ge3,80A1D140 +ovl_En_GeldB,80A1DD80 +ovl_En_GirlA,80A23130 +ovl_En_Gm,80A25A50 +ovl_En_Go,80A26780 +ovl_En_Go2,80A2ADC0 +ovl_En_Goma,80A30E00 +ovl_En_Goroiwa,80A33AB0 +ovl_En_Gs,80A35E70 +ovl_En_Guest,80A37CE0 +ovl_En_Hata,80A38680 +ovl_En_Heishi1,80A38C10 +ovl_En_Heishi2,80A3A120 +ovl_En_Heishi3,80A3C320 +ovl_En_Heishi4,80A3CCF0 +ovl_En_Hintnuts,80A3DBF0 +ovl_En_Holl,80A3F620 +ovl_En_Honotrap,80A405F0 +ovl_En_Horse,80A41B50 +ovl_En_Horse_Game_Check,80A4DDB0 +ovl_En_Horse_Ganon,80A4EE80 +ovl_En_Horse_Link_Child,80A4FC00 +ovl_En_Horse_Normal,80A51A00 +ovl_En_Horse_Zelda,80A54020 +ovl_En_Hs,80A54B10 +ovl_En_Hs2,80A556B0 +ovl_En_Hy,80A55C90 +ovl_En_Ice_Hono,80A595D0 +ovl_En_Ik,80A5A7C0 +ovl_En_In,80A5EE20 +ovl_En_Insect,80A61BC0 +ovl_En_Ishi,80A640E0 +ovl_En_It,80A6D230 +ovl_En_Jj,80A6D3C0 +ovl_En_Js,80A6E990 +ovl_En_Jsjutan,80A6F360 +ovl_En_Kakasi,80A74C90 +ovl_En_Kakasi2,80A759D0 +ovl_En_Kakasi3,80A760F0 +ovl_En_Kanban,80A771D0 +ovl_En_Karebaba,80A7A320 +ovl_En_Ko,80A7BC10 +ovl_En_Kusa,80A7FD50 +ovl_En_Kz,80A81230 +ovl_En_Light,80A827D0 +ovl_En_Lightbox,80A835D0 +ovl_En_M_Fire1,80A83A50 +ovl_En_M_Thunder,80A83BF0 +ovl_En_Ma1,80A851F0 +ovl_En_Ma2,80A864D0 +ovl_En_Ma3,80A87530 +ovl_En_Mag,80A884E0 +ovl_En_Mb,80A8AE10 +ovl_En_Md,80A8F040 +ovl_En_Mk,80A916B0 +ovl_En_Mm,80A92540 +ovl_En_Mm2,80A93BA0 +ovl_En_Ms,80A94960 +ovl_En_Mu,80A95050 +ovl_En_Nb,80A95970 +ovl_En_Niw,80A99F40 +ovl_En_Niw_Girl,80A9D270 +ovl_En_Niw_Lady,80A9DD40 +ovl_En_Nutsball,80A9F640 +ovl_En_Nwc,80A9FC60 +ovl_En_Ny,80AA0680 +ovl_En_OE2,80AA1FC0 +ovl_En_Okarina_Effect,80AA20A0 +ovl_En_Okarina_Tag,80AA2460 +ovl_En_Okuta,80AA3960 +ovl_En_Ossan,80AA5F40 +ovl_En_Owl,80AAC520 +ovl_En_Part,80AB00C0 +ovl_En_Peehat,80AB1720 +ovl_En_Po_Desert,80AB4E20 +ovl_En_Po_Field,80AB5BE0 +ovl_En_Po_Relay,80AB9670 +ovl_En_Po_Sisters,80ABAD80 +ovl_En_Poh,80ABFA70 +ovl_En_Pu_box,80AC3C60 +ovl_En_Rd,80AC3FA0 +ovl_En_Reeba,80AC6860 +ovl_En_River_Sound,80AC82D0 +ovl_En_Rl,80AC8C60 +ovl_En_Rr,80AC9B40 +ovl_En_Ru1,80ACC070 +ovl_En_Ru2,80AD3710 +ovl_En_Sa,80AD6490 +ovl_En_Sb,80AD8700 +ovl_En_Scene_Change,80AD9B40 +ovl_En_Sda,80AD9C70 +ovl_En_Shopnuts,80ADB360 +ovl_En_Si,80ADC270 +ovl_En_Siofuki,80ADC770 +ovl_En_Skb,80ADD520 +ovl_En_Skj,80ADEE10 +ovl_En_Skjneedle,80AE2760 +ovl_En_Ssh,80AE2A70 +ovl_En_St,80AE5060 +ovl_En_Sth,80AE7CD0 +ovl_En_Stream,80AEBD90 +ovl_En_Sw,80AEC320 +ovl_En_Syateki_Itm,80AEFB10 +ovl_En_Syateki_Man,80AF08B0 +ovl_En_Syateki_Niw,80AF1670 +ovl_En_Ta,80AF3700 +ovl_En_Takara_Man,80AF70C0 +ovl_En_Tana,80AF7980 +ovl_En_Tg,80AF7C30 +ovl_En_Tite,80AF8310 +ovl_En_Tk,80AFB0B0 +ovl_En_Torch,80AFCEE0 +ovl_En_Torch2,80AFCFD0 +ovl_En_Toryo,80AFF770 +ovl_En_Tp,80B00400 +ovl_En_Tr,80B02270 +ovl_En_Trap,80B03B70 +ovl_En_Tubo_Trap,80B04E10 +ovl_En_Vali,80B05AB0 +ovl_En_Vase,80B08170 +ovl_En_Vb_Ball,80B08270 +ovl_En_Viewer,80B09420 +ovl_En_Vm,80B0C2E0 +ovl_En_Wall_Tubo,80B0DBA0 +ovl_En_Wallmas,80B0E090 +ovl_En_Weather_Tag,80B0FAA0 +ovl_En_Weiyer,80B10990 +ovl_En_Wf,80B12390 +ovl_En_Wonder_Item,80B166A0 +ovl_En_Wonder_Talk,80B173D0 +ovl_En_Wonder_Talk2,80B17A60 +ovl_En_Wood02,80B18100 +ovl_En_Xc,80B192E0 +ovl_En_Yabusame_Mark,80B1FA70 +ovl_En_Yukabyun,80B20140 +ovl_En_Zf,80B20750 +ovl_En_Zl1,80B27240 +ovl_En_Zl2,80B2B050 +ovl_En_Zl3,80B2F750 +ovl_En_Zl4,80B375A0 +ovl_En_Zo,80B3BFD0 +ovl_En_fHG,80B3E590 +ovl_End_Title,80B40EC0 +ovl_Fishing,80B44FE0 +ovl_Item_B_Heart,80B5FB80 +ovl_Item_Etcetera,80B5FF90 +ovl_Item_Inbox,80B60860 +ovl_Item_Ocarina,80B609C0 +ovl_Item_Shield,80B61190 +ovl_Magic_Dark,80B61BA0 +ovl_Magic_Fire,80B633F0 +ovl_Magic_Wind,80B656F0 +ovl_Mir_Ray,80B673F0 +ovl_Obj_Bean,80B68CA0 +ovl_Obj_Blockstop,80B6B430 +ovl_Obj_Bombiwa,80B6B5D0 +ovl_Obj_Comb,80B6BB40 +ovl_Obj_Dekujr,80B6C3A0 +ovl_Obj_Elevator,80B6C9E0 +ovl_Obj_Hamishi,80B6CDA0 +ovl_Obj_Hana,80B6D5F0 +ovl_Obj_Hsblock,80B6D900 +ovl_Obj_Ice_Poly,80B6DED0 +ovl_Obj_Kibako,80B6E880 +ovl_Obj_Kibako2,80B6F580 +ovl_Obj_Lift,80B6FC40 +ovl_Obj_Lightswitch,80B70660 +ovl_Obj_Makekinsuta,80B71A90 +ovl_Obj_Makeoshihiki,80B71BE0 +ovl_Obj_Mure,80B72070 +ovl_Obj_Mure2,80B73080 +ovl_Obj_Mure3,80B73AA0 +ovl_Obj_Oshihiki,80B74270 +ovl_Obj_Roomtimer,80B75D20 +ovl_Obj_Switch,80B75F70 +ovl_Obj_Syokudai,80B77D50 +ovl_Obj_Timeblock,80B789A0 +ovl_Obj_Tsubo,80B795F0 +ovl_Obj_Warp2block,80B7A5E0 +ovl_Object_Kankyo,80B7B110 +ovl_Oceff_Spot,80B7E390 +ovl_Oceff_Storm,80B7F2C0 +ovl_Oceff_Wipe,80B80E70 +ovl_Oceff_Wipe2,80B81BF0 +ovl_Oceff_Wipe3,80B83360 +ovl_Oceff_Wipe4,80B84AB0 +ovl_Shot_Sun,80B85A90 +gameplay_keep, +gameplay_field_keep, +gameplay_dangeon_keep, +gameplay_object_exchange_static, +object_link_boy, +object_link_child, +object_box, +object_human, +object_okuta, +object_poh, +object_wallmaster, +object_dy_obj, +object_firefly, +object_dodongo, +object_fire, +object_niw, +object_tite, +object_reeba, +object_peehat, +object_kingdodongo, +object_horse, +object_zf, +object_goma, +object_zl1, +object_gol, +object_bubble, +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_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_mori_hineri1a, +object_mori_hineri2, +object_mori_hineri2a, +object_mori_objects, +object_mori_tex, +object_spot08_obj, +object_warp2, +object_hata, +object_bird, +object_wood02, +object_lightbox, +object_pu_box, +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_medal, +object_bdan_objects, +object_sd, +object_rd, +object_po_sisters, +object_heavy_object, +object_gndd, +object_fd, +object_du, +object_fw, +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, +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, +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_toryo, +object_daiku, +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_spot01_objects2, +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_po_field, +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_po_composer, +object_mu, +object_wf, +object_skb, +object_gj, +object_geff, +object_haka_door, +object_gs, +object_ps, +object_bwall, +object_crow, +object_cow, +object_cob, +object_gi_sword_1, +object_door_killer, +object_ouke_haka, +object_timeblock, +object_zl4, +g_pn_01, +g_pn_02, +g_pn_03, +g_pn_04, +g_pn_05, +g_pn_06, +g_pn_07, +g_pn_08, +g_pn_09, +g_pn_10, +g_pn_11, +g_pn_12, +g_pn_13, +g_pn_14, +g_pn_15, +g_pn_16, +g_pn_17, +g_pn_18, +g_pn_19, +g_pn_20, +g_pn_21, +g_pn_22, +g_pn_23, +g_pn_24, +g_pn_25, +g_pn_26, +g_pn_27, +g_pn_28, +g_pn_29, +g_pn_30, +g_pn_31, +g_pn_32, +g_pn_33, +g_pn_34, +g_pn_35, +g_pn_36, +g_pn_37, +g_pn_38, +g_pn_39, +g_pn_40, +g_pn_41, +g_pn_42, +g_pn_43, +g_pn_44, +g_pn_45, +g_pn_46, +g_pn_47, +g_pn_48, +g_pn_49, +g_pn_50, +g_pn_51, +g_pn_52, +g_pn_53, +g_pn_54, +g_pn_55, +g_pn_56, +g_pn_57, +z_select_static, +nintendo_rogo_static, +title_static, +parameter_static, +vr_fine0_static, +vr_fine0_pal_static, +vr_fine1_static, +vr_fine1_pal_static, +vr_fine2_static, +vr_fine2_pal_static, +vr_fine3_static, +vr_fine3_pal_static, +vr_cloud0_static, +vr_cloud0_pal_static, +vr_cloud1_static, +vr_cloud1_pal_static, +vr_cloud2_static, +vr_cloud2_pal_static, +vr_cloud3_static, +vr_cloud3_pal_static, +vr_holy0_static, +vr_holy0_pal_static, +vr_holy1_static, +vr_holy1_pal_static, +vr_MDVR_static, +vr_MDVR_pal_static, +vr_MNVR_static, +vr_MNVR_pal_static, +vr_RUVR_static, +vr_RUVR_pal_static, +vr_LHVR_static, +vr_LHVR_pal_static, +vr_KHVR_static, +vr_KHVR_pal_static, +vr_K3VR_static, +vr_K3VR_pal_static, +vr_K4VR_static, +vr_K4VR_pal_static, +vr_K5VR_static, +vr_K5VR_pal_static, +vr_SP1a_static, +vr_SP1a_pal_static, +vr_MLVR_static, +vr_MLVR_pal_static, +vr_KKRVR_static, +vr_KKRVR_pal_static, +vr_KR3VR_static, +vr_KR3VR_pal_static, +vr_IPVR_static, +vr_IPVR_pal_static, +vr_KSVR_static, +vr_KSVR_pal_static, +vr_GLVR_static, +vr_GLVR_pal_static, +vr_ZRVR_static, +vr_ZRVR_pal_static, +vr_DGVR_static, +vr_DGVR_pal_static, +vr_ALVR_static, +vr_ALVR_pal_static, +vr_NSVR_static, +vr_NSVR_pal_static, +vr_LBVR_static, +vr_LBVR_pal_static, +vr_TTVR_static, +vr_TTVR_pal_static, +vr_FCVR_static, +vr_FCVR_pal_static, +elf_message_field, +elf_message_ydan, +ydan_scene, +ydan_room_0, +ydan_room_1, +ydan_room_2, +ydan_room_3, +ydan_room_4, +ydan_room_5, +ydan_room_6, +ydan_room_7, +ydan_room_8, +ydan_room_9, +ydan_room_10, +ydan_room_11, +ddan_scene, +ddan_room_0, +ddan_room_1, +ddan_room_2, +ddan_room_3, +ddan_room_4, +ddan_room_5, +ddan_room_6, +ddan_room_7, +ddan_room_8, +ddan_room_9, +ddan_room_10, +ddan_room_11, +ddan_room_12, +ddan_room_13, +ddan_room_14, +ddan_room_15, +ddan_room_16, +bdan_scene, +bdan_room_0, +bdan_room_1, +bdan_room_2, +bdan_room_3, +bdan_room_4, +bdan_room_5, +bdan_room_6, +bdan_room_7, +bdan_room_8, +bdan_room_9, +bdan_room_10, +bdan_room_11, +bdan_room_12, +bdan_room_13, +bdan_room_14, +bdan_room_15, +Bmori1_scene, +Bmori1_room_0, +Bmori1_room_1, +Bmori1_room_2, +Bmori1_room_3, +Bmori1_room_4, +Bmori1_room_5, +Bmori1_room_6, +Bmori1_room_7, +Bmori1_room_8, +Bmori1_room_9, +Bmori1_room_10, +Bmori1_room_11, +Bmori1_room_12, +Bmori1_room_13, +Bmori1_room_14, +Bmori1_room_15, +Bmori1_room_16, +Bmori1_room_17, +Bmori1_room_18, +Bmori1_room_19, +Bmori1_room_20, +Bmori1_room_21, +Bmori1_room_22, +HIDAN_scene, +HIDAN_room_0, +HIDAN_room_1, +HIDAN_room_2, +HIDAN_room_3, +HIDAN_room_4, +HIDAN_room_5, +HIDAN_room_6, +HIDAN_room_7, +HIDAN_room_8, +HIDAN_room_9, +HIDAN_room_10, +HIDAN_room_11, +HIDAN_room_12, +HIDAN_room_13, +HIDAN_room_14, +HIDAN_room_15, +HIDAN_room_16, +HIDAN_room_17, +HIDAN_room_18, +HIDAN_room_19, +HIDAN_room_20, +HIDAN_room_21, +HIDAN_room_22, +HIDAN_room_23, +HIDAN_room_24, +HIDAN_room_25, +HIDAN_room_26, +MIZUsin_scene, +MIZUsin_room_0, +MIZUsin_room_1, +MIZUsin_room_2, +MIZUsin_room_3, +MIZUsin_room_4, +MIZUsin_room_5, +MIZUsin_room_6, +MIZUsin_room_7, +MIZUsin_room_8, +MIZUsin_room_9, +MIZUsin_room_10, +MIZUsin_room_11, +MIZUsin_room_12, +MIZUsin_room_13, +MIZUsin_room_14, +MIZUsin_room_15, +MIZUsin_room_16, +MIZUsin_room_17, +MIZUsin_room_18, +MIZUsin_room_19, +MIZUsin_room_20, +MIZUsin_room_21, +MIZUsin_room_22, +jyasinzou_scene, +jyasinzou_room_0, +jyasinzou_room_1, +jyasinzou_room_2, +jyasinzou_room_3, +jyasinzou_room_4, +jyasinzou_room_5, +jyasinzou_room_6, +jyasinzou_room_7, +jyasinzou_room_8, +jyasinzou_room_9, +jyasinzou_room_10, +jyasinzou_room_11, +jyasinzou_room_12, +jyasinzou_room_13, +jyasinzou_room_14, +jyasinzou_room_15, +jyasinzou_room_16, +jyasinzou_room_17, +jyasinzou_room_18, +jyasinzou_room_19, +jyasinzou_room_20, +jyasinzou_room_21, +jyasinzou_room_22, +jyasinzou_room_23, +jyasinzou_room_24, +jyasinzou_room_25, +jyasinzou_room_26, +jyasinzou_room_27, +jyasinzou_room_28, +HAKAdan_scene, +HAKAdan_room_0, +HAKAdan_room_1, +HAKAdan_room_2, +HAKAdan_room_3, +HAKAdan_room_4, +HAKAdan_room_5, +HAKAdan_room_6, +HAKAdan_room_7, +HAKAdan_room_8, +HAKAdan_room_9, +HAKAdan_room_10, +HAKAdan_room_11, +HAKAdan_room_12, +HAKAdan_room_13, +HAKAdan_room_14, +HAKAdan_room_15, +HAKAdan_room_16, +HAKAdan_room_17, +HAKAdan_room_18, +HAKAdan_room_19, +HAKAdan_room_20, +HAKAdan_room_21, +HAKAdan_room_22, +HAKAdanCH_scene, +HAKAdanCH_room_0, +HAKAdanCH_room_1, +HAKAdanCH_room_2, +HAKAdanCH_room_3, +HAKAdanCH_room_4, +HAKAdanCH_room_5, +HAKAdanCH_room_6, +ice_doukutu_scene, +ice_doukutu_room_0, +ice_doukutu_room_1, +ice_doukutu_room_2, +ice_doukutu_room_3, +ice_doukutu_room_4, +ice_doukutu_room_5, +ice_doukutu_room_6, +ice_doukutu_room_7, +ice_doukutu_room_8, +ice_doukutu_room_9, +ice_doukutu_room_10, +ice_doukutu_room_11, +men_scene, +men_room_0, +men_room_1, +men_room_2, +men_room_3, +men_room_4, +men_room_5, +men_room_6, +men_room_7, +men_room_8, +men_room_9, +men_room_10, +ganontika_scene, +ganontika_room_0, +ganontika_room_1, +ganontika_room_2, +ganontika_room_3, +ganontika_room_4, +ganontika_room_5, +ganontika_room_6, +ganontika_room_7, +ganontika_room_8, +ganontika_room_9, +ganontika_room_10, +ganontika_room_11, +ganontika_room_12, +ganontika_room_13, +ganontika_room_14, +ganontika_room_15, +ganontika_room_16, +ganontika_room_17, +ganontika_room_18, +ganontika_room_19, +spot00_scene, +spot00_room_0, +spot01_scene, +spot01_room_0, +spot02_scene, +spot02_room_0, +spot02_room_1, +spot03_scene, +spot03_room_0, +spot03_room_1, +spot04_scene, +spot04_room_0, +spot04_room_1, +spot04_room_2, +spot05_scene, +spot05_room_0, +spot06_scene, +spot06_room_0, +spot07_scene, +spot07_room_0, +spot07_room_1, +spot08_scene, +spot08_room_0, +spot09_scene, +spot09_room_0, +spot10_scene, +spot10_room_0, +spot10_room_1, +spot10_room_2, +spot10_room_3, +spot10_room_4, +spot10_room_5, +spot10_room_6, +spot10_room_7, +spot10_room_8, +spot10_room_9, +spot11_scene, +spot11_room_0, +spot12_scene, +spot12_room_0, +spot12_room_1, +spot13_scene, +spot13_room_0, +spot13_room_1, +spot15_scene, +spot15_room_0, +spot16_scene, +spot16_room_0, +spot17_scene, +spot17_room_0, +spot17_room_1, +spot18_scene, +spot18_room_0, +spot18_room_1, +spot18_room_2, +spot18_room_3, +market_day_scene, +market_day_room_0, +market_night_scene, +market_night_room_0, +kenjyanoma_scene, +kenjyanoma_room_0, +tokinoma_scene, +tokinoma_room_0, +tokinoma_room_1, +link_home_scene, +link_home_room_0, +kokiri_shop_scene, +kokiri_shop_room_0, +kokiri_home_scene, +kokiri_home_room_0, +kakusiana_scene, +kakusiana_room_0, +kakusiana_room_1, +kakusiana_room_2, +kakusiana_room_3, +kakusiana_room_4, +kakusiana_room_5, +kakusiana_room_6, +kakusiana_room_7, +kakusiana_room_8, +kakusiana_room_9, +kakusiana_room_10, +kakusiana_room_11, +kakusiana_room_12, +kakusiana_room_13, +entra_scene, +entra_room_0, +moribossroom_scene, +moribossroom_room_0, +moribossroom_room_1, +syatekijyou_scene, +syatekijyou_room_0, +shop1_scene, +shop1_room_0, +hairal_niwa_scene, +hairal_niwa_room_0, +ganon_tou_scene, +ganon_tou_room_0, +market_alley_scene, +market_alley_room_0, +spot20_scene, +spot20_room_0, +market_ruins_scene, +market_ruins_room_0, +entra_n_scene, +entra_n_room_0, +enrui_scene, +enrui_room_0, +market_alley_n_scene, +market_alley_n_room_0, +hiral_demo_scene, +hiral_demo_room_0, +kokiri_home3_scene, +kokiri_home3_room_0, +malon_stable_scene, +malon_stable_room_0, +kakariko_scene, +kakariko_room_0, +bdan_boss_scene, +bdan_boss_room_0, +bdan_boss_room_1, +FIRE_bs_scene, +FIRE_bs_room_0, +FIRE_bs_room_1, +hut_scene, +hut_room_0, +daiyousei_izumi_scene, +daiyousei_izumi_room_0, +hakaana_scene, +hakaana_room_0, +yousei_izumi_tate_scene, +yousei_izumi_tate_room_0, +yousei_izumi_yoko_scene, +yousei_izumi_yoko_room_0, +golon_scene, +golon_room_0, +zoora_scene, +zoora_room_0, +drag_scene, +drag_room_0, +alley_shop_scene, +alley_shop_room_0, +night_shop_scene, +night_shop_room_0, +impa_scene, +impa_room_0, +labo_scene, +labo_room_0, +tent_scene, +tent_room_0, +nakaniwa_scene, +nakaniwa_room_0, +ddan_boss_scene, +ddan_boss_room_0, +ddan_boss_room_1, +ydan_boss_scene, +ydan_boss_room_0, +ydan_boss_room_1, +HAKAdan_bs_scene, +HAKAdan_bs_room_0, +HAKAdan_bs_room_1, +MIZUsin_bs_scene, +MIZUsin_bs_room_0, +MIZUsin_bs_room_1, +ganon_scene, +ganon_room_0, +ganon_room_1, +ganon_room_2, +ganon_room_3, +ganon_room_4, +ganon_room_5, +ganon_room_6, +ganon_room_7, +ganon_room_8, +ganon_room_9, +ganon_boss_scene, +ganon_boss_room_0, +jyasinboss_scene, +jyasinboss_room_0, +jyasinboss_room_1, +jyasinboss_room_2, +jyasinboss_room_3, +kokiri_home4_scene, +kokiri_home4_room_0, +kokiri_home5_scene, +kokiri_home5_room_0, +ganon_final_scene, +ganon_final_room_0, +kakariko3_scene, +kakariko3_room_0, +hakasitarelay_scene, +hakasitarelay_room_0, +hakasitarelay_room_1, +hakasitarelay_room_2, +hakasitarelay_room_3, +hakasitarelay_room_4, +hakasitarelay_room_5, +hakasitarelay_room_6, +shrine_scene, +shrine_room_0, +turibori_scene, +turibori_room_0, +shrine_n_scene, +shrine_n_room_0, +shrine_r_scene, +shrine_r_room_0, +hakaana2_scene, +hakaana2_room_0, +gerudoway_scene, +gerudoway_room_0, +gerudoway_room_1, +gerudoway_room_2, +gerudoway_room_3, +gerudoway_room_4, +gerudoway_room_5, +hairal_niwa_n_scene, +hairal_niwa_n_room_0, +bowling_scene, +bowling_room_0, +hakaana_ouke_scene, +hakaana_ouke_room_0, +hakaana_ouke_room_1, +hakaana_ouke_room_2, +hylia_labo_scene, +hylia_labo_room_0, +souko_scene, +souko_room_0, +souko_room_1, +souko_room_2, +miharigoya_scene, +miharigoya_room_0, +mahouya_scene, +mahouya_room_0, +takaraya_scene, +takaraya_room_0, +takaraya_room_1, +takaraya_room_2, +takaraya_room_3, +takaraya_room_4, +takaraya_room_5, +takaraya_room_6, +ganon_sonogo_scene, +ganon_sonogo_room_0, +ganon_sonogo_room_1, +ganon_sonogo_room_2, +ganon_sonogo_room_3, +ganon_sonogo_room_4, +ganon_demo_scene, +ganon_demo_room_0, +face_shop_scene, +face_shop_room_0, +kinsuta_scene, +kinsuta_room_0, +ganontikasonogo_scene, +ganontikasonogo_room_0, +ganontikasonogo_room_1, +bump_texture_static, +anime_model_1_static, +anime_model_2_static, +anime_model_3_static, +anime_model_4_static, +anime_model_5_static, +anime_model_6_static, +anime_texture_1_static, +anime_texture_2_static, +anime_texture_3_static, +anime_texture_4_static, +anime_texture_5_static, +anime_texture_6_static, +softsprite_matrix_static, diff --git a/tools/ZAPDConfigs/gc-eu-mq-dbg/Config.xml b/tools/ZAPDConfigs/gc-eu-mq-dbg/Config.xml index 9960b22de..0b6ea61ff 100644 --- a/tools/ZAPDConfigs/gc-eu-mq-dbg/Config.xml +++ b/tools/ZAPDConfigs/gc-eu-mq-dbg/Config.xml @@ -6,4 +6,5 @@ + diff --git a/tools/ZAPDConfigs/gc-eu-mq/Config.xml b/tools/ZAPDConfigs/gc-eu-mq/Config.xml index 9960b22de..0b6ea61ff 100644 --- a/tools/ZAPDConfigs/gc-eu-mq/Config.xml +++ b/tools/ZAPDConfigs/gc-eu-mq/Config.xml @@ -6,4 +6,5 @@ + diff --git a/tools/ZAPDConfigs/gc-eu/Config.xml b/tools/ZAPDConfigs/gc-eu/Config.xml index 9960b22de..0b6ea61ff 100644 --- a/tools/ZAPDConfigs/gc-eu/Config.xml +++ b/tools/ZAPDConfigs/gc-eu/Config.xml @@ -6,4 +6,5 @@ + diff --git a/tools/ZAPDConfigs/gc-us/Config.xml b/tools/ZAPDConfigs/gc-us/Config.xml new file mode 100644 index 000000000..b2f4e3e4d --- /dev/null +++ b/tools/ZAPDConfigs/gc-us/Config.xml @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/tools/ZAPDConfigs/gc-us/SymbolMap.txt b/tools/ZAPDConfigs/gc-us/SymbolMap.txt new file mode 100644 index 000000000..554f92028 --- /dev/null +++ b/tools/ZAPDConfigs/gc-us/SymbolMap.txt @@ -0,0 +1,2 @@ +800FE2A0 gMtxClear +80A74130 sShadowTex From 93b687e43f329fcb3d5566a8c8ddb3f068e351f9 Mon Sep 17 00:00:00 2001 From: cadmic Date: Wed, 26 Jun 2024 07:30:55 -0700 Subject: [PATCH 7/7] Fix extract_assets.py -s modification check (#1978) --- extract_assets.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/extract_assets.py b/extract_assets.py index d7b6ecca7..49a165ca7 100755 --- a/extract_assets.py +++ b/extract_assets.py @@ -149,9 +149,9 @@ def main(): initializeWorker(versionConfig, mainAbort, args.unaccounted, extractedAssetsTracker, manager) # Always extract if -s is used. - fullPath = assetConfig.xml_path - if fullPath in extractedAssetsTracker: - del extractedAssetsTracker[fullPath] + xml_path_str = str(assetConfig.xml_path) + if xml_path_str in extractedAssetsTracker: + del extractedAssetsTracker[xml_path_str] ExtractFunc(assetConfig) else: class CannotMultiprocessError(Exception):