下载 App
开发者日志 ②:我怎么让一块地有了记忆
10/1612 浏览综合 包含 AI 合成内容
起因:我不满意「土壤」
最早的土壤是一张消耗品卡:种 5 次就没了,施一次肥补回来。
它能跑,但我越看越不对——玩家对它没有任何决策。它只是一个倒计时,你会做的只有「记得补肥」。
农场游戏里,土地不应该是背景板。你在一块地上种过什么、种了几次、有没有让它歇过,这些东西应该留下痕迹。
所以我想让土壤变成一个有历史的实体。
六态状态机
现在它有六个状态:
状态 怎么进去的 长多快 还种子吗
新垦 开卡包 / 锄头开垦 正常 还
肥沃 施了肥,或收了一茬豆子 快 60% 还
板结 同一科连着收了 2 次 慢 40% 还
肥竭 肥沃地连着收了 3 次 慢 60% 不还
休耕 空着放了一整个季节 正常 还
死土 肥竭之后又硬收了 1 次 长不动 —
配上作物分科:
豆科:豌豆、大豆
根菜:胡萝卜、土豆、甜菜、洋葱、大蒜
果菜:番茄、浆果、草莓、蓝莓、辣椒、葡萄
谷物:小麦、玉米
叶菜:生菜
两条规则交叉之后,你该做的就不再是「种最贵的那个」,而是排一张轮作表:
代码块
番茄(果)→ 豌豆(固氮,地自己回肥)→ 胡萝卜(根)→ 豌豆 → …
同科连着种两次就板结。种到死土,这块地就废了。
蘑菇我故意不归入任何一科——菌类不耗地力。归进去等于凭空造一条你根本看不见的规则。
一条我自己定死的原则:不给数字
这里是我做得最狠的一个决定:
卡面不写状态名,不写「肥力 3/5」,不写任何数字。
只有颜色,和一个单字:硬、瘠、×。
图鉴里没有条目,配方表没有提示,没有 tooltip 告诉你因果。你只能从三个现象反推:
长得慢了 → 地不行了
产得少了 → 地不行了
不返种子了 → 地快死了
为什么这么狠?因为一旦把「肥力 3/5」印上去,玩家就会对着数字管理土地。那是一个最优解问题,你算一下就知道该施肥了,不用看地。
而我要的是另一件事:你蹲下来看一眼颜色,自己判断这块地该不该歇。
判断错了会吃亏,但下一次你就认得那个颜色了。这个过程本身就是玩法。
然后我发现:我写的规则永远触发不了
设计文档里我写了固氮规则,还列了四种固氮作物:豌豆、大豆、三叶草、卷心菜。
还特意加了一句「不新增卡牌,只给现有作物打标签」。
结果这四种作物,一个都不存在。
我当时写的时候觉得它们「应该有」,就写上了。回头核对卡牌表——107 张卡里,一个都没有。
意味着:固氮规则写完了、测试通过了、代码跑得一点没错,而它永远不会生效。 玩家永远等不到那块地自己回肥。
这是我这 13 天里最典型的一类错误,我自己给它起了个名字:凭印象写,没回代码核对。
同一天我还发现同类问题四处。其中一处更离谱:我提议把一年从 365 天压缩到 48 天,理由是「节奏太慢」。核对之后才发现 365 不是孤立数字——它是整套二十四节气历法的坐标系,改它等于把历法全部推翻。那个提议我撤回了。
为了修它,我加了四张卡
固氮规则要成立,必须有豆科作物。而它不存在。
所以我违背了「不新增卡牌」那句我自己写的话,加了四张:
豌豆(春季,长得快)
大豆(夏季,长得慢)
以及它们各自的种子
季节我故意错开。 如果两种豆同季,轮作就退化成「同一时间只能种一种豆」,没有取舍。一个快一个慢,你才有「这次用哪个」的决策。
这四张卡是整个土壤系统唯一的物料成本。没有它们,前面那张六态状态机就是一堆跑不起来的代码。
看不见的机制,等于不存在
状态机逻辑写完那天,我意识到一件尴尬的事:
玩家根本看不出来。
土壤从头到尾是同一张图。板结的、肥竭的、死掉的地,长得一模一样。
于是那一天我什么机制都没写,就画了六张贴图:
代码块
新垦 → 深褐,湿润
肥沃 → 黑褐,油亮
板结 → 灰褐,干裂
休耕 → 浅褐,长草
肥竭 → 灰白,砂砾
死土 → 灰黑,焦土
它们以叠加层的形式盖在土壤卡上,不占额外格子。
加完之后我才敢说土壤系统做完了。机制跑得再对,玩家看不见就等于不存在。







