跳到主要内容

2023年4月19日星火编辑器更新日志

优化编辑器功能:

  • 『服务器逻辑』单位-创建事件现在对预先放置在场景上的单位生效,在场景加载时会触发此事件。(这一点可能影响非常广泛)
  • 『编辑器调试』调试时可以静音了,但是要注意,在此状态下编辑器的声音都会关闭掉(体验可能差一点,但高性价比的解决方案)。
  • 『地形编辑器』Ctrl+H现在只会控制辅助线的显示与隐藏了,尺寸倍率依然在上方菜单里调整。
  • 『预制功能库』对话机制:在这一版本中,我们加入了全新的对话机制,用户可以在数据编辑器中配置对话流程、对话选项、角色对白、头像、及其显示方式。并可通过触发器中的“开始对话”来将配置好的对话显示在界面上。对话机制允许相当复杂的对话逻辑,我们今后会详细介绍其使用方式。目前对话界面的设计并非是最终样式,我们会对其进行进一步的迭代。(也就是说暂时不是成熟功能,还需要优化一下,慎用)
  • 『模板』我们将吸血鬼幸存者模版所引用的数编样例升级为了新版的数编样例,以解决用户所反馈的无法在该模版中正确使用自定义伤害公式以及无法正确修改官方技能公式等等的问题;这一改动只会影响今后使用该模版所创建的地图。旧有的辛存者模版所创建的地图可以通过修改地图中的libs.json文件,将其中的2处“default_units”字符串替换为“default_units_ts”来达成手动升级。
  • 『新版触发器』我们在触发器新建界面增加了『收藏』功能,用户可以将常用的函数、动作甚至面向对象路径收藏下来,方便多次使用。(非常好用)
  • 『新版触发器』自定义事件支持跨端传递『任意』类型数据的数组(这里的任意其实是指有限的数据类型,包含数据、布尔、字符串等,相关类型可以在同一个数组内混合使用)。
  • 『新版触发器』单位现在可以在客户端修改3D旋转,而不仅仅是调整朝向。注意该API的设计目的仅仅是用于在自定义移动器时设置客户端弹道的自由朝向,在其他状态下,该API所设置的旋转可能会被服务端所同步过来的单位朝向所覆盖。
  • 『新版触发器』现在可以通过面向对象的方式动态设置每一个单位的血条模版。血条模版的名称和配置可在地图game_hud\ACBloodTemplate.json文件中查看和修改。我们今后会将这部分内容移动到编辑器中。此外,将单位的血条模版设置为空字符串可以隐藏该单位的血条,方便用户实现“挨打才会显示血条”的机制。
  • 『新版触发器』云变量表与物品信息的修改和存取:为了帮助用户存取物品信息与词缀,我们此前曾经开放了将物品装换为可被云变量所存取的物品信息表的功能。但此前,触发器本身无法对这个物品信息表的内容进行修改。考虑到用户对物品信息的进一步自定义需求,我们加入了全新的“云变量表”数据类型。“云变量表”与现有的触发器Map类型相似,可以设置和读取不同的键值对,也允许对其成员进行遍历。不同的是,云变量表可以直接地被存入云变量中。此外,我们也将物品信息表的类型修改为了云变量表类型,这代表用户今后可以直接查看物品信息表中所保存的所有具体信息,甚至对他们进行修改,构造出自己的自定义物品。
  • 『新版触发器』 为了优化没有勾选“详细设置”模式下用户的使用体验,今后在触发器中新建的所有函数默认都不再勾选“使用显示名”,以免函数作者为修改函数的显示名而不得不勾选“详细设置”的尴尬。
  • 『新版触发器』新版触发器界面终于有了横向滚动条了(好耶)
  • 『新版触发器』在设置自定义类对象的初始值时,属性现在会显示它们的显示名
  • 『数据编辑器』我们在效果节点中增加了修改玩家属性节点。使技能可以自由地修改玩家属性
  • 『数据编辑器』我们优化了任意数据表中二维数组的添加元素的体验,使二维数组可以方便地在中途和末尾插入元素
  • 『数据编辑器』我们优化了发射投射物效果节点的行为,使其在移动器创建失败后依然会执行投射物结束效果,确保弹道单位总是会被正常清理。这可以解决部分地图的投射物在发射瞬间删除施法者导致的投射物卡在原地的问题
  • 『数据编辑器』我们强化了添加单位移动器效果节点,使其完全覆盖发射投射物效果节点的一切功能,使其可配置碰撞单位后执行效果、移动器结束后执行效果、抵达目的地后执行效果、以及相应的命中表现

重大改动『数据编辑器』新的机制:

自动施法、连续施法与智能施法,请仔细阅读如下小论文:

在这一版本更新中,除却已有的智能施法机制外,我们还加入了新的技能机制:自动施法与连续施法。它们尤其适合用来实现一般RTS和Moba游戏中的自动攻击和普攻攻击机制。以下说明一下这三种施法机制的严格定义:

智能施法:智能施法是一种辅助用户选择目标的手段,对于需要选择目标的技能,用户若原地按下技能按钮,且不将其拖出并选择目标,则智能施法机制会依照作者所配置的规则从附近的单位当中选出一个最符合条件的目标。此外,对于向量目标技能、地面目标技能、单位或地面目标技能等等允许在没有单位目标的情况下“空挥”的技能,智能施法若无法找到符合条件的目标,则会尝试原地使用技能。每个技能的智能施法规则都可以在技能的高级属性中配置。

