rpg RPGmakerr xp对话框空白游戏卡住是怎么回事

XX学院 毕业论文(设计) RPG游戏设计与实現 院 系 : 数学与计算机系 专业(班级): 计算机科学与技术专业2班 姓名: XXX 学号: 指导教师: XXX 职称: 讲师 完成日期: 2012 年 5月 15 日 摘 要 目前电脑游戲热潮席卷全球,游戏软件的开发和维护正在成长为一个新兴的产业RPG游戏(角色扮演类游戏)无疑是目前市场上最受欢迎的游戏类型之┅,本课题就是为适应当前电脑游戏的发展而提出的论文首先对RPG游戏进行概述,简单介绍RPG游戏的制作意义以及发展前景其次对制作游戲的软件RPG RPGmakerr XP进行了简单的介绍,其三介绍了整个RPG游戏的制作流程包括游戏的构思以及运用RPG RPGmakerr XP针对游戏制作的地图、素材、事件编辑、人物属性、脚本编辑等,其中事件编辑是整个游戏的关键部分对此做了比较详细的介绍,脚本编辑既Ruby语言也是该游戏的重点学好该语言能够哽加丰富游戏的可行性。最后对测试游戏的平衡性以及玩家操作游戏所需了解的一些按键功能也做了比较详细的介绍。 关键词:RPG游戏;RPG RPGmakerr XP;事件 Abstract At present,

谁说的制作游戏一定需要高深的編程技术和复杂的动画技术?通过强大的制作工具或许很多不可能的事情也能成为可能!今天网趣在线给朋友们介绍的主角就是:RPG RPGmakerr XP! RPG RPGmakerr XP

  谁说嘚制作游戏一定需要高深的编程技术和复杂的动画技术?通过强大的制作工具,或许很多不可能的事情也能成为可能!今天网趣在线给朋友们介绍的主角就是:RPG RPGmakerr XP!

  RPG RPGmakerr XP顾名思义是一款RPG(角色扮演)类游戏的制作工具通过它不需要编写一行代码就能制作出一款精致的大型RPG游戏!这款来自ㄖ本Enterbrain的软件不仅自带有大量的地图、人物、动画、音乐等素材,而且能将制作者的思维专注于游戏剧情与任务发展本身而无需去了解游戏裏的动画、编程等技术性的细节

  同时,这款软件还支持RGSS脚本语言系统资深玩家通过专门为游戏而优化的RGSS编程语言,能够定义游戏裏面的每一个细节从而制作出更加强大、丰富多样的游戏,即使再复杂的任务与角色系统也能由RGSS脚本胜任!

  现在将通过简单的几步制莋一个HelloWorld游戏带领大家走进RPG RPGmakerr XP 的世界!

  安装好RPG RPGmakerr XP后运行主程序将会看到一个简单的界面,对以后所有的操作都要都过这个简单的界面来完荿!

  首先,一个RPG游戏肯定包含一个供人物行走的地图那么,这个地图可以直接通过三层来绘制:第一层、第二层、第三层这三层的優先级一层比一层高。也就是说第三层的物品在显示的时候会覆盖掉前两层,第二层的物品会覆盖掉前一层除了地图上能看到的物品の外,游戏还包含一个事件层:比如角色走到了这个地方则会触发一个什么样的事件

  首先,我们通过主菜单新建一个项目在弹出嘚新建对话框中选好路径然后直接点击确定,那么一个默认包含有绿色草地的地图就新建好了

  然后我们将这个默认的地图切换到事件层:

  点击工具栏上的“事件”按钮,将地图切换到事件层

  你会发现地图上出现了很多小方格其中中间有一个小方格包含一个透明的“S”。它代表着开始游戏后主角将会默认在这个地方出现

  “S”代表角色的出生地点

  随后双击地图上任何一个方框,将会彈出一个事件对话框双击这个窗口左边的“角色图片”下面的那个空白的大方框,以设置这个NPC的形象

  双击“事件窗口”左侧的角銫图片下的大方框

  在弹出的人物对话框中随便选择一个你喜欢的人物,然后单击确认

  选择了一个NPC的形象

  整个事件窗口的右邊是一个大的“执行内容”编写框。这个NPC所有的响应事件将由此编写双击右边执行内容的第一行:

  双击第一行添加一个事件

  弹絀一个事件指令窗口:

  RPGRPGmakerrXP对话框中点击“显示文章”按钮

  在这个窗口中点击“显示文章”按钮,然后在弹出的“显示文章”窗口中輸入你希望这个NPC说的话比如:

  一直确定,直到返回主界面

  很快你会发现这个刚刚设置的NPC站在了地图的一个角落!

  至此,一個包含大多数RPG游戏功能的HelloWorld编写完成了:这个简单的RPG可以保存\读取存档、你的角色拥有生命值、魔法值、速度等等各种属性、你可以使用各種装备与各种默认的物品!

  要测试这个新诞生的作品请按键盘上的F12或者点击这个绿色三角形的测试按钮:

  默认的RPG游戏主菜单

  屏幕上显示了刚刚说的话!

  将通过方向键将主角行走到你新建的NPC旁边,然后按一下空格或回车就会显示你刚刚输入的NPC说的话:

  游戲的功能界面非常齐全——但你并没有为这编写一行代码!

  怎么样?看着自己刚刚花了两分钟编写的“游戏”很激动吧?!

  如果你认为RPG RPGmakerr XP的局限性太大的话,那就太看不起RGSS语言的作用了!通过RGSS语言你可以定义游戏里面每一个地方的颜色、状态、菜单背景、显示方式、效果甚至昰完整的任务系统、战斗系统、角色发展系统与网络游戏特征!

  通过RGSS语言甚至能编写大型RPG里的小游戏!怎么样?开始对RPG RPGmakerr XP刮目相看了吧?!这就是這款软件的便捷之处:对于初学者,它提供了一个基本游戏的完整解决方案对于高级编写者,它提供了复杂但却灵活的脚本系统供游戏開发者定制!并且通过RPG RPGmakerr XP开发的游戏开发者可以将其作为商业软件打包发布!

  试试吧,相信这样一款出色的游戏制作工具肯定不会让你失朢!

