-
Notifications
You must be signed in to change notification settings - Fork 572
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] Teleports broken in versions newer than 4.11.3 #2868
Comments
Hi, came across this error when testing various mods. I can confirm on linux arm64 teleports will only function if you are sprinting as you hit them. Normal player movement does not trigger them. |
I have I just use Any idea why this is happening specifically in |
Tick rate differences, especially in physics. I am able to make a teleport function with standard player speed by sliding back and forth very short distances while colliding with the teleport. It may be something in this section: gzdoom/src/playsim/p_teleport.cpp Lines 684 to 785 in 98b5d8b
..or I could be off track with my guess. Anyway, here is a diff of the two releases for this specific cpp file: https://www.diffchecker.com/PnPaqBex/ In short the second implementation uses a substitute for the Z coordinate, while the first extracts that coordinate from the player actor alongside X and Y. Is this the cause? I don't know. My approach with source code as a hobbyist has always been trial-and-error when it comes to unfamiliar codebase. This is easily replicable by using GZ Doom with |
I also have an issue with the teleports, but different kind - it doesn't allow me to leave the teleport tile. For example, at DooM 1 E2M1 there's a teleport right in the beginning - it teleports me to the destination just fine, but when I try to leave it teleports me back to the first room, and vice versa. I've found a workaround for the first teleport on the level - leaving the teleport tile sideways does the trick. But this workaround won't work on a second one - there's simply no place to sidestep - only go forward. The device I'm using is Trimui Smart Pro, with custom linux OS and GZDoom 4.13.2 . |
Hey, I've got the same result in E2M1, its the same issue! I'm guessing that device you listed is also ARM64? |
I am currently unable to test on the ARM64 platform, but can you please compile from Also - please swap compilers (Clang if using GCC or GCC if using Clang) to see if the problem goes away. There was recently an issue with one of the VM functions being translated incorrectly to a native call when the JIT was disabled. |
At the rate wsl compiles this, I'll have an answer for you for GCC tomorrow. For the record I compile on bullseye with Edit: Build is complete, unfortunately the problem persists. I may attempt a clang build later if nobody else gets to it first. |
Yes, the device runs 64bit linux system. |
GZDoom version
4.14.0
Which game are you running with GZDoom?
Doom 2
What Operating System are you using?
Linux ARM (Raspberry Pi)
Please describe your specific OS version
Debian 13 (trixie)
Relevant hardware info
Apple M2
Have you checked that no other similar issue already exists?
A clear and concise description of what the bug is.
After filing #2830 , I realized this is not just for silent teleports in
myhouse.pk3
but for regular teleports in vanilla Doom. I tested the original doom2.wad, the BFG doom2.wad, enhanced doom2.wad, and kex doom2.wad. Walking into a teleport does not trigger them immediately, but instead keeps you in the same location usually. Walking back and fourth through them, or with momentum sometimes randomly does trigger the teleport, but this seems to happen entirely random.Steps to reproduce the behaviour.
Explain how to reproduce
Your configuration
Provide a Log
No response
The text was updated successfully, but these errors were encountered: