24 lines
1.5 KiB
Go
24 lines
1.5 KiB
Go
package methods
|
|
|
|
//
|
|
// Verbatim copy of the donor build's static-NPC contracts (2026-09-17).
|
|
// Everything here exists so the donor's NPC-spawn card can run exactly as it did in the build
|
|
// that was verified in-game — no "simplification", no reuse of neighbouring contracts. That
|
|
// last point is the whole reason this file exists rather than reusing CivilianMethods4229938:
|
|
// the first port fed the wrong nested contract into ClientStaticNpcInitData (the 46-field
|
|
// SceneMethods.AgentSyncClientInfo instead of this 43-field Npc variant), which shifted every
|
|
// field after AgentSyncClientInfo and made the client silently drop the whole packet.
|
|
// The Donor prefix keeps these apart from the civilian variants already compiled into the
|
|
// solution so the two paths can be compared side by side without ambiguity.
|
|
// Field order in every class below follows lua/LuaGen/AutoGen/RPCSerializeAuto.lua.
|
|
//
|
|
// IGameSceneToClient positional arguments; both nested values are native structs.
|
|
// RPCSerializeAuto.lua WriteClientNpcPoiActionData (4229938).
|
|
// Complex argument, with ClientBaseEntityData's static-NPC discriminator.
|
|
// SpawnNPC2's ClientStaticNpcInitData uses CustomFlagType=2, not onlyFields.
|
|
// Field order: lua/LuaGen/AutoGen/RPCSerializeAuto.lua WriteClientStaticNpcInitData.
|
|
// Full current-build AOI projection for an NPC AgentUnit. This contract is
|
|
// consumed by UnitsManager.SyncAgentEnterAOI and initializes the BaseUnit
|
|
// modules that own animation and physical reactions.
|
|
// Field order: RPCSerializeAuto.lua WriteRaidBattleUnitAgent (build 4229938).
|