陶亦非
← 作品

TideKeeper

四个玩家共享一片渔场。每一轮结束他们投票决定下一轮警察出现的频率,然后活在自己投出来的世界里。

四只海边生物共用一片鱼群。谁都可以偷、卖、煮、放生。每轮结束,全桌投票决定下一轮警察出现的频率,所以玩家抱怨的规则,正是他们自己写的规则。

问题是什么

TideKeeper 是康奈尔科技校区 2026 春季课程 Designing Games for Research(DESIGN 6197/4197)的项目,四人团队完成。我负责游戏设计与开发。

研究向的游戏比单纯好玩的游戏难做。它既要本身值得玩下去,又要保证玩家在游戏里做的事情真的说明了什么,否则你做出来的是娱乐,不是研究工具。

我想看的是人和人之间的策略博弈。当所有人都从同一个池子里取东西时,玩家会怎么互相试探和谈判?在反复多轮之后,一个人会稳定成什么角色,被别人看穿之后还会不会继续待在那个角色里?以及,桌上真的有风险时,人怎么判断要不要冒。

所以这个游戏建在「公地」上:四只生物从同一片渔场取鱼,每一个能赚钱的动作都在消耗它,谁也无法在忽略另外三个人的情况下赢。

我做了什么决定

投票是机制本身,不是包装。 执法强度不是游戏预先定死的规则。每一轮结束时全桌投票,决定下一轮警察出现的频率,玩家在持续地重写自己即将承受的压力。每一轮都变成一个必须自己承担后果的决定,也给了研究一个可测量的东西:不是人们怎么说执法,而是刚被偷完之后他们投了什么。

回合结束的投票画面,四名玩家选择执法力度上调、保持还是下调
投票画面。这一张图就能解释整个设计:玩家在这一轮的记忆还热着的时候,决定下一轮的规则。

四个人、一张桌子、不用安装。 游戏跑在浏览器里,四个人共用一个键盘。P1 用 WASD,P2 用方向键,P3 用 TFGH,P4 用 IJKL,手柄输入会并入同一个玩家槽位,所以一组人可以手柄和键盘混着用,不需要任何配置。正是这个约束让它成为一个真的跑得起来的研究工具:不用账号、不用下载、不用建房。打开一个网址,四个人就开始玩了。

动作必须隔着桌子也看得懂。 偷、卖、煮、放生。四个动词,每个配一个独立音效,让旁观者或者另一个玩家不用盯屏幕也知道刚才发生了什么。偷是对研究最关键的那个动作,也是唯一一个能被听见的。

一名玩家正在偷另一名玩家的渔获
偷。全桌都知道它发生了,这正是重点,因为投票马上就要来了。

交付了什么

itch.io 上一个能直接玩的构建,以及一个可以从头读到尾的仓库。

整个游戏就是一个 index.html,装着游戏循环、UI、渲染、输入处理,以及回合与投票的状态机,加一个单独的起始页样式表,控制方案写在 GAMEPAD.md 里。这不是你打算长期扩展的东西该有的架构,但对一个需要用一个链接交给玩测组、用一个文件交给助教的游戏来说,它是对的。

输入层比看上去讲究。移动用 0.22 的摇杆死区,方向键输入并入其中并做了限速,避免两者叠加。动作键在按下的那一瞬间边沿触发,所以长按不会连发。防守是长按 0.25 秒以上,短于这个时间的轻点会打开建造菜单。一个键做两件事,用时间而不是多一个按键来区分,因为一个已经坐了四个人的键盘上,实在没有多余的键了。

全桌投票提高执法力度后,警察出现在渔场里
上一轮投票的后果,到了。
回合结算画面,显示每位玩家的收入
结算画面本身也是压力源。在投执法票之前,所有人都看得见谁领先。

项目还自带全套素材:背景音乐、四个玩家和警察的角色精灵、场景与结算画面、鱼的图标,以及四个动作各自的音效。