- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[转]浅谈RPG核心系统
RPG, 核心, 系统RPG, 核心, 系统
我认为,一个RPG/ARPG的核心程序应该包含下列系统。我在说明的时候尽量说得细一些,虽然可能有些罗嗦,但是这样有助于理解。
一、属性系统
这是游戏中最简单的系统,包括主角、物品、NPC、技能等各自的属性。属性系统的详细部分游戏策划应该给出,程序只需要给其保存的结构就行了。这里的属性,自然不只包括事物的基本性状,也包括它应该引发的脚本代号。
二、人物状态机系统
这个系统十分复杂,也是所有系统得以运行的基础。这个系统标志着人物目前处于一个什么样的情况中。
相对于动作而言,人物是站立中?还是跑动中?还是对人对持中?还是在施放魔法中?还是在施展技能中?当然,有些状态是可以同时拥有的,比如说站立和施法,有些是不能同时拥有的,比如说站立和走动,这在程序中需要用不同的变量来区分。
相对于剧情而言,人物现在是接受了这个任务吗?没有接受任务吗?或是完成了吗?如果任务不止一步,人物进行到哪一步了?每个任务都要用不同的状态机来保存。
相对于属性而言,人物现在是中毒吗?没有中毒吗?人物现在可以移动吗?可以以正常速度移动吗?人物现在可以施展技能吗?可以施展哪些技能?
主角目前身上有什么物品(任务,或是非任务物品),身上有什么装备,曾经去过哪些地方,杀死过哪些怪物,和哪些人对过话,这些东西都是需要状态机来表示的,因为脚本系统需要这些状态机来进行判断。当然,这其中有些状态机不需要事先设定,而是等需要的时候才计算。比如说物品状态机,在需要的时候给定一个物品的代号,然后状态机系统就可以给出角色是否拥有这个物品,拥有多少个之类。
在这里有一点关键性的东西,游戏程序中的状态机和游戏设计中的状态不是一一对应的,比如说,游戏设计中有“麻痹”这一状态,但是状态机中却不一定有(当然,状态机是人设计的,你要设计一个这样的状态也是可以的),而是用“移动:否”、“动作:否”这两个状态机来表示。
当然还有许多许多的状态机情况,游戏的规则越复杂,所需要的状态机就越多,状态机系统也越复杂。因为各个状态之间也是相互关联的。状态机系统之所以重要,是因为周围世界中所发生的一切行为都是以人物处于何种状态而决定的。
三、行为系统
这个系统决定了游戏的表演方式,也与图形引擎和声音引擎挂钩。当人物(或是怪物)发出一个动作之后,这个动作要怎么表示?比如说攻击,虽然在角色发动攻击的一瞬间,攻击是否命中,目标会受到多少伤害,这个已经被计算好了,但是不可能角色的刀子一举起来,怪物就作出受伤的动作并且惨叫一声,而是角色的攻击动作到达某一个阶段(程序上来说就是哪一帧)的时候,怪物才作出受伤的动作。
而且,还有许多不是在动作启动时就可以做出计算的,而是在碰撞检测之后才决定的(可以是物理,或是非物理的)。比如说弓箭、飞弹类型的魔法、攻击范围会渐渐变化的魔法(例如火环),追尾型的飞弹之类,这些东西的进行方式都是行为系统来控制,而非脚本系统(以下会介绍)来控制。以火环为例,它从发动到结束共有多少帧?每帧会产生什么样的变化?它影响的区域会怎么样变化?
不同的事物可以用不同的行为系统,但也可以共用同一个行为系统,比如说冰环和火环,虽然他们的渲染和伤害计算是不同的,但是他们的行为是一样的。
又比如说死亡的动作。如果死亡就只有一种表现形式,那么关于死亡的行为系统也不复杂,但是有多种死亡动作呢?比如说向前倒下、向后倒下、软倒(直立着跪下那种),如果是从正面受到攻击,那么向后倒下才符合情况,而用先前倒就不真实了。或者是向后倒之后,再加上一定程度的移动,就可以造成“吹飞”(被人打出去很远)的效果。那么判断何时使用哪种动作,就是行为系统的部份。
当然,人物行为所造成的影响的计算也是这个系统的功能。分析人物目前的状态,决定使用哪一个公式来计算影响,动作是否成功(例如命中之类),人物/怪物受到影响之后会产生什么样的动作(当然不是指怪物的决策行为的这种关于AI的部份,是指如果生命降到0就要执行死亡动作这一类)也是行为系统的部份。这虽然是一个非常重要的部份,但因为大家对计算都了解,所以就不多说了。
四、交互/操作系统
操作系统相对而言是简单的,接受用户的输入,并判断这个输入将要产生什么样的影响,执行何种操作,也需要决策是否能够执行操作。判断的准则需要同时分析角色和目标的状态。比如说,用户把一个NPC设为目标时,这个目标是友好的吗?是敌对的吗?如果是友好的,则执行对话的行为,如果是敌对的,则执行攻击行为。或者,不管目标怎么样,现在主角处于“麻痹”状态,所以不管攻击还是对话的行为都无法执行,所以用户的这一操作便被忽略,不予执行。
游戏的各种菜单也是这个系统的一部份。包括剧情对话框、物品购买界面以及
文档评论(0)