一款AVG游戏,也就是广泛意义上的Galgame。
突然跑来做游戏的理由很简单。我的爱好是做有趣的事情,游戏很有趣,所以我就来做游戏了。AVG游戏比FPS游戏简单,所以就先做AVG游戏。我是绅士,所以我做Galgame。
做一款游戏是符合我乱点技能点的爱好的一个决定,因为如果我一个人将这款游戏做出来,这将成为我锻炼编程、编剧、作画、制曲能力的绝佳机会。
AVG游戏的全名是Adventure Game,即冒险类游戏。通常意义上的日式AVG游戏是指电子剧本冒险游戏,为了防止混淆,请允许我暂时将其称为Galgame。
Galgame作为一类历史悠久的游戏,本身就已经十分成熟了,其中最经典影响最广的一个引擎叫做ONScripter(Open Source Nscripter )是Nscripter的第三方开源版本。这个引擎有一个十分变态的特点,那就是:几乎可以在任何一个平台运行,可以与号称“有屏幕就会有的Bad Apple”望其项背。
这是我查到的ONScripter支持的平台:
Android
Zaurus (SL-C700, etc.)
……
Linux
MacOS
Windows
Windows Mobile
Windows CE
PSP
iOS
NetWalker
Brain (WindowsCE 6.0)
NetBSD, DragonFly BSD
OS2/Warp
Playstation
Wii
FreeBSD
Dreamcast
只要你想,你甚至有可能在你的步步高点读机/Kindle电子书/诺亚舟电子词典/建设银行ATM/九阳豆浆机/海尔电冰箱/格力空调遥控器上运行ONScripter!<请把这一段删除,拜托了,王大可疯了>
ONScripter简称ONS。
我人生中玩的第一款Galgame就是使用ONS引擎玩的,那就是虚渊玄的——《沙耶之歌》
知名的《寒蝉》《Air》《Clannd》都是这个引擎上的知名作品。
随着时代的进步,ONScripter引擎在性能上已经渐渐满足不了大家的需求了,但是由于我对ONScripter有着深厚的情感,于是决定将ONScripter作为第一阶段的引擎。
Galgame引擎的学习难度是相当低的,说实话,ONS的脚本语言是我见过的最简单的语言了——如果它可以被称为一门语言的话。。。
其实除了ONS外,还有三个引擎备选方案的
KRKR
橙光
Unity3D自制引擎
但是最后我依然决定要使用ONS,因为Galgame重视的是立绘、CG的作画质量,以及剧本质量,引擎是次要的,只要有需要,整个游戏可以相对轻易的更换引擎。
由于ONS是一个十分古老的引擎,并且是由日本人开发的,所以十分难以找到汉语及英语教程,我在B站找到了FiveYellowMice的教程(点击链接可以进入)十分遗憾的是,由于视频点击量太少,FiveYellowMice半途而废,腰斩了教程。
后来我十分幸运地在bangumi(点击链接可以进入)找到了4年前X‘moe Project留下的教程。受益匪浅,十分感谢X'moe Project!
本系列【ONScripter笔记】将会以这位dalao的文章作为基础进行展开。
接下来的一段时间,我将会循序渐进的分多篇文章重新组织X'moe的教程进行发布,我会重新编排,并修复小错误,添加注释,使教程更加易懂,更加嫩滑可口。
我在想,也许我会成为最后一个专门为ONS写教程的人吧,ONS引擎迟早会成为虚拟世界杂物堆中的一员,但我希望能借这个机会敦促自己制作Galgame,并且对可能会有的后来人有所帮助。
我会持续更新,并发表在虚拟杂物的记事本专栏的。
高一还没有文理分班时,历史课也是要考试的。
我讨厌历史课,因为我历史成绩差,诡异的是,高一整整一个学年我将自己精力中最大的那一块分给了历史。
我学数学物理都没有这么专心过。我可以一边睡觉一边让物理考A(优秀),但是历史只能考C(及格)。
甚至有时我会早上5点起床去学历史,以求自己的成绩可以提升。
我将学历史的全部精力都投入到了一个笔记本。那是一个精致的本子,里面我用前所未有的专注度十分详细的记了历史笔记。内容之全面及精炼完全碾压课本,是老师课堂上积聚出来的结晶。
目录索引井井有条,书写框架十分清晰,表格也十分用心,甚至我为它制作了一些小插画。
我倾注了巨大的精力来做笔记,但是实际上我并没有在认真学历史。我只是在通过证明自己的努力来逃避一些事情。历史该考C还是考C,这使我十分烦躁。
但是我直到现在都在怀念我做笔记的那段时光。
安静地,一个人坐在凌晨5点没有人的教室里,慢慢地像对待艺术品一样记着一本对我没有任何卵用的笔记。渐渐天亮了起来,清晨第一缕阳光透过窗户照在了黑板上,再过一段时间,学校的起床音乐会响起,紧接着第二三名同学会破门而入,带着早饭的气息,教室渐渐变得喧哗起来,我的禅意渐渐褪去。
我为什么会这么想我也没搞懂,我从毫无意义的事情中体会到了一丝令我愉悦的东西。
我并不是将东西写给别人看的,我只是在享受那一瞬间毫无意义的满足感。
这个专栏暂时作为ONS笔记使用。
文字冒险类,AVG游戏的本质就是一种幻灯片,像PPT一样。
配合着插图会有BGM与对话、字幕出现。
首先我们来简单了解一下ONS引擎的运作方式。
我们先新建一个文件夹,文件夹的名字可以是你游戏的名字。在这里我们以saya为例。
然后在saya文件夹里放置如下四个文件。
前两个.exe与.dll文件是引擎所必须的系统文件,是引擎的主体,相当于游戏的血肉。
这两个文件可以很轻易地在网上下载,搜索ons模拟器就可以找到,注意需要下载你所对应的系统的正确版本。
如果在这方面有困难可以在评论区或者私信向我索取资源。
测试游戏时就是双击onscripter.exe使游戏运行起来的。
第三个default.ttf文件是TrueType 格式的字体文件,你可以通过更改这个文件的方式实现游戏字体的自定义。这个文件可以在电脑系统目录C:\Windows\Fonts找到。当然你也可以去网上下载。由于我们的游戏是汉语游戏,因此需要找汉字字体。
挑选你喜欢的字体复制到你的游戏文件夹内,记得将文件名改成defult.ttf。
第四个0.txt是游戏的核心。我们一般将其称为“脚本”。游戏的程序逻辑以及游戏剧情全部在这个txt文件里,相当于游戏的灵魂。
准备好这四个文件后,我们就可以双击onscripter.exe进行测试了。当然,由于0.txt脚本里什么东西都没写,因此你只能看到一个一闪而过的黑屏。
测试完成后再看你的游戏文件夹,你会发现文件夹里多出了两个文件。
stderr.txt是报错文件,这里面会记录游戏运行时出现的错误,帮助作者debug
这个相当于其他语言在进行调试时,编译器给出的警告。▼
stdout.txt是游戏运行信息,除非有什么特殊目的,无视它就好了。
游戏除了引擎脚本字体库外,还需要音频图片之类的多媒体素材用于构建游戏。这些文件只要被放在总文件夹下就可以生效,但是这不是一个好习惯,因为随着游戏内容的充实,文件夹内会被各种文件挤得混乱不堪。因此我们需要新建子文件夹对素材进行分类整理。
临时素材库用作临时的文件周转枢纽,这是我的个人习惯,最后我会将这个文件夹删除。
▲我一般还会在image与sound文件夹下再分别设立子文件夹,用于对图片与音频文件进行分类。这些文件夹的设立并没有统一标准,大家可以根据自己的爱好来做。
一个完整的游戏就是需要这么多东西。当然,这样的游戏是不适合发布的,因为可能会有人自己读取0.txt脚本进行剧透,甚至可能会篡改游戏。或者有人会自作主张打开素材库提前将不该看的CG看一个遍,悬念消失游戏就会毁了。所以我们需要对游戏进行压缩加密。
0.txt可以压缩为 nscript.dat之类的文件。
其他素材可以打包为arc.nsa格式的文件。
加密格式还有很多,需要专门的开发工具,这个我会在后面详细讲的。大家可以先不考虑
这样就可以防止游戏内容暴露在大家面前,同时也可以缩小游戏体积(也许吧)。
好了,基础就是这些了,下一期开始将会讲游戏的灵魂——脚本的编写方法。
推荐本站淘宝优惠价购买喜欢的宝贝:
本文链接:https://sg.hqyman.cn/post/9221.html 非本站原创文章欢迎转载,原创文章需保留本站地址!
休息一下~~