大家下午今天咱们聊聊那个叫《少女的求生之路:研究所》的烂摊子。这玩意儿一开始就是我为了让我家那口子消停点才鼓捣出来的。
去年夏天,我接了个外包,那项目甲方事儿贼多,天天改需求,我连着通宵了一个多月,眼看着人都要废了。结果她倒天天抱着手机刷短视频,说自己没得玩,无聊得要死。我当时火气蹭一下就上来了,但又不能吵架,只能憋着。
我当时就琢磨着,行,你不就是想找点事儿干吗?那我就自己写一个。目标很明确:一个资源管理和时间分配的小程序,让她自己去“生存”试试,看管理一个虚拟角色有多麻烦。起名叫“研究所”,就是因为她当年没考上理想的大学,一直念叨着要进某某研究机构,也算是个补偿。
开始动手:代码和工具的选择
说干就干,我抓起了手边的Python,想着这玩意儿简单,写个文本界面糊弄一下就行了。结果发现,光是界面逻辑就绕晕了。我尝试了Tkiner,那界面丑得我看了都心烦。后来我直接放弃了界面,改走Web端。前端嘛能用就行,就用了最基础的HTML和一点点JS。后端,Python的Flask框架,轻量级,跑起来方便。
第一个版本我花了三天时间硬怼了出来。那叫一个粗糙,界面纯黑,所有的操作都要靠输入特定的指令代码。她玩了半小时,直接把手机扔了,说这是上古时期的玩意儿,根本不是给人玩的。
我当时那个气,但是又不能发火,毕竟是自己承诺的。没办法,我忍着头疼,重新翻出了我大学时候学的Unity。对,就是那个老版本,贼卡。我花了整整一周的时间,从头开始学怎么做2D像素风格,怎么处理资源的实时消耗和角色的情绪波动。砸进去的时间和精力,比我那个外包项目还多。
为什么要这么执着地更新?
你们可能觉得我傻,为了哄老婆开心,至于投入这么多时间吗?这里面有个事儿,我一直没跟人说过。这件事儿,就是我玩命更新这个项目的主要原因。
她怀老二那会儿,我爸突然住院了。手术前一天,我那外包的甲方非要我去现场改一个配置文件,说是不改不行。我当时人在医院,急得团团转,好说歹说,他们就是不放人。我求了他们半天,3拍桌子骂了一通,直接把工作甩了,跑回医院陪我爸。
结果,我工作丢了。是的,就这么丢了。当时我们家存款,一下子全压在我爸的手术费上了。那段时间,家里的气氛压抑得喘不过气。我拼命找新的工作,但都不得劲儿。每天晚上,我就偷偷摸摸在客厅的小桌子上,写这个小游戏。这游戏对我来说,已经不是个哄人的工具,它成了我的一个出口,一个能让我觉得“我还能创造点东西”的证明。
我必须得把它做好,做到她愿意玩,玩得开心。这是对我自己那段时间的交代。
最新的折腾记录(研究所 V1.8)
这回更新,主要就是处理了角色崩溃和资源分配不均匀的问题。之前,只要压力值一高,角色立马就“崩溃”了,太不人道。我调整了压力系数和休息机制,让她至少能撑久一点。
- 增加了三个新的研究项目,每个项目都有隐藏的资源消耗陷阱。
- 优化了移动端的操作逻辑,现在可以直接拖拽分配时间,不用再点半天了。
- 修复了一个极其隐蔽的Bug:角色在深夜休息时,会偷跑去厨房吃存货,导致第二天食物短缺。这个Bug我追了三天,发现是我当初写随机事件时,没注意资源同步锁的问题。
- 加入了“下载地址”功能。我知道你们肯定要问在哪儿下,我打包了安卓和Windows版本,但是别问我链接,咱们圈子里传传就行了。
现在她每天都能玩半小时,虽然还是会骂我设置的难度太高,但至少,我这大半年的心血没白费。继续折腾,下周我准备加点新的“灾难事件”,让她体会一下真正的求生不易!