Disney Dreamlight Valley [0100D39012C1A000]

  • Thread starter Thread starter morarin
  • Start date Start date
  • Views Views 32,465
  • Replies Replies 196
  • Likes Likes 33
Is possibile to have this cheat for v 1.17?

I can try to update the cheat code for v 1.18.0 but not for v 1.17, sry. The cheat code is a pointer cheat code, so the pointer chain needs to be updated for each version. I did a quick check and found that static analysis isn't enough; dynamic analysis will be necessary.


I'm planning on creating a cheat code to unlock all exclusive items at once, such as those from the Premium Shop and Star Path. (I'm not sure if it will be possible, but I'm going to try).
 
Last edited by morarin,
If you don't want to upgrade, there is an old-version cheat code on the homepage.
I discovered these cheats after I already installed V.17
Post automatically merged:

I can try to update the cheat code for v 1.18.0 but not for v 1.17, sry. The cheat code is a pointer cheat code, so the pointer chain needs to be updated for each version. I did a quick check and found that static analysis isn't enough; dynamic analysis will be necessary.


I'm planning on creating a cheat code to unlock all exclusive items at once, such as those from the Premium Shop and Star Path. (I'm not sure if it will be possible, but I'm going to try).
Wow! Amazing!
 
  • Like
Reactions: morarin
Disney Dreamlight Valley v1.18.0 BID=730CED1F08B527E6

This cheat code forcefully progresses the mission and is highly prone to causing issues. ALWAYS back up your save data before use. This should not be used lightly.

With the cheat on, open the menu (+) and go to Quests. Track/untrack your target mission. Tracking the mission forces it to the next step. For example, Track → Untrack → Track advances it by two steps.


DDV_Update6_SS_1_1920x1080_373f60005b.png


Turn on this cheat code and track the mission to proceed to the next step. This will enable you to invite Vanellope to the Valley in offline mode.

[TrackToAdvanceMissionStep]
fixing ...

[TrackToAdvanceMissionStep OFF]
04000000 03232850 17FFF1A4
04000000 03232854 D503201F

Code:
// Original function: Mdl.Missions.MissionManager$$OnTrackedMissionChanged
0x7103232850    CBZ X1, 0x710322EEE0     // If X1 is NULL, jump to original function (RefreshCurrentFollower)
0x7103232854    B 0x7108193584           // If not NULL, jump to the code cave

