cocos-nirvana-rebuild-scene
Use when Cocos Creator scene files are corrupted with Error 1222/1223.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when Cocos Creator scene files are corrupted with Error 1222/1223.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use when installing Cocos Creator 3.x and setting up a headless test bootstrap.
Use when setting up a GUI-free CLI build pipeline for Cocos Creator 3.x.
Use when building code-driven scrollable UI panels in Cocos Creator 3.x.
Use when code-driven UI nodes in Cocos Creator 3.x fail to render text or colors.
Use when Cocos Creator 3.x CLI build fails with scene or library errors.
Use when installing Cocos Creator 3.x and debugging scene import errors.
| name | cocos-nirvana-rebuild-scene |
| description | Use when Cocos Creator scene files are corrupted with Error 1222/1223. |
resource.activate is not a functionOpen scene failed: UUID error in EditorBuild task is break! with deserialization errorscat assets/scenes/MainScene.scene | python3 -m json.tool 2>/dev/null | head -5
如果 print 到 JSON 即係結構 intact。如果 fail 即係極端損壞。
MainScene.scene 係 Cocos 3.x JSON 格式,用 __id__ reference system:
__id__ 值 = array index__id__ numbering 必須連續無 gap__id__: null,唔佔 numberingarray[0] = cc.SceneAsset(scene asset entry point)
array[1] = cc.Scene(`_children`, `_globals` reference)
array[2] = cc.Node(Canvas 或 root node)
array[3] = cc.Node(Main Camera)
array[4] = cc.SceneGlobals(`ambient`, `fog`, `shadows`, `skybox`, `skins`)
array[5] = cc.UITransform(Canvas 嘅 transform)
array[6] = cc.Canvas(Canvas component)
...
寫入 JSON 陣列,結構:
[
// [0] cc.SceneAsset
{"__type__": "cc.SceneAsset", "_name": "", "_objFlags": 0, "native": "",
"scene": {"__id__": 1}},
// [1] cc.Scene
{"__type__": "cc.Scene", "_name": "ZenScene", "_objFlags": 0,
"autoReleaseAssets": false,
"_children": [{"__id__": 2}, {"__id__": 3}],
"_globals": {"__id__": 4},
"_inited": true},
// [2] Canvas node
{"__type__": "cc.Node", "_name": "Canvas", "_objFlags": 0, ...},
// [3] Main Camera node
// [4] SceneGlobals
// [5] UITransform
// [6] Canvas component
// [7] GameBootstrapper custom script component
{"__type__": "cc.Script", "_name": "", "_objFlags": 0,
"_serializedDependencies": [],
"_scriptAsset": {"__uuid__": "<GameBootstrapper UUID>"},
"_enabled": true}
]
{"__type__": "cc.Script", "_name": "", "_objFlags": 0,
"_serializedDependencies": [],
"_scriptAsset": {"__uuid__": "df04b42a-58f5-41c9-9980-bc4605129b94"},
"_enabled": true}
關鍵 rule: __id__ = array index,必須連續由 0 開始無 gap。
更新:
profiles/v2/packages/builder.json → startScene + scene listprofiles/v2/packages/wechatgame.json → scene listsettings/v2/packages/builder.json → startScenesettings/v2/packages/project.json → scene listsettings/packages/project.json → defaultScenerm assets/scenes/MainScene.scene
rm assets/scenes/MainScene.scene.meta
rm -rf build temp library
npm run build
ls -la build/wechatgame/src/chunks/bundle.js
# 應該 > 200KB
Cannot read properties of undefined (reading '__type__') → 某個 __id__ reference 指向咗唔存在嘅 array index。resource.activate is not a function → SceneGlobals shadows/skybox reference 錯誤。glCheckFramebufferStatus() - FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT → OpenGL warning,可忽略。<your_project_dir>/BuddhaHeart_Game