Please Note: This document refers to hacking the main series GBA games only. I have no knowledge of the Gameboy or Gameboy Color games in the Pokémon series (which are also hackable). Therefore, if you’re looking to hack Red, Green, Blue, Yellow, Gold, Silver, or Crystal, you’ll have to look elsewhere. Likewise, the DS and 3DS Pokémon games are still not widely understood, so I will not be covering them either. If you’re looking to hack Diamond, Pearl, Platinum, Heartgold, Soulsilver, Black, White, Black2, White2, X, Y, Omega Ruby, or Alpha Sapphire, I’m sorry but I can’t help you.
Hello new hacker, and welcome to the world of Pokémon ROMHacking! My name is Deokishisu, and I’ll be explaining basic terminology and dispensing general advice before sending you off through a directory to tutorials that you’ll want to read. First off, are you a boy or are you a girl? Or perhaps something else? Hello new hacker, and welcome to the world of Pokémon ROMHacking ! My name is Deokishisu, and I ‘ll be explaining basic terminology and dispensing general advice before sending you off through a directory to tutorials that you ‘ll want to read. →Before We Start, Some Terms Used in This text file That You May not Know
- hacker – noun – someone who hacks; someone who changes or edits games
- hack – noun – the game made by a hacker by hacking a base game
- to hack – verb – the act of changing or editing a game
- base game/base ROM – noun – the game that the hacker started their hack on (for example, Firered or Emerald). Often shortened to just “base”; or used colloquially as “ROMbase”.
- ROM – noun – another term for “game”. Often used as “a Firered ROM”; or “an Emerald ROM”. This is technically not an absolutely correct definition, but it is good enough to get started with.
- to port – verb – to take a feature from one game and convert it so that it can be used in another. Used mostly when talking about features missing from one game, but present in another.
These are general definitions of terms that you will need to know to continue reading, but may not know already. A more complete dictionary will be at the bottom of this post.
Reading: Guide: ROM Hacking: Getting Started
Naming Your Rival: The Walls That You Will Hit
Before anything else, I’d like to impart upon you, my hackers in training, what is perhaps the most important advice I could give you. Arceus helps those who help themselves. This community is incredibly helpful, welcoming, and open. However, you cannot expect others to make your hack for you. You may have the best idea ever, but you won’t get anywhere if you throw up your hands and give up without starting. Thus, we’re naming your Rival Laziness. It may seem a little harsh, but Laziness will be the insidious cause lurking behind most of your problems starting out. Hacking is a hobby, but none of us can pretend that it isn’t work. And sometimes that work is hard and tedious. Sometimes learning the skills required to hack is hard and tedious. Luckily, this community has compiled more tutorials, has made more tools, and has more welcoming arms willing to help than you can shake a stick at. However, you are expected to search for the solution to your problem before you ask for help. Many of the questions that intermediate-to-veteran level hackers get asked are incredibly simple and fully explained by others in threads that are abundant and easily searched for. If you’re having trouble with PokéCommunity’s search (trust me, you will) you can use Google. Here is the appropriate search syntax that I use when Googling issues:
Replace “keywords” with several words or phrases pertaining to your issue. Beating Laziness in a ROMHacking battle is easy if you dig in your heels and search for the solution to your problem. If you still can’t find anything, a post in the
Your Adventure Begins: What is ROMHacking Anyway?
For our purposes, ROMHacking is the process of editing a Pokémon game. The Pokémon “games” that we edit are ROM images dumped from a retail cart. Basically, someone dumped the contents of their retail gamecart using special hardware and software and a ROM was the main output file. Thus, changing those files is called ROMHacking. There are a plethora of ways to obtain a ROM to begin hacking, but the only “legal” way is to dump it from your own gamecart. Virtually no one actually does this. Therefore, Google is, again, your go to tool for finding and downloading a ROM to start working on.
Please Note: Linking to ROMs, edited or not, is against the rules of this forum. Sharing them is likely a violation of the laws of your country. Hacks are distributed in the form of patches, which will be explained in a bit.
ROMHacking is primarily accomplished through the use of programs called tools that normal people like you and I have developed. There are tools designed for a plethora of needs, to editing maps (from the Town Map to the actual towns and routes the player walks through!), to changing starters, to creating new dialogue that people say in the game when the player talks to them. A directory of pertinent tools and their uses will be at the bottom of this post.
Choosing your first Pokémon… ROM
So you still want to hack, you’ve somehow found a ROM, and you’re ready to go. Hold on there newbie, first you need to know what Pokémon game you want to hack. Basically, you as a new hacker, have two main options. Those are: Firered and Emerald. Each has distinct advantages and disadvantages, and your choice will come down to several factors. Those factors are: Spoiler :
- Features Distinct to Each Game Emerald has several features built-in that have not even been replicated or ported to Firered. Among those are its Contest System, amply functional Battle Frontier, the effects of several abilities that have out-of-battle uses ( Intimidate lowering the chance of encountering Wild Pokémon, for example ), the ability to have a regional Pokédex, Secret Bases, the PokéNav, and possibly other features introduced in Emerald and not included in the earlier 3rd Generation Pokémon games. You, as a new hacker, are very unlikely to be able to port these features to Firered yourself, though it is technically not impossible with adequate cognition and campaign.
Firered has the ability to name your Rival, more quad for textbook in several of its interfaces ( such as, more space for item, ability, and attack descriptions. ) ( How interfaces look can technically be changed, but doing so is probably out of reach for newer hackers and ailing understood by a majority of veterans, which is why I ‘m including it here. ), a built-in help system for the musician, and Oak ‘s tutorial conflict ( Help with the first battle with the Rival which can be overwritten and used for a variety show of things and has n’t been ported to Emerald to my cognition. )
- Ease of Access In the recent past, it was no hidden to those in the hack residential district that Firered was by and large considered the easier ROM to hack. This is because it had a much wider support base than Emerald .
however, that is no farseeing dependable. While there are many holdouts from that era who will swear that Firered is easier or better to hack than Emerald, the world is that both games are evenly very well bases to start with.
- Tools Available Most all of the tools presently available will work with both Firered and Emerald. There are, however, many older and outdated tools still floating around that people distillery sometimes use. In general, the older tools are not constantly fully compatible with Emerald. This will not hamper an Emerald hacker ‘s efforts, as the modern equivalents eclipse the outdated ones in about every way. I felt it was worth mention in the casing that you, as a new hack, run into an outdated tool that you want to use.
Other considerations, such as aesthetics (how each ROM looks, the Pokémon graphics, the graphics used to make up the outdoor and indoor spaces, titlescreen, font etc.), music, and whether or not the ROM has and utilizes a Real-Time Clock are changeable with very little difficulty. Nonetheless, you as a new hacker may want to consider those as well. Before anything else, I ‘d like to impart upon you, my hackers in trail, what is possibly theadvice I could give you.This community is fabulously helpful, welcome, and open. however, you can not expect others to make your hack for you. You may have the best idea ever, but you wo n’t get anywhere if you throw up your hands and give up without starting. thus, we ‘re naming your equal Laziness. It may seem a little harsh, but Laziness will be the insidious cause lurking behind most of your problems starting out. Hacking is a hobby, but none of us can pretend that it is n’t work. And sometimes that work is hard and long-winded. sometimes learning the skills required to hack is hard and boring. fortunately, this community has compiled more tutorials, has made more tools, and has more welcome arms uncoerced to help than you can shake a stick at.you are expected to search for the solution to your problem before you ask for help. many of the questions that intermediate-to-veteran flush hackers get asked are incredibly simpleton and fully explained by others in threads that are abundant and easily searched for. If you ‘re having fuss with PokéCommunity ‘s search ( trust me, you will ) you can use Google. here is the appropriate search syntax thatuse when Googling issues : Replace “ keywords ” with respective words or phrases pertaining to your issue. Beating Laziness in a ROMHacking conflict is easily if you dig in your heels and search for the solution to your problem. If you still ca n’t find anything, a post in the Quick Questions and Answers Thread will probably be your best bet, as helpful members of the community are constantly combing through it and answering questions. If you made it through this paragraph and calm want to ROMHack, congrats ! You ‘re ready for the wholly concept of it ! For our purposes, ROMHacking is the process of editing a Pokémon crippled. The Pokémon “ games ” that we edit are ROM images dumped from a retail handcart. Basically, person dumped the contents of their retail gamecart using limited hardware and software and a ROM was the main output file. therefore, changing those files is called ROMHacking. There are a overplus of ways to obtain a ROM to begin hacking, but the only “ legal ” direction is to dump it from your own gamecart. virtually no one actually does this. consequently, Google is, again, your go to tool for finding and downloading a ROM to start working on.ROMHacking is primarily accomplished through the practice of programs called tools that normal people like you and I have developed. There are tools designed for a overplus of needs, to editing maps, to changing starters, to creating new negotiation that people say in the game when the player talks to them. A directory of apposite tools and their uses will be at the bottom of this post.So you calm want to hack, you ‘ve somehow found a ROM, and you ‘re ready to go. Hold on there newcomer, first gear you need to know what Pokémon plot you want to hack. Basically, you as a new hacker, have. Those are : Firered and Emerald. Each has distinct advantages and disadvantages, and your choice will come devour to respective factors. Those factors are : other considerations, such as aesthetics, music, and whether or not the ROM has and utilizes a real-time Clock are changeable with very small difficulty. however, you as a new hacker may want to consider those as well. →But Why not the other Pokémon Games ?
I ‘m glad you asked ! The other ROMs descent into two categories : Ruby and Everyone Else. Ruby should not be hacked at this charge because ongoing confirm for it is basically non-existent. While it used to be the chief base to use if you wanted Hoenn ‘s features ( which is why there are tools and research that work for it still lying about ), Emerald has eclipsed it in every gaze. Ruby, being the inaugural GBA bet on that Gamefreak coded, is besides a mess internally, making inquiry into it unmanageable. If you want to hack Ruby, hack Emerald alternatively. As for the Everyone Else class, my first gear interview to you is “ Why ? ” Why would you want to hack Leafgreen over Firered ? They ‘re the lapp games with the same al-qaeda features. The real reason is that Firered is the one that research has been done on, and Leafgreen was not. They are the lapp game, but data is placed in unlike spots. It ‘s the same softwood with Sapphire compared to Ruby. Sapphire and Leafgreen are support deadzones, with no tools or research ever being done for them because there ‘s precisely no point. Stick with Firered and Emerald, to save yourself some perturb.
→There Are Different ROM Versions Available for the Pokémon Games ; Which Do I Use ?
Another excellent question ! You should only use the 1.0 versions of Firered and Emerald. The 1.1 and late releases shuffle significant memory locations around, and all of our research and tools are designed to work with the 1.0 versions. The older, outdated Ruby inquiry and tools are besides for its 1.0 translation if you were wondering, but you should be hacking Emerald if you ‘re tempted to use Ruby.
Your First Battle: An Emulator
You cannot play a Gameboy Advance Pokémon ROM on your computer without an emulator. For our purposes, an “emulator” is a program that mimics the workings of a game system. There are many emulators for many consoles, but we’ll be needing a Gameboy Advance Emulator specifically. The most popular emulator among hackers is Visualboy Advance or VBA. VBA perfectly emulates Gameboy Advance ROMs and even comes with some fancy tools built right in that advanced hackers use. You will most likely not be needing those tools as a beginner, but know that they are in your toolkit.
You can open your ROM in VBA by hitting “File”, and then “Open GBA” on the menu that drops down. Then select your ROM. As a bonus, VBA can play regular Gameboy and Gameboy Color ROMs as well. VBA is less a tool and more the medium by which you can play games, including your hack. It will be the program that you use to playtest your hack. “Playtesting” is the process that a hacker goes through to test their hack for bugs, general playability, and design flaws. Playtesting is an integral part of ROMHacking. You should generally play through your hack as you are making it to make sure that things are continuing to run smoothly in game.
Training to Master the Elite Four: Mandatory Tools, Tutorials, and Concepts
While there are many many tools, techniques, and tutorials for ROMHacking, very few are absolutely necessary to make a full hack. For the purposes of this document, a full hack means that it is set in a region that is either completely new or edited from the regions that Firered and Emerald are set in, contains some new dialogue for characters that the player runs into, and has new or edited events from the base game. You may need even less tools, or different ones if the hack you’re making doesn’t fall into this definition. To start out, the new hacker will need at minimum four tools, and should probably focus their efforts on mastering those four before branching out. (Expand the spoilers for a basic description of the program and the common terms you will need to know to work with them.) These tools are:
- Advance Map 1.92 by LU-HO
Advance Map is the program that 99 % of hackers use to edit the areas that the player will be walking around in, which are called “ maps “ in the hack scene. Advance Map gives the player the ability to change the map, allowing players to edit where anything is ( houses, people walking around, paths, signs, what Wild Pokémon appear, literally anything ) on a map.
The graphics that make up a map are in the format of pieces called “ tiles “, and the tiles are arranged to form the overall map, like pieces to a perplex. even the graphics that make up the tiles can be rearranged or replaced entirely with this plan. On top of the tiles, are the people walking around on a map. These are called “ person events “. Everything from the form that they walk in, which person they are ( from a Lass to a child to your Mom ), and what text they are pointed to say can be edited. similarly, the events that control what signs ( or anything, in truth ) say when interacted with are behind-the-scenes and on the same layer and are called “ signpost scripts “ or “ signpost events “. They are placed on top of tiles and are triggered when the player interacts with the tile they are on top of. These type of events besides control obscure items that are found with the Itemfinder. Another type of sub-rosa event that is on this layer is called a “ warp “, and they are the entities that control the doors and map changes. They basically warp or move the actor to another map. The last type of sub-rosa consequence is the “ script tile “. These entities trigger when the actor walks on top of them. ( For example, when the musician tries to walk out on to Route 1 without a Pokémon, it is a script tile that triggers Prof. Oak to walk up and intervene. ) What tiles the actor can or can not walk on is by and large not implicit in to the tile itself, and is alternatively determined on another level, and is referred to as the map ‘s “ movement permissions “.
There are many more uses for Advance Map that are explained better in tutorials, but I wanted to make sure that you, the modern hack, know the basic terminology behind what you ‘ll be using Advance Map to do the majority of the time. acerate leaf to say, it is an incredibly mighty tool and you will use it for a majority of your workload.
Please Note : advance Map is omnipresent enough that you wo n’t have to ask its creator directly how to work with it ( in fact, the godhead of Advance Map seems to have left the hacking scene ). Any ROMHacker who is even slenderly more skilled than you will be able to help you if you have problems with it. But again, search before you ask, as your wonder has likely already been answered .
not to create maps the way it is explained in the tutorial. Most hackers edit an existing map instead of creating and inserting a new one. Likewise, don’t delete maps in the way that the tutorial advises. Firstly, the way the tutorial is doing it is incorrect. Secondly, you don’t technically need to delete maps. My advice would be to never try to delete a map. Just make sure your hack never warps or connects to the maps you don’t want to use. Otherwise, this tutorial is great. (You’ll be happy to know that I found it with a Google search. Learn from my example and any tutorial will be at your fingertips.)
should not be used, as it is incredibly unstable and will slowly corrupt your ROM.
- eXtreme Script Editor often shortened to XSE by HackMew
Read more: Pokémon FireRed Version
This is a tool for creating and inserting new dialogues that people say when the musician interacts with them, among other things. The term for what this creates is called a “ script “. Scripts are what entities like the aforesaid person events, signpost events, and script tiles run when interacted with. They ‘re basically a located of instructions that tell the game bit-by-bit what to do when a handwriting is activated. This can be for something a simple as talking to person in game, to something a lot more complicate than Prof. Oak preventing you from leaving Pallet Town without a Pokémon. You, as the hack, can do reasonably much anything you want on a map with a script. Do you need a person event to take two steps to the left, say something, and then warp the player to another map ? You can do that. Do you want to create a fabled Pokémon battle with a Mew that flies away if you lose ? You can do that. Do you want to script up something absurd and bizarre like a dance-off between a person consequence and the player ? You can do that ! Through script, your floor and plot come to life. Basically, anything more than a basic person talking script or a signpost script is referred to as an “ event “. The rival coming down and battling you on the S.S. Anne would be considered an consequence, and it is done through a handwriting. Most everything that the player interacts with on a map is handled by scripting.
Scripting has its own basic lyric and syntax that you will have to follow for your script to function. Because of the freedom that scripting allows the hacker to have in crafting actor interactions, I will not go into particular detail in this document. I will say that much of your scripting work will be copy-pasted from a template, outside of your big events of run. That is because signs and people broadly lone say one thing and never change, and the basic structure used to do that can be copy-pasted.
Inserting a script into your ROM is called “ compiling “ your script. A script is compiled into a specific space depending on its distance. The length of a script ( and anything else that is stored in the ROM ) is measured in “ bytes “, while the name of the particular space that a script is compiled into is called its “ offset “. An stolon can be thought of as a kind of street savoir-faire that the ROM can visit to read what ‘s stored there. therefore, there must be adequate “ freespace “, that is, adequate bytes that are not already used, at the stolon you ‘re compiling your handwriting into, or you may overwrite other bytes with your handwriting. You must besides take note of the outgrowth you are using when compiling, as you will need to know it to assign it to your person events, signpost events, and handwriting tiles ( your hack must know what street cover or offset to visit or point to when your player interacts with these events ). fortunately, XSE will automatically search for freespace and compile your handwriting into it when you compile. rather of using define offsets, you would alternatively use what is called a “ dynamic offset “ while scripting. It ‘s a dynamic stolon because it ‘s not a fix offset until XSE compiles it and assigns it one.
When script, there will be a lot of overlap between XSE and Advance Map, as you will have to assign the script offsets that XSE replaces your dynamic labels with to the person events ( etc. ) in Advance Map. In fact, XSE can be integrated proper into Advance Map if you define it as your script editor program in Advance Map ‘s settings. From there, it can be used to open scripts right from Advance Map ‘s interface ! together, these two programs will probably be your most use tools when working on the kernel of your ROMHack.
Please Note : While there are early scripting programs out there, XSE is about angstrom omnipresent as Advance Map, and most hackers use it entirely. consequently, like Advance Map, you can ask most hackers about scripting and they ‘ll mechanically be giving you advice that pertains to XSE. furthermore, if you post a script that you ‘re writing that you need help with, XSE ‘s syntax is a dead giveaway and you should n’t have to explicitly state that that ‘s the program you ‘re scripting in. As a sidenote, HackMew is besides gone from the hacking scene, so any questions aimed that direction will fall on deaf ears. fortunately, there ‘s a specific Script Help Thread that I will link outside of this spoiler .
- G3T’s Trainers Editor by Kurapika
There are many Trainer editors floating around, but I believe this one to be the most feature-complete and most available. While Trainer battles are called in a script on a map, what Trainer is battled and their party can be edited with this tool. Everything from the Trainer ‘s list and sex, to what persona they use, to the prize money they give out, to their Pokémon and their levels can be modified with this.
As you ‘ve probably guessed, this Trainer editor will not be used deoxyadenosine monophosphate often as you use the last two tools I listed, but Trainer battles are even a pretty big separate of a Pokémon plot, so I ‘ve included a Trainer editor program as compulsory .
When Googling tutorials to include here for the Trainer Editors, there was a noticeable lack of options. Fortunately for you, the new hacker, that means that a majority of people didn’t need help learning how to use these tools and the learning curve will not be too steep for you.
- Lunar IPS often shortened to LIPS by FuSoYa
While not strictly for developing your ROMHack, this broadcast is the avenue by which you can legally distribute it. LIPS is a patching utility that will allow you to create and apply patches. A “ patch “ is a file that contains information on all of the changes made to a basal file. Basically, if you direct LIPS to whatever your al-qaeda ROM was ( so an unhacked or “ clean “ ROM of Firered or Emerald ), then direct it to your hack, it can create a piece of your hack. This piece will contain all of the changes, arsenic well as the location of those changes, that you made to the base ROM to create your hack. If you distribute that spot, people can use LIPS and apply it to their clean ROMs, and LIPS will just use the bandage as a template to build them a copy of your cab. And both creating and applying patches can be done in seconds !
LIPS is besides utilitarian for creating backups of your hack. alternatively of storing a wax transcript of your ROM as a backup, you can create a patch and save a significant measure of distance. While unvoiced drive quad is by and large not a business in our current computer climate, it is another use of the program.
There are early patching utilities and formats, such as the UPS format, but IPS patches placid seem to be the most common format, so this is the matchless I advise you to use until you ‘re ready to explore the pros and cons of the others.
LIPS will literally direct you on how it is used to both create and apply patches. Basically, to create a patch, you select your base clean ROM. Then you select your hack. Then you tell it where to save and what to name your patch. To apply a patch you select your patch, than select the base clean ROM to apply it to. Very simple.
This is a direct link to LIPS. LIPS’ creator has, to my knowledge, never taken part in the Pokémon ROMHacking scene. So you will not see FuSoYa around here. Fortunately the program is so simple that you probably won’t need to ask for help. If you do, literally everyone else knows how to use it. Don’t worry about getting lost with this program. You can not play a Gameboy Advance Pokémon ROM on your computer without an copycat. For our purposes, an “ ” is a course of study that mimics the workings of a game system. There are many emulators for many consoles, but we ‘ll be needing a Gameboy Advance Emulator specifically. The most democratic copycat among hackers isor VBA. VBA perfectly emulates Gameboy Advance ROMs and even comes with some fancy tools built right in that advanced hackers use. You will most probable not be needing those tools as a novice, but know that they are in your toolkit. This is a direct link to download VBA. You may have to wait a few seconds for the download to begin.You can open your ROM in VBA by hitting “ File ”, and then “ open GBA ” on the menu that drops down. then select your ROM. As a bonus, VBA can play regular Gameboy and Gameboy Color ROMs equally well. VBA is less a tool and more the medium by which you can play games, including your hack. It will be the program that you use to playtest your hack. “ ” is the process that a hacker goes through to test their hack for bugs, general playability, and plan flaws. Playtesting is an integral part of ROMHacking. You should by and large play through your hack as you are making it to make sure that things are continuing to run smoothly in game.While there are many many tools, techniques, and tutorials for ROMHacking, identical few are absolutely necessary to make a full hack.To start out, the fresh hacker will needfour tools, and should credibly focus their efforts on mastering those four before branching out.These tools are : hera is a founder ‘s tutorial on using Advance Map. While an average exploiter will find this tutorial besides simple, it is identical dependable at explaining what Advance Map does to the novice and has pictures of everything. however, I would personally advise youto create maps the way it is explained in the tutorial. Most hackers edit an existing map rather of creating and inserting a new one. Likewise, do n’t delete maps in the way that the tutorial advises. first, the way the tutorial is doing it is incorrect. second, you do n’t technically need to delete maps. My advice would be totry to delete a map. Just make indisputable your hack never warps or connects to the maps you do n’t want to use. otherwise, this tutorial is great. This is a mastermind link to download Advance Map 1.92 from its creator ‘s web site. There is a reason I linked to Advance Map 1.92 rather of the other versions that are available. 1.92 is the least buggy and most feature complete version presently available. Version 1.95, as it is incredibly unstable and will slowly corrupt your ROM. This is a connect to the ONE TRUE XSE tutorial. I ‘m dangerous, this tutorial will explain about every dominate in XSE ‘s language and how to use it correctly. With the cognition provided in this tutorial, you could probably fool the veterans into thinking that you know how to script complicated events. When I am scripting, I have this tutorial loose and constantly refer to it. It is that good. This tutorial, complemented by studying and learning to understand the scripts that are already in the game, will teach you everything you need to know about scripting. If that does n’t help your script, this is a link to the appropriate subforum to post a question string in. Be certain to include your script in your thread and what you suspect may be wrong with it. This subforum is watched by helpful hackers ; and, as a bonus, taking a look at the corrected scripts from other script question threads is a good way to learn what things do. last, this is a direct download connect for XSE. I would normally link you directly to a tool creator ‘s web site or release weave, but HackMew has been inactive for so long that most of the links are down. This version fixes some bugs and oversights with HackMew ‘s original release, and was put in concert by Gamer2020.The Trainer editor functionality comes bundled in with several other tools that I did n’t mention. once you start the program, you will see what I mean. I do n’t have a tutorial for you for this tool, but its use is largely self-explanatory. How to assign an edit flight simulator to a script is covered in the scripting tutorial I linked, so you do n’t have to worry about that. This is a yoke to the Gen 3 Tools thread, which has some information on the Trainer editor ampere well as the early tools that come bundled in with the program. This is a conduct connection to the tool from the PokéCommunity fastening at the penetrate of the G3T weave ‘s first post. Your download should start automaticallyLIPS will literally direct you on how it is used to both create and apply patches. basically, to create a piece, you select your base uninfected ROM. then you select your hack. then you tell it where to save and what to name your bandage. To apply a patch you select your while, than select the base clean ROM to apply it to. identical bare. →Wait, That ‘s All That I Need to Make a Full ROMHack ?
Yes. Well, no. actually, barely let me explain. Those four tools are the ones that I would consider as mandate to create a fully Pokémon ROMHack and share it. If you ‘ve been following along, you ‘re able to ( or are more likely just learning to ) map, script, edit Trainers, and distribute your shape to the pillow of us. That, my newfangled hacker ally, is literally 90 % of the craft. I have simplified a snatch, absolutely, but if you handed this document to a Game Freak employee and told them to script out Firered ‘s floor and map out Firered ‘s Kanto ( but not copy its discrete features like the Help System ) using Emerald as a floor ROM, they ‘d be able to do it with just these four tools and the tutorials I linked. Likewise, if you have a fib to tell and a region in thinker, you could use these four tools and actually do it. I ‘m serious. You could start right now. Pretty cool feeling, right ? There are, of course, other tools that you ‘ll want to use, such as an image editor program that allows you to change the hero that your player plays as, or import your own Trainer or Pokémon images. But the majority of your hack will be done with the Elite Four of Tools I laid away and explained here .Becoming the Champion: Where Do I Go From Here?
While this document covers the basics, teaches you a bit about the Elite Four of Tools, and gives you the know-how to do a majority of the legwork towards completing a full ROMHack, you’re no doubt hungry for a little more. Luckily, the dictionary and tools/tutorials I will link to will give you something to chew on for quite a while. However, you are certainly not limited by what I can link to or explain here. I would encourage you to look around this forum and start absorbing knowledge on your own. There are still many concepts and skills that you do not know about that are useful if you’re looking to do something more advanced than many hackers today aspire for.
Rolling the Credits: Some Final Advice
We’ve come a long way new hacker, haven’t we? Before I end this overview of ROMHacking, I’d like to give you some final advice and some truths, hacker to hacker. Spoiler :
first, I suck, and thus do you. No matter how hard I try, I can not pick up Advance Map and XSE and create a masterpiece in a reasonable amount of time. I can about guarantee that I suck less than you right nowadays, but I have had respective years of sucking hard at ROMHacking to get to this point that you do n’t. The deviation is, if I started a new, full cab right nowadays and worked on it until it was finished, it ‘d credibly come out approve. Okay is probably the most you can expect of single hackers when it comes to their projects. They can excel in some aspects, and not be besides capital in others. That ‘s barely how it is when you ‘re developing something like this on your own. however, if you were to start a new, wide hack right nowadays, it will be frightful. Your first couple of projects will likely besides be atrocious. And that ‘s completely normal and apprehensible. seriously. I have a authentic cemetery of hacks from when I started hacking that I could n’t or did n’t want to finish for several reasons. The number is well over twenty dollar bill. There will be times where you hit walls that you ca n’t climb over, or find bugs that are unfixable, or dream up a feature that you ca n’t possibly deliver on. That ‘s okay. What ‘s significant is that you ‘re constantly looking at where you ‘re failing and learning from those experiences. You could memorize a hundred tutorials and not learn this. It comes from have. not being atrocious comes from experience. And if I learned not to be nasty, you can besides, and probably much more promptly than me.
On a abstemious note, the second nugget of wisdom of solomon that I wanted to impart upon you is that you need to learn to work-around. There are going to be things that you want to do that you do n’t know how to do the elegant or the technically correct way. Well, screw that. Your players are not going to be looking at how you are implementing things, they ‘re barely going to see the end leave. here ‘s a recent model from my own hack escapades : I needed to change the vivification that plays when the player heals their Pokémon at a Pokémon Center. I ‘m not ashamed to say that I had no theme where to even start, looking at the handwriting did n’t give me any hints and — but wait ! The script ! I realized, dear newly hack, that while I did n’t know how to edit the animation, I did know how to remove it from the existing handwriting. I besides knew how to use scripting to change the tiles that are used on a map in real-time. So what did I do ? I drew up some new tiles for the healing car with and without Poké Balls on it, imported those tiles with Advance Map, wrote a brand new script with XSE, and instructed the script to change the tiles on that machine to the ones I drew while playing all of the appropriate sound effects. I evening made it count the total of Pokémon the player had on them so that the right amount of Poké Balls were placed on the machine, and pause for half a moment between each ball being placed so that it was n’t all done at once. It even blinks the balls and plays the healing jingle ! Yes, it ‘s gawky as hell behind the scenes, and it took me some fourth dimension to get barely right, but it looks absolutely arrant when playing. You ca n’t even tell that I did it in the most unintuitive way conceivable in game. This is not the only time I ‘ve worked around a opening in my own cognition. You should try to be crafty and do the lapp. Sometimes that unachievable thing is within your grip if you look at it not as “ I do n’t know how to this, ” but alternatively as “ How close can I get to this using my stream skillset ? ”
useful Tools and Tutorials Directory :
This is a list of what I consider to be the most useful tools, tutorials, and resource documents we have available for ROMHacking organized by topic. These are the resources that I use when I need to brush up on a concept or need a refresher on some obscure aspect of hacking. They are organized in this format: Tool links, tutorial links, misc resource links (if applicable).
While this document covers the basics, teaches you a bit about the Elite Four of Tools, and gives you the know-how to do a majority of the legwork towards completing a full ROMHack, you ‘re no doubt hungry for a little more. fortunately, the dictionary and tools/tutorials I will link to will give you something to chew on for quite a while. however, you areby what I can link to or explain here. I would encourage you to look around this forum and start absorbing cognition on your own. There are hush many concepts and skills that you do not know about that are utilitarian if you ‘re looking to do something more advance than many hackers nowadays aspire for.We ‘ve come a long means new hack, have n’t we ? Before I end this overview of ROMHacking, I ‘d like to give you some final advice and some truths, hacker to hacker.
Read more: Ace Attorney
Diegoisawesome ‘s MEGA-HUGE XSE Scripting Tutorial
Creating Level Scripts
Post with ASM everyday with new movements for scripts for FR ( with patch ) ( reference code for EM )Graphics:
Wichu’s Advance Series (Pokémon Sprite Editor)
NSE – Nameless Sprite Editor 2.X (General Sprite Editor)
NSE Classic – Nameless Sprite Editor Classic (Overworld Sprite Editor)
NTME – Nameless Tilemap Editor
How to Palette Edit Anything
Making Tilesets from Tilemaps: The Super Easy Way
Inserting Battle Backgrounds
The DS-Style 64×64 Sprite Pokémon Resource
The Accurate FireRed Overworld Sprite Resource ASM/C Programming:
Tools are linked in tutorial threads.
FBI ‘s directory of ASM tutorials
Touched ‘s MEGA-HUGE ASM Tutorial
Hacking Firered in C
General GBA Programming
ASM Resource Thread
[ Closed ] Old ASM Help Thread
Check GoGo’s MEGA-HUGE Sappy Tutorial for many sound-related tools.
GoGo’s MEGA-HUGE Sappy Tutorial
ipatix’s High Quality Sound Mixer (With Documentation)
Check GoGo ‘s MEGA-HUGE Sappy Tutorial for many sound-related tools .