• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Our weekly protagonist poll is now up! Vote for your favorite Conquest protagonist in the poll by clicking here.
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Help Thread: Quick Questions & Answers

Status
Not open for further replies.
How would I go about scripting a safari zone battle?
I want to have the player catch their first Pokémon using such a script if possible in the beginning of the game...
My idea was to copy the Safari zone scripts then toss them into a new map but then it comes to changing the Safari balls to Pokéballs...
I have found a thread on changing the amount of Safari balls but I can not find anything else related to Safari Zone...
I am testing everything now so any reply is appreciated...

Also can the Safari Zone scripts be modified for a Bug Catching contest script?
Just an idea

IIRC, safari zone type of battles are set by a special. just set the special, do the battle, then do the other special to take that battle mode off. That should work. What rom are you hacking, if you're wondering what the special is?
About changing the type of pokeball, I got no clue..
 
IIRC, safari zone type of battles are set by a special. just set the special, do the battle, then do the other special to take that battle mode off. That should work. What rom are you hacking, if you're wondering what the special is?
About changing the type of pokeball, I got no clue..


Thanks for the reply...

FR is the game and I have went through the scripts in a clean rom and found that there is
"special 0xCD / from tile script0"
and
"special 0xCE / from level script"

These are more than likely the specials you are talking about but if I may ask for a simple sample script, as I am good with all the basic scripting but just starting to grasp specials, vars and level scripts...

I try learning from the original GF scripts but they help in some areas while confuse me in others when the scripts will decompile but not recompile... Ergo Level scripts and #raw pointer 0xXXXXXXXX
*Can't seem to figure out how to convert them in to the actual pointer
 
Thanks for the reply...

FR is the game and I have went through the scripts in a clean rom and found that there is
"special 0xCD / from tile script0"
and
"special 0xCE / from level script"

These are more than likely the specials you are talking about but if I may ask for a simple sample script, as I am good with all the basic scripting but just starting to grasp specials, vars and level scripts...

I try learning from the original GF scripts but they help in some areas while confuse me in others when the scripts will decompile but not recompile... Ergo Level scripts and #raw pointer 0xXXXXXXXX
*Can't seem to figure out how to convert them in to the actual pointer

I don't hack FR, but try
special 0xCD
~~~make a wildbattle~~~~
special 0xCE

not sure if it may work, but go for it.
 
I've searched all over the place and I cannot seem to find an answer

How do I ADD a trainer in A-Trainer?

In "Edit Trainer amount", I want to change 2E7 to 311 (Adding 42 trainer IDs) but I have to give it an offset first. I have no idea how to change that offset or what it should be. When I gave it the same offset as before, it seemed to have wiped all the Pokemon Species data in all trainers, leaving the Species blank, which is obviously not a good thing. All the moves, levels, etc were unchanged.

So basically, how do I find the offset without it screwing up any other data and simply adds new trainer IDs? It doesn't generate an offset I can use.
 
I've searched all over the place and I cannot seem to find an answer

How do I ADD a trainer in A-Trainer?

In "Edit Trainer amount", I want to change 2E7 to 311 (Adding 42 trainer IDs) but I have to give it an offset first. I have no idea how to change that offset or what it should be. When I gave it the same offset as before, it seemed to have wiped all the Pokemon Species data in all trainers, leaving the Species blank, which is obviously not a good thing. All the moves, levels, etc were unchanged.

So basically, how do I find the offset without it screwing up any other data and simply adds new trainer IDs? It doesn't generate an offset I can use.

Don't have it to hand but I'm assuming you've got to give it some free space to locate the new data.

/checking

Yep, see the 'needed bytes' thing? You need to search for that much space using Free Space Finder, then use the offset that that gives you. It'll then relocate all your trainer data.
 
Hi, I'm making a sideshow hack of Fire Red and I want to edit the Game Corner prizes, but I am using hacking tools as I do not have any understanding of hex editing. However I cannot find a tool to edit the prizes at all. I can find a game corner prize-editing tool for gen 1 and 2 but not for Fire Red. Please help!

If such a thing does not exist, where should I go to ask for assistance from an experienced hacker?
 
Hi, I'm making a sideshow hack of Fire Red and I want to edit the Game Corner prizes, but I am using hacking tools as I do not have any understanding of hex editing. However I cannot find a tool to edit the prizes at all. I can find a game corner prize-editing tool for gen 1 and 2 but not for Fire Red. Please help!

If such a thing does not exist, where should I go to ask for assistance from an experienced hacker?

Its all done by script. All it does is show a multichoise box, get your answer check how many coins you have, then it takes coins and gives you your prize if you have enough.

So in reality I dont think a tool would be possible/reasonable/
 
Can someone tell me the difference between ASM and Scripting. I just realised that I've been trying to ASM everything. It's probably not too hard for me to guess...
ASM - inserting new routines to add functions not specifically present in the game itself (new Pokéballs, items, evolutions, etc)?
Scripting - New HM moves (the OW function), Legendary encounters?

