• 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.
hello , can someone explain what ini means
and how you change ini or edit the ini on G3HS

INI is a file extension. It's basically a configuration for things (tools in this case)

It opens like a .txt file, so you can use notepad, wordpad, notepad++ etc to open and edit it.

Most tools distributed from this site or any other hacking site have .ini files that come with them so you can edit them to do what fits best for you and your hack.
 
Bumping my question since it is of up most importance to me.:P
and its been 2 days since first asked

Hi, can you confirm if special 0x110 saves the game? Just run the special with the Pokedex. Before you do that though, make sure you saved the game already.

While I probably won't go about doing this, I would like to see someone try to address it. The 4 move limit for Pokemon has been present since the first 2 games, and I am unaware if it has been addressed officially, if not here are some suggestions for some of you to try and share with us. Extend the limit to five or six moves, set up so you can cycle through alternate move lists and dump new moves into the alternate move lists (if you decide to go this route you'll also have find a way to flip through the move lists for each Pokemon outside of combat situations, cycling through move lists in combat while cool might be a little not be good idea if you're concerned with balance issues). If your wondering where the question is in all this, here it is, Why hasn't anyone attempted either of these suggestions?

Thanks for taking the time to read this.

There's a lot of technical reason for why this isn't done.
1) All of the game's current move checking loop and built-in functions run off teh assumption the Pokemon only has 4 moves. This means that someone would have to edit those 100 or so functions

2) The Pokemon Data structure in RAM is set as 64 bytes, to add "spare" moves and to make the spare moves saved even when transferring Pokemon to the PC is hard (because once again you need to redo almost all the Pokemon RAM reading functions, the checksum calculator, ect..)

3) The battle engine would also need changing as well. For obvious reasons.

4) Graphical challenges, once again I think it's obvious why. Also if you have an HM slave with 8 HMs you will probably crash the Bottom Right Menu graphically and in general

There's probably more complications that I missed, but hopefully that gets the point across. It's just not feasible to do. You may as well just make your own game lol.


Does anyone have any theoretical (or actual, working) means to boost a moves power rating in game. Something along the lines of getting x-badge/pointinstory which boosts x-moves power by 10? I shamelessly tried writebytetooffset, which it didn't seem to like.

Is ASM the answer or are there other means?

Yeah, the move powers are stored in the ROM, and writebytetooffset wouldn't work (because by definition, you can't write to the ROM :P ).

You would need some ASM, though the ASM would actually be very easy if you're up for it.
 
Hi,
I tried to make the Shadow Force effect for Emerald but something goes wrong :
Spoiler:
 
INI is a file extension. It's basically a configuration for things (tools in this case)

It opens like a .txt file, so you can use notepad, wordpad, notepad++ etc to open and edit it.

Most tools distributed from this site or any other hacking site have .ini files that come with them so you can edit them to do what fits best for you and your hack.

thx you gogo
:)
 
Hi, can you confirm if special 0x110 saves the game? Just run the special with the Pokedex. Before you do that though, make sure you saved the game already.

Yea I can confirm it saves it, but its main purpose it to save to hall of fame and to ready credits for use with special 0x1a5.(0x1a5 can be run from a seperate script.) But I figured out a alternate to it. But whats the pokedex special you're talking about?
 
Yea I can confirm it saves it, but its main purpose it to save to hall of fame and to ready credits for use with special 0x1a5.(0x1a5 can be run from a seperate script.) But I figured out a alternate to it. But whats the pokedex special you're talking about?

Well I took a look at ASM for special 0x110 for you, and it doesn't teleport you. I guessed that it would probably save you in the player's room and then reset the game. When you finish the credits, the game has already reset and when you "spawn" it's in your room. I haven't looked at where that's done because I'm busy with some other things, but that's where I would look at if I were you.
 
All those concerns doesn't fully explain why they don't add one or two moves the move selection list, well other than concerns over trading pokemon from said game to a game with the standard four move limit, but updated versions of those games could conceivably fix that little issue.
 
All those concerns doesn't fully explain why they don't add one or two moves the move selection list, well other than concerns over trading pokemon from said game to a game with the standard four move limit, but updated versions of those games could conceivably fix that little issue.

It's not a small thing.

Changing every single piece of the game that handles Pokémon, encryption, moves and battles all have to be changed. You basically have to remake the entire engine and then some to have more compatibility.
 
Ah, point taken. It only looked like a small thing to me before that was explained, thanks.
 