浅谈RPG RPGmakerr XP自动地图元件的绘制原理

序:最近刚好想写个类似RMXP的地图编辑器遇到的第一个问题就是自动地图元件的绘制问题。老实说我不知道这东西到底叫什么(特别是英攵叫什么),只知道RMXP翻译过来就是自动地图元件而且魔兽的地图编辑器也用到这种技术,但我在网上却始终找不到相关的资料其绘制原理其实很清晰,就是用户给出指定规格的地图元件资源编辑器将其拆分,在绘制时再根据绘图上下文来进行拼接但具体的过程以及拆分和拼接原理却很少有人提及,这里我整理了一下

1.RMXP的自动地图元件规格

首先介绍下RMXP的自动地图元件规格,其中第一格和第二格都是展礻用的并不用在具体的拼接上。话说我也是刚搞懂的

真正用在拼接的就是剩下的内容,这里先将其按下图拆分开

这里的每一个小格就昰最后用于拼接的格子我们暂且叫它小元件,如图每一个小元件都有一个编号

虽然编号为0,1,2,3,6,7,8,9的小元件都不会用到但这样可以方便由编号來进行定位小元件的矩形

计算编号为i的小元件在图中的矩形的方法为:

RMXP中,双击自动地图元件即可以打开自动展开元件的对话框。里媔显示的就是所有拼接情况

同样的,我们给每一种情况定一个编号

注意最后2个情况是一样的,所以总共有47情况(编号从0开始)

每一種情况都是由4个小元件拼成的这里先不急着确定每一种对应哪4个小元件。

先来分析下到底是哪47种情况

假设我们现在正在用RMXP的地图编辑器来绘制自动地图元件,如下图我们打算在位置4绘制一个自动地图元件

那么怎么判断绘制出来的是哪个情况呢?很简单根据周围的1,2,3,5,6,7,8格孓是否有自动地图元件来确定位置4的绘制情况。(这里要注意影响位置4绘制情况的是周围8个格子是否有自动地图元件,而每个格子具体昰哪个情况并不影响

按照排列组合公式可以算出8个格子的出现组合有256种,这比47大多了为什么呢?

这是因为RMXP并不支持对角连接如下圖

14位置的自动地图元件并不连接起来,也就是说此时1位置并不会影响4位置的绘制情况那什么时候才会影响呢?

可以看到当位置13同時存在时,位置0才会影响到位置4也就是说:当左边和上边都存在时,左上角才有影响力同理可得:当左边不存在时,左上角和左下角嘟将失去影响力(注意这点,后面就是靠这条理论来列举情况的)

现在来列举所有情况可以不考虑对角,只考虑边的组合4边的组合囿16种,可以分为5类:

    即左边和右边同时出现或者上边和下边同时出现,此时对角依然全失去影响力位置4只有2种情况,即情况32,33

   考虑左边囷上边同时出现此时左上角有影响力,有左上角出现与不出现2种情况其他临边情况一样。位置4共有4*2=8种情况即情况34-41

    考虑左上右同时出現,此时左上角和右上角有影响力2个角有4种出现情况。所以共有4*4=16种情况即情况16-31

上面的解析有点绕口,大家可以参考图4理解一下

所有凊况加起来刚好47种。

分析好了所有情况就可以列出每一种情况对应的哪4小元件

下面把我辛苦写出来的对应表给出:

等号左边为情况编號,右边为小元件表注意小元件表里面小元件的顺序,是以

“左上右上,左下右下”的顺序的。

绘制的过程大概是以下伪代码

// 在row行col列绘制一个自动地图元件
 
 // 这里可以填任意情况,只要确保[row,col]位置不为空即可
 
 // 根据index得到对应的小元件表
 // 根据小元件表拼接成地图元件
 // 如果该位置没有地图元件则直接返回
 
 // 判断其周围8个格子的状态state
 // 根据判断的状态确定情况的编号index
 这里最麻烦的就是“根据判断的状态确定情况的編号index
 


由于情况有47种之多,而且判断的过程也很纠结这里提供我的方法,虽然也很麻烦不过逻辑比较清晰。


核心就是用二进制表达邊角共有8个,用一个8位的char即可首先定义如下:44角各占一位

那么当前44角的情况就可以上面的组合出来。







没想到写这样一篇文章会这么费仂在写这家伙时,我总感觉自己的方法太笨了我感觉会有好的方法的,所以还是坚持写下来抛砖引玉了。

我要回帖

更多关于 rpgmaker 的文章

 

随机推荐