可视化脚本入门

概述

可视化脚本编辑(VisualScript) 在代码界是近几年来比较热门的一种编程方式,因为我们对<边境军团>后续的玩法有很多设想,为了适应多种玩法的同时尽可能降低大家的学习成本.
我们最终决定自研一套简化的脚本编辑器.

首先无论如何简化,毕竟这个也是一个脚本编辑器.所以还是有一点点学习成本. 如果你只是想体验一些别人制作的地图 建议可以参考这篇帖子看下如何导入别人制作的地图.
如果你也想尝试制作一张自己的地图. 我建议你可以花10分钟阅读一下这篇文章. 应该会有一定收获.

编辑队伍与编辑关卡之间的区别


就目前开放的防守模式(后续模式可能会有不同). 脚本编辑分为两块.队伍编辑以及关卡编辑

队伍编辑: 可以理解为定义一个个进攻小队.比如定义 小队1. 先出10个哥布林,然后过5秒出10个萨满.. 等等
关卡编辑: 可以理解为敌方的”军师”,在游戏开始后整体协商什么时间使用哪个小队进行进攻. 比如 游戏开始100秒后 小队1从红色传送门发起进攻. 200秒后 小队2从绿色传送门发起进攻.. 等等

节点介绍

脚本编辑器是靠连接一个个节点来实现具体的逻辑. 我们把每个单独的逻辑称为一个节点(Node). 节点分为两大类. 一类是语法节点(Grammar Node),一类是逻辑节点(Logic Node)

语法节点: 这类节点是所有编辑界面里面都会出现的.比如现有的队伍编辑,关卡标记.包括以后RPG地图中可能存在的对话编辑,任务编辑等等.

逻辑节点: 这类节点就是执行具体逻辑的节点.每个类型的编辑均有自己独有的.比如队伍编辑特有的节点用于设置出怪信息. 关卡编辑特有的节点用于设置使用哪个小队等.

语法节点

时间节点


这个节点应该非常好理解. 等待玩家设定的时间,当时间过后执行后续的节点

循环节点


这个节点经常被用错.注意循环节点会 按给定的次数执行完黄色端口连接的节点链后再执行后续的节点.
例如:
Loop_Demo
这里例子就是 首先会执行A逻辑链. 产生1个哥布林然后休息2秒. 这个链条被执行了5次以后再执行 B链条. 休息100秒后产生一个运输车

并发节点


并发节点会同时执行其绿色节点链接的逻辑链.
例如:

A,B,C,D 四条逻辑链会同时被触发.

随机节点


随机节点逻辑同并发节点.只不过不是同时触发而是选择其中一个触发
Random_Demo
同上 A,B,C,D 四个逻辑链只会触发其中的一个.

逻辑节点

成员配置

AttackMonste
这个比较好理解. 主要注意两点.
第一: 飞行单位可以切换为陆地路线
AttackMonster_FlyUnit
飞行单位默认是走飞行路线的.也就是可以从水面过来. 但是有时候为了让飞行单位支援地面单位.需要这个路线切换为陆地路线.尤其注意Boss里面的飞行单位.(比如那个大飞艇).

第二:Boss可以设置击败后胜利
AttackMonster_WinWhenDead
这个很好理解.不过要注意如果多个Boss都设置了击败后胜利,则击败任意一个Boss都会胜利的.

队伍配置

Nest
这个是用来配置进攻小队. 需要注意的有三块


传送门: 在画地图时候可以给传送门设置分类.也就是对应的四色旗.需要注意的是不一定一种旗子只对应一个传送门. 可以一对多. 出怪时候会随机选择一个传送门进行出击.


攻击目标: 主基地和随机建筑二选一. 这个应该不用过多解释.


预警时间: 开启后进攻前UI上会有倒计时框提示,反之则没有

常见错误

归纳总结一些群里看到大家配置时候常出现的一些错误. 后面不断更新.

无限循环后面有逻辑链

循环节点会执行完所有子节点后再执行后续的节点. 但是由于设置了无限循环. 所以后续的节点不会被执行.