Difference between revisions of "Sprites"

From TLoZ: ALTTP Hacking Resources
Jump to: navigation, search
m (Important Hex Addresses)
 
(24 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
== Drawing ==
 +
Sprites vary on how they are drawn to the screen. 8{{x}}8 and 16{{x}}16 sprites tend to use {{hex|Sprite_PrepAndDrawSingleLarge}} to draw. Larger sprites uses their custom OAM.
 +
 
==Important Hex Addresses==
 
==Important Hex Addresses==
===HP Table===
+
===Sprite Stats And Properties===
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.
+
{{See|Sprite Properties}}
===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 armor type. Not all damage types are compatible with all sprites.
+
===Dungeon Sprite Data===
 +
* {{$|04D62E}} = Pointer Table, 2 byte local addresses, indexed by room ID
 +
* {{$|04D92E}} = Data
 +
 
 +
===Overworld Sprite Data===
 +
There are separate pointer tables for each phase of the game. The "phase of the game" refers to the byte located at {{$|7EF3C5}}.
 +
 
 +
====Phase 0/1====
 +
* {{$|04C881}} = Pointer Table, 2 byte local addresses, indexed by screen ID
 +
*This is the stage of the game whilst rain still falls
 +
*Only has values only for the light world screens, thus dark world screens will roll over to the light world data from the following table and of course be incorrect.
 +
 
 +
====Phase 2====
 +
* {{$|04C901}} = Pointer Table, 2 byte local addresses, indexed by screen ID
 +
*Phase 2 begins when Zelda is rescued and given protection by the Sage in the Sanctuary
 +
====Phase 3====
 +
* {{$|04CA21}} = Pointer Table, 2 byte local addresses, indexed by screen ID
 +
*Phase 3 begins after the player has defeated Agahnim for the first time.
 +
 
 +
===Sprite Data Format===
 +
*First Byte: Stored to {{$|FB3}}. Not sure what the purpose of that is yet.
 +
After the first byte, you will see 3 byte clusters that break down thus:
 +
 
 +
{|{{Prettytable}}
 +
! scope="col"| Bit
 +
! scope="col"| First Byte
 +
! scope="col"| Second Byte
 +
! scope="col"| Third Byte
 +
|-
 +
! scope="row"| 7
 +
| If set, the sprite is on BG2, if not it's on BG1
 +
|rowspan="3"| If all these bits are set then this is an Overlord, otherwise it's a normal sprite. If only some of them are set they can be used to generate a subtype, stored at {{$|E30}}, X.
 +
| rowspan="8"|Sprite or Overlord type. If a sprite, this will get loaded into a slot at {{$|E20}}, X. If an Overlord, will get loaded to {{$|B00}}, X.
 +
|-
 +
! scope="row"| 6
 +
| rowspan="2"| If these are set, they will be used to generate a subtype, stored to {{$|E30}}, X.
 +
|-
 +
! scope="row"| 5
 +
|-
 +
! scope="row"| 4
 +
| rowspan="5"| X coordinate (in pixels from the far left, starting at 0) of the sprite divided by 16.
 +
| rowspan="5"| Y coordinate (in pixels from the top, starting at 0) of the sprite divided by 16.
 +
|-
 +
! scope="row"| 3
 +
|-
 +
! scope="row"| 2
 +
|-
 +
! scope="row"| 1
 +
|-
 +
! scope="row"| 0
 +
|}
  
 
==Sprites==
 
==Sprites==
 +
{|{{Prettytable}}
 +
!Value
 +
!Description
 +
|-
 +
|{{$|00}}
 +
|[[Raven]]
 +
|-
 +
|{{$|01}}
 +
|[[Vulture]]
 +
|-
 +
|{{$|02}}
 +
|[[Flying Stalfos Head]]
 +
|-
 +
|{{$|03}}
 +
|[[Sprite $03|Empty]]
 +
|-
 +
|{{$|04}}
 +
|[[Pull Switch (Good)]]
 +
|-
 +
|{{$|05}}
 +
|[[Sprite $05|Pull Switch (Unused)]]
 +
|-
 +
|{{$|06}}
 +
|[[Pull Switch (Bad)]]
 +
|-
 +
|{{$|07}}
 +
|[[Sprite $07|Pull Switch (Unused)]]
 +
|-
 +
|{{$|08}}
 +
|[[Octorok (One Way)]]
 +
|-
 +
|{{$|09}}
 +
|[[Moldorm (Boss)]]
 +
|-
 +
|{{$|0A}}
 +
|[[Octorok (Four Way)]]
 +
|-
 +
|{{$|0B}}
 +
|[[Chicken]]
 +
|-
 +
|{{$|0C}}
 +
|[[Octorok (?)]]
 +
|-
 +
|{{$|0D}}
 +
|[[Buzzblob]]
 +
|-
 +
|{{$|0E}}
 +
|[[Snapdragon]]
 +
|-
 +
|{{$|0F}}
 +
|[[Octoballoon]]
 +
|-
 +
|{{$|10}}
 +
|[[Octoballoon Hatchlings]]
 +
|-
 +
|{{$|11}}
 +
|[[Hinox]]
 +
|-
 +
|{{$|12}}
 +
|[[Moblin]]
 +
|-
 +
|{{$|13}}
 +
|[[Mini Helmasaur]]
 +
|-
 +
|{{$|14}}
 +
|[[Gargoyle's Domain Gate]]
 +
|-
 +
|{{$|15}}
 +
|[[Antifairy]]
 +
|-
 +
|{{$|16}}
 +
|[[Sahasrahla / Aginah]]
 +
|-
 +
|{{$|17}}
 +
|[[Bush Hoarder]]
 +
|-
 +
|{{$|18}}
 +
|[[Mini Moldorm]]
 +
|-
 +
|{{$|19}}
 +
|[[Poe]]
 +
|-
 +
|{{$|1A}}
 +
|[[Dwarves]]
 +
|-
 +
|{{$|1B}}
 +
|Arrow in wall?
 +
|-
 +
|{{$|1C}}
 +
|[[Statue (Sprite)|Statue]]
 +
|-
 +
|{{$|1D}}
 +
|[[Weathervane]]
 +
|-
 +
|{{$|1E}}
 +
|[[Crystal Switch]]
 +
|-
 +
|{{$|1F}}
 +
|[[Bug-Catching Kid]]
 +
|-
 +
|{{$|20}}
 +
|[[Sluggula]]
 +
|-
 +
|{{$|21}}
 +
|[[Push Switch]]
 +
|-
 +
|{{$|22}}
 +
|[[Ropa]]
 +
|-
 +
|{{$|23}}
 +
|[[Red Bari]]
 +
|-
 +
|{{$|24}}
 +
|[[Blue Bari]]
 +
|-
 +
|{{$|25}}
 +
|[[Talking Tree]]
 +
|-
 +
|{{$|26}}
 +
|[[Hardhat Beetle]]
 +
|-
 +
|{{$|27}}
 +
|[[Deadrock]]
 +
|-
 +
|{{$|28}}
 +
|[[Storytellers]]
 +
|-
 +
|{{$|29}}
 +
|Blind Hideout attendant
 +
|-
 +
|{{$|2A}}
 +
|[[Sweeping Lady]]
 +
|-
 +
|{{$|2B}}
 +
|[[Sprite $2B|Multipurpose Sprite]]
 +
|-
 +
|{{$|2C}}
 +
|[[Lumberjacks]]
 +
|-
 +
|{{$|2D}}
 +
|Telepathic stones? (No idea what this actually is, likely unused)
 +
|-
 +
|{{$|2E}}
 +
|Flute Boy's Notes
 +
|-
 +
|{{$|2F}}
 +
|[[Race HP NPCs]]
 +
|-
 +
|{{$|30}}
 +
|Person?
 +
|-
 +
|{{$|31}}
 +
|[[Fortune Teller]]
 +
|-
 +
|{{$|32}}
 +
|[[Angry Brothers]]
 +
|-
 +
|{{$|33}}
 +
|[[Pull For Rupees Sprite]]
 +
|-
 +
|{{$|34}}
 +
|[[Scared Girl 2]]
 +
|-
 +
|{{$|35}}
 +
|[[Innkeeper]]
 +
|-
 +
|{{$|36}}
 +
|[[Witch]]
 +
|-
 +
|{{$|37}}
 +
|[[Waterfall]]
 +
|-
 +
|{{$|38}}
 +
|[[Arrow Target]]
 +
|-
 +
|{{$|39}}
 +
|[[Average Middle-Aged Man]]
 +
|-
 +
|{{$|3A}}
 +
|[[Half Magic Bat]]
 +
|-
 +
|{{$|3B}}
 +
|[[Dash Item]]
 +
|-
 +
|{{$|3C}}
 +
|[[Village Kid]]
 +
|-
 +
|{{$|3D}}
 +
|Signs? Chicken lady also showed up / Scared ladies outside houses.
 +
|-
 +
|{{$|3E}}
 +
|[[Rock Hoarder]]
 +
|-
 +
|{{$|3F}}
 +
|[[Tutorial Soldier]]
 +
|-
 +
|{{$|40}}
 +
|[[Lightning Lock]]
 +
|-
 +
|{{$|41}}
 +
|[[Blue Sword Soldier]] / Used by guards to detect player
 +
|-
 +
|{{$|42}}
 +
|[[Green Sword Soldier]]
 +
|-
 +
|{{$|43}}
 +
|[[Red Spear Soldier]]
 +
|-
 +
|{{$|44}}
 +
|[[Assault Sword Soldier]]
 +
|-
 +
|{{$|45}}
 +
|[[Green Spear Soldier]]
 +
|-
 +
|{{$|46}}
 +
|[[Blue Archer]]
 +
|-
 +
|{{$|47}}
 +
|[[Green Archer]]
 +
|-
 +
|{{$|48}}
 +
|[[Red Javelin Soldier]]
 +
|-
 +
|{{$|49}}
 +
|[[Red Javelin Soldier 2]]
 +
|-
 +
|{{$|4A}}
 +
|[[Red Bomb Soldiers]]
 +
|-
 +
|{{$|4B}}
 +
|[[Green Soldier Recruits]]
 +
|-
 +
|{{$|4C}}
 +
|[[Geldman]]
 +
|-
 +
|{{$|4D}}
 +
|[[Rabbit]]
 +
|-
 +
|{{$|4E}}
 +
|[[Popo]]
 +
|-
 +
|{{$|4F}}
 +
|[[Popo 2]]
 +
|-
 +
|{{$|50}}
 +
|[[Cannon Balls]]
 +
|-
 +
|{{$|51}}
 +
|[[Armos]]
 +
|-
 +
|{{$|52}}
 +
|[[Giant Zora]]
 +
|-
 +
|{{$|53}}
 +
|[[Armos Knights (Boss)]]
 +
|-
 +
|{{$|54}}
 +
|[[Lanmolas (Boss)]]
 +
|-
 +
|{{$|55}}
 +
|[[Fireball Zora]]
 +
|-
 +
|{{$|56}}
 +
|[[Walking Zora]]
 +
|-
 +
|{{$|57}}
 +
|[[Desert Palace Barriers]]
 +
|-
 +
|{{$|58}}
 +
|[[Crab]]
 +
|-
 +
|{{$|59}}
 +
|[[Bird]]
 +
|-
 +
|{{$|5A}}
 +
|[[Squirrel]]
 +
|-
 +
|{{$|5B}}
 +
|[[Spark (Left to Right)]]
 +
|-
 +
|{{$|5C}}
 +
|[[Spark (Right to Left)]]
 +
|-
 +
|{{$|5D}}
 +
|Roller (vertical moving)
 +
|-
 +
|{{$|5E}}
 +
|Roller (vertical moving)
 +
|-
 +
|{{$|5F}}
 +
|Roller
 +
|-
 +
|{{$|60}}
 +
|Roller (horizontal moving)
 +
|-
 +
|{{$|61}}
 +
|[[Beamos]]
 +
|-
 +
|{{$|62}}
 +
|[[Master Sword]]
 +
|-
 +
|{{$|63}}
 +
|[[Devalant (Non-shooter)]]
 +
|-
 +
|{{$|64}}
 +
|[[Devalant (Shooter)]]
 +
|-
 +
|{{$|65}}
 +
|[[Shooting Gallery Proprietor]]
 +
|-
 +
|{{$|66}}
 +
|[[Moving Cannon Ball Shooters (Right)]]
 +
|-
 +
|{{$|67}}
 +
|[[Moving Cannon Ball Shooters (Left)]]
 +
|-
 +
|{{$|68}}
 +
|[[Moving Cannon Ball Shooters (Down)]]
 +
|-
 +
|{{$|69}}
 +
|[[Moving Cannon Ball Shooters (Up)]]
 +
|-
 +
|{{$|6A}}
 +
|[[Ball N' Chain Trooper]]
 +
|-
 +
|{{$|6B}}
 +
|[[Cannon Soldier]]
 +
|-
 +
|{{$|6C}}
 +
|[[Mirror Portal]]
 +
|-
 +
|{{$|6D}}
 +
|[[Rat]]
 +
|-
 +
|{{$|6E}}
 +
|[[Rope]]
 +
|-
 +
|{{$|6F}}
 +
|[[Keese]]
 +
|-
 +
|{{$|70}}
 +
|[[Helmasaur King Fireball]]
 +
|-
 +
|{{$|71}}
 +
|[[Leever]]
 +
|-
 +
|{{$|72}}
 +
|Activator for the ponds (where you throw in items)
 +
|-
 +
|{{$|73}}
 +
|[[Uncle / Priest]]
 +
|-
 +
|{{$|74}}
 +
|[[Running Man]]
 +
|-
 +
|{{$|75}}
 +
|[[Bottle Salesman]]
 +
|-
 +
|{{$|76}}
 +
|[[Princess Zelda]]
 +
|-
 +
|{{$|77}}
 +
|[[Antifairy (Alternate)]]
 +
|-
 +
|{{$|78}}
 +
|[[Village Elder]]
 +
|-
 +
|{{$|79}}
 +
|[[Bee]]
 +
|-
 +
|{{$|7A}}
 +
|[[Agahnim]]
 +
|-
 +
|{{$|7B}}
 +
|[[Agahnim Energy Ball]]
 +
|-
 +
|{{$|7C}}
 +
|[[Hyu]]
 +
|-
 +
|{{$|7D}}
 +
|[[Big Spike Trap]]
 +
|-
 +
|{{$|7E}}
 +
|[[Guruguru Bar (Clockwise)]]
 +
|-
 +
|{{$|7F}}
 +
|[[Guruguru Bar (Counter Clockwise)]]
 +
|-
 +
|{{$|80}}
 +
|[[Winder]]
 +
|-
 +
|{{$|81}}
 +
|[[Water Tektite]]
 +
|-
 +
|{{$|82}}
 +
|[[Antifairy Circle]]
 +
|-
 +
|{{$|83}}
 +
|[[Green Eyegore]]
 +
|-
 +
|{{$|84}}
 +
|[[Red Eyegore]]
 +
|-
 +
|{{$|85}}
 +
|[[Yellow Stalfos]]
 +
|-
 +
|{{$|86}}
 +
|[[Kodongos]]
 +
|-
 +
|{{$|87}}
 +
|[[Flames]]
 +
|-
 +
|{{$|88}}
 +
|[[Mothula (Boss)]]
 +
|-
 +
|{{$|89}}
 +
|[[Mothula's Beam]]
 +
|-
 +
|{{$|8A}}
 +
|[[Spike Trap]]
 +
|-
 +
|{{$|8B}}
 +
|[[Gibdo]]
 +
|-
 +
|{{$|8C}}
 +
|[[Arrghus (Boss)]]
 +
|-
 +
|{{$|8D}}
 +
|Arrghus spawn
 +
|-
 +
|{{$|8E}}
 +
|[[Terrorpin]]
 +
|-
 +
|{{$|8F}}
 +
|[[Slime]]
 +
|-
 +
|{{$|90}}
 +
|[[Wallmaster]]
 +
|-
 +
|{{$|91}}
 +
|[[Stalfos Knight]]
 +
|-
 +
|{{$|92}}
 +
|[[Helmasaur King]]
 +
|-
 +
|{{$|93}}
 +
|[[Bumper]]
 +
|-
 +
|{{$|94}}
 +
|Swimmers
 +
|-
 +
|{{$|95}}
 +
|[[Eye Laser (Right)]]
 +
|-
 +
|{{$|96}}
 +
|[[Eye Laser (Left)]]
 +
|-
 +
|{{$|97}}
 +
|[[Eye Laser (Down)]]
 +
|-
 +
|{{$|98}}
 +
|[[Eye Laser (Up)]]
 +
|-
 +
|{{$|99}}
 +
|[[Pengator]]
 +
|-
 +
|{{$|9A}}
 +
|[[Kyameron]]
 +
|-
 +
|{{$|9B}}
 +
|[[Wizzrobe]]
 +
|-
 +
|{{$|9C}}
 +
|Tadpoles
 +
|-
 +
|{{$|9D}}
 +
|Tadpoles
 +
|-
 +
|{{$|9E}}
 +
|[[Ostrich (Haunted Grove)]]
 +
|-
 +
|{{$|9F}}
 +
|[[Flute]]
 +
|-
 +
|{{$|A0}}
 +
|[[Birds (Haunted Grove)]]
 +
|-
 +
|{{$|A1}}
 +
|[[Freezor]]
 +
|-
 +
|{{$|A2}}
 +
|[[Kholdstare (Boss)]]
 +
|-
 +
|{{$|A3}}
 +
|[[Kholdstare's Shell]]
 +
|-
 +
|{{$|A4}}
 +
|[[Falling Ice]]
 +
|-
 +
|{{$|A5}}
 +
|[[Blue Zazak]]
 +
|-
 +
|{{$|A6}}
 +
|[[Red Zazak]]
 +
|-
 +
|{{$|A7}}
 +
|[[Stalfos]]
 +
|-
 +
|{{$|A8}}
 +
|Bomber Flying Creatures from Darkworld
 +
|-
 +
|{{$|A9}}
 +
|Bomber Flying Creatures from Darkworld
 +
|-
 +
|{{$|AA}}
 +
|[[Pikit]]
 +
|-
 +
|{{$|AB}}
 +
|[[Maiden]]
 +
|-
 +
|{{$|AC}}
 +
|[[Apple]]
 +
|-
 +
|{{$|AD}}
 +
|[[Lost Old Man]]
 +
|-
 +
|{{$|AE}}
 +
|Down Pipe
 +
|-
 +
|{{$|AF}}
 +
|Up Pipe
 +
|-
 +
|{{$|B0}}
 +
|Right Pip
 +
|-
 +
|{{$|B1}}
 +
|Left Pipe
 +
|-
 +
|{{$|B2}}
 +
|Good bee again?
 +
|-
 +
|{{$|B3}}
 +
|[[Hylian Inscription]]
 +
|-
 +
|{{$|B4}}
 +
|Thief's chest (not the one that follows you, the one that you grab from the DW smithy house)
 +
|-
 +
|{{$|B5}}
 +
|[[Bomb Salesman]]
 +
|-
 +
|{{$|B6}}
 +
|[[Kiki]]
 +
|-
 +
|{{$|B7}}
 +
|Maiden following you in Blind Dungeon
 +
|-
 +
|{{$|B8}}
 +
|[[Monologue Testing Sprite]]
 +
|-
 +
|{{$|B9}}
 +
|Feuding Friends on Death Mountain
 +
|-
 +
|{{$|BA}}
 +
|[[Whirlpool]]
 +
|-
 +
|{{$|BB}}
 +
|Salesman / chestgame guy / 300 rupee giver guy / Chest game thief
 +
|-
 +
|{{$|BC}}
 +
|Drunk in the inn
 +
|-
 +
|{{$|BD}}
 +
|[[Vitreous (Large Eyeball)]]
 +
|-
 +
|{{$|BE}}
 +
|[[Vitreous (Small Eyeball)]]
 +
|-
 +
|{{$|BF}}
 +
|[[Vitreous' Lightning]]
 +
|-
 +
|{{$|C0}}
 +
|Monster in Lake of Ill Omen / Quake Medallion
 +
|-
 +
|{{$|C1}}
 +
|Agahnim teleporting Zelda to dark world
 +
|-
 +
|{{$|C2}}
 +
|[[Boulders]]
 +
|-
 +
|{{$|C3}}
 +
|[[Gibo]]
 +
|-
 +
|{{$|C4}}
 +
|[[Thief]]
 +
|-
 +
|{{$|C5}}
 +
|[[Medusa]]
 +
|-
 +
|{{$|C6}}
 +
|Four Way Fireball Spitters (spit when you use your sword)
 +
|-
 +
|{{$|C7}}
 +
|[[Hokku-Bokku]]
 +
|-
 +
|{{$|C8}}
 +
|Big Fairy who heals you
 +
|-
 +
|{{$|C9}}
 +
|[[Tektite]]
 +
|-
 +
|{{$|CA}}
 +
|[[Chain Chomp]]
 +
|-
 +
|{{$|CB}}
 +
|[[Trinexx]]
 +
|-
 +
|{{$|CC}}
 +
|Another part of trinexx
 +
|-
 +
|{{$|CD}}
 +
|Yet another part of trinexx
 +
|-
 +
|{{$|CE}}
 +
|[[Blind The Thief (Boss)]]
 +
|-
 +
|{{$|CF}}
 +
|[[Swamola]]
 +
|-
 +
|{{$|D0}}
 +
|[[Lynel]]
 +
|-
 +
|{{$|D1}}
 +
|[[Bunny Beam]]
 +
|-
 +
|{{$|D2}}
 +
|Flopping fish
 +
|-
 +
|{{$|D3}}
 +
|[[Stal]]
 +
|-
 +
|{{$|D4}}
 +
|[[Landmine]]
 +
|-
 +
|{{$|D5}}
 +
|[[Digging Game Proprietor]]
 +
|-
 +
|{{$|D6}}
 +
|[[Ganon]]
 +
|-
 +
|{{$|D7}}
 +
|Copy of Ganon, except invincible?
 +
|-
 +
|{{$|D8}}
 +
|[[Heart]]
 +
|-
 +
|{{$|D9}}
 +
|[[Green Rupee]]
 +
|-
 +
|{{$|DA}}
 +
|[[Blue Rupee]]
 +
|-
 +
|{{$|DB}}
 +
|[[Red Rupee]]
 +
|-
 +
|{{$|DC}}
 +
|[[Bomb Refill (1)]]
 +
|-
 +
|{{$|DD}}
 +
|[[Bomb Refill (4)]]
 +
|-
 +
|{{$|DE}}
 +
|[[Bomb Refill (8)]]
 +
|-
 +
|{{$|DF}}
 +
|[[Small Magic Refill]]
 +
|-
 +
|{{$|E0}}
 +
|[[Full Magic Refill]]
 +
|-
 +
|{{$|E1}}
 +
|[[Arrow Refill (5)]]
 +
|-
 +
|{{$|E2}}
 +
|[[Arrow Refill (10)]]
 +
|-
 +
|{{$|E3}}
 +
|[[Fairy]]
 +
|-
 +
|{{$|E4}}
 +
|[[Key]]
 +
|-
 +
|{{$|E5}}
 +
|[[Big Key]]
 +
|-
 +
|{{$|E6}}
 +
|[[Shield]]
 +
|-
 +
|{{$|E7}}
 +
|[[Mushroom]]
 +
|-
 +
|{{$|E8}}
 +
|[[Fake Master Sword]]
 +
|-
 +
|{{$|E9}}
 +
|Magic Shop dude / His items, including the magic powder
 +
|-
 +
|{{$|EA}}
 +
|[[Heart Container]]
 +
|-
 +
|{{$|EB}}
 +
|[[Heart Piece]]
 +
|-
 +
|{{$|EC}}
 +
|Bushes
 +
|-
 +
|{{$|ED}}
 +
|[[Cane Of Somaria Platform]]
 +
|-
 +
|{{$|EE}}
 +
|[[Mantle]]
 +
|-
 +
|{{$|EF}}
 +
|[[Sprite $EF|Cane of Somaria Platform (Unused)]]
 +
|-
 +
|{{$|F0}}
 +
|[[Sprite $F0|Cane of Somaria Platform (Unused)]]
 +
|-
 +
|{{$|F1}}
 +
|[[Sprite $F1|Cane of Somaria Platform (Unused)]]
 +
|-
 +
|{{$|F2}}
 +
|[[Medallion Tablet]]
 +
|}
  
*$00 - [[Raven]]
+
{{toc}}
*$01 - [[Vulture]]
 
*$02 - [[Flying Stalfos Head]]
 
*$03 - [[Sprite $03|Empty]]
 
*$04 - [[Pull Switch (Good)]]
 
*$05 - [[Sprite $05|Pull Switch (Unused)]]
 
*$06 - [[Pull Switch (Bad)]]
 
*$07 - [[Sprite $07|Pull Switch (Unused)]]
 
*$08 - [[Octorok (One Way)]]
 
*$09 - [[Moldorm (Boss)]]
 
*$0A - [[Octorok (Four Way)]]
 
*$0B - [[Chicken]]
 
*$0C - [[Octorok (?)]]
 
*$0D - [[Buzzblob]]
 
*$0E - [[Snapdragon]]
 
*$0F - [[Octoballoon]]
 
*$10 - Small things from the exploder
 
*$11 - [[Hinox]]
 
*$12 - [[Moblin]]
 
*$13 - [[Mini Helmasaur]]
 
*$14 - Gargoyle's Domain Gate
 
*$15 - [[Antifairy]]
 
*$16 - [[Sahasrahla / Aginah]]
 
*$17 - Water Bubbles?
 
*$18 - [[Mini Moldorm]]
 
*$19 - [[Poe]]
 
*$1A - [[Dwarves]]
 
*$1B - Arrow in wall?
 
*$1C - [[Statue (Sprite)|Statue]]
 
*$1D - [[Weathervane]]
 
*$1E - [[Crystal Switch]]
 
*$1F - [[Bug-Catching Kid]]
 
*$20 - [[Sluggula]]
 
*$21 - [[Push Switch]]
 
*$22 - [[Ropa]]
 
*$23 - [[Red Bari]]
 
*$24 - [[Blue Bari]]
 
*$25 - Tree you can talk to?
 
*$26 - [[Hardhat Beetle]]
 
*$27 - [[Deadrock]]
 
*$28 - [[Storytellers]]
 
*$29 - Blind Hideout attendant
 
*$2A - [[Sweeping Lady]]
 
*$2B - [[Sprite $2B|Multipurpose Sprite]]
 
*$2C - [[Lumberjacks]]
 
*$2D - Telepathic stones?
 
*$2E - Flute Boy�s Notes
 
*$2F - [[Race HP NPCs]]
 
*$30 - Person?
 
*$31 - Fortune Teller / Dwarf swordsmith
 
*$32 - ??? (something with a turning head)
 
*$33 - [[Pull For Rupees Sprite]]
 
*$34 - [[Scared Girl 2]]
 
*$35 - [[Innkeeper]]
 
*$36 - [[Witch]]
 
*$37 - [[Waterfall]]
 
*$38 - [[Arrow Target]]
 
*$39 - [[Average Middle-Aged Man]]
 
*$3A - [[Half Magic Bat]]
 
*$3B - [[Dash Item]]
 
*$3C - Kid in village near the trough
 
*$3D - Signs? Chicken lady also showed up / Scared ladies outside houses.
 
*$3E - [[Rock Hoarder]]
 
*$3F - Tutorial Soldiers from beginning of game
 
*$40 - [[Lightning Lock]]
 
*$41 - [[Blue Sword Soldier]] / Used by guards to detect player
 
*$42 - [[Green Sword Soldier]]
 
*$43 - [[Red Spear Soldier]]
 
*$44 - [[Assault Sword Soldier]]
 
*$45 - Crazy Red Spear Soldiers (And green ones in the village)
 
*$46 - [[Blue Archer]]
 
*$47 - [[Green Archer]]
 
*$48 - [[Red Javelin Soldier]]
 
*$49 - Red Spear Soldiers (in the bushes)
 
*$4A - [[Red Bomb Soldiers]]
 
*$4B - [[Green Soldier Recruits]]
 
*$4C - [[Geldman]]
 
*$4D - [[Rabbit]]
 
*$4E - [[Popo]]
 
*$4F - [[Popo 2]]
 
*$50 - Metal Balls (in Eastern Palace)
 
*$51 - [[Armos]]
 
*$52 - [[Giant Zora]]
 
*$53 - [[Armos Knights (Boss)]]
 
*$54 - [[Lanmolas (Boss)]]
 
*$55 - [[Fireball Zora]]
 
*$56 - [[Walking Zora]]
 
*$57 - [[Desert Palace Barriers]]
 
*$58 - [[Crab]]
 
*$59 - [[Bird]]
 
*$5A - [[Squirrel]]
 
*$5B - [[Spark (Left to Right)]]
 
*$5C - [[Spark (Right to Left)]]
 
*$5D - Roller (vertical moving)
 
*$5E - Roller (vertical moving)
 
*$5F - Roller
 
*$60 - Roller (horizontal moving)
 
*$61 - [[Beamos]]
 
*$62 - [[Master Sword]]
 
*$63 - [[Devalant (Non-shooter)]]
 
*$64 - [[Devalant (Shooter)]]
 
*$65 - [[Shooting Gallery Proprietor]]
 
*$66 - [[Moving Cannon Ball Shooters (Right)]]
 
*$67 - [[Moving Cannon Ball Shooters (Left)]]
 
*$68 - [[Moving Cannon Ball Shooters (Down)]]
 
*$69 - [[Moving Cannon Ball Shooters (Up)]]
 
*$6A - [[Ball N' Chain Trooper]]
 
*$6B - [[Cannon Soldier]]
 
*$6C - Warp Vortex created by Magic Mirror
 
*$6D - [[Rat]]
 
*$6E - [[Rope]]
 
*$6F - [[Keese]]
 
*$70 - [[Helmasaur King Fireball]]
 
*$71 - [[Leever]]
 
*$72 - Activator for the ponds (where you throw in items)
 
*$73 - Link�s Uncle / Sage / Barrier that opens in the sanctuary
 
*$74 - Red Hat Boy who runs from you
 
*$75 - [[Bottle Salesman]]
 
*$76 - [[Princess Zelda]]
 
*$77 - [[Antifairy (Alternate)]]
 
*$78 - Village Elder
 
*$79 - [[Bee]]
 
*$7A - [[Agahnim]]
 
*$7B - [[Agahnim Energy Ball]]
 
*$7C - [[Hyu]]
 
*$7D - 32x32 Pixel Yellow Spike Traps
 
*$7E - [[Guruguru Bar (Clockwise)]]
 
*$7F - [[Guruguru Bar (Counter Clockwise)]]
 
*$80 - [[Winder]]
 
*$81 - [[Water Tektite]]
 
*$82 - Swirling Fire Faeries (Eastern Palace)
 
*$83 - [[Green Eyegore]]
 
*$84 - [[Red Eyegore]]
 
*$85 - Yellow Stalfos (drops to the ground, dislodges head)
 
*$86 - [[Kodongos]]
 
*$87 - Flames
 
*$88 - [[Mothula (Boss)]]
 
*$89 - Mothula's beam
 
*$8A - Key holes?/ Spikes that move
 
*$8B - [[Gibdo]]
 
*$8C - [[Arrghus (Boss)]]
 
*$8D - Arrghus spawn
 
*$8E - [[Terrorpin]]
 
*$8F - [[Slime]]
 
*$90 - Grabber things?
 
*$91 - [[Stalfos Knight]]
 
*$92 - [[Helmasaur King]]
 
*$93 - [[Bumper]]
 
*$94 - Swimmers
 
*$95 - Eye laser
 
*$96 - Eye laser
 
*$97 - Eye laser
 
*$98 - Eye laser
 
*$99 - [[Pengator]]
 
*$9A - [[Kyameron]]
 
*$9B - [[Wizzrobe]]
 
*$9C - Tadpoles
 
*$9D - Tadpoles
 
*$9E - The ostrich animal w/ the flute boy?
 
*$9F - [[Flute]]
 
*$A0 - Birds w/ the flute boy?
 
*$A1 - [[Freezor]]
 
*$A2 - [[Kholdstare (Boss)]]
 
*$A3 - Another part of Kholdstare
 
*$A4 - [[Falling Ice]]
 
*$A5 - [[Zazak Fireball]]
 
*$A6 - [[Red Zazak]]
 
*$A7 - Red Stalfos Skeleton
 
*$A8 - Bomber Flying Creatures from Darkworld
 
*$A9 - Bomber Flying Creatures from Darkworld
 
*$AA - [[Pikit]]
 
*$AB - [[Maiden]]
 
*$AC - [[Apple]]
 
*$AD - [[Lost Old Man]]
 
*$AE - Down Pipe
 
*$AF - Up Pipe
 
*$B0 - Right Pipe
 
*$B1 - Left Pipe
 
*$B2 - Good bee again?
 
*$B3 - [[Hylian Inscription]]
 
*$B4 - Thief�s chest (not the one that follows you, the one that you grab from the DW smithy house)
 
*$B5 - [[Bomb Salesman]]
 
*$B6 - [[Kiki]]
 
*$B7 - Maiden following you in Blind Dungeon
 
*$B8 - [[Monologue Testing Sprite]]
 
*$B9 - Feuding Friends on Death Mountain
 
*$BA - [[Whirlpool]]
 
*$BB - Salesman / chestgame guy / 300 rupee giver guy / Chest game thief
 
*$BC - Drunk in the inn
 
*$BD - [[Vitreous (Large Eyeball)]]
 
*$BE - [[Vitreous (Small Eyeball)]]
 
*$BF - [[Vitreous' Lightning]]
 
*$C0 - Monster in Lake of Ill Omen / Quake Medallion
 
*$C1 - Agahnim teleporting Zelda to dark world
 
*$C2 - [[Boulders]]
 
*$C3 - [[Gibo]]
 
*$C4 - [[Thief]]
 
*$C5 - [[Medusa]]
 
*$C6 - Four Way Fireball Spitters (spit when you use your sword)
 
*$C7 - Big healing fairies + dust
 
*$C8 - [[Hokku-Bokku]]
 
*$C9 - Ganon's Firebat
 
*$CA - [[Chain Chomp]]
 
*$CB - [[Trinexx]]
 
*$CC - Another part of trinexx
 
*$CD - Yet another part of trinexx
 
*$CE - [[Blind The Thief (Boss)]]
 
*$CF - [[Swamola]]
 
*$D0 - [[Lynel]]
 
*$D1 - [[Bunny Beam]]
 
*$D2 - Flopping fish
 
*$D3 - [[Stal]]
 
*$D4 - [[Landmine]]
 
*$D5 - [[Digging Game Proprietor]]
 
*$D6 - [[Ganon]]
 
*$D7 - Copy of Ganon, except invincible?
 
*$D8 - [[Heart]]
 
*$D9 - [[Green Rupee]]
 
*$DA - [[Blue Rupee]]
 
*$DB - [[Red Rupee]]
 
*$DC - [[Bomb Refill (1)]]
 
*$DD - [[Bomb Refill (4)]]
 
*$DE - [[Bomb Refill (8)]]
 
*$DF - [[Small Magic Refill]]
 
*$E0 - [[Full Magic Refill]]
 
*$E1 - [[Arrow Refill (5)]]
 
*$E2 - [[Arrow Refill (10)]]
 
*$E3 - [[Fairy]]
 
*$E4 - [[Key]]
 
*$E5 - [[Big Key]]
 
*$E6 - [[Shield]]
 
*$E7 - [[Mushroom]]
 
*$E8 - [[Fake Master Sword]]
 
*$E9 - Magic Shop dude / His items, including the magic powder
 
*$EA - [[Heart Container]]
 
*$EB - [[Heart Piece]]
 
*$EC - Bushes
 
*$ED - [[Cane Of Somaria Platform]]
 
*$EE - [[Mantle]]
 
*$EF - [[Sprite $EF|Cane of Somaria Platform (Unused)]]
 
*$F0 - [[Sprite $F0|Cane of Somaria Platform (Unused)]]
 
*$F1 - [[Sprite $F1|Cane of Somaria Platform (Unused)]]
 
*$F2 - [[Medallion Tablet]]
 

Latest revision as of 22:36, 16 September 2017

Drawing

Sprites vary on how they are drawn to the screen. 8‍×​8 and 16‍×​16 sprites tend to use Sprite_PrepAndDrawSingleLarge to draw. Larger sprites uses their custom OAM.

Important Hex Addresses

Sprite Stats And Properties

See also: Sprite Properties

Dungeon Sprite Data

  • $04D62E = Pointer Table, 2 byte local addresses, indexed by room ID
  • $04D92E = Data

Overworld Sprite Data

There are separate pointer tables for each phase of the game. The "phase of the game" refers to the byte located at $7EF3C5.

Phase 0/1

  • $04C881 = Pointer Table, 2 byte local addresses, indexed by screen ID
  • This is the stage of the game whilst rain still falls
  • Only has values only for the light world screens, thus dark world screens will roll over to the light world data from the following table and of course be incorrect.

Phase 2

  • $04C901 = Pointer Table, 2 byte local addresses, indexed by screen ID
  • Phase 2 begins when Zelda is rescued and given protection by the Sage in the Sanctuary

Phase 3

  • $04CA21 = Pointer Table, 2 byte local addresses, indexed by screen ID
  • Phase 3 begins after the player has defeated Agahnim for the first time.

Sprite Data Format

  • First Byte: Stored to $FB3. Not sure what the purpose of that is yet.

After the first byte, you will see 3 byte clusters that break down thus:

Bit First Byte Second Byte Third Byte
7 If set, the sprite is on BG2, if not it's on BG1 If all these bits are set then this is an Overlord, otherwise it's a normal sprite. If only some of them are set they can be used to generate a subtype, stored at $E30, X. Sprite or Overlord type. If a sprite, this will get loaded into a slot at $E20, X. If an Overlord, will get loaded to $B00, X.
6 If these are set, they will be used to generate a subtype, stored to $E30, X.
5
4 X coordinate (in pixels from the far left, starting at 0) of the sprite divided by 16. Y coordinate (in pixels from the top, starting at 0) of the sprite divided by 16.
3
2
1
0

Sprites

Value Description
$00 Raven
$01 Vulture
$02 Flying Stalfos Head
$03 Empty
$04 Pull Switch (Good)
$05 Pull Switch (Unused)
$06 Pull Switch (Bad)
$07 Pull Switch (Unused)
$08 Octorok (One Way)
$09 Moldorm (Boss)
$0A Octorok (Four Way)
$0B Chicken
$0C Octorok (?)
$0D Buzzblob
$0E Snapdragon
$0F Octoballoon
$10 Octoballoon Hatchlings
$11 Hinox
$12 Moblin
$13 Mini Helmasaur
$14 Gargoyle's Domain Gate
$15 Antifairy
$16 Sahasrahla / Aginah
$17 Bush Hoarder
$18 Mini Moldorm
$19 Poe
$1A Dwarves
$1B Arrow in wall?
$1C Statue
$1D Weathervane
$1E Crystal Switch
$1F Bug-Catching Kid
$20 Sluggula
$21 Push Switch
$22 Ropa
$23 Red Bari
$24 Blue Bari
$25 Talking Tree
$26 Hardhat Beetle
$27 Deadrock
$28 Storytellers
$29 Blind Hideout attendant
$2A Sweeping Lady
$2B Multipurpose Sprite
$2C Lumberjacks
$2D Telepathic stones? (No idea what this actually is, likely unused)
$2E Flute Boy's Notes
$2F Race HP NPCs
$30 Person?
$31 Fortune Teller
$32 Angry Brothers
$33 Pull For Rupees Sprite
$34 Scared Girl 2
$35 Innkeeper
$36 Witch
$37 Waterfall
$38 Arrow Target
$39 Average Middle-Aged Man
$3A Half Magic Bat
$3B Dash Item
$3C Village Kid
$3D Signs? Chicken lady also showed up / Scared ladies outside houses.
$3E Rock Hoarder
$3F Tutorial Soldier
$40 Lightning Lock
$41 Blue Sword Soldier / Used by guards to detect player
$42 Green Sword Soldier
$43 Red Spear Soldier
$44 Assault Sword Soldier
$45 Green Spear Soldier
$46 Blue Archer
$47 Green Archer
$48 Red Javelin Soldier
$49 Red Javelin Soldier 2
$4A Red Bomb Soldiers
$4B Green Soldier Recruits
$4C Geldman
$4D Rabbit
$4E Popo
$4F Popo 2
$50 Cannon Balls
$51 Armos
$52 Giant Zora
$53 Armos Knights (Boss)
$54 Lanmolas (Boss)
$55 Fireball Zora
$56 Walking Zora
$57 Desert Palace Barriers
$58 Crab
$59 Bird
$5A Squirrel
$5B Spark (Left to Right)
$5C Spark (Right to Left)
$5D Roller (vertical moving)
$5E Roller (vertical moving)
$5F Roller
$60 Roller (horizontal moving)
$61 Beamos
$62 Master Sword
$63 Devalant (Non-shooter)
$64 Devalant (Shooter)
$65 Shooting Gallery Proprietor
$66 Moving Cannon Ball Shooters (Right)
$67 Moving Cannon Ball Shooters (Left)
$68 Moving Cannon Ball Shooters (Down)
$69 Moving Cannon Ball Shooters (Up)
$6A Ball N' Chain Trooper
$6B Cannon Soldier
$6C Mirror Portal
$6D Rat
$6E Rope
$6F Keese
$70 Helmasaur King Fireball
$71 Leever
$72 Activator for the ponds (where you throw in items)
$73 Uncle / Priest
$74 Running Man
$75 Bottle Salesman
$76 Princess Zelda
$77 Antifairy (Alternate)
$78 Village Elder
$79 Bee
$7A Agahnim
$7B Agahnim Energy Ball
$7C Hyu
$7D Big Spike Trap
$7E Guruguru Bar (Clockwise)
$7F Guruguru Bar (Counter Clockwise)
$80 Winder
$81 Water Tektite
$82 Antifairy Circle
$83 Green Eyegore
$84 Red Eyegore
$85 Yellow Stalfos
$86 Kodongos
$87 Flames
$88 Mothula (Boss)
$89 Mothula's Beam
$8A Spike Trap
$8B Gibdo
$8C Arrghus (Boss)
$8D Arrghus spawn
$8E Terrorpin
$8F Slime
$90 Wallmaster
$91 Stalfos Knight
$92 Helmasaur King
$93 Bumper
$94 Swimmers
$95 Eye Laser (Right)
$96 Eye Laser (Left)
$97 Eye Laser (Down)
$98 Eye Laser (Up)
$99 Pengator
$9A Kyameron
$9B Wizzrobe
$9C Tadpoles
$9D Tadpoles
$9E Ostrich (Haunted Grove)
$9F Flute
$A0 Birds (Haunted Grove)
$A1 Freezor
$A2 Kholdstare (Boss)
$A3 Kholdstare's Shell
$A4 Falling Ice
$A5 Blue Zazak
$A6 Red Zazak
$A7 Stalfos
$A8 Bomber Flying Creatures from Darkworld
$A9 Bomber Flying Creatures from Darkworld
$AA Pikit
$AB Maiden
$AC Apple
$AD Lost Old Man
$AE Down Pipe
$AF Up Pipe
$B0 Right Pip
$B1 Left Pipe
$B2 Good bee again?
$B3 Hylian Inscription
$B4 Thief's chest (not the one that follows you, the one that you grab from the DW smithy house)
$B5 Bomb Salesman
$B6 Kiki
$B7 Maiden following you in Blind Dungeon
$B8 Monologue Testing Sprite
$B9 Feuding Friends on Death Mountain
$BA Whirlpool
$BB Salesman / chestgame guy / 300 rupee giver guy / Chest game thief
$BC Drunk in the inn
$BD Vitreous (Large Eyeball)
$BE Vitreous (Small Eyeball)
$BF Vitreous' Lightning
$C0 Monster in Lake of Ill Omen / Quake Medallion
$C1 Agahnim teleporting Zelda to dark world
$C2 Boulders
$C3 Gibo
$C4 Thief
$C5 Medusa
$C6 Four Way Fireball Spitters (spit when you use your sword)
$C7 Hokku-Bokku
$C8 Big Fairy who heals you
$C9 Tektite
$CA Chain Chomp
$CB Trinexx
$CC Another part of trinexx
$CD Yet another part of trinexx
$CE Blind The Thief (Boss)
$CF Swamola
$D0 Lynel
$D1 Bunny Beam
$D2 Flopping fish
$D3 Stal
$D4 Landmine
$D5 Digging Game Proprietor
$D6 Ganon
$D7 Copy of Ganon, except invincible?
$D8 Heart
$D9 Green Rupee
$DA Blue Rupee
$DB Red Rupee
$DC Bomb Refill (1)
$DD Bomb Refill (4)
$DE Bomb Refill (8)
$DF Small Magic Refill
$E0 Full Magic Refill
$E1 Arrow Refill (5)
$E2 Arrow Refill (10)
$E3 Fairy
$E4 Key
$E5 Big Key
$E6 Shield
$E7 Mushroom
$E8 Fake Master Sword
$E9 Magic Shop dude / His items, including the magic powder
$EA Heart Container
$EB Heart Piece
$EC Bushes
$ED Cane Of Somaria Platform
$EE Mantle
$EF Cane of Somaria Platform (Unused)
$F0 Cane of Somaria Platform (Unused)
$F1 Cane of Somaria Platform (Unused)
$F2 Medallion Tablet

Navigate

Table of Contents
SpritesDungeonsOverworldUnderworldSRAM MapRAM MapROM MapMusicMonologueCreditsDumpsMiscellaneousTo-Do/Suggestions