Skip to content
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

[1.15.2] Unable to exit end dimension #2160

Open
willies952002 opened this issue Jan 23, 2020 · 18 comments · May be fixed by Multiverse/Multiverse-NetherPortals#155
Open

[1.15.2] Unable to exit end dimension #2160

willies952002 opened this issue Jan 23, 2020 · 18 comments · May be fixed by Multiverse/Multiverse-NetherPortals#155
Assignees
Labels
Bug: Confirmed Issue/problem with the software. Resolution: Accepted MV-Team is aware of the issue/PR and will be looking into it.

Comments

@willies952002
Copy link

willies952002 commented Jan 23, 2020

Environment

Tested Server Software:
PaperDragon 1.15.2 (Base: Paper @ f11d64728fd4351a74edd672ec336f3f07921abb)
Paper 1.15.2 - Build 67 (8a0b371c6803027f15a3bfc66e2285955e9b8dc1)

Plugins:
- Multiverse-Core @ 4.1.1-SNAPSHOT-b777

Summary

When attempting to exit the end dimension through the central end portal, you get teleported on top of where the dragon egg spawns. Nether portals work in both directions, as well as entering the end.

Debug: https://j.mp/2TMqmce

Related:

@willies952002 willies952002 changed the title Unable to exit end dimension [1.15.2] Unable to exit end dimension Jan 23, 2020
@Jadiction Jadiction added the Bug: Confirmed Issue/problem with the software. label Jan 28, 2020
@kashalls
Copy link

kashalls commented Feb 19, 2020

Have you experienced this with just a 1.15.2 "Generic" Spigot Build?

@willies952002

This comment was marked as duplicate.

@nbastin
Copy link

nbastin commented Mar 9, 2020

We've had this problem for a while - it seems to be when you don't have a bed set. My guess is it tries to respawn you at "spawn", in the current dimension, which then in our case just drops you through the portal over and over again (and an admin has to teleport you out). If your bed has been properly set and not destroyed before you enter the end, everything seems to work fine.

@dcoshea
Copy link

dcoshea commented Apr 17, 2020

I'm seeing the same with git-Spigot-e7dc2f5-ce66f69 and Multiverse-Core, -NetherPortals and -Portals 4.1.0. As noted above it is only an issue when the player's bed is missing or obstructed.

I'm also using CommandHelper 3.3.4 snapshot build 3911. I put the following in my main.ms as a workaround, it seems to work:

# Work around https://github.com/Multiverse/Multiverse-Core/issues/2160
#
# We need to bind the player_spawn event, even though it's ugly, because:
# - player_portal_travel doesn't seem to fire for leaving the end
# - world_changed only fires if you actually leave the end
# - player_teleport doesn't fire in the problem case
# Note that player_spawn doesn't seem to fire at all when entering the end, but
# will fire when using the exit portal or dying regardless of whether a bed is
# set or the workaround is needed, and in both cases the current location will
# still be the end at the time the event fires.
bind('player_spawn', null, null, @event) {
    @loc = ploc(@event['player'])
    if(world_info(@loc['world'])['environment'] == 'THE_END') {
        # The player is meant to be leaving the end.  Wait until they've
        # actually finished spawning at their new location, then check if
        # they're still in the end.  If so, we need to teleport them out.
        queue_push(closure(
            @loc = ploc(@event['player'])
            if(world_info(@loc['world'])['environment'] == 'THE_END') {
                if(string_ends_with(@loc['world'], '_the_end')) {
                    console('Working around Multiverse-Core#2160 for '.@event['player'].
                            ' in '.@loc['world'])
                    # Push this onto the end of the queue of things to do so it's done
                    # immediately after the player has respawned, as running the command
                    # right now won't work.
                      sudo('/mvtp '.substr(@loc['world'], 0,
                                           length(@loc['world']) - 8))
                } else {
                    console('Cannot work around Multiverse-Core#2160 for '.
                            @event['player'].' in '.@loc['world'])
                }
            }
        ))
    }
}

It only works if your overworld world's name is the same as your end world's name without the _the_end suffix. It will write a message to the console every time the workaround is invoked, or if it needs to be but fails because the world's name doesn't end in _the_end.

@dcoshea
Copy link

dcoshea commented Apr 19, 2020

I found a much simpler workaround - the respawnWorld property can be set for the end world, so if your overworld is called WORLD, use this command:

mv modify set respawnWorld WORLD WORLD_the_end

It seems like this should be the default for consistency with vanilla Minecraft.

@Lycarex
Copy link

Lycarex commented Jun 19, 2020

hey,

is there a way to get to the end sequence of Minecraft instead of respawning in the Normal world when going through the portal in the middle of the end?

thanks for all answers :D

@nicegamer7
Copy link
Member

Can someone confirm whether this was in issue in 1.14?

@benwoo1110 benwoo1110 added the Resolution: Accepted MV-Team is aware of the issue/PR and will be looking into it. label Oct 12, 2020
@nicegamer7
Copy link
Member

I believe there was a change in either 1.15.1 or 1.15.2 that meant that exit portals no longer trigger the PlayerPortalEvent, but instead the PlayerRespawnEvent. That's my theory as to why this issue popped up. I'll do some testing to make sure, I'll post my findings here.

@gXLg
Copy link

gXLg commented Sep 5, 2021

I can confirm, the issue is still present in Spigot 1.16.5
The above command from dcoshea fixed that for me

@PaBox
Copy link

PaBox commented Sep 10, 2021

Same for me here. The described does fix the teleporting, but you still get a message saying that your home bed was destroyed or obstructed or no charged respawn anchor has been found. This is no big deal, as it is fixable, but it shouldn't be an extra step ("just works").

@gXLg
Copy link

gXLg commented Sep 10, 2021

@PaBox the message about bed is vanilla minecraft, it is not about the plugin

@bierdosenhalter

This comment was marked as duplicate.

@purejosh
Copy link

@dumptruckman The vanilla behavior of this action is to return the player to the world spawn point, if their bed is broken or obstructed. With multiverse, it teleports the player to the top of the bedrock pillar at the end gateway, and gives the error that their bed was broken or obstructed.

Please fix this issue by restoring the vanilla behavior if the player's bed is broken or obstructed. This is still present in 1.18.1.

@MrFabulous97
Copy link

Even after using the command dcoshea posted players are still leaving the end and immediately spawning above the end portal.

I'm assuming its because last location is set to on.

Is there anyway to make it so leaving the end puts people back at their bed spawn like normal?

@bloodnighttw

This comment was marked as duplicate.

@s3nkwr

This comment was marked as duplicate.

@GaryCraft
Copy link

GaryCraft commented Jul 27, 2024

I can confirm this issue in Paper 1.21-109
this is a very annoying issue for survival servers with multiple worlds

Players entering the end portal cannot return to the overworld

@NeverGrowUp
Copy link

I can confirm this issue in Paper 1.21-109 this is a very annoying issue for survival servers with multiple worlds

You need to set the respawn world.
/mvm set respawnworld <overworldname> <end WorldName>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug: Confirmed Issue/problem with the software. Resolution: Accepted MV-Team is aware of the issue/PR and will be looking into it.
Projects
None yet
Development

Successfully merging a pull request may close this issue.