下载 App
开发日志01|我没有武器,只有石头和一头暴脾气的野猪
6 小时前4 浏览综合
大家好,我是诱兽人的作者。这次聚光灯 GameJam 的主题是「涌现」,我用 TapTap 制造做了个小游戏,叫《诱兽人》。第一篇就随便聊聊:这游戏是啥,我怎么理解涌现,还有这几天是怎么改过来的。
这游戏是啥
你手里没有武器。能做的就几件事:扔石头、闪避、找个好位置站着。剩下的交给野兽。
地图是四个连在一起的院子:猎场、外院、杂物院、出口院。你从第一个院子的角落出发,走出最后一道门就赢了。

路上有一头野猪,会看会听。听到动静它会过去看看,看到你就追,离近了还会蓄力,直直地冲过来。外院的栏圈里蹲着一只野狗,只守自己那一小块地,谁闯进来被它看见就咬谁。人也咬,猪也咬。
开局你带 3 颗石头,最多揣 5 颗,能扔 7 米。扔出去的可以走过去捡回来,外院还有个石头堆,站旁边会慢慢补。被猪盯上了,按空格能闪开。
出去的办法不止一种。可以骗猪帮你把门撞开,也可以从最后那堵墙边一条 0.8 米的小缝钻出去,人能过,猪过不去。游戏不要求你打倒谁。
我理解的涌现
我的理解挺朴素:每样东西只管自己那点事,凑到一起,就会闹出一些我没专门安排过的事。
所以做关卡的时候,我尽量不写“解法”。没有“猪走到这儿门就开”,也没有“狗进了这块区域就倒下”。每样东西只有自己的脾气:石头落地会响,铁盆一砸特别响;矮栏挡路,但石头能从上面扔过去;木门和栅栏挡路,但猪能撞开;木桶可以推。

玩起来大概是这么转的:你扔石头弄出动静,猪过去看。石头要是砸在木门或铁盆上,猪会火,直接朝那个声音冲过去。冲开了门它也不停,一路冲进下一个院子,撞到墙才晕。猪闯进狗的地盘,狗就咬它;猪冲起来碰到狗,狗就再也起不来了。你站在中间,负责点火。

一路改过来的

最早只有一个院子,过了门就赢。很快我就觉得不对:门一过游戏就完了,猪只是个要躲的障碍,不是能用的工具。所以改成了四个院子,开了第一道门还得接着往里走。
还有个挺重要的改动:普通石头只是把猪引过去看看,它看完会在原地听一会儿,正好给你换位置。只有砸到木门或铁盆,它才会真冲。这样“引”和“激”就分开了,借猪开门也就成立了。第一道门后面我特意留了条空走廊,让它破门之后冲得痛快点。
中间有一版我放了四只猎犬,外院两只,后面两个院子各一只。它们会叫同伴,被猪撞倒了还会爬起来反咬。后来我还是砍了,只留外院一只守栏的野狗,被猪撞一下就起不来。猪这边加了 4 点血,狗咬一口掉一点,被咬光了会倒地,过 8 秒再爬起来。
一个我没设计过的情况
写这篇日志的时候,我让游戏逻辑在后台自己跑了几段,把每一帧的位置画了下来。

上半段:我扔了一颗石头砸门。猪冲过去把门撞开,没停,斜着冲进外院,撞在矮栏上晕了,正好晕在狗的地盘里。狗看见它,开始叫。
然后出了个我没想到的情况。狗叫也算动静,猪醒过来听见了,就跑过去“看看”,结果越走越深,一路挨咬。照现在的规则,它倒下 8 秒爬起来,很可能又被叫过去,再挨咬。这不是我设计的,只是因为猪不管声音是谁发出来的。而且我只在模拟里看到过,还没在游戏里亲手碰到。
下半段是我想要的效果:我穿过破门走进外院,故意让猪看见。猪只剩 1 点血,冲我蓄力,狗还贴着它咬。猪一起步就把狗撞翻了,我往旁边一闪,它扑空撞墙上。
所以想问问大家:狗一叫猪就凑过去挨咬,你觉得是该修掉的 bug,还是留着当个可以利用的套路?
地图编辑器
这种玩法有个麻烦:东西挪一米,结果可能全变。狗往左挪一米,猪就撞不到它了。每次去改坐标太慢,所以我做了个本地的地图编辑器。

左边选东西,墙、高堆垛、木门、栅栏、矮栏、木桶、铁盆、出生点、野狗、石头堆,点一下就放上去,选中了直接拖。右边能改位置、大小、朝向,也能改每样东西的脾气,比如能不能推、能不能撞破、砸了响不响。狗最多放 24 只,猪目前一头,能改血量和倒地多久起来。撤销、重做、导入导出都有。存完点“保存并试玩”,游戏就用新地图打开。
因为关卡里没写死解法,改地图就像换了个棋盘,同一套规矩能碰出不一样的东西。不过编辑器只能检查数据没毛病,能不能通关还得自己上去玩。
踩过的坑
这几天改来改去,坑不少,简单记几个:
- 撞门判定不靠谱,猪没真碰到门,门也可能开。后来改成冲撞路线上真碰上才算。
- 猪擦着墙边过去也会被撞晕,看着很怪。改成正面撞才晕,擦边就顺着墙滑过去。
- 瞄准线和石头真正的落点对不上。改成两边用同一条线。
- 石头数目偶尔算不清。改成每颗石头从包里、天上到地上一直是同一颗。
- 猪和狗会卡在围栏、堆垛的角落里不动。加了卡住就重新找路,实在到不了就放弃。
- 木桶可能被推到必经的门口,把路堵死。门口附近现在推不进去。
- 猪被咬倒了,门还没开,人就卡死了。所以猪会 8 秒后爬起来,最后那条小缝也是为这个留的。
为了不老是改出新问题,我写了一些自动检查(现在 23 项),每次改完跑一遍。
接下来(都是计划,还没做)
先在游戏里把几种玩法真刀真枪试一遍:隔着矮栏扔石头,隔着院子用铁盆引猪,推木桶和撞栅栏两条路。再测通关大概要多久(我希望第一次玩 3 到 5 分钟),手机上闪避顺不顺手,横屏能不能看清猪蓄力的提示。现在场景道具是用简单几何体拼的,音效也是临时的,后面都会换。
更远一点的想法:加几种只会干一件事的新野兽,让编辑器能放好几头猪,时间够的话开放大家自己做地图。
下篇我想直接上实机画面,看看借猪开门、让猪撞狗在游戏里是不是一样好玩。












