用户:
荧羽小号查看:4 回复:28 评论:4 创建时间:2018-03-30T17:02:50
代码岛2.0解谜游戏制作教程
一、 准备剧本
首先要有一个简短的剧本,可以是小说里的某个片段,可以是某个电视电影的片段,自己编当然更好。但是要有一个可以不合理的开头和必须合理的结尾,比如:
在一阵刺眼的白光下,睁开眼睛。发现我喵,但是我发现我不知道我是谁,我在哪里……
这是一个不大的房间,里面只有一个桌子,一个门,一个电脑和一扇窗户。
我四处寻找线索,发现桌子上有许多散落的作业本,一个闹钟。
我走过去翻了翻——本子上的名字是小明;
桌子上的钟显示现在是24点,但是窗户却透着刺眼的光;
电脑打不开,提示需要密码。 我想我需要寻找更多的线索,
但是门却打不开了。好像被人反锁了。
Ok,跳窗吧……喵了?!!
…… 重来,我想我错过了什么……
一阵刺眼的光,我再次醒来。
嗯,思考一下哪里有问题,这里有桌子,门,电脑,窗户还有……床?!
我摸了摸,点了点,没啥反应啊……
不对,好像床动了一下,我用力的把它拖走发现床下面有一张纸,
上面写着:在不正确的时间里,做不正确的事情,是不能成功的。
读完后,突然,电脑自动开启了,上面写着时间12点。
我碰了碰闹钟,发现也可以调了尝试调一下,12点
……boom!
一阵刺眼的光,我再次醒来。嗯,我想到怎么出去了……
持续更新中……请不要水楼,谢谢!
荧羽小号二、 建造场景
1. 清除世界
这个界面,先把世界设为平原,因为看着舒服……
Ok,其实这步可以省略……
2. 搭建剧本发生的场地
建个房子,这里用MagicaVoxel ,下载地址2.0群文件里有
好吧,我觉得还是手动建吧,玩过mc的小伙伴应该知道怎么建房子
先开个飞行模式,左键破坏,右键建造,e建背包换方块
一个丑到炸的房子建好了!惊不惊喜!意不意外!
建筑什么的先不说,主要还是教一个剧情
Ok,飞行模式可以穿墙,进去再堵上门……开个窗户
然后Ctrl+F3打开坐标看一下
记录一下位置,玩家位置取个整数好了,那就(x 1,y -26 ,z- 15)
Q键或ESC退出,
这个位置改成刚才记的坐标
再进去玩家出生地就是刚出现的位置啦!
然后可以关飞行了
密室逃脱的感觉有木有……
点赞0
评论
荧羽小号三、室内物品的建设
接下来就是一个简单的物品摆放这里用3D画板或者那啥,所有的模型像素为16X16X16或者32X32X32,注意是像素,不是真实的大小,随便你用哪个
然后在建造里找到模型的摆放,这里推荐用实体
这个位置,不用多说了吧,找个舒服的位置
这里看焦点位置,但是注意,焦点位置指的是地板,所以实际模型摆放位置应该是地板的上面一格。所以需要y+1,x,z不变。所以应该是(-2,-26,-16)
这里要放到音乐之前,不然得等到背景音乐结束之后,才会放置模型
袖珍的小桌子,可以用来吃泡面……好吧,你想大点的话就改一下比例
比例改成2就是两倍,3就是三倍
如果发现改完之后没效果,或者大了一下子就小了,
就把这句换个位置,左键放置
舒服了…… 同理,其他的东西零件也这么摆。
点赞0
评论
荧羽小号四、模型实体摆放问题解答
在摆的过程中,可能会遇到一些问题,比如
(1)物体放上去会自动掉到地上,原因是实体受重力的影响
解决方法就是
先把原来的实体模型破坏掉,关掉物理引擎,然后放置
(2)物体的朝向不对
解决方法可以直接再3D画板转个方向,或者用实体的转向模块
(3)转向之后,或者发现自己的模型不对,好像被狗啃了一大半,恭喜你发现了bug 画模型切记不要填的太满,虽说是32*32,但是要留一个边,四个方向都要留一格的距离出来
(4) 位置问题——这个坐标系看不懂的话,那就找块喵地,仔细研究一下 (5) 为什么要用实体,不用模型?为什么实体只能放一个?
这个嘛,你可以看看wiki或者自己尝试一下,这里就不科普了
(6)坐标根据实际情况可以调整,实体可以精确到0.1
(7)放床的时候要注意先把剧情物品放进去
挖一个坑,然后看一下坐标,记一下
然后再放床……
完美……
这里用一个广播和等待代替左键点击,把左键腾出来
接下来,就可以着手添加剧情啦
点赞0
评论
荧羽小号五、 代码岛的剧情逻辑
首先,设置一个变量来控制剧情发生的先后顺序,flag。
当然,你叫别的也行
接下来,用左键去控制事件的发生
为什么床要按下左键时呢,因为剧情中说了,主角要拖开这个床,是个持续性的动作。 其他的都是一些使用啊,什么的,属于瞬间完成的动作。
当然统一用放开左键也可以,不过玩的时候没手感……
然后在玩家对话那里,加一些剧情里的话。
对于剧情里的门和窗,因为是用方块拼成的唯一材质。
所以可以直接用材质进行判断
现在可以进游戏看看是不是有点感觉了呢
按剧情走,接下来是床
然后呢,在床下面发现了纸条,那玩家得像mc一样能够捡东西
这里就涉及都一个很高级的东西了,广播+循环
点赞0
评论
荧羽小号这里一步一步解析
从游戏开始就发送了一个HI的广播,然后这边接受了,就会重复执行以下的语句
重复执行什么呢,就是玩家如果碰到了纸,就会把这个纸破坏掉,跟方块是一样的。然后”阅读”纸里的内容……
为什么这么麻烦呢,因为在代码岛里,任何被动的事情的触发都是有条件的,这个条件就是如果……,但是这个条件本身是不会重复去检测你到底触发了这个条件没有,所以就要加个重复。重复这个语句又是不能加到主程序里去的,如果它没有结束条件,它就会无限重复,导致后面的程序无法运行,比如
这样子,后面的Hi和播放声音都是没办法运行的,都被重复给挡住了
所以,你可以把这段代码理解为,当玩家碰到了纸,就会破坏它,“阅读“里面的内容……
Ok!接下来就到了flag出现的时间啦!
首先,用变量,得设置一个初始值,这是一个好习惯
可以把0,意味这剧情没开始。
然后捡到纸了,后面的一些剧情需要改变了,这个时候,flag变了
在剧情中,是捡到纸之后,电脑才解锁,钟才能调的……
所以呢
点赞0
评论
荧羽小号意思就是说,如果调了这个钟和电脑一致,它就会boom! 当然,如果炸到玩家了,玩家总不能这么流弊金刚不坏吧,便当还是得领的
这里说明一下,这个便当的领法。就是喵亡flag。
当然,这里最简单的方式就是停止游戏啦!
跳窗也是
注意!这个在编辑的时候不要随意进游戏去尝试,如果没有还原手段的话。 如果要试试自己的程序可不可行,先保存
最好再备份一个在本地,然后再试。完了觉得不行就读取,再进行修改 不然你会发现爆炸完,你再进游戏还是爆炸后的样子(地形被毁了)。当然游戏发布之后就不用担心这个问题了。
\
点赞0
评论
荧羽小号然后就是游戏结局的问题,没有结局的游戏不是完整的游戏,会被玩家吐槽的
当然,开头也得设置一下
此外还有一点特效,就不说啦!
教程结束!
附:网址:https://lab.codemao.cn/work/1576027
点赞0
评论