Generated resource accessors connect code to localized text, icons, sounds, layouts, and browser assets. Treat them as versioned contracts rather than editable source files.

Primary ownershipResource package and current UI framework
Readiness anchorResource registration plus view/application readiness
Version sensitivityVerify private names per client build

Resource categories

Category Examples Failure strategy
Localization Labels, descriptions and formatted messages Fallback text and logged missing key
Images and icons Atlas entries, browser assets and static textures Existence check and neutral placeholder
Layouts and views Aliases, XML/Flash definitions, browser bundles Disable only the dependent UI
Sound identifiers UI and battle event names Silent no-op with throttled diagnostic
Dynamic resources Mode or season-provided paths Feature gate by package and resource availability

Asset membership does not prove every variant is available

The rare-achievement cache classifies local IDs from the union of filenames for two image sizes before reading their bytes. A local ID can therefore lack one size, while its request path still skips remote text and images for that ID. Check the requested variant itself and retain a placeholder; catalog membership alone is not a completeness or decoding guarantee.

Remote fields merge independently. Missing or None text fields preserve prior values, while unchanged text or image bytes emit no change event. A change notification is therefore not a terminal result for each submitted asset request. Keep per-variant availability, refresh completion and dossier ownership separate. These Python wrapper rules are version-sensitive; they do not establish that any shipped image is missing or that a download occurred.

Read by topic

Choose a focused chapter. Complete examples and reference details are preserved on their topic pages.