For example, I was trying to add a new Legendary encounter for Articuno and I copied the Regirock ASM routine, I managed to get the right cry, sprite/Pokémon and set it to level 70 as well as assembling it (Through experimentation, without tutorials since my internet was down for several days) but the battle background was still desert as well as a few other issue.

Actually, I might have just been using XSE... So what the heck is ASM?

But still, anyone know how to create a new legendary event?
 
Can someone tell me the difference between ASM and Scripting. I just realised that I've been trying to ASM everything. It's probably not too hard for me to guess...
ASM - inserting new routines to add functions not specifically present in the game itself (new Pokéballs, items, evolutions, etc)?
Scripting - New HM moves (the OW function), Legendary encounters?

For example, I was trying to add a new Legendary encounter for Articuno and I copied the Regirock ASM routine, I managed to get the right cry, sprite/Pokémon and set it to level 70 as well as assembling it (Through experimentation, without tutorials since my internet was down for several days) but the battle background was still desert as well as a few other issue.

Actually, I might have just been using XSE... So what the heck is ASM?

But still, anyone know how to create a new legendary event?

Well, you were kinda on the right track up until scripting...

Basically scripting is the game's in-game language used for NPCs, Signs, Events, etc, stuff done from the map and not anything fancy like battles or menus. ASM however is a little more complicated. Each of the Pokemon games (I believe from Gen I) has been programmed using C, which is a common language for programming games. When you compile C, it gets turned into ASM which is basically human-readable machine code, and that ASM is turned into bytecode which the processor can read and interpret. When you modify ASM, you are changing what the game's original engine did before to do something different.

So basically, changing scripts changes something that Gamefreak's code would read and interpret, changing ASM changes something which the processor would read and interpret.
 
Is it possible to export and import all Pokemon Sprite libraries in Link's NSE 2.0 in one go? I can only seem to export sprite library of 1 Pokemon at a time.

If it isn't possible, would writing a plugin work? Or should I just manually export and import each Pokemon's sprite library...
 
[PokeCommunity.com] Quick Questions & Answers

Why when I expand evolution per mon into 8
the evolution table was messed up.......
I want to make it 8 so that I can add more pokes
 
[PokeCommunity.com] Quick Questions & Answers

Why when I expand evolution per mon into 8
the evolution table was messed up.......
I want to make it 8 so that I can add more pokes

It seems theres a problem with your INI. It's possible you expanded, but somehow the INI doesn't recognise that. So go into the ini and change the amount of evolutions to 8. If it's not that, try again. Remember to make back ups.
 
It seems theres a problem with your INI. It's possible you expanded, but somehow the INI doesn't recognise that. So go into the ini and change the amount of evolutions to 8. If it's not that, try again. Remember to make back ups.

ahhm it is 5 in my ini
 
This might be a silly question, but do offsets that I repoint to need to end in 0, 4, 8, or C???
I swear I remembered reading about this a while back, but my memory is failing.

Thanks!
 
This might be a silly question, but do offsets that I repoint to need to end in 0, 4, 8, or C???
I swear I remembered reading about this a while back, but my memory is failing.

Thanks!

It depends on what you're inserting, when it comes to assembly routines and certain tables it's best / necessary for them to be word-aligned (i.e. ending in 0, 4, 8 or C), but for things like regular scripts, movement lists, strings, and so on, it shouldn't matter.
 
This might be a silly question, but do offsets that I repoint to need to end in 0, 4, 8, or C???
I swear I remembered reading about this a while back, but my memory is failing.

Thanks!

Tables of tables are read in ASM using the ldr command. This command reads 4 bytes, but only reads the next four consecutive bytes in a word aligned offset (divisible by four, i.e ending with 0, 4, 8, C). If you try to ldr at a non-word aligned offset, the behavior is different.

If you were just repointing something like a script, or anything else that doesn't have an alignment dependent structure, then it doesn't matter where you've repointed something to. However, for the most part, it depends what you're repointing. The Pokemon base stats table for example, doesn't matter where it's repointed to (iirc).

Anyways, the reasons behind this is very technical, and honestly there's absolutely zero harm in repointing everything to a word aligned offset :)
 
I want to translate in English the Pokémon names in a Japanese hack, without the five-character limit. Is there a way to do that?
Thanks
 
Overly simple question, perhaps, but is there a straightforward way to change the index of the player character's overworld sprite in FireRed? That is to say, I've already inserted my custom sprite in another location, but I don't want to overwrite Red's sprite (at index 0 in NSE).
 
Its very weird guys!
But Does anyone here know what the hell is happening in my rom?
In G3HS and G3T, the evolution is fine, but when I test it in V-boy and My-boy, Pokemon at first stage doeant evolve, I even checked the pointers where evolution method is located and its fine als, I cheked the evolution table, and it is also fine. I also repointed it but same thing happened.

Im using Firered
 
Last edited:
Does anyone have the pallet number for reflections in emerald?
And also Why does this happen?
[PokeCommunity.com] Quick Questions & Answers
 
Status
Not open for further replies.
Back
Top