feat(atelier): toolbox scènes Runtime 3 partagée (start/end + voix) #117
Reference in New Issue
Block a user
Delete Branch "feat/zacus-hotload-hub"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
L'Atelier parlait un langage de blocs « config gameplay » que le compilateur ne savait pas flasher (pas de blocks_studio_version, pas de start/end). Il parle désormais le langage scènes Runtime 3 du hub natif : catalogue de 38 blocs en source unique @zacus/shared/blockly (copie hub GÉNÉRÉE par tools/dev/sync_blockly_catalog.sh), export/import blocks_studio_version: 2 (interop totale hub ↔ webapp), « Zacus dit » avec voix (voice_ref) + émotion + vitesse propagées dans l'IR tts_say (optionnelles, rétrocompatibles), validation éditeur alignée sur les règles du compilateur. Vérifié : tsc propre, vite build vert, round-trip v2→IR OK.
The Atelier exposed a legacy 12-block gameplay-config language whose export the gateway could not compile (no blocks_studio_version) — and no start/end blocks. It now speaks the same language as the zacus-hub native Studio: the 38-block scene catalog (sceneStart/sceneEnd, npcSay voice lines, HW/ESP-NOW/M5/PLIP, logic) lives once in @zacus/shared/blockly; the hub copy is GENERATED via tools/dev/sync_blockly_catalog.sh. - Export/import rewritten to blocks_studio_version: 2 (flat nodes, next pointers, logicIf slots) via shared blocks-doc.ts — what POST /v1/flash compiles to Runtime 3 IR, and what the hub Studio reads/writes (full interop). - « Zacus dit » gains voice (voice-bridge voice_ref), emotion and rate fields; the compiler forwards them as optional tts_say fields (omitted at defaults, backward compatible). - Editor validation now mirrors compiler rules: missing sceneStart, duplicate scene ids, unknown goto targets, empty voice lines. Verified: tsc clean, vite build green, v2->IR round-trip OK (entry STEP_intro, tts_say{voice_ref,emotion,rate}).