Register | Login
Views: 19364387
Main | Memberlist | Active users | ACS | Commons | Calendar | Online users
Ranks | FAQ | Color Chart | Photo album | IRC Chat
11-02-05 12:59 PM
1 user currently in Rom Hacking: hukka | 2 guests
Acmlm's Board - I2 Archive - Rom Hacking - DT 2 hacking news :o
  
User name:
Password:
Reply:
 

UserPost
Darth Coby
Posts: 1028/1371
Originally posted by Heian-794
Hey Coby, nice job! That is some fantastic decodingon your part to figure out how the levels are encoded. Looking forward to your hack!

(BTW, I use Translhextion too. While I like the way in which you can type text on the right side of the window if the game uses the default ASCII table, does anyone know how on earth they expect you to type a capital Y? They've assigned Shift-Y to somrthing else, so I have to go into the hex data and enter "59" every time I want a Y. Annoying.)


Capslock + Y? :p
Anyway, the process is going really slow, most bytes just seem to have random effects so I'm guessing it's either compressed really good ($10010-$10025) or this is just some pointer stuff to somewhere else. But I haven't found any other regions that seem to corrupt the level
Heian-794
Posts: 591/896
Hey Coby, nice job! That is some fantastic decodingon your part to figure out how the levels are encoded. Looking forward to your hack!

(BTW, I use Translhextion too. While I like the way in which you can type text on the right side of the window if the game uses the default ASCII table, does anyone know how on earth they expect you to type a capital Y? They've assigned Shift-Y to somrthing else, so I have to go into the hex data and enter "59" every time I want a Y. Annoying.)
Darth Coby
Posts: 1027/1371
Thx, that's a nice program :o but Duck Tailes 2 uses some kind of dictionary for it's dialogs (a rather big one too!) and translhexstation automatically notices wich charactercombinations are in the table and puts them as 1 byte, is this also possible with winhex?

ALSO:
About the level format, it seems that Niagara Falls is at 0x10010 - 0x10025, because any edits after 0x10025 don't affect the level. I have started laying out what byte changes what things but it's a little weird:

Data at 0x010010:
1st byte: Vertical position of screen (higher value = higher floor)
2nd byte: Number of screen on vertical axis(?? | 1A<->21)
3rd byte: Number of screen on horizontal axis (?? | 2A<->31)
4rd byte: Also screen number O_o; (?? | 9A<->9C)
5th byte: Graphical glitches (4x4 manner)

The first byte just changes the height of the floor and can also have some weird effects like the first 'column' in the screen is 4 blocks lower and such.

For the 2nd, 3rd byte I think all levels should be seen on an X/Y-axis. Where the 2nd byte changes the X coordinates and the 3rd byte changes the Y coordinates. I don't know what the 4th would be for though. :\

(E.g. Changing the second byte from $1D to $1E makes the level start in the screen with the two waterfalls but still loads the object set from the first screen (as in, no objects :p))

The graphical glitches that the 5th byte produces are really weird. Not all 4x4 blocks change, but only some, depending on the value you entered.
Examples: $3C & $9F

Edit: I really shouldn't forget explaining all of the things before I post/edit.
Ok Impala!
Posts: 245/383
Ok!

Because you shouldn't use that program. For Windows XP users there is this nifty program called Winhex. Sadly there is also a commercial program called Winhex, this is not what I mean. You can download the freeware Winhex on my website. It works great.
Darth Coby
Posts: 1024/1371



Oh, and sorry for the new post but the old post is already pretty old and err.. Not viewed anymore so editing it in there wouldn't work :s Sorry :p

Anyway, I cracked the text thingy, let me tell you. It's a bitch. And why doesn't translhexstation let me type using the table? O.o

Edit: Oops, there was a grammar error in the picture :o
Acmlm's Board - I2 Archive - Rom Hacking - DT 2 hacking news :o


ABII


AcmlmBoard vl.ol (11-01-05)
© 2000-2005 Acmlm, Emuz, et al



Page rendered in 0.003 seconds.