Some mods cause TransfurAnimator to fail to capture the player model properties.
cecnull1 opened this issue · 3 comments
crash-2024-09-14_21.28.05-client.txt
Trigger Condition: When using the Origin Module, if the player selects the Phantom race and undergoes metamorphosis, a Beastification event from another module may occur. This can result in a situation where the Pose value is null, leading to a NullPointerException subsequently. My temporary solution is to use early return, but this does not fundamentally solve the issue.
(Use Qwen for translation.)
Moreover, this issue is not triggered by a single condition; any modification involving the player model could potentially lead to errors.
目前已知会导致造成Pose = null而导致NullPointerException的问题有几个:
起源模组 - 幻化技能来隐身自己,然后在这种情况下被兽化
魔法模组 - 真实隐身来隐身自己,然后在这种情况下被兽化
本模组 - 修改版 - 在抓住目标情况下手动兽化目标(前提是注释掉 释放实体 逻辑)
对一个玩家实体进行乱七八糟的值修改也有可能引发此问题
其他
This issue, causing Pose to be set to null and leading to a NullPointerException, can arise from several known causes:
- Origin Mod: Using the polymorph skill to make oneself invisible, followed by being transformed (bestialized) in this state.
- Magic Mod: Using true invisibility to become invisible, followed by being transformed (bestialized) in this state.
- This Mod (modified version): Manually transforming the target while it is being held (assuming the 'release entity' logic has been commented out).
- Arbitrary value modifications to a player entity may also trigger this problem.
- Other factors.
My temporary solution is to use early return, but this does not fundamentally solve the issue.
There isn't a "fundamental fix" for this kind of issue. In both external mod cases, the player is invisible. The transfur animator is only capable of transitioning a HumanoidModel
(Vanilla player model) into a AdvancedHumanoidModel
(Changed entity model).
Any other case would need to be omitted from rendering the transfurring player.