mojira.dev
MC-97523

Nether Portals briefly teleport players to original location in alternate dimension

Nether Portals briefly teleport the player to their starting location, but in the other dimension. If there is fire or lava at that location then the player takes fire damage after portal invulnerability has ended. This is accompanied by massive server lag / desync in MP and massive frame lag in SP. This is most likely caused by the anti-cheat (speed hacking) engine teleporting the player back to the original location.

e.g.
Overworld portal at (100,64,100)
Lava at (100, 64, 100) in nether

Overworld ==> Nether:
Fire damage (after portal invulnerability has ended)

Note:
In 1.9 pre-4 this issue was partly fixed by the adding of portal invulnerability. However this workaround is temporary for the 1.9 releaseat best as you still load the far-away chunks, catch fire and so on. The real underlying issue is the anti-speed hacking engine or whatever it is that produces those <PLAYER> moved too quickly messages being too trigger-happy.

Related issues

Attachments

Comments

migrated
[media][media][media][media][media][media]
migrated

Taking more than one tick's worth of damage is also possible in multiplayer, please update the description accordingly.

migrated

As an unrelated note, I'm not sure this has anything to do with the position bug MC-89928, as portals with lava lakes at the corresponding coordinates no longer set players on fire in 1.9-pre2.

migrated

@Fenhl this may be due to some type of fire resistance or invulnerability. It makes no sense that you take a tick of suffocation but not lava damage unless this was the case...

I've noticed that my admin noted that most of the "moving too fast" errors had disappeared from the console in the most recent Pre-Release versions, EXCEPT for when people were traveling through the portals... My question: is this, like suggested on other bugs close to this (MC-89928, MC-90605 and maybe others), could this be an issue with the server saying "you moved too fast from coordinate "x" to "x/8" (or conversely from x to x*8) and temporarily teleporting you back? I'm half wondering if half of these bugs that have been 'patched and closed' are actually useless code that have acted as bandaids for an over-active anti-cheat measure? Sorry if the logic in my mind is not making sense, but if all of these fixes since 15w42a have been fixing the end result of the bugs instead of what's causing them, won't the remaining cause still be the same and cause overall instability in the system, let alone server resources (loading unneeded chunks, network traffic, etc)?

I'll give a reason my mind says MC-90605 was happening that relates to this bug: You teleport to the dimension, anticheat tries to put you back, something added in 15w42+ puts you back in the portal, next thing you know you're being transferred back to the previous dimension because you entered and then left the portal then came back (all by the servers doing), and you get looped back because the cooldown on the nether portal looping is now broken by you entering and leaving then reentering (read above, but the servers doing). Now it was fixed in 16w06 by adding a cooldown. — AGAIN, this is fixing the result, not what caused the result.

My message to Mobius... look into, at least for a second, the root of the issues. Which I believe at this point the anti-cheat measure saying you moved too fast. Then you could probably remove all of the added bloat of correcting a bug that has cascaded into everything from changing dimensions to portal looping by breaking preexisting mechanics that were designed to prevent this in previous versions of the game.

migrated

@Fenhl in my testing I /setblocked lava at that location and promptly died when I went through.

[Mod] Neko

Grum, this is fixed as 1.9-pre2. Did you mean Future Version 1.9?

migrated

@unknown this is definitely present in 1.9 pre-2

migrated

Changed fix version.

migrated

Actually this is fixed... unless someone can show a video of themselves using a portal and taking lava/fire damage when the overworld coordinates in the nether are filled with lava, and then taking suffocation damage when they are filled with solid blocks, in 1.9-pre2 (F3 screen).

migrated

I can't prove that it has anything to do with coordinates, but I can absolutely confirm that I still take a tick of damage going through nether portals in -pre2. Whether it's suffocation or something else I have no idea. I don't know how to capture a video but I'll try to get some screenshots.

migrated

I think Grum wants us to use MC-89928

migrated

I'll post these screenshots on the other bug as well but as you can see from the filenames, they were taken in quick succession. Based on this evidence I actually don't think this bug has anything to do with coordinates any more, because the nether screenshots have the correct nether coordinates immediately. But as you can see, I still take damage while waiting for the chunk to load.

migrated

I will make another video then

migrated

Single tick of damage is MC-89928. If your coordinates are still messed up we can reopen this ticket.

migrated

OK, close this, I misunderstood what you were saying.

migrated

@redstonehelper The single tick of damage is caused SOLELY by this bug. It's caused by the game teleporting you to the wrong coordinates (which would be this bug), which happen to be in solid blocks (or catches you on fire if it's lava). This is still going on in even Pre-2. Why are we opening new tickets for the results of a bug? If this bug was fixed all of the damage on teleport bugs would simply cease being a thing, and to be honest, I think it's leading the Devs down the wrong path.

migrated

