This page contains notes for the game Great Greed.
Structural definitions for the game's maps start at DE2C. Each definition is in the following format:
- Byte 0: unknown
- Byte 1: map archetype, determining graphics, metatiles?, map chunks -- 0 = overworld, 5 = indoors, others
- Byte 2: width (in 16x16 chunks of metatiles)
- Byte 3: height (in 16x16 chunks of metatiles)
- The next (width * height) bytes are chunk IDs that define the actual map structure (left-to-right, top-to-bottom?). Each map archetype has its own set of chunks -- I haven't looked into where/how those are defined.
Partial list of defined map structures:
DE2C world map 1 DE34 world map 2 DE41 world map 3 DE51 world map 4 DE61 world map 5 DE71 world map 6 DE7E world map 7 DE8E world map 8 DE9B world map 9 DEA7 ??? maybe something from the ending? DEB4 town 1 DEBC town 2 DEC6 town 3 DECE town 4 DED6 town 5 DEE3 town 6 DEEB town 7 DEF3 town 8 DEFB town 9 DF03 town 10 DF0B town 11 DF13 town 12 DF1D town 13 DF25 town 14 DF2D town 15 DF35 town 16 DF3F town 17 DF49 ??? ending? 1x1 chunk DF4E display board for election results DF53 display board for laws DF58 "camp" village DF60 royal refuge castle 1f DF68 house/room DF72 royal refuge castle 2f DF7A royal refuge castle throne room DF84 house/room (this is a lot bigger than it needs to be) DF8E store DF98 inn DFA2 upstairs DFAC "carpet" room DFB6 "stage" room DFC0 genealogy guy's house DFCC tall carpet room DFD6 law board inside DFE0 jail upstairs DFEA jail downstairs DFF2 ??? "broken" store? DFFF tent inside E009 two-door w/ stairs E013 house w/ bookshelves E01D "throne" room passage w/ door E029 "throne" room E033 wide carpet room E03D wide bedroom E047 wide bedroom, fewer beds E051 bedroom w/ back door E05B wide carpeted room E065 room w/ upstairs E06F tower ... E2B3 dungeon 1 E2BF dungeon 2 E2CB dungeon 3 E2D8 dungeon 4 E2E2 dungeon 5 E2EA dungeon 6 E2FA dungeon 7 E30A dungeon 8 E31A dungeon 9 ...
As you'd expect from an RPG of any real complexity, the game has a fairly elaborate scripting system. Aside from dialogue, scripts are used to load and transition between maps; the object layout, starting player positions, etc. for a map are all set up by the script that loads it.
- ROM 2EE33 is part of the script that loads the second "mountain inn" in the US version; it's a pointer to the structure definition to be loaded from bank 3. The immediately following commands set up the objects for the map.
C2B0+ = passability of tiles surrounding player FF = impassable, 00 = passable - freeze 9 bytes for walk through walls C2D1 = player tile x-position C2D2 = player tile y-position C2E2 = target map archetype on map load C2E5 = random encounter "group"? (0 = no encounters?) C361-C362 = pointer to currently inactive/yielded script? C900 = script variables? C960 = script stack?