I am using BungeeCord, but I don't think this is a BungeeCord-specific question nor are my plugins BungeeCord plugins so I'll ask my question here. When a player hops from one server to another, the player's inventory contents must persist. I handle this by saving a player's inventory to a web database upon PlayerQuitEvent, and loading the player's inventory contents from the database upon PlayerJoinEvent. I was getting some unexpected behavior on the part of my web app: Despite PlayerQuitEvent firing before PlayerJoinEvent when a player transfers servers, my PATCH request to the web app fires after the GET request (as indicated on the web console). In other words, the inventory reloads on the new server before it saves its old contents to the database. I resolved the issue by delaying the inventory reload task upon PlayerJoinEvent. This is not an ideal solution, because the amount of time it takes to complete the PATCH request is variable. Additionally, logging in and waiting a few seconds to get your items is a bad user experience. Does anyone have a better solution?