@James Koon thus bug was opened solely due to redsotnehelper's request to split the issues up; Grum has since reopened the other one which is much more visible.

migrated

To add to that, the single tick of damage is not due to player coordinates updating too late. There is another cause.

migrated

@Redstonehelper That is completely false; see James Koon's video.

migrated

Reopened once more after seeing the last video in the description.

migrated

With all due respect, this reopening and closing is very confusing. What reports correspond to which issues?

migrated

The way I understand, there are/were three issues:

  • Bug 1: Players end up at their original coordinates after using portals, coordinates do not correct themselves. This is what MC-89928 was for originally. This is fixed now.

  • Bug 2: Players take damage after using portals because they come out at their original coordinates for a very short time before the coordinates update for the new dimension. This was originally thought to be part of bug 1 and as such was part of MC-89928. Bug 1, after a few attemps, has been fixed in 1.9-pre2, but bug 2 persists, as pointed out by ProfMobius in the comments of MC-89928. MC-97523 was created for bug 2. I consulted with grum on how to proceed, he said bug 2 was actually fixed. As such, MC-97523 was resolved as fixed for 1.9-pre2. He said the issue people where people took some damage when using portals in 1.9-pre2 is a separate bug, bug 3 (see below). After proof was provided that MC-97523 is in fact still happening in 1.9-pre2, MC-97523 was reopened.

  • Bug 3: Players take damage when using portals, this damage is not caused by lava/fire/solid blocks at the overworld coordinates in the nether. Per grum's request this is tracked in MC-89928. I don't understand this issue entirely so I haven't been able to update the description for MC-89928.

I hope this clears things up, I'm sorry we haven't communicated this properly so far.

migrated

OK I will test these bugs later and confirm fixes if possible. Thanks for clearing up!

migrated

I'm not sure if and how this is connected but this is my experience, after upgraded to latest snapshot (pre-2):

Bug 4:

  • Player is insta-killed by suffocation damage, when using portal in either direction with Render distance 32 chunks.
    It takes about a minute to unload the world, before the "Downloading terrain" message appears and loads the other dimension. I have noticed, that during that time my hard disk is used 100%, which is SSD of type M.2 (really fast).

  • My save game is 289MB, at the time of writing, and I have almost no constructions in the Nether, therefore most of the unloading time comes from the Overworld.
    (Unloading - the time when your screen goes to Netherrack texture when using portal, but hasn't displayed the "downloading terrain" message yet.)

For test purposes, I have reduced the render distance, down to 2 and all went well in any direction (Nether<=>Overworld).

After player is killed, all items are lost (***), instead of dropped on the ground.
==================================================================
Here, at some point of writing this, I have noticed, that I have Java update notification.
After updating to 1.8.0-73_64bit, I have managed to use the nether portal as intended (even with Render distance 32). (No idea if it's related or not, but unloading time has reduced to "non-existing".)

      • - in one of my testing runs, I have managed to go from Nether => Overworld, but without any items, for 2 seconds.
        Then I was rubber-banded back to portal, with all my items back.
        I guess, that the game takes at least 1-tick to load your items, after using portal (load the dimension). I have a few automated redstone contraptions, with loads of mobs (400+), that sometimes make the game ticks run slower when loading.
        My point is, that if the player is insta-killed, before the dimension loads, there are no items to be dropped, since they weren't loaded yet.

migrated

This video was originally made for MC-89928, but it offers a side by side shot of what's happening in Pre2, if you would like to add it to the description.

https://youtu.be/n9hZgJDO9TA

migrated

https://youtu.be/oRu6rf4xNt8
More proof the player is actually there, server side. I think this one is quite useful as it shows that the player actually dies at that location.

migrated

Please resolve this as duplicate of either MC-89928 or MC-98153

gnembon

I have watched James Koon's videos and did some of my own testing, and did some reading over the MCP 9.31 code. Since entire teleportation and changing dimension code is only executed server side, and client is not informed about changing of the coordinates, it might be the case, that the player enters the other dimension at a correct location (A), then client updates player position to (8*A or A/8), clients last known location (for one tick), then server decides to move the player back ('Player moved wrongly' message). It might be just client server dissynchronization issue. It is visible on James Koon's videos, that from the other account perspective (thus not linked with the client of the first account) other account lands on the portal, then moves via clients request to the old coords and then is moved back by the server the third time.

migrated

Glad someone actually looked into this... hopefully someone at Mojang can fix this, I'm tired of policing nether portals on my server. 😃

gnembon

Yep - happend to Xisuma on his stream. crashed the game while going thrgouh the portal and the server were not able to correct his position ('moved wrongly' massage) and end up in the exact coords of the overworld, but in the nether.

https://www.youtube.com/watch?v=-Y6ygA6NiNI

migrated

Erik Broes

Unconfirmed

Minecraft 1.9 Pre-Release 2

Minecraft 1.9 Pre-Release 2

Retrieved