跳到游戏
Hadukis

文章

每分钟涨 30% 是一个兑现不了的承诺

· 阅读约 3 分钟

Husktide 是一款幸存者类游戏:你四处走动,武器自动开火,虫群越来越多,每升一级就选一个强化。一局围绕三十分钟设计:到 30:00,收割者(Harvester)出现。带着一套成型的 build 撑到它出现,就是游戏给你定的目标。

最初的设计文档里有一行写着,敌人血量应当每分钟增长 30%,没有上限。听上去是一条合理的难度曲线,其实不然,这笔账值得算一次。

每分钟 30% 实际意味着什么

每分钟 30% 的复利增长,就是每过一分钟把 1.3 再乘一次。五分钟后是初始血量的 3.7 倍,很陡,但还行。三十分钟后是大约 2,600 倍。

一只开局挨两下就死的甲虫,到最后大约要挨五千下。没有哪套 build 能打出这种输出,所以每一局的后半段不是难,而是数学上不可能。游戏给出的目标是撑到 30:00,而这永远无法达成。这样的曲线不会奖励一套好 build;它只是决定了你在哪一分钟死。

现在的曲线

前五分钟,血量仍然按完整的 30% 复利增长,因为游戏本来就应该在这段时间快速爬坡,而玩家的 build 也在同样快地成长。第五分钟之后,改成线性增长,每分钟增加第五分钟数值的 62%。

到 30:00,算下来是初始血量的大约 61 倍,而不是 2,600 倍。依然是一堵墙,本来也该是一堵墙,只不过成型的 build 能翻过去。

为什么所有敌人共用一条曲线是错的

第二个问题更隐蔽。如果所有东西都套用同一条曲线,那些小杂兵大约在第八分钟就不再一击毙命了,而这正是这个类型开始变味的时刻。像割草一样扫过一地小东西,是这类游戏一半的乐趣。当这片「地毯」开始每个都要挨三下,屏幕就会被塞满,玩家被堵住,感觉就像武器变弱了。

所以现在每种敌人都有自己的指数,这个数字表示它承受全局曲线的多少。杂兵只承受很少一点;精英几乎全部承受。到 30:00,不计跟随你等级的那部分较小的加成:

  • Crawler,虫群里最小的东西,血量从 7 涨到大约 20。几乎什么都能打死它。
  • Razor Wasp 从 12 涨到大约 68。
  • Soldier Beetle 从 20 涨到大约 260。
  • Weaver Spider 从 52 涨到大约 1,700。
  • Hive Brute 从 130 涨到 7,000 以上。

杂兵还是杂兵,精英变成了墙,而游戏后期要做的,就是在地毯源源不断涌来的同时对付这些墙,这正是这个类型的后期该有的样子。

让数字保持诚实

所有这些数值都放在游戏文件顶部的一个代码块里,而不是散落在各处。一局时长、敌人数量上限、增长率、第五分钟的切换点和线性增长率挨在一起,每个旁边都有一条注释,解释它为什么是这个值。一条曲线如果分散在十几个地方,总会有人改了其中一处,然后没人说得清游戏在第二十分钟到底是什么样。

平衡性的改动先量再吵:游戏循环可以从控制台手动步进,这让我们能把时钟往前拨,直接读出某个敌人在任意一分钟的血量,而不用真的玩到那个时候。

通用的道理

一条能用一句话说完的难度规则之所以诱人,恰恰因为它能用一句话说完,而复利增长是最容易写出来的那一种。它也最有可能悄无声息地把一款游戏搞坏,因为前五分钟(也就是所有人都会测的那部分)感觉恰到好处。上线之前,把乘法一路算到一局的结尾。

来玩 Husktide,看看你的 build 能离 30:00 多近。