Jump to content

User:TimoVM/JP Pikachu ACE Translation: Difference between revisions

 
(9 intermediate revisions by the same user not shown)
Line 1:
This page is based on a translation/analysis of an ACE setup used in the Japanese version of Pokémon Yellow. The original article was written by flag3833753 and can be found [[https://flag3833753.hatenablog.com/entry/2023/02/17/212609| here]].
 
Please note that you will be required to clear your saved data in order to follow this guide.
Line 5:
==Introduction==
 
in an [[https://flag3833753.hatenablog.com/entry/2022/01/29/222112| earlier article]], a method to set up a RAM writer in the Japanese versions of Red/Green was explained. In this article we will install a ported version of that memory writer in the Japanese version of Yellow.
 
The original article made use of SRAM glitch in order to set up the RAM writer. A [[https://flag3833753.hatenablog.com/entry/2022/12/18/170019| later revision]] demonstrated a method to install the RAM writer without SRAM glitch. because of this, we'll split the article in multiple sections.
 
=Setting up the RAM writer using SRAM glitch=
Line 17:
# Use this RAM writer to build the full, completed RAM writer.
 
Please note that the instructions included here are intended for JP Yellow V1.1 through V1.3. Make sure to look at the end of the article for how to install the RAM writer on V1.0
 
First, you will need to clear the save. hold SELECT + B + UP on the title screen to delete the current save.
Line 49:
# Deposit 1 "わざマシン22" from slot #24 of your bag.
# Swap the "ぬのヅ" in slot #25 with the item in slot #34 of your bag.
# Deposit 100
 
A few notes on the above:
* If the item in slot #1 isn't "やめる", restart from step 1. Possibly something went wrong during SRAM glitch.
* For the item in slot #23, you initially start with "ポケモン" x127. When selecting how many to deposit, simply press DOWN until you would deposit x99, then press UP to deposit x100. '''You need to deposit all 100 "ポケモン" all at once.'''
* The item in slot #35 should be a "モンスターボール". to find item slot #34, simply look for item slot #35 and press up once from there.
 
Line 76 ⟶ 75:
Then, do the following (for safety, save beforehand):
# Pick up an Eevee, give it the nickname ヅずゆデの and use the "はやぶさバッヂ". This will cause Eevee's pokeball to reappear.
# Pick up a second Eevee, give it the nickname "ひでぶデョ" (small ョ) and use the "はやぶさバッヂ". This will cause Eevee's pokeball to reappear once more.
# Pick up a third Eevee, give it the nickname "ヅやゆョプ" (small ョ) and use the "はやぶさバッヂ" a final time.
 
After the third execution, picking up Eevee's pokéball will cause the NPC next to it to disappear instead. This allows you to get an unlimited amount of Eevees. (Please note that you can not leave this room until you finished the setup, since leaving the room will cause Eevee's pokeball to disappear.)
Line 141 ⟶ 140:
If it doesn't start, reset your game and redo the nicknamed. If it does start successfully, it might be a good idea to exit the program and save the game.
 
===Step 9: Using the compact RAM writer===
 
With the compact RAM writer, you can go through individual memory addresses and edit their values using the following controls:
Line 154 ⟶ 153:
START: Exit
</pre>
 
==Step 9: Setting up the full RAM writer==
 
Using the compact RAM writer, we'll be adjusting the values of the addresses between $D9B4 through $DA5E to the following:
Line 186 ⟶ 183:
| WRA1:D9C6 || 21 AB C3 || ld hl,C3AB
|-
| WRA1:D9C9 || 3E 7C || ld a,7C
|-
| WRA1:D9CB || 22 || ldi (hl),a
Line 368 ⟶ 365:
|WRA1:DA5E || C9 || ret
|}
 
After entering everything, it is advisable to save the game.
 
Next, change the game's settings as follows:
{| class="wikitable"
| Text speed: Normal || はなしのはやさ:ふつう
|-
| Battle animations: On || せんとうアニメ:じっくりみる
|-
| Battle style: Set || しあいのルール:かちぬきタイプ
|-
| Sound: Head phone 2 || サウンド:イヤホン2
|}
 
This will change the item in slot #26 to a "かいがらバッヂ". You can now start the full RAM writer by using the "かいがらバッヂ". When done, it looks like this:
 
(ADD IMAGE HERE)
 
==Using the full RAM writer==
 
Controls are as follows:
<pre>
DOWN: address +1
UP: address -1
RIGHT: address +10
LEFT: address -10
B+DOWN: address +100
B+UP: address -100
B+RIGHT: address +1000
B+LEFT: address -1000
A+DOWN: value +1
A+UP: value -1
A+RIGHT: value +10
A+LEFT: value -10
SELECT: execute code starting from the current selected address (USE ONLY IF YOU KNOW WHAT YOU'RE DOING)
START: exit
</pre>
 
You'll notice that this RAM writer is much more convenient to use compared to the compact RAM writer.
 
Be VERY careful when using SELECT. Using it without meaning to will likely crash the game.
 
Keep in mind that the memory editor occupies the range between $D9B4 and $DA5E. Do not edit the values within this range, otherwise you risk destroying the full RAM writer and crashing the game.
 
==Repairing the effects of SRAM glitch==
 
Due to the way we were messing with SRAM glitch, we've glitched normal game progression. Now that we have a fully functional RAM writer, we can fix these effects and continue the game from Pallet Town through the following edits:
 
* Set $D123 to $00: this will set the number of party pokémon to 0.
* Set $D2A1 to $01 and $D2A2 to $63: this will adjust your bag such that it only contains a "かいがらバッヂ". Please note that, when you exit the RAM writer, the cursor will still be at the 26th item slot. Just keep pressing UP until the cursor reaches the 1st item slot.
* Set values at the range $D287 to $D28D to $00: this will set the number of caught pokémon to 0. This is necessary in order to receive the pokédex from Prof. Oak.
* Set $D331 and $D335 to $00: this will cause you to return to Pallet Town when exiting Eevee's room.
 
Now, just exit to Pallet Town, you can now continue the game as you normally would.
 
==Adjustments for V1.0==
 
Due to version differences, there are a few slight adjustments that need to be made in order to install the RAM writer on V1.0. The process is mostly the same, the differences will be mentioned here.
 
*Steps 2, 3, 5, 6 and 8 are exactly the same
*Step 3: player name needs to be "ギるゾい", rival name can be anything as long as the 5th letter is "オ". e.g. "オオオオオ".
*Step 4: the only thing you need to do is to swap the item in slot #25 with the item in slot #34 of your bag. Since you're only swapping, you can simply do this from the item bag instead of the PC. Please note that the item in slot #25 has a buggy name instead of "ぬのヅ".
*Step 5: the nicknames are slightly different.
{| class="wikitable"
| Nickname 23 || がんぜクョ || small ョ
|-
| Nickname 22 || ぶづぜンづ
|-
| Nickname 21 || よヅぜウづ
|-
| Nickname 20 || にぽづにグ || different compared to other version.
|-
| Nickname 19 || づなゅへへ || small ゅ, different compared to other version.
|-
| Nickname 18 || ううグ空だ || 空 represents a blank space
|-
| Nickname 17 || どグだギョ || small ョ
|-
| Nickname 16 || べへにんグ
|-
| Nickname 15 || だゲぼダぞ
|-
| Nickname 14 || 空へにんグ || 空 represents a blank space
|-
| Nickname 13 || わとんヅー
|-
| Nickname 12 || グリググだ
|-
| Nickname 11 || ざグわねん
|-
| Nickname 10 || ぱへふんぴ
|-
| Nickname 9 || へふんボぷ
|-
| Nickname 8 || へふんだし
|-
| Nickname 7 || ぼヂキづご
|-
| Nickname 6 || ョのなひだ || small ョ
|-
| Nickname 5 || へよんち空 || 空 represents a blank space
|-
| Nickname 4 || ぼダメにぽ
|-
| Nickname 3 || にュだガに || small ュ
|-
| Nickname 2 || にヂ空ギて || 空 represents a blank space
|-
| Nickname 1 || ボデの
|}
*Step 9: The full RAM writer uses the same code, except the addresses from $DA0D through $DA0F should be changed to
<pre>
CD 3F 38
</pre>
 
=Setting up the RAM writer without SRAM glitch=
 
Since SRAM glitch requires a strict timing, an alternative is provided to set up the RAM writer without SRAM glitch. Please note that you will still need to reset your save even for this method.
 
==Step 1: start a new game with player name "がんョぜレ"==
 
Contains a small "ョ", rival's name doesn't matter.
 
==Step 2: Head to Pewter City==
 
Mkae sure to '''not fight the second bug catcher from the entrance of Viridian Forest'''.
 
==Step 3: Stop by the Pewter City pokémon center and mart==
 
Make sure to heal at the Pewter City pokémon center so that you can later use an Escape Rope to warp towards it.
 
In the mart, buy at least 19 poké balls ("モンスターボール") and one escape rope ("あなぬけのひも").
 
==Step 4: Catch 19 pokémon, give them nicknames, then manually deposit them into box 1==
 
The pokémon that you catch for this do not matter, make sure to lower their HP to 1/3rd of their maximum to increase catching odds. '''You need at least 19 poké balls to catch them and do not have access to a lot of money''', so make sure you do not waste any of them.
 
Nicknames should be according to the following table in order:
 
{| class="wikitable"
|+ Caption text
|-
| ヅクまプレ
|-
| ひでぼラデ
|-
| がふぜのョ || small ョ
|-
| ひすづギぺ
|-
| ひだレレレ
|-
| ゾなレレレ || Replace with ゾよひけレ if playing on V1.0
|-
| ひぢなの
|-
| Any
|-
| Any
|-
| Any
|-
| がやぜふレ
|-
| ぼんづぼギ
|-
| づぼてづョ
|-
| がめぜヨべ
|-
| づよヒづづ
|-
| ョぶづがん || small ョ
|-
| ぜイの
|-
| Any
|-
| ゲてメん
|}
 
If you're unsure fi you're on V1.0 or on a later revision, you might want to prepare both "ゾなレレレ" and "ゾよひけレ" nicknamed pokémon.
 
After finishing this step, '''Ensure that you are holding 5 party pokémon or less.'''
 
==Step 5: use the Escape Row to set up Trainer Fly on the 2nd bug catcher of Viridian Forest==
 
With the bug catcher offscreen, step towards the bug catcher so that they would be able to see you and start a battle. During the step, hold the START button to bring up the start menu, from which you can use the Escape Rope.
 
==Step 6: Set up ACE==
 
After using the Escape Rope, you should have warped to the Pewter City pokémon center. From there, do the following:
* Open the PC and change the current active box from box 1 to box 1. This should cause the game to save, upon which you can reset the game. This will reenable the use of the START button.
* Go to the NPC to the east of Pewter that guides you to the Pewter City Gym. Let him guide you towards the gym to clear away the expected trainer movement.
* Go to a house in the southwest of Pewter City and check the town map on the wall. From now on until you go to Viridian Forest, '''you must not open the start menu.'''
 
==Step 7: Go to Viridian Forest and check if ACE was successful==
 
After arriving in Viridian Forest, the start menu will automatically open. Open the item bag. If ACE was successfully performed, it should now contain a "はやぶさバッヂ". Use it.
 
If everything went well, you should now get a message if you would like to nickname a Rattata.
 
If it didn't work, double check all nicknames and make sure you are holding 5 party pokémon or less. If it fails due to what might be a version difference, make sure to change the nicknames to fit the other version.
 
==Step 8: Nickname Rattata's and deposit them to box 2==
 
The current nickname code will allow you to obtain an infinite amount of Rattata's. We will now proceed to obtain and nickname a bunch of Rattata's and deposit them to box 2.
 
Before we begin, a few notes:
* '''The ACE code will only work if Box 1 is the active box.'''
* Obtain Rattata's, nickname them, deposit them to box 2, then change the box so that box 1 is the active box again.
* Preferably, you'd be doing this starting with a party of just one pokémon, so you can deposit 5 Rattata's at a time. You can either release your other party pokémon or temporarily store them in box 3.
 
{| class="wikitable"
| よヂづにぽ
|-
| づにゲレレ || Replace with ゾよひけレ if playing on V1.0
|-
| づョがわレ || small ョ
|-
| ぜゃダだグ || small ゃ
|-
| ぼヂてツん
|-
| ダだグぼダ
|-
| ぞてツんダ
|-
| だガムキづ
|-
| ごぱへぬん
|-
| ぴへぬんボ
|-
| ぷへぬんへ
|-
| うううヅー
|-
| ひ空はうん || 空 represents an empty space
|-
| どダれナん
|-
| ダめせんざ
|-
| ダれゃわダ
|-
| りだあなレ
|-
| ひだへむん
|-
| ちぼダメに
|-
| にルだガに
|-
| にヂ空ギて || 空 represents an empty space
|-
| ボデの
|-
| Any
|-
| Any
|-
| Any
|-
| Any
|-
| Any
|-
| Any
|-
| Any
|-
| Any
|}
 
Ensure that box 2 is completely filled with 30 pokémon.
 
==Step 9: Start up the compact RAM writer==
 
With box 2 selected as the active box, use the "はやぶさバッヂ" to start a compact RAM writer. We'll be using these to build the full RAM writer.
 
Controls:
<pre>
A: Address +1h
B: Address -1h
DOWN: Value +1h
UP: Value -1h
RIGHT: Value +10h
LEFT: Value -10h
START: Exit
SELECT: Start execution from $DCE0 onward
 
'''Do not use SELECT until you've finished writing the full RAM writer.'''
</pre>
 
==Step 10: using the compact RAM writer
 
Using the compact RAM writer, write the following values at the following addresses:
 
{| class="wikitable"
|+ Caption text
|-
! Address !! Value !! Opcode
|-
| WRA1:DCE0 || 21 00 D0 || ld hl,D000
|-
| WRA1:DCE3 || CD 16 DD || call DD16
|-
| WRA1:DCE6 || E5 || push hl
|-
| WRA1:DCE7 || 11 F8 FF || ld de,FFF8
|-
| WRA1:DCEA || 19 || add hl,de
|-
| WRA1:DCEB || 54 || ld d,h
|-
| WRA1:DCEC || 5D || ld e,l
|-
| WRA1:DCED || 21 AB C3 || ld hl,C3AB
|-
| WRA1:DCF0 || 36 7C || ld (hl),7C
|-
| WRA1:DCF2 || 23 || inc hl
|-
| WRA1:DCF3 || 7A || ld a,d
|-
| WRA1:DCF4 || CD 56 DD || call DD56
|-
| WRA1:DCF7 || 7B || ld a,e
|-
| WRA1:DCF8 || CD 56 DD || call DD56
|-
| WRA1:DCFB || 36 7F || ld (hl),7F
|-
| WRA1:DCFD || 23 || inc hl
|-
| WRA1:DCFE || 1A || ld a,(de)
|-
| WRA1:DCFF || CD 56 DD || call DD56
|-
| WRA1:DD02 || 36 7C || ld (hl),7C
|-
| WRA1:DD04 || 01 0C 00 || ld bc,000C
|-
| WRA1:DD07 || 09 || add hl,bc
|-
| WRA1:DD08 || 13 || inc de
|-
| WRA1:DD09 || 7D || ld a,l
|-
| WRA1:DD0A || FE 13 || cp a,13
|-
| WRA1:DD0C || 20 E2 || jr nz,DCF0
|-
| WRA1:DD0E || 3E ED || ld a,ED
|-
| WRA1:DD10 || EA 4B C4 || ld (C44B),a
|-
| WRA1:DD13 || E1 || pop hl
|-
| WRA1:DD14 || 18 CD || jr DCE3
|-
| WRA1:DD16 || CD 40 38 || call 3840
|-
| WRA1:DD19 || F0 B3 || ld a,(ff00+B3)
|-
| WRA1:DD1B || 07 || rlca
|-
| WRA1:DD1C || 30 04 || jr nc,DD22
|-
| WRA1:DD1E || 3E 01 || ld a,01
|-
| WRA1:DD20 || 18 1C || jr DD3E
|-
| WRA1:DD22 || 07 || rlca
|-
| WRA1:DD23 || 30 03 || jr nc,DD28
|-
| WRA1:DD25 || 9F || sbc a
|-
| WRA1:DD26 || 18 16 || jr DD3E
|-
| WRA1:DD28 || 07 || rlca
|-
| WRA1:DD29 || 30 04 || jr nc,DD2F
|-
| WRA1:DD2B || 3E F0 || ld a,F0
|-
| WRA1:DD2D || 18 0F || jr DD3E
|-
| WRA1:DD2F || 07 || rlca
|-
| WRA1:DD30 || 30 04 || jr nc,DD36
|-
| WRA1:DD32 || 3E 10 || ld a,10
|-
| WRA1:DD34 || 18 08 || jr DD3E
|-
| WRA1:DD36 || 07 || rlca
|-
| WRA1:DD37 || 30 02 || jr nc,DD3B
|-
| WRA1:DD39 || E1 || pop hl
|-
| WRA1:DD3A || C9 || ret
|-
| WRA1:DD3B || 07 || rlca
|-
| WRA1:DD3C || D0 || ret nc
|-
| WRA1:DD3D || E9 || jp hl
|-
| WRA1:DD3E || CB 43 || bit 0,e
|-
| WRA1:DD40 || 28 03 || jr z,DD45
|-
| WRA1:DD42 || 86 || add (hl)
|-
| WRA1:DD43 || 77 || ld (hl),a
|-
| WRA1:DD44 || C9 || ret
|-
| WRA1:DD45 || CB 4B || bit 1,e
|-
| WRA1:DD47 || 28 03 || jr z,DD4C
|-
| WRA1:DD49 || 84 || add h
|-
| WRA1:DD4A || 67 || ld h,a
|-
| WRA1:DD4B || C9 || ret
|-
| WRA1:DD4C || 06 00 || ld b,00
|-
| WRA1:DD4E ||CB 7F || bit 7,a
|-
| WRA1:DD50 || 28 01 || jr z,DD53
|-
| WRA1:DD52 || 05 || dec b
|-
| WRA1:DD53 || 4F || ld c,a
|-
| WRA1:DD54 || 09 || add hl,bc
|-
| WRA1:DD55 || C9 || ret
|-
| WRA1:DD56 || 47 || ld b,a
|-
| WRA1:DD57 || CB 37 || swap a
|-
| WRA1:DD59 || CD 5D DD || call DD5D
|-
| WRA1:DD5C || 78 || ld a,b
|-
| WRA1:DD5D || E6 0F || and a,0F
|-
| WRA1:DD5F || C6 F6 || add a,F6
|-
| WRA1:DD61 || 30 02 || jr nc,DD65
|-
| WRA1:DD63 || C6 60 || add a,60
|-
| WRA1:DD65 || 22 || ldi (hl),a
|-
| WRA1:DD66 || C9 || ret
|}
 
'''Note: for V1.0, change the value of $DD17 to $3F instead of $40.'''
 
After rewriting these values, it might be a good idea to exit the program and save the game. Afterwards, start up the compact RAM writer and press SELECT to start the full RAM writer.
Anonymous user
Cookies help us deliver our services. By using our services, you agree to our use of cookies.