猹引擎
GUI - 剧情与活动玩法编排
这页解决什么问题
把页面交互串成完整玩法流程,做到“玩家点哪里,玩法走到哪”。
剧情编排链路
- 打开剧情主页面。
- 页面点击后上行剧情节点动作。
- 服务端下行当前节点文本与选项。
- 页面选择分支并上行下一节点。
- 服务端下行剧情完成状态与奖励结果。
剧情节点上行模板
js
async function submitStoryNode(storyId, nodeId, optionId) {
await ChaEngine.sendToServer('ui.action', {
action: 'story_next_node',
body: {
storyId,
nodeId,
optionId
}
});
}剧情节点下行模板
js
ChaEngine.onServerData((packet) => {
if (packet.channel !== 'ui.state') {
return;
}
const data = JSON.parse(packet.data || '{}');
if (data.action !== 'story_next_node') {
return;
}
renderStoryText(data.text || '');
renderStoryOptions(data.options || []);
renderStoryReward(data.reward || null);
});活动编排链路
- 打开活动主页。
- 下行活动阶段、倒计时、奖励池。
- 页面点击报名并上行动作。
- 服务端下行报名结果。
- 页面切换到战斗阶段界面。
不写代码版做法
- 先画“页面流程图”,确定每一步页面名称。
- 给每一步定义动作名,例如
activity_join、activity_ready、activity_start。 - 给每一步定义回执名和提示语。
- 只要动作和回执固定,后续活动就能复用这套流程。
客户常见错误
- 剧情节点 ID 重复,导致分支错乱。
- 页面已经切换,但服务端阶段没切换。
- 活动结束后没重置状态,下一轮进来直接异常。
猹件开发组