<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Narrative on PlumePHP</title><link>https://plumephp.com/tags/narrative/</link><description>Recent content in Narrative on PlumePHP</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Thu, 14 May 2026 13:09:00 +0800</lastBuildDate><atom:link href="https://plumephp.com/tags/narrative/index.xml" rel="self" type="application/rss+xml"/><item><title>Phaser 分支叙事对话系统：变量条件、回看记录和剧情状态不能临时拼</title><link>https://plumephp.com/phaser-dialogue-branching-narrative-2026/</link><pubDate>Thu, 14 May 2026 13:09:00 +0800</pubDate><guid>https://plumephp.com/phaser-dialogue-branching-narrative-2026/</guid><description>&lt;h2 id="分支对话不是把文本一行行播完"&gt;分支对话不是把文本一行行播完&lt;/h2&gt;
&lt;p&gt;Phaser 做剧情对话很容易起步：屏幕底部放一个对话框，点击显示下一句，遇到选项就显示几个按钮。问题在于分支叙事的复杂度不是来自文本播放，而是来自状态。玩家之前是否救过某个 NPC，背包里有没有钥匙，当前是否在雨天，阵营好感度是否超过 30，某个秘密是否已经被揭露，这些都会影响可见选项和后续剧情。如果系统一开始只是一个数组下标，后期就会到处出现 &lt;code&gt;if (flagA &amp;amp;&amp;amp; !flagB)&lt;/code&gt;，写的人不敢改，写剧情的人不敢配。&lt;/p&gt;</description></item><item><title>Phaser 分支对话后果日志：选择、条件、旗标和回看面板要闭环</title><link>https://plumephp.com/phaser-dialogue-choice-consequence-log-2026/</link><pubDate>Sat, 07 Mar 2026 11:42:00 +0800</pubDate><guid>https://plumephp.com/phaser-dialogue-choice-consequence-log-2026/</guid><description>&lt;h2 id="为什么要把它当成系统来做"&gt;为什么要把它当成系统来做&lt;/h2&gt;
&lt;p&gt;叙事冒险游戏里，玩家在雨夜码头和线人谈判。选择一句安抚的话，会让线人第二章愿意提供船票；选择威胁，则当前能拿到情报，但城市声望下降。玩家三小时后回来，需要知道自己为什么被某个 NPC 拒绝。&lt;/p&gt;</description></item><item><title>Phaser 剧情物品检查器：旋转查看、线索热点和状态记录</title><link>https://plumephp.com/phaser-story-item-inspector-system-2026/</link><pubDate>Thu, 15 Jan 2026 13:44:00 +0800</pubDate><guid>https://plumephp.com/phaser-story-item-inspector-system-2026/</guid><description>&lt;h2 id="为什么要先做底层系统"&gt;为什么要先做底层系统&lt;/h2&gt;
&lt;p&gt;玩家捡到一块古旧怀表，可以放大查看、旋转背面、点击划痕、打开表盖，最终发现夹层里的密码纸。这个检查器看似 UI，但它承载剧情线索、谜题状态和玩家记忆。&lt;/p&gt;</description></item></channel></rss>