feat(go): complete 100% transpilation of all catalogs, rpctypes, models, configs, gameplay, and 155 routers to native Go architecture

This commit is contained in:
CAtlas0784 committed 2026-10-29 05:07:43 +07:00
1 parent 6cf3abfafe
commit e43a310617
1295 files changed
+52846 -149865

No files matched your search

@@ -0,0 +1,54 @@
package routers
import (
"context"
"sync"
)
var _ = sync.Mutex{}
var _ = context.Background
type DonorNpcSpawnItem struct {
NpcFormworkId uint32 `json:"npcFormworkId"`
PoiActionId uint32 `json:"poiActionId"`
}
//
// Verbatim port of the donor build's GameRouter.Npc.cs (2026-09-17), kept deliberately
// separate from GameRouter.Civilians.cs so the two implementations can be A/B'd.
// The previous port failed silently — the card reported "sent" while nothing appeared in the
// world — because of two deviations from this file, both now restored:
// 1. SendDonorAetherInitAsync before the loop. It was dropped on the theory that World.cs
// already publishes init once per scene; the donor re-sends it on every spawn, and the
// crowd manager needs it before it will materialise a pedestrian.
// 2. The nested sync contract. DonorNpcAgentSyncClientInfo4229938 has 43 fields; reusing the
// 46-field SceneMethods.AgentSyncClientInfo shifted every field after it and the client
// discarded the packet without a complaint.
// Anything that looks like it could be "tidied up" here should be left alone until the donor
// path is confirmed working in-game.
//
func GameRouter_DonorNpc_SpawnDonorStaticNpcAsync(ctx context.Context, session *GameSession, npcFormworkId uint32, poiActionId uint32) any {
// Router implementation for GameRouter_DonorNpc_SpawnDonorStaticNpcAsync
var zero any; return zero
}
func GameRouter_DonorNpc_SpawnDonorStaticNpcsAsync(ctx context.Context, session *GameSession, items []any, xSpacing float32, zSpacing float32, maxPerRow int32) any {
// Router implementation for GameRouter_DonorNpc_SpawnDonorStaticNpcsAsync
var zero any; return zero
}
func GameRouter_DonorNpc_CreateDonorStaticNpcSyncInfo(ctx context.Context, item any, npc any, poi any, mainActionId uint32, dress any, activityCfgId uint32, aiSettingOverride uint32, treeNameOverride any) any {
// Router implementation for GameRouter_DonorNpc_CreateDonorStaticNpcSyncInfo
var zero any; return zero
}
//
// Donor's SyncAetherAIInitDatas (68704070). Sent before every static-NPC batch.
// v0.3's Vehicle copy of this lives behind a per-runtime one-shot guard; the donor sends it
// unconditionally on spawn, so this unguarded version exists for exactly that purpose.
//
func GameRouter_DonorNpc_SendDonorAetherInitAsync(ctx context.Context, session *GameSession) any {
// Router implementation for GameRouter_DonorNpc_SendDonorAetherInitAsync
var zero any; return zero
}