User:TimoVM/TM codes

From Glitch City Wiki
Jump to navigation Jump to search

This page serves as a repository for a list of modular TM codes for use in Gold/Silver. These consists of two segments:

  • Write a small program using the quantities of TM01 through TM18 that either runs a modular code or, when holding select while activating ACE, resets the quantities of TM19 through TM50 to x255.
  • Write out a modular code in the quantities of TM19 onward and run it using the first program.

This page assumes that you have previously set the quantities of all TMs to x255 and have a way to redirect execution to the TM/HM pocket.

Setting all TM quantities to x255 and redirecting execution to the TM/HM pocket

This section is a small compilation of box name codes that can be used for setting all TM quantities to 255, along with box name codes that redirect execution to the start of the TM/HM pocket. Methods of using these are elaborated on in the English GS guide and the international GS guide

Mail contents

If you are using a Wooper in your ACE setup, you can ignore this section.

English German French Spanish Italian
A A A A A A A A A A A A A A A A
A A p 'v 7 ' ] . 9 'l 'l 'l p 'm z 2 
A A A A A A A A A A A A A A A A
A A ë R H é 8 2 ë 9 é ß 2 ä ß 2 
A A A A A A A A A A A A A A A A
A A p û ç 2 
A A A A A A A A A A A A A A A A
A A p ñ Á 2 
A A A A A A A A A A A A A A A A
A A p ñ Á 2 

Set all TM quantities to x255

English German French Spanish Italian
Box 1: A p 'v C é 2 2 5
Box 2: 'v j 'v u é 1 2 5
Box 3: 'v ♂ é 5 2 p 'v 9
Box 4: é 4 2 p é 6 2 5
Box 5: 'v u é 8 2 'v {space} 5
Box 6: é 7 2 'v : é 9 2
Box 7: 0 9 ♀ 5 ♀ 5 5 5
Box 8: 5 5 5 5 5 5 x 'd
Box 1: , 2 ö 8 2 W 5 5
Box 2: ö 8 2 W ö 8 2 o
Box 3: ö 8 2 w G ö 8 2
Box 4: G ö 8 2 G ö 8 2
Box 5: G ö 8 2 p ♀ Ö w
Box 6: ä , 2
Box 7: d J 5 T R w y 9
Box 8: A Ä
Box 1: A p é 3 2 u' 9
Box 2: é 1 2 u' c é 5 2
Box 3: H u' L é 6 2 ? b
Box 4: é , 2 u' ♂ é 2 2
Box 5: u' t é ♀ 2 ] 5
Box 6: p' , 2
Box 7: A ♀ ♀ ♀ ♀ p'
Box 1: A p é 3 2 ° 9
Box 2: é 1 2 ° D é ♀ 2
Box 3: È d é , 2 ° ♂
Box 4: é 2 2 È 9 é 6 2 
Box 5: p ° Q é 5 2 0 9 
Box 6: ñ , 2
Box 7: A ♀ ♀ ♀ ♀ ñ
Box 1: A p é 3 2 ° 9
Box 2: é 1 2 ° D é ♀ 2
Box 3: È d é , 2 ° ♂
Box 4: é 2 2 È 9 é 6 2 
Box 5: p ° P é 5 2 0 9 
Box 6: ñ , 2
Box 7: A ♀ ♀ ♀ ♀ ñ

Redirect execution to box codes

English German French Spanish Italian
Box 1: A p 'v C é 'd 2 5
Box 2: 5 5 5 5 5 5 h 'm
Box 3: ♀
Box 1: , 2 ö 8 2 0 {space} 5
Box 2: ? 8 ö 8 2 ä , 2
Box 3-6: any
Box 7: ♀ ♀ &
Box 8: A Ä 
Box 1: A p u' C é 0 2
Box 2: p' ♀ 2
Box 3-6: any
Box 7: p' ♀ ♀ 
A p ° C é 0 2 p
Box 2: ñ ♀ 2
Box 3-6: any
Box 7: ñ ♀ ♀ 
A p ° C é 0 2 p
Box 2: ñ ♀ 2
Box 3-6: any
Box 7: ñ ♀ ♀ 

Setup

  • Sell the following TMs until you reach the following final quantities:
TM Final quantity Amount sold for
TM01 33 333000
TM02 144 111000
TM03 213 63000
TM04 240 15000
TM05 170 42500
TM06 203 78000
TM07 87 168000
TM08 202 26500
TM09 LANGUAGE DEPENDENT LANGUAGE DEPENDENT
TM10 39 324000
TM11 01 254000
TM12 32 111500
TM13 00 127500
TM14 62 289500
TM15 255 0
TM16 195 90000
TM17 LANGUAGE DEPENDENT LANGUAGE DEPENDENT
TM18 49 206000
Language dependent TM
TM English German French Spanish Italian
Final amount Amount sold for Final amount Amount sold for Final amount Amount sold for Final amount Amount sold for Final amount Amount sold for
TM09 72 91500 117 69000 90 82500 108 73500 109 73000
TM17 76 268500 121 201000 94 241500 112 214500 113 213000

