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-panel-1.4.4

File namearcadia-admin-panel-1.4.4.jar
Uploader
vyrrioxvyrriox
Uploaded
Oct 13, 2026
Downloads
129
Size
1.0 MB
Mod Loaders
NeoForge
File ID
9159368
Type
R
Release
Supported game versions
  • 1.21.1

Curse Maven Snippet

NeoForge

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

Learn more about Curse Maven

What's new

## [1.4.4] - 2026-10-13 (latest)

The website release: every sanction can now be driven from the server console, on a player who
is not connected, and goes through ArcadiaBridge for everything the bridge knows.

### Added

- **Console sanctions for a website.** `mute`, `unmute`, `jail`, `unjail`, `note`, `watch`,
  `unwatch` and `mail` now run from the console, and new commands fill the gaps: `ban <player>
  [reason]`, `unban <player>`, `kick <player> [reason]` and `sanction <player> <template>` (the next
  step of a sanction template). Each one takes a pseudo or a UUID and works on a player who is not
  connected; a UUID works even for a player this server has never seen.
- **`as <name>`.** `/arcadia_adminpanel as <name> <command>` files the action under that name in
  the audit log, the Discord webhook and ArcadiaBridge instead of `CONSOLE`, so a website can say
  which staff member clicked. Refused to players.
- **Unban on every server.** `unban` lifts the ban here, on ArcadiaBridge, and in the record the
  other servers replicate from; each server now also drops its own copy of a lifted ban within 30
  seconds, where it used to keep refusing the player until someone unbanned them there too.
- **Jail across servers.** A jail issued while the player is away is applied when they next join
  any server sharing the database, and a jail or a release issued on another server reaches a
  player who is connected here within 30 seconds. A player jailed while away is put back where they
  joined when the jail ends, instead of being left inside it.
- **ArcadiaBridge bans in the ban list.** The ban list now also shows the bans only the bridge
  holds (issued from Discord, from another server or with `/arcadia_ban`), marked as such, and
  unbanning one lifts it on the bridge. They are read off the server thread and appear a moment
  after the screen opens.

### Fixed

- **Jails were missing from the audit log.** Jailing and releasing from the panel, the baton or a
  command left no trace in the history or on the Discord webhook. They are recorded now.
- **A sanction template could not mute a player who was away.** The mute is stored by UUID (or by
  ArcadiaBridge) and now applies either way.
- **An unban written in the same millisecond as the ban was ignored.** Records were ordered by
  their creation time only, which kept the ban on top, so the player stayed banned on every
  server. Records written in the same millisecond are now ordered by their id.

### Performance

An audit of everything the panel runs on the server thread, on a network sized like Arcadia's
(2,800+ known players, several servers on one database).

- **FTB Teams files are read in the background.** Every time the 30 s cache ran out, the next
  player sheet, team list or chunk browser read and parsed every team file (one per known player)
  on the server thread. The lists are now warmed up at start and refreshed by a background thread,
  and an expired list is served while the fresh one is read.
- **The chunk browser builds its team footprints in the background**, from the claim files only
  instead of one file lookup per team, and redraws when they are ready.
- **Whitelist and operator sync writes each file once per pass.** Each vanilla add or remove
  rewrites the whole file, so a pass applying thousands of rows (the first after a start) rewrote
  `whitelist.json` thousands of times on the server thread.
- **The ban list resolves names with one index** instead of a scan of every known player per ban,
  and the staff tools screen counts bans without building the list.
- **The jail table loads off the server thread at start**, so a slow database no longer holds the
  first tick.
- **The profiler's team view groups a profile's points once** instead of on every redraw.
- **A client's mod report is accepted once per session** and deduplicated in linear time.

### Ajouts

- **Sanctions en console pour un site web.** `mute`, `unmute`, `jail`, `unjail`, `note`, `watch`,
  `unwatch` et `mail` se lancent maintenant depuis la console, et de nouvelles commandes comblent
  les manques : `ban <joueur> [raison]`, `unban <joueur>`, `kick <joueur> [raison]` et
  `sanction <joueur> <modèle>` (l'étape suivante d'un modèle de sanction). Chacune accepte un pseudo
  ou un UUID et marche sur un joueur non connecté ; un UUID marche même pour un joueur que ce
  serveur n'a jamais vu.
- **`as <nom>`.** `/arcadia_adminpanel as <nom> <commande>` enregistre l'action sous ce nom dans
  l'audit, le webhook Discord et ArcadiaBridge au lieu de `CONSOLE` : un site peut dire quel membre
  du staff a cliqué. Refusé aux joueurs.