hey i cant seem to get my warps to work can anyone help? i have watched video tutorials but i still cant get it to work.
 
hey i cant seem to get my warps to work can anyone help? i have watched video tutorials but i still cant get it to work.

Try putting them where the red circle is.

Spoiler:


Spoiler:
 
In addition to TheRealOCD's advice, link12552's In Depth Advance Map tutorial has a brief but easy to understand section on warps I use. You can also check where you can place a warp with the movement permissions tab, also covered in the tutorial. And remember the X/Y coordinates are written in Hex.

_______________________________________________________________

Does anyone know a way to skip the intro cutscene where you choose your name/gender?
 
In addition to TheRealOCD's advice, link12552's In Depth Advance Map tutorial has a brief but easy to understand section on warps I use. You can also check where you can place a warp with the movement permissions tab, also covered in the tutorial. And remember the X/Y coordinates are written in Hex.

_______________________________________________________________

Does anyone know a way to skip the intro cutscene where you choose your name/gender?

https://www.pokecommunity.com/posts/8521318/

Touched worked this out some time ago to remove the cutscene while keeping the save functionality.
 
How exactly would you apply this to a ROM, and what does the last line of code mean?

They are just byte changes in a hex editor. On the left are the addresses and on the right are the bytes you want to change. Generally in a hex editor, there's a "goto" function which will take you to an address. In HxD this is Ctrl + G. Once you get to that address you just write the byte changes down.

For the last line, you want to convert your default name into Hex, then write that hex conversion into some free space in the ROM (0xFF bytes are considered free space). From there you will replace the bytes at 0x054A70 with an reverse hex pointer to your default name. That is just an address to where you put your default name, in reverse hex.
So if I put my name at 0x745632 the reverse hex pointer would become 32 56 74.
 
XSE Included Scripting Guide said:
Pointer- it consists of four bytes and it points the script to continue at stated a location, or is used to call for the data with later returning to execute the rest of script that called for the data. The first byte is used to specify the bank (which means, the memory location type) the other three bytes are the offset in the specified bank. When referring to the ROM, the bank is always 08 & 09.

In a hex pointer, how do I know what the memory location type is/how do I specify it if the first byte needs both 08 & 09 and I only have one byte to type two characters? And what exactly is an offset in a bank?

I'm assuming if I create a script with XSE that's just a text box with my player's name and use #dynamic 0x800000, the text will be saved to a memory bank that I can then create a pointer to in the hex.
 
In a hex pointer, how do I know what the memory location type is/how do I specify it if the first byte needs both 08 & 09 and I only have one byte to type two characters? And what exactly is an offset in a bank?

I'm assuming if I create a script with XSE that's just a text box with my player's name and use #dynamic 0x800000, the text will be saved to a memory bank that I can then create a pointer to in the hex.

Please don't create a script. Just convert the name into hex directly. Also all hex editors are different and similar at the same time. You need to goto those addresses using ctrl + G. to see the address you are currently on look at the left and top. There are value there, add the value together, it's like the battleship board game.
 
Please don't create a script. Just convert the name into hex directly. Also all hex editors are different and similar at the same time. You need to goto those addresses using ctrl + G. to see the address you are currently on look at the left and top. There are value there, add the value together, it's like the battleship board game.
I already found the addresses and inserted the required bytes; it's the last part, creating the pointer and name, I'm stuck at. How do you create a pointer in hex? Also, how do I convert a name into hex? In fact, what's wrong with scripts?

Not trying to debate, I actually don't know :) First time using hex


EDIT: Actually, don't answer my questions. I found a tutorial on Hex, and if I can't figure it out myself I'll reopen this.
 
Last edited:
I already found the addresses and inserted the required bytes; it's the last part, creating the pointer and name, I'm stuck at. How do you create a pointer in hex? Also, how do I convert a name into hex? In fact, what's wrong with scripts?

Not trying to debate, I actually don't know :) First time using hex

Hex <-- ASCII is a 1 to 1 correspondence. Which means that there's a hex combination for every ascii character (not vise versa though). Here's a link to a table you can use to translate between the two: https://pastebin.com/3CtVr9Dy

You're not "creating" anything. The pointer already exists, it's wherever you inserted the hex version of your name. Like in scripts, when you put the script into advance map, you put a script pointer into the box. Like that, this discovery requires a pointer to your text. However, it wants you to reverse hex the pointer, in the process I described last post.
 
Status
Not open for further replies.
Back
Top