Thursday, 17 April 2008

A Simple Guide to Pokemon Emulation

A Simple Guide to Pokemon Emulation on Windows.

Contents:

V.0. Introduction.

V.1. What You Need.

V.2. Installing your VBAs.

V.3. Saving

V.4. Trading and Communicating.

V.4.1. Wireless

V.4.2. Wired

V.5. Gameshark Snapshots

V.5.1. Instructions on Saving and Loading Gameshark Snapshots.

V.5.2. Using this Method.

V.6. Time Tricks.

V.7. Cloning Pokemon/Items.

V.8. Cheats

V.9. FAQ.

V.10. Thanks.


V.0. Introduction.

Remember the days of playing Pokemon on the gameboy, gameboy colour or gameboy advance? Pokemon has become a commercial world-wide success releasing an anime, a manga, games on multiple formats and thousands upon thousands of shirts/lunch boxes/pencil cases/etc. But this multi-million dollar franchise began with the release of 2 Japanese gameboy games.

For those who remember the 2 original games, they have been re-made and re-released for the Gameboy Advance as Pokemon Firered and Leafgreen which, along with Pokemon Ruby and Sapphire, make up the 3rd generation of video games.

This is a guide to properly emulate those GBA (gameboy advance) games on a windows PC. Versions of the emulators used in this guide are available for Linux and should work in the same way.

To play the games, all that is needed is the Emulator called Visual Boy Advance and the game image (the ROM). However to properly experience the games and to access features such as trading (an immensely important part of the Pokemon games), you need to set up, properly, the emulator which can be quick and simple.

This is Not a Pokemon guide, but a guide to setting up the emulation and tips and tricks using it. Most other Pokemon emulation guides on the internet do not fully explain how to perform actions on Pokemon. Hopefully this one, anyone can use. Pokemon games are fun and if you haven’t tried them yet I would fully recommend giving them a go.


V.1 What You Need.

As previously said there is very little necessary to play the GBA games.

Step 1: Obtain 2 different versions of Visual Boy Advance, both variations of a type of VBA called VBA Link. VBA Link 1.7.2 and VBA Link 1.8.0. You can get them from various websites, just type VBA Link into Google. (These are “.exe” files)

Step 2: Get Pokemon ROMs, Ruby, Sapphire, Firered and Leafgreen. This is a small file which (basically) contains the game. Again, get them by googling “Pokemon ROMs” and just downloading them. (These should be “.gba” files). Please note I do not support Pokemon Emerald. If anyone gets it to work please contact me.

And that’s all you need. Hard eh?


V.2 Installing your VBAs.

You need your 2 different versions of VBA. Both are types of VBA link.

VBA Link 1.7.2

VBA Link 1.8.0

The difference between them is 1.8.0 supports "wireless" emulation, whereas 1.7.2 does not. However in supporting "wireless" emulation, it somehow lacks the "wired" emulation, (the emulation of connecting 2 Gameboy Advances using a cable). It says it has it, it just doesn't work. So...

Step 1: Create a folder. Call it what you want, Pokeemu, my Pokemon, its up to you. (This should be easy enough)

Step 2: Create 2 folders; one will contain VBAL 1.8.0, the other, 1.7.2. Call one folder Pokemon 172 and the other Pokemon 180. (Which is what I will refer to them as.)

Step 3: Create the following subfolders in Pokemon 180, and then copy them to Pokemon 172

BATTERY
CAPTURE
ROMS
SAVE
HIDDENSAVES.

Step 4: Create the following sub-subfolders in BATTERY and SAVE in both Pokemon 172 and Pokemon 180

1
2
3
4
Special

(That’s right I am asking you to create folders named 1, 2, 3, 4, Special)

Step 5: Put your VBA Link 1.8.0 in your Pokemon 180 folder and your VBA Link 1.7.2 in your Pokemon 172 folder. (If you haven’t already)

Step 6: Put all of your Pokemon ROMs into the ROMS folder in both Pokemon 180 and Pokemon 172. (You will need to copy them)

Step 7: Load up your VBA Link 1.8.0. You should see a black/blank screen.

Step 8: Go to [Options > Emulator > Real Time Clock] and make sure it is Checked

Step 9: Make sure [Options > Emulator > Save Type > Automatic] is Checked.

Step 10: Make sure [Options > Emulator > Save Type > Flash 128K] is Checked.

Step 11: Open up your Directory options by going to [Options > Emulator > Directories]

