下载 App
《气味之城》开发日志:季节改掉的两个真数字
10/302 浏览综合 包含 AI 合成内容
【涌现瞬间】上图是今天实机拍的一屏街区:中间的投喂点、水碗、垃圾桶和一圈粉色气味粒子都在。上一条开发日志讲了季节的表和画面层,这条讲它真正动手的地方——季节不是换背景,它改的是两个会直接影响猫行为的数字。
第一个是气味浓淡倍率:所有气味都要经过唯一的沉积入口 deposit(),进去之前统一乘一个季节系数——春 1.18 / 夏 0.92 / 秋 1.06 / 冬 0.74(scripts/life_goal.gd:33-36、96-103)。
这张表每季还带一句给玩家看的话(note 字段):春「潮气回上来,气味留得久一些」、夏「热气把味道推散,街巷里的气味变淡」、秋「起风了,投喂点陆续有人来添饭」、冬「冷得很,气味凝在原地,投喂点也冷清」(scripts/life_goal.gd:97-103)。
第二个更狠:投喂点有没有人来补货。should_restock_feeder():春 true / 夏 false / 秋 true / 冬 false(scripts/life_goal.gd:38-40、96-103)。也就是说,一个 28 天的年里有整整两周,街上的饭盆没人来添,而这两周正好是夏和冬。
这两个开关是同时关掉的:气味淡一档,饭盆空一周。可以把它们看成同一件事的两面——气味决定猫能发现什么,饭决定猫还愿不愿意留在街上。
最有意思的是换季那一拍:_on_season_changed 一被触发,先通知氛围层整套重建(weather.apply_settings(),scripts/main.gd:1562-1565),再往事件日志写一行「—— 换季了:夏(热气把味道推散,街巷里的气味变淡)——」(scripts/main.gd:1568-1570)。于是换季这件事本身,也会变成这条街历史里的一条。
代价是「同一件事两个算法」——这个项目最贵的一类 bug。季节下标只能有一个来源:氛围层不自己算,用一个回调去问 LifeGoal(scripts/weather_fx.gd:58-61、scripts/main.gd:839-840)。
如果你也在做「世界会自己变」这类东西:你是让季节只改外观,还是让它改数值?我更想听后者怎么落地。
助力入口:https://www.taptap.cn/poster/NIKiDS1YShdA(在活动页找到《气味之城》的卡片点「助力」,玩满 10 分钟这一票才有效)
游戏页:https://www.taptap.cn/app/955418(免费试玩,安卓免安装)
本游戏内含有使用 AI 生成的游戏资产。(美术资产中 AI 生成 15/62 项、24.2%,已在商店页「合规声明」栏与素材声明动态如实申报:https://www.taptap.cn/moment/860654227951715441 )