Do not execute the ACE item yet!! This code only works properly when combined with one of the modular codes from the next section.

This code has two main functions:

  • By using the ACE item normally, the game will set up everything necessary to execute a set of script commands. When you close the start menu and return to the overworld, the game will execute script commands from the quantities of TM19 onward.
  • By using the ACE item while holding SELECT, the code immediately resets the quantities of TM19 through TM50. This erases the current modular code, allowing you to write a new modular code.

Please note that there are a few things to look out for:

  • Do NOT execute the setup without having written a modular code from the quantities of TM19 onward. Doing this will cause the game to freeze.
  • In a similar vein, do NOT reset the modular code if you have already queued up a script to execute after closing the start menu. Doing this will cause the game to freeze.
  • Ensure to properly read usage note for every modular code.

List of modular codes

Here you can find a list of modular codes to be used in combination with the above setup to execute a specific effect.

Better ACE environment (and fixing effects of earlier glitches)

This single use code adds a wrong pocket TM33 to your key item pack, along with installing everything so that using this TM33 will execute the setup code and modular code.

This means that you will no longer need specific pokémon in the first and second party slot to use ACE.

the non-EN version of this code also fixes the effect that duplicate key item swap has on the key item pocket along with removing the last party pokémon. This allows you to safely remove the glitch pokémon you got while obtaining duplicate key items.

With the exception of the quantities of TM43 through TM47, both the EN version of the code and the non-EN version of the code are exactly the same.

TM EN: final quantity EN: amount sold for non-EN: final quantity non-EN: amount sold for
TM19 14 361500
TM20 00 382500
TM21 149 53000
TM22 213 63000
TM23 144 166500
TM24 62 289500
TM25 225 30000
TM26 111 216000
TM27 52 101500
TM28 78 177000
TM29 09 246000
TM30 34 331500
TM31 54 301500
TM32 255 0
TM33 33 333000
TM34 24 115500
TM35 212 21500
TM36 62 96500
TM37 195 60000
TM38 34 221000
TM39 62 193000
TM40 126 64500
TM41 34 331500
TM42 54 301500
TM43 213 21000
TM44 33 333000 201 81000
TM45 34 331500 255 0
TM46 218 55500 255 0
TM47 53 303000 255 0
TM48 201 81000 255 0

Usage notes

  • This code is intended to only be used once.
  • For non-EN versions, ensure that you put the glitch pokémon in the bottommost party slot.
  • For non-EN versions, ensure you have at least two pokémon in your party.

Get any item

This code, when executed, will add a certain quantity of a certain item to the correct item pocket.

TM Final quantity Amount sold for
TM19 31 336000
TM20 XX item ID
TM21 YY item quantity
TM22 144 166500

Usage notes

  • The quantities of TM20 and TM21 need to be filled in yourself. You can find item IDs in the big hex list. Some interesting values to get started:
Item ID Final quantity Amount sold for
Master Ball 01 381000
Rare Candy 32 334500
Exp. Share 57 297000
PP Up 62 289500
Lucky Egg 126 193500
  • Do NOT use this code to obtain TMs. There is another modular code a bit further in that allows you to directly edit the moves of a pokémon.
  • Please ensure that you have enough space in your item packs to actually be able to add them.

Encounter shiny wild pokémon of XX species at YY level

This code, when executed, will trigger a wild encounter with a shiny wild pokémon of a specific species at a specific level.

TM Final quantity Amount sold for
TM19 92 244500
TM20 XX pokémon species
TM21 YY pokémon level
TM22 30 337500
TM23 03 378000
TM24 07 372000
TM25 94 161000
TM26 95 240000
TM27 144 55500

Usage notes

  • The encounter triggers immediately after exiting the start menu. Please note that you cannot run from this encounter.
  • The DVs of the encountered wild pokémon will always be 14/10/10/10. There is another modular code further on that allows you to edit the DVs of your party pokémon to another value if desired.
  • The value of TM20 corresponds to the pokémon's species and is directly related to the pokédex number. e.g. a quantity of 152 will result in an encounter with Chikorita.
  • The value of TM21 corresponds to the pokémon's level. e.g. a quantity of 5 will result in an encounter with a lvl 5 pokémon. It is recommended to set this quantity to 100 or less.

Encounter wild pokémon of XX species at YY level

This code, when executed, will trigger a wild encounter with a wild pokémon of a specific species at a specific level.

TM Final quantity Amount sold for
TM19 92 244500
TM20 XX pokémon species
TM21 YY pokémon level
TM22 94 241500
TM23 95 240000
TM24 144 166500

Usage notes

  • The encounter triggers immediately after exiting the start menu.
  • The DVs of the encountered wild pokémon will be random. There is another modular code further on that allows you to edit the DVs of your party pokémon to another value if desired.
  • The value of TM20 corresponds to the pokémon's species and is directly related to the pokédex number. e.g. a quantity of 152 will result in an encounter with Chikorita.
  • The value of TM21 corresponds to the pokémon's level. e.g. a quantity of 5 will result in an encounter with a lvl 5 pokémon. It is recommended to set this quantity to 100 or less.

