• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • 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.

ROM Hacking Discussions

Status
Not open for further replies.

Thrace

@tion
1,048
Posts
16
Years
  • Age 33
  • Seen Oct 2, 2016
Wouldn't adding too much detail make it look less like a real map? Maps irl only have terrain, roads and landmarks on it. I agree that one Alice. linked to looks good though.

Also, someone should update the FAQ in the ROM Hacking Forum, its out-dated and incorrect in places.
 

Logan

[img]http://pldh.net/media/pokecons_action/403.gif
10,417
Posts
15
Years
Okay Thrace, I'll look into what I should put in there and update accordingly. Anyone with suggestions can feel free to PM them.

Edit: I edited three or four of the questions with new answers, and new links etc. I think I may start another, if Vrai and Christos approve. It'll be easier to start another than to do extensive editing.
 
Last edited:

Thrace

@tion
1,048
Posts
16
Years
  • Age 33
  • Seen Oct 2, 2016
So I was wondering if anyone had tried to work out how tile animations work? I remember I had a look a while back and I think Darthatron had a look too. From what I can remember searching for the pointer goes to a list of other pointers.
 

Surf

...
1,196
Posts
15
Years
  • Age 29
  • Rust
  • Seen Jul 31, 2011
Which animations are we talking about, because I've been looking into changing some of the water animations.
Still don't know how to add them though >.<
 

Thrace

@tion
1,048
Posts
16
Years
  • Age 33
  • Seen Oct 2, 2016
Oh haha, I guess I wasn't very clear. I mean adding animations, or even making a tile animate with an existing animation. Not replacing the existing ones. In Genesis the doors in some tilesets have no animation anymore.
 

colcolstyles

Yours truly
1,588
Posts
15
Years
Styles was doing some work on importing Fire Red door animations into Emerald...but...yeah.
Again, I was merely replacing the existing door animations with new ones. Thrace is suggesting adding entirely new animations, something I, myself, was wondering about a while back.

On the topic of door animations, I discovered something, maybe a half a year ago, which might come in handy to some of you. It is possible to use door animations from any tileset in another tileset. Here's an example: let's say you want to use the door to Oak's Lab in Tileset 1 in another tileset (say Tileset 2). What you can do is find the block number (0x2AC in this case) and create a door block in another tileset in the same block number (0x2AC). If you set the Behavior Byte to 0x69 (Use door/warp), then the animation will execute when you use that door. The only setback I can think of is that the door animation will play in the palette to which it is assigned in its original tileset (10 in our case), which, as you can imagine, causes problems with differing palettes for different tilesets.

Which brings me to another point: it seems that door animations are assigned a palette which is used for that animation. Even if you change the palette of the tiles for that door block in the Block Editor, the door animations still plays in the original palette. Is their some way to change which palette is used for the animation? I haven't looked into it but I assume it's possible.
 

Thrace

@tion
1,048
Posts
16
Years
  • Age 33
  • Seen Oct 2, 2016
On the topic of door animations, I discovered something, maybe a half a year ago, which might come in handy to some of you. It is possible to use door animations from any tileset in another tileset. Here's an example: let's say you want to use the door to Oak's Lab in Tileset 1 in another tileset (say Tileset 2). What you can do is find the block number (0x2AC in this case) and create a door block in another tileset in the same block number (0x2AC). If you set the Behavior Byte to 0x69 (Use door/warp), then the animation will execute when you use that door. The only setback I can think of is that the door animation will play in the palette to which it is assigned in its original tileset (10 in our case), which, as you can imagine, causes problems with differing palettes for different tilesets.
Thats interesting... is that only when you import the tileset that you exported from Tileset 1? As in instead of creating a new file for the new tileset are you simply replacing tiles from Tileset 1?

Which brings me to another point: it seems that door animations are assigned a palette which is used for that animation. Even if you change the palette of the tiles for that door block in the Block Editor, the door animations still plays in the original palette. Is their some way to change which palette is used for the animation? I haven't looked into it but I assume it's possible.
You could try looking at the pallete viewer as you go through a door. I assume the pallete would be under Sprite since the Tile ones would be full.
 

colcolstyles

Yours truly
1,588
Posts
15
Years
Thats interesting... is that only when you import the tileset that you exported from Tileset 1? As in instead of creating a new file for the new tileset are you simply replacing tiles from Tileset 1?
I'm not quite sure what you mean here.
You could try looking at the pallete viewer as you go through a door. I assume the pallete would be under Sprite since the Tile ones would be full.
Ah, of course. I didn't even think of that. I'll take a look when I get the chance.

And if anyone discovers anything related to inserting entirely new animations, please don't hesitate to post it here. I can think of quite a few good uses for that kind of knowledge.
 

sasquatchd00d

