Search the names the game actually uses.
The complete reference includes runtime variants and internal rows that do not belong in a player database. Search names or IDs, filter within each table, and copy the exact value into your research notes.
Find the right internal IDs, choose a format from the requirement, prove behavior on the correct authority, and publish only the compatibility claims your tests can support.
The complete reference includes runtime variants and internal rows that do not belong in a player database. Search names or IDs, filter within each table, and copy the exact value into your research notes.
Begin with scope and format. Continue through data and runtime paths. Finish with client/server, save, conflict, packaging, update, and removal gates.
The advanced work is deciding who owns state, when objects exist, what persists, how changes coexist, and how users get back out.
Decide whether each behavior belongs to a local client, listen host, or dedicated server before reaching for a hook.
Initialize only when dependencies and reflected objects can exist; make reload and repeated callbacks idempotent.
Separate runtime-only changes from save-affecting behavior and design removal before a public build writes durable state.
Test the final archive on the exact sides and platforms you claim, then document the boundaries that remain unverified.
Foundations, Lua, PalSchema, LogicMods, and release engineering.
DataSearch exact Pal, item, NPC, active-skill, and passive-skill identifiers.
PackagingInfo.json, rules, targets, validation, testing, and PalMods releases.
IntegrationTyped read endpoints for mods, files, versions, and compatibility.
Examples teach reflection, thread safety, schema targeting, cooked layout, and package structure without naming local projects or copying their implementations.