返回列表 发帖

[教程] AVG MAKER DS简易教程

首先我们了解AVG MAKER DS目录结构,如下图

根目录
|-----AVGMAKER.nds (ds端执行程式文件)
|-----avgFiles
      |-------data
      |        |------用于放置脚本文件(*.spt)
      |-------chara
      |        |------用于放置人物图像文件或人物图像资源文件
      |-------bg
      |        |------用于放置背景文件或背景资源文件
      |-------sound
      |        |------用于放置声音文件或声音资源文件
      |-------bgm
      |        |------用于放置背景音乐文件(*.mp3)
      |-------font
      |        |------字库文件(arial_12.asc & simsun_12.hzk)
      |-------component
               |------用于放置组件,如自定义文字框图像文件等
了解目录结构后,接下来我们将制作一小段游戏demo

一、图片
首先需要准备素材:
人物图片 每张大小为128×192,16位色png图,这里用洋红色作背景透明色
文件名chara1.png, chara2.png
   
背景 大小256×192,256色png图
文件名 bg0.png, bg1.png, bg2.png

文字框 大小为256×256,256色png图
文件名textbox.png 如作为默认对话框只能用此名字,如不自定义对话框 程序会有一个默认的对话框,和此图效果一样

现在素材准备好啦,我们要对这些素材进行转换,在压缩包的tool目录下有所需转换工具
        img_conv.exe:图像转换工具
        res_packer.exe:资源打包工具
        spt_gen.exe:执行脚本转换工具
        switch:自行下载,音频转换工具
     注意:如不能运行工具程序,请下载安装Microsoft .NET Framework
首先我们要用到img_conversion.exe 这个程序
界面如下

在人物或背景标签下对应点击添加人物图像或背景图像(文字框对应背景),注意人物图最高16位色,而背景图最高只能256色。然后点击开始转换进行转换,如果图像有什么问题可能导致无法正确转换,所以一定要保证图片符合规格。
顺利的话,恭喜。会在文件夹下生成bin文件夹,里面就是转换出的AVG MAKER DS可用文件。此时一张图片可能生成多个.bin文件,如一张背景图bg0.png会生成bg0_Info.bin,bg0_Map.bin,bg0_Pal.bin,bg0_Tiles.bin四个文件;而一张人物图chara1则只生成chara1_Texture.bin。


二、音频
将准备的音频用Switch软件转换成.raw格式文件,设置为8 bit signed 11025 Mono
bgm背景音乐转换则为mp3文件,设置为11025码率,96kps或更低(控制在1.6MB内最佳)

如果不希望资源文件太多太零乱,这里建议将资源进行打包。我们先将背景图像资源和人物图像资源分开。再使用资源打包器res_packer这个程序
界面如下

将要打包的资源添加进去然后生成指定名字的文件即可。
现在将图像转换程序生成的bg0, bg1, bg2前缀的的bin文件打包成bg.res
chara1 和 chara2前缀的bin文件打包成img.res。
同样也可以对音效文件.raw文件打包成sound.res。(背景音乐mp3文件不要打包)


三、脚本
资源准备好后,就到了最关键的写游戏脚本了。
写脚本的规则在压缩包中的说明文档作了简单说明,现在就实际应用一下。
现在我们假设我们的女主角名字叫 静(不要问我为什么用这个名字,爱好),故事发生在校园。
我们用记事本建立一个文本begin.txt,添加如下内容。
@boxText(0,20,20,200,150,1,"           演示用\n     故事发生在那个秋天\n ");
@erase(0);
@res_bg(avgFiles/bg/bg.res,bg0,1);
@say(0,0,我,"这就是我的学校——“%c2光辉高中%c1”。第一次见到她就在这里。");
@res_playSFX(avgFiles/sound/sound.res, sound_1.raw);
@say(0,1,????,"啊!都这么迟啦!");
@res_chara(avgFiles/chara/img.res, chara1, 1);
@playBGM(avgFiles/bgm/bgm_1.mp3);
@say(0,1,????,"你好!我是%c2静%c1,初次见面!我新来这里,能带我参观一下么?");
@say(0,0,我,"没……没问题。");
@clearChara();
@res_bg(avgFiles/bg/bg.res,null,1);
@say(0,0,我,"%c3我带着静一起参观了校园,但是我一直都很紧张。");
@res_bg(avgFiles/bg/bg.res,bg1,1);
@res_chara(avgFiles/chara/img.res, chara1, 1);
@say(0,1,静,"这是我们的教室么?不知道老师是个什么样的人呢?");
@res_chara(avgFiles/chara/img.res, chara2, 0);
@say(0,0,静,"我们出去看看吧。");
@clearChara();
@res_bg(avgFiles/bg/bg.res,bg2,1);
@say(0,0,静,"好大的树!");
@res_chara(avgFiles/chara/img.res, chara1, 1);
@say(0,1,静," 这棵就是“%c2传说之树%c1”么!\n传说毕业的时候女孩在这棵树下向男孩%c2表白%c1的话,他们就会得到幸福喔!\n不知道这个传说会不会是真的呢。");
@boxText(1,20,20,200,150,1,"          演示结束 ");
@erase(1);
@stopBGM();
@changeText(avgFiles/data/begin.spt);
保存,然后使用spt_gen工具对脚本文本进行转换。这里利用批处理,编辑convert.bat,加入spt_gen begin.txt。保存再双击执行convert.bat,在当前文件夹下就会生成begin.spt。


四、配置和运行
最后把img.res置于avgFiles/chara文件夹下,bg.res置于avgFiles/bg文件夹下,sound.res置于avgFiles/sound文件夹下,begin.spt置于avgFiles/data文件夹下,bgm_1.mp3置于avgFiles/bgm文件夹下。然后拷贝avgFiles文件夹和主程序AVGMAKER.nds至烧录卡根目录即可。(请参考软件压缩包中附带的例子)
打开DS,运行AVGMAKER.nds程序,开始丰富多彩的AVG游戏旅程吧。

[ 本帖最后由 hewenxie 于 2009-1-13 11:26 编辑 ]
附件: 您需要登录才可以下载或查看附件。没有帐号?注册
1

评分人数

    • 漂流侠: 有了教程就更加方便制作了~成就 + 20 姬

好,加油啊,呵呵呵额呵呵呵

TOP

感谢挖井的人~~特别是斑竹。。。

TOP

真是好贴啊~受益匪浅啊=。=~

TOP

支持hewenxie兄,+_+在这里还看到西索

TOP

我不理解这些素材是哪来的?谁来告诉我?

TOP

我不理解这些素材是哪来的?谁来告诉我?
alevolet 发表于 2009-8-5 20:14

有些素材可以从游戏中提取,有些也可以在网上自己找哦

TOP

打了一圈酱油,发现这的酱油真不错

TOP

回帖是美德

TOP

不错,有教程了更容易理解了。

什么都好,开心就好。

TOP

返回列表