Obtain a VC transferable shiny Mew

This code triggers an encounter with a shiny lvl 5 Mew. After the battle has concluded, party pokémon #6's OT and ID are adjusted to match the data from the transferable event Mew.

TM Final quantity Amount sold for
TM19 92 244500
TM20 151 156000
TM21 05 125000
TM22 30 337500
TM23 03 378000
TM24 07 372000
TM25 94 161000
TM26 95 240000
TM27 14 120500
TM28 255 0
TM29 157 98000
TM30 213 63000
TM31 144 166500
TM32 33 222000
TM33 32 334500
TM34 219 18000
TM35 62 96500
TM36 89 83000
TM37 34 221000
TM38 54 201000
TM39 12 243000
TM40 46 104500
TM41 129 189000
TM42 62 289500
TM43 134 60500
TM44 34 331500
TM45 61 291000
TM46 34 331500
TM47 54 301500
TM48 80 262500
TM49 201 81000

Usage notes

  • Only use this code if you have exactly 5 pokémon in your party. The intent is that you catch Mew, then it gets set as your 6th party pokémon, after which its OT and ID get updated.
  • It is recommended that you have at least one Master Ball on hand to catch Mew easily.
  • The DVs of this Mew are guaranteed to be 14/10/10/10.

Set DVs of the third party pokémon based on values of TM28 and TM31

TM EN: final quantity EN: amount sold for non-EN: final quantity non-EN: amount sold for
TM19 14 361500
TM20 255 0
TM21 149 53000
TM22 213 63000
TM23 144 166500
TM24 33 333000
TM25 159 96000
TM26 218 55500
TM27 62 96500
TM28 XX Attack & Defense DV
TM29 34 221000
TM30 54 301500
TM31 YY Speed & Special DV
TM32 201 54000

Usage notes

  • Adjust the quantities of TM28 and TM31 according to the DVs you wish to use. Use the following formulas or the precalculated options below:
TM28 quantity = (16 x Attack DV) + Defense DV
TM31 quantity = (16 x Speed DV) + Special DV
DVs TM Final quantity Amount sold for
Perfect DVs TM28 255 00
TM31 255 00
Shiny, male gender TM28 250 5000
TM31 170 127500
Shiny, female if possible TM28 42 213000
TM31 170 127500

Set moves of the third party pokémon based on values of TM36 through TM39

TM EN: final quantity EN: amount sold for
TM19 14 361500
TM20 255 0
TM21 149 53000
TM22 213 63000
TM23 144 166500
TM24 33 333000
TM25 161 94000
TM26 213 63000
TM27 17 119000
TM28 140 115000
TM29 218 37000
TM30 1 381000
TM31 4 376500
TM32 0 255000
TM33 195 90000
TM34 LANGUAGE DEPENDENT LANGUAGE DEPENDENT
TM35 49 103000
TM36 XX Move slot #1
TM37 XX Move slot #2
TM38 XX Move slot #3
TM39 XX Move slot #4
Language dependent TM
TM English German French Spanish Italian
Final amount Amount sold for Final amount Amount sold for Final amount Amount sold for Final amount Amount sold for Final amount Amount sold for
TM34 26 114500 71 92000 44 105500 62 96500 63 96000

Usage notes

  • Move IDs can be found on the Big HEX List big hex list. Use a quantity of 0 if you want the respective move slot to be empty.
  • Make sure to heal your pokémon at the pokémon center to properly reset PP values.

Set stat experience of the third party pokémon based on values of TM36 through TM45

TM EN: final quantity EN: amount sold for
TM19 14 361500
TM20 255 0
TM21 149 53000
TM22 213 63000
TM23 144 166500
TM24 33 333000
TM25 161 94000
TM26 213 63000
TM27 17 119000
TM28 149 106000
TM29 218 37000
TM30 1 381000
TM31 10 367500
TM32 0 255000
TM33 195 90000
TM34 LANGUAGE DEPENDENT LANGUAGE DEPENDENT
TM35 49 103000
TM36 XX HP upper byte
TM37 XX HP lower byte
TM38 XX Attack upper byte
TM39 XX Attack lower byte
TM40 XX Defense upper byte
TM41 XX Defense lower byte
TM42 XX Speed upper byte
TM43 XX Speed lower byte
TM44 XX Special upper byte
TM45 XX Special lower byte
Language dependent TM
TM English German French Spanish Italian
Final amount Amount sold for Final amount Amount sold for Final amount Amount sold for Final amount Amount sold for Final amount Amount sold for
TM34 26 114500 71 92000 44 105500 62 96500 63 96000

Usage notes

  • If you wish to just maximise stat experience, leave the quantities of TM36 through TM45 at 255.
  • The actual stats of the pokémon aren't automatically updated after changing stat experience. Either level the pokémon or deposit and withdraw it from the storage system in order to properly update the pokémon's stats.