promotional bannermobile promotional banner

Arcadia Admin Pannel

**Arcadia Admin Panel** is a powerful server administration tool designed to simplify player management through an intuitive and modern GUI. Stop typing long commands! Manage your server efficiently with just a few clicks.
Back to Files

Arcadia Admin Pannel 1.2.8 (NeoForge 1.21.1)

File namearcadia-admin-panel-1.2.8.jar
Uploader
vyrrioxvyrriox
Uploaded
Jun 15, 2026
Downloads
4.0K
Size
231.9 KB
Mod Loaders
NeoForge
File ID
8253628
Type
R
Release
Supported game versions
  • 1.21.1

Curse Maven Snippet

NeoForge

implementation "curse.maven:arcadia-admin-pannel-1427236:8253628"

Learn more about Curse Maven

What's new

Fixed

  • "Couldn't place player in world" after reloading a single-player world — LoginTracker is a static singleton whose coalescing IO executor was created once in its constructor and terminated by shutdown() on ServerStopping. On an integrated (single-player) server the singleton outlives the world, so loading a second world in the same client session reused the dead executor: the first recordLogin called io.schedule(...) on a terminated pool, threw RejectedExecutionException, and aborted the player-placement step — surfacing as the vanilla "Couldn't place player in world" disconnect. The IO executor is now (re)created on every init() (ServerStarted) and the reference is dropped after shutdown(), so each world session gets a live pool. markDirty() additionally falls back to a synchronous write if the pool is ever absent or shutting down, so a login can never throw or lose its write.

Correctifs

  • « Couldn't place player in world » après le rechargement d'un monde solo — LoginTracker est un singleton statique dont l'exécuteur d'écriture coalescé était créé une seule fois dans le constructeur puis arrêté par shutdown() au ServerStopping. Sur un serveur intégré (solo), le singleton survit au monde : recharger un second monde dans la même session client réutilisait l'exécuteur mort — le premier recordLogin appelait io.schedule(...) sur un pool terminé, levait RejectedExecutionException et interrompait le placement du joueur, ce qui se manifestait par la déconnexion vanilla « Couldn't place player in world ». L'exécuteur d'écriture est désormais (re)créé à chaque init() (ServerStarted) et la référence est libérée après shutdown(), de sorte que chaque session de monde dispose d'un pool actif. markDirty() bascule en plus sur une écriture synchrone si le pool est absent ou en cours d'arrêt, afin qu'une connexion ne puisse jamais lever d'exception ni perdre son écriture.

This mod has no additional files