PaperMC / PaperMC/Folia

PlayerTeleportEvent does not fire for most teleports

Open
#490 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

status: needs triage type: bug
Dominant language
Shell
Stars
4.4k
Forks
623
PR merge metrics
No merged PRs in 30d

Description

Expected behavior

PlayerTeleportEvent to fire for all teleportations

Observed/Actual behavior

PlayerTeleportEvent only fires for causes:

  • CONSUMABLE_EFFECT: tested eating chorus fruit
  • DISMOUNT: tested getting off a camel
  • EXIT_BED: tested getting out of bed

It does not fire for causes:

  • ENDER_PEARL: tested by throwing an ender pearl
  • NETHER_PORTAL: tested by walking through nether portal
  • END_PORTAL: tested by walking through an end portal
Steps/models to reproduce
final class PortalListener implements Listener {

  @EventHandler(priority = EventPriority.MONITOR)
  public void onTeleport(PlayerTeleportEvent event) {
    logger.debug("onTeleport");
  }

}

And

public final class MyPlugin extends JavaPlugin {

  @Override
  public void onEnable() {
    getServer().getPluginManager().registerEvents(
        new PortalListener()
    );
  }

}
Plugin and Datapack List

Just MyPlugin for testing

Folia version

This server is running Folia version 26.1.2-8-ver/26.1.x@62dc0f2 (2026-05-06T13:45:28Z) (Implementing API version 26.1.2.build.8-stable)
You are running the latest version

Other

No response

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the PlayerTeleportEvent behavior for ender pearls, nether portals, and end portals using the listener shown in the issue, then trace where those teleport causes dispatch the event. Done means PlayerTeleportEvent fires for all listed teleportations while preserving the existing behavior for consumable effects, dismounts, and exiting beds.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api, backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.