If you walk into a nether portal, you don't spawn at the right position in the nether and the other way around. You always spawn some blocks beside the portal and get suffocated if there is a wall.
To recreate the bug, i created a fresh world, built a nether portal and go through it. Then i got stuck in the netherrack some blocks under and beside the portal. But the portal was created just fine. When i wanted to go back to the overworld, i spawned 2 blocks in front of the portal in the overworld.
Adapted from @unknown's comment:
On 1.8.3, the cause of this issue is located in the class named "adv", which handles portal travel:
In the code for placing the player there's a bit like this, which seems to be for adjusting the X/Z position from the corner portal-block of the destination portal to more closely match where the entity entered the source portal. var31
is X, var33
is Z.
adv.java
if(var16.b().k() == cr.a.a) {
var31 += (double)var16.b().g(); // !!!
var33 = var18 + (1.0D - var1.aG().a) * (double)var16.d() * (double)var16.b().e().c().a();
} else {
var31 = var18 + (1.0D - var1.aG().a) * (double)var16.d() * (double)var16.b().e().c().a();
var33 += (double)var16.b().i(); // !!!
}
The lines I've commented with "!!!" are the problem, they move the entity 1 block in the "facing" direction of the portal without bothering to check for ground underneath, blocks in the way, or anything else. Modding the class to remove those two lines restores the expected behavior of spawning within the destination portal itself.
Linked issues
is duplicated by 19
Attachments
Comments 66
It's not always 2 blocks, sometimes it's just one block. But it's always the same distance at the same portal.
Confirming this. Installed the pre3 build on my server and its putting players in the walls. Doesn't matter whether they're using the 1.8 client or the 1.8.1 pre3 client.
Building new portals didnt fix this.
I can confirm this too. And not only for players, but for all entities. I have a guardians farm that sends a bunch of guardians to the nether, 150-200 at a time. Now most of them spawn outside the farm and spread everywhere but where they used to go before the 1.8.1-pre3 update. I've encased the destination portal in solid blocks to prevent them from spreading everywhere, but now most of them just die inside the surrounding walls.
I haven't tested thoroughly, but it seems that this problem only affects north-south portals, east-west portals seem to work fine. I'll do some more testing to confirm.
Edit: In the attached screenshot, the portal is oriented north-south, which seems to confirm this a bit more.
Edit 2: Finally, orientation of the portal doesn't make a difference. Reverted server to 1.8.1-pre2 because players keep dying inside walls!
Copied this over from MC-793 since this seems to be the right place.
This bug is now present in 1.8-pre3 since dinnerbone fixed MC-3. I tested my portal created in a snapshot prior to the 1.8 release, and I now take damage after I get to the nether, depending on which of the two blocks I stand in when entering from the overworld.
Things to note: Prior to the fix for MC-3 when entering the other dimension when using a portal, you would still be in the portal, now you are no longer in the portal. I believe that this is the source of the damage bug as the player placement is now outside the portal and sometimes this might be inside a block. This could be fatal for the first trip to the nether if you're over lava so I really hope this bug gets escalated!
Both portals are facing north-south. When I enter the overworld portal standing on the left side while facing south, I exit the nether portal on the left side but one block over and forward, facing north. If I enter the overworld portal standing on the right side while facing south, I exit the nether on the left side, but TWO blocks over and forward, which for this portal was a wall so I took damage. My portals are the traditional size of 5 tall by 4 wide with the interior of the portal being 3 tall by 2 wide.
--and--
And here is some more information - One of my portals in the nether had the four blocks immediately in front of the portal (at the same level as you would be standing on the obsidian of the portal floor) filled with a half slab, which means before this breakage, you would exit the portal and then rise up a half slab height. After the bug was introduced, you now go somewhere else, which in my case is below the portal and into the lava pool underneath 😞
Safest, yes, but maybe not the most desired when that isn't the case.
Presumably the future fix will be something along the lines of checking for any liquid or any solid blocks intersecting where the player would be placed outside of the portal plus ensuring there are solid blocks just under where the player would be placed. If the check fails (maybe try it on both sides of the portal just in case?) then it would have to fall back to the current behavior.
Then be ready to respond to bug reports in case there's any bugs like certain non-solid blocks accidentally being considered solid. 😉
Yes it needs to check for lava flowing around the portal !
I have one instance where the portal appeared in a lava flow going past both sides of it !
If it were not for appearing inside the portal, I would have roasted !
The one instance I really liked was a portal was created with a cobble base on both sides and was set on top of the netherrack !
I have never had that happen since - I believe that was in version 1.8.1.
Added photo of nether portal - had lava flowing around both sides - Luckily spawned inside portal - cleared one side to get out an stop lava flow - I believe this was in version 1.8.1
Something to consider in fixes.
Good example Alpha Wolf. Even if the code that chooses where to spawn you checks for lava and does not place you in it, there could be lava source blocks close by that have not started flowing yet. As soon as you spawn it, the lava flows into the block that the game has placed you on and you burn up.
From what I have read in the comments, I assume people believe that the reason for change to spawning outside of the portal is to stop people looping back and forth repeatedly between the nether and the overworld if they do not move.
Personally, I find looping more desirable than burning in lava.
Confirmed. Screenshot is taken after teleporting and just rotating but not moving.