Jump to content

Guides:Mail Writer Codes: Difference between revisions

mNo edit summary
Line 1,759:
||
01 34 01 C5 3E 09 21 3A 71 CF C1 0D 20 F5 C9 01
|}
 
==Constant effect codes==
 
By hijacking the OAM DMA routine, we can trick the game into executing a small bit of code on every frame. This allows for certain continuous effects to be applied. As a drawback, only one of these codes can be used at a time, you will need to reapply the effect after every reset.
 
To use these effects you first need to set up an OAM DMA hijack. This can be done by either executing the first code of this section or using the RAM writer, if you have the last one installed.
 
===Setting up an OAM DMA hijack===
 
Every frame, the game will execute an OAM DMA routine. The instructions for this routine is kept in HRAM, in the area between $FF80 and $FF89. By removing the final return instruction and inserting a custom jump instruction, the game will execute up to 15 bytes of custom code.
 
This code only enables the OAM DMA hijack and will not have any immediately visible effects on gameplay. After executing this code, another code needs to be used to insert a custom byte code so that it can be executed on every frame. Codes that do this can be found further on in this section.
 
{| class="wikitable"
|+ Codes to be used with [https://timovm.github.io/MailConverter/ TimoVM's MailConverter]
|-
! Language !! Gold & Silver !! Crystal
|-
! scope="row"| English
||
01 03 00 11 8A FF 21 6B DD CD 1A 31 3E C9 EA 21
DF AF EA 89 FF C9 C3 01 DF 10 10 10 10 10 10 10
||
01 05 00 11 F9 FF 21 9B D2 CD 26 30 3E C9 21 20
C0 77 3E 70 E0 88 3E 18 E0 87 E9 20 8B C3 00 C0
|-
! scope="row" | French
||
01 03 00 11 8A FF 21 6B DD CD 2C 31 3E C9 EA 21
DF AF EA 89 FF C9 C3 01 DF 10 10 10 10 10 10 10
||
01 05 00 11 F9 FF 21 9B D2 CD 13 30 3E C9 21 20
C0 77 3E 70 E0 88 3E 18 E0 87 E9 20 8B C3 00 C0
|-
! scope="row"| German
||
01 03 00 11 8A FF 21 6B DD CD 47 31 3E C9 EA 21
DF AF EA 89 FF C9 C3 01 DF 10 10 10 10 10 10 10
||
01 05 00 11 F9 FF 21 9B D2 CD 10 30 3E C9 21 20
C0 77 3E 70 E0 88 3E 18 E0 87 E9 20 8B C3 00 C0
|-
! scope="row"| Italian
||
01 03 00 11 8A FF 21 6B DD CD 3F 31 3E C9 EA 21
DF AF EA 89 FF C9 C3 01 DF 10 10 10 10 10 10 10
||
01 05 00 11 F9 FF 21 9B D2 CD 14 30 3E C9 21 20
C0 77 3E 70 E0 88 3E 18 E0 87 E9 20 8B C3 00 C0
|-
! scope="row"| Spanish
||
01 03 00 11 8A FF 21 6B DD CD 3E 31 3E C9 EA 21
DF AF EA 89 FF C9 C3 01 DF 10 10 10 10 10 10 10
||
01 05 00 11 F9 FF 21 9B D2 CD 10 30 3E C9 21 20
C0 77 3E 70 E0 88 3E 18 E0 87 E9 20 8B C3 00 C0
|-
! scope="row"| Japanese
||
01 03 00 11 8A FF 21 DC DC CD D6 30 3E C9 EA 21
DF AF EA 89 FF C9 C3 01 DF 10 10 10 10 10 10 10
||
01 05 00 11 F9 FF 21 CC D2 CD F2 2F 3E C9 21 20
C0 77 3E 70 E0 88 3E 18 E0 87 E9 20 8B C3 00 C0
|-
! scope="row"| Korean
||
01 03 00 11 8A FF 21 68 DE CD C2 31 3E C9 EA 12
D8 AF EA 89 FF C9 C3 F2 D7 00 00 00 00 00 00 00
|}
 
===Walk Through Walls===
 
Executing this code, while an OAM DMA hijack was set up, will trigger the following effects:
* Causes the player to ignore all map-related collisions.
* Collisions can be temporarily re-enabled by holding B while walking.
 
Please note that leaving the boundaries of the current map and entering an undefined map will crash the game. Certain exits, especially indoors areas, rely on player collision to properly function. Make sure to hold B to re-enable collision before appreaching such exits.
 
This code will cause small, harmless, temporary graphical glitches when displaying pokémon sprites on the JP release of Crystal.
 
{| class="wikitable"
|+ Codes to be used with [https://timovm.github.io/MailConverter/ TimoVM's MailConverter]
|-
! Language !! Gold & Silver !! Crystal
|-
! scope="row"| English
||
01 0F 00 11 01 DF 21 61 DD C3 1A 31 F0 A6 E6 02
C0 AF 21 A3 CE 22 22 22 22 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 26 30 F0 A4 E6 02
C0 AF 21 FA C2 22 22 22 22 00 00 10 10 10 10 10
|-
! scope="row" | French
||
01 0F 00 11 01 DF 21 61 DD C3 2C 31 F0 A6 E6 02
C0 AF 21 A3 CE 22 22 22 22 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 13 30 F0 A4 E6 02
C0 AF 21 FA C2 22 22 22 22 00 00 10 10 10 10 10
|-
! scope="row"| German
||
01 0F 00 11 01 DF 21 61 DD C3 47 31 F0 A6 E6 02
C0 AF 21 A3 CE 22 22 22 22 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 10 30 F0 A4 E6 02
C0 AF 21 FA C2 22 22 22 22 00 00 10 10 10 10 10
|-
! scope="row"| Italian
||
01 0F 00 11 01 DF 21 61 DD C3 3F 31 F0 A6 E6 02
C0 AF 21 A3 CE 22 22 22 22 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 14 30 F0 A4 E6 02
C0 AF 21 FA C2 22 22 22 22 00 00 10 10 10 10 10
|-
! scope="row"| Spanish
||
01 0F 00 11 01 DF 21 61 DD C3 3E 31 F0 A6 E6 02
C0 AF 21 A3 CE 22 22 22 22 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 10 30 F0 A4 E6 02
C0 AF 21 FA C2 22 22 22 22 00 00 10 10 10 10 10
|-
! scope="row"| Japanese
||
01 0F 00 11 01 DF 21 D2 DC C3 D6 30 F0 A6 E6 02
C0 AF 21 97 CE 22 22 22 22 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 BD D2 C3 F2 2F F0 A4 E6 02
C0 AF 21 3E D1 22 22 22 22 00 00 10 10 10 10 10
|-
! scope="row"| Korean
||
01 0F 00 11 F2 D7 21 5E DE C3 C2 31 F0 A6 E6 02
C0 AF 21 78 CE 22 22 22 22 00 00 00 00 00 00 00
|}
 
===Run while the B button is held===
 
Executing this code, while an OAM DMA hijack was set up, will trigger the following effects:
* When the B button is held, the player will run at the same speed as when using a bike.
* When the B button is released, the player will walk at normal walking speed.
 
Holding the B button will change the player's state to the "bike-riding" state. When the B button is held during map transitions, the player may look as if they are riding a bicycle instead of walking.
 
This code will cause small, harmless, temporary graphical glitches when displaying pokémon sprites on all releases of Crystal.
 
{| class="wikitable"
|+ Codes to be used with [https://timovm.github.io/MailConverter/ TimoVM's MailConverter]
|-
! Language !! Gold & Silver !! Crystal
|-
! scope="row"| English
||
01 0F 00 11 01 DF 21 61 DD C3 1A 31 F0 A6 E6 02
28 01 3C E6 01 EA 82 D6 00 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 26 30 F0 A4 E6 02
28 01 3C E6 01 EA 5D D9 00 00 00 10 10 10 10 10
|-
! scope="row" | French
||
01 0F 00 11 01 DF 21 61 DD C3 2C 31 F0 A6 E6 02
28 01 3C E6 01 EA 82 D6 00 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 13 30 F0 A4 E6 02
28 01 3C E6 01 EA 5D D9 00 00 00 10 10 10 10 10
|-
! scope="row"| German
||
01 0F 00 11 01 DF 21 61 DD C3 47 31 F0 A6 E6 02
28 01 3C E6 01 EA 82 D6 00 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 10 30 F0 A4 E6 02
28 01 3C E6 01 EA 5D D9 00 00 00 10 10 10 10 10
|-
! scope="row"| Italian
||
01 0F 00 11 01 DF 21 61 DD C3 3F 31 F0 A6 E6 02
28 01 3C E6 01 EA 82 D6 00 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 14 30 F0 A4 E6 02
28 01 3C E6 01 EA 5D D9 00 00 00 10 10 10 10 10
|-
! scope="row"| Spanish
||
01 0F 00 11 01 DF 21 61 DD C3 3E 31 F0 A6 E6 02
28 01 3C E6 01 EA 82 D6 00 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 10 30 F0 A4 E6 02
28 01 3C E6 01 EA 5D D9 00 00 00 10 10 10 10 10
|-
! scope="row"| Japanese
||
01 0F 00 11 01 DF 21 D2 DC C3 D6 30 F0 A6 E6 02
28 01 3C E6 01 EA 75 D6 00 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 BD D2 C3 F2 2F F0 A4 E6 02
28 01 3C E6 01 EA 50 D9 00 00 00 10 10 10 10 10
|-
! scope="row"| Korean
||
01 0F 00 11 F2 D7 21 5E DE C3 C2 31 F0 A6 E6 02
28 01 3C E6 01 EA 35 D7 00 00 00 00 00 00 00 00
|}
 
===Make every encountered pokémon shiny or set their DVs===
 
Executing this code, while an OAM DMA hijack was set up, will trigger the following effects:
* Make every encountered pokémon, including trainer pokémon, shiny.
 
Customizability: the two values marked in bold determine the DVs that all encountered pokémon will receive. These values are divided and ordered as follows:
# '''FA''' - Attack | Defense
# '''AA''' - Speed | Special
Set to '''FF FF''' to maximize DVs, set to '''FA AA''' for a shiny male pokémon, set to '''2A AA''' for a shiny female (if possible) pokémon.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
{| class="wikitable"
|+ Codes to be used with [https://timovm.github.io/MailConverter/ TimoVM's MailConverter]
|-
! Language !! Gold & Silver !! Crystal
|-
! scope="row"| English
||
01 0F 00 11 01 DF 21 61 DD C3 1A 31 21 F5 D0 01
'''FA AA''' 71 23 70 00 00 00 00 00 00 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 26 30 21 0C D2 01
'''FA AA''' 71 23 70 00 00 00 00 00 00 10 10 10 10 10
|-
! scope="row" | French
||
01 0F 00 11 01 DF 21 61 DD C3 2C 31 21 F5 D0 01
'''FA AA''' 71 23 70 00 00 00 00 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 13 30 21 0C D2 01
'''FA AA''' 71 23 70 00 00 00 00 00 00 10 10 10 10 10
|-
! scope="row"| German
||
01 0F 00 11 01 DF 21 61 DD C3 47 31 21 F5 D0 01
'''FA AA''' 71 23 70 00 00 00 00 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 10 30 21 0C D2 01
'''FA AA''' 71 23 70 00 00 00 00 00 00 10 10 10 10 10
|-
! scope="row"| Italian
||
01 0F 00 11 01 DF 21 61 DD C3 3F 31 21 F5 D0 01
'''FA AA''' 71 23 70 00 00 00 00 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 14 30 21 0C D2 01
'''FA AA''' 71 23 70 00 00 00 00 00 00 10 10 10 10 10
|-
! scope="row"| Spanish
||
01 0F 00 11 01 DF 21 61 DD C3 3E 31 21 F5 D0 01
'''FA AA''' 71 23 70 00 00 00 00 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 8C D2 C3 10 30 21 0C D2 01
'''FA AA''' 71 23 70 00 00 00 00 00 00 10 10 10 10 10
|-
! scope="row"| Japanese
||
01 0F 00 11 01 DF 21 D2 DC C3 D6 30 21 E7 D0 01
'''FA AA''' 71 23 70 00 00 00 00 00 00 10 10 10 10 10
||
01 0F 00 11 00 C0 21 BD D2 C3 F2 2F 21 3D D2 01
'''FA AA''' 71 23 70 00 00 00 00 00 00 10 10 10 10 10
|-
! scope="row"| Korean
||
01 0F 00 11 F2 D7 21 5E DE C3 C2 31 21 B2 D1 01
'''FA AA''' 71 23 70 00 00 00 00 00 00 10 10 10 10 10
|}
 
1,527

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.