Astral Sorcery

Astral Sorcery

63M Downloads

[1.15.2] Multiplayer: Players within range of attunement altar are teleported when an attunement occurs

kalkafox opened this issue ยท 1 comments

commented

To further explain this, when the attunement occurs, the cutscene is shown for everyone in range. I'm not sure exactly how long the range is, but I know it's significant. I would love to test this out further if need be, as I have a test server running Astral Sorcery standalone, as demonstrated in the video log.

Looking forward to discussing how we can debug this further; Perhaps the attunement code may require additional checks for multiplayer?

Video log: https://imgur.com/RdTMI58

Thank you for taking the time to develop this amazing project.

EDIT: Unconfirmed if this happens on earlier or later versions, but I will further test if that is the case.

EDIT 2: After having a look through the code, I found that this function may pose a clue to the situation, although I may be wrong: hellfirepvp.astralsorcery.common.crafting.nojson.attune.active.ActivePlayerAttuneRecipe.java on Line 96:

    @Override
    public void doTick(LogicalSide side, TileAttunementAltar altar) {
        if (side.isServer()) {
            PlayerEntity player = altar.getWorld().getPlayerByUuid(this.playerUUID);
            if (player != null) {
                EventHelperInvulnerability.makeInvulnerable(player);
            }
        } else {
            setupPlanes();
            doClientSetup(altar);
            doEffectTick(altar);
        }
    }

This seems to indicate that the camera flight is applied globally, as opposed to only the player being attuned itself.

commented

The latest changes look good! There are some additional minor bugs with the attunement altar, now that the camera flight has been fixed, namely having to do with the attuned player's positioning from the perspective of another player, and an odd bug where the attunement altar is reset if a player steps infront of the altar while the recipe is ongoing. Interestingly, however, this phenomenon only occurs if the player has not completed any research whatsoever, from what I've seen. I will be uploading a video soon to demonstrate the steps to reproduce this.