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