Page Title: Treasure - ZeldaHacking Wiki

  • This webpage makes use of the TITLE meta tag - this is good for search engine optimization.

Page Description:

  • This webpage DOES NOT make use of the DESCRIPTION meta tag - this is NOT GOOD for search engine optimization.

Page Keywords:

  • This webpage DOES NOT make use of the KEYWORDS meta tag - whilst search engines nowadays do not put too much emphasis on this meta tag including them in your website does no harm.

Page Text: 4.1 Indices Overview Look in constants/treasure.s to find the index and the name of the treasure you're interested in. Treasures with indices between $00-$1f correspond to items in Link's inventory with the same index. Treasures with indices $20 or higher are not equippable, so they're usually "passive" items (like the mermaid suit). Each and every treasure also has a single bit associated with it, located at wObtainedTreasureFlags ($c69a). The game uses this to check if you have an item (ie. if the mermaid suit bit is set, you can swim in deep water). Important functions giveTreasure (00:171c) Gives Link treasure 'a' with parameter 'c'. It does this by setting the corresponding bit in wObtainedTreasureFlags, and putting it in his inventory if applicable (index < $20). What the parameter 'c' does depends on the item, but it usually makes logical sense; for instance, parameter $05 for item $20 would give you 5 ember seeds. loseTreasure (00:1733) Removes item 'a' from Link's inventory and clears the corresponding bit in wObtainedTreasureFlags. checkTreasureObtained (00:1748) Sets the carry flag if Link has item 'a'. The game uses this frequently to test what items Link has. It also returns the item's "paremeter" in 'a', indicating the item's amount, level, etc. Data structures treasureCollectionBehaviourTable Search for this in main.s. The exact details are fairly well documented there. This table determines what "extra" things happen when Link collects the treasure; for instance, an item's corresponding level variable may need to be set, or Link may be supposed to obtain a certain number of bombs. This is part of the implementation of the giveTreasure function. treasureDisplayData This data structure describes how the treasure appears in Link's inventory and his A/B buttons. It contains the following data: The icon (sprite and palette) The text to show (text ID $09xx) Whether to display a level number, a quantity, or the harp icon along with it It also allows an item to have multiple versions of this data based on another variable (such as the level number, equipped seeds, etc). Its exact format is documented in main.s. Treasure objects See: data/treasureObjectData.s Although you could just call giveTreasure to give Link an item, it would do so instantaneously, and you wouldn't know what you got. For this reason, each treasure has a few corresponding "treasure objects". These objects contain a bit of extra data, including: Its "spawn mode" (should it just appear instantly, appear with a poof, or fall from the ceiling?) Its "collect mode" (should Link hold it over his head, or should it just be collected instantaneously?) The text to show on collection The sprite to use The parameter to pass to giveTreasure (ie. the item's level, the amount of the item to give, etc) Indices When using treasure chests or the "giveitem" script opcode, you must specify the index of a treasure object. The index consists two bytes, ID1 and ID2. ID1 corresponds to the treasure that will be given to you, so you can use constants/treasure.s to see what that is. ID2 determines what the "extra data" will be (text to show, sprite, etc). This is editable in LynnaLab's chest/treasure editing plugin, though the interface needs work. A treasure object is an interaction with mainID = $60. The subID = ID1, and var03 = ID2 (var03 is address dx43). Although you could place a treasure object directly into a room through LynnaLab or ZOLE, the game would not remember when you've collected it (and there's no easy way to set ID2). So, treasure objects are usually created through scripts.

  • This webpage has 553 words which is between the recommended minimum of 250 words and the recommended maximum of 2500 words - GOOD WORK.

Header tags:

  • It appears that you are using header tags - this is a GOOD thing!

Spelling errors:

  • This webpage has 1 words which may be misspelt.

Possibly mis-spelt word: treasureCollectionBehaviourTable

Broken links:

  • This webpage has 5 broken links.

Broken image links:

  • This webpage has no broken image links that we can detect - GOOD WORK.

CSS over tables for layout?:

  • It appears that this page uses DIVs for layout this is a GOOD thing!

Last modified date:

  • It appears that this page was updated on the Thursday, December 17, 2020 which is NOT within the last thirty days - this is NOT a good thing!

Images that are being re-sized:

  • This webpage has no images that are being re-sized by the browser - GOOD WORK.

Images that are being re-sized:

  • This webpage has no images that are missing their width and height - GOOD WORK.

Mobile friendly:

  • After testing this webpage it appears to be mobile friendly - this is a GOOD thing!

Links with no anchor text:

  • This webpage has 1 links that do not contain anchor text - this is NOT a good thing.

W3C Validation:

Print friendly?:

  • It appears that the webpage does NOT use CSS stylesheets to provide print functionality - this is a BAD thing.

GZIP Compression enabled?:

  • It appears that the serrver does NOT have GZIP Compression enabled - this is a NOT a good thing!