下载 App

开发者日志 ③:鸡饿了会去吃你的苗

10/1711 浏览综合 包含 AI 合成内容
#聚光灯gamejam开发者日志讲一条我自己最喜欢的规则,以及它怎么把整个农场串成一条会自己闭合的环。
起因:家畜太无聊了
最早的家畜是一个产出器。
鸡身上挂一条饥饿条,单向下降。你喂它草,条就涨回去。饿了它就变骨架。
它能跑,但它没有生命——它不会做任何你没让它做的事。
我想让家畜变成「会自己做事的存在」。不是为了真实感,是为了让农场变成一个生态,而不是一排并列的产出机器。
【配图:牧场场景,鸡、牛、羊散在牌桌上】
先纠正了一个我自己写错的假设
动手之前我翻了一遍代码,发现原方案的前提是错的。
原方案写着「心情低 → 动物停产」。我核对后发现:
动物产物根本不是自主的。 牛奶、羊毛、蜂蜜、鸡蛋这四条,全要你把饲料拖到动物身上才启动。产物是你拖出来的,就不存在「停产」这个环节。
硬切成 0,玩家的感受只会是「我拖了草怎么没奶」——看不出因果,只觉得游戏坏了。
所以改成:心情差 → 挤奶变慢,最慢拖到 2.5 倍。
慢是能察觉、又还能等的量级。你拖着同一摞饲料,会直观地感到「今天这窝牛不好挤」。
四个你看不见的状态
我给动物加了四个维度。
状态 怎么变 后果
心情 起始 70,天气影响(晴 +8 / 彩虹 +10 / 龙卷 −30) 越低,产物越慢
恐慌 有掠食者靠近半径内,所有家畜 +45 拖低心情
群居压力 同类挤在一起超过 3 只,每只 +8 拖低心情
年龄 幼崽不啄苗、吃得更少;老了产出变慢 要留种、要淘汰
这四个数字,一个都不会显示在界面上。
跟土壤那条原则一样:不进 UI。你只能从「今天挤奶特别慢」「鸡老是往地里跑」反推发生了什么。
啄苗:这条链的关键
成年动物饿到一定程度,会自己走向最近的作物,把它吃掉。
零收益。它不会给你任何东西,只是吃掉你的苗。
这一条直接摧毁你的轮作计划——你排好的「番茄→豌豆→胡萝卜」,可能走到一半就被鸡吃掉了。你要么先喂饱它们,要么建围栏把它们隔开。
而啄苗本身会让鸡的心情 +12。
这是我最喜欢的一处设计:偷吃和被偷吃是同一机制的两面。
它不是我额外写的一条「补偿规则」,它就是心情系统本身——鸡开心了就不去吃你的苗,鸡不开心就去。你喂饱它,它就不糟蹋你的地。
【配图:一只鸡站在被吃掉的作物位置上】
然后这条链自己闭合了
把这些放在一起,会发生一件我没刻意设计的事:
代码块
狐狸靠近鸡舍
  ↓
半径内所有家畜一起恐慌(不是只有猎物那只)
  ↓
恐慌拖低心情 → 所有产物配方变慢
  ↓
你不想等 2.5 倍,去买牧羊犬
  ↓
钱花光了
  ↓
买不起饲料 → 动物排便变少
  ↓
粪便少了 → 堆肥少了 → 土壤肥力上不去
  ↓
作物减产 → 收入更少
  ↓
更买不起狗                ← 回到起点
这条链里没有任何一行代码写着「惩罚玩家」。
我写的是「捕食者会吓到附近的动物」,写的是「心情影响产物速度」,写的是「粪便能做肥料」。没有任何一处是「设计了一个惩罚」。
但它会自己闭合成一个下坡螺旋。
你必须主动打破它:养狗、多建鸡舍分栏、或者冬天停养。
一处故意的让步
这条链的驱动量是**「变慢」而不是「停产」**。
我刻意把传导系数压低了。因为你只有一次狐狸路过,不应该直接崩盘。
玩家需要有反应窗口——「奶变慢了,我得处理一下」,而不是「我完了」。
这是我在这套涌现系统里唯一一处对玩家做了让步的地方。理由很简单:涌现是为了制造需要玩家思考的局面,不是为了制造无解的困局。
顺带补了两座建筑
群居压力规则写完之后,我发现它没有解法。
同类挤超过 3 只就不开心,但游戏里家畜只能塞进「棚屋」和「农舍」——一群鸡和一头牛住同一种房子,你没法分。
所以补了两座分栏建筑:
鸡舍:竹子与麦秸搭的鸡窝
畜栏:围栏圈出的牲畜区
【配图:鸡舍与畜栏的卡牌插画】
这两座房子是规则逼出来的——不是「我觉得该有」,是「没有它前面的规则就无解」。
开发者日志 ④:真机试玩截图
开发者日志 ④:真机试玩
10-15,21 小时,24 个提交。 这是一篇没有英雄叙事的日志——它记录的是我做完游戏之后,第一次真正拿起来玩,然后发现它有多不好用。 前一天的豪言 10-14 晚上 23:00,我提交了那天最大的一次改动:49 个文件,+4789 / −301。 变异遗传、土壤贴图、人员走动、季节契约,全在里面。项目单日最大的一次改动。 然后在日志末尾,我写了这么一段: 按项目约定本轮未触发远端构建,即所有
开发者日志 ⑤:不会写代码,用 AI 做游戏截图
开发者日志 ⑤:不会写代码,用 AI 做游戏
这个项目从 10-02 到今天 10-15,14 天,88 次提交,164 张卡、107 条配方、24 座建筑、56 个 Lua 模块。 这些代码没有一行是我手写的。 但我要先把话说全:「我不会写代码」不等于「我没有在思考」。 这 14 天里我做的最多的事不是生成代码,是判断代码对不对。 这是两种完全不同的工作量,而后者才是真正的门槛。 一、别让 AI 直接开始写 我犯过的最大的错,是第一天就把需
如何使用一周时间作出一款游戏截图
如何使用一周时间作出一款游戏
参加 TapTap 2026 聚光灯 21 天挑战的第 13 天。 这是我写给玩家的第一篇日志,想先回答一个问题:我到底做了个什么东西。 一句话 把一张卡拖到另一张卡上,等一会儿,上面那张会变成别的东西。 这就是全部操作。没有虚拟摇杆,没有技能按钮,没有连招表。 剩下的 164 张卡、107 条配方、24 座建筑,都是这一句话长出来的。 从一颗番茄说起 游戏里种一株番茄是这样发生的: 你把番茄种子
2 回复
开发者日志 ②:我怎么让一块地有了记忆截图
开发者日志 ②:我怎么让一块地有了记忆
起因:我不满意「土壤」 最早的土壤是一张消耗品卡:种 5 次就没了,施一次肥补回来。 它能跑,但我越看越不对——玩家对它没有任何决策。它只是一个倒计时,你会做的只有「记得补肥」。 农场游戏里,土地不应该是背景板。你在一块地上种过什么、种了几次、有没有让它歇过,这些东西应该留下痕迹。 所以我想让土壤变成一个有历史的实体。 六态状态机 现在它有六个状态: 状态 怎么进去的 长多快 还种子吗 新垦 开卡