2024年9月9日更新日志【2024.09版本】
星火编辑器发布了新的编辑器版本:2024.09。
除部分严重BUG修复会覆盖旧版本,以下新功能均在编辑器版本2024.09中生效。
开发者可以在编辑器顶部菜单-编辑器版本中进行版本切换。
修复镜头『焦点位置Z轴偏移值』不生效的问题带来的表现变化
我们修复了镜头『焦点位置Z轴偏移值』不生效的问题,默认状态下,这个值是10。 如果开发者曾经调整过此参数,升级到09后可能会发现镜头表现不同。若是希望恢复到之前的设置,可以在『数据编辑器』-『游戏镜头』中找到镜头,并将其值设置为『10』。
若是有多个镜头,可以用批量视图进行修改。
设置/获取单位属性的调整
在2024.09版本中,我们调整了设置/获取单位属性的底层实现,对应的触发语句也进行了调整。
在新版本中,选择『设置/修改/获取单位属性』语句时,子属性类型可以选择除基础值、百分比值之外的自定义属性类型,但不可选择最终值。如果想获取单位属性的最终值,请使用『单位的自定义属性最终值』语句。
对于使用代码开发的开发者,今后应该使用set_custom和add_custom语句设置和修改单位的数值属性,使用get_custom语句获取单位数值属性(非最终值),使用get语句获取单位属性的最终值。
跨服消息功能
我们注意到部分用户的作品会尝试跨服传递一些信息,以下是一些案例:
一些项目使用公用的用户虚拟Id来存储一些公共的数据,如玩家排名等等。但是又希望在排位变化以后通知到当前在同一项目中其它在线的游戏局的玩家。
部分作者会在游戏胜利时给玩家发送信息,但这时候某个真人玩家可能已经离开了游戏并开了另一局新的游戏,作者希望把消息传递到这个玩家。
部分作者会想要建立一个跨服聊天频道,让同一个项目所有游戏局的玩家都能进行在线聊天。
我们注意到部分作者为了实现此类功能,会过于频繁查询和存取云变量,导致了较大的数据库成本。为此,在2024.09版本中,我们加入官方的跨服消息功能。 以下触发器动作被加入到了服务端触发编辑器中:
发布跨服频道消息
-
该动作可向一个指定名称的频道发送指定的字符串/数值。
-
频道名称可为任意字符串,订阅了该频道的游戏会收到这一消息。
订阅跨服频道消息
- 收取指定频道的跨服消息,并可获得消息进行处理。
取消订阅跨服频道消息
- 停止收取指定频道的跨服消息。
向指定用户发送跨服务频道消息
-
指定一个用户虚拟Id,只有当该用户在线时才会收到消息,可指定频道名。
-
用户可以在同一游戏局中,也可以在不同的游戏局中。
订阅指定用户的跨服频道消息
- 收取发往指定用户虚拟Id指定频道的跨服消息,并可获得消息进行处理。
取消订阅指定用户的跨服频道消息
- 停止收取指定频道的跨服消息。
注意事项
跨服消息虽然成本消耗远小于频繁的云变量查询和设置,本身依然会产生一定的流量,星火编辑器依然不建议用户过度使用这一功能。当仅需要通知特定玩家时,应尽量使用向指定用户发送和接收消息的版本,当不再需要接收消息时,应及时取消订阅。(游戏局结束时,当局的所有订阅也会被自动取消)
跨服消息仅能对同一项目的不同游戏局发送,不同作者和项目的频道是互相独立的。