Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- HGSS Repel Chain Tutorial
- Based on: https://ds-pokemon-hacking.github.io/docs/generation-iv/guides/pt-reusable_repel/
- There are THREE sections to this tutorial for new users. Read ALL sections first, then follow the instructions one by one.
- Old Users, follow the Old Users section first, then the rest.
- Programs Needed:
- A text editor like Word, Notepad, or Notepad++
- Newest Canary DSPRE build(you should know where to get this)
- HxD(or another hex editor) - https://mh-nexus.de/en/downloads.php?product=HxD20
- --------------------------------------------OLD USERS-----------------------------------------------
- REVERSION-------------------------------REVERSION Section-------------------------------------------
- FOR PREVIOUS USERS OF THIS TUTORIAL ONLY, NEW USERS SKIP THIS
- -------------------------------------------Script File 3-------------------------------------------
- -----------------------------------------------DSPRE-----------------------------------------------
- This is a necessary fix if coming from an old version of DSPRE, since Canary has been updated to account for it. If you have only used the Canary build of DSPRE or started from scratch on the Canary version, you can skip this section.
- Use the Canary version of DSPRE to open a vanilla rom of HG or SS. Export the Script File 3 from this. Then close DSPRE.
- Open up your main HG or SS folder with the Canary DSPRE and open the Script Editor and open Script File 3. Import the vanilla Script file 3 that was exported earlier.
- This section is now done.
- ---------------------------------------------ARM9.bin-----------------------------------------------
- in the hex editor open ARM9.bin and go to address 43D74(make SURE it says this offset in the bottom left corner)
- Use CTRL+B as above to replace the previously edited hex with this:
- ----------------------------------------------------------------------------------------------------
- 00 20 70 47 F8 B5 05 1C 80 30 00 68 C0 68 E6 F7 57 FC 07 1C 28 1C 80 30 00 68 C0 68 E5 F7 84 F8 A9 68 00 90 48 1C A8 60 28 1C 0E 78 FC F7 44 F8 01 1C 28 1C 80 30 00 68 FC F7 E2 FA 04 1C 28 1C FC F7 3A F8 80 35 01 1C 28 68 FC F7 D9 FA 05 1C 00 2E 0E D1 38 1C E6 F7 EF F8 06 1C 00 98 E5 F7 DF F8 01 1C 09 04 30 1C 09 0C 2A 1C 17 F0 F6 FE 0D E0 38 1C E6 F7 C4 F8 06 1C 00 98 E5 F7 D0 F8 01 1C 09 04 30 1C 09 0C 2A 1C 17 F0 3B FF 20 80 00 20 F8 BD
- ----------------------------------------------------------------------------------------------------
- This will restore the actual Dex Check along with the dummy check, and therefore fix Prof Oak.
- This section is now done.
- Consider yourself a new user now :)
- ----------------------------------------------------------------------------------------------------
- ----------------------------------------------------------------------------------------------------
- --------------------------------------------NEW USERS-----------------------------------------------
- -------------------------------------------REPEL Section-------------------------------------------
- 1----------------------------------------Script File Edits-----------------------------------------
- -----------------------------------------------DSPRE-----------------------------------------------
- In DSPRE open Script File 3.
- Completely replace the Script 23 entry with the following:
- ---------------------------------------------------------------------------------------------------
- Script 23:
- PlayFanfare 1500
- LockAll
- CheckItem 79 1 0x800C
- CompareVarValue 0x800C 1
- JumpIf EQUAL Function#177
- CheckItem 76 1 0x800C
- CompareVarValue 0x800C 1
- JumpIf EQUAL Function#177
- CheckItem 77 1 0x800C
- CompareVarValue 0x800C 1
- JumpIf EQUAL Function#177
- Message 65
- WaitAB
- CloseMessage
- ReleaseAll
- End
- ---------------------------------------------------------------------------------------------------
- Switch to the Functions tab and ADD these functions AFTER function 156
- ---------------------------------------------------------------------------------------------------
- Function 177:
- Message 66
- OpenTouchScreen
- YesNoTouchScreen 0x800C
- CompareVarValue 0x800C 0
- JumpIf EQUAL Function#178
- CloseMessage
- CloseTouchScreen
- ReleaseAll
- End
- Function 178:
- MultiTouchStandardText 1 1 0 1 0x800C
- CheckItem 79 1 0x8000
- CompareVarValue 0x8000 1
- CallIf EQUAL Function#179
- CheckItem 76 1 0x8000
- CompareVarValue 0x8000 1
- CallIf EQUAL Function#180
- CheckItem 77 1 0x8000
- CompareVarValue 0x8000 1
- CallIf EQUAL Function#181
- CreateMultiTouchBox 33 255 3
- CloseMultiTouch
- CompareVarValue 0x800C 0
- JumpIf EQUAL Function#182
- CompareVarValue 0x800C 1
- JumpIf EQUAL Function#183
- CompareVarValue 0x800C 2
- JumpIf EQUAL Function#184
- CloseTouchScreen
- CloseMessage
- ReleaseAll
- End
- Function 179:
- CreateMultiTouchBox 30 255 0
- Return
- Function 180:
- CreateMultiTouchBox 31 255 1
- Return
- Function 181:
- CreateMultiTouchBox 32 255 2
- Return
- Function 182:
- CloseTouchScreen
- CloseMessage
- AdrsValueSet 0x020FB0DC 33
- AdrsValueSet 0x020FB0DD 203
- AdrsValueSet 0x020FB0DE 15
- AdrsValueSet 0x020FCB60 100
- DummyNationalDexCheck
- AdrsValueSet 0x020FB0DC 117
- AdrsValueSet 0x020FB0DD 61
- AdrsValueSet 0x020FB0DE 4
- TakeItem 79 1 0x8000
- PlayFanfare 1535
- WaitFanfare 1535
- TextPlayerName 0
- TextItem 1 79
- Message 67
- WaitButton
- CloseMessage
- ReleaseAll
- Return
- Function 183:
- CloseTouchScreen
- CloseMessage
- AdrsValueSet 0x020FB0DC 33
- AdrsValueSet 0x020FB0DD 203
- AdrsValueSet 0x020FB0DE 15
- AdrsValueSet 0x020FCB60 150
- DummyNationalDexCheck
- AdrsValueSet 0x020FB0DC 117
- AdrsValueSet 0x020FB0DD 61
- AdrsValueSet 0x020FB0DE 4
- TakeItem 76 1 0x8000
- PlayFanfare 1535
- WaitFanfare 1535
- TextPlayerName 0
- TextItem 1 76
- Message 67
- WaitButton
- CloseMessage
- ReleaseAll
- Return
- Function 184:
- CloseTouchScreen
- CloseMessage
- AdrsValueSet 0x020FB0DC 33
- AdrsValueSet 0x020FB0DD 203
- AdrsValueSet 0x020FB0DE 15
- AdrsValueSet 0x020FCB60 250
- DummyNationalDexCheck
- AdrsValueSet 0x020FB0DC 117
- AdrsValueSet 0x020FB0DD 61
- AdrsValueSet 0x020FB0DE 4
- TakeItem 77 1 0x8000
- PlayFanfare 1535
- WaitFanfare 1535
- TextPlayerName 0
- TextItem 1 77
- Message 67
- WaitButton
- CloseMessage
- ReleaseAll
- Return
- ---------------------------------------------------------------------------------------------------
- Save Script File 3 with the Save Current File button on the left.
- Confirm you saved, there should be no asterisks on the tabs in the right panel.
- This section is now done.
- ---------------------------------------------------------------------------------------------------
- 2-------------------------------------Text Archive Additions---------------------------------------
- ---------------------------------------------------------------------------------------------------
- In DSPRE open the Text Editor and edit the following text archives to have the text specified,
- at the number entry specified.
- Start with Text Archive 40.
- ---------------------------------------------------------------------------------------------------
- [Text Archive 40]
- 66: Repel’s effect wore off...\nWould you like to use another one? \v0200\x0001\x0000
- 67: \v0103ぁ\x0000\x0000 used the\n\v0108ぁ\x0001\x0000.\rWild Pokémon will be repelled.
- ---------------------------------------------------------------------------------------------------
- Save Text Archive 40 with the Save Current Archive button on the left.
- Open Text Archive 191
- ---------------------------------------------------------------------------------------------------
- [Text Archive 191]
- 30: Repel
- 31: Super Repel
- 32: Max Repel
- 33: CANCEL
- ---------------------------------------------------------------------------------------------------
- Save Text Archive 191 with the Save Current Archive button on the left.
- This section is now done.
- ----------------------------------------------FINAL-------------------------------------------------
- 3----------------------------------------Hex Edit Section-------------------------------------------
- ---------------------------------------------ARM9.bin-----------------------------------------------
- Open the Arm9.bin in HxD and go to offset 0FCB20(make SURE it says this offset in the bottom left corner)
- Copy the following hex code(numbers, spaces, and letters):
- ----------------------------------------------------------------------------------------------------
- 03 48 01 68 03 48 09 18 03 48 02 78 0A 70 70 47 80 18 11 02 19 69 00 00 60 CB 0F 02
- ----------------------------------------------------------------------------------------------------
- Use CTRL+B to replace the hex starting at offset 0FCB20
- Save, and you're done.
Advertisement
Add Comment
Please, Sign In to add comment