PALA 2.1.8 Scheduler, Discord integration, and a full-power NS Script engine.
Highlights
NS Script grew up. The event scripting language now supports math, ordered comparisons, else if, for each loops, return, and your own reusable functions – backed by 82 built-in functions.
Task Scheduler. Run scripts on a schedule from a new Schedules page, with the same language and built-ins your events use.
Discord integration. Connect a Discord bot, map channels, react to Discord messages as events, and send messages, embeds, and status updates straight from a script.
Game server control from scripts. Start, stop, restart, broadcast, and run countdowns with the new gs_* functions.
Redesigned event editor. A new workspace layout puts the editor beside live reference, custom functions, problems, and preview.
Scripting
Arithmetic (+ - * / %), ordered comparisons, and unary minus with proper precedence.
else if branching, for each ... in over arrays and objects, and return for early exit.
Reusable function definitions that are saved, versioned, and shared across your scripts.
Objects and dot-notation access ($player.name) throughout scripts and tokens.
wait(milliseconds) pauses a script and resumes it later, reloading globals so a resumed run never acts on stale data.
82 built-ins: text, number, time and conversion helpers, RCON calls (including the @@(...) capture form), Discord helpers, player roster lookups, and sandboxed file copy helpers.
Preview is fully side-effect free – globals are never written, external calls are simulated, and every skipped action is listed as a "simulated" note in order.
Safety rails on every run: statement, loop, call-depth and time budgets, plus caps on RCON calls and waits.
Shipped script templates went from 3 to 12, showing off the new language features.
Discord
Bot connection with lifecycle handling, channel mapping, and live status in the UI.
New discord.message_received event with a full token set (author, avatar, timestamps, mentions, pinned, attachments, embeds, raw content, and more).
discord_send, discord_embed, and discord_status script functions.
Mention authorization so relayed in-game chat cannot smuggle an @everyone ping.
Scheduler
New Schedules page for creating, editing, and monitoring scheduled tasks.
Scheduled scripts are permission-checked when you save them, not at 3am when they fire.
An overlapping run is skipped and recorded, and the schedule moves on – long runs can no longer pile up.
Server & fixes
PALA now detects a game server started or stopped outside of PALA and adopts it, instead of getting stuck in an error state.
Install, update, and UE4SS actions are no longer blocked after an external stop.
Stopping the server terminates the whole process tree, so no orphaned game server is left behind.
A watchdog prevents the status from getting pinned to "stopping" forever.
Keep-alive tracks the real server after the Palworld launcher hands off, so it can no longer start a second server.
Runtime status checks are cached, making dashboard refreshes noticeably lighter.
Fixed bundled PalEventer files not being found during a managed UE4SS install.
Upgrade notes
Existing NS.v1 scripts keep working – the language was extended in place, nothing was removed.
Discord tokens use underscore naming (for example discord_guild_id).
Update both the client and the server; the new editor features need the 2.1.8 server catalog.