- **Unban sur tous les serveurs.** `unban` lève le ban ici, sur ArcadiaBridge et dans
  l'enregistrement que les autres serveurs répliquent ; chaque serveur efface maintenant aussi sa
  propre copie d'un ban levé sous 30 secondes, alors qu'il refusait le joueur tant que personne ne
  l'avait débanni là aussi.
- **Prison entre serveurs.** Une mise en prison faite pendant l'absence du joueur s'applique à sa
  prochaine connexion sur n'importe quel serveur de la base partagée, et une mise en prison ou une
  libération faite sur un autre serveur atteint un joueur connecté ici sous 30 secondes. Un joueur
  emprisonné pendant son absence est ramené là où il s'est connecté à la fin de sa peine, au lieu
  de rester dans la prison.
- **Les bans d'ArcadiaBridge dans la liste des bans.** La liste affiche aussi les bans que seul le
  bridge connaît (posés depuis Discord, depuis un autre serveur ou avec `/arcadia_ban`), signalés
  comme tels, et les débannir les lève sur le bridge. Ils sont lus hors du thread serveur et
  apparaissent un instant après l'ouverture de l'écran.

### Correctifs

- **La prison manquait dans l'audit.** Emprisonner ou libérer depuis le panel, la matraque ou une
  commande ne laissait aucune trace dans l'historique ni sur le webhook Discord. C'est enregistré
  maintenant.
- **Un modèle de sanction ne pouvait pas rendre muet un joueur absent.** Le mute est stocké par
  UUID (ou par ArcadiaBridge) et s'applique maintenant dans les deux cas.
- **Un unban écrit dans la même milliseconde que le ban était ignoré.** Les enregistrements étaient
  triés sur leur seule heure de création, ce qui laissait le ban en tête : le joueur restait banni
  sur tous les serveurs. Ceux écrits dans la même milliseconde sont maintenant départagés par leur
  identifiant.

### Performance

Un audit de tout ce que le panel exécute sur le thread serveur, sur un réseau de la taille
d'Arcadia (plus de 2 800 joueurs connus, plusieurs serveurs sur une même base).

- **Les fichiers FTB Teams sont lus en arrière-plan.** À chaque expiration du cache de 30 s, la
  fiche joueur, la liste des teams ou le navigateur de chunks suivant relisait et analysait tous les
  fichiers de team (un par joueur connu) sur le thread serveur. Les listes sont maintenant chargées
  au démarrage et rafraîchies par un thread dédié, et une liste expirée reste servie pendant la
  lecture de la nouvelle.
- **Le navigateur de chunks calcule l'empreinte des teams en arrière-plan**, à partir des seuls
  fichiers de claims au lieu d'une recherche de fichier par team, et se redessine quand c'est prêt.
- **La synchro whitelist et opérateurs écrit chaque fichier une fois par passe.** Chaque ajout ou
  retrait vanilla réécrit tout le fichier : une passe de milliers de lignes (la première après un
  démarrage) réécrivait `whitelist.json` des milliers de fois sur le thread serveur.
- **La liste des bans résout les noms avec un seul index** au lieu de parcourir tous les joueurs
  connus pour chaque ban, et l'écran des outils du staff compte les bans sans construire la liste.
- **La table des prisons se charge hors du thread serveur au démarrage** : une base lente ne bloque
  plus le premier tick.
- **La vue par team du profileur regroupe les points d'un profil une seule fois** au lieu de le
  faire à chaque rafraîchissement.
- **Le rapport de mods d'un client n'est accepté qu'une fois par session** et dédoublonné en temps
  linéaire.

---

## [1.4.3] - 2026-10-13

Three suggestions from the Arcadia staff.

### Added

- **Tick cost per team in the profiler.** With FTB Chunks installed, the chunk tab has a "Group by
  team" switch: each FTB team shows what all the chunks it claims cost per tick, with its chunk and
  object counts, and a click lists that team's chunks, heaviest first. Unclaimed chunks are grouped
  on their own card. Totals are added up from every measured object, so a team spread over many
  small chunks is not under-counted. In the plain chunk list, every chunk now names the team that
  claims it. Claims are read from FTB Chunks' save files in the background, never on the server
  thread.
- **What a client runs on top of the modpack.** The Client Mods screen compares each report with
  the modpack: the mods the server runs plus a list of client-only mods. The overview shows, for
  every player, how many mods they added and the first few names, and sorts the players who added
  the most first. A player's screen lists the added mods first, in their own section, then the
  modpack. The client-only list is taken from the screen by an admin running only the modpack
  (left click on "Modpack reference"; right click clears it). New node
  `arcadia.adminpanel.clientmods.reference` (Admin), new config key `clientModReference`.