// --- Code Cave Start ---
// RVA: 0x8193584
0x7108193584    LDR W8, [X1, #0x20]      // Pre-check: Directly read TrackedActivity.ActivityCase
0x7108193588    CMP W8, #1               // Compare with Mission (enum value=1)
0x710819358C    B.NE 0x710322EEE0        // If not a Mission, immediately jump to the original function (RefreshCurrentFollower)

// main_logic:
// --- Main logic (executes only for Missions) ---
0x7108193590    STP X29, X30, [SP, #-0x10]!      // Save X29 (FP), X30 (LR)
0x7108193594    STP X19, X20, [SP, #-0x10]!      // Save used callee-saved registers X19, X20

// --- Save original argument X0 (MissionManager*) ---
0x7108193598    MOV X19, X0              // Store MissionManager* in X19

// --- Get and save MissionId ---
0x710819359C    LDR X0, [X1, #0x18]      // X0 = TrackedMission*
0x71081935A0    LDR W20, [X0, #0x18]     // W20 = missionId (store in a callee-saved register)

// --- Get ProfileWorld instance ---
0x71081935A4    BL 0x71032257B0          // RVA: Profile.get_Profile() -> Profile* in X0
0x71081935A8    LDR X0, [X0, #0x30]      // X0 = ProfileWorld* (Profile+0x30)

// --- Get MissionSlot object ---
0x71081935AC    MOV W1, W20              // Arg2 = missionItem (the saved missionId)
0x71081935B0    MOV X2, XZR              // Arg3 = predicate (NULL)
0x71081935B4    BL 0x7104D733B0           // RVA: ProfileWorld.GetMissionSlot -> returns MissionSlot* in X0

// --- ★★★ Advance the mission step ★★★ ---
0x71081935B8    BL 0x71054D2DA0          // RVA: MissionSlot.AdvanceStep()

// --- Call RefreshCurrentFollower to sync the state ---
0x71081935BC    MOV X0, X19              // Restore the saved MissionManager* into X0
0x71081935C0    BL 0x710322EEE0          // RVA: MissionManager.RefreshCurrentFollower

// --- Process complete, restore registers and return normally ---
0x71081935C4    LDP X19, X20, [SP], #0x10
0x71081935C8    LDP X29, X30, [SP], #0x10
0x71081935CC    RET

I'm having trouble fixing this cheat code. Has anyone completed the 'Faith, Trust, and Pixel Dust' quest to bring Vanellope to the Valley offline by editing the save file? I want to know if that method causes any game-breaking bugs, because my own code, which forces the mission to the next step, is causing it to get stuck.
 
  • Like
Reactions: LoreMarqs
I'm having trouble fixing this cheat code. Has anyone completed the 'Faith, Trust, and Pixel Dust' quest to bring Vanellope to the Valley offline by editing the save file? I want to know if that method causes any game-breaking bugs, because my own code, which forces the mission to the next step, is causing it to get stuck.

I can't dump profile.json with JKSV now, anyone else?
 
Disney Dreamlight Valley v1.18.0 BID=730CED1F08B527E6

When your objectives become "Open the DreamSnaps Submission menu" or "Complete your first DreamSnaps Challenge!", simply navigate to the Quests tab in your menu and track the quest. Doing this will automatically progress the mission.


DDV_Update6_SS_1_1920x1080_373f60005b.png


This cheat enables you to complete the "Faith, Trust, and Pixel Dust" quest to bring Vanellope into the Valley, even while offline.

[WelcomeVanellope]
04000000 03232850 B4FE3481
04000000 03232854 153D834C
04000000 08193584 B9402028
04000000 08193588 7100051F
04000000 0819358C 544DCAA1
04000000 08193590 A9BF7BF3
04000000 08193594 A9BF57F4
04000000 08193598 A9BF5FF6
04000000 0819359C A9BF67F8
04000000 081935A0 A9BF6FFA
04000000 081935A4 AA0003F3
04000000 081935A8 F9400C28
04000000 081935AC B9401914
04000000 081935B0 96C26E4C
04000000 081935B4 96C2487F
04000000 081935B8 F9401800
04000000 081935BC 2A1403E1
04000000 081935C0 AA1F03E2
04000000 081935C4 972F7F7B
04000000 081935C8 AA0003F4
04000000 081935CC 974CE549
04000000 081935D0 F9400C08
04000000 081935D4 F9400908
04000000 081935D8 B9401915
04000000 081935DC F9400909
04000000 081935E0 91008137
04000000 081935E4 52800016
04000000 081935E8 6B1502DF
04000000 081935EC 5400042A
04000000 081935F0 F8767AEA
04000000 081935F4 F9400D4B
04000000 081935F8 F940096B
04000000 081935FC B9401978
04000000 08193600 F940096C
04000000 08193604 9100819A
04000000 08193608 52800019
04000000 0819360C 6B18033F
04000000 08193610 540002CA
04000000 08193614 F8797B40
04000000 08193618 B9403001
04000000 0819361C 7100043F
04000000 08193620 54000060
04000000 08193624 7100083F
04000000 08193628 540001C1
04000000 0819362C F940440D
04000000 08193630 B94049A1
04000000 08193634 71033C3F
04000000 08193638 540000A0
04000000 0819363C 7102303F
04000000 08193640 54000101
04000000 08193644 528001C1
04000000 08193648 14000002
04000000 0819364C 528001A1
04000000 08193650 F94019A3
04000000 08193654 AA1403E2
04000000 08193658 AA1303E0
04000000 0819365C 96C27BF5
04000000 08193660 11000739
04000000 08193664 17FFFFEA
04000000 08193668 110006D6
04000000 0819366C 17FFFFDF
04000000 08193670 A8C16FFA
04000000 08193674 A8C167F8
04000000 08193678 A8C15FF6
04000000 0819367C A8C157F4
04000000 08193680 A8C17BF3
04000000 08193684 D65F03C0

[WelcomeVanellope OFF]
04000000 03232850 17FFF1A4
04000000 03232854 D503201F

Code:
// Hook point: Mdl.Missions.MissionManager$$OnTrackedMissionChanged
0x7103232850    CBZ X1, 0x710322EEE0         // If NULL, branch to the original code
0x7103232854    B   0x7108193584             // Branch to Code Cave

// --- Code Cave Start --- (VA: 0x7108193584 ~)
0x7108193584    LDR W8, [X1, #0x20]          // Get TrackedActivity.ActivityCase
0x7108193588    CMP W8, #1                   // Check if it's a Mission
0x710819358C    B.NE 0x710322EEE0            // If not a mission, return to original code

// Prologue (minimum required, including X30)
0x7108193590    STP X19, X30, [SP, #-0x10]!
0x7108193594    STP X20, X21, [SP, #-0x10]!
0x7108193598    STP X22, X23, [SP, #-0x10]!
0x710819359C    STP X24, X25, [SP, #-0x10]!
0x71081935A0    STP X26, X27, [SP, #-0x10]!

0x71081935A4    MOV X19, X0                  // Store 'this' pointer
0x71081935A8    LDR X8,  [X1, #0x18]         // Get pointer to TrackedMission
0x71081935AC    LDR W20, [X8, #0x18]         // Get missionId (temp)

0x71081935B0    BL  0x710322EEE0             // Call RefreshCurrentFollower()
0x71081935B4    BL  0x71032257B0             // Get pointer to Profile
0x71081935B8    LDR X0, [X0, #0x30]          // Get pointer to ProfileWorld
0x71081935BC    MOV W1, W20                  // Set id as argument
0x71081935C0    MOV X2, XZR                  // Set predicate=NULL as argument
0x71081935C4    BL  0x7104D733B0             // Call GetMissionSlot(...)
0x71081935C8    MOV X20, X0                  // Store pointer to MissionSlot

0x71081935CC    BL  0x71054CCAF0             // Get CurrentStep
0x71081935D0    LDR X8,  [X0, #0x18]         // Get pointer to RepeatedField<SubStep>
0x71081935D4    LDR X8,  [X8, #0x10]         // Get pointer to List<SubStep>
0x71081935D8    LDR W21, [X8, #0x18]         // Get subStepCount
0x71081935DC    LDR X9,  [X8, #0x10]         // Get pointer to _items
0x71081935E0    ADD X23, X9, #0x20           // Get base address of subSteps array
0x71081935E4    MOV W22, #0                  // Initialize loop counter i=0

// ===== Outer loop (Iterate through SubSteps) =====
0x71081935E8    CMP W22, W21                 // Compare i with subStepCount
0x71081935EC    B.GE 0x7108193670            // If i >= subStepCount, branch to Epilogue

0x71081935F0    LDR X10, [X23, X22, LSL #3]  // Get pointer to subStep
0x71081935F4    LDR X11, [X10, #0x18]        // Get pointer to RepeatedField<Objective>
0x71081935F8    LDR X11, [X11, #0x10]        // Get pointer to List<Objective>
0x71081935FC    LDR W24, [X11, #0x18]        // Get objectiveCount
0x7108193600    LDR X12, [X11, #0x10]        // Get pointer to _items
0x7108193604    ADD X26, X12, #0x20          // Get base address of objectives array
0x7108193608    MOV W25, #0                  // Initialize loop counter j=0

// --- Inner loop (Iterate through Objectives) ---
0x710819360C    CMP W25, W24                 // Compare j with objectiveCount
0x7108193610    B.GE 0x7108193668            // If j >= objectiveCount, go to next SubStep

0x7108193614    LDR X0, [X26, X25, LSL #3]   // Get pointer to objective
0x7108193618    LDR W1, [X0, #0x30]          // Get status_
0x710819361C    CMP W1, #1                   // Is status Ongoing?
0x7108193620    B.EQ 0x710819362C            // If yes, check custom step
0x7108193624    CMP W1, #2                   // Is status Completed?
0x7108193628    B.NE 0x7108193660            // If neither, increment j

0x710819362C    LDR X13, [X0, #0x88]         // Get pointer to objective data
0x7108193630    LDR W1,  [X13, #0x48]        // Get customStepCase
0x7108193634    CMP W1, #207                 // Is custom step 207?
0x7108193638    B.EQ 0x710819364C            // If yes, branch to set 13
0x710819363C    CMP W1, #140                 // Is custom step 140?
0x7108193640    B.NE 0x7108193660            // If no, increment j
0x7108193644    MOV W1, #14                  // Set parameter to 14
0x7108193648    B   0x7108193650             // Branch to common call

0x710819364C    MOV W1, #13                  // Set parameter to 13
0x7108193650    LDR X3, [X13, #0x30]         // Get stepName
0x7108193654    MOV X2, X20                  // Set missionSlot* as argument
0x7108193658    MOV X0, X19                  // Set 'this' as argument
0x710819365C    BL  0x7103232630             // Call CheckForAdvanceStep

// Increment j and loop
0x7108193660    ADD W25, W25, #1             // j++
0x7108193664    B   0x710819360C             // Branch to inner loop start

// Go to next SubStep: Increment i and loop
0x7108193668    ADD W22, W22, #1             // i++
0x710819366C    B   0x71081935E8             // Branch to outer loop start

// ==== Epilogue ====
0x7108193670    LDP X26, X27, [SP], #0x10
0x7108193674    LDP X24, X25, [SP], #0x10
0x7108193678    LDP X22, X23, [SP], #0x10
0x710819367C    LDP X20, X21, [SP], #0x10
0x7108193680    LDP X19, X30, [SP], #0x10
0x7108193684    RET                          // Return from function
// --- Code Cave End ---

The cheat code is finally fixed, making it possible to invite Vanellope to the Valley even while offline. Just in case, please make a backup of your save file before using it.
Post automatically merged:

Is it possible to craft premium items like before?

I can try to update Khuong's pointer cheat, but it's troublesome to maintain with each new version. I prefer to create an ASM cheat that unlocks all limited items at once. Cheat code requests are always welcome, ofc.
 
Last edited by morarin,
Th
The cheat code is finally fixed, making it possible to invite Vanellope to the Valley even while offline. Just in case, please make a backup of your save file before using it.
Post automatically merged:



I can try to update Khuong's pointer cheat, but it's troublesome to maintain with each new version. I prefer to create an ASM cheat that unlocks all limited items at once. Cheat code requests are always welcome, ofc.
That works too
 
  • Like
Reactions: morarin
DDV_Update19_KeyArt_1080.png


{MasterCode}
040E0000 04D7DF5C 6B1302A8
04000000 04D7B79C 4B170108
04000000 047D4AEC 97FFFE41
04000000 047D7DC4 9416557B
04000000 0599AE60 D10283FF
04000000 047A2720 D101C3FF
04000000 04CB3444 39412268
04000000 04CB4384 39412288
04000000 04CA84DC 394092C8
04000000 02FA78A4 F9406800
04000000 02FA78A8 B40002A0
04000000 02FA78AC B9402041
04000000 02FA78B0 AA1F03E2
04000000 02FA78B4 94001DE3
04000000 02FA78B8 F9406E60
04000000 02FA78BC B4000200
04000000 02FA78C0 AA1F03E1
04000000 0475F3F8 97C8241E
04000000 0475F700 9445E734
04000000 02B7BF40 94B57524
04000000 047AFDB8 F8018D00
04000000 04C058E4 B94026E8
04000000 04C058EC 0B150108
04000000 04D69CF4 0B180108
04000000 04D69CF8 F81F03BF
04000000 04D6D290 1A89B2B8
04000000 04D6D298 1A89B115
04000000 03241620 17FFF190
04000000 03241624 D503201F

[R MoveSpeed x2]
04000000 0311EDA0 1E204160
04000000 0311EDA4 1E204181
04000000 0311EDA8 1E2041A2
80000080
04000000 0311EDA0 1E2B2960
04000000 0311EDA4 1E2C2981
04000000 0311EDA8 1E2D29A2
20000000

[EnergyNoDecrease]
040E0000 04D7DF5C 6B1F02A8

[CurrencyNoDecrease]
04000000 04D7B79C 4B1F0108

[FreeCraft]
04000000 047D4AEC 52800000
04000000 047D7DC4 52800020

[CookKeepItems]
04000000 0599AE60 D65F03C0
04000000 047A2720 D65F03C0

[AlwaysCriticalSuccess]
04000000 04CB3444 52800028
04000000 04CB4384 52800028

[AlwaysBurning]
04000000 04CA84DC 52800028

[EasyFishing]
04000000 02FA78A4 F9406660
04000000 02FA78A8 AA1F03E1
04000000 02FA78AC 940016A9
04000000 02FA78B0 F9406660
04000000 02FA78B4 52800001
04000000 02FA78B8 AA1F03E2
04000000 02FA78BC 94001651
04000000 02FA78C0 1400000C

[EasyGardening]
04000000 0475F3F8 52800020
04000000 0475F700 D503201F

[InfFruits]
04000000 02B7BF40 D503201F

[InfMiningRock]
04000000 047AFDB8 F8018D1F

[FriendshipMax(add)]
04000000 04C058E4 52A00028
04000000 04C058EC 729C6CC8

[XPMax(add)]
04000000 04D69CF4 52A00148
04000000 04D69CF8 72824408

[CurrencyMax(add)]
04000000 04D6D290 1A89B138
04000000 04D6D298 1A89B135

[WelcomeVanellope]
04000000 03241620 B4FE3201
04000000 03241624 153F5762
04000000 082173AC B9402028
04000000 082173B0 7100051F
04000000 082173B4 A9BF7BF3
04000000 082173B8 A9BF57F4
04000000 082173BC A9BF5FF6
04000000 082173C0 A9BF67F8
04000000 082173C4 A9BF6FFA
04000000 082173C8 AA0003F3
04000000 082173CC F9400C28
04000000 082173D0 B9401914
04000000 082173D4 96C09A23
04000000 082173D8 96C0742E
04000000 082173DC F9401800
04000000 082173E0 2A1403E1
04000000 082173E4 AA1F03E2
04000000 082173E8 972E15C6
04000000 082173EC AA0003F4
04000000 082173F0 974C1F84
04000000 082173F4 F9400C08
04000000 082173F8 F9400908
04000000 082173FC B9401915
04000000 08217400 F9400909
04000000 08217404 91008137
04000000 08217408 52800016
04000000 0821740C 6B1502DF
04000000 08217410 5400042A
04000000 08217414 F8767AEA
04000000 08217418 F9400D4B
04000000 0821741C F940096B
04000000 08217420 B9401978
04000000 08217424 F940096C
04000000 08217428 9100819A
04000000 0821742C 52800019
04000000 08217430 6B18033F
04000000 08217434 540002CA
04000000 08217438 F8797B40
04000000 0821743C B9403001
04000000 08217440 7100043F
04000000 08217444 54000060
04000000 08217448 7100083F
04000000 0821744C 540001C1
04000000 08217450 F940440D
04000000 08217454 B94049A1
04000000 08217458 71033C3F
04000000 0821745C 540000A0
04000000 08217460 7102303F
04000000 08217464 54000101
04000000 08217468 528001C1
04000000 0821746C 14000002
04000000 08217470 528001A1
04000000 08217474 F94019A3
04000000 08217478 AA1403E2
04000000 0821747C AA1303E0
04000000 08217480 96C0A7E0
04000000 08217484 11000739
04000000 08217488 17FFFFEA
04000000 0821748C 110006D6
04000000 08217490 17FFFFDF
04000000 08217494 A8C16FFA
04000000 08217498 A8C167F8
04000000 0821749C A8C15FF6
04000000 082174A0 A8C157F4
04000000 082174A4 A8C17BF3
04000000 082174A8 D65F03C0

Post automatically merged:

DDV_Update19_KeyArt_1080.png


{MasterCode}
040E0000 04D7DF5C 6B1302A8
04000000 04D7B79C 4B170108
04000000 047D4AEC 97FFFE41
04000000 047D7DC4 9416557B
04000000 0599AE60 D10283FF
04000000 047A2720 D101C3FF
04000000 04CB3444 39412268
04000000 04CB4384 39412288
04000000 04CA84DC 394092C8
04000000 02FA78A4 F9406800
04000000 02FA78A8 B40002A0
04000000 02FA78AC B9402041
04000000 02FA78B0 AA1F03E2
04000000 02FA78B4 94001DE3
04000000 02FA78B8 F9406E60
04000000 02FA78BC B4000200
04000000 02FA78C0 AA1F03E1
04000000 0475F3F8 97C8241E
04000000 0475F700 9445E734
04000000 02B7BF40 94B57524
04000000 047AFDB8 F8018D00
04000000 04C058E4 B94026E8
04000000 04C058EC 0B150108
04000000 04D69CF4 0B180108
04000000 04D69CF8 F81F03BF
04000000 04D6D290 1A89B2B8
04000000 04D6D298 1A89B115
04000000 03241620 17FFF190
04000000 03241624 D503201F

[R MoveSpeed x2]
04000000 0311EDA0 1E204160
04000000 0311EDA4 1E204181
04000000 0311EDA8 1E2041A2
80000080
04000000 0311EDA0 1E2B2960
04000000 0311EDA4 1E2C2981
04000000 0311EDA8 1E2D29A2
20000000

[EnergyNoDecrease]
040E0000 04D7DF5C 6B1F02A8

[CurrencyNoDecrease]
04000000 04D7B79C 4B1F0108

[FreeCraft]
04000000 047D4AEC 52800000
04000000 047D7DC4 52800020

[CookKeepItems]
04000000 0599AE60 D65F03C0
04000000 047A2720 D65F03C0

[AlwaysCriticalSuccess]
04000000 04CB3444 52800028
04000000 04CB4384 52800028

[AlwaysBurning]
04000000 04CA84DC 52800028

[EasyFishing]
04000000 02FA78A4 F9406660
04000000 02FA78A8 AA1F03E1
04000000 02FA78AC 940016A9
04000000 02FA78B0 F9406660
04000000 02FA78B4 52800001
04000000 02FA78B8 AA1F03E2
04000000 02FA78BC 94001651
04000000 02FA78C0 1400000C

[EasyGardening]
04000000 0475F3F8 52800020
04000000 0475F700 D503201F

[InfFruits]
04000000 02B7BF40 D503201F

[InfMiningRock]
04000000 047AFDB8 F8018D1F

[FriendshipMax(add)]
04000000 04C058E4 52A00028
04000000 04C058EC 729C6CC8

[XPMax(add)]
04000000 04D69CF4 52A00148
04000000 04D69CF8 72824408

[CurrencyMax(add)]
04000000 04D6D290 1A89B138
04000000 04D6D298 1A89B135

[WelcomeVanellope]
04000000 03241620 B4FE3201
04000000 03241624 153F5762
04000000 082173AC B9402028
04000000 082173B0 7100051F
04000000 082173B4 A9BF7BF3
04000000 082173B8 A9BF57F4
04000000 082173BC A9BF5FF6
04000000 082173C0 A9BF67F8
04000000 082173C4 A9BF6FFA
04000000 082173C8 AA0003F3
04000000 082173CC F9400C28
04000000 082173D0 B9401914
04000000 082173D4 96C09A23
04000000 082173D8 96C0742E
04000000 082173DC F9401800
04000000 082173E0 2A1403E1
04000000 082173E4 AA1F03E2
04000000 082173E8 972E15C6
04000000 082173EC AA0003F4
04000000 082173F0 974C1F84
04000000 082173F4 F9400C08
04000000 082173F8 F9400908
04000000 082173FC B9401915
04000000 08217400 F9400909
04000000 08217404 91008137
04000000 08217408 52800016
04000000 0821740C 6B1502DF
04000000 08217410 5400042A
04000000 08217414 F8767AEA
04000000 08217418 F9400D4B
04000000 0821741C F940096B
04000000 08217420 B9401978
04000000 08217424 F940096C
04000000 08217428 9100819A
04000000 0821742C 52800019
04000000 08217430 6B18033F
04000000 08217434 540002CA
04000000 08217438 F8797B40
04000000 0821743C B9403001
04000000 08217440 7100043F
04000000 08217444 54000060
04000000 08217448 7100083F
04000000 0821744C 540001C1
04000000 08217450 F940440D
04000000 08217454 B94049A1
04000000 08217458 71033C3F
04000000 0821745C 540000A0
04000000 08217460 7102303F
04000000 08217464 54000101
04000000 08217468 528001C1
04000000 0821746C 14000002
04000000 08217470 528001A1
04000000 08217474 F94019A3
04000000 08217478 AA1403E2
04000000 0821747C AA1303E0
04000000 08217480 96C0A7E0
04000000 08217484 11000739
04000000 08217488 17FFFFEA
04000000 0821748C 110006D6
04000000 08217490 17FFFFDF
04000000 08217494 A8C16FFA
04000000 08217498 A8C167F8
04000000 0821749C A8C15FF6
04000000 082174A0 A8C157F4
04000000 082174A4 A8C17BF3
04000000 082174A8 D65F03C0

If you haven't welcomed Vanellope to the Valley yet, you should use the "WelcomeVanellope" cheat in version 1.18.0 before you update to 1.19.0.

I used the "Interactive ASM Cheats Updater" by @zzpong to update the cheat codes for version 1.19.0, but I had to fix some of them by hand.

Because I haven't tested them, I'm not sure if they work correctly.
 
Last edited by morarin,
Disney Dreamlight Valley v1.19.0 BID=B868533F047509B8

[GetAllMissingClothing]
04000000 04716884 D503201F
04000000 0716BDFC 9442ADAC
04000000 082174AC A9BF7BF3
04000000 082174B0 A9BF53F3
04000000 082174B4 A9BF5BF5
04000000 082174B8 A9BF63F7
04000000 082174BC 96C073BD
04000000 082174C0 AA0003F4
04000000 082174C4 96C073F3
04000000 082174C8 972FA6F6
04000000 082174CC AA0003F3
04000000 082174D0 9709F3B0
04000000 082174D4 528000A1
04000000 082174D8 AA1F03E2
04000000 082174DC 9709E345
04000000 082174E0 91008015
04000000 082174E4 B9401816
04000000 082174E8 52800017
04000000 082174EC F8777AA0
04000000 082174F0 96F4265C
04000000 082174F4 2A0003F8
04000000 082174F8 AA1303E0
04000000 082174FC 2A1803E1
04000000 08217500 97184328
04000000 08217504 370000C0
04000000 08217508 AA1403E0
04000000 0821750C 2A1803E1
04000000 08217510 52800022
04000000 08217514 AA1F03E3
04000000 08217518 97459D6A
04000000 0821751C 110006F7
04000000 08217520 6B1602FF
04000000 08217524 54FFFE43
04000000 08217528 A8C163F7
04000000 0821752C A8C15BF5
04000000 08217530 A8C153F3
04000000 08217534 A8C17BE0
04000000 08217538 D65F03C0

[GetAllMissingClothing OFF]
04000000 04716884 340001C8
04000000 0716BDFC AA1303E0

Turn on this cheat code and open the wardrobe to unlock all unowned clothing items. It will take some time for all the clothing items to be added. I highly recommend you leave it alone until it has finished.

Code:
0x7104716884  NOP                                              // nop

// --- Hook Patch (WardrobeMenu::OnFocusIn) -------------------------------------
0x710716BDFC  BL    0x71082174AC                              // hook: replace original "MOV X0, X19" and jump to code cave


// --- Code Cave Start (RVA: 0x82174AC, Abs: 0x71082174AC) ----------------------
// [Save Block] save callee-saved in order; X19 saved twice (first copy returned via X0)
0x71082174AC  STP   X19, X30, [SP, #-0x10]!                   // save old X19 and LR
0x71082174B0  STP   X19, X20, [SP, #-0x10]!                   // save X19 (working), X20 (Client*)
0x71082174B4  STP   X21, X22, [SP, #-0x10]!                   // save X21 (array base), X22 (length)
0x71082174B8  STP   X23, X24, [SP, #-0x10]!                   // save X23 (index i), X24 (item id)


// [Acquire Client*] via accessor
0x71082174BC  BL    0x71032343B0                              // X0 = get_MetaClient()
0x71082174C0  MOV   X20, X0                                   // X20 = Client*


// [Acquire Wardrobe] Profile accessor → get_Wardrobe()
0x71082174C4  BL    0x7103234490                              // X0 = get_Profile()
0x71082174C8  BL    0x7104E010A0                              // X0 = Profile.get_Wardrobe()
0x71082174CC  MOV   X19, X0                                   // X19 = ListInventory* (loop "this")


// [Acquire Clothing Array] ItemDatabase.Instance → GetAllByType(ItemType.Clothing, method=null)
0x71082174D0  BL    0x7104494390                              // X0 = ItemDatabase.Instance
0x71082174D4  MOV   W1,  #5                                   // W1 = ItemType.Clothing
0x71082174D8  MOV   X2,  XZR                                  // method = null
0x71082174DC  BL    0x71044901F0                              // X0 = GetAllByType(...)


// [Loop Init] set array base, length, index (readable order)
0x71082174E0  ADD   X21, X0, #0x20                            // X21 = &elements[0]
0x71082174E4  LDR   W22, [X0, #0x18]                          // W22 = length
0x71082174E8  MOV   W23, #0                                   // W23 = i


// --- [Loop] for (i = 0; i < len; ++i) -----------------------------------------
0x71082174EC  LDR   X0,  [X21, X23, LSL #3]                   // X0 = IItemData* (ClothingItemData*)
0x71082174F0  BL    0x7103F20E60                              // W0 = ClothingItemData.get_Item()
0x71082174F4  MOV   W24, W0                                   // W24 = item id

// [KnowsItem Check] skip grant if already owned
0x71082174F8  MOV   X0,  X19                                  // this = ListInventory*
0x71082174FC  MOV   W1,  W24                                  // arg: item id
0x7108217500  BL    0x71048281A0                              // W0 = ListInventory.KnowsItem(...)
0x7108217504  TBNZ  W0,  #0, 0x710821751C                     // if true → skip grant

// [Grant Item] DebugAddItem(this=Client*, item, 1, CancellationToken=None)
0x7108217508  MOV   X0,  X20                                  // this = Client*
0x710821750C  MOV   W1,  W24                                  // arg: item id
0x7108217510  MOV   W2,  #1                                   // amount = 1
0x7108217514  MOV   X3,  XZR                                  // CancellationToken = default(0)
0x7108217518  BL    0x710537EAC0                              // Client.DebugAddItem(...)

0x710821751C  ADD   W23, W23, #1                              // i++
0x7108217520  CMP   W23, W22                                  // compare i vs length
0x7108217524  B.LO  0x71082174EC                              // continue if i < length


// [Restore & Return] restore in reverse; load first-saved X19 into X0 and return
0x7108217528  LDP   X23, X24, [SP], #0x10                     // restore X23, X24
0x710821752C  LDP   X21, X22, [SP], #0x10                     // restore X21, X22
0x7108217530  LDP   X19, X20, [SP], #0x10                     // restore X19 (working), X20
0x7108217534  LDP   X0,  X30, [SP], #0x10                     // X0 ← old X19 (first-saved), X30 ← LR
0x7108217538  RET                                             // return (recreates original "MOV X0, X19")

// --- Code Cave End -------------------------------------------------------------
 
Last edited by morarin,
I think if you could find the address, a code that makes any of the animals an instant companion/instant level 5 companion would be cool. Im having a hard time finding this one because no matter how much i feed any of them in a day, or in a series of days, I havent been able to get any of them to join me.
 
  • Like
Reactions: morarin
I think if you could find the address, a code that makes any of the animals an instant companion/instant level 5 companion would be cool. Im having a hard time finding this one because no matter how much i feed any of them in a day, or in a series of days, I havent been able to get any of them to join me.

Disney Dreamlight Valley v1.19.0 BID=B868533F047509B8

[EasyUnlockCritter]
04000000 047F1100 52800020
04000000 047F173C D503201F

[EasyUnlockCritter OFF]
04000000 047F1100 97D8A18C
04000000 047F173C 5400068B

This cheat code makes Critters love any food, allowing you to befriend them with a single feeding.

[PetFriendshipMax(add)]
04000000 04C6FA7C 2A1503E1

[PetFriendshipMax(add) OFF]
04000000 04C6FA7C 0B180101

With this cheat code enabled, any increase in friendship with your pet will instantly raise it to the maximum level.
 
Disney Dreamlight Valley v1.19.0 BID=B868533F047509B8

[EasyUnlockCritter]
04000000 047F1100 52800020
04000000 047F173C D503201F

[EasyUnlockCritter OFF]
04000000 047F1100 97D8A18C
04000000 047F173C 5400068B

This cheat code makes Critters love any food, allowing you to befriend them with a single feeding.

[PetFriendshipMax(add)]
04000000 04C6FA7C 2A1503E1

[PetFriendshipMax(add) OFF]
04000000 04C6FA7C 0B180101

With this cheat code enabled, any increase in friendship with your pet will instantly raise it to the maximum level.
The version 1.19.1 will be updated soon, and I'm looking forward to the patch and the update of your cheat codes.
 
  • Like
Reactions: morarin
Disney Dreamlight Valley v1.19.0 BID=B868533F047509B8

[EasyUnlockCritter]
04000000 047F1100 52800020
04000000 047F173C D503201F

[EasyUnlockCritter OFF]
04000000 047F1100 97D8A18C
04000000 047F173C 5400068B

This cheat code makes Critters love any food, allowing you to befriend them with a single feeding.

[PetFriendshipMax(add)]
04000000 04C6FA7C 2A1503E1

[PetFriendshipMax(add) OFF]
04000000 04C6FA7C 0B180101

With this cheat code enabled, any increase in friendship with your pet will instantly raise it to the maximum level.
Wow, thanks for this! I wasnt sure how to make it work when it seems like 2 addresses needed to be modified together for pet Xp, so i was stuck manually finding and modifying xp for any pet that I had....which was only 1 or 2 because acquiring them sure did get harder in the new updates. One more question. Is it possible to make kaitoB, or patjenova's 'unlock all crafting' code work? It's fun to have the ability to make all materials or enchantments from the start of the game. Enchanting your tools to smash through bone or mushroom barriers from the beginning is nice. Ive only ever had the code partially slightly working before the game freezes or crashes. Frustrating, but it takes a long time for me since i have to manually search out to where i can safely relocate the cheat code. Anyway, thanks a ton for all your work! if you would ever consider making "how to" videos, it would probably be something lots of people would find extremely helpful. I know I would.
 
  • Like
Reactions: morarin


{MasterCode}
040E0000 04D81E9C 6B1302A8
04000000 04D7F590 A9BA7BFD
04000000 04D7F594 F9000BFB
04000000 04D75800 3607F500
04000000 047D8ACC 97FFFE41
04000000 047DBDA4 94165553
04000000 0599F680 D10283FF
04000000 047A64F0 D101C3FF
04000000 04CB7384 39412268
04000000 04CB82C4 39412288
04000000 04CAC41C 394092C8
04000000 04780960 2A0003F5
04000000 04780A04 39411108
04000000 04780A34 7100051F
04000000 04780A38 1A9F17E8
04000000 04780A50 54000141
04000000 04780A54 52800068
04000000 04C775A8 B9401F48
04000000 02FA8C94 F9406800
04000000 02FA8C98 B40002A0
04000000 02FA8C9C B9402041
04000000 02FA8CA0 AA1F03E2
04000000 02FA8CA4 94001DE3
04000000 02FA8CA8 F9406E60
04000000 02FA8CAC B4000200
04000000 02FA8CB0 AA1F03E1
04000000 047631C8 97C823E6
04000000 047634D0 9445E9C8
04000000 0476CB20 A9BB7BFD
04000000 0476CE80 D101C3FF
04000000 047B3B88 F8018D00
04000000 047F50E0 97D8A160
04000000 047F571C 5400068B
04000000 04C739BC 0B180101
04000000 04C09824 B94026E8
04000000 04C0982C 0B150108
04000000 04D6DC34 0B180108
04000000 04D6DC38 F81F03BF
04000000 04D711D0 1A89B2B8
04000000 04D711D8 1A89B115
04000000 055BF774 5400032D
04000000 055C31DC 6B08013F
04000000 055C31E0 540000AA
04000000 055C31E4 2A1F03E0
04000000 0471A654 340001C8
04000000 0717107C AA1303E0
04000000 04716B68 2A1502C8
04000000 04D761A0 54FFFA60
04000000 04D7612C 2A180108
04000000 03242A10 17FFF190
04000000 03242A14 D503201F
04000000 048EFC30 370003E0
04000000 048EFC70 3707F380
04000000 048F1B58 370033A0
04000000 048F1BA0 36003240
04000000 048F27E4 9411F9BF
04000000 07270AE8 52000015
04000000 0471DEB0 34000148
04000000 0471F644 34000148
04000000 04E1C2F4 36001600

[R MoveSpeed x2]
04000000 03120190 1E204160
04000000 03120194 1E204181
04000000 03120198 1E2041A2
80000080
04000000 03120190 1E2B2960
04000000 03120194 1E2C2981
04000000 03120198 1E2D29A2
20000000

[EnergyNoDecrease]
040E0000 04D81E9C 6B1F02A8

[CurrencyNoDecrease]
04000000 04D7F590 52800000
04000000 04D7F594 D65F03C0

[ZL NoConsumeItems]
04000000 0396C160 D10283FF
04000000 0396C164 A9047BFD
04000000 0396CA10 D10243FF
04000000 0396CA14 A9037BFD
80000100
04000000 0396C160 52800020
04000000 0396C164 D65F03C0
04000000 0396CA10 52800020
04000000 0396CA14 D65F03C0
20000000

[ShowAllCraftingRecipe]
04000000 04D75800 D503201F

[FreeCraft]
04000000 047D8ACC 52800000
04000000 047DBDA4 52800020

[CookKeepItems]
04000000 0599F680 D65F03C0
04000000 047A64F0 D65F03C0

[AlwaysCriticalSuccess]
04000000 04CB7384 52800028
04000000 04CB82C4 52800028

[AlwaysBurning]
04000000 04CAC41C 52800028

[AlwaysActivityBonusRewards]
04000000 04C775A8 52807D08

[EasyFishing]
04000000 02FA8C94 F9406660
04000000 02FA8C98 AA1F03E1
04000000 02FA8C9C 940016A9
04000000 02FA8CA0 F9406660
04000000 02FA8CA4 52800001
04000000 02FA8CA8 AA1F03E2
04000000 02FA8CAC 94001651
04000000 02FA8CB0 1400000C

[--SectionStart:ForceFishRarity--]
00000000 00000000 00000000
[ForceNormalFish]
04000000 04780960 52800035
04000000 04780A04 52800008
04000000 04780A34 7100051F
04000000 04780A38 1A9F07E8
04000000 04780A50 54000140
04000000 04780A54 52800028

[ForceUncommonFish]
04000000 04780960 52800035
04000000 04780A04 52800008
04000000 04780A34 7100091F
04000000 04780A38 1A9F07E8
04000000 04780A50 54000140
04000000 04780A54 52800048

[ForceRareFish]
04000000 04780960 52800035
04000000 04780A04 52800008
04000000 04780A34 71000D1F
04000000 04780A38 1A9F07E8
04000000 04780A50 54000140
[--SectionEnd:ForceFishRarity--]
00000000 00000000 00000000

[EasyGardening]
04000000 047631C8 52800020
04000000 047634D0 D503201F

[InfHarvesting]
04000000 0476CB20 D65F03C0
04000000 0476CE80 D65F03C0

[InfMiningRock]
04000000 047B3B88 F8018D1F

[EasyUnlockCritter]
04000000 047F50E0 52800020
04000000 047F571C D503201F

[PetFriendshipMax(add)]
04000000 04C739BC 2A1503E1

[FriendshipMax(add)]
04000000 04C09824 52A00028
04000000 04C0982C 729C6CC8

[XPMax(add)]
04000000 04D6DC34 52A00148
04000000 04D6DC38 72824408

[CurrencyMax(add)]
04000000 04D711D0 1A89B138
04000000 04D711D8 1A89B135

[ClaimAllAchievements]
04000000 055BF774 D503201F
04000000 055C31DC B9006668
04000000 055C31E0 B9009A68
04000000 055C31E4 14000004

[--SectionStart:UnlockCodes--]
00000000 00000000 00000000
[GetAllMissingClothing]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA26E
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 528000A1
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingMakeup]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA2B6
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 528001C1
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingAvatarFeature]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA38E
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 528000E1
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingTools&Accessories]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 97BBEF0B
04000000 0821C628 AA0003F3
04000000 0821C62C 9709EEAD
04000000 0821C630 52800161
04000000 0821C634 AA1F03E2
04000000 0821C638 9709DE42
04000000 0821C63C 91008015
04000000 0821C640 B9401816
04000000 0821C644 52800017
04000000 0821C648 F8777AA0
04000000 0821C64C 96F4562D
04000000 0821C650 2A0003F8
04000000 0821C654 AA1303E0
04000000 0821C658 2A1803E1
04000000 0821C65C 972D56FD
04000000 0821C660 370000C0
04000000 0821C664 AA1403E0
04000000 0821C668 2A1803E1
04000000 0821C66C 52800022
04000000 0821C670 AA1F03E3
04000000 0821C674 97459B1B
04000000 0821C678 110006F7
04000000 0821C67C 6B1602FF
04000000 0821C680 54FFFE43
04000000 0821C684 A8C163F7
04000000 0821C688 A8C15BF5
04000000 0821C68C A8C153F3
04000000 0821C690 A8C17BE0
04000000 0821C694 D65F03C0

[GetAllMissingMotifs]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA322
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 52800141
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingPhotoFrames]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA3B2
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 52800261
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingFurniture]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA24E
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 52800081
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800C62
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingWallpaper&Floors]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA2DA
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 52800201
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingPlayerHouses]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BE63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA2FE
04000000 0821C62C AA0003F3
04000000 0821C630 B000E680
04000000 0821C634 910B4000
04000000 0821C638 D5033BBF
04000000 0821C63C 52800021
04000000 0821C640 96222C48
04000000 0821C644 9709EEA7
04000000 0821C648 52800041
04000000 0821C64C 528000A8
04000000 0821C650 B90013E8
04000000 0821C654 910043E2
04000000 0821C658 B000E688
04000000 0821C65C F9416903
04000000 0821C660 96C35FC4
04000000 0821C664 91008015
04000000 0821C668 B9401816
04000000 0821C66C 52800017
04000000 0821C670 F8777AA0
04000000 0821C674 96F4214F
04000000 0821C678 2A0003F8
04000000 0821C67C AA1303E0
04000000 0821C680 2A1803E1
04000000 0821C684 97183EBF
04000000 0821C688 370000C0
04000000 0821C68C AA1403E0
04000000 0821C690 2A1803E1
04000000 0821C694 52800022
04000000 0821C698 AA1F03E3
04000000 0821C69C 97459B11
04000000 0821C6A0 110006F7
04000000 0821C6A4 6B1602FF
04000000 0821C6A8 54FFFE43
04000000 0821C6AC A8C263F7
04000000 0821C6B0 A8C15BF5
04000000 0821C6B4 A8C153F3
04000000 0821C6B8 A8C17BE0
04000000 0821C6BC D65F03C0

[GetAllMissingFigures]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA36A
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 52800241
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingCompanions]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BE63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 97BBEF0B
04000000 0821C628 AA0003F3
04000000 0821C62C B000E680
04000000 0821C630 910DE000
04000000 0821C634 D5033BBF
04000000 0821C638 52800021
04000000 0821C63C 96222C49
04000000 0821C640 9709EEA8
04000000 0821C644 52800181
04000000 0821C648 52800008
04000000 0821C64C B90013E8
04000000 0821C650 910043E2
04000000 0821C654 B000E688
04000000 0821C658 F941BD03
04000000 0821C65C 96C35FC5
04000000 0821C660 91008015
04000000 0821C664 B9401816
04000000 0821C668 52800017
04000000 0821C66C F8777AA0
04000000 0821C670 96FBB394
04000000 0821C674 2A0003F8
04000000 0821C678 AA1303E0
04000000 0821C67C 2A1803E1
04000000 0821C680 972D96CC
04000000 0821C684 B50000C0
04000000 0821C688 AA1403E0
04000000 0821C68C 2A1803E1
04000000 0821C690 52800022
04000000 0821C694 AA1F03E3
04000000 0821C698 97459B12
04000000 0821C69C 110006F7
04000000 0821C6A0 6B1602FF
04000000 0821C6A4 54FFFE43
04000000 0821C6A8 A8C263F7
04000000 0821C6AC A8C15BF5
04000000 0821C6B0 A8C153F3
04000000 0821C6B4 A8C17BE0
04000000 0821C6B8 D65F03C0

[GetAllMissingSkins]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA346
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 52800221
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[UnlockAllMemories]
04000000 0471A654 D503201F
04000000 04716B68 2A1F03E8
04000000 0717107C 9442AD64
04000000 04D761A0 17FFFFD3
04000000 04D7612C 94D29954
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F3
04000000 0821C624 9709EEAF
04000000 0821C628 528001A1
04000000 0821C62C AA1F03E2
04000000 0821C630 9709DE44
04000000 0821C634 91008014
04000000 0821C638 B9401815
04000000 0821C63C 52800016
04000000 0821C640 F8767A80
04000000 0821C644 B9401817
04000000 0821C648 AA1303E0
04000000 0821C64C 2A1703E1
04000000 0821C650 52800022
04000000 0821C654 AA1F03E3
04000000 0821C658 97459B22
04000000 0821C65C 110006D6
04000000 0821C660 6B1502DF
04000000 0821C664 54FFFEE3
04000000 0821C668 A8C163F7
04000000 0821C66C A8C15BF5
04000000 0821C670 A8C153F3
04000000 0821C674 A8C17BE0
04000000 0821C678 D65F03C0
04000000 0821C67C A9BF07E0
04000000 0821C680 A9BF0FE2
04000000 0821C684 9709EE97
04000000 0821C688 AA1503E1
04000000 0821C68C 9709DAB9
04000000 0821C690 B9406809
04000000 0821C694 12800008
04000000 0821C698 5280040A
04000000 0821C69C 4B09014A
04000000 0821C6A0 1ACA2508
04000000 0821C6A4 A8C10FE2
04000000 0821C6A8 A8C107E0
04000000 0821C6AC 172D66A1
[--SectionEnd:UnlockCodes--]
00000000 00000000 00000000

[--SectionStart:FixCodes--]
00000000 00000000 00000000
[WelcomeVanellope]
04000000 03242A10 B4FE3201
04000000 03242A14 153F6722
04000000 0821C69C B9402028
04000000 0821C6A0 7100051F
04000000 0821C6A4 A9BF7BF3
04000000 0821C6A8 A9BF57F4
04000000 0821C6AC A9BF5FF6
04000000 0821C6B0 A9BF67F8
04000000 0821C6B4 A9BF6FFA
04000000 0821C6B8 AA0003F3
04000000 0821C6BC F9400C28
04000000 0821C6C0 B9401914
04000000 0821C6C4 96C08A63
04000000 0821C6C8 96C0646E
04000000 0821C6CC F9401800
04000000 0821C6D0 2A1403E1
04000000 0821C6D4 AA1F03E2
04000000 0821C6D8 972E10DA
04000000 0821C6DC AA0003F4
04000000 0821C6E0 974C1CD0
04000000 0821C6E4 F9400C08
04000000 0821C6E8 F9400908
04000000 0821C6EC B9401915
04000000 0821C6F0 F9400909
04000000 0821C6F4 91008137
04000000 0821C6F8 52800016
04000000 0821C6FC 6B1502DF
04000000 0821C700 5400042A
04000000 0821C704 F8767AEA
04000000 0821C708 F9400D4B
04000000 0821C70C F940096B
04000000 0821C710 B9401978
04000000 0821C714 F940096C
04000000 0821C718 9100819A
04000000 0821C71C 52800019
04000000 0821C720 6B18033F
04000000 0821C724 540002CA
04000000 0821C728 F8797B40
04000000 0821C72C B9403001
04000000 0821C730 7100043F
04000000 0821C734 54000060
04000000 0821C738 7100083F
04000000 0821C73C 540001C1
04000000 0821C740 F940440D
04000000 0821C744 B94049A1
04000000 0821C748 71033C3F
04000000 0821C74C 540000A0
04000000 0821C750 7102303F
04000000 0821C754 54000101
04000000 0821C758 528001C1
04000000 0821C75C 14000002
04000000 0821C760 528001A1
04000000 0821C764 F94019A3
04000000 0821C768 AA1403E2
04000000 0821C76C AA1303E0
04000000 0821C770 96C09820
04000000 0821C774 11000739
04000000 0821C778 17FFFFEA
04000000 0821C77C 110006D6
04000000 0821C780 17FFFFDF
04000000 0821C784 A8C16FFA
04000000 0821C788 A8C167F8
04000000 0821C78C A8C15FF6
04000000 0821C790 A8C157F4
04000000 0821C794 A8C17BF3
04000000 0821C798 D65F03C0

[SellToTrash]
04000000 048EFC30 D503201F
04000000 048EFC70 17FFFF9C
04000000 048F1B58 D503201F
04000000 048F1BA0 D503201F
04000000 048F27E4 52800000
04000000 07270AE8 52800035

[R SelectToRemove]
04000000 0471DEB0 D503201F
04000000 0471F644 D503201F
04000000 06A943EC F943EB00
04000000 06A943F0 B940E408
04000000 06A943F4 35000048
04000000 06A943F8 9680AECE
04000000 06A943FC 9001A2C8
04000000 06A94400 910023E0
04000000 06A94404 F9478D02
04000000 07148960 F0016876
04000000 07148964 F94176C0
04000000 07148968 B940E408
04000000 0714896C 34002288
04000000 07148970 F0019537
04000000 07148974 3943F6E8
04000000 07185E68 F94007E3
04000000 07185E6C AA1403E0
04000000 07185E70 AA1503E1
04000000 07185E74 B94007E4
04000000 07185E78 2A1303E2
04000000 07185E7C 94000011
80000080
04000000 06A943EC 971E84ED
04000000 06A943F0 B9400BE1
04000000 06A943F4 529FFFE2
04000000 06A943F8 72AFFFE2
04000000 06A943FC AA1F03E3
04000000 06A94400 97A3BC40
04000000 06A94404 17FFFF94
04000000 07148960 9703B390
04000000 07148964 2A1303E1
04000000 07148968 52800022
04000000 0714896C AA1F03E3
04000000 07148970 9788EAE4
04000000 07148974 17FFFFDB
04000000 07185E68 9702BE4E
04000000 07185E6C B94003E1
04000000 07185E70 52800022
04000000 07185E74 AA1F03E3
04000000 07185E78 9787F5A2
04000000 07185E7C 14000001
20000000

[FixMissionRewards]
04000000 04E1C2F4 D503201F
[--SectionEnd:FixCodes--]
00000000 00000000 00000000

Code:
Disney Dreamlight Valley v1.19.1 BID=DD44F396D4C95D6B

[InfMiningRock]
04000000 047B3B88 F8018D1F

Meta.HitMiningRock.Types.Response$$ApplyThis

.text:00000071047B3B88                 STR             X0, [X8,#0x18]!

.text:00000071047B3B88                 STR             XZR, [X8,#0x18]!

Code:
// ============================================================================
/* Unlock All Clothing + Dev-Check Bypass
   Goal: Hook WardrobeMenu::OnFocusIn ("MOV X0, X19") → jump to code cave that
         grants all unowned clothing items, then restore X0←X19 and return.
         Additionally NOP out the developer-flag check guarding DebugAddItem. */
// ============================================================================


// --- [Block A] Hook Patch (WardrobeMenu::OnFocusIn) ---------------------------
// Original at hook site: 0x710717107C  MOV X0, X19
0x710717107C    BL    0x710821C60C                       // hook: replace MOV X0, X19 and branch to code cave


// --- [Block B] Developer Check Bypass (Meta.DebugAddItem.Types.Response$$ApplyThis) ---
// Original: 0x710471A654  CBZ W8, 0x710471A68C  → bypass by NOP
0x710471A654    NOP                                      // disable dev-flag gate so execution continues


// --- [Block C] Code Cave Start (RVA: 0x821C60C, Abs: 0x710821C60C) ----------
// Save/restore X19/LR and others; finally load saved X19 into X0 to recreate "MOV X0, X19".

// [Prologue & Saves]
0x710821C60C    STP   X19, X30, [SP, #-0x10]!           // push old X19, LR
0x710821C610    STP   X19, X20, [SP, #-0x10]!           // push working X19, Client*
0x710821C614    STP   X21, X22, [SP, #-0x10]!           // push array base, length
0x710821C618    STP   X23, X24, [SP, #-0x10]!           // push i, itemId

// [Acquire Client*]
0x710821C61C    BL    0x71032357A0                      // get_MetaClient() → X0
0x710821C620    MOV   X20, X0                           // X20 = Client*

// [Acquire Wardrobe (ListInventory*)]
0x710821C624    BL    0x7103235880                      // get_Profile() → X0
0x710821C628    BL    0x7104E04FE0                      // Profile.get_Wardrobe() → X0
0x710821C62C    MOV   X19, X0                           // X19 = ListInventory*

// [Get clothing list] ItemDatabase.Instance → GetAllByType(Clothing, null)
0x710821C630    BL    0x71044980E0                      // ItemDatabase.Instance → X0
0x710821C634    MOV   W1,  #5                           // ItemType.Clothing
0x710821C638    MOV   X2,  XZR                          // method = null
0x710821C63C    BL    0x7104493F40                      // GetAllByType(...) → X0 (List<T>*)

// [List<T> layout] size @ +0x18 (W), data @ +0x20 (ptr)
0x710821C640    ADD   X21, X0, #0x20                    // X21 = &elements[0]
0x710821C644    LDR   W22, [X0, #0x18]                  // W22 = length
0x710821C648    MOV   W23, #0                           // i = 0

// --- [Loop] for (i = 0; i < len; ++i) ----------------------------------------
0x710821C64C    LDR   X0, [X21, X23, LSL #3]            // X0 = IItemData* (ClothingItemData*)
0x710821C650    BL    0x7103F24BB0                      // ClothingItemData.get_Item() → W0 (itemId)
0x710821C654    MOV   W24, W0                           // W24 = itemId

// [KnowsItem?] skip if already owned
0x710821C658    MOV   X0, X19                           // this = ListInventory*
0x710821C65C    MOV   W1, W24                           // itemId
0x710821C660    BL    0x710482C180                      // ListInventory.KnowsItem(int) → W0
0x710821C664    TBNZ  W0, #0, 0x710821C67C              // if owned, jump to loop-next

// [Grant Item] DebugAddItem(itemId, 1, default)
0x710821C668    MOV   X0, X20                           // this = Client*
0x710821C66C    MOV   W1, W24                           // itemId
0x710821C670    MOV   W2, #1                            // amount = 1
0x710821C674    MOV   X3, XZR                           // CancellationToken = 0
0x710821C678    BL    0x71053832E0                      // Client.DebugAddItem(int,int,CancellationToken)

// [Loop next]
0x710821C67C    ADD   W23, W23, #1                      // i++
0x710821C680    CMP   W23, W22                          // i < len ?
0x710821C684    B.LO  0x710821C64C                      // loop back

// [Epilogue & Return] restore and recreate "MOV X0, X19"
0x710821C688    LDP   X23, X24, [SP], #0x10             // pop
0x710821C68C    LDP   X21, X22, [SP], #0x10             // pop
0x710821C690    LDP   X19, X20, [SP], #0x10             // pop
0x710821C694    LDP   X0,  X30, [SP], #0x10             // X0 ← (first-saved X19), restore LR
0x710821C698    RET                                     // back to original function


// --- [Block D] Reference (targets used above) ---------------------------------
// get_MetaClient()                                0x71032357A0
// get_Profile()                                   0x7103235880
// Profile.get_Wardrobe()                          0x7104E04FE0
// ItemDatabase.Instance                           0x71044980E0
// ItemDatabase.GetAllByType(ItemType.Clothing)    0x7104493F40
// ClothingItemData.get_Item()                     0x7103F24BB0
// ListInventory.KnowsItem(int)                    0x710482C180
// Client.DebugAddItem(int,int,CancellationToken)  0x71053832E0
 
Last edited by morarin,
DDV_Media_Key_Art_46686e9a14.jpg


Before using any cheat codes, be sure to back up your save data. You use cheat codes at your own risk.

Detailed reports are appreciated for any cheat code issues. New cheat code requests are always welcome (I can try at least).

sd:/atmospshere/contents/0100D39012C1A000/cheats/BID.txt

LatestArchive


  1. {MasterCode}
    040E0000 04D81E9C 6B1302A8
    04000000 04D7F6DC 4B170108
    04000000 047D8ACC 97FFFE41
    04000000 047DBDA4 94165553
    04000000 0599F680 D10283FF
    04000000 047A64F0 D101C3FF
    04000000 04CB7384 39412268
    04000000 04CB82C4 39412288
    04000000 04CAC41C 394092C8
    04000000 02FA8C94 F9406800
    04000000 02FA8C98 B40002A0
    04000000 02FA8C9C B9402041
    04000000 02FA8CA0 AA1F03E2
    04000000 02FA8CA4 94001DE3
    04000000 02FA8CA8 F9406E60
    04000000 02FA8CAC B4000200
    04000000 02FA8CB0 AA1F03E1
    04000000 047631C8 97C823E6
    04000000 047634D0 9445E9C8
    04000000 02B7D300 94B5823C
    04000000 047B3B88 F8018D00
    04000000 047F50E0 97D8A0E8
    04000000 047F571C 5400068B
    04000000 04C739BC 0B180101
    04000000 04C09824 B94026E8
    04000000 04C0982C 0B150108
    04000000 04D6DC34 0B180108
    04000000 04D6DC38 F81F03BF
    04000000 04D711D0 1A89B2B8
    04000000 04D711D8 1A89B115
    04000000 0471A654 340001C8
    04000000 0717107C AA1303E0
    04000000 03242A10 17FFF190
    04000000 03242A14 D503201F

    [R MoveSpeed x2]
    04000000 03120190 1E204160
    04000000 03120194 1E204181
    04000000 03120198 1E2041A2
    80000080
    04000000 03120190 1E2B2960
    04000000 03120194 1E2C2981
    04000000 03120198 1E2D29A2
    20000000

    [EnergyNoDecrease]
    040E0000 04D81E9C 6B1F02A8

    [CurrencyNoDecrease]
    04000000 04D7F6DC 4B1F0108

    [FreeCraft]
    04000000 047D8ACC 52800000
    04000000 047DBDA4 52800020

    [CookKeepItems]
    04000000 0599F680 D65F03C0
    04000000 047A64F0 D65F03C0

    [AlwaysCriticalSuccess]
    04000000 04CB7384 52800028
    04000000 04CB82C4 52800028

    [AlwaysBurning]
    04000000 04CAC41C 52800028

    [EasyFishing]
    04000000 02FA8C94 F9406660
    04000000 02FA8C98 AA1F03E1
    04000000 02FA8C9C 940016A9
    04000000 02FA8CA0 F9406660
    04000000 02FA8CA4 52800001
    04000000 02FA8CA8 AA1F03E2
    04000000 02FA8CAC 94001651
    04000000 02FA8CB0 1400000C

    [EasyGardening]
    04000000 047631C8 52800020
    04000000 047634D0 D503201F

    [InfFruits]
    04000000 02B7D300 D503201F

    [InfMiningRock]
    04000000 047B3B88 F8018D1F

    [EasyUnlockCritter]
    04000000 047F50E0 52800020
    04000000 047F571C D503201F

    [PetFriendshipMax(add)]
    04000000 04C739BC 2A1503E1

    [FriendshipMax(add)]
    04000000 04C09824 52A00028
    04000000 04C0982C 729C6CC8

    [XPMax(add)]
    04000000 04D6DC34 52A00148
    04000000 04D6DC38 72824408

    [CurrencyMax(add)]
    04000000 04D711D0 1A89B138
    04000000 04D711D8 1A89B135

    [GetAllMissingClothing]
    04000000 0471A654 D503201F
    04000000 0717107C 9442AD64
    04000000 0821C60C A9BF7BF3
    04000000 0821C610 A9BF53F3
    04000000 0821C614 A9BF5BF5
    04000000 0821C618 A9BF63F7
    04000000 0821C61C 96C06461
    04000000 0821C620 AA0003F4
    04000000 0821C624 96C06497
    04000000 0821C628 972FA26E
    04000000 0821C62C AA0003F3
    04000000 0821C630 9709EEAC
    04000000 0821C634 528000A1
    04000000 0821C638 AA1F03E2
    04000000 0821C63C 9709DE41
    04000000 0821C640 91008015
    04000000 0821C644 B9401816
    04000000 0821C648 52800017
    04000000 0821C64C F8777AA0
    04000000 0821C650 96F42158
    04000000 0821C654 2A0003F8
    04000000 0821C658 AA1303E0
    04000000 0821C65C 2A1803E1
    04000000 0821C660 97183EC8
    04000000 0821C664 370000C0
    04000000 0821C668 AA1403E0
    04000000 0821C66C 2A1803E1
    04000000 0821C670 52800022
    04000000 0821C674 AA1F03E3
    04000000 0821C678 97459B1A
    04000000 0821C67C 110006F7
    04000000 0821C680 6B1602FF
    04000000 0821C684 54FFFE43
    04000000 0821C688 A8C163F7
    04000000 0821C68C A8C15BF5
    04000000 0821C690 A8C153F3
    04000000 0821C694 A8C17BE0
    04000000 0821C698 D65F03C0

    [WelcomeVanellope]
    04000000 03242A10 B4FE3201
    04000000 03242A14 153F6722
    04000000 0821C69C B9402028
    04000000 0821C6A0 7100051F
    04000000 0821C6A4 A9BF7BF3
    04000000 0821C6A8 A9BF57F4
    04000000 0821C6AC A9BF5FF6
    04000000 0821C6B0 A9BF67F8
    04000000 0821C6B4 A9BF6FFA
    04000000 0821C6B8 AA0003F3
    04000000 0821C6BC F9400C28
    04000000 0821C6C0 B9401914
    04000000 0821C6C4 96C08A63
    04000000 0821C6C8 96C0646E
    04000000 0821C6CC F9401800
    04000000 0821C6D0 2A1403E1
    04000000 0821C6D4 AA1F03E2
    04000000 0821C6D8 972E10DA
    04000000 0821C6DC AA0003F4
    04000000 0821C6E0 974C1CD0
    04000000 0821C6E4 F9400C08
    04000000 0821C6E8 F9400908
    04000000 0821C6EC B9401915
    04000000 0821C6F0 F9400909
    04000000 0821C6F4 91008137
    04000000 0821C6F8 52800016
    04000000 0821C6FC 6B1502DF
    04000000 0821C700 5400042A
    04000000 0821C704 F8767AEA
    04000000 0821C708 F9400D4B
    04000000 0821C70C F940096B
    04000000 0821C710 B9401978
    04000000 0821C714 F940096C
    04000000 0821C718 9100819A
    04000000 0821C71C 52800019
    04000000 0821C720 6B18033F
    04000000 0821C724 540002CA
    04000000 0821C728 F8797B40
    04000000 0821C72C B9403001
    04000000 0821C730 7100043F
    04000000 0821C734 54000060
    04000000 0821C738 7100083F
    04000000 0821C73C 540001C1
    04000000 0821C740 F940440D
    04000000 0821C744 B94049A1
    04000000 0821C748 71033C3F
    04000000 0821C74C 540000A0
    04000000 0821C750 7102303F
    04000000 0821C754 54000101
    04000000 0821C758 528001C1
    04000000 0821C75C 14000002
    04000000 0821C760 528001A1
    04000000 0821C764 F94019A3
    04000000 0821C768 AA1403E2
    04000000 0821C76C AA1303E0
    04000000 0821C770 96C09820
    04000000 0821C774 11000739
    04000000 0821C778 17FFFFEA
    04000000 0821C77C 110006D6
    04000000 0821C780 17FFFFDF
    04000000 0821C784 A8C16FFA
    04000000 0821C788 A8C167F8
    04000000 0821C78C A8C15FF6
    04000000 0821C790 A8C157F4
    04000000 0821C794 A8C17BF3
    04000000 0821C798 D65F03C0

  2. {MasterCode}
    040E0000 04D7DF5C 6B1302A8
    04000000 04D7B79C 4B170108
    04000000 047D4AEC 97FFFE41
    04000000 047D7DC4 9416557B
    04000000 0599AE60 D10283FF
    04000000 047A2720 D101C3FF
    04000000 04CB3444 39412268
    04000000 04CB4384 39412288
    04000000 04CA84DC 394092C8
    04000000 02FA78A4 F9406800
    04000000 02FA78A8 B40002A0
    04000000 02FA78AC B9402041
    04000000 02FA78B0 AA1F03E2
    04000000 02FA78B4 94001DE3
    04000000 02FA78B8 F9406E60
    04000000 02FA78BC B4000200
    04000000 02FA78C0 AA1F03E1
    04000000 0475F3F8 97C8241E
    04000000 0475F700 9445E734
    04000000 02B7BF40 94B57524
    04000000 047AFDB8 F8018D00
    04000000 04C058E4 B94026E8
    04000000 04C058EC 0B150108
    04000000 04D69CF4 0B180108
    04000000 04D69CF8 F81F03BF
    04000000 04D6D290 1A89B2B8
    04000000 04D6D298 1A89B115
    04000000 03241620 17FFF190
    04000000 03241624 D503201F

    [R MoveSpeed x2]
    04000000 0311EDA0 1E204160
    04000000 0311EDA4 1E204181
    04000000 0311EDA8 1E2041A2
    80000080
    04000000 0311EDA0 1E2B2960
    04000000 0311EDA4 1E2C2981
    04000000 0311EDA8 1E2D29A2
    20000000

    [EnergyNoDecrease]
    040E0000 04D7DF5C 6B1F02A8

    [CurrencyNoDecrease]
    04000000 04D7B79C 4B1F0108

    [FreeCraft]
    04000000 047D4AEC 52800000
    04000000 047D7DC4 52800020

    [CookKeepItems]
    04000000 0599AE60 D65F03C0
    04000000 047A2720 D65F03C0

    [AlwaysCriticalSuccess]
    04000000 04CB3444 52800028
    04000000 04CB4384 52800028

    [AlwaysBurning]
    04000000 04CA84DC 52800028

    [EasyFishing]
    04000000 02FA78A4 F9406660
    04000000 02FA78A8 AA1F03E1
    04000000 02FA78AC 940016A9
    04000000 02FA78B0 F9406660
    04000000 02FA78B4 52800001
    04000000 02FA78B8 AA1F03E2
    04000000 02FA78BC 94001651
    04000000 02FA78C0 1400000C

    [EasyGardening]
    04000000 0475F3F8 52800020
    04000000 0475F700 D503201F

    [InfFruits]
    04000000 02B7BF40 D503201F

    [InfMiningRock]
    04000000 047AFDB8 F8018D1F

    [FriendshipMax(add)]
    04000000 04C058E4 52A00028
    04000000 04C058EC 729C6CC8

    [XPMax(add)]
    04000000 04D69CF4 52A00148
    04000000 04D69CF8 72824408

    [CurrencyMax(add)]
    04000000 04D6D290 1A89B138
    04000000 04D6D298 1A89B135

    [WelcomeVanellope]
    04000000 03241620 B4FE3201
    04000000 03241624 153F5762
    04000000 082173AC B9402028
    04000000 082173B0 7100051F
    04000000 082173B4 A9BF7BF3
    04000000 082173B8 A9BF57F4
    04000000 082173BC A9BF5FF6
    04000000 082173C0 A9BF67F8
    04000000 082173C4 A9BF6FFA
    04000000 082173C8 AA0003F3
    04000000 082173CC F9400C28
    04000000 082173D0 B9401914
    04000000 082173D4 96C09A23
    04000000 082173D8 96C0742E
    04000000 082173DC F9401800
    04000000 082173E0 2A1403E1
    04000000 082173E4 AA1F03E2
    04000000 082173E8 972E15C6
    04000000 082173EC AA0003F4
    04000000 082173F0 974C1F84
    04000000 082173F4 F9400C08
    04000000 082173F8 F9400908
    04000000 082173FC B9401915
    04000000 08217400 F9400909
    04000000 08217404 91008137
    04000000 08217408 52800016
    04000000 0821740C 6B1502DF
    04000000 08217410 5400042A
    04000000 08217414 F8767AEA
    04000000 08217418 F9400D4B
    04000000 0821741C F940096B
    04000000 08217420 B9401978
    04000000 08217424 F940096C
    04000000 08217428 9100819A
    04000000 0821742C 52800019
    04000000 08217430 6B18033F
    04000000 08217434 540002CA
    04000000 08217438 F8797B40
    04000000 0821743C B9403001
    04000000 08217440 7100043F
    04000000 08217444 54000060
    04000000 08217448 7100083F
    04000000 0821744C 540001C1
    04000000 08217450 F940440D
    04000000 08217454 B94049A1
    04000000 08217458 71033C3F
    04000000 0821745C 540000A0
    04000000 08217460 7102303F
    04000000 08217464 54000101
    04000000 08217468 528001C1
    04000000 0821746C 14000002
    04000000 08217470 528001A1
    04000000 08217474 F94019A3
    04000000 08217478 AA1403E2
    04000000 0821747C AA1303E0
    04000000 08217480 96C0A7E0
    04000000 08217484 11000739
    04000000 08217488 17FFFFEA
    04000000 0821748C 110006D6
    04000000 08217490 17FFFFDF
    04000000 08217494 A8C16FFA
    04000000 08217498 A8C167F8
    04000000 0821749C A8C15FF6
    04000000 082174A0 A8C157F4
    04000000 082174A4 A8C17BF3
    04000000 082174A8 D65F03C0

    {MasterCode}
    040E0000 04D3410C 6B1302A8
    04000000 04D319EC 4B170108
    04000000 04799A0C 97FFFE41
    04000000 0479CD04 94161A2F
    04000000 04767640 D10283FF
    04000000 047678B0 D101C3FF
    04000000 04C6B304 39412268
    04000000 04C6C244 39412288
    04000000 04C6039C 394092C8
    04000000 02F9BA04 F9406800
    04000000 02F9BA08 B40002A0
    04000000 02F9BA0C B9402041
    04000000 02F9BA10 AA1F03E2
    04000000 02F9BA14 94001DE3
    04000000 02F9BA18 F9406E60
    04000000 02F9BA1C B4000200
    04000000 02F9BA20 AA1F03E1
    04000000 04724598 97C8CE82
    04000000 047248A0 944584B8
    04000000 0472E154 94455E8B
    04000000 04774E28 F8018D00
    04000000 04BBD864 B94026E8
    04000000 04BBD86C 0B150108
    04000000 04D1FF04 0B180108
    04000000 04D1FF08 F81F03BF
    04000000 04D234A0 1A89B2B8
    04000000 04D234A8 1A89B115
    04000000 03232850 17FFF1A4
    04000000 03232854 D503201F

    [R MoveSpeed x2]
    04000000 03113350 1E204160
    04000000 03113354 1E204181
    04000000 03113358 1E2041A2
    80000080
    04000000 03113350 1E2B2960
    04000000 03113354 1E2C2981
    04000000 03113358 1E2D29A2
    20000000

    [EnergyNoDecrease]
    040E0000 04D3410C 6B1F02A8

    [CurrencyNoDecrease]
    04000000 04D319EC 4B1F0108

    [FreeCraft]
    04000000 04799A0C 52800000
    04000000 0479CD04 52800020

    [CookKeepItems]
    04000000 04767640 D65F03C0
    04000000 047678B0 D65F03C0

    [AlwaysCriticalSuccess]
    04000000 04C6B304 52800028
    04000000 04C6C244 52800028

    [AlwaysBurning]
    04000000 04C6039C 52800028

    [EasyFishing]
    04000000 02F9BA04 F9406660
    04000000 02F9BA08 AA1F03E1
    04000000 02F9BA0C 940016A9
    04000000 02F9BA10 F9406660
    04000000 02F9BA14 52800001
    04000000 02F9BA18 AA1F03E2
    04000000 02F9BA1C 94001651
    04000000 02F9BA20 1400000C

    [EasyGardening]
    04000000 04724598 52800020
    04000000 047248A0 D503201F

    [InfFruits]
    04000000 0472E154 D503201F

    [InfMiningRock]
    04000000 04774E28 F8018D1F

    [FriendshipMax(add)]
    04000000 04BBD864 52A00028
    04000000 04BBD86C 729C6CC8

    [XPMax(add)]
    04000000 04D1FF04 52A00148
    04000000 04D1FF08 72824408

    [CurrencyMax(add)]
    04000000 04D234A0 1A89B138
    04000000 04D234A8 1A89B135

    [WelcomeVanellope]
    04000000 03232850 B4FE3481
    04000000 03232854 153D834C
    04000000 08193584 B9402028
    04000000 08193588 7100051F
    04000000 0819358C 544DCAA1
    04000000 08193590 A9BF7BF3
    04000000 08193594 A9BF57F4
    04000000 08193598 A9BF5FF6
    04000000 0819359C A9BF67F8
    04000000 081935A0 A9BF6FFA
    04000000 081935A4 AA0003F3
    04000000 081935A8 F9400C28
    04000000 081935AC B9401914
    04000000 081935B0 96C26E4C
    04000000 081935B4 96C2487F
    04000000 081935B8 F9401800
    04000000 081935BC 2A1403E1
    04000000 081935C0 AA1F03E2
    04000000 081935C4 972F7F7B
    04000000 081935C8 AA0003F4
    04000000 081935CC 974CE549
    04000000 081935D0 F9400C08
    04000000 081935D4 F9400908
    04000000 081935D8 B9401915
    04000000 081935DC F9400909
    04000000 081935E0 91008137
    04000000 081935E4 52800016
    04000000 081935E8 6B1502DF
    04000000 081935EC 5400042A
    04000000 081935F0 F8767AEA
    04000000 081935F4 F9400D4B
    04000000 081935F8 F940096B
    04000000 081935FC B9401978
    04000000 08193600 F940096C
    04000000 08193604 9100819A
    04000000 08193608 52800019
    04000000 0819360C 6B18033F
    04000000 08193610 540002CA
    04000000 08193614 F8797B40
    04000000 08193618 B9403001
    04000000 0819361C 7100043F
    04000000 08193620 54000060
    04000000 08193624 7100083F
    04000000 08193628 540001C1
    04000000 0819362C F940440D
    04000000 08193630 B94049A1
    04000000 08193634 71033C3F
    04000000 08193638 540000A0
    04000000 0819363C 7102303F
    04000000 08193640 54000101
    04000000 08193644 528001C1
    04000000 08193648 14000002
    04000000 0819364C 528001A1
    04000000 08193650 F94019A3
    04000000 08193654 AA1403E2
    04000000 08193658 AA1303E0
    04000000 0819365C 96C27BF5
    04000000 08193660 11000739
    04000000 08193664 17FFFFEA
    04000000 08193668 110006D6
    04000000 0819366C 17FFFFDF
    04000000 08193670 A8C16FFA
    04000000 08193674 A8C167F8
    04000000 08193678 A8C15FF6
    04000000 0819367C A8C157F4
    04000000 08193680 A8C17BF3
    04000000 08193684 D65F03C0

    {MasterCode}
    040E0000 04C9433C 6B1302A8
    04000000 04C91C1C 4B170108
    04000000 04701D0C 97FFFE41
    04000000 04705004 9415F9FB
    04000000 04C836D0 1A89B2B8
    04000000 04C836D8 1A89B115
    04000000 04C7FFC4 0B180108
    04000000 04C7FFC8 F81F03BF
    04000000 04B11444 B94026E8
    04000000 04B1144C 0B150108

    [R MoveSpeed x2]
    04000000 030EDAD0 1E204160
    04000000 030EDAD4 1E204181
    04000000 030EDAD8 1E2041A2
    80000080
    04000000 030EDAD0 1E2B2960
    04000000 030EDAD4 1E2C2981
    04000000 030EDAD8 1E2D29A2
    20000000

    [EnergyNoDecrease]
    040E0000 04C9433C 6B1F02A8

    [CurrencyNoDecrease]
    04000000 04C91C1C 4B1F0108

    [FreeCraft]
    04000000 04701D0C 52800000
    04000000 04705004 52800020

    [CurrencyMax(add)]
    04000000 04C836D0 1A89B138
    04000000 04C836D8 1A89B135

    [XPMax(add)]
    04000000 04C7FFC4 52A00148
    04000000 04C7FFC8 72824408

    [FriendshipMax(add)]
    04000000 04B11444 52A00028
    04000000 04B1144C 729C6CC8

    {MasterCode}
    040E0000 04C83E7C 6B1302A8
    04000000 04C8175C 4B170108
    04000000 046F181C 97FFFE41
    04000000 046F4B14 9415FA07
    04000000 04C73210 1A89B2B8
    04000000 04C73218 1A89B115
    04000000 04C6FB04 0B180108
    04000000 04C6FB08 F81F03BF
    04000000 04B00F54 B94026E8
    04000000 04B00F5C 0B150108

    [R MoveSpeed x2]
    04000000 030DCAA0 1E204160
    04000000 030DCAA4 1E204181
    04000000 030DCAA8 1E2041A2
    80000080
    04000000 030DCAA0 1E2B2960
    04000000 030DCAA4 1E2C2981
    04000000 030DCAA8 1E2D29A2
    20000000

    [EnergyNoDecrease]
    040E0000 04C83E7C 6B1F02A8

    [CurrencyNoDecrease]
    04000000 04C8175C 4B1F0108

    [FreeCraft]
    04000000 046F181C 52800000
    04000000 046F4B14 52800020

    [CurrencyMax(add)]
    04000000 04C73210 1A89B138
    04000000 04C73218 1A89B135

    [XPMax(add)]
    04000000 04C6FB04 52A00148
    04000000 04C6FB08 72824408

    [FriendshipMax(add)]
    04000000 04B00F54 52A00028
    04000000 04B00F5C 729C6CC8

    {MasterCode}
    040E0000 04C8B5EC 6B1302A8
    04000000 04C88ECC 4B170108
    04000000 046DD06C 97FFFE41
    04000000 046E0364 941669CF
    04000000 04C7A980 1A89B2B8
    04000000 04C7A988 1A89B115
    08000000 04C77274 F81F03BF 0B180108
    04000000 04B086C4 B94026E8
    04000000 04B086CC 0B150108

    [R MoveSpeed x2]
    08000000 030D54F0 1E204181 1E204160
    04000000 030D54F8 1E2041A2
    80000080
    08000000 030D54F0 1E2C2981 1E2B2960
    04000000 030D54F8 1E2D29A2
    20000000

    [EnergyNoDecrease]
    040E0000 04C8B5EC 6B1F02A8

    [CurrencyNoDecrease]
    04000000 04C88ECC 4B1F0108

    [FreeCraft]
    04000000 046DD06C 52800000
    04000000 046E0364 52800020

    [CurrencyMax(add)]
    04000000 04C7A980 1A89B138
    04000000 04C7A988 1A89B135

    [XPMax(add)]
    08000000 04C77274 72824408 52A00148

    [FriendshipMax(add)]
    04000000 04B086C4 52A00028
    04000000 04B086CC 729C6CC8
The new version has been updated, and the cheat codes have also been updated. That's really timely. Thanks for your hard work—I can start playing again now!
 
  • Like
Reactions: D4M28 and morarin
Disney Dreamlight Valley v1.19.1 BID=DD44F396D4C95D6B



"GetAllMissing~" codes cannot be used at the same time. Please use them one by one.


[GetAllMissingFurniture]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA24E
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 52800081
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800C62
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingFurniture OFF]
04000000 0471A654 340001C8
04000000 0717107C AA1303E0

With this cheat code enabled, opening the wardrobe will grant you 99 of every furniture item you do not already own. It will take some time for all the furniture items to be added. I highly recommend you leave it alone until it has finished.

Code:
// ============================================================================
// Unlock All Furniture (Catalog) + Dev-Check Bypass
/* Goal: Hook WardrobeMenu::OnFocusIn ("MOV X0, X19") → jump to a code cave that
         grants all unowned *furniture* entries routed to the Catalog ListInventory,
         then restore X0←X19 and return. Also NOP out the developer-flag check
         guarding DebugAddItem so item granting proceeds. */
// ============================================================================


// --- [Block A] Hook Patch (WardrobeMenu::OnFocusIn) -------------------------
// Original at hook site: 0x710717107C  MOV X0, X19
0x710717107C    BL    0x710821C60C                       // hook: replace MOV X0, X19 and branch to code cave


// --- [Block B] Developer Check Bypass (Meta.DebugAddItem.Types.Response$$ApplyThis) ---
// Original: 0x710471A654  CBZ W8, 0x710471A68C  → bypass by NOP
0x710471A654    NOP                                      // disable dev-flag gate so DebugAddItem can run


// --- [Block C] Code Cave Start (RVA: 0x821C60C, Abs: 0x710821C60C) ----------
// Save/restore X19/LR and others; finally load saved X19 into X0 to recreate "MOV X0, X19".

// [Prologue & Saves]
0x710821C60C    STP   X19, X30, [SP, #-0x10]!           // push old X19 and LR
0x710821C610    STP   X19, X20, [SP, #-0x10]!           // push working X19 and Client*
0x710821C614    STP   X21, X22, [SP, #-0x10]!           // push elements base and length
0x710821C618    STP   X23, X24, [SP, #-0x10]!           // push loop index and temp itemId

// [Acquire Client*]
0x710821C61C    BL    0x71032357A0                      // get_MetaClient() → X0
0x710821C620    MOV   X20, X0                           // X20 = Client*

// [Acquire Catalog (ListInventory*)]  <-- changed from Wardrobe to Catalog
0x710821C624    BL    0x7103235880                      // get_Profile() → X0
0x710821C628    BL    0x7104E04F60                      // Profile.get_Catalog() → X0
0x710821C62C    MOV   X19, X0                           // X19 = ListInventory* (Catalog)

// [Get furniture list] ItemDatabase.Instance → GetAllByType(Furniture, null)
0x710821C630    BL    0x71044980E0                      // ItemDatabase.Instance → X0
0x710821C634    MOV   W1,  #4                           // ItemType.Furniture
0x710821C638    MOV   X2,  XZR                          // method = null
0x710821C63C    BL    0x7104493F40                      // GetAllByType(...) → X0 (List<T>*)

// [List<T> layout] size @ +0x18 (W), data @ +0x20 (ptr)
0x710821C640    ADD   X21, X0, #0x20                    // X21 = &elements[0]
0x710821C644    LDR   W22, [X0, #0x18]                  // W22 = length
0x710821C648    MOV   W23, #0                           // i = 0

// --- [Loop] for (i = 0; i < len; ++i) ----------------------------------------
// NOTE: This calls a concrete get_Item() to extract itemId from each ItemData.
0x710821C64C    LDR   X0, [X21, X23, LSL #3]            // X0 = IItemData* (concrete Furniture*ItemData*)
0x710821C650    BL    0x7103F24BB0                      // ItemData.get_Item() → W0 (itemId)
0x710821C654    MOV   W24, W0                           // W24 = itemId

// [KnowsItem?] skip if already owned in Catalog
0x710821C658    MOV   X0, X19                           // this = Catalog (ListInventory*)
0x710821C65C    MOV   W1, W24                           // itemId
0x710821C660    BL    0x710482C180                      // ListInventory.KnowsItem(int) → W0
0x710821C664    TBNZ  W0, #0, 0x710821C67C              // if owned, jump to loop-next

// [Grant Item] add via DebugAddItem(itemId, 1, default CancellationToken)
0x710821C668    MOV   X0, X20                           // this = Client*
0x710821C66C    MOV   W1, W24                           // itemId
0x710821C670    MOV   W2, #99                            // amount = 99
0x710821C674    MOV   X3, XZR                           // CancellationToken = 0
0x710821C678    BL    0x71053832E0                      // Client.DebugAddItem(int,int,CancellationToken)

// [Loop next]
0x710821C67C    ADD   W23, W23, #1                      // i++
0x710821C680    CMP   W23, W22                          // i < len ?
0x710821C684    B.LO  0x710821C64C                      // continue loop

// [Epilogue & Return] restore regs and recreate "MOV X0, X19"
0x710821C688    LDP   X23, X24, [SP], #0x10             // pop temps
0x710821C68C    LDP   X21, X22, [SP], #0x10             // pop list meta
0x710821C690    LDP   X19, X20, [SP], #0x10             // pop inv and client
0x710821C694    LDP   X0,  X30, [SP], #0x10             // X0 ← (first-saved X19), restore LR
0x710821C698    RET                                     // return to original function


// --- [Block D] Reference (targets used above) --------------------------------
// get_MetaClient()                                0x71032357A0
// get_Profile()                                   0x7103235880
// Profile.get_Catalog()                           0x7104E04F60
// ItemDatabase.Instance                           0x71044980E0
// ItemDatabase.GetAllByType(ItemType.Furniture)   0x7104493F40
// ItemData.get_Item()                             0x7103F24BB0
// ListInventory.KnowsItem(int)                    0x710482C180
// Client.DebugAddItem(int,int,CancellationToken)  0x71053832E0
Post automatically merged:

[GetAllMissingWallpaper&Floors]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA2DA
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 52800201
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingWallpaper&Floors OFF]
04000000 0471A654 340001C8
04000000 0717107C AA1303E0

Turn on this cheat code and open the wardrobe to unlock all unowned wallpaper&floors items. It will take some time for all the wallpaper&floors items to be added. I highly recommend you leave it alone until it has finished.

Code:
// ============================================================================
// Unlock All Trimming (Wallpaper & Flooring) + Dev-Check Bypass
/* Goal: Hook WardrobeMenu::OnFocusIn ("MOV X0, X19") → jump to a code cave that
         grants all unowned trimming entries (Wallpaper/Flooring) routed to the
         Trimming ListInventory, then restore X0←X19 and return. Also NOP out
         the developer-flag check guarding DebugAddItem so item granting proceeds. */
// ============================================================================


// --- [Block A] Hook Patch (WardrobeMenu::OnFocusIn) -------------------------
// Original at hook site: 0x710717107C  MOV X0, X19
0x710717107C    BL    0x710821C60C                       // hook: replace MOV X0, X19 and branch to code cave


// --- [Block B] Developer Check Bypass (Meta.DebugAddItem.Types.Response$$ApplyThis) ---
// Original: 0x710471A654  CBZ W8, 0x710471A68C  → bypass by NOP
0x710471A654    NOP                                      // disable dev-flag gate so DebugAddItem can run


// --- [Block C] Code Cave Start (RVA: 0x821C60C, Abs: 0x710821C60C) ----------
// Save/restore X19/LR and others; finally load saved X19 into X0 to recreate "MOV X0, X19".

// [Prologue & Saves]
0x710821C60C    STP   X19, X30, [SP, #-0x10]!           // push old X19 and LR
0x710821C610    STP   X19, X20, [SP, #-0x10]!           // push working X19 and Client*
0x710821C614    STP   X21, X22, [SP, #-0x10]!           // push elements base and length
0x710821C618    STP   X23, X24, [SP, #-0x10]!           // push loop index and temp itemId

// [Acquire Client*]
0x710821C61C    BL    0x71032357A0                      // get_MetaClient() → X0
0x710821C620    MOV   X20, X0                           // X20 = Client*

// [Acquire Trimming (ListInventory*)]
0x710821C624    BL    0x7103235880                      // get_Profile() → X0
0x710821C628    BL    0x7104E05190                      // Profile.get_Trimming() → X0
0x710821C62C    MOV   X19, X0                           // X19 = ListInventory* (Trimming)

// [Get trimming list] ItemDatabase.Instance → GetAllByType(Trimming, null)
0x710821C630    BL    0x71044980E0                      // ItemDatabase.Instance → X0
0x710821C634    MOV   W1,  #16                          // ItemType.Trimming
0x710821C638    MOV   X2,  XZR                          // method = null
0x710821C63C    BL    0x7104493F40                      // GetAllByType(...) → X0 (List<T>*)

// [List<T> layout] size @ +0x18 (W), data @ +0x20 (ptr)
0x710821C640    ADD   X21, X0, #0x20                    // X21 = &elements[0]
0x710821C644    LDR   W22, [X0, #0x18]                  // W22 = length
0x710821C648    MOV   W23, #0                           // i = 0

// --- [Loop] for (i = 0; i < len; ++i) ----------------------------------------
// NOTE: This calls a concrete get_Item() to extract itemId from each ItemData.
0x710821C64C    LDR   X0, [X21, X23, LSL #3]            // X0 = IItemData* (concrete Trimming*ItemData*)
0x710821C650    BL    0x7103F24BB0                      // ItemData.get_Item() → W0 (itemId)
0x710821C654    MOV   W24, W0                           // W24 = itemId

// [KnowsItem?] skip if already owned in Trimming
0x710821C658    MOV   X0, X19                           // this = Trimming (ListInventory*)
0x710821C65C    MOV   W1, W24                           // itemId
0x710821C660    BL    0x710482C180                      // ListInventory.KnowsItem(int) → W0
0x710821C664    TBNZ  W0, #0, 0x710821C67C              // if owned, jump to loop-next

// [Grant Item] add via DebugAddItem(itemId, 1, default CancellationToken)
0x710821C668    MOV   X0, X20                           // this = Client*
0x710821C66C    MOV   W1, W24                           // itemId
0x710821C670    MOV   W2, #1                            // amount = 1
0x710821C674    MOV   X3, XZR                           // CancellationToken = 0
0x710821C678    BL    0x71053832E0                      // Client.DebugAddItem(int,int,CancellationToken)

// [Loop next]
0x710821C67C    ADD   W23, W23, #1                      // i++
0x710821C680    CMP   W23, W22                          // i < len ?
0x710821C684    B.LO  0x710821C64C                      // continue loop

// [Epilogue & Return] restore regs and recreate "MOV X0, X19"
0x710821C688    LDP   X23, X24, [SP], #0x10             // pop temps
0x710821C68C    LDP   X21, X22, [SP], #0x10             // pop list meta
0x710821C690    LDP   X19, X20, [SP], #0x10             // pop inv and client
0x710821C694    LDP   X0,  X30, [SP], #0x10             // X0 ← (first-saved X19), restore LR
0x710821C698    RET                                     // return to original function


// --- [Block D] Reference (targets used above) --------------------------------
// get_MetaClient()                                0x71032357A0
// get_Profile()                                   0x7103235880
// Profile.get_Trimming()                          0x7104E05190
// ItemDatabase.Instance                           0x71044980E0
// ItemDatabase.GetAllByType(ItemType.Trimming)    0x7104493F40
// ItemData.get_Item()                             0x7103F24BB0
// ListInventory.KnowsItem(int)                    0x710482C180
// Client.DebugAddItem(int,int,CancellationToken)  0x71053832E0
Post automatically merged:

[GetAllMissingMakeup]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA2B6
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 528001C1
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingMakeup OFF]
04000000 0471A654 340001C8
04000000 0717107C AA1303E0

Turn on this cheat code and open the wardrobe to unlock all unowned makeup items. It will take some time for all the makeup items to be added. I highly recommend you leave it alone until it has finished.

Code:
// ============================================================================
// Unlock All Makeup + Dev-Check Bypass
/* Goal: Hook WardrobeMenu::OnFocusIn ("MOV X0, X19") → jump to a code cave that
         grants all unowned makeup entries routed to the Makeup ListInventory,
         then restore X0←X19 and return. Also NOP out the developer-flag check
         guarding DebugAddItem so item granting proceeds. */
// ============================================================================


// --- [Block A] Hook Patch (WardrobeMenu::OnFocusIn) -------------------------
// Original at hook site: 0x710717107C  MOV X0, X19
0x710717107C    BL    0x710821C60C                       // hook: replace MOV X0, X19 and branch to code cave


// --- [Block B] Developer Check Bypass (Meta.DebugAddItem.Types.Response$$ApplyThis) ---
// Original: 0x710471A654  CBZ W8, 0x710471A68C  → bypass by NOP
0x710471A654    NOP                                      // disable dev-flag gate so DebugAddItem can run


// --- [Block C] Code Cave Start (RVA: 0x821C60C, Abs: 0x710821C60C) ----------
// Save/restore X19/LR and others; finally load saved X19 into X0 to recreate "MOV X0, X19".

// [Prologue & Saves]
0x710821C60C    STP   X19, X30, [SP, #-0x10]!           // push old X19 and LR
0x710821C610    STP   X19, X20, [SP, #-0x10]!           // push working X19 and Client*
0x710821C614    STP   X21, X22, [SP, #-0x10]!           // push elements base and length
0x710821C618    STP   X23, X24, [SP, #-0x10]!           // push loop index and temp itemId

// [Acquire Client*]
0x710821C61C    BL    0x71032357A0                      // get_MetaClient() → X0
0x710821C620    MOV   X20, X0                           // X20 = Client*

// [Acquire Makeup (ListInventory*)]
0x710821C624    BL    0x7103235880                      // get_Profile() → X0
0x710821C628    BL    0x7104E05100                      // Profile.get_Makeup() → X0
0x710821C62C    MOV   X19, X0                           // X19 = ListInventory* (Makeup)

// [Get makeup list] ItemDatabase.Instance → GetAllByType(Makeup, null)
0x710821C630    BL    0x71044980E0                      // ItemDatabase.Instance → X0
0x710821C634    MOV   W1,  #14                          // ItemType.Makeup
0x710821C638    MOV   X2,  XZR                          // method = null
0x710821C63C    BL    0x7104493F40                      // GetAllByType(...) → X0 (List<T>*)

// [List<T> layout] size @ +0x18 (W), data @ +0x20 (ptr)
0x710821C640    ADD   X21, X0, #0x20                    // X21 = &elements[0]
0x710821C644    LDR   W22, [X0, #0x18]                  // W22 = length
0x710821C648    MOV   W23, #0                           // i = 0

// --- [Loop] for (i = 0; i < len; ++i) ----------------------------------------
// NOTE: This calls a concrete get_Item() to extract itemId from each ItemData.
0x710821C64C    LDR   X0, [X21, X23, LSL #3]            // X0 = IItemData* (concrete Makeup*ItemData*)
0x710821C650    BL    0x7103F24BB0                      // ItemData.get_Item() → W0 (itemId)
0x710821C654    MOV   W24, W0                           // W24 = itemId

// [KnowsItem?] skip if already owned in Makeup
0x710821C658    MOV   X0, X19                           // this = Makeup (ListInventory*)
0x710821C65C    MOV   W1, W24                           // itemId
0x710821C660    BL    0x710482C180                      // ListInventory.KnowsItem(int) → W0
0x710821C664    TBNZ  W0, #0, 0x710821C67C              // if owned, jump to loop-next

// [Grant Item] add via DebugAddItem(itemId, 1, default CancellationToken)
0x710821C668    MOV   X0, X20                           // this = Client*
0x710821C66C    MOV   W1, W24                           // itemId
0x710821C670    MOV   W2, #1                            // amount = 1
0x710821C674    MOV   X3, XZR                           // CancellationToken = 0
0x710821C678    BL    0x71053832E0                      // Client.DebugAddItem(int,int,CancellationToken)

// [Loop next]
0x710821C67C    ADD   W23, W23, #1                      // i++
0x710821C680    CMP   W23, W22                          // i < len ?
0x710821C684    B.LO  0x710821C64C                      // continue loop

// [Epilogue & Return] restore regs and recreate "MOV X0, X19"
0x710821C688    LDP   X23, X24, [SP], #0x10             // pop temps
0x710821C68C    LDP   X21, X22, [SP], #0x10             // pop list meta
0x710821C690    LDP   X19, X20, [SP], #0x10             // pop inv and client
0x710821C694    LDP   X0,  X30, [SP], #0x10             // X0 ← (first-saved X19), restore LR
0x710821C698    RET                                     // return to original function


// --- [Block D] Reference (targets used above) --------------------------------
// get_MetaClient()                                0x71032357A0
// get_Profile()                                   0x7103235880
// Profile.get_Makeup()                            0x7104E05100
// ItemDatabase.Instance                           0x71044980E0
// ItemDatabase.GetAllByType(ItemType.Makeup)      0x7104493F40
// ItemData.get_Item()                             0x7103F24BB0
// ListInventory.KnowsItem(int)                    0x710482C180
// Client.DebugAddItem(int,int,CancellationToken)  0x71053832E0
Post automatically merged:

[GetAllMissingAvatarFeature]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA38E
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 528000E1
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingAvatarFeature OFF]
04000000 0471A654 340001C8
04000000 0717107C AA1303E0

Turn on this cheat code and open the wardrobe to unlock all unowned avatarfeature items. It will take some time for all the avatarfeature items to be added. I highly recommend you leave it alone until it has finished.

Code:
// ============================================================================
// Unlock All Avatar Features + Dev-Check Bypass
/* Goal: Hook WardrobeMenu::OnFocusIn ("MOV X0, X19") → jump to a code cave that
         grants all unowned avatar features routed to the AvatarFeatures
         ListInventory, then restore X0←X19 and return. Also NOP out the
         developer-flag check guarding DebugAddItem so item granting proceeds. */
// ============================================================================


// --- [Block A] Hook Patch (WardrobeMenu::OnFocusIn) -------------------------
// Original at hook site: 0x710717107C  MOV X0, X19
0x710717107C    BL    0x710821C60C                       // hook: replace MOV X0, X19 and branch to code cave


// --- [Block B] Developer Check Bypass (Meta.DebugAddItem.Types.Response$$ApplyThis) ---
// Original: 0x710471A654  CBZ W8, 0x710471A68C  → bypass by NOP
0x710471A654    NOP                                      // disable dev-flag gate so DebugAddItem can run


// --- [Block C] Code Cave Start (RVA: 0x821C60C, Abs: 0x710821C60C) ----------
// Save/restore X19/LR and others; finally load saved X19 into X0 to recreate "MOV X0, X19".

// [Prologue & Saves]
0x710821C60C    STP   X19, X30, [SP, #-0x10]!           // push old X19 and LR
0x710821C610    STP   X19, X20, [SP, #-0x10]!           // push working X19 and Client*
0x710821C614    STP   X21, X22, [SP, #-0x10]!           // push elements base and length
0x710821C618    STP   X23, X24, [SP, #-0x10]!           // push loop index and temp itemId

// [Acquire Client*]
0x710821C61C    BL    0x71032357A0                      // get_MetaClient() → X0
0x710821C620    MOV   X20, X0                           // X20 = Client*

// [Acquire AvatarFeatures (ListInventory*)]
0x710821C624    BL    0x7103235880                      // get_Profile() → X0
0x710821C628    BL    0x7104E05460                      // Profile.get_AvatarFeatures() → X0
0x710821C62C    MOV   X19, X0                           // X19 = ListInventory* (AvatarFeatures)

// [Get avatar features list] ItemDatabase.Instance → GetAllByType(AvatarFeature, null)
0x710821C630    BL    0x71044980E0                      // ItemDatabase.Instance → X0
0x710821C634    MOV   W1,  #7                           // ItemType.AvatarFeature
0x710821C638    MOV   X2,  XZR                          // method = null
0x710821C63C    BL    0x7104493F40                      // GetAllByType(...) → X0 (List<T>*)

// [List<T> layout] size @ +0x18 (W), data @ +0x20 (ptr)
0x710821C640    ADD   X21, X0, #0x20                    // X21 = &elements[0]
0x710821C644    LDR   W22, [X0, #0x18]                  // W22 = length
0x710821C648    MOV   W23, #0                           // i = 0

// --- [Loop] for (i = 0; i < len; ++i) ----------------------------------------
// NOTE: This calls a concrete get_Item() to extract itemId from each ItemData.
0x710821C64C    LDR   X0, [X21, X23, LSL #3]            // X0 = IItemData* (concrete AvatarFeature*ItemData*)
0x710821C650    BL    0x7103F24BB0                      // ItemData.get_Item() → W0 (itemId)
0x710821C654    MOV   W24, W0                           // W24 = itemId

// [KnowsItem?] skip if already owned in AvatarFeatures
0x710821C658    MOV   X0, X19                           // this = AvatarFeatures (ListInventory*)
0x710821C65C    MOV   W1, W24                           // itemId
0x710821C660    BL    0x710482C180                      // ListInventory.KnowsItem(int) → W0
0x710821C664    TBNZ  W0, #0, 0x710821C67C              // if owned, jump to loop-next

// [Grant Item] add via DebugAddItem(itemId, 1, default CancellationToken)
0x710821C668    MOV   X0, X20                           // this = Client*
0x710821C66C    MOV   W1, W24                           // itemId
0x710821C670    MOV   W2, #1                            // amount = 1
0x710821C674    MOV   X3, XZR                           // CancellationToken = 0
0x710821C678    BL    0x71053832E0                      // Client.DebugAddItem(int,int,CancellationToken)

// [Loop next]
0x710821C67C    ADD   W23, W23, #1                      // i++
0x710821C680    CMP   W23, W22                          // i < len ?
0x710821C684    B.LO  0x710821C64C                      // continue loop

// [Epilogue & Return] restore regs and recreate "MOV X0, X19"
0x710821C688    LDP   X23, X24, [SP], #0x10             // pop temps
0x710821C68C    LDP   X21, X22, [SP], #0x10             // pop list meta
0x710821C690    LDP   X19, X20, [SP], #0x10             // pop inv and client
0x710821C694    LDP   X0,  X30, [SP], #0x10             // X0 ← (first-saved X19), restore LR
0x710821C698    RET                                     // return to original function


// --- [Block D] Reference (targets used above) --------------------------------
// get_MetaClient()                                0x71032357A0
// get_Profile()                                   0x7103235880
// Profile.get_AvatarFeatures()                    0x7104E05460
// ItemDatabase.Instance                           0x71044980E0
// ItemDatabase.GetAllByType(ItemType.AvatarFeature) 0x7104493F40
// ItemData.get_Item()                             0x7103F24BB0
// ListInventory.KnowsItem(int)                    0x710482C180
// Client.DebugAddItem(int,int,CancellationToken)  0x71053832E0
Post automatically merged:

[GetAllMissingSkins]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA346
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 52800221
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingSkins OFF]
04000000 0471A654 340001C8
04000000 0717107C AA1303E0

Turn on this cheat code and open the wardrobe to unlock all unowned skin items. It will take some time for all the skin items to be added. I highly recommend you leave it alone until it has finished.

Code:
// ============================================================================
// Unlock All Skins + Dev-Check Bypass
/* Goal: Hook WardrobeMenu::OnFocusIn ("MOV X0, X19") → jump to a code cave that
         grants all unowned skins routed to the Skins ListInventory,
         then restore X0←X19 and return. Also NOP out the developer-flag check
         guarding DebugAddItem so item granting proceeds. */
// ============================================================================


// --- [Block A] Hook Patch (WardrobeMenu::OnFocusIn) -------------------------
// Original at hook site: 0x710717107C  MOV X0, X19
0x710717107C    BL    0x710821C60C                       // hook: replace MOV X0, X19 and branch to code cave


// --- [Block B] Developer Check Bypass (Meta.DebugAddItem.Types.Response$$ApplyThis) ---
0x710471A654    NOP                                      // disable dev-flag gate so DebugAddItem can run


// --- [Block C] Code Cave Start (RVA: 0x821C60C, Abs: 0x710821C60C) ----------
// Save/restore X19/LR and others; finally load saved X19 into X0 to recreate "MOV X0, X19".

// [Prologue & Saves]
0x710821C60C    STP   X19, X30, [SP, #-0x10]!           // push old X19 and LR
0x710821C610    STP   X19, X20, [SP, #-0x10]!           // push working X19 and Client*
0x710821C614    STP   X21, X22, [SP, #-0x10]!           // push elements base and length
0x710821C618    STP   X23, X24, [SP, #-0x10]!           // push loop index and temp itemId

// [Acquire Client*]
0x710821C61C    BL    0x71032357A0                      // get_MetaClient() → X0
0x710821C620    MOV   X20, X0                           // X20 = Client*

// [Acquire Skins (ListInventory*)]
0x710821C624    BL    0x7103235880                      // get_Profile() → X0
0x710821C628    BL    0x7104E05340                      // Profile.get_Skins() → X0
0x710821C62C    MOV   X19, X0                           // X19 = ListInventory* (Skins)

// [Get skins list] ItemDatabase.Instance → GetAllByType(Skin, null)
0x710821C630    BL    0x71044980E0                      // ItemDatabase.Instance → X0
0x710821C634    MOV   W1,  #17                          // ItemType.Skin
0x710821C638    MOV   X2,  XZR                          // method = null
0x710821C63C    BL    0x7104493F40                      // GetAllByType(...) → X0 (List<T>*)

// [List<T> layout] size @ +0x18 (W), data @ +0x20 (ptr)
0x710821C640    ADD   X21, X0, #0x20                    // X21 = &elements[0]
0x710821C644    LDR   W22, [X0, #0x18]                  // W22 = length
0x710821C648    MOV   W23, #0                           // i = 0

// --- [Loop] for (i = 0; i < len; ++i) ----------------------------------------
// NOTE: This calls a concrete get_Item() to extract itemId from each ItemData.
0x710821C64C    LDR   X0, [X21, X23, LSL #3]            // X0 = IItemData* (concrete Skin*ItemData*)
0x710821C650    BL    0x7103F24BB0                      // ItemData.get_Item() → W0 (itemId)
0x710821C654    MOV   W24, W0                           // W24 = itemId

// [KnowsItem?] skip if already owned in Skins
0x710821C658    MOV   X0, X19                           // this = Skins (ListInventory*)
0x710821C65C    MOV   W1, W24                           // itemId
0x710821C660    BL    0x710482C180                      // ListInventory.KnowsItem(int) → W0
0x710821C664    TBNZ  W0, #0, 0x710821C67C              // if owned, jump to loop-next

// [Grant Item] add via DebugAddItem(itemId, 1, default CancellationToken)
0x710821C668    MOV   X0, X20                           // this = Client*
0x710821C66C    MOV   W1, W24                           // itemId
0x710821C670    MOV   W2, #1                            // amount = 1
0x710821C674    MOV   X3, XZR                           // CancellationToken = 0
0x710821C678    BL    0x71053832E0                      // Client.DebugAddItem(int,int,CancellationToken)

// [Loop next]
0x710821C67C    ADD   W23, W23, #1                      // i++
0x710821C680    CMP   W23, W22                          // i < len ?
0x710821C684    B.LO  0x710821C64C                      // continue loop

// [Epilogue & Return] restore regs and recreate "MOV X0, X19"
0x710821C688    LDP   X23, X24, [SP], #0x10             // pop temps
0x710821C68C    LDP   X21, X22, [SP], #0x10             // pop list meta
0x710821C690    LDP   X19, X20, [SP], #0x10             // pop inv and client
0x710821C694    LDP   X0,  X30, [SP], #0x10             // X0 ← (first-saved X19), restore LR
0x710821C698    RET                                     // return to original function


// --- [Block D] Reference (targets used above) --------------------------------
// get_MetaClient()                                0x71032357A0
// get_Profile()                                   0x7103235880
// Profile.get_Skins()                             0x7104E05340
// ItemDatabase.Instance                           0x71044980E0
// ItemDatabase.GetAllByType(ItemType.Skin)        0x7104493F40
// ItemData.get_Item()                             0x7103F24BB0
// ListInventory.KnowsItem(int)                    0x710482C180
// Client.DebugAddItem(int,int,CancellationToken)  0x71053832E0
Post automatically merged:

[GetAllMissingMotifs]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA322
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 52800141
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingMotifs OFF]
04000000 0471A654 340001C8
04000000 0717107C AA1303E0

Turn on this cheat code and open the wardrobe to unlock all unowned motif items. It will take some time for all the motif items to be added. I highly recommend you leave it alone until it has finished.

Code:
// ============================================================================
// Unlock All Touch of Magic (Decals) + Dev-Check Bypass
/* Goal: Hook WardrobeMenu::OnFocusIn ("MOV X0, X19") → jump to a code cave that
         grants all unowned TouchOfMagic entries routed to the Decals
         ListInventory, then restore X0←X19 and return. Also NOP out the
         developer-flag check guarding DebugAddItem so item granting proceeds. */
// ============================================================================


// --- [Block A] Hook Patch (WardrobeMenu::OnFocusIn) -------------------------
// Original at hook site: 0x710717107C  MOV X0, X19
0x710717107C    BL    0x710821C60C                       // hook: replace MOV X0, X19 and branch to code cave


// --- [Block B] Developer Check Bypass (Meta.DebugAddItem.Types.Response$$ApplyThis) ---
0x710471A654    NOP                                      // disable dev-flag gate so DebugAddItem can run


// --- [Block C] Code Cave Start (RVA: 0x821C60C, Abs: 0x710821C60C) ----------
// Save/restore X19/LR and others; finally load saved X19 into X0 to recreate "MOV X0, X19".

// [Prologue & Saves]
0x710821C60C    STP   X19, X30, [SP, #-0x10]!           // push old X19 and LR
0x710821C610    STP   X19, X20, [SP, #-0x10]!           // push working X19 and Client*
0x710821C614    STP   X21, X22, [SP, #-0x10]!           // push elements base and length
0x710821C618    STP   X23, X24, [SP, #-0x10]!           // push loop index and temp itemId

// [Acquire Client*]
0x710821C61C    BL    0x71032357A0                      // get_MetaClient() → X0
0x710821C620    MOV   X20, X0                           // X20 = Client*

// [Acquire Decals (ListInventory*)]
0x710821C624    BL    0x7103235880                      // get_Profile() → X0
0x710821C628    BL    0x7104E052B0                      // Profile.get_Decals() → X0
0x710821C62C    MOV   X19, X0                           // X19 = ListInventory* (Decals)

// [Get TouchOfMagic list] ItemDatabase.Instance → GetAllByType(TouchOfMagic, null)
0x710821C630    BL    0x71044980E0                      // ItemDatabase.Instance → X0
0x710821C634    MOV   W1,  #10                          // ItemType.TouchOfMagic
0x710821C638    MOV   X2,  XZR                          // method = null
0x710821C63C    BL    0x7104493F40                      // GetAllByType(...) → X0 (List<T>*)

// [List<T> layout] size @ +0x18 (W), data @ +0x20 (ptr)
0x710821C640    ADD   X21, X0, #0x20                    // X21 = &elements[0]
0x710821C644    LDR   W22, [X0, #0x18]                  // W22 = length
0x710821C648    MOV   W23, #0                           // i = 0

// --- [Loop] for (i = 0; i < len; ++i) ----------------------------------------
// NOTE: This calls a concrete get_Item() to extract itemId from each ItemData.
0x710821C64C    LDR   X0, [X21, X23, LSL #3]            // X0 = IItemData* (concrete TouchOfMagic/Decal*ItemData*)
0x710821C650    BL    0x7103F24BB0                      // ItemData.get_Item() → W0 (itemId)
0x710821C654    MOV   W24, W0                           // W24 = itemId

// [KnowsItem?] skip if already owned in Decals
0x710821C658    MOV   X0, X19                           // this = Decals (ListInventory*)
0x710821C65C    MOV   W1, W24                           // itemId
0x710821C660    BL    0x710482C180                      // ListInventory.KnowsItem(int) → W0
0x710821C664    TBNZ  W0, #0, 0x710821C67C              // if owned, jump to loop-next

// [Grant Item] add via DebugAddItem(itemId, 1, default CancellationToken)
0x710821C668    MOV   X0, X20                           // this = Client*
0x710821C66C    MOV   W1, W24                           // itemId
0x710821C670    MOV   W2, #1                            // amount = 1
0x710821C674    MOV   X3, XZR                           // CancellationToken = 0
0x710821C678    BL    0x71053832E0                      // Client.DebugAddItem(int,int,CancellationToken)

// [Loop next]
0x710821C67C    ADD   W23, W23, #1                      // i++
0x710821C680    CMP   W23, W22                          // i < len ?
0x710821C684    B.LO  0x710821C64C                      // continue loop

// [Epilogue & Return] restore regs and recreate "MOV X0, X19"
0x710821C688    LDP   X23, X24, [SP], #0x10             // pop temps
0x710821C68C    LDP   X21, X22, [SP], #0x10             // pop list meta
0x710821C690    LDP   X19, X20, [SP], #0x10             // pop inv and client
0x710821C694    LDP   X0,  X30, [SP], #0x10             // X0 ← (first-saved X19), restore LR
0x710821C698    RET                                     // return to original function


// --- [Block D] Reference (targets used above) --------------------------------
// get_MetaClient()                                0x71032357A0
// get_Profile()                                   0x7103235880
// Profile.get_Decals()                            0x7104E052B0
// ItemDatabase.Instance                           0x71044980E0
// ItemDatabase.GetAllByType(ItemType.TouchOfMagic) 0x7104493F40
// ItemData.get_Item()                             0x7103F24BB0
// ListInventory.KnowsItem(int)                    0x710482C180
// Client.DebugAddItem(int,int,CancellationToken)  0x71053832E0
Post automatically merged:

[GetAllMissingPhotoFrames]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA3B2
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 52800261
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingPhotoFrames OFF]
04000000 0471A654 340001C8
04000000 0717107C AA1303E0

Turn on this cheat code and open the wardrobe to unlock all unowned photoframe items. It will take some time for all the photoframe items to be added. I highly recommend you leave it alone until it has finished.

Code:
// ============================================================================
// Unlock All Photo Mode + Dev-Check Bypass
/* Goal: Hook WardrobeMenu::OnFocusIn ("MOV X0, X19") → jump to a code cave that
         grants all unowned photo-mode entries routed to the PhotoMode
         ListInventory, then restore X0←X19 and return. Also NOP out the
         developer-flag check guarding DebugAddItem so item granting proceeds. */
// ============================================================================


// --- [Block A] Hook Patch (WardrobeMenu::OnFocusIn) -------------------------
// Original at hook site: 0x710717107C  MOV X0, X19
0x710717107C    BL    0x710821C60C                       // hook: replace MOV X0, X19 and branch to code cave


// --- [Block B] Developer Check Bypass (Meta.DebugAddItem.Types.Response$$ApplyThis) ---
0x710471A654    NOP                                      // disable dev-flag gate so DebugAddItem can run


// --- [Block C] Code Cave Start (RVA: 0x821C60C, Abs: 0x710821C60C) ----------
// Save/restore X19/LR and others; finally load saved X19 into X0 to recreate "MOV X0, X19".

// [Prologue & Saves]
0x710821C60C    STP   X19, X30, [SP, #-0x10]!           // push old X19 and LR
0x710821C610    STP   X19, X20, [SP, #-0x10]!           // push working X19 and Client*
0x710821C614    STP   X21, X22, [SP, #-0x10]!           // push elements base and length
0x710821C618    STP   X23, X24, [SP, #-0x10]!           // push loop index and temp itemId

// [Acquire Client*]
0x710821C61C    BL    0x71032357A0                      // get_MetaClient() → X0
0x710821C620    MOV   X20, X0                           // X20 = Client*

// [Acquire PhotoMode (ListInventory*)]
0x710821C624    BL    0x7103235880                      // get_Profile() → X0
0x710821C628    BL    0x7104E054F0                      // Profile.get_PhotoMode() → X0
0x710821C62C    MOV   X19, X0                           // X19 = ListInventory* (PhotoMode)

// [Get photo-mode list] ItemDatabase.Instance → GetAllByType(PhotoMode, null)
0x710821C630    BL    0x71044980E0                      // ItemDatabase.Instance → X0
0x710821C634    MOV   W1,  #19                          // ItemType.PhotoMode
0x710821C638    MOV   X2,  XZR                          // method = null
0x710821C63C    BL    0x7104493F40                      // GetAllByType(...) → X0 (List<T>*)

// [List<T> layout] size @ +0x18 (W), data @ +0x20 (ptr)
0x710821C640    ADD   X21, X0, #0x20                    // X21 = &elements[0]
0x710821C644    LDR   W22, [X0, #0x18]                  // W22 = length
0x710821C648    MOV   W23, #0                           // i = 0

// --- [Loop] for (i = 0; i < len; ++i) ----------------------------------------
// NOTE: This calls a concrete get_Item() to extract itemId from each ItemData.
0x710821C64C    LDR   X0, [X21, X23, LSL #3]            // X0 = IItemData* (concrete PhotoMode*ItemData*)
0x710821C650    BL    0x7103F24BB0                      // ItemData.get_Item() → W0 (itemId)
0x710821C654    MOV   W24, W0                           // W24 = itemId

// [KnowsItem?] skip if already owned in PhotoMode
0x710821C658    MOV   X0, X19                           // this = PhotoMode (ListInventory*)
0x710821C65C    MOV   W1, W24                           // itemId
0x710821C660    BL    0x710482C180                      // ListInventory.KnowsItem(int) → W0
0x710821C664    TBNZ  W0, #0, 0x710821C67C              // if owned, jump to loop-next

// [Grant Item] add via DebugAddItem(itemId, 1, default CancellationToken)
0x710821C668    MOV   X0, X20                           // this = Client*
0x710821C66C    MOV   W1, W24                           // itemId
0x710821C670    MOV   W2, #1                            // amount = 1
0x710821C674    MOV   X3, XZR                           // CancellationToken = 0
0x710821C678    BL    0x71053832E0                      // Client.DebugAddItem(int,int,CancellationToken)

// [Loop next]
0x710821C67C    ADD   W23, W23, #1                      // i++
0x710821C680    CMP   W23, W22                          // i < len ?
0x710821C684    B.LO  0x710821C64C                      // continue loop

// [Epilogue & Return] restore regs and recreate "MOV X0, X19"
0x710821C688    LDP   X23, X24, [SP], #0x10             // pop temps
0x710821C68C    LDP   X21, X22, [SP], #0x10             // pop list meta
0x710821C690    LDP   X19, X20, [SP], #0x10             // pop inv and client
0x710821C694    LDP   X0,  X30, [SP], #0x10             // X0 ← (first-saved X19), restore LR
0x710821C698    RET                                     // return to original function


// --- [Block D] Reference (targets used above) --------------------------------
// get_MetaClient()                                0x71032357A0
// get_Profile()                                   0x7103235880
// Profile.get_PhotoMode()                         0x7104E054F0
// ItemDatabase.Instance                           0x71044980E0
// ItemDatabase.GetAllByType(ItemType.PhotoMode)   0x7104493F40
// ItemData.get_Item()                             0x7103F24BB0
// ListInventory.KnowsItem(int)                    0x710482C180
// Client.DebugAddItem(int,int,CancellationToken)  0x71053832E0
Post automatically merged:

[GetAllMissingFigures]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA36A
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 52800241
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingFigures OFF]
04000000 0471A654 340001C8
04000000 0717107C AA1303E0

Turn on this cheat code and open the wardrobe to unlock all unowned figure items. It will take some time for all the figure items to be added. I highly recommend you leave it alone until it has finished.

Code:
// ============================================================================
// Unlock All Board Game Figurines + Dev-Check Bypass
/* Goal: Hook WardrobeMenu::OnFocusIn ("MOV X0, X19") → jump to a code cave that
         grants all unowned board-game figurines routed to the Figurines
         ListInventory, then restore X0←X19 and return. Also NOP out the
         developer-flag check guarding DebugAddItem so item granting proceeds. */
// ============================================================================


// --- [Block A] Hook Patch (WardrobeMenu::OnFocusIn) -------------------------
// Original at hook site: 0x710717107C  MOV X0, X19
0x710717107C    BL    0x710821C60C                       // hook: replace MOV X0, X19 and branch to code cave


// --- [Block B] Developer Check Bypass (Meta.DebugAddItem.Types.Response$$ApplyThis) ---
0x710471A654    NOP                                      // disable dev-flag gate so DebugAddItem can run


// --- [Block C] Code Cave Start (RVA: 0x821C60C, Abs: 0x710821C60C) ----------
// Save/restore X19/LR and others; finally load saved X19 into X0 to recreate "MOV X0, X19".

// [Prologue & Saves]
0x710821C60C    STP   X19, X30, [SP, #-0x10]!           // push old X19 and LR
0x710821C610    STP   X19, X20, [SP, #-0x10]!           // push working X19 and Client*
0x710821C614    STP   X21, X22, [SP, #-0x10]!           // push elements base and length
0x710821C618    STP   X23, X24, [SP, #-0x10]!           // push loop index and temp itemId

// [Acquire Client*]
0x710821C61C    BL    0x71032357A0                      // get_MetaClient() → X0
0x710821C620    MOV   X20, X0                           // X20 = Client*

// [Acquire Figurines (ListInventory*)]
0x710821C624    BL    0x7103235880                      // get_Profile() → X0
0x710821C628    BL    0x7104E053D0                      // Profile.get_Figurines() → X0
0x710821C62C    MOV   X19, X0                           // X19 = ListInventory* (Figurines)

// [Get figurine list] ItemDatabase.Instance → GetAllByType(BoardGame, null)
0x710821C630    BL    0x71044980E0                      // ItemDatabase.Instance → X0
0x710821C634    MOV   W1,  #18                          // ItemType.BoardGame
0x710821C638    MOV   X2,  XZR                          // method = null
0x710821C63C    BL    0x7104493F40                      // GetAllByType(...) → X0 (List<T>*)

// [List<T> layout] size @ +0x18 (W), data @ +0x20 (ptr)
0x710821C640    ADD   X21, X0, #0x20                    // X21 = &elements[0]
0x710821C644    LDR   W22, [X0, #0x18]                  // W22 = length
0x710821C648    MOV   W23, #0                           // i = 0

// --- [Loop] for (i = 0; i < len; ++i) ----------------------------------------
// NOTE: This calls a concrete get_Item() to extract itemId from each ItemData.
0x710821C64C    LDR   X0, [X21, X23, LSL #3]            // X0 = IItemData* (concrete Figurine*ItemData*)
0x710821C650    BL    0x7103F24BB0                      // ItemData.get_Item() → W0 (itemId)
0x710821C654    MOV   W24, W0                           // W24 = itemId

// [KnowsItem?] skip if already owned in Figurines
0x710821C658    MOV   X0, X19                           // this = Figurines (ListInventory*)
0x710821C65C    MOV   W1, W24                           // itemId
0x710821C660    BL    0x710482C180                      // ListInventory.KnowsItem(int) → W0
0x710821C664    TBNZ  W0, #0, 0x710821C67C              // if owned, jump to loop-next

// [Grant Item] add via DebugAddItem(itemId, 1, default CancellationToken)
0x710821C668    MOV   X0, X20                           // this = Client*
0x710821C66C    MOV   W1, W24                           // itemId
0x710821C670    MOV   W2, #1                            // amount = 1
0x710821C674    MOV   X3, XZR                           // CancellationToken = 0
0x710821C678    BL    0x71053832E0                      // Client.DebugAddItem(int,int,CancellationToken)

// [Loop next]
0x710821C67C    ADD   W23, W23, #1                      // i++
0x710821C680    CMP   W23, W22                          // i < len ?
0x710821C684    B.LO  0x710821C64C                      // continue loop

// [Epilogue & Return] restore regs and recreate "MOV X0, X19"
0x710821C688    LDP   X23, X24, [SP], #0x10             // pop temps
0x710821C68C    LDP   X21, X22, [SP], #0x10             // pop list meta
0x710821C690    LDP   X19, X20, [SP], #0x10             // pop inv and client
0x710821C694    LDP   X0,  X30, [SP], #0x10             // X0 ← (first-saved X19), restore LR
0x710821C698    RET                                     // return to original function


// --- [Block D] Reference (targets used above) --------------------------------
// get_MetaClient()                                0x71032357A0
// get_Profile()                                   0x7103235880
// Profile.get_Figurines()                         0x7104E053D0
// ItemDatabase.Instance                           0x71044980E0
// ItemDatabase.GetAllByType(ItemType.BoardGame)   0x7104493F40
// ItemData.get_Item()                             0x7103F24BB0
// ListInventory.KnowsItem(int)                    0x710482C180
// Client.DebugAddItem(int,int,CancellationToken)  0x71053832E0
Post automatically merged:

For the building items, I've decided to change the approach. This is because a bulk-add method also includes problematic items such as: houses for unreleased characters, normally unobtainable buildings that become impossible to remove once placed, and very intrusive debug-only items that cannot be hidden, unlike other item types. As a note on the character houses, I did test this before Vanellope's building quest started and was able to complete it without any problems.



For anyone who is okay with these problems or wants to test it, I'm posting the scrapped code as well. (Just make sure you back up your save data first!)

[GetAllMissingBuildings]
04000000 0471A654 D503201F
04000000 0717107C 9442AD64
04000000 0821C60C A9BF7BF3
04000000 0821C610 A9BF53F3
04000000 0821C614 A9BF5BF5
04000000 0821C618 A9BF63F7
04000000 0821C61C 96C06461
04000000 0821C620 AA0003F4
04000000 0821C624 96C06497
04000000 0821C628 972FA2FE
04000000 0821C62C AA0003F3
04000000 0821C630 9709EEAC
04000000 0821C634 52800041
04000000 0821C638 AA1F03E2
04000000 0821C63C 9709DE41
04000000 0821C640 91008015
04000000 0821C644 B9401816
04000000 0821C648 52800017
04000000 0821C64C F8777AA0
04000000 0821C650 96F42158
04000000 0821C654 2A0003F8
04000000 0821C658 AA1303E0
04000000 0821C65C 2A1803E1
04000000 0821C660 97183EC8
04000000 0821C664 370000C0
04000000 0821C668 AA1403E0
04000000 0821C66C 2A1803E1
04000000 0821C670 52800022
04000000 0821C674 AA1F03E3
04000000 0821C678 97459B1A
04000000 0821C67C 110006F7
04000000 0821C680 6B1602FF
04000000 0821C684 54FFFE43
04000000 0821C688 A8C163F7
04000000 0821C68C A8C15BF5
04000000 0821C690 A8C153F3
04000000 0821C694 A8C17BE0
04000000 0821C698 D65F03C0

[GetAllMissingBuildings OFF]
04000000 0471A654 340001C8
04000000 0717107C AA1303E0

Turn on this cheat code and open the wardrobe to unlock all unowned building items. It will take some time for all the building items to be added. I highly recommend you leave it alone until it has finished.

Code:
// ============================================================================
// Unlock All Buildings + Dev-Check Bypass
/* Goal: Hook WardrobeMenu::OnFocusIn ("MOV X0, X19") → jump to a code cave that
         grants all unowned building entries routed to the Buildings
         ListInventory, then restore X0←X19 and return. Also NOP out the
         developer-flag check guarding DebugAddItem so item granting proceeds. */
// ============================================================================


// --- [Block A] Hook Patch (WardrobeMenu::OnFocusIn) -------------------------
// Original at hook site: 0x710717107C  MOV X0, X19
0x710717107C    BL    0x710821C60C                       // hook: replace MOV X0, X19 and branch to code cave


// --- [Block B] Developer Check Bypass (Meta.DebugAddItem.Types.Response$$ApplyThis) ---
0x710471A654    NOP                                      // disable dev-flag gate so DebugAddItem can run


// --- [Block C] Code Cave Start (RVA: 0x821C60C, Abs: 0x710821C60C) ----------
// Save/restore X19/LR and others; finally load saved X19 into X0 to recreate "MOV X0, X19".

// [Prologue & Saves]
0x710821C60C    STP   X19, X30, [SP, #-0x10]!           // push old X19 and LR
0x710821C610    STP   X19, X20, [SP, #-0x10]!           // push working X19 and Client*
0x710821C614    STP   X21, X22, [SP, #-0x10]!           // push elements base and length
0x710821C618    STP   X23, X24, [SP, #-0x10]!           // push loop index and temp itemId

// [Acquire Client*]
0x710821C61C    BL    0x71032357A0                      // get_MetaClient() → X0
0x710821C620    MOV   X20, X0                           // X20 = Client*

// [Acquire Buildings (ListInventory*)]
0x710821C624    BL    0x7103235880                      // get_Profile() → X0
0x710821C628    BL    0x7104E05220                      // Profile.get_Buildings() → X0
0x710821C62C    MOV   X19, X0                           // X19 = ListInventory* (Buildings)

// [Get building list] ItemDatabase.Instance → GetAllByType(Building, null)
0x710821C630    BL    0x71044980E0                      // ItemDatabase.Instance → X0
0x710821C634    MOV   W1,  #2                           // ItemType.Building
0x710821C638    MOV   X2,  XZR                          // method = null
0x710821C63C    BL    0x7104493F40                      // GetAllByType(...) → X0 (List<T>*)

// [List<T> layout] size @ +0x18 (W), data @ +0x20 (ptr)
0x710821C640    ADD   X21, X0, #0x20                    // X21 = &elements[0]
0x710821C644    LDR   W22, [X0, #0x18]                  // W22 = length
0x710821C648    MOV   W23, #0                           // i = 0

// --- [Loop] for (i = 0; i < len; ++i) ----------------------------------------
// NOTE: This calls a concrete get_Item() to extract itemId from each ItemData.
0x710821C64C    LDR   X0, [X21, X23, LSL #3]            // X0 = IItemData* (concrete Building*ItemData*)
0x710821C650    BL    0x7103F24BB0                      // ItemData.get_Item() → W0 (itemId)
0x710821C654    MOV   W24, W0                           // W24 = itemId

// [KnowsItem?] skip if already owned in Buildings
0x710821C658    MOV   X0, X19                           // this = Buildings (ListInventory*)
0x710821C65C    MOV   W1, W24                           // itemId
0x710821C660    BL    0x710482C180                      // ListInventory.KnowsItem(int) → W0
0x710821C664    TBNZ  W0, #0, 0x710821C67C              // if owned, jump to loop-next

// [Grant Item] add via DebugAddItem(itemId, 1, default CancellationToken)
0x710821C668    MOV   X0, X20                           // this = Client*
0x710821C66C    MOV   W1, W24                           // itemId
0x710821C670    MOV   W2, #1                            // amount = 1
0x710821C674    MOV   X3, XZR                           // CancellationToken = 0
0x710821C678    BL    0x71053832E0                      // Client.DebugAddItem(int,int,CancellationToken)

// [Loop next]
0x710821C67C    ADD   W23, W23, #1                      // i++
0x710821C680    CMP   W23, W22                          // i < len ?
0x710821C684    B.LO  0x710821C64C                      // continue loop

// [Epilogue & Return] restore regs and recreate "MOV X0, X19"
0x710821C688    LDP   X23, X24, [SP], #0x10             // pop temps
0x710821C68C    LDP   X21, X22, [SP], #0x10             // pop list meta
0x710821C690    LDP   X19, X20, [SP], #0x10             // pop inv and client
0x710821C694    LDP   X0,  X30, [SP], #0x10             // X0 ← (first-saved X19), restore LR
0x710821C698    RET                                     // return to original function


// --- [Block D] Reference (targets used above) --------------------------------
// get_MetaClient()                                0x71032357A0
// get_Profile()                                   0x7103235880
// Profile.get_Buildings()                         0x7104E05220
// ItemDatabase.Instance                           0x71044980E0
// ItemDatabase.GetAllByType(ItemType.Building)    0x7104493F40
// ItemData.get_Item()                             0x7103F24BB0
// ListInventory.KnowsItem(int)                    0x710482C180
// Client.DebugAddItem(int,int,CancellationToken)  0x71053832E0
 
Last edited by morarin,
DDV_Media_Key_Art_46686e9a14.jpg


Before using any cheat codes, be sure to back up your save data. You use cheat codes at your own risk.

Detailed reports are appreciated for any cheat code issues. New cheat code requests are always welcome (I can try at least).

sd:/atmospshere/contents/0100D39012C1A000/cheats/BID.txt

LatestArchive


  1. {MasterCode}
    040E0000 04D81E9C 6B1302A8
    04000000 04D7F6DC 4B170108
    04000000 047D8ACC 97FFFE41
    04000000 047DBDA4 94165553
    04000000 0599F680 D10283FF
    04000000 047A64F0 D101C3FF
    04000000 04CB7384 39412268
    04000000 04CB82C4 39412288
    04000000 04CAC41C 394092C8
    04000000 02FA8C94 F9406800
    04000000 02FA8C98 B40002A0
    04000000 02FA8C9C B9402041
    04000000 02FA8CA0 AA1F03E2
    04000000 02FA8CA4 94001DE3
    04000000 02FA8CA8 F9406E60
    04000000 02FA8CAC B4000200
    04000000 02FA8CB0 AA1F03E1
    04000000 047631C8 97C823E6
    04000000 047634D0 9445E9C8
    04000000 02B7D300 94B5823C
    04000000 047B3B88 F8018D00
    04000000 047F50E0 97D8A0E8
    04000000 047F571C 5400068B
    04000000 04C739BC 0B180101
    04000000 04C09824 B94026E8
    04000000 04C0982C 0B150108
    04000000 04D6DC34 0B180108
    04000000 04D6DC38 F81F03BF
    04000000 04D711D0 1A89B2B8
    04000000 04D711D8 1A89B115
    04000000 0471A654 340001C8
    04000000 0717107C AA1303E0
    04000000 03242A10 17FFF190
    04000000 03242A14 D503201F

    [R MoveSpeed x2]
    04000000 03120190 1E204160
    04000000 03120194 1E204181
    04000000 03120198 1E2041A2
    80000080
    04000000 03120190 1E2B2960
    04000000 03120194 1E2C2981
    04000000 03120198 1E2D29A2
    20000000

    [EnergyNoDecrease]
    040E0000 04D81E9C 6B1F02A8

    [CurrencyNoDecrease]
    04000000 04D7F6DC 4B1F0108

    [FreeCraft]
    04000000 047D8ACC 52800000
    04000000 047DBDA4 52800020

    [CookKeepItems]
    04000000 0599F680 D65F03C0
    04000000 047A64F0 D65F03C0

    [AlwaysCriticalSuccess]
    04000000 04CB7384 52800028
    04000000 04CB82C4 52800028

    [AlwaysBurning]
    04000000 04CAC41C 52800028

    [EasyFishing]
    04000000 02FA8C94 F9406660
    04000000 02FA8C98 AA1F03E1
    04000000 02FA8C9C 940016A9
    04000000 02FA8CA0 F9406660
    04000000 02FA8CA4 52800001
    04000000 02FA8CA8 AA1F03E2
    04000000 02FA8CAC 94001651
    04000000 02FA8CB0 1400000C

    [EasyGardening]
    04000000 047631C8 52800020
    04000000 047634D0 D503201F

    [InfFruits]
    04000000 02B7D300 D503201F

    [InfMiningRock]
    04000000 047B3B88 F8018D1F

    [EasyUnlockCritter]
    04000000 047F50E0 52800020
    04000000 047F571C D503201F

    [PetFriendshipMax(add)]
    04000000 04C739BC 2A1503E1

    [FriendshipMax(add)]
    04000000 04C09824 52A00028
    04000000 04C0982C 729C6CC8

    [XPMax(add)]
    04000000 04D6DC34 52A00148
    04000000 04D6DC38 72824408

    [CurrencyMax(add)]
    04000000 04D711D0 1A89B138
    04000000 04D711D8 1A89B135

    [GetAllMissingClothing]
    04000000 0471A654 D503201F
    04000000 0717107C 9442AD64
    04000000 0821C60C A9BF7BF3
    04000000 0821C610 A9BF53F3
    04000000 0821C614 A9BF5BF5
    04000000 0821C618 A9BF63F7
    04000000 0821C61C 96C06461
    04000000 0821C620 AA0003F4
    04000000 0821C624 96C06497
    04000000 0821C628 972FA26E
    04000000 0821C62C AA0003F3
    04000000 0821C630 9709EEAC
    04000000 0821C634 528000A1
    04000000 0821C638 AA1F03E2
    04000000 0821C63C 9709DE41
    04000000 0821C640 91008015
    04000000 0821C644 B9401816
    04000000 0821C648 52800017
    04000000 0821C64C F8777AA0
    04000000 0821C650 96F42158
    04000000 0821C654 2A0003F8
    04000000 0821C658 AA1303E0
    04000000 0821C65C 2A1803E1
    04000000 0821C660 97183EC8
    04000000 0821C664 370000C0
    04000000 0821C668 AA1403E0
    04000000 0821C66C 2A1803E1
    04000000 0821C670 52800022
    04000000 0821C674 AA1F03E3
    04000000 0821C678 97459B1A
    04000000 0821C67C 110006F7
    04000000 0821C680 6B1602FF
    04000000 0821C684 54FFFE43
    04000000 0821C688 A8C163F7
    04000000 0821C68C A8C15BF5
    04000000 0821C690 A8C153F3
    04000000 0821C694 A8C17BE0
    04000000 0821C698 D65F03C0

    [WelcomeVanellope]
    04000000 03242A10 B4FE3201
    04000000 03242A14 153F6722
    04000000 0821C69C B9402028
    04000000 0821C6A0 7100051F
    04000000 0821C6A4 A9BF7BF3
    04000000 0821C6A8 A9BF57F4
    04000000 0821C6AC A9BF5FF6
    04000000 0821C6B0 A9BF67F8
    04000000 0821C6B4 A9BF6FFA
    04000000 0821C6B8 AA0003F3
    04000000 0821C6BC F9400C28
    04000000 0821C6C0 B9401914
    04000000 0821C6C4 96C08A63
    04000000 0821C6C8 96C0646E
    04000000 0821C6CC F9401800
    04000000 0821C6D0 2A1403E1
    04000000 0821C6D4 AA1F03E2
    04000000 0821C6D8 972E10DA
    04000000 0821C6DC AA0003F4
    04000000 0821C6E0 974C1CD0
    04000000 0821C6E4 F9400C08
    04000000 0821C6E8 F9400908
    04000000 0821C6EC B9401915
    04000000 0821C6F0 F9400909
    04000000 0821C6F4 91008137
    04000000 0821C6F8 52800016
    04000000 0821C6FC 6B1502DF
    04000000 0821C700 5400042A
    04000000 0821C704 F8767AEA
    04000000 0821C708 F9400D4B
    04000000 0821C70C F940096B
    04000000 0821C710 B9401978
    04000000 0821C714 F940096C
    04000000 0821C718 9100819A
    04000000 0821C71C 52800019
    04000000 0821C720 6B18033F
    04000000 0821C724 540002CA
    04000000 0821C728 F8797B40
    04000000 0821C72C B9403001
    04000000 0821C730 7100043F
    04000000 0821C734 54000060
    04000000 0821C738 7100083F
    04000000 0821C73C 540001C1
    04000000 0821C740 F940440D
    04000000 0821C744 B94049A1
    04000000 0821C748 71033C3F
    04000000 0821C74C 540000A0
    04000000 0821C750 7102303F
    04000000 0821C754 54000101
    04000000 0821C758 528001C1
    04000000 0821C75C 14000002
    04000000 0821C760 528001A1
    04000000 0821C764 F94019A3
    04000000 0821C768 AA1403E2
    04000000 0821C76C AA1303E0
    04000000 0821C770 96C09820
    04000000 0821C774 11000739
    04000000 0821C778 17FFFFEA
    04000000 0821C77C 110006D6
    04000000 0821C780 17FFFFDF
    04000000 0821C784 A8C16FFA
    04000000 0821C788 A8C167F8
    04000000 0821C78C A8C15FF6
    04000000 0821C790 A8C157F4
    04000000 0821C794 A8C17BF3
    04000000 0821C798 D65F03C0

  2. {MasterCode}
    040E0000 04D7DF5C 6B1302A8
    04000000 04D7B79C 4B170108
    04000000 047D4AEC 97FFFE41
    04000000 047D7DC4 9416557B
    04000000 0599AE60 D10283FF
    04000000 047A2720 D101C3FF
    04000000 04CB3444 39412268
    04000000 04CB4384 39412288
    04000000 04CA84DC 394092C8
    04000000 02FA78A4 F9406800
    04000000 02FA78A8 B40002A0
    04000000 02FA78AC B9402041
    04000000 02FA78B0 AA1F03E2
    04000000 02FA78B4 94001DE3
    04000000 02FA78B8 F9406E60
    04000000 02FA78BC B4000200
    04000000 02FA78C0 AA1F03E1
    04000000 0475F3F8 97C8241E
    04000000 0475F700 9445E734
    04000000 02B7BF40 94B57524
    04000000 047AFDB8 F8018D00
    04000000 04C058E4 B94026E8
    04000000 04C058EC 0B150108
    04000000 04D69CF4 0B180108
    04000000 04D69CF8 F81F03BF
    04000000 04D6D290 1A89B2B8
    04000000 04D6D298 1A89B115
    04000000 03241620 17FFF190
    04000000 03241624 D503201F

    [R MoveSpeed x2]
    04000000 0311EDA0 1E204160
    04000000 0311EDA4 1E204181
    04000000 0311EDA8 1E2041A2
    80000080
    04000000 0311EDA0 1E2B2960
    04000000 0311EDA4 1E2C2981
    04000000 0311EDA8 1E2D29A2
    20000000

    [EnergyNoDecrease]
    040E0000 04D7DF5C 6B1F02A8

    [CurrencyNoDecrease]
    04000000 04D7B79C 4B1F0108

    [FreeCraft]
    04000000 047D4AEC 52800000
    04000000 047D7DC4 52800020

    [CookKeepItems]
    04000000 0599AE60 D65F03C0
    04000000 047A2720 D65F03C0

    [AlwaysCriticalSuccess]
    04000000 04CB3444 52800028
    04000000 04CB4384 52800028

    [AlwaysBurning]
    04000000 04CA84DC 52800028

    [EasyFishing]
    04000000 02FA78A4 F9406660
    04000000 02FA78A8 AA1F03E1
    04000000 02FA78AC 940016A9
    04000000 02FA78B0 F9406660
    04000000 02FA78B4 52800001
    04000000 02FA78B8 AA1F03E2
    04000000 02FA78BC 94001651
    04000000 02FA78C0 1400000C

    [EasyGardening]
    04000000 0475F3F8 52800020
    04000000 0475F700 D503201F

    [InfFruits]
    04000000 02B7BF40 D503201F

    [InfMiningRock]
    04000000 047AFDB8 F8018D1F

    [FriendshipMax(add)]
    04000000 04C058E4 52A00028
    04000000 04C058EC 729C6CC8

    [XPMax(add)]
    04000000 04D69CF4 52A00148
    04000000 04D69CF8 72824408

    [CurrencyMax(add)]
    04000000 04D6D290 1A89B138
    04000000 04D6D298 1A89B135

    [WelcomeVanellope]
    04000000 03241620 B4FE3201
    04000000 03241624 153F5762
    04000000 082173AC B9402028
    04000000 082173B0 7100051F
    04000000 082173B4 A9BF7BF3
    04000000 082173B8 A9BF57F4
    04000000 082173BC A9BF5FF6
    04000000 082173C0 A9BF67F8
    04000000 082173C4 A9BF6FFA
    04000000 082173C8 AA0003F3
    04000000 082173CC F9400C28
    04000000 082173D0 B9401914
    04000000 082173D4 96C09A23
    04000000 082173D8 96C0742E
    04000000 082173DC F9401800
    04000000 082173E0 2A1403E1
    04000000 082173E4 AA1F03E2
    04000000 082173E8 972E15C6
    04000000 082173EC AA0003F4
    04000000 082173F0 974C1F84
    04000000 082173F4 F9400C08
    04000000 082173F8 F9400908
    04000000 082173FC B9401915
    04000000 08217400 F9400909
    04000000 08217404 91008137
    04000000 08217408 52800016
    04000000 0821740C 6B1502DF
    04000000 08217410 5400042A
    04000000 08217414 F8767AEA
    04000000 08217418 F9400D4B
    04000000 0821741C F940096B
    04000000 08217420 B9401978
    04000000 08217424 F940096C
    04000000 08217428 9100819A
    04000000 0821742C 52800019
    04000000 08217430 6B18033F
    04000000 08217434 540002CA
    04000000 08217438 F8797B40
    04000000 0821743C B9403001
    04000000 08217440 7100043F
    04000000 08217444 54000060
    04000000 08217448 7100083F
    04000000 0821744C 540001C1
    04000000 08217450 F940440D
    04000000 08217454 B94049A1
    04000000 08217458 71033C3F
    04000000 0821745C 540000A0
    04000000 08217460 7102303F
    04000000 08217464 54000101
    04000000 08217468 528001C1
    04000000 0821746C 14000002
    04000000 08217470 528001A1
    04000000 08217474 F94019A3
    04000000 08217478 AA1403E2
    04000000 0821747C AA1303E0
    04000000 08217480 96C0A7E0
    04000000 08217484 11000739
    04000000 08217488 17FFFFEA
    04000000 0821748C 110006D6
    04000000 08217490 17FFFFDF
    04000000 08217494 A8C16FFA
    04000000 08217498 A8C167F8
    04000000 0821749C A8C15FF6
    04000000 082174A0 A8C157F4
    04000000 082174A4 A8C17BF3
    04000000 082174A8 D65F03C0

    {MasterCode}
    040E0000 04D3410C 6B1302A8
    04000000 04D319EC 4B170108
    04000000 04799A0C 97FFFE41
    04000000 0479CD04 94161A2F
    04000000 04767640 D10283FF
    04000000 047678B0 D101C3FF
    04000000 04C6B304 39412268
    04000000 04C6C244 39412288
    04000000 04C6039C 394092C8
    04000000 02F9BA04 F9406800
    04000000 02F9BA08 B40002A0
    04000000 02F9BA0C B9402041
    04000000 02F9BA10 AA1F03E2
    04000000 02F9BA14 94001DE3
    04000000 02F9BA18 F9406E60
    04000000 02F9BA1C B4000200
    04000000 02F9BA20 AA1F03E1
    04000000 04724598 97C8CE82
    04000000 047248A0 944584B8
    04000000 0472E154 94455E8B
    04000000 04774E28 F8018D00
    04000000 04BBD864 B94026E8
    04000000 04BBD86C 0B150108
    04000000 04D1FF04 0B180108
    04000000 04D1FF08 F81F03BF
    04000000 04D234A0 1A89B2B8
    04000000 04D234A8 1A89B115
    04000000 03232850 17FFF1A4
    04000000 03232854 D503201F

    [R MoveSpeed x2]
    04000000 03113350 1E204160
    04000000 03113354 1E204181
    04000000 03113358 1E2041A2
    80000080
    04000000 03113350 1E2B2960
    04000000 03113354 1E2C2981
    04000000 03113358 1E2D29A2
    20000000

    [EnergyNoDecrease]
    040E0000 04D3410C 6B1F02A8

    [CurrencyNoDecrease]
    04000000 04D319EC 4B1F0108

    [FreeCraft]
    04000000 04799A0C 52800000
    04000000 0479CD04 52800020

    [CookKeepItems]
    04000000 04767640 D65F03C0
    04000000 047678B0 D65F03C0

    [AlwaysCriticalSuccess]
    04000000 04C6B304 52800028
    04000000 04C6C244 52800028

    [AlwaysBurning]
    04000000 04C6039C 52800028

    [EasyFishing]
    04000000 02F9BA04 F9406660
    04000000 02F9BA08 AA1F03E1
    04000000 02F9BA0C 940016A9
    04000000 02F9BA10 F9406660
    04000000 02F9BA14 52800001
    04000000 02F9BA18 AA1F03E2
    04000000 02F9BA1C 94001651
    04000000 02F9BA20 1400000C

    [EasyGardening]
    04000000 04724598 52800020
    04000000 047248A0 D503201F

    [InfFruits]
    04000000 0472E154 D503201F

    [InfMiningRock]
    04000000 04774E28 F8018D1F

    [FriendshipMax(add)]
    04000000 04BBD864 52A00028
    04000000 04BBD86C 729C6CC8

    [XPMax(add)]
    04000000 04D1FF04 52A00148
    04000000 04D1FF08 72824408

    [CurrencyMax(add)]
    04000000 04D234A0 1A89B138
    04000000 04D234A8 1A89B135

    [WelcomeVanellope]
    04000000 03232850 B4FE3481
    04000000 03232854 153D834C
    04000000 08193584 B9402028
    04000000 08193588 7100051F
    04000000 0819358C 544DCAA1
    04000000 08193590 A9BF7BF3
    04000000 08193594 A9BF57F4
    04000000 08193598 A9BF5FF6
    04000000 0819359C A9BF67F8
    04000000 081935A0 A9BF6FFA
    04000000 081935A4 AA0003F3
    04000000 081935A8 F9400C28
    04000000 081935AC B9401914
    04000000 081935B0 96C26E4C
    04000000 081935B4 96C2487F
    04000000 081935B8 F9401800
    04000000 081935BC 2A1403E1
    04000000 081935C0 AA1F03E2
    04000000 081935C4 972F7F7B
    04000000 081935C8 AA0003F4
    04000000 081935CC 974CE549
    04000000 081935D0 F9400C08
    04000000 081935D4 F9400908
    04000000 081935D8 B9401915
    04000000 081935DC F9400909
    04000000 081935E0 91008137
    04000000 081935E4 52800016
    04000000 081935E8 6B1502DF
    04000000 081935EC 5400042A
    04000000 081935F0 F8767AEA
    04000000 081935F4 F9400D4B
    04000000 081935F8 F940096B
    04000000 081935FC B9401978
    04000000 08193600 F940096C
    04000000 08193604 9100819A
    04000000 08193608 52800019
    04000000 0819360C 6B18033F
    04000000 08193610 540002CA
    04000000 08193614 F8797B40
    04000000 08193618 B9403001
    04000000 0819361C 7100043F
    04000000 08193620 54000060
    04000000 08193624 7100083F
    04000000 08193628 540001C1
    04000000 0819362C F940440D
    04000000 08193630 B94049A1
    04000000 08193634 71033C3F
    04000000 08193638 540000A0
    04000000 0819363C 7102303F
    04000000 08193640 54000101
    04000000 08193644 528001C1
    04000000 08193648 14000002
    04000000 0819364C 528001A1
    04000000 08193650 F94019A3
    04000000 08193654 AA1403E2
    04000000 08193658 AA1303E0
    04000000 0819365C 96C27BF5
    04000000 08193660 11000739
    04000000 08193664 17FFFFEA
    04000000 08193668 110006D6
    04000000 0819366C 17FFFFDF
    04000000 08193670 A8C16FFA
    04000000 08193674 A8C167F8
    04000000 08193678 A8C15FF6
    04000000 0819367C A8C157F4
    04000000 08193680 A8C17BF3
    04000000 08193684 D65F03C0

    {MasterCode}
    040E0000 04C9433C 6B1302A8
    04000000 04C91C1C 4B170108
    04000000 04701D0C 97FFFE41
    04000000 04705004 9415F9FB
    04000000 04C836D0 1A89B2B8
    04000000 04C836D8 1A89B115
    04000000 04C7FFC4 0B180108
    04000000 04C7FFC8 F81F03BF
    04000000 04B11444 B94026E8
    04000000 04B1144C 0B150108

    [R MoveSpeed x2]
    04000000 030EDAD0 1E204160
    04000000 030EDAD4 1E204181
    04000000 030EDAD8 1E2041A2
    80000080
    04000000 030EDAD0 1E2B2960
    04000000 030EDAD4 1E2C2981
    04000000 030EDAD8 1E2D29A2
    20000000

    [EnergyNoDecrease]
    040E0000 04C9433C 6B1F02A8

    [CurrencyNoDecrease]
    04000000 04C91C1C 4B1F0108

    [FreeCraft]
    04000000 04701D0C 52800000
    04000000 04705004 52800020

    [CurrencyMax(add)]
    04000000 04C836D0 1A89B138
    04000000 04C836D8 1A89B135

    [XPMax(add)]
    04000000 04C7FFC4 52A00148
    04000000 04C7FFC8 72824408

    [FriendshipMax(add)]
    04000000 04B11444 52A00028
    04000000 04B1144C 729C6CC8

    {MasterCode}
    040E0000 04C83E7C 6B1302A8
    04000000 04C8175C 4B170108
    04000000 046F181C 97FFFE41
    04000000 046F4B14 9415FA07
    04000000 04C73210 1A89B2B8
    04000000 04C73218 1A89B115
    04000000 04C6FB04 0B180108
    04000000 04C6FB08 F81F03BF
    04000000 04B00F54 B94026E8
    04000000 04B00F5C 0B150108

    [R MoveSpeed x2]
    04000000 030DCAA0 1E204160
    04000000 030DCAA4 1E204181
    04000000 030DCAA8 1E2041A2
    80000080
    04000000 030DCAA0 1E2B2960
    04000000 030DCAA4 1E2C2981
    04000000 030DCAA8 1E2D29A2
    20000000

    [EnergyNoDecrease]
    040E0000 04C83E7C 6B1F02A8

    [CurrencyNoDecrease]
    04000000 04C8175C 4B1F0108

    [FreeCraft]
    04000000 046F181C 52800000
    04000000 046F4B14 52800020

    [CurrencyMax(add)]
    04000000 04C73210 1A89B138
    04000000 04C73218 1A89B135

    [XPMax(add)]
    04000000 04C6FB04 52A00148
    04000000 04C6FB08 72824408

    [FriendshipMax(add)]
    04000000 04B00F54 52A00028
    04000000 04B00F5C 729C6CC8

    {MasterCode}
    040E0000 04C8B5EC 6B1302A8
    04000000 04C88ECC 4B170108
    04000000 046DD06C 97FFFE41
    04000000 046E0364 941669CF
    04000000 04C7A980 1A89B2B8
    04000000 04C7A988 1A89B115
    08000000 04C77274 F81F03BF 0B180108
    04000000 04B086C4 B94026E8
    04000000 04B086CC 0B150108

    [R MoveSpeed x2]
    08000000 030D54F0 1E204181 1E204160
    04000000 030D54F8 1E2041A2
    80000080
    08000000 030D54F0 1E2C2981 1E2B2960
    04000000 030D54F8 1E2D29A2
    20000000

    [EnergyNoDecrease]
    040E0000 04C8B5EC 6B1F02A8

    [CurrencyNoDecrease]
    04000000 04C88ECC 4B1F0108

    [FreeCraft]
    04000000 046DD06C 52800000
    04000000 046E0364 52800020

    [CurrencyMax(add)]
    04000000 04C7A980 1A89B138
    04000000 04C7A988 1A89B135

    [XPMax(add)]
    08000000 04C77274 72824408 52A00148

    [FriendshipMax(add)]
    04000000 04B086C4 52A00028
    04000000 04B086CC 729C6CC8
Can I ask what welcome venelope is . Thanks though for all them awesome cheats 😁
 
  • Like
Reactions: morarin
Can I ask what welcome venelope is . Thanks though for all them awesome cheats 😁

Disney Dreamlight Valley v1.18.0 BID=730CED1F08B527E6

When your objectives become "Open the DreamSnaps Submission menu" or "Complete your first DreamSnaps Challenge!", simply navigate to the Quests tab in your menu and track the quest. Doing this will automatically progress the mission.


DDV_Update6_SS_1_1920x1080_373f60005b.png


This cheat enables you to complete the "Faith, Trust, and Pixel Dust" quest to bring Vanellope into the Valley, even while offline.

[WelcomeVanellope]
04000000 03232850 B4FE3481
04000000 03232854 153D834C
04000000 08193584 B9402028
04000000 08193588 7100051F
04000000 0819358C 544DCAA1
04000000 08193590 A9BF7BF3
04000000 08193594 A9BF57F4
04000000 08193598 A9BF5FF6
04000000 0819359C A9BF67F8
04000000 081935A0 A9BF6FFA
04000000 081935A4 AA0003F3
04000000 081935A8 F9400C28
04000000 081935AC B9401914
04000000 081935B0 96C26E4C
04000000 081935B4 96C2487F
04000000 081935B8 F9401800
04000000 081935BC 2A1403E1
04000000 081935C0 AA1F03E2
04000000 081935C4 972F7F7B
04000000 081935C8 AA0003F4
04000000 081935CC 974CE549
04000000 081935D0 F9400C08
04000000 081935D4 F9400908
04000000 081935D8 B9401915
04000000 081935DC F9400909
04000000 081935E0 91008137
04000000 081935E4 52800016
04000000 081935E8 6B1502DF
04000000 081935EC 5400042A
04000000 081935F0 F8767AEA
04000000 081935F4 F9400D4B
04000000 081935F8 F940096B
04000000 081935FC B9401978
04000000 08193600 F940096C
04000000 08193604 9100819A
04000000 08193608 52800019
04000000 0819360C 6B18033F
04000000 08193610 540002CA
04000000 08193614 F8797B40
04000000 08193618 B9403001
04000000 0819361C 7100043F
04000000 08193620 54000060
04000000 08193624 7100083F
04000000 08193628 540001C1
04000000 0819362C F940440D
04000000 08193630 B94049A1
04000000 08193634 71033C3F
04000000 08193638 540000A0
04000000 0819363C 7102303F
04000000 08193640 54000101
04000000 08193644 528001C1
04000000 08193648 14000002
04000000 0819364C 528001A1
04000000 08193650 F94019A3
04000000 08193654 AA1403E2
04000000 08193658 AA1303E0
04000000 0819365C 96C27BF5
04000000 08193660 11000739
04000000 08193664 17FFFFEA
04000000 08193668 110006D6
04000000 0819366C 17FFFFDF
04000000 08193670 A8C16FFA
04000000 08193674 A8C167F8
04000000 08193678 A8C15FF6
04000000 0819367C A8C157F4
04000000 08193680 A8C17BF3
04000000 08193684 D65F03C0

[WelcomeVanellope OFF]
04000000 03232850 17FFF1A4
04000000 03232854 D503201F

Code:
// Hook point: Mdl.Missions.MissionManager$$OnTrackedMissionChanged
// Legend:
//   MissionObjective.status_            : enum MissionStepStatus { 0=NotStarted, 1=Ongoing, 2=ReadyToBeCompleted, ... }
//   MissionObjectiveData.customStepCase_: enum CustomStepOneofCase { ... 140=DesignChallenge, ... 207=MenuAction, ... }
//   MissionCompleteStep.Types.Condition : 13=MenuAction (open DreamSnaps menu), 14=DesignChallenge (post to DreamSnaps)
//
// Registers usage (stable across loops / BL):
//   X19 = this (MissionManager*)
//   X20 = MissionSlot*
//   W21/W22 = subStepCount / i (outer loop)
//   X23 = subSteps base
//   W24/W25 = objectiveCount / j (inner loop)
//   X26 = objectives base
//
// Call convention for CheckForAdvanceStep:
//   X0=this, W1=condition(13|14), X2=missionSlot*, X3=stepName (string)

0x7103232850    CBZ X1, 0x710322EEE0                 // TrackedActivity == NULL? → return to original
0x7103232854    B   0x7108193584                     // Jump to code cave

// --- Code Cave Start --- (VA: 0x7108193584 ~)
0x7108193584    LDR W8, [X1, #0x20]                  // Read ActivityCase
0x7108193588    CMP W8, #1                           // ActivityCase == Mission ?
0x710819358C    B.NE 0x710322EEE0                    // Not Mission → return to original

// Prologue (minimal; save LR too)
0x7108193590    STP X19, X30, [SP, #-0x10]!
0x7108193594    STP X20, X21, [SP, #-0x10]!
0x7108193598    STP X22, X23, [SP, #-0x10]!
0x710819359C    STP X24, X25, [SP, #-0x10]!
0x71081935A0    STP X26, X27, [SP, #-0x10]!

0x71081935A4    MOV X19, X0                           // X19 ← MissionManager* (this)
0x71081935A8    LDR X8,  [X1, #0x18]                  // TrackedActivity.TrackedMission*
0x71081935AC    LDR W20, [X8, #0x18]                  // missionId (temporary; only for GetMissionSlot)

0x71081935B0    BL  0x710322EEE0                      // MissionManager.RefreshCurrentFollower()
0x71081935B4    BL  0x71032257B0                      // Profile.get_Profile()
0x71081935B8    LDR X0, [X0, #0x30]                   // X0 ← ProfileWorld*
0x71081935BC    MOV W1, W20                           // arg1: missionId
0x71081935C0    MOV X2, XZR                           // arg2: predicate = NULL
0x71081935C4    BL  0x7104D733B0                      // X0 ← ProfileWorld.GetMissionSlot(id, NULL)
0x71081935C8    MOV X20, X0                           // Keep MissionSlot* in X20

0x71081935CC    BL  0x71054CCAF0                      // X0 ← MissionSlot.get_CurrentStep()
0x71081935D0    LDR X8,  [X0, #0x18]                  // RepeatedField<MissionSubStep>*
0x71081935D4    LDR X8,  [X8, #0x10]                  // List<MissionSubStep>*
0x71081935D8    LDR W21, [X8, #0x18]                  // W21 ← subStepCount
0x71081935DC    LDR X9,  [X8, #0x10]                  // _items (Il2CppArray*)
0x71081935E0    ADD X23, X9, #0x20                    // X23 ← subSteps data base
0x71081935E4    MOV W22, #0                           // i = 0

// ===== Outer loop over SubSteps =====
0x71081935E8    CMP W22, W21
0x71081935EC    B.GE 0x7108193670                     // i >= subStepCount → Epilogue

0x71081935F0    LDR X10, [X23, X22, LSL #3]           // X10 ← MissionSubStep*
0x71081935F4    LDR X11, [X10, #0x18]                 // RepeatedField<MissionObjective>*
0x71081935F8    LDR X11, [X11, #0x10]                 // List<MissionObjective>*
0x71081935FC    LDR W24, [X11, #0x18]                 // W24 ← objectiveCount
0x7108193600    LDR X12, [X11, #0x10]                 // _items
0x7108193604    ADD X26, X12, #0x20                   // X26 ← objectives data base
0x7108193608    MOV W25, #0                           // j = 0

// —— Inner loop over Objectives ——
0x710819360C    CMP W25, W24
0x7108193610    B.GE 0x7108193668                     // j >= objectiveCount → next SubStep

0x7108193614    LDR X0, [X26, X25, LSL #3]            // X0 ← MissionObjective*
0x7108193618    LDR W1, [X0, #0x30]                   // W1 ← status_ (MissionStepStatus)
0x710819361C    CMP W1, #1                            // status == Ongoing(1) ?
0x7108193620    B.EQ 0x710819362C                     // yes → check step case
0x7108193624    CMP W1, #2                            // status == ReadyToBeCompleted(2) ?
0x7108193628    B.NE 0x7108193660                     // no  → skip (j++)

// At this point: status ∈ {1,2} (candidate objective)
0x710819362C    LDR X13, [X0, #0x88]                  // X13 ← MissionObjectiveData*
0x7108193630    LDR W1,  [X13, #0x48]                 // W1 ← customStepCase (CustomStepOneofCase)
0x7108193634    CMP W1, #207                          // customStepCase == MenuAction(207) ?
0x7108193638    B.EQ 0x710819364C                     // yes → set Condition=13
0x710819363C    CMP W1, #140                          // customStepCase == DesignChallenge(140) ?
0x7108193640    B.NE 0x7108193660                     // no  → skip (j++)
0x7108193644    MOV W1, #14                           // Condition = 14 (DesignChallenge)
0x7108193648    B   0x7108193650                      // go call CheckForAdvanceStep

0x710819364C    MOV W1, #13                           // Condition = 13 (MenuAction)
0x7108193650    LDR X3, [X13, #0x30]                  // X3 ← stepName (Objective's StepName string)
0x7108193654    MOV X2, X20                           // X2 ← missionSlot*
0x7108193658    MOV X0, X19                           // X0 ← this (MissionManager*)
0x710819365C    BL  0x7103232630                      // Call CheckForAdvanceStep(this, cond=13/14, slot, stepName)

// Advance inner loop
0x7108193660    ADD W25, W25, #1                      // j++
0x7108193664    B   0x710819360C                      // loop back (Objectives)

// Advance outer loop
0x7108193668    ADD W22, W22, #1                      // i++
0x710819366C    B   0x71081935E8                      // loop back (SubSteps)

// ==== Epilogue ====
0x7108193670    LDP X26, X27, [SP], #0x10             // Restore callee-saved
0x7108193674    LDP X24, X25, [SP], #0x10
0x7108193678    LDP X22, X23, [SP], #0x10
0x710819367C    LDP X20, X21, [SP], #0x10
0x7108193680    LDP X19, X30, [SP], #0x10
0x7108193684    RET
// --- Code Cave End ---
 

Site & Scene News

Popular threads in this forum