@@ -178,13 +178,16 @@ public void processJoin(Player player) {
178178 }
179179 }
180180
181- // Session logic
182- if (sessionService .canResumeSession (player )) {
183- service .send (player , MessageKey .SESSION_RECONNECTION );
184- // Run commands
185- bukkitService .scheduleSyncTaskFromOptionallyAsyncTask (player ,
186- () -> commandManager .runCommandsOnSessionLogin (player ));
187- bukkitService .runTaskOptionallyAsync (() -> asynchronousLogin .forceLogin (player ));
181+ // Premium players are always verified by Mojang — skip the session mechanism entirely,
182+ // which would send a misleading SESSION_RECONNECTION message and run session commands.
183+ if (canBypassWithPremium (player )) {
184+ // Premium bypass: player has a verified Mojang UUID matching the connecting player's UUID
185+ if (bungeeSender .isEnabled ()) {
186+ // Proxy handles routing; do not attempt backend-side BungeeCord redirect
187+ bukkitService .runTaskOptionallyAsync (() -> asynchronousLogin .forceLoginFromProxy (player ));
188+ } else {
189+ bukkitService .runTaskOptionallyAsync (() -> asynchronousLogin .forceLogin (player ));
190+ }
188191 return ;
189192 } else if (proxySessionManager .shouldResumeSession (name )) {
190193 service .send (player , MessageKey .SESSION_RECONNECTION );
@@ -198,14 +201,12 @@ public void processJoin(Player player) {
198201 logger .info ("The user " + player .getName () + " has been automatically logged in, "
199202 + "as present in autologin queue." );
200203 return ;
201- } else if (canBypassWithPremium (player )) {
202- // Premium bypass: player has a verified Mojang UUID matching the connecting player's UUID
203- if (bungeeSender .isEnabled ()) {
204- // Proxy handles routing; do not attempt backend-side BungeeCord redirect
205- bukkitService .runTaskOptionallyAsync (() -> asynchronousLogin .forceLoginFromProxy (player ));
206- } else {
207- bukkitService .runTaskOptionallyAsync (() -> asynchronousLogin .forceLogin (player ));
208- }
204+ } else if (sessionService .canResumeSession (player )) {
205+ service .send (player , MessageKey .SESSION_RECONNECTION );
206+ // Run commands
207+ bukkitService .scheduleSyncTaskFromOptionallyAsyncTask (player ,
208+ () -> commandManager .runCommandsOnSessionLogin (player ));
209+ bukkitService .runTaskOptionallyAsync (() -> asynchronousLogin .forceLogin (player ));
209210 return ;
210211 }
211212 } else if (!service .getProperty (RegistrationSettings .FORCE ) && pendingRegistration == null ) {
0 commit comments