自动施法:自动施法是一种在无需ai辅助的条件下令单位自动对附近目标使用指定技能的机制。每个单位同时只能有一个技能激活为自动施法,当该单位处于没有被下达任何指令的“闲置”状态下时,会频繁地尝试对附近符合自动施法条件的目标单位使用这个技能。

  • 自动施法状态是一个可开关的状态,一个被配置为可自动施法的技能不一定激活着自动施法。
  • 自动施法激活状态可以通过触发器API来设置。
  • 可在数据编辑器的高级属性中配置一个技能是否可自动施法。
  • 可在数据编辑器的高级属性中配置一个技能是否默认激活自动施法。
  • 可通过“技能.设置自动施法状态”来激活或者关闭一个技能的自动施法。
  • 与智能施法不同,自动施法不会在找不到符合规则的目标的状况下“空挥”。

连续施法:连续施法指的是当用户主动使用某一个技能后,系统自动连续使用这个技能,直到失去目标、技能无法再使用,或者被用户主动打断的机制。

  • 用户可以通过移动或者使用其它技能来取消连续施法。
  • 在默认状态下,被设置为连续施法的单位会对用户所指定的原始目标单位连续使用原技能,直到目标死亡。此外,我们增加了额外的选项,使作者可以改变连续施法的目标选择规则,允许后续的连续施法使用自动施法规则选择技能的目标。在此模式下,连续施法会持续到附近不再有符合自动施法条件的单位后才停止。
  • 可在数据编辑器的高级属性中配置一个技能是否会连续施法。
  • 可通过勾选“连续施法使用自动施法目标规则”,来将连续施法时的目标选择规则修改为与自动施法的规则一致。(注意,此时并不需要激活自动施法)

自动施法与连续施法的各种组合方式:

自动施法+连续施法+激活自动施法状态+不勾选“连续施法使用自动施法目标规则”: 当单位处于闲置状态时,会自动对附近自动施法范围内符合条件的单位使用技能,但附近若有多个目标时,途中可能改变目标。而当用户手动下达使用技能的指令后,这个技能会锁定用户所指定目标并连续施放,直到连续施法状态被取消。这是绝大部分RTS游戏,如《魔兽争霸III》和许多塔防游戏默认普攻行为。

只勾选连续施法: 单位只会在用户主动使用了该技能后连续对同一目标使用这一技能直到目标死亡或被用户取消。这是许多PC上的Moba游戏中关闭自动攻击后的默认普攻行为。如《DotA2》。

自动施法+连续施法+不激活自动施法状态+勾选“连续施法使用自动施法目标规则”:单位只会在用户主动使用了该技能后连续使用这一技能,但可能会更改目标,持续使用这一技能直到附近无法再找到符合条件的目标单位或被用户取消。

  • 这是许多手机上的Moba游戏的默认普攻行为。不同的游戏可能有不同的细节差别,例如:在自动施法规则中,将“优先上一次施法的目标”规则提到最前:
  • 单位会在进入连续施法状态后,优先对上一次施法的目标进行连续施法,直到这个目标死亡或者脱离自动施法所设置的范围后才选择其它目标。这是《英雄联盟》等游戏的默认普攻行为。
  • 在自动施法规则中,将“优先最近的目标”规则提到最前:单位会在进入连续施法状态后,优先对与它最近的符合条件的目标进行连续施法。这是《王者荣耀》等游戏的默认普攻行为。

社区生态支持:

  • 上传了约230个免费的技能图标,我们还会持续丰富星火编辑器中的免费共享美术资源,想要利用贡献度定制美术资源的开发者可以联系运营喵沟通需求~
  • 『新版触发器』的教程案例已经增加到了十四个,并且还在持续增加,欢迎新人尝试学习。
  • 星火编辑器团队整理了2023年工作计划,方便大家了解我们的近期规划。
  • 为《次元2:逃离》定制了宣发使用的5图资源。
  • 兔羊战争》即将上线,感兴趣的作者可以关注一下

修复编辑器问题:

  • 『数据编辑器』修复了搜索效果节点随机排序出错的问题。
  • 『数据编辑器』修复了数据编辑器部分属性类型在空值时保存错误的问题。
  • 『数据编辑器』修复了数编表ID的引用未纳入资源统计的问题,N选1的奖励池可以不需要勾选资源统计了。『数据编辑器』修复了『优先上次施法的目标』排序规则的问题。
  • 『数据编辑器』修复了“随机单位”排序规则的问题。
  • 『数据编辑器』修复了 “魔法免疫”会不正确地免疫一切技能伤害的问题。
  • 『触发编辑器』修复了『将物品添加到单位的指定物品栏』动作。
  • 『触发编辑器』修复了『物品的装备状态』函数。
  • 『触发编辑器』修复了部分函数和动作的默认坐标参数自带红色感叹号的问题。
  • 『触发编辑器』修复了部分函数和动作的默认数编Id是无效Id的问题。
  • 『触发编辑器』修复了任意数据节点id有时候无法正常转换为对应类型数编表的问题。
  • 『触发编辑器』修复了部分触发器语句在地图重新打开后变红的问题。
  • 『触发编辑器』修复了『单位-移动』事件无法正确获得坐标参数的问题。
  • 『触发编辑器』修复了使用地编单位注册事件时偶现的单位无效问题。
  • 『触发编辑器』修复了V1单位立即释放技能触发语句无效的问题。
  • 『界面编辑器』修复了文字控件(Label)尺寸为-1时项目崩溃的问题。
  • 『我的资源』修复了部分资源另存为时报错的问题。

【修复问题少写点,还有很多,但是写多了你们不看】

游戏问题:

  • 对聊天底层进行了优化,对界面的交互和操作进行了优化