蓝图 之 守望先锋

         什么是蓝图???蓝图在哪?  老早就听说过UE4的蓝图了。但,从没用过。第一用蓝图竟然是在守望先锋里。。。

        某天的晚上,我闲的p慌。点开了自定义的地图工坊。点开的一瞬间,好像走进了魔法殿堂。卧槽! 可视化编程脚本。 If, Action  条件,动作。再一想,卧槽,这不是蓝图吗?  守望先锋什么时候不知不觉的在里面塞了张蓝图?  我一直没发现。其实,自定义游戏工坊,一直都有玩过。但,就是没往深的点过。某天的我,点开一看,豁,原来这里面还藏了一个我一直不知道的背后宫殿。 N年我们还在想着什么时候能用上暴雪的引擎框架。结果人直接做到了游戏里。让玩家拿去自定义玩法规则。这个功能很强大,可以编辑很多种不是守望这种对抗性的东西,多到数不胜数 。简单来说,就是, 你可以在守望里玩所有别的游戏。但, 就是脱离不了守望先锋里的元素。就像端游的云顶脱离不了LOL。 编辑器给你,想怎么玩就怎么玩。全靠你的发挥。没有上限。可以编辑数不清的规则。可以相互共享。只需要分享一下你的代码,简单的几个字母。点击导入。ta就是你的了。网上有很多国内外制作比较优秀的共享代码。只要你能掌握这个可视化编辑器,那剩下的就是看你的发挥了。

         那么, 该怎么掌握这个编辑器。这可能需要一定的编程上基础的人,才能去敲这个玩意。普通玩家可能就是只能享受这些玩家制作出来的东西了。但是,暴雪提供了一个官方教程。就看是不是想学的了。毕竟想看,还是比较简单的。

        那么,我来解释一下,这个编辑器该如何使用。

        初始化: 上帝模式 一切皆空白  规格0个

创建第一条规则,

 点击事件容器,弹出事件列表 ,每条事件有自己独特的规则。大致分为全局,玩家 ,子程序。

玩家事件,又分队伍,玩家。队伍对应乙方,我方。玩家 又对应到每一个玩家栏位上,具体的英雄上。

队伍:队伍1,队伍2,没有队伍3

 玩家:12个栏 ,32位英雄。

 子程序:Sub0 这个有意思了。什么叫子程序???起这么匪夷所思的名字,子程序? 当时,我还想你说ta的规则能相互调用吗?结果就是能。用子程序调用。当你写的规则多了。有一些是重复 的实现,就是可以用这个子程序,把要重复的实现写在这个子程序里。然后通过在动作栏里选择调用子程序完成调用。

子程序起到什么作用? 减少代码量,优化重复逻辑作用。卧槽!这, 这不就是单列!!也并不是单列。可以像单列那么用。不过ta的单列有8个,每一个Sub就是一条规则,规则里面可以写任何你想写的规则,可以写复杂的,简单的。然后让另一条规则调用。这样确实缩减了代码量,避免了重复使用。

调用子程序:这里有点越题了,但确实是这样用的。

下面看IF容器,Action容器。这两个应该是最难的。也是最关键的两项。直接呈现出游戏会是什么样子。

 点开IF容器: 啊,我直接傻了。这也太硬核了。怎么这么多条件,每条条件又有自己不同的执行规则,什么时候能掌握?不是可视化脚本编程么,怎么看起来比写代码还难。这奇奇怪怪的都什么条件。看了立马关掉,果断放弃制作。这条件也太硬核了,初级玩家,高中生能搞定这个玩意???知识量都没达到这个水平。有些词听都没听过。比如什么负载均衡,服务器负载你确定这是普通玩家能搞定的???  这个确实有点过与硬核了。但,只要会了。就很快。

第一栏:条件容器,选择一个条件出来。可以搜,因为 太多了。选择一个你想要的条件。

这种设计思想:把条件抽象出来,用来控制游戏世界中正在发成的事情。比如我选择一个事件:“游戏正在进行中” 就是游戏正在进行中要约定的事情,怎么约定呢?

下面第二栏:关系运算符 等于什么,大于什么, 等等。

意思是这样:游戏正在进行中 等于什么的情况下。改变什么。改变动作吗?不,这里没有动作。因为是条件容器。所以ta改变的是一些 数据 生命值 这些,或者继续触发其他条件 。改变在第三栏。这里 第三栏跟第一栏其实是一样的内容。所以这就是条件容器的大概了。 

 这个条件很强大。类似goto可以来回瞎几把调。所以,如果你的思路正确。应该能改出一个很强大,很好玩的游戏模式出来。ta的这个还有编辑报错提示,提示是否编辑真确。 

再点开Action容器:内容也是相当的多。动作容器更直观的表现出游戏中玩家是什么样子。 在有了IF条件之后玩家应该变形出什么样子的动作呢?但,这里的动作又像是把游戏所有可能发生的动作进行了概况。选一个相应的动作出来,让游戏的中的玩家表现出相应的动作。可以具体的一个英雄身上,单个的,其中的一个栏位上做相应的动作。也可以是全局的。总之,很全面。

下面就在动作容器第一栏中,选一个动作出来。然后具体的细分ta,优化ta。让变形出,更生动,形象的动作出来。一步一步具体的,把ta细分出来。 这样就可以完美的编辑出一个动作出来了。 

这个容器相当之大,如果想做出,更多有趣好玩的,游戏模式。那就要熟练的掌握这里面的每一个条件,动作了。 总之 ,就我 现在来看。里面的模式,已经多的天花乱坠了。

 写到这里,才算是能完整的编辑一条合理的规则出来。

条件 跟动作其实并不搭嘎。可以O条件,直接触发动作。但,又有一丝的关联性,又相互隔离。你管你的,我管我的。 动作就是表现, 条件就约定了玩家是否死亡,生命值多少等等。

我没想到客户端也采用了这种设计。倒过头来看这:下面的这张图是17年GDC峰会上OW服务端设计演讲图。

 这样的设计也不奇怪,因为帧同步,服务端与客户端的差别不会差别太大。所以也合情理之中。

结尾:说一句 f**k you 暴雪!什么辣鸡环境,还老子青春。狗屁,网易。天天养猪,p事不干。

猜你喜欢

转载自blog.csdn.net/qq_36912885/article/details/123809800