welcoming a clean head.
264
Posts
15
Years
On the topic of door animations, I discovered something, maybe a half a year ago, which might come in handy to some of you. It is possible to use door animations from any tileset in another tileset. Here's an example: let's say you want to use the door to Oak's Lab in Tileset 1 in another tileset (say Tileset 2). What you can do is find the block number (0x2AC in this case) and create a door block in another tileset in the same block number (0x2AC). If you set the Behavior Byte to 0x69 (Use door/warp), then the animation will execute when you use that door. The only setback I can think of is that the door animation will play in the palette to which it is assigned in its original tileset (10 in our case), which, as you can imagine, causes problems with differing palettes for different tilesets.
I already knew about this, but I usually did it differently. I would just save the tileset, block data, and palettes of the tileset I was going to use and load them over the old stuff in a different tileset.

Which brings me to another point: it seems that door animations are assigned a palette which is used for that animation. Even if you change the palette of the tiles for that door block in the Block Editor, the door animations still plays in the original palette. Is their some way to change which palette is used for the animation? I haven't looked into it but I assume it's possible.
And when I changed the palettes of the doors then, the animation had the correct palettes still. Maybe it's if you edit the palette that it was originally assigned to, such as if it was in palette 10, I would edit palette 10 to change the animation palettes.
 

colcolstyles

Yours truly
1,588
Posts
15
Years
I already knew about this, but I usually did it differently. I would just save the tileset, block data, and palettes of the tileset I was going to use and load them over the old stuff in a different tileset.
You mean like creating a duplicate of that tileset in another tileset? Why not just change the tileset # of all maps using the tileset-to-be-replaced to the other one?

And when I changed the palettes of the doors then, the animation had the correct palettes still. Maybe it's if you edit the palette that it was originally assigned to, such as if it was in palette 10, I would edit palette 10 to change the animation palettes.
Right, that's what I've been doing. But I was thinking that there might be some way to change which palette the door animation uses. I was wondering whether the door animation shares a palette with the tileset in which it is contained (so that editing the palette of one would alter the colors used by the other) or if the door animation had some data which pointed to a specific palette (which could theoretically be edited to point to a different palette). Basically, I would like to know how the computer knows which palette to use for the frames in the animation.
 

sasquatchd00d

welcoming a clean head.
264
Posts
15
Years
You mean like creating a duplicate of that tileset in another tileset? Why not just change the tileset # of all maps using the tileset-to-be-replaced to the other one?
I was doing that to have the door tile I wanted in a different tileset. So if I wanted different buildings in different tilesets to have the same door animation, that's what I would do.
 

Thrace

@tion
1,048
Posts
16
Years
  • Age 33
  • Seen Oct 2, 2016
Right, that's what I've been doing. But I was thinking that there might be some way to change which palette the door animation uses. I was wondering whether the door animation shares a palette with the tileset in which it is contained (so that editing the palette of one would alter the colors used by the other) or if the door animation had some data which pointed to a specific palette (which could theoretically be edited to point to a different palette). Basically, I would like to know how the computer knows which palette to use for the frames in the animation.
I think the tile is acting like a "pointer" to the animation and the animation has a pallete assigned to it. It should just use the palette for the tileset shouldn't it? You can change the pallete of the animated flowers by simply changing those colours in the tileset.

If we can work out where the tile is being defined as a pointer to the animation from we should be able to add new animations. I'm pretty sure the animated tiles are designated by x,y co-ordinates where ever the animation pointers are.
 

Pokepal17

More cowbell~
1,519
Posts
15
Years
Okay, here's something we can discuss. Nintendo and Gamefreak (I'll refer to them as "Nintendo") made the scripts in the ROMs we hack. If we change the values of things in the scripts, even with a hex editor, sometimes the scripts don't correctly. Does this mean Nintnedo are bad programmers because they're scripts can go faulty when edited or, are they good programmers because they can make it so their scripts can't be manipulated easily?
 
Last edited:
780
Posts
14
Years
Okay, here's something we can discuss. Nintendo made the scripts in the ROMs we hack. If we change the values of things in the scripts, even with a hex editor, sometimes the scripts don't correctly. Does this mean Nintnedo are bad programmers because they're scripts can go faulty when edited or, are they good programmers because they can make it so their scripts can't be manipulated easily?
Most likely good,but what if Game Freak made the scripts?
 

NarutoActor

The rocks cry out to me
1,974
Posts
15
Years
more like lazy programers I dont hink they thought rom hacking was gona get so big but they were to lazy to make the scripts complex enough that they will be able to edit
 

Thrace

@tion
1,048
Posts
16
Years
  • Age 33
  • Seen Oct 2, 2016
lol wtf? They didn't make a scripting language for their games because they wanted people to be able to hack them. They did it so that all script writers didn't need to know ASM to write scripts. And if you make a script properly it will work 100% of the time. Its human errors that make scripts behave strangely.
 

Thrace

@tion
1,048
Posts
16
Years
  • Age 33
  • Seen Oct 2, 2016
they had to have some kind of scripting launguage the programs used to script to make faster programing
I meant the reason they created a scripting language wasn't so that rom hackers would have an easier time.
 
Status
Not open for further replies.
Back
Top