Skip to main content
This page explains what each feature does once enabled. Toggle them in the configuration.

Bidirectional sync

Moderation flows in both directions.
When you ban or mute someone in the dashboard, they are checked on their next join. Banned players are kicked, muted players have a mute applied, and the record shows up in your admin system’s own ban and mute views.
The plugin prevents infinite loops: actions that came from the API are marked so they are not synced back, and the same in-game action only syncs once even when several hooks see it.

Permission sync

When a staff member joins, the plugin looks up their Technified permissions, maps the level to a rank in your admin system, and applies it. Permissions are cached for 5 minutes to reduce API calls, and tsync forces a refresh. Technified ranks are added alongside your existing config rather than replacing it. Ranks you configured yourself are never modified.

Ban sync

On server start, the plugin fetches all active bans and loads them into your admin system’s ban list, including bans on players who are not online. Only bans that apply to this game are loaded, meaning global bans and bans scoped to this Place ID. When a player joins, their ban status is checked and they are kicked if banned:
Banning in game parses the duration and reason and syncs the ban to the dashboard.

Mute sync

On server start, active mutes are fetched and loaded the same way. Joining players are muted if needed, enforced through TextChatService so their messages are not delivered. Muting in game parses the duration and reason and syncs the mute to the dashboard.

Shield sync

Opt-in protection using the global Technified Shield list. When SYNC_SHIELD is on, each joining player is checked against the Shield list and kicked with the Shield reason if flagged. Shield checks run independently of per-guild ban sync.

Session tracking

When a staff member at or above SESSION_MIN_LEVEL joins, a session starts and is logged to Roblox > Staff Activity. When they leave, the session ends and the duration is calculated. Each session records the staff Roblox username and ID, the game and Place ID, and start and end times.

Action logging

With LOG_ACTIONS on, commands run by staff are logged to Technified. Each log entry records who ran it, the command, the target, the reason, the raw command text, the Place and Universe IDs, and a timestamp. Logs appear under Logs > Audit Logs with a filter for Roblox actions.

Server manager

The plugin sends a heartbeat to Technified every 10 seconds with the current player list and server details. Commands you issue from Roblox > Server Manager ride back on the heartbeat response, so dashboard actions land within one heartbeat. Every command is acknowledged back to the dashboard with its result, so failures like “Player not in server” are visible to you.
Messages and broadcasts are passed through Roblox’s text filter before being displayed, as required by the Roblox Terms of Use.

Game registration

On startup the plugin registers your game with Technified, sending its Place ID, Universe ID, name, creator ID, plugin version, and server job ID. The dashboard then shows which games are connected and can filter moderation by game.

Reliability

When a player leaves, their session is ended and logged, the permission cache is cleared, and state is freed, so there are no memory leaks during long uptimes.
If the API is unavailable, the game keeps running normally and errors are counted for tstatus. Staff are never demoted on a failed permission lookup. Players leaving mid-operation are handled safely, and malformed responses fall back to defaults.