Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.
The wiki has recently moved; please report any issues in Discord. Pardon the dust.
Tactics Ogre: The Knight of Lodis/ROM map: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
m (Xkeeper moved page Tactics Ogre: The Knight of Lodis:ROM map to Tactics Ogre: The Knight of Lodis/ROM map: normalize subpages and titles) |
||
(5 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
{{rommap|game=Tactics Ogre: The Knight of Lodis}} | {{rommap|game=Tactics Ogre: The Knight of Lodis}} | ||
=Overall ROM Map= | |||
{| style="border: 1px solid #aaaaaa; margin: auto; border-collapse: collapse;" cellspacing="0" cellpadding="3" border="1" | |||
|- style="background: #ccccff;" | |||
!Name | |||
!Start | |||
!End | |||
!Number of Entries | |||
!Size Per Entry | |||
!Total Size | |||
|- | |||
| Prizes/Random Treasures || 0x61D8A0 || 0x61D99F || 256 || 1 || 256 | |||
|- | |||
| Hire Shop || 0x622494 || 0x6224E3|| 10 || 8 || 80 | |||
|- | |||
| Item Shop || 0x6224E4 || 0x622583|| 40 || 4 || 160 | |||
|- | |||
| Secret Shop || 0x622584 || 0x62258B || 8 || 1 || 8 | |||
|- | |||
| Magic Shop || 0x62258C || 0x622617 || 35 || 4 || 140 | |||
|- | |||
| Unit List || 0x769130 || 0x76F66F || 35 || 32 || 810 | |||
|- | |||
|} | |||
=Data Structures= | =Data Structures= | ||
Line 9: | Line 37: | ||
*Many tables have an empty entry at the beginning for 'None'. Not all tables have this taken into account yet. If a table has an odd number of entries, this is likely the case. | *Many tables have an empty entry at the beginning for 'None'. Not all tables have this taken into account yet. If a table has an odd number of entries, this is likely the case. | ||
==Shop | |||
* | ==Prizes/Random Treasures Table== | ||
*There are | *Data starts at 0x0061D8A0 and ends at 0x0061D99F in the ROM. | ||
* | *There are 256 entries, 1 bytes in length each. | ||
*The first 108 bytes are random treasures (picked up when moving onto a map square). | |||
**Divided into 3 groups. Higher groups have better treasures. | |||
**The groups contain 10,13, and 13 entries respectively.(This needs to be confirmed) | |||
**When an item is picked up, a random entry is selected. | |||
**Each entry has 3 items, one for each of low, medium and high biorythm. | |||
*Next are Quest rewards, starting at 0x0061D90C | |||
**Divided into 10 groups of 8 items each | |||
**Lower groups are better. Group is improved by beating harder quests, faster. | |||
**Items are randomly selected among the group | |||
*Next are VS. Mode rewards, starting at 0x0061D94C | |||
**64 Items total | |||
**Unknown how this functions. | |||
==Hire Shop Data Structure== | |||
*Data starts at 0x00622494 and ends at 0x006224E3 in the ROM. | |||
*There are 10 entries, 8 bytes in length each. | |||
*It's unknown how the game decides which entry to use. (e.g. Mermaids only in Rana, Giants only later in the game, random class every time, etc...) | |||
*There is no termination data at the end of the table. The length must be hardcoded somewhere else. | |||
{| style="border: 1px solid #aaaaaa; margin: auto; border-collapse: collapse;" cellspacing="0" cellpadding="3" border="1" | {| style="border: 1px solid #aaaaaa; margin: auto; border-collapse: collapse;" cellspacing="0" cellpadding="3" border="1" | ||
Line 23: | Line 69: | ||
!Description | !Description | ||
|- | |- | ||
| | | Class ID || 1 || 0x00 || uint8 || 0x54 || Class to hire | ||
|- | |||
| Unknown || 1 || 0x01 || uint8 || Unknown || Unknown entry. Always 0 | |||
|- | |- | ||
| | | Cost || 2 || 0x02 || uint16 || ?? || Base cost to hire the unit | ||
|- | |||
| Per Level Cost|| 2 || 0x04 || uint16 || ?? || Adds this much gold to the cost per extra level bought | |||
|- | |- | ||
| Unknown || 1 || | | Unknown || 1 || 0x06 || uint8 || Unknown || Unknown entry. Always 0 | ||
|- | |- | ||
| Unknown || 1 || | | Unknown || 1 || 0x07 || uint8 || Unknown || Unknown entry. Always 0 | ||
|- | |- | ||
|} | |} | ||
==Shop | ==Item Shop Data Structure== | ||
* | *Data starts at 0x006224E4 and ends at 0x00622583 in the ROM. | ||
*There are | *There are 40 entries, 4 bytes in length each. | ||
*Prices are not stored in this table. They are stored in the | *Prices are not stored in this table. They are stored in the item table. | ||
* | *The last entry is a termination of (0xff,0xff,0x00,0x00) starting at 0x622580 | ||
{| style="border: 1px solid #aaaaaa; margin: auto; border-collapse: collapse;" cellspacing="0" cellpadding="3" border="1" | {| style="border: 1px solid #aaaaaa; margin: auto; border-collapse: collapse;" cellspacing="0" cellpadding="3" border="1" | ||
Line 49: | Line 99: | ||
!Description | !Description | ||
|- | |- | ||
| Availabilty || 1 || 0x00 || uint8 || ?? || How far into the story the | | Availabilty || 1 || 0x00 || uint8 || ?? || How far into the story the item first appears in the shop | ||
|- | |- | ||
| | | Item ID || 1 || 0x01 || uint8 || 0xBF || Item to be sold | ||
|- | |- | ||
| Unknown || 1 || 0x02 || uint8 || Unknown || Unknown entry. Always 0 | | Unknown || 1 || 0x02 || uint8 || Unknown || Unknown entry. Always 0 | ||
Line 59: | Line 109: | ||
|} | |} | ||
==Secret Shop | |||
==Secret Item Shop Data Structure== | |||
*The secret shop becomes available in Scabellum after recruiting Deneb | *The secret shop becomes available in Scabellum after recruiting Deneb | ||
* | *Data starts at 0x00622584 and ends at 0x0062258C in the ROM. | ||
*There are 7 entries, 1 bytes in length each. | *There are 7 entries, 1 bytes in length each. | ||
*Prices are not stored in this table. They are stored in the item table. | *Prices are not stored in this table. They are stored in the item table. | ||
*The last entry is a termination of (0xff) at 0x0062258C | |||
{| style="border: 1px solid #aaaaaa; margin: auto; border-collapse: collapse;" cellspacing="0" cellpadding="3" border="1" | {| style="border: 1px solid #aaaaaa; margin: auto; border-collapse: collapse;" cellspacing="0" cellpadding="3" border="1" | ||
Line 79: | Line 131: | ||
==Shop | ==Magic Shop Data Structure== | ||
*Shop | *Magic Shop Data data starts at 0x0062258C and ends at 0x622617 in the ROM. | ||
*There are | *There are 35 entries, 4 bytes in length each. | ||
* | *Prices are not stored in this table. They are stored in the abilities table. | ||
*If the spell is set to the index of an ability, it will not appear. | |||
*The last entry is a termination of (0xff,0xff,0x00,0x00) starting at 0x622614 | |||
{| style="border: 1px solid #aaaaaa; margin: auto; border-collapse: collapse;" cellspacing="0" cellpadding="3" border="1" | {| style="border: 1px solid #aaaaaa; margin: auto; border-collapse: collapse;" cellspacing="0" cellpadding="3" border="1" | ||
Line 93: | Line 147: | ||
!Description | !Description | ||
|- | |- | ||
| | | Availabilty || 1 || 0x00 || uint8 || ?? || How far into the story the spell first appears in the shop | ||
|- | |||
| Spell ID || 1 || 0x01 || uint8 || 0x7E || Spell to be sold | |||
|- | |- | ||
| Unknown || 1 || 0x02 || uint8 || Unknown || Unknown entry. Always 0 | | Unknown || 1 || 0x02 || uint8 || Unknown || Unknown entry. Always 0 | ||
Line 99: | Line 155: | ||
| Unknown || 1 || 0x03 || uint8 || Unknown || Unknown entry. Always 0 | | Unknown || 1 || 0x03 || uint8 || Unknown || Unknown entry. Always 0 | ||
|- | |- | ||
| | |} | ||
==Unit List Data Structure== | |||
*Data starts at 0x00769130 and ends at 0x0076F66F in the ROM. | |||
*There are 810 entries, 32 bytes in length each. | |||
*This table contains the information on each unit that appears in the game | |||
*It is not yet known how each map determines which units appear, however the units are listed in order. | |||
{| style="border: 1px solid #aaaaaa; margin: auto; border-collapse: collapse;" cellspacing="0" cellpadding="3" border="1" | |||
|- style="background: #ccccff;" | |||
!Name | |||
!Length | |||
!Offset | |||
!Type | |||
!Max Value | |||
!Description | |||
|- | |||
| Character || 1 || 0x00 || uint8 || ?? || If the unit is a special character. 0x01 if they are not. See the character table for more info. | |||
|- | |||
| Level || 1 || 0x01 || uint8 || 50 || Character level | |||
|- | |||
| Level Scaling || 1 || 0x02 || uint8 || 0x04 || Causes level to scale based on party level (needs confirmation) | |||
|- | |||
| Unknown || 1 || 0x03 || uint8 || 0xff || Unknown entry. Always 0xff | |||
|- | |||
| Item 1 || 1 || 0x04 || uint8 || 0xBF || Item in 1st slot | |||
|- | |||
| Item 2 || 1 || 0x05 || uint8 || 0xBF || Item in 2nd slot | |||
|- | |||
| Item 3 || 1 || 0x06 || uint8 || 0xBF || Item in 3rd slot | |||
|- | |||
| Item 4 || 1 || 0x07 || uint8 || 0xBF || Item in 4th slot | |||
|- | |- | ||
| | | Spell 1 || 1 || 0x08 || uint8 || 0x7F || Spell/ability in 1st slot | ||
|- | |- | ||
| | | Spell 2 || 1 || 0x09 || uint8 || 0x7F || Spell/ability in 2nd slot | ||
|- | |||
| Spell 3 || 1 || 0x0A || uint8 || 0x7F || Spell/ability in 3rd slot | |||
|- | |||
| Spell 4 || 1 || 0x0B || uint8 || 0x7F || Spell/ability in 4th slot | |||
|- | |||
| Emblems 1 || 1 || 0x0C || uint8 || 0xff || Bitfield of emblems in 1st row | |||
|- | |||
| Emblems 2 || 1 || 0x0D || uint8 || 0xff || Bitfield of emblems in 2nd row | |||
|- | |||
| Emblems 3 || 1 || 0x0E || uint8 || 0xff || Bitfield of emblems in 3rd row | |||
|- | |||
| Emblems 4 || 1 || 0x0F || uint8 || 0xff || Bitfield of emblems in 4th row | |||
|- | |||
| Class || 1 || 0x10 || uint8 || 0x54 || class. | |||
|- | |||
| Element || 1 || 0x11 || uint8 || 0x06 || Element. | |||
|- | |||
| Alignment || 1 || 0x12 || uint8 || 0x03 || Alignment. | |||
|- | |||
| Gender || 1 || 0x13 || uint8 || 0x03 || Gender. | |||
|- | |||
| Unknown || 1 || 0x14 || uint8 || Unknown || Unknown (Value Varies). | |||
|- | |||
| Drop || 1 || 0x15 || uint8 || 0xBF/0x7F || Spell or item to drop on defeat. | |||
|- | |||
| Drop Type || 1 || 0x16 || uint8 || 0x03 || 0=None, 2=Item, 3=Spell. | |||
|- | |||
| Unknown || 1 || 0x17 || uint8 || Unknown || Unknown (Value Varies). | |||
|- | |||
| Unknown || 1 || 0x18 || uint8 || Unknown || Unknown (Value Varies). | |||
|- | |||
| X Position || 1 || 0x19 || uint8 || Depends on map || X0,Y0 is top corner square. | |||
|- | |||
| Y Position || 1 || 0x1A || uint8 || Depends on map || X increases to bottom right, Y increases to bottom left | |||
|- | |||
| Unknown || 1 || 0x1B || uint8 || Unknown || Unknown (Value Varies 0-3). | |||
|- | |||
| Team/Role || 1 || 0x1C || uint8 || Unknown || 0=Ally, 1=Leader, 2=Guest 0x80=Enemy, 0x81=Enemy Leader | |||
|- | |||
| Unknown || 1 || 0x1D || uint8 || Unknown || Unknown (Value Varies 0-3). | |||
|- | |||
| Unknown || 1 || 0x1E || uint8 || Unknown || Unknown (Value Varies 0-3). | |||
|- | |||
| Unknown || 1 || 0x1F || uint8 || 0xff || Unknown (always 0xff). | |||
|- | |- | ||
|} | |} | ||
{{Internal Data|game=Tactics Ogre: The Knight of Lodis}} | {{Internal Data|game=Tactics Ogre: The Knight of Lodis}} |
Latest revision as of 02:42, 24 January 2024
The following article is a ROM map for Tactics Ogre: The Knight of Lodis.
Overall ROM Map
Name | Start | End | Number of Entries | Size Per Entry | Total Size |
---|---|---|---|---|---|
Prizes/Random Treasures | 0x61D8A0 | 0x61D99F | 256 | 1 | 256 |
Hire Shop | 0x622494 | 0x6224E3 | 10 | 8 | 80 |
Item Shop | 0x6224E4 | 0x622583 | 40 | 4 | 160 |
Secret Shop | 0x622584 | 0x62258B | 8 | 1 | 8 |
Magic Shop | 0x62258C | 0x622617 | 35 | 4 | 140 |
Unit List | 0x769130 | 0x76F66F | 35 | 32 | 810 |
Data Structures
- Information on classes is available on the page Tactics Ogre: The Knight of Lodis:Jobs.
- Information on items and equipment is available on the page Tactics Ogre: The Knight of Lodis:Items.
- Information on abilities is available on the page Tactics Ogre: The Knight of Lodis:Abilities.
- Some tables have unknown data bytes at the beginning/end, its possible these tables are offset from there true position.
- Many tables have an empty entry at the beginning for 'None'. Not all tables have this taken into account yet. If a table has an odd number of entries, this is likely the case.
Prizes/Random Treasures Table
- Data starts at 0x0061D8A0 and ends at 0x0061D99F in the ROM.
- There are 256 entries, 1 bytes in length each.
- The first 108 bytes are random treasures (picked up when moving onto a map square).
- Divided into 3 groups. Higher groups have better treasures.
- The groups contain 10,13, and 13 entries respectively.(This needs to be confirmed)
- When an item is picked up, a random entry is selected.
- Each entry has 3 items, one for each of low, medium and high biorythm.
- Next are Quest rewards, starting at 0x0061D90C
- Divided into 10 groups of 8 items each
- Lower groups are better. Group is improved by beating harder quests, faster.
- Items are randomly selected among the group
- Next are VS. Mode rewards, starting at 0x0061D94C
- 64 Items total
- Unknown how this functions.
Hire Shop Data Structure
- Data starts at 0x00622494 and ends at 0x006224E3 in the ROM.
- There are 10 entries, 8 bytes in length each.
- It's unknown how the game decides which entry to use. (e.g. Mermaids only in Rana, Giants only later in the game, random class every time, etc...)
- There is no termination data at the end of the table. The length must be hardcoded somewhere else.
Name | Length | Offset | Type | Max Value | Description |
---|---|---|---|---|---|
Class ID | 1 | 0x00 | uint8 | 0x54 | Class to hire |
Unknown | 1 | 0x01 | uint8 | Unknown | Unknown entry. Always 0 |
Cost | 2 | 0x02 | uint16 | ?? | Base cost to hire the unit |
Per Level Cost | 2 | 0x04 | uint16 | ?? | Adds this much gold to the cost per extra level bought |
Unknown | 1 | 0x06 | uint8 | Unknown | Unknown entry. Always 0 |
Unknown | 1 | 0x07 | uint8 | Unknown | Unknown entry. Always 0 |
Item Shop Data Structure
- Data starts at 0x006224E4 and ends at 0x00622583 in the ROM.
- There are 40 entries, 4 bytes in length each.
- Prices are not stored in this table. They are stored in the item table.
- The last entry is a termination of (0xff,0xff,0x00,0x00) starting at 0x622580
Name | Length | Offset | Type | Max Value | Description |
---|---|---|---|---|---|
Availabilty | 1 | 0x00 | uint8 | ?? | How far into the story the item first appears in the shop |
Item ID | 1 | 0x01 | uint8 | 0xBF | Item to be sold |
Unknown | 1 | 0x02 | uint8 | Unknown | Unknown entry. Always 0 |
Unknown | 1 | 0x03 | uint8 | Unknown | Unknown entry. Always 0 |
Secret Item Shop Data Structure
- The secret shop becomes available in Scabellum after recruiting Deneb
- Data starts at 0x00622584 and ends at 0x0062258C in the ROM.
- There are 7 entries, 1 bytes in length each.
- Prices are not stored in this table. They are stored in the item table.
- The last entry is a termination of (0xff) at 0x0062258C
Name | Length | Offset | Type | Max Value | Description |
---|---|---|---|---|---|
Item ID | 1 | 0x01 | uint8 | 0xBF | Item to be sold |
Magic Shop Data Structure
- Magic Shop Data data starts at 0x0062258C and ends at 0x622617 in the ROM.
- There are 35 entries, 4 bytes in length each.
- Prices are not stored in this table. They are stored in the abilities table.
- If the spell is set to the index of an ability, it will not appear.
- The last entry is a termination of (0xff,0xff,0x00,0x00) starting at 0x622614
Name | Length | Offset | Type | Max Value | Description |
---|---|---|---|---|---|
Availabilty | 1 | 0x00 | uint8 | ?? | How far into the story the spell first appears in the shop |
Spell ID | 1 | 0x01 | uint8 | 0x7E | Spell to be sold |
Unknown | 1 | 0x02 | uint8 | Unknown | Unknown entry. Always 0 |
Unknown | 1 | 0x03 | uint8 | Unknown | Unknown entry. Always 0 |
Unit List Data Structure
- Data starts at 0x00769130 and ends at 0x0076F66F in the ROM.
- There are 810 entries, 32 bytes in length each.
- This table contains the information on each unit that appears in the game
- It is not yet known how each map determines which units appear, however the units are listed in order.
Name | Length | Offset | Type | Max Value | Description |
---|---|---|---|---|---|
Character | 1 | 0x00 | uint8 | ?? | If the unit is a special character. 0x01 if they are not. See the character table for more info. |
Level | 1 | 0x01 | uint8 | 50 | Character level |
Level Scaling | 1 | 0x02 | uint8 | 0x04 | Causes level to scale based on party level (needs confirmation) |
Unknown | 1 | 0x03 | uint8 | 0xff | Unknown entry. Always 0xff |
Item 1 | 1 | 0x04 | uint8 | 0xBF | Item in 1st slot |
Item 2 | 1 | 0x05 | uint8 | 0xBF | Item in 2nd slot |
Item 3 | 1 | 0x06 | uint8 | 0xBF | Item in 3rd slot |
Item 4 | 1 | 0x07 | uint8 | 0xBF | Item in 4th slot |
Spell 1 | 1 | 0x08 | uint8 | 0x7F | Spell/ability in 1st slot |
Spell 2 | 1 | 0x09 | uint8 | 0x7F | Spell/ability in 2nd slot |
Spell 3 | 1 | 0x0A | uint8 | 0x7F | Spell/ability in 3rd slot |
Spell 4 | 1 | 0x0B | uint8 | 0x7F | Spell/ability in 4th slot |
Emblems 1 | 1 | 0x0C | uint8 | 0xff | Bitfield of emblems in 1st row |
Emblems 2 | 1 | 0x0D | uint8 | 0xff | Bitfield of emblems in 2nd row |
Emblems 3 | 1 | 0x0E | uint8 | 0xff | Bitfield of emblems in 3rd row |
Emblems 4 | 1 | 0x0F | uint8 | 0xff | Bitfield of emblems in 4th row |
Class | 1 | 0x10 | uint8 | 0x54 | class. |
Element | 1 | 0x11 | uint8 | 0x06 | Element. |
Alignment | 1 | 0x12 | uint8 | 0x03 | Alignment. |
Gender | 1 | 0x13 | uint8 | 0x03 | Gender. |
Unknown | 1 | 0x14 | uint8 | Unknown | Unknown (Value Varies). |
Drop | 1 | 0x15 | uint8 | 0xBF/0x7F | Spell or item to drop on defeat. |
Drop Type | 1 | 0x16 | uint8 | 0x03 | 0=None, 2=Item, 3=Spell. |
Unknown | 1 | 0x17 | uint8 | Unknown | Unknown (Value Varies). |
Unknown | 1 | 0x18 | uint8 | Unknown | Unknown (Value Varies). |
X Position | 1 | 0x19 | uint8 | Depends on map | X0,Y0 is top corner square. |
Y Position | 1 | 0x1A | uint8 | Depends on map | X increases to bottom right, Y increases to bottom left |
Unknown | 1 | 0x1B | uint8 | Unknown | Unknown (Value Varies 0-3). |
Team/Role | 1 | 0x1C | uint8 | Unknown | 0=Ally, 1=Leader, 2=Guest 0x80=Enemy, 0x81=Enemy Leader |
Unknown | 1 | 0x1D | uint8 | Unknown | Unknown (Value Varies 0-3). |
Unknown | 1 | 0x1E | uint8 | Unknown | Unknown (Value Varies 0-3). |
Unknown | 1 | 0x1F | uint8 | 0xff | Unknown (always 0xff). |
Internal Data for Tactics Ogre: The Knight of Lodis
| |
---|---|