下载 App
开发日志 02:光怎么传、种怎么漂——把涌现拆成三条简单规则
规则一:传光——珊瑚的回应
它是怎么工作的
每一帧,每个发光的生命(小潮、朋友、已经亮起的珊瑚)都会向周围散发微光。附近的珊瑚会慢慢积累这些光,积累到一定程度就会"醒来",然后自己也开始发光,继续把光传给更远的珊瑚。
听起来很简单对吧?但有两个关键细节让它变得有趣:
1. 距离衰减 光不是均匀散布的,离光源越近,积累越快。所以珊瑚链的排列方式很重要——间距合适的话,光可以一传十十传百;间距太大的话,传到一半就断了。
2. 礁石遮挡 礁石会挡住光。这个设计最初是为了增加策略深度——你不能随便乱放礁石,放错了会挡住光链。但后来发现,它带来了一个意外的涌现效果:玩家会故意用礁石把光"逼"向某个方向,就像用透镜聚焦一样。
为什么选"光"作为载体
最开始考虑过用"养分""水流""信息素"之类的,但最后选了光,原因很简单:
- 看得见:光的明暗变化是视觉上最直观的反馈,玩家一眼就能看到"哦,这株珊瑚亮起来了"
- 有情感:光是温暖的、有希望的,和游戏的治愈基调很搭
- 容易形成"链":一传二、二传四的感觉,本身就很"涌现"


规则二:扎根——光种的漂流
它是怎么工作的
玩家可以在海面上放下一颗光种。光种不会立刻生根,而是随水流漂动。只有同时满足三个条件时,它才会慢慢扎根:
- 有支持:附近有海草或礁石(提供附着点)
- 有缓流:水流不能太急(太急了种子站不住)
- 有空地:那个位置还没有别的生境
扎下来之后,它就变成了一株新的海草或珊瑚,然后——重点来了——这株新生境会改变附近的水流,进而影响下一颗光种的漂流路径。
这就是正反馈循环:
你放了一颗种子 → 它扎根成海草 → 海草改变了水流 → 下一颗种子有了新的停留机会 → 又长出新的生命 → 继续改变水流……
最惊喜的发现
最开始做这个系统的时候,我们以为玩家会"精心设计"每一颗种子的位置。但实际测试中发现,玩家更享受的是:
放下一颗种子,然后看它会漂到哪里、会在哪里扎根、然后又会带来什么新的变化。
有一种"播种希望"的感觉。你不能完全控制结果,但你知道你的行动有意义。
这比"精准放置"更符合涌现的精神——你是在创造条件,不是在建造结果。


规则三:分合——生命的聚散
它是怎么工作的
海洋里的小生命(鱼、水母、朋友)每一帧都会做一个简单的决定:往哪个方向游。
这个决定由三个因素组成(经典的 Boids 算法简化版):
- 分离:离旁边的生命太近了,就稍微远离一点(避免撞在一起)
- 对齐:旁边的生命都往同一个方向游,我也跟着往那个方向游
- 凝聚:离群体有点远了,往回靠一靠
再加上对光的吸引(喜欢往亮的地方游)和对礁石的避让,就形成了海洋里生命聚聚散散的景象。
为什么这条规则很重要
传光和扎根都是"环境"层面的涌现,而分合是"生命"层面的涌现。没有生命的话,海湾只是一个会发光的水族箱。
有了生命之后,涌现就多了一个维度:
- 生命喜欢聚在亮的地方 → 亮的地方有更多生命 → 更多生命带来更多光 → 光链更容易延伸
- 朋友在珊瑚旁停留 → 珊瑚积光更快 → 珊瑚亮得更早 → 朋友更喜欢待在这里
生命和环境互相塑造,这才是真正的"生态"。






