Scheduled system upgrade on Sunday 21 April 2024 15:00-16:00 UTC - On that day, the wiki and other services might go down for 5-15 minutes.

ActorInfoData: Difference between revisions

From ZeldaMods (Breath of the Wild)
Jump to navigation Jump to search
imported>Leoetlino
(Created page with "'''ActorInfoData''' is a subsystem that is responsible for loading and reading ActorInfo.product.sbyml. It provides many functions which are used by all other components to...")
 
imported>Leoetlino
No edit summary
 
Line 1: Line 1:
{{Subsystem infobox|name=ActorInfoData|init_addr_switch150=0000007100D2E16C|is_name_official=1|description=Utilities for querying actor info using [[ActorInfo.product.byml]], without having to load actors}}
'''ActorInfoData''' is a subsystem that is responsible for loading and reading [[ActorInfo.product.byml]]. It provides many functions which are used by all other components to query information from ActorInfo.
'''ActorInfoData''' is a subsystem that is responsible for loading and reading [[ActorInfo.product.byml]]. It provides many functions which are used by all other components to query information from ActorInfo.



Latest revision as of 18:43, 27 September 2018

ActorInfoData
Subsystem
Official name Yes
Description Utilities for querying actor info using ActorInfo.product.sbyml, without having to load actors
Init function Switch 1.5.0: 0000007100D2E16C
Wii U 1.5.0: ???
Debug only No

ActorInfoData is a subsystem that is responsible for loading and reading ActorInfo.product.sbyml. It provides many functions which are used by all other components to query information from ActorInfo.

Init

The actor information file is loaded very early during initialization in ksys::InitializeApp.

If debugging is enabled, actor info is loaded synchronously from Local/Actor/ActorInfo.product.byml. Otherwise, ActorInfoData loads it from Actor/ActorInfo.product.byml.

Queries

ActorInfoData functions almost always take an input string, which is the name of the actor about which information is being queried.

Internally, ActorInfoData calculates the CRC32 hash of the name and performs a binary search on the Hashes array to quickly identify the index of the actor information dict in the Actors array.