+  RHDN Forum Archive
|-+  Romhacking
| |-+  ROM Hacking Discussion
| | |-+  Oracle of ages
Pages: [1] 2 3 ... 6
Author Topic: Oracle of ages  (Read 3 times)
Dwedit
Guest
« on: March 11, 2009, 06:28:21 am »



This post indicates nothing other than that I can use Rom Corruptor
« Last Edit: March 16, 2009, 09:22:28 pm by Dwedit »
rmco2003
Guest
« Reply #1 on: March 11, 2009, 06:52:17 am »

Well it looks like you found the tile data Cheesy
tc
Guest
« Reply #2 on: March 11, 2009, 07:16:30 am »

Experimenting is good. :thumbsup:
Dwedit
Guest
« Reply #3 on: March 11, 2009, 08:23:23 am »

To nobody's surprise, the maps are compressed.
KaioShin
Guest
« Reply #4 on: March 11, 2009, 09:00:15 am »

http://www.romhacking.net/forum/index.php/topic,7820.0.html
Dwedit
Guest
« Reply #5 on: March 11, 2009, 09:56:13 am »

Thanks for that thread, now I understand the compression system used by the game.
Looks like APACK would have performed much better than whatever they used though.
Isao Kronos
Guest
« Reply #6 on: March 11, 2009, 10:20:06 am »

Heh, cool.
Man, I didn't know you were into romhacking, I remember when I was a wee Animutation fanboy years and years ago...
Dwedit
Guest
« Reply #7 on: March 11, 2009, 11:23:43 am »

I MADE Rom Corruptor, you know...
Way back before I knew how to properly spell the word "Corrupter".

My username even came from the Dragon Warrior editor I made.
Jigglysaint
Guest
« Reply #8 on: March 11, 2009, 12:41:13 pm »

Quote from: Dwedit on March 11, 2009, 11:23:43 am
I MADE Rom Corruptor, you know...
Way back before I knew how to properly spell the word "Corrupter".

My username even came from the Dragon Warrior editor I made.

Good to see you attempt to hack Ages.  BTW just about everything has been found by me, so really if you have any questions about how the game really works, let me know.  BTW, dungeon data is actually a bit different than overworld data.  Overworld just uses single tiles, but dungeons actually use macros.  How it works is that there are about 16 pages of tiles that are arranged into 15 tile wide strips.  How it works is that the room starts with a control code that specifies whether the following data are single tiles, or macros, which are represented by 2 byte values.  The 2 byte values sort of act like pointers and RLE data together.  If I recall correctly, the first nybble of the first byte is the page number.  So if the macro is on page 16, then it would be an F.  The second nybble of the first byte is where on that row the data starts.  If you want to grab tile data from the 3rd byte in, the entire byte would look like F2.  The first nybble of the second byte is the length of the tile macro.  The minimum is 0 tiles + 3, and the maximum is 16 tiles +3.  If the length exceeds the length of the macro, data from the next line will be used as well.  Also if the macro exceeds the game boundries on screen, the remainder of the data will also start on the next line down.  Keep in mind that the 16th column in the game is never displayed although data can be deposited there.  You will notice that most of the macros all have 00 as the 16th byte in the row.  Finally, the last nybble of the second byte is what row on the page to use.  To sum it up, say you want to get a row of wall tiles.  Now, you could always just defind the tiles individually, but you can only do it 8 tiles at a time, and it costs 9 bytes.  Instead, you could find the row of tiles you need and use them.  Say a suitable row of tiles exists on the 8th page, and the 9th row.  Say also that the row of tiles starts about 2 bytes into the row, and ends 14 tiles into the row.  That should mean the byte pair you need should look like "72 78".  So if the row looked like this:

B9B0B1B1B1B1B1B1B1B1B1B1B1B0BA00

The code is telling the game to do this:  B1B1B1B1B1B1B1B1B1B1B1

Remember that whatever the value you grab, it always grabs + 3 more tiles.  After all, it's compresson, and the least amount of bytes you can save has to be at least 1.
Dwedit
Guest
« Reply #9 on: March 11, 2009, 01:03:47 pm »

Set bytes 5D900-5DFFF to zero for walk-thru-walls fun.

And yes, I would like to learn more about the game.

Edit: Right now I'm trying to make a ROM Map of the game.  Any stuff that would help me here?
« Last Edit: March 11, 2009, 02:05:14 pm by Dwedit »
Jigglysaint
Guest
« Reply #10 on: March 11, 2009, 02:19:05 pm »

Quote from: Dwedit on March 11, 2009, 01:03:47 pm
Set bytes 5D900-5DFFF to zero for walk-thru-walls fun.

And yes, I would like to learn more about the game.

Edit: Right now I'm trying to make a ROM Map of the game.  Any stuff that would help me here?

Only a bookmark full of offset goodies for both seasons and ages.  Name your interest, and I should be able to deliver.  Right now I'm going out, but I'll be back later on tonight.  I also know some Z80 ASM, so finding loading routines should be easy to do as well.  In the mean time, do you have Hex Workshop?  I can e-mail the bookmarks to you.  Of course I'd still need to explain stuff, but at least it gives you a general idea of where stuff is.
Dwedit
Guest
« Reply #11 on: March 11, 2009, 02:34:27 pm »

Go ahead and email the stuff.

I might first try to make a level viewer.  For that, I'd need to know how the game chooses which tile graphics to display for a given area.  I already found the attribute data and tile numbers through use of Corruptor.
Jigglysaint
Guest
« Reply #12 on: March 11, 2009, 02:47:00 pm »

Quote from: Dwedit on March 11, 2009, 02:34:27 pm
Go ahead and email the stuff.

I might first try to make a level viewer.  For that, I'd need to know how the game chooses which tile graphics to display for a given area.  I already found the attribute data and tile numbers through use of Corruptor.

For that, I can tell you right off the bat that the game's areas are divided into different "dungeon maps".  Each of those maps contain specific attributes, such as level number, graphics sets to load, music, and other special attributes such as if it's under water or not.  In OOA, believe it or not, the graphics of the treasure chests are determined by a bit in this attribute data.  If a specific bit is set, then the chest looks like a chest from the past.  Also the bank of the level data is set too in this attribute table.  I'll e-mail the data now.

Edit:  Er, I need your E-mail so I can send you stuff.  Also don't use the e-mail in my profile as I don't use that one anymore.
« Last Edit: March 11, 2009, 02:58:31 pm by Jigglysaint »
Dwedit
Guest
« Reply #13 on: March 11, 2009, 03:08:58 pm »

My email is listed on my website...
Jigglysaint
Guest
« Reply #14 on: March 11, 2009, 09:57:12 pm »

Okay I sent the files.
Pages: [1] 2 3 ... 6  


Powered by SMF 1.1.4 | SMF © 2006-2007, Simple Machines LLC