Incorrect Z axis translation on gameplay objects.
Describe the bug
When parenting game objects and animating the position property on the parent track. The objects do not move correctly along the Z axis (tested for notes, bombs, and walls, not confirmed with arcs or chains).
To Reproduce
Steps to reproduce the behaviour:
- Create some notes with a generic track.
- Assign a parent to the note's track.
- Animate the
positionproperty on the parent track (this is best observed when the player is also assigned to this parent track). - Observe inconsistency with movement along the Z-axis.
Expected behaviour
Objects should move the same amount as the parent track along each axis, however the movement is completely different along the Z axis.
Additional context
Video of the issue in question: https://github.com/user-attachments/assets/0cb9f235-02bb-433b-80d7-c2569274edf2
Log from this instance: 2025.01.28.21.17.43.log
Difficulty file for reference (JSON because gh doesn't allow .dat): ExpertPlusStandard.json
Game version: 1.39.1 Heck: 1.7.0+1.39.0 CustomJSON: 2.6.6+1.39.0 NE: 1.7.7+1.39.0
After investigating, this appears to be an issue with SiraUtil's fpfc implementation.
The bug does not occur when playing VR , toggling fpfc off using g, or outright disabling SiraUtil's fpfctoggle using --no-sirautil-fpfc
More specifically, this happens because while in fpfc, SiraUtil unparents the head/sabers and leaves them at [0,0,0], leaving them unaffected by root player movement. The notes then try to follow the head's z position, as they normally would.
Will adding this toggle mean that the FPFC command will now run base game FPFC? Is that encouraged over SiraUtil's FPFC?
Closing since this is apparently not an issue with Heck