- **A key for the profiler 3D overlay.** "Profiler 3D overlay" in Minecraft's controls (category
  Arcadia Admin Panel) switches the overlay on and off without opening the panel. Unbound by
  default; it only works for staff with the performance node.

### Changed

- **The profiler 3D overlay writes only the tick cost** (µs per tick), like Observable. Block and
  entity names are gone from the world view; the profiler screen still lists them.

### Ajouts

- **Coût de tick par team dans le profileur.** Avec FTB Chunks installé, l'onglet chunks a un
  bouton « Regrouper par team » : chaque team FTB affiche ce que coûtent par tick tous les chunks
  qu'elle claim, avec son nombre de chunks et d'objets, et un clic liste ses chunks, du plus lourd
  au plus léger. Les chunks hors claim sont regroupés sur leur propre carte. Les totaux sont
  calculés sur tous les objets mesurés : une team répartie sur beaucoup de petits chunks n'est pas
  sous-estimée. Dans la liste des chunks, chaque chunk indique la team qui le claim. Les claims
  sont lus dans les fichiers de sauvegarde de FTB Chunks en arrière-plan, jamais sur le thread du
  serveur.
- **Ce qu'un client a en plus du modpack.** L'écran Mods client compare chaque rapport au
  modpack : les mods du serveur plus une liste de mods client seulement. La vue d'ensemble affiche,
  pour chaque joueur, combien de mods il a ajoutés et les premiers noms, et classe en premier ceux
  qui en ont ajouté le plus. L'écran d'un joueur liste d'abord les mods ajoutés, dans leur propre
  section, puis le modpack. La liste client seulement se prend depuis l'écran, par un admin qui n'a
  que le modpack (clic gauche sur « Référence du modpack » ; clic droit pour la vider). Nouvelle
  permission `arcadia.adminpanel.clientmods.reference` (Admin), nouvelle clé de config
  `clientModReference`.
- **Une touche pour l'affichage 3D du profileur.** « Affichage 3D du profileur » dans les contrôles
  de Minecraft (catégorie Arcadia Admin Panel) active et coupe l'affichage sans ouvrir le panel.
  Aucune touche par défaut ; elle ne marche que pour le staff qui a la permission performances.

### Modifications

- **L'affichage 3D du profileur n'écrit plus que le coût de tick** (µs par tick), comme Observable.
  Les noms des blocs et des entités disparaissent de la vue dans le monde ; l'écran du profileur
  les liste toujours.

---

## [1.4.2] - 2026-10-13

A maintenance release for the skin lookups that flooded Mojang at every boot.

### Fixed

- **Every boot sent one Mojang skin lookup per known player at once** (#6). On a network with
  thousands of players, Mojang answered `429 Too Many Requests` to almost all of them, each failure
  wrote a stack trace to the log, and the lookups ran on the worker pool shared with chunk
  generation. The offline scan no longer requests any skin: a head is resolved when it is shown.
  Lookups now go through one dedicated thread, one request per second, the screen being viewed
  first. After a failure the queue slows down, and a failed player is retried fifteen minutes later
  instead of keeping the default skin until the next restart. Online players use their own login
  profile with no request, and offline-mode UUIDs are never sent to Mojang. The player list keeps
  refreshing its heads for up to a minute while some are still being resolved.

### Correctifs

- **Chaque démarrage envoyait d'un coup une requête de skin à Mojang par joueur connu** (#6). Sur un
  réseau de plusieurs milliers de joueurs, Mojang répondait `429 Too Many Requests` à presque
  toutes, chaque échec écrivait une trace complète dans le log, et ces requêtes tournaient sur le
  pool de travail partagé avec la génération des chunks. Le scan hors ligne ne demande plus aucun
  skin : une tête est résolue quand elle est affichée. Les requêtes passent par un thread dédié, une
  par seconde, l'écran consulté en premier. Après un échec la file ralentit, et un joueur en échec
  est retenté quinze minutes plus tard au lieu de garder le skin par défaut jusqu'au prochain
  redémarrage. Les joueurs en ligne utilisent leur propre profil de connexion sans requête, et les
  UUID du mode hors ligne ne sont jamais envoyés à Mojang. La liste des joueurs continue de
  rafraîchir ses têtes pendant une minute au plus tant que certaines sont en cours de résolution.

This mod has no additional files