Bidirectional sync
Moderation flows in both directions.- Dashboard to game
- Game to dashboard
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.
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, andtsync 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: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. WhenSYNC_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 aboveSESSION_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
WithLOG_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
Automatic cleanup
Automatic cleanup
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.
Error handling
Error handling
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.