Graal: The Adventure/ROM map: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
No edit summary
mNo edit summary
Line 44: Line 44:
* 0100 might mean walk, while 0000 might mean static (non moving).
* 0100 might mean walk, while 0000 might mean static (non moving).
* 190B, listed above, is Coordinates when the level is loaded, 99% positive it is.
* 190B, listed above, is Coordinates when the level is loaded, 99% positive it is.
<strikeout>* The last 4 digits, listed above are 0003, they are different for all NPC, not sure what it does.</strikeout>
<strike>* The last 4 digits, listed above are 0003, they are different for all NPC, not sure what it does.</strike>


The last four digits:
The last four digits:

Revision as of 07:05, 25 February 2009

NPC Data

Usually comes directly after Palette and Exit Data. I am still trying to find a pattern so we can edit and find NPCs easily.

Level 2 - Crystal Tree Thing:

  • 1188D = NPC #1 Direction
  • 1188E = NPC #1 Appearance
  • 11892 = NPC #1 Walk or not (0/1)

Level 3 - Waterfall doesn't Belong here:

  • 1483F = Sign # (Which Sign do they say when they are touched. It's somewhat based on PC version's way of NPC talking.)

Level 6 - Two Baddies:

  • 120BB = Top NPC's Appearance


Level 3's Exit and NPC Data Analysis

 0C1F0901FF01020006001901FF1F0600 ; This all seems to affect warp zones. The last 00 might be the sign's index number.
 20202020202020202020202020202020 ; Sign Spaces, used to make it centered
 20202020202020283F4646495F202020 ; "Hello!"
 2020202000000010481A050206030100 ; Spaces, ends with 00s... 
 000021012280030000190B0003030100 ; This slab must be the NPCs
 000021012280030000040B0306030100 ; as they all are nearly identical "030100" seems to start a new NPC.
 00002101228003000000400000020048 ; other than a few digits.
 013548033948                     ; Unknown

Level 4's Exit and NPC Data Analysis

 061F1901FF0105000B1002010C1C0100 ; Again, this is Warping, The 00 is still at the end.
 20202020202020202020202020202020 ; Spaces for the sign, again
 202034423B4E674D2053494F4C204249 ; Sign stuff, again
 4F4D3F5F0006168650171A01050301FF ; Unknown... "0301FF" at the end must be part of the NPC data.
 010021012280030000091303040301FF ; Noticeably similar to above's NPC data
 01002101228003000076480000027650 ; With differences.
 01AB5002AF50

Comparing both together

So in thoery, full NPC data looks like this:

 030100000021012280030000190B0003
 (In bold is changed values)
  • 030100 or 0301FF are always before an npc. Probably to define that it is an NPC.
    • 00 and FF are unknown switches At the Moment.
  • 0100 might mean walk, while 0000 might mean static (non moving).
  • 190B, listed above, is Coordinates when the level is loaded, 99% positive it is.

* The last 4 digits, listed above are 0003, they are different for all NPC, not sure what it does.

The last four digits:

  • The first two digits MIGHT be the direction they are facing.
  • The last two digits seem to be a appearance modifier.

Level Data

  • 10000 = Level data officially starts, with 0E unknown bytes.
  • It's confirmed that it's not a header, Level 3 doesn't have any 0xE before.
 59486E509B58D860DF696948CF50

Every Level is a total of 0x400 bytes starting at the starting point for tiles and palettes/properties.

Level 1 - Starting Point:

  • 1000E = Start of Tiles GFX
  • 1040E = Start of Palette

Level 2 - Crystal Tree Thing:


Level 3 - Waterfall shouldn't be there:

  • 14000 = Start of Tiles GFX
  • 14400 = Start of Palette

Level 4 - Two NPCs and a house

  • 14876 = Start of Tiles GFX
  • 14C76 = Start of Palette

Level 6 - Two Baddies

  • 118A8 = Start of Tiles GFX
  • 11CA8 = Start of Palette

How it's numbered

 LEVELS ARE NUMBERED AS FOLLOWS (Location to number, etc.)
 
   5
 7 4
 6 3
 1 2
 
 Level 2 is the Crystal, etc.

How levels are made

Each level is 0x400 bytes for both tiles and palette/properties.

Each level should look like this:

 0A0000000000000000000000000000494848490000000000000000000000000A
 0800000102000000000000000000004948484900000000000000000000000008
 0A0000000000000000000000000000494848490000000000000000000000000A
 0800000000000000000000000000004948484900000001020000000000000008
 0A0000000000000000000000000000494848490000000000005B5B000000000A
 080000000000000000000000010200494848490000000000005C5C0001020008
 0A0000000000000000000000000000494848490000005558585858550000000A
 08000000000000000000010200000049484849005B5B56595959595600000008
 0A000000005558585858550000000049484849005C5C5659595959560000000A
 08000000005659595959560000000049484849000000575A5A5A5A5700000008
 0A00005B5B565959595956000000004948484900000000005B5B00000000000A
 0800005C5C565959595956000000004948484900000000005C5C000000000008
 0A0000000056595959595600000000494848490000000000000000000000000A
 0800000000575A5A5A5A57000000004948484900000000000000000000000008
 0A00000000005B5B00000000000000494848490000000000000000000000000A
 0800000000005C5C000000000000004948484900000000000000000000000008
 0A0000000000000000000000000000494848490000000000010200191A00000A
 0800191A00000000000000000000004948484900000000000000001B1C000008
 0A001B1C000000000000000000000049484849000000000000191A000000000A
 080000000000000000010200000000494848490000000000001B1C0000000008
 0A0000191A000000000000000000004948484900000000000000191A0000000A
 0800001B1C00010200000000003F4245454545423F00000000001B1C00000008
 0A00000000000000000000003F40434646464643403F0000000000000000000A
 083F3F3F3F3F3F3F3F3F3F3F404044494848494440403F3F3F3F3F3F3F3F3F08
 0A4040404040404040404040404000494848490040404040404040404040400A
 0840404040404040404040404040004948484900404040404040404040404008
 0A4040404040404040404040404000494848490040404040404040404040400A
 08404040404040404040404040414C4C4C4C4C4C414040404040404040404008
 0941414141414141414141414100004948484900004141414141414141414109
 88898A8A898888898A8A898800000049484849000088898A8A898888898A8A89
 8586878786858586878786858400004948484900848586878786858586878786
 8182838382818182838382818000004948484900808182838382818182838382

1F Hex Values wide, 1.00 KB in size. Each Hex Value is a new 8x8 tile. To make a bush, in the map, put in the following:

 191A
 1B1C

That will produce a File:Graalbush.png


How Palettes and Properties work

Much like the Tileset of a map, Palettes are also 0x400 bytes. However, they define Horozonal Flip and color in a byte and basically correspond to the tile map. So 1,1 in the tile map would be 1,1 in the palette map, etc..

To make a simple green tile: In the tile of choice, put in 00 To make a simple flipped green tile: In the tile of choice, put in 20

Meaning, the first digit is the property, the second digit is the palette.