2024年5月7日更新日志【2024.04版本】
除部分严重BUG修复会覆盖旧版本,以下新功能均在编辑器版本2024.04中生效。
开发者可以在编辑器顶部菜单-编辑器版本中进行版本切换。
重要里程碑
星火第一款 在Steam发行的游戏已上线Steam,欢迎大家添加愿望单。
星火制作的游戏可以上线TapTap和Steam,从各个方面来说,上线TapTap的难度要远低于上架Steam。
目前已经有100多款游戏上线了TapTap,但是只有一位开发者选择了上架Steam,这也能够看出Steam竞争环境的困难之处。
对于星火游戏上线Steam,我们也整理了一些信息:
-
Steam每上线一个游戏,需要100美元,这一费用需要开发者承担。
-
Steam的配置复杂度和物料要求远高于TapTap,需要开发者参考Steam发行文档进行充分的了解。
-
如果一款游戏在TapTap缺少足够的竞争力,我们不认为这一游戏会在Steam上有竞争力。
-
Steam的流量不同于TapTap,流量多少几乎完全取决于愿望单积累的数量;而愿望单的积累往往需要依赖游戏外的发行和营销行为,对开发者有更高的要求;B站上诸多独立游戏开发者已经在践行相关路径,希望每一位决定要在Steam上线星火游戏的开发者,考虑清楚这里的成本和困难。
-
Steam的市场营销最佳实践请参考
-
Steam上线后的收入,会扣除30%的渠道成本,且对于中国的开发者,还会从剩余70%中扣除20%的税收,实际开发者可获得的收入为总收入的56%;对于使用星火编辑器的开发者,我们将以Steam收入的56%作为商业化收入进行阶梯式分成;简而言之,若游戏收入100元,30元归属于Steam,14元作为税收;56元作为开发者和星火进行阶梯式分成的收入。
具体计算可以带入之前 公式的计算方法中进行计算
需要开发者注意的改动
从合规的角度考虑,现在通过输入框控件获取文本时,会强制的经过一次敏感词判断,这一调整导致获取文本变成一个有通信行为,因此相关语句不再可以在计时器内试用。
AI系统重构
针对AI系统的一系列痛点问题,星火编辑器对AI的底层实现进行了一次大重构。
-
『仿默认AI』更名为『默认AI』,并进行了重构。
-
游戏中的默认单位AI今后直接使用数编中的『默认AI』(即原『仿默认AI』)。
-
不再有用户无法更改的隐藏默认AI。
-
在地编中选中单位勾选使用默认AI与在触发器中创建AI时勾选使用默认AI将一致使用数编默认AI。
-
在触发器中添加默认AI与添加『数编表:默认AI』将获得相同的结果,而非使用隐藏的内置AI。
-
AI系统变为完全由数编中的AI行为树操控,用户可以自由修改AI的行为。
-
现在,AI有施法指令时依然会按固定频率走AI行为树。(在过去,当AI单位在施法时,不会进入行为树,导致部分AI逻辑不可实现)
重构后新的AI系统不仅更易于用户自定义,还解决了就有AI系统的以下几个常见问题。
-
默认AI在没能放出技能时不会再一直追着玩家到天涯海角(现在到了最大脱离范围就会返回)。
-
近战单位的AI不会再一路走到玩家脚底下才施放技能。
-
当AI单位的攻击技能拥有非常快的攻速或冷却时间时,AI依然只会每0.5秒使用一次该技能的问题。(现在AI会尝试以最高速度使用这些技能,请尽量避免无施法时间、技能消耗和冷却的三无AI技能)
按住连续施法机制【实验性功能】
-
星火编辑器增加了按住连续施法机制,适合用来制作按住后连续使用并可依照光标朝向更新每次施法朝向的技能。
-
数编中的目标指示器增加了『按住连续施法』勾选项。该选项仅对无目标、向量目标和地面目标技能生效。
-
在勾选该选项后,玩家只需长按对应的技能按钮即可实现连续使用技能。此外,对于向量目标技能和地面目标技能,单位每次施法都会使用最新技能指示器朝向和目标而非永远保持最初的朝向和目标。
-
默认的『普攻技能模版』现已改为使用勾选了『按住连续施法』的指示器,基于该模版创建的技能今后将默认支持按住连续施法,用户可以酌情 修改。『近战普攻示例单位』身上的近战技能现在也都可以进行按住连续施法。
-
当技能同时配置了『智能施法』和『按住连续施法』时,长按技能的连续施法效果不会引发智能施法。但短按技能依然可以引发智能施法。
-
拥有『按住连续施法』特性的技能在被短按时的表现仍与其它技能保持一致。
-
当技能同时有『按住连续施法』特性和『无限蓄力』特性时,只有『无限蓄力』会生效。
-
该功能依然还在实验性阶段,我们今后会进一步优化其功能。
动态动画别名
-
在过去,星火编辑器的用户可以通过添加和删除附加表现来实现单位的换武器机制。但当用户想要实现在切换武器后使用不同的行走动画时,就会变得有些麻烦:因为行走所使用的『Move』动画别名只能对应到一个动画上。因此,在过去,实现切换行走动画的标准方案是直接动态替换配了另一个行走动画的单位模型素材节点。
-
为了简化这一过程,星火编辑器现在运行在运行时动态修改单位和表现的动画别名。在客户端触发器中新增了『修改动画别名』和『修改动画别名(映射表)』两条动作。可以分别单独替换指定单位/表现的一个指定的动画别名或整体替换指定单位/表现的所有动画别名。如此,用户只需要动态修改单位的『Move』动画别名就可以实现动态更改行走动画。
-
需要注意的是,即使动画别名允许动态替换,玩家所下载下来的游戏文件也会受到预加载动画文件的限制 ,因此对于一个玩家客户端没有下载的动画文件,即使为它设置了动画别名,客户端也无法正常播放。因此对于希望通过动态动画别名功能加载的额外的捏人动画文件,最好将它们设置到单位的模型素材节点的『额外加载动画』字段,以确保玩家会正常下载它们。
-
此外,由于修改动画别名触发器是客户端触发器的动作。建议用户最好在服务器触发器中将单位当前应该使用的移动动画存储在单位属性中,以确保客户端出现断线重连时依然有办法通过单位属性来获取这一信息,以重新设置动画别名。
可破坏物和单位高度逻辑优化
-
星火编辑器增加了一种新的单位C++类型『可破坏物』。用户可以将单位的『单位C++类型』字段设置为『可破坏物』来将单位设置成这样的单位。
-
可破坏物无法进行主动移动(行走或移动器),但可以用触发器进行瞬移,无法拥有技能、Buff和其它各种组件、可以拥有碰撞和单位属性。可破坏物的服务器资源消耗通常低于普通单位,适合用于进行大量静止单位的优化,也可以用来实现可被破坏的地形、路障、树木等等。
-
考虑到可破坏物的常见用法,我们特别保留了它可以在地编中设置高度的特性。用户只需要在单位表中给可破坏物单位赋予高度属性,就可以在地编中自定义其高度。(只要在地编中取消勾选沿用单位类型属性选项框,就可以在地编中针对每个单位来修改属性,其中修改高 度属性还可以直观地在地编中预览单位的高度位置)
-
对于意图将可破坏物单位充当地编中的可破坏装饰物并想要手动调整它们在地编中的高度的用户,我们建议同时在单位的默认单位状态字段中增加『忽略地形高度』状态。这样,用户在地编中所调整的可破坏物体高度将不会再随着其所处的地表高度而变化,令地编中的预览高度与游戏中的高度更加一致。
-
在开发以上功能的同时,我们也顺便优化了非可破坏物单位高度属性的一个旧有问题:设置了『忽略地形高度』并拥有初始高度的单位在进入游戏后会丢失高度表现,只有在移动后才会重置高度到正确位置。现在普通单位也不需要移动就能直接出现在正确的高度了。
交互行为的死后禁用与复活
-
现在行为节点(如『交互行为』)增加了死后不删除和死后禁用勾选项。这两个勾选项的作用类似于Buff的对应勾选项。在默认情况下,两者都处于被勾选状态。
-
勾选了『死后不删除』的交互行为,在单位被杀死后不会被删除,在单位复活时依然能再次生效。而一旦勾选了『死后禁用』,则即使行为没有在死后被删除,持有交互行为的单位死亡后也无法进行交互。
-
若不勾选『死后不删除』,则交互行为在拥有该行为的单位死后也不会被删除。