文档地址
https://nikaple.gitee.io/iwbt-nikaple-engine-doc/#/ 一个完整的iwana衍生游戏制作框架(必读)
https://gm8.nihil.cc/ gm8文档(必读)
视频相关地址
https://search.bilibili.com/all?keyword=魔方12139&from_source=webtop_search&spm_id_from=333.1007 GM8相关很重要
https://www.bilibili.com/video/BV11J411y7tQ?from=search&seid=10620603214313034823&spm_id_from=333.337.0.0 简易科普
https://www.bilibili.com/video/BV1cC4y1a7mt?share_source=copy_web 零基础制作
https://www.bilibili.com/video/BV1554y1B7xX?share_source=copy_web iwanna的boss基础制作教程(真的是基础)
https://www.bilibili.com/video/BV184411v7U8?share_source=copy_web I WANNA系列游戏制作教程-1(好像是玉兔引擎但是入门很不错)
https://www.bilibili.com/video/BV1Lx411U7W8?share_source=copy_web 【Game Maker & I Wanna】UP半小时教你做一个简单的i wanna游戏!(快节奏教学)
Gamemaker8
https://www.bilibili.com/video/BV1yE411b7hw?share_source=copy_web 【GameMaker8教学】已完结,十分有趣
界面展示
文件结构说明
Sprites
存放所有精灵贴图,当然这些贴图可以自己编辑,也可以自己设置一下碰撞盒
Sounds/SE
存放的是游戏的音效文件
Backgrounds
存放的是背景图片和一些瓷砖贴图
Paths
存放的是路径,可以让游戏中的物体沿一定的路径移动
Scripts
存放的是脚本文件,果引擎内置了不少方便的脚本供使用,可用来进行一些初始化操作,和实现一些功能,比如淡入淡出,放射一圈物体,闪屏效果和屏幕抖动等等
Fonts
字体文件
Time Lines
存放的是时间轴,可设定一定步数(帧)后执行某项操作,精确度较高,一般用于做耐久关卡和音游
Objects
游戏物体,比如砖块,玩家,存档点,刺,传送点,如果有需要的话你可以尽情的对它们的代码进行修改,当然前提是你最好确保改坏了还能改回来
Rooms
存放的是游戏房间,也称为场景,引擎也提供了许多的房间实例供我们参考
温馨提示
制作过程中记得点击上方第三个按钮或者ctrl+S保存
如果制作好成品之后可以上方工具栏第四个按钮,或者文件(F)——>创建可执行exe(C)来到处exe文件
创建房间
0.房间可以自行命名,我命名为rTest
iwanna的宽度和高度一般为800,608
视野这边设置房间视野和屏幕输出大小
房间速度是50,好像引擎里面也把速度统一锁成了50
多视野房间也可以通过房间里放置一个camera物体来分隔
1.画简单的场地
改背景,方便制作和贴图
点击背景图片,将背景色改为类似于天空的颜色或者其他
画砖块
在对象中我们可以选择要添加的物体,选择objBlock,开始在房间画砖块,按住shift键可以连续地绘制,如果画错可以鼠标右键删除
我们可以把背景颜色调暗一点来画(提示:这里也可以调节精灵的透明度,因为精灵不显示所以不影响最终的效果)
注意切回对象界面再画(切到星空姐界面也可以),不可以画歪
给砖块贴图
然后我们点击贴图面板,选择Alltiles图片,开始为画好的砖块贴上贴图
新版果引擎自带自动贴图,在果引擎的帮助文档看,对新手有极大帮助
添加初始人物
点击对象,在画好以后添加一个playerStart,作为玩家初始化位置: room-->objplayerStart
加刺(坑)!
然后我们就可以加点刺了 killers-->
加存档 saves-->savePoint
保存加载玩一下(哈哈哈哈)
点击保存试着运行一下下!go!
注意:我之前是将初始房间改为rTest了,如果你要更改的话,找到Scripts下的functions下的setGlobals脚本,然后将第十一行 global.first_stage = 后面改成你想要的房间名,这样的话你选择开始游戏才会启动你做的房间
关于跳高
好像最高四点五格,但最近有可以不bh跳四点五格的方法,所以理论上4.6?
2.建立传送点
加个传送点吧warp--> 传送门连接:roomTo = 房间名称 新版本果引擎是creatiuon code里写r = 房间名称,在Object文档里面
king所对应房间过度效果在GM内置的文档里查看,官网文档里也有
创建传送点连接,鼠标选择传送点,ctrl+右键,创建时执行代码,如果不小心直接鼠标右键把它删了可以ctrl+Z撤销
r = rT2; // 待传送的房间号
kind = 21; // 传送过度效果
text = "Warp"; //我们也可以让它显示一段文字
温馨提示:
可以简写为roomTo,养成这个习惯不容易出错,换行这种墙裂建立加分号,不加可能出问题
注意:这上面有两个三角按钮,一个是正常运行,另一个是调试模式,我们在制作过程中可以选择调试模式,以便及时修改参数
3.开始做坑(飞刺和路径刺)
我们找到objTrigger(triggers-->objTrigger),把它放在你想要玩家触碰的位置
然后ctrl+鼠标右键,创建时执行代码
image_yescale是扩大Y轴范围(正向下负向上),image_xescale是扩大X轴范围(正向右负向左)
果引擎也可使用ys(y轴大小)和xs(x轴大小)改变物体大小
trg = 1; // 首先设置触发器编号 trg = 编号
snd = sndBblockChange; // 设置音效
ys = 4;
由于我们是将触发器放在空中,但我们需要的是从当前位置到地面都能被触发,我们就来设置一下他的y轴缩放,将其改成原来的4倍
有了触发器之后,我们需要设置触发对象,在你之前放置的任意一个能使玩家死亡的东西上面打开“创建时执行代码”
(果引擎可以这样用玉兔的这样会无响应的,可选中至少选一个,不然只会触发没有动作响应)
我们需要写一下它所对应的触发器的编号,我们希望玩家触碰到1号触发器时,陷阱启动,所有我们也给他设置成1
trg = 1; // 首先设置触发器编号 trg = 编号
v = -6;
我们首先试一试横纵向速度的方法,我们这里只需要让它向上飞,所以只需要将它的纵向速度改为-6(上负下正,左负右正)
why上负下正,左负右正,因为房间的原点(0,0)在房间左下角,设定和平面直角坐标系一样
另一个我们就同样将编号设置为1,不过采用速度加方向的方法
trg = 1; // 首先设置触发器编号 trg = 编号
spd = 6;
dir = 90; // 方向:0右,90上,45右
用speed会出各种错误,提醒一定要简写,包括paths也一定要写pth,写成path就不是原来的轨道了
路径刺:
pR1是向右移动一格,其余的可以在引擎中已经做好的路径中查看
注:玉兔好像没有这个路径,建议果引擎导出再玉兔导入,效果一样
然后就是速度和路径缩放比例,比如你可以将缩放设置大一点让它不只移动一格,如果保持原来比例的话可以不写
trg = 2;
pth = pR1; //向右移动一格
spd = 3;
scl = 1;
enda = 0;
move = 0; //防剧透,0代表不需要
防剧透是指如果在某个坑执行完之前玩家死亡的话,这个坑会保持当前的运动状态继续下去,以对没有展示出来的部分进行保密
基础教程到此结束,其他教程可以多看看官网
如果你制作好了一个完整的作品,可以点击上面“创建可执行exe文件”导出,发给别人的时候记得带上引擎目录下的Data文件夹和options一起