Calagopus Panel extension for installing Minecraft plugins, mods, and datapacks from Modrinth
Palworld Config Editor
Description
Palworld Config Editor
A Calagopus panel extension: an in-panel PalWorldSettings.ini editor for Palworld servers. Adds a typed REST API to the panel and a "Palworld" tab to the server view where owners can browse every Palworld world setting, see what it does, change it and save — without touching the file manager.
Requires panel 1.1.0 or newer.
Install
Download gg_ir77_palworldconfig.c7s.zip from the
latest release, then on your panel:
panel-rs extensions add gg_ir77_palworldconfig.c7s.zip
and rebuild/restart the panel as usual for backend extensions (the extension compiles into the panel binary and the frontend is bundled into the SPA build).
What it does
Palworld dedicated servers read all world settings from one file:
/Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
The file is two lines: a section header and a single
OptionSettings=(Key=Value,...) tuple with ~108 entries. The game reads it
on boot — and rewrites it from its in-memory values on shutdown (verified
empirically: an edit made while the server ran was reverted byte-for-byte by
a SIGTERM stop). Because of that, the editor only allows saving while Wings
reports the server offline; a save while the server runs would be silently
lost at the next stop. The UI disables Save with an explanation until the
server is stopped, and the API enforces the same rule.
The backend mounts two routes on the panel's client-server router (session-authenticated, server-scoped, subuser-permission aware):
| Method | Path | Permission | Purpose |
|---|---|---|---|
| GET | /api/client/servers/{server}/palworld-config |
files.read-content |
Parse the INI via Wings; return typed values, managed keys, unknown keys |
| PUT | /api/client/servers/{server}/palworld-config |
files.create |
Validate partial updates against the catalog, rewrite only changed values, write back via Wings |
Both routes 404 for servers that are not Palworld (detected by egg name or a
PalServer startup command).
The frontend tab groups all settings into categories (world, Pals, players, PvP, guilds, ...), with descriptions, recommended ranges, units and flags (performance impact, no effect on dedicated servers) researched from the official Palworld server guide (docs.palworldgame.com), the Palworld wiki and community tooling.
Managed keys
Most Palworld eggs rewrite some keys (server name, passwords, ports, player cap) from panel startup variables on every boot — editing those in the INI would silently revert. The extension detects this per server instead of hardcoding an egg:
- keys rewritten by the egg's config files (Wings file parser),
- keys manipulated directly in the startup command (command-line flags,
sedhacks), - keys driven by startup variables, either referenced in the startup command
(
-port={{SERVER_PORT}}) or applied implicitly by pelican'sPalworldServerConfigParser(detected via the egg's variable list).
Detected keys are rejected by the API and shown read-only in the UI with a pointer to the Startup tab.
Safety properties
- Quote- and parenthesis-aware parser (string values may contain commas;
CrossplayPlatforms=(Steam,Xbox,PS5,Mac)nests parens). - Untouched entries are preserved byte-for-byte; a save only rewrites the values that changed.
- Every write is validated by type (bool/int/float/enum/text/lists), range
capped, and sanitized (no quotes or control characters in strings, tech IDs
must be
[A-Za-z0-9_]), so a malicious value cannot break the tuple or inject keys. - Keys present in the file but unknown to the catalog (added by future game updates) still round-trip and are editable as plain text, so the editor never goes stale-broken.
- Writes are refused (409) unless the server is fully offline, because the game overwrites the file from memory on shutdown.
- Writes are logged to the server activity log as
server:palworld-config.updatewith the list of changed keys.
backend/tests/live_format.rs locks all of this against a sanitized
real-world file captured from a live server: byte-identical round-trip, full
catalog coverage and typed conversion of every key.
Layout
Metadata.toml extension manifest
backend/ Rust crate compiled into the panel
frontend/ React tab bundled into the panel SPA
Development
The crate builds inside a panel checkout: panel-rs extensions add places it
under backend-extensions/gg_ir77_palworldconfig and registers it. Backend
unit tests (INI parser, catalog round-trip against a live-captured file) run
with cargo test -p gg_ir77_palworldconfig from the panel workspace.
Releases are built by CI from tags (vX.Y.Z must match
backend/Cargo.toml); each release ships the installable
gg_ir77_palworldconfig.c7s.zip.
License
MIT — see LICENSE.
You might also like
All extensions- ExtensionsFreeContent InstallerGitHubNo ratings yet
- ExtensionsFree

Calagopus Panel extension for switching Minecraft server versions with admin dashboard and install tracking
GitHubNo ratings yet - ExtensionsFree

Calagopus Panel extension for visually editing Minecraft server.properties
GitHubNo ratings yet - Extensions$11.99

An easy-to-use minecraft plugin installer and manager for Calagopus.
BBBSXRated 5.0 out of 5 from 3 reviews

