If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working soon.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
Tactics Ogre: The Knight of Lodis/ROM map: Difference between revisions
Jump to navigation
Jump to search
m (Fixed Hire Shop data ordering) |
mNo edit summary |
||
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 | |||
|- | |||
| 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 | |||
|- | |||
|} | |||
=Data Structures= | =Data Structures= | ||
Line 9: | Line 33: | ||
*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 | |||
*Shop | ==Hire Shop Data Structure== | ||
*There are | *Hire Shop Data 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 49: | ||
!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== | ||
*Shop | *Item Shop Data 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 79: | ||
!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 89: | ||
|} | |} | ||
==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 | ||
*Shop | *Item Shop Data 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 111: | ||
==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 127: | ||
!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 || | | Unknown || 1 || 0x03 || uint8 || Unknown || Unknown entry. Always 0 | ||
|- | |- | ||
|} | |} | ||
{{Internal Data|game=Tactics Ogre: The Knight of Lodis}} | {{Internal Data|game=Tactics Ogre: The Knight of Lodis}} |
Revision as of 23:00, 24 October 2022
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 |
---|---|---|---|---|---|
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 |
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.
Hire Shop Data Structure
- Hire Shop Data 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
- Item Shop Data 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
- Item Shop Data 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 |
Internal Data for Tactics Ogre: The Knight of Lodis
| |
---|---|