Project1

标题: 如何用组合的方式来实现无限的游戏功能 [打印本页]

作者: TemporDS    时间: 2014-1-30 10:29
标题: 如何用组合的方式来实现无限的游戏功能
本帖最后由 TemporDS 于 2014-1-30 10:28 编辑

        本人才疏学浅,若有遗漏谬误万望海涵,若有不同见解欢迎提出。

        如标题所述,这也算是我这一段时间来设计游戏的心得成果,在这里就分享给大家。
        先附上,我的研究成果——或者说是尝试结果更为准确一些——的链接地址:
http://rpg.blue/forum.php?m ... 48347&page=1&extra=。欢迎大家试玩。

导言:

        若论丰富性和多样性,我想没有事物可以跟这个世界本身比拟,而世界又是如何构成的呢?大家都知道:

        ●原子是由原子核和电子构成的;
        ●分子是由原子构成的;
        ●而分子中的一些有机高分子化合物结合水分子等小分子构成了生物细胞;
        ●而生物细胞进一步构成了各种多细胞生物;
        ●然后包括人类在内的各种社会性生物进一步构成了各种社会形态;


        不管让这些结合在一起的具体是电磁力、是化学键、是细胞连接还是人际关系,我们以一种更宏观的视角来归纳它们,从形式上来说,这些都是一种组合。
        所以我相信,如果不去讨论其背后的自然法则或者神灵意志的话,世界本身其实就是通过组合这种简单的方式构成的。
        那么既然丰富性、多样性无穷大的世界本身都只是通过组合的方式形成的,那么我们为了实现游戏本身的丰富性和多样性何不也进行这种组合呢?
        就是基于以上的想法,于是我开始了“使用组合的方式来实现无限的游戏功能”的尝试,而以下就是这段时间以来,这种尝试的微小成果。

技能系统示例:

        先来看看我设计的技能系统的原理,简单来说所有的技能都是由“触发时机”+“触发条件(逻辑判断)”+“触发效果”的方式构成的。
        我举几个技能效果和其实现方式来做一下说明:

        1.普通攻击就是由以下三部分组成:
                “攻击时”+“100%触发”+“威力为100%力量的攻击”

        2.这时候只要修改以下触发时机,就会变成一个反击技能:
                “防御时”+“100%触发”+“威力为100%力量的攻击”

        3.然后是以下类似淘汰之刃效果的攻击技能的实现:
                “攻击时”+“100%触发”+“威力为100%力量的攻击”
                “攻击时”+“目标生命<5%时触发”+“目标受到无限大伤害”

        4.连续攻击,每次攻击命中降低,一直连击到Miss为止:
                “攻击时”+“100%触发”+“威力为100%力量的攻击”
                “攻击时”+“攻击命中时触发”+“连击数+1”
                “攻击时”+“攻击命中时触发”+“命中降低”

        (备注:每一个“时机”+“条件”+“效果”的组合为一个特效,特效之间可以设置触发优先级,而所有的技能效果和装备效果主要就是由一个或者多个特效组合而成)

        如上所示,这样设计出来的技能系统能够用非常简单的方式来实现可能非常复杂的技能效果,而且可实现的特效组合可谓是无限的——在理论上——当然,并不是随便组合就能够有意义,仍然需要游戏设计者们去设计去测试。

        现在游戏系统和这种组合理论依然仍然进一步完善中,若能完全成熟,我觉得应该不会仅仅适用于回合制游戏,任何使用技能特效来实现策略深度的游戏应该都能适用。
        

作者: yychchhh    时间: 2014-1-30 13:39
本帖最后由 yychchhh 于 2014-1-30 14:12 编辑

觸發效果可以展開,並且內部也可以套用其它的規格。
另外本身使用這種也不為過:
“扣除血量”+“直到攻擊結束”
再如
“接受到XX”+“轉變無效”
不一定是時間詞
作者: TemporDS    时间: 2014-1-30 13:56
yychchhh 发表于 2014-1-30 13:39
觸發效果可以展開,並且內部也可以套用其它的規格。
另外本身使用這種也不為過:
“解除”+“扣除血量”+“ ...

是的,我的系统中触发效果是可以展开,
但是,“解除”+“扣除血量”+“直到攻擊結束”和“接受到XX”+“轉變無效”是什么意思?(我没领会意思啊)
又是什么样的系统结构?
另外,实际上“时机”和“条件逻辑判断”在性质上是相识的,共同限制了执行效果的场合。
作者: yychchhh    时间: 2014-1-30 14:15
TemporDS 发表于 2014-1-30 13:56
是的,我的系统中触发效果是可以展开,
但是,“解除”+“扣除血量”+“直到攻擊結束”和“接受到XX”+“ ...

可能是我的表达能力不够强吧。
1、“扣除血量”+“直到攻擊結束”
作为一个until,判断方式不太相同,分歧在后用于打断循环而不是开启循环。
2、“接受到XX”+“轉變無效”
这里隐藏了条件,甚至是没有条件……呃,我也说不清楚……
意思就是运行是能处于同一阶级的,相当于自己触发自己……
作者: sam小子    时间: 2014-2-7 13:02
●原子是由原子核和电子构成的;
        ●分子是由原子构成的;
        ●而分子中的一些有机高分子化合物结合水分子等小分子构成了生物细胞;
        ●而生物细胞进一步构成了各种多细胞生物;
        ●然后包括人类在内的各种社会性生物进一步构成了各种社会形态;
原子核是有夸克光子等粒子构成的,我不赞同你神之意念等观点,宇宙是宇宙大爆炸之初奇点内的一锅基本粒子汤化学作用行成的,因为能量守恒,所以物质不可凭空产生,所以一切物质到最后还是会归于零的。
作者: 晴兰    时间: 2014-2-10 02:16
提示: 作者被禁止或删除 内容自动屏蔽
作者: TemporDS    时间: 2014-2-10 14:19
晴兰 发表于 2014-2-10 02:16
我以前有个递归组合的方案。。。写了一个原型。。没时间或者说没动力做一个完整的游戏。。
把组合加上有类 ...

有意思,看来ls跟我有相似的想法呢。
我的方法实际上是提供了一个灵活的架构,具体要设计成啥样还要靠设计者决定,一些“对象”的组合能所起到的变化甚至我也十分意外呢。
不知道ls的递归组合是如何生成的呢?是与我相似,还是直接能用程序生成,还是其他方式呢?
有时间的话不妨交流一下。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1