negke and onetruepurple report 45 degree buttons hurting the player
sm179_otp: right at the start
qte1m2: near 2772 767 -584 (behind gk door on top of sluice gate, behind the dam)
it moves in the wrong direction in every port. but it doesn't damage the player usually
even happens on 40 fps
iirc it doesn't occur on 0.91.ish
or fitz
Try to reproduce and check against past versions / other engines.
It's a 64-bit vs 32-bit issue.
Tested 0.93.0 32-bit, as well as fitz0.85. Both maps work as expected.
Tested 0.93.0 64-bit. Player gets stuck when pressing the left button in sm179_opt, and stuck + hurt when pressing the qte1m2 (travail) button.
Hopefully easy to fix, probably the same cause as other 32-bit vs 64-bit bugs where we just need to insert a cast to double to force 64-bit precision on some operations.
More info:
- Attached a travail save that shows the issue (qte1m2.bsp near 2838 698 -584)
- All attempts to compile QS or Fitz 0.85 using VS2017 produced executables with the bug, even if I forced off SSE with
/arch:IA32- Finally tried CodeBlocks (codeblocks-17.12mingw-setup.exe) which is bundled with TDM-GCC.
Doing a debug build with QS's included CodeBlocks project produces an executable with the bug (button crushes player), and a release build produces an exe without the bug!
Still need to trace what happens in the physics code of the "working" builds vs the "buggy" ones.
fixed in r1554