Step 12: On Rom browse through your directories until you find the ROMS folder. (/Pokemon 180/ROMS) (This could take a while depending on where you put your original folder)

Step 13: Repeat for GB Rom to the same directory folder. (ROMS)

Step 14: Repeat for Battery, except find the BATTERY/1 folder ((/Pokemon 180/BATTERY/1)

Step 15: Repeat for Save Game, except find the SAVES/1 folder ((/Pokemon 180/SAVES/1)

Step 16: Repeat for Capture, except find the Capture (/1) folder ((/Pokemon 180/CAPTURE (/1))

Step 17: Close VBA 1.8.0.

Step 18: Look in your Pokemon 180 folder. You should see a file which is called VBA1.ini. Copy it into the same directory with and call it "VBA2.ini".

Step 19: Open VBA2.ini using a program such as notepad.

Step 20: Find the line which begins "batteryDir=" replace the final "/1" with "/2"

Step 21: Repeat for "saveDir" and, if you chose to do it for CAPTURE, "captureDir="

Step 22: Save and close VBA2.ini

Step 23: Repeat creating "VBA3.ini" and "VBA4.ini" and replacing the "/1" with "/3" and "/4" respectively.

Step 24: Copy VBA1.ini, VBA2.ini, VBA3.ini and VBA4.ini to the Pokemon 172 folder.

Step 25: In turn, open up VBA1.ini to VBA4.ini and find the lines begging "romdir=", "gbromdir=", "batteryDir=", "saveDir=" and "captureDir=" and replace the part of the directory line that says "Pokemon 180" with "Pokemon 172". Save and Close.

Done, you have successfully set up your Visual Boy Advance (VBA) to play your Pokemon and to, trade, save, and use time based events. I know this might have seemed painfully slow and needlessly complicated but hopefully, it’s completely idiot proof if you follow the instructions. If it doesn't work you're probably doing something wrong.

Please Note: For general game play I would recommend using VBA 1.7.2. All communicating should work between it, it is less likely you are going to need wireless communication that wired.


V.3 Saving.

To save on VBAL there are multiple methods to use. Although the game forces you on some occasions to use in-game saves which you can activate yourself by going to start, save, this forces you to overwrite any previous game saves and only allows you to play one game at once. You can do multiple saves using a State Save by going to [File > Save Game >] and choosing 1-10 or doing a separate State Save by going to [File > Save] or pushing “Ctrl” “S”


V.4 Trading and Communicating.

There are many guides out there to teach you how to trade Pokemon. Most of these fail. I will teach you how to trade anytime, every time. There is basically 2 types of Trading and Communicating, using "Wireless" (for between Firered and Leafgreen) and "Wired" (for between Ruby and Sapphire, or between Firered/Leafgreen and Ruby/Sapphire)


V.4.1.Wireless. For trading and communicating between Firered and Leafgreen only

What you need:

2 Different saves files of Firered and/or Leafgreen, (they can both be Firered OR Leafgreen but must be different to each other) where access to trading etc is permitted. I.e. you have caught at least one additional Pokemon in each and have it in your party. Saves should be done by [File > Save] or [File > Save Game >] and choosing 1-10 or pushing "Ctrl" and "S"

Preparation:

If you have been using VBA 1.8.0 your saves are automatically in the correct format. If not use the instructions in the Gameshark Snapshot section to convert your 1.7.2 save to 1.8.0 format.

Instructions:

Step 1: Set up your VBA files as I have shown in my Installation guide. Particular attention should be paid to steps 10-11 and 18-25. This ensures that the [Options > Emulator > Save Type > Automatic] and [Options > Emulator > Save Type > Flash 128K] is applied to every VBA Link you open.

Step 2: Open VBA Link 1.8.0 once.

Step 3: Open VBA Link 1.8.0 again. This means you have 2 VBAs open, (note you are opening the SAME "VBA.exe" file each time)

Step 5: Make sure [Options > Link > Wireless Adapter] is Checked on both of your open VBAs

Step 6: Make sure the Link Timeout in [Options > Link > Settings] is set to between 1000 and 3000 (I use 2000) on both open VBAs.

Step 7: Make sure [Options > Frame Skip] is set to about 2 on both open VBAs.

Step 8: Make sure [Options > Throttle > No Throttle] is Checked on both open VBAs.

Step 9: Make sure [Options > Emulator > Speed Up Toggle] is Unchecked on both open VBAs.

Step 10: Set up the joypad so that you can play 2 Pokemon Games on the same keyboard. Go to [Options > Joypad > Configure > 4] on both VBA windows and set it so there are no button clashes. (I use “a s I k j l” as “a b up down left right” on VBA1 and “1 2 up down left right” on VBA2) (Please note it is important not to use Speed at anytime during this so it is best to leave this blank)

Step 11: Make sure [Options > Joypad > Default Joypad > 4] is Checked.

Step 12: Very Important, make sure [Options > Emulator > Pause When Inactive Window] is Unchecked.

Step 13: Close and reopen the 2 VBA windows.

Step 14: On your first VBA, open a Rom, either Firered or Leafgreen.

Step 15: On your second VBA, open another Rom, either Firered or Leafgreen.

Step 16: On your first VBA, load your saved game by going to [File > Load] or pushing "Ctrl" and "L" and finding your save.

Step 17: On your second VBA, load a game by going to [File > Load] or pushing "Ctrl" and "L" and finding your other save. It maybe that it is in a different folder and that you cannot see it straight away. Try "Pokemon 180/save/1" or elsewhere if you cannot initially find your save.

Step 18: Enter communication with the upper level Pokecentre ladies and Battle/Trade/Swap Trainer Cards.

Step 19: When you have finished, exit the room you have entered, and save the game.

Step 20: Click [Options > Emulator > Pause When Inactive Window] so that it is Checked on both VBAs

Step 21: Click [Options > Joypad > Default Joypad > 1] so that it is Checked on both VBAs.

Step 22: Save again and Close the VBAs,

Step 23: Open one VBA, and Open the Rom, Load your Save and voila, you have Traded/Battled. Etc.


V.4.2.Wired. For trading and communicating between Fr/Lg and R/S or between R/S (although trading between Fr and Lg should also work)

What you need:

2 Different saves files of Ruby/Sapphire/Firered/Leafgreen, where access to trading etc is permitted. I.e. you have caught at least one additional Pokemon in each and have it in your party in Ruby/Sapphire, and have gained access to communicating with Ruby/Sapphire by finding the Ruby and Sapphire orbs in Firered/Leafgreen. Saves should be done by [File > Save] or [File > Save Game >] and choosing 1-10 or pushing "Ctrl" and "S"

Preparation:

If you have been using VBA 1.7.2 your saves are automatically in the correct format. If not use the instructions in the Gameshark Snapshot section to convert your 1.8.0 save to 1.7.2 format.

Instructions:

Step 1: Set up your VBA files as I have shown in my Installation guide. Particular attention

should be paid to steps 10-11 and 18-25. This ensures that the [Options > Emulator > Save Type > Automatic] and [Options > Emulator > Save Type > Flash 128K] is applied to every VBA Link you open.

Step 2: Open VBA Link 1.7.2 once.

Step 3: Open VBA Link 1.7.2 again. This means you have 2 VBAs open, (note you are opening the SAME "VBA.exe" file each time)

Step 6: Make sure the Link Timeout in [Options > Link] is set to between 1000 and 3000 (I use 2000) on both open VBAs.

Step 7: Make sure [Options > Frame Skip] is set to about 2 on both open VBAs.

Step 8: Make sure [Options > Throttle > No Throttle] is Checked on both open VBAs.

Step 9: Make sure [Options > Emulator > Speed Up Toggle] is Unchecked on both open VBAs.

Step 10: Set up the joypad so that you can play 2 Pokemon Games on the same keyboard. Go to [Options > Joypad > Configure > 4] on both VBA windows and set it so there are no button clashes. (I use “a s I k j l” as “a b up down left right” on VBA1 and “1 2 up down left right” on VBA2) (Please note it is important not to use Speed at anytime during this so it is best to leave this blank)

Step 11: Make sure [Options > Joypad > Default Joypad > 4] is Checked.

Step 12: Very Important, make sure [Options > Emulator > Pause When Inactive Window] is Unchecked.

Step 13: Close and reopen the 2 VBA windows.

Step 14: On your first VBA, open a Rom.

Step 15: On your second VBA open another Rom.

Step 16: On your first VBA, load your saved game by going to [File > Load] or pushing "Ctrl" and "L" and finding your save.

Step 17: On your second VBA, load a game by going to [File > Load] or pushing "Ctrl" and "L" and finding your other save. It maybe that it is in a different folder and that you cannot see it straight away. Try "Pokemon 172/save/1" or elsewhere if you cannot initially find your save.

Step 18: Enter communication with the upper level Pokecentre ladies and Battle/Trade/Swap Trainer Cards.

Step 19: When you have finished, exit the room you have entered, and save the game.

Step 20: Click [Options > Emulator > Pause When Inactive Window] so that it is Checked on both VBAs

Step 21: Click [Options > Joypad > Default Joypad > 1] so that it is Checked on both VBAs.

Step 22: Save again and Close the VBAs,

Step 23: Open one VBA, and Open the Rom, Load your Save and, voila, you have Traded/Battled/etc.

Although these seem complicated, in reality most of this is common sense, and should be second nature to anyone who has played the game.


V.5 Gameshark Snapshot

Here is a list of what you can do using this method.

Convert saved games between VBA Link 1.7.2 and 1.8.0

Fix previous errors that you may have if you incorrectly installed VBA

Convert game saves from other emulators which support this feature to enable trading, etc.

Download fully completed games saves to obtain rare Pokemon or items.


V.5.1 Instructions on saving and loading Gameshark Snapshots.

Saving.

Step 1: Do an in game save by pushing your button for Start, then selecting Save.

Step 2: Repeat Step 1, there is a chance that the save file will not work (especially if speed was used) Repeating the save will make sure that it works properly as, in the case of one save file not working, the previous save file will load.

Step 3: Go to [File > Export > Gameshark Snapshot]

Step 4: Choose a name and location for your save. If it is a temporary save, as in converting between VBAL 1.8.0. and VBAL 1.7.2. I recommend just using the main Pokemon folder. If not put in another folder such as the “Special” folder in “SAVE” It should come out as a “.SPS” file.

Loading.

Step 1: Copy the Gameshark Snapshot file (“.SPS”) to the folder of the VBAL you are going to use.

Step 2: Open up VBAL and choose your ROM that the Snapshot is for. (Obviously a Leafgreen Snapshot will not run on Firered)

Step 3: Load the Snapshot by going to [File > Import > Gameshark Snapshot] and selecting the correct snapshot.

Step 4: The title screen will load and you will see the option of continuing from the previous save or starting a new game. Select continue. If you see a message saying that the save file is corrupted and/or there is no option to continue you need to redo the Snapshot file, assuming you created it, or find another if not.


V.5.2 Using this method.

You can convert saves from VBAL 1.7.2. and 1.8.0. using this method. There are other ways to covert saves between the 2 Visual Boy versions, but I have found this to be the easiest.

If you started playing these without properly setting up VBA you may have a save file which is unable to do certain events. These could include time based events on Ruby/Sapphire or game trades on Firered. By using this method and making sure that the VBAL that you load the snapshot file on is properly set up, you can get these to work without having to restart the game, which would previously otherwise be the case.

Other emulators such as the NO$GBA support snapshots, but do not support trading. You can use this method to convert your save files on other Emulators to those which can be read via VBAL.

Websites such as gamefaqs allow you to upload and download game saves in this format. These are useful to obtain certain Pokemon and/or rare items.


V.6. Time Tricks

Because the Clock emulated in Ruby/Sapphire is based on your computer clock and not emulated by VBA, this means that if you use speed to quickly play the game, berries will not grow as quick as you would otherwise think. This also means we can have some fun tricking the game.

If you plant a berry, you have to wait a certain amount of time before it grows. VBAL does not even have to be on so you can play the game, plant a berry, save, close and wait a day. Then when you next go to play your berry will have grown. However even more sneakily we can just set our computer clocks forward a day after planting berries and obtain the sweet fruit of our reward. By setting our computer clocks do day/night we can also choose what evolution eevee will have.


V.7. Cloning Pokemon / Items

Many will remember a variation of this in the original Red/Blue/Yellow/Green games. Because we have the State Saves where we can have an infinite amount of saves at various points during the game, after trading we can simply load up the state save which was created before the trade and we will suddenly have the old Pokemon and whatever it was holding back. This is very useful in creating multiple masterballs, or exp share, or sharing an important Pokemon with a friend.


V.8. Cheats.

Some Pokemon such as Mew, Ho-Oh, Lugia, etc are only available on Gameboy Advance by going to a Nintendo Event with a Gameboy with wireless and performing Mystery Event. To get them on VBAL you can either trade from a downloaded save or use a cheat. If you choose a cheat make sure you save first in a location which will not be overwritten. Then go to [Cheat > Cheat List] and choose the type of cheat it is for (aka Gameshark, Action Replay). You then add the code for the cheat(s) you want to apply which can be got from various different websites and are version exclusive depending on whether you have a European, American or Japanese version of the game. Make sure Disable Cheats is Unchecked in [Cheat > Disable Cheats] initially, then Check it when you have performed the cheats. If at any point you see or get a Bad Egg during the game, this is a virus/glitch most likely caused by cheating and you should probably load from an earlier save.


V.9. FAQ.

Q. I can’t get Pokemon Emerald to work, can you help?
A. No, Pokemon Emerald is not supported using VBA.

Q. You have made several spelling mistakes/grammatical errors, do you want to know about them?
A. This doesn’t surprise me. Yes, leave a comment or send me an Email

Q. Your Guide is wrong is someway / there is a better or easier way of doing things. Should I inform you of this?
A. Although opinions differ it wouldn’t surprise me if I wrote something wrong, or if I missed something. Or even if you could teach me something completely new. Yes, again leave me comment or send me an email.

Q. I can’t find Visual Boy Advance Link, can you send it to me?
A. No, it’s on the internet, look harder, search in Google.

Q. I can’t find the ROM files, can you help?
A. No, even supplying the link is illegal. You’re only meant to have a ROM file to legally “back-up” the game if you own it. Search Google.

Q. Pokemon Emerald does work you just need to…
A. Send me an email or comment, you clearly know more than me.

Q. What about the 4th generation, Pokemon Diamond and Pearl?
A. This is a completely different emulation on different equipment. Search for NO$NDS if you’re interested in trying to emulate these games. If anyone does manage to get these to work I would be interested in hearing about it. I have only managed to just get my first Pokemon before the game crashed on me. It runs very slowly on my quiet high end PC. I would recommend sticking to GBA emulation for now, but do email me if you manage it.

Q. Do you not need the Bios file?
A. I have the Bios file but have never worked out if/what it does I'm the emulation of Pokemon. Everything works without it. But feel free to sue if you want.

Q. Your guide is rubbish…
A. Thank you, go away.

Q. Your guide is brilliant.
A. Thank you, you’re far to kind.

Q. Your guide is hard to understand.
A. I may rewrite it, constructive criticism is always welcome.


V.10. Thanks.

Thanks to all who helped me make this, please leave comments and emails.

11 comments:

brendon said...

OK now to get emrald on a gba emulator just type in pokemon emrald rom download free rom download

brendon said...

on google sorry

forzapalermo said...

ive followed your guide 100% which was easy to understand. When I try playing on the 1.72 version which u recommended (ive already started playing fire red on version 1.80 and converted and pasted over the saved game files into the ROMS folder in the 1.72 version) it does not seem to recognize my saved file which I had on 1.8 version. do i have to rename them? what can i do so i can reload my game back onto the 1.72 version. thanks!!

forzapalermo said...
This comment has been removed by the author.
forzapalermo said...

an additional problem I am having and which I just realized is that I started playing fire red on visual advance version 1.8 (the non link version) which is the original VGA rather than the linked version. i already got to vermillion city and i want to just transfer my saved file from the regualar 1.8 version to the 1.8 linked version. once again how do I do that so the 1.8 linked version can recognize the save file. i do not want to start all over again. as well, as for my previous comment, disregard that because i couldnt care less about transfering that file to the 1.72 version anymore. Im more concerned with this problem. please respond a.s.a.p before I continue playing. thanks again and thanks for the guide

Dan said...

In the trading with VGB version 7, i think its section 4.2, i believe step 8 could be slightly off....

It reads:
Step 8: Make sure [Options > Throttle > No Throttle] is Checked on both open VBAs.

Should read:
Step 8: Make sure [Options > FRAME SKIP > Throttle > No Throttle] is Checked on both open VBAs.

leo.donovan said...

I have a problem with trading between leafgreen and firered. I did everything you said but it forces you to save before going into the trading room (or w/e) and on my firered it tries to save and there is an "save error" "please exchange the backup memory". I get that every time...

Jackson said...

Awesome Guide. Now I have all three starters, Kyogre, Mewtwo, Mew, All three legendary birds on Ruby.
Thanks, |-|4xx02z

Justine said...

Hi, your guide is very easy to understand. I don't know if you check this thread anymore, but do you know how to trade using the GBA with Pokemon Yellow? Thanks!

Justine

Jake Finck said...

Maybe post a video sometime for those of us that don't understand. Thanks anyways.

Jurij Kostyk said...

does it work for crystal/silver/gold?