Difference between revisions of "Sprites"

From TLoZ: ALTTP Hacking Resources
Jump to: navigation, search
(Damage Table)
(Important Hex Addresses)
Line 1: Line 1:
 
==Important Hex Addresses==
 
==Important Hex Addresses==
 
===HP Table===
 
===HP Table===
The sprite HP table is located at $06B173. Each value is a single byte, so the offset is equal to the sprite id number as listed below. All values from $00 to $FF are viable for all sprites, but some cannot be damaged by any weapon without more complex tampering with ASM. The sprite's HP is loaded to an array at RAM address $7E0E50, where $10(decimal: 16) values can be loaded at once.
+
The sprite HP table is located at $06B173. Each value is a single byte, so the offset is equal to the sprite ID number as listed below. All values from $00 to $FF are viable for all sprites, but some cannot be damaged by any weapon without more complex tampering with ASM. The sprite's HP is loaded to an array at RAM address $7E0E50, where $10(decimal: 16) values can be loaded at once.
 
===Damage Table===
 
===Damage Table===
The sprite damage table is located at $06B266. Each value is a single byte, so the offset is equal to the sprite id number as listed below. There are a finite amount of [[Damage Types|damage types]] which all have a different set of damage values for each armor type. Not all damage types are compatible with all sprites.
+
The sprite damage table is located at $06B266. Each value is a single byte, so the offset is equal to the sprite ID number as listed below. There are a finite amount of [[Damage Types|damage types]] which all have a different set of damage values for each of the player's armor levels. Not all damage types are compatible with all sprites.
 +
===Dungeon Sprite Data===
 +
The pointer table for dungeon sprite data is located at $04D62E. The pointers are 2 byte local addresses. You can find the pointer to a given room's data by taking the room number, multiplying it by two and using that as an offset in this array. The sprite data begins at (and the first pointer points to) $04D92E.
  
 
==Sprites==
 
==Sprites==

Revision as of 05:53, 14 April 2016

Important Hex Addresses

HP Table

The sprite HP table is located at $06B173. Each value is a single byte, so the offset is equal to the sprite ID number as listed below. All values from $00 to $FF are viable for all sprites, but some cannot be damaged by any weapon without more complex tampering with ASM. The sprite's HP is loaded to an array at RAM address $7E0E50, where $10(decimal: 16) values can be loaded at once.

Damage Table

The sprite damage table is located at $06B266. Each value is a single byte, so the offset is equal to the sprite ID number as listed below. There are a finite amount of damage types which all have a different set of damage values for each of the player's armor levels. Not all damage types are compatible with all sprites.

Dungeon Sprite Data

The pointer table for dungeon sprite data is located at $04D62E. The pointers are 2 byte local addresses. You can find the pointer to a given room's data by taking the room number, multiplying it by two and using that as an offset in this array. The sprite data begins at (and the first pointer points to) $04D92E.

Sprites