feat: add Ida Faber NPC variants#207
Conversation
061bc0f to
4d08a98
Compare
|
Local code-review fallback verdict: APPROVED. Verification:
Notes:
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4d08a98688
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "Codex (@codex) review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "Codex (@codex) address that feedback".
| { npc_id: "npc-neon-runner-1172", display_name: "Neon Runner 1172", archetype_id: "wasteland-courier", role: "Neon courier body", visual_variant: 18, visual_prefab_key: "generated_visual_18_idafaber_gamergirl", equipment_visual_id: 1 }, | ||
| { npc_id: "npc-vex-operative-2286", display_name: "Vex Operative 2286", archetype_id: "crossline-hunter", role: "Signal infiltrator body", visual_variant: 19, visual_prefab_key: "generated_visual_19_idafaber_vex", equipment_visual_id: 1 }, | ||
| { npc_id: "npc-redline-envoy-3398", display_name: "Redline Envoy 3398", archetype_id: "clinic-operator", role: "Redline liaison body", visual_variant: 20, visual_prefab_key: "generated_visual_20_idafaber_lucia", equipment_visual_id: 8 } |
There was a problem hiding this comment.
Remove NPC seeds that depend on local-only assets
These three permanent NPC seeds assign visual variants 18-20, but this commit does not add distributable generated prefabs for those variants (the new source asset folders are also gitignored), so a clean checkout without the paid local packs will spawn these NPCs with missing visuals and fall back to placeholder rendering. Because these NPCs are in the shared permanentNpcFramePool, the regression affects every environment that runs the seeded world data, not just local prototype machines.
Useful? React with 👍 / 👎.
| function defaultBodyProfile(playerId: string, displayName: string, timestamp: string, seedSuffix?: string): any { | ||
| var assignmentSeed = playerId + ":" + (seedSuffix || "initial"); | ||
| var sourceFrame = selectPermanentNpcFrame(assignmentSeed); | ||
| var sourceFrame = selectInitialPermanentNpcFrame(assignmentSeed); |
There was a problem hiding this comment.
Keep reincarnation frame selection on full pool
defaultBodyProfile now always calls selectInitialPermanentNpcFrame, and reincarnateBody reuses defaultBodyProfile for every new body. That means reincarnation is unintentionally capped to the first 10 legacy frames and can never select the newly added frames 11-13, even though the change intent is to stabilize only the initial assignment while expanding the world NPC roster.
Useful? React with 👍 / 👎.
| "dependencies": { | ||
| "com.coplaydev.unity-mcp": "https://github.com/CoplayDev/unity-mcp.git?path=/MCPForUnity#main", | ||
| "com.gamebooom.unity.mcp": "https://github.com/FunplayAI/funplay-unity-mcp.git#3ef233a8a86eb03a281873b778d79bbfb1e3e899", | ||
| "com.gamebooom.unity.mcp": "https://github.com/FunplayAI/funplay-unity-mcp.git#v0.3.8", |
There was a problem hiding this comment.
Pin Unity MCP dependency to immutable revision
Switching com.gamebooom.unity.mcp from a commit SHA to the mutable #v0.3.8 tag makes dependency resolution non-deterministic when lockfiles are regenerated or absent, because retagging can change the resolved code without any manifest diff. This is a regression from the previous immutable pin and can cause hard-to-reproduce editor/tooling behavior across contributors and CI.
Useful? React with 👍 / 👎.
Summary
Verification
npm.cmd run buildinbackend/nakamanpm.cmd testinbackend/nakamagit diff --checkVisualPrefabCatalog.Count=21, confirmed variants 18-20 resolve to the imported prefabs, and verified each prefab has Animator plus SkinnedMeshRenderersNotes
Stand.obj; no C# compile errors remained after refresh.