今天更新1.3.2版本后遇到了之前没见过的问题,无敌时间被锁定在1秒 In ver1.3.2, the invincibility time was forcibly locked to 1s

如标题,本来我的项目敌人接触到player的碰撞就会发动攻击。player的无敌时间只有0.2秒
能迅速判断下一次攻击

但是更新1.3.2版本后,我感觉自己没修改任何东西的情况下,敌人每次攻击判定延长了非常多,至少有1秒左右。 player接触敌人的碰撞在1秒内也不会扣血和触发下一个判定动作。

攻击一次后必须要强制等上1秒以上才有反应

我把无敌时间改成0.1也不行,强制了1秒左右的硬直时间?这是什么回事?
我想退回上一个版本1.3.1测试下看看是否会消失这个问题,但是官方貌似没有留1.3的任何版本在steam上?


希望官方至少留个1.3x的版本给用户做测试使用。

更新:我做了不少测试,基本确定是无敌时间被锁定在1秒了,我修改任何的数值都不会产生变化,我改成10秒无敌时间去测试依然判定为1秒。

===========The official forum has lost its AI translation function===========

Originally, my project’s enemies would launch an attack upon colliding with the player. The player’s invincible time is only 0.2 seconds
Be able to quickly judge the next attack
However, after updating to version 1.3.2, I noticed that the duration of each enemy attack has significantly increased, by at least 1 second, even though I haven’t made any modifications. The player’s collision with the enemy also doesn’t cause any health loss or trigger the next action within 1 second.
After an attack, there must be a mandatory wait of at least 1 second before a response can be given
Even after changing the invincible time to 0.1, it still forces a stiffening time of about 1 second? What’s going on?
I want to revert to the previous version 1.3.1 to test and see if this issue will disappear, but it seems like the official version 1.3 is no longer available on Steam?
I hope the official team can at least provide a 1.3x version for users to test.
Update: I have conducted numerous tests and have essentially confirmed that the invincibility time is locked at 1 second. No matter what value I change, it remains unchanged. Even when I set the invincibility time to 10 seconds for testing, it is still determined to be 1 second.

我也出现了同样的情况,修改basesettings的设置不会修改invincibleSsttings的设置

@S.C @SLHgameproducer
我一直在尝试复现这个问题,但似乎无法做到。

如果我在 BasicSettings 中设置为 5 秒,它就会持续 5 秒:

这让我想到,你是不是有一个 InvincibleSettings 节点可能会覆盖 BasicSettings?因为它有自己的计时器,应该会覆盖 BasicSettings 的设置:

模板会有一个InvincibleSettings节点,以前在修改BasicSettings的时候会同步修改InvincibleSettings,现在是只要有InvincibleSettings节点,BasicSettings的数值不生效,运行以InvincibleSettings节点为标准,节点列表中InvincibleSettings在BasicSettings的下方,可能数值被覆盖,删除InvincibleSettings节点之后,BasicSettings的数值生效,这是我的现状

2 个赞

InvincibleSettings这个节点被设计为“当需要超出BasicSettings描述能力”的定制化无敌状态设定是需要引入的功能。因此,InvincibleSettings的设置优先于BasicSetting生效是复合AGM设计意图的。仅这段话的描述而言这里没有实质的bug。


previous-version分支就是每次更新后,前一个版本所在的分支。可以用这个来对比。

@Baz @Justus
原因已找到,是InvincibleSetting的问题,在使用AGM以来,我从来没操作和使用过InvincibleSetting这个节点,以前都是使用basesettings里的“受伤后无敌时间”来判定。
一直是正常的,这次更新1.3.2版本后,InvincibleSetting的权限大于了basesettings

导致我在basesettings如何修改都无法对角色起到任何作用,必须要前往InvincibleSetting
做出修改才行。 在此之前我甚至不知道有InvincibleSetting这个节点的存在 :crying_cat:

PS:昨晚我想返回上一个版本测试,但当时previous-version版本显示版本是5月26日的,甚至都不是1.30版本,今天才更新了6月30日的版本。估计是管理员忘记上传备份了…

1 个赞

很抱歉造成困惑。

当存在 InvincibleSettings 节点时,InvincibleSettings 具有优先级的规范并未改变。

然而,为了防止出现错误,我们最近更改了行为:当 InvincibleSettings 不包含任何数据时,会强制生成数据。这就是导致该问题的原因。

在从模板创建玩家对象时,InvincibleSettings 被配置为生成,但它是在没有 InvincibleData 的情况下生成的。由于现在会强制生成 InvincibleData,它突然开始覆盖 BaseSettings 的行为,从而导致了此问题。

我计划从模板生成中移除 InvincibleSettings。同时,我也会考虑是否还有其他可行的解决方案。