Moderation

Zyntex provides a powerful moderation system that allows you to manage your player base effectively. You can ban, mute, kick, and allow players to report others. The moderation system is designed to be flexible and easy to use, allowing you to focus on creating great experiences for your players.

Use cases

  1. Generic Moderation: If a player is being disruptive, you can ban, kick, or mute them as needed.
  2. Player Reporting: Players can report others for inappropriate behavior, which you can review live and take action on.
  3. Reputation: You can track player reputation and take action based on their behavior over all Zyntex experiences.
To learn more about the reputation system, check out the Reputation documentation.

Moderating a player

To moderate a player, you can use the Zyntex dashboard. Navigate to the Players tab in the Zyntex dashboard after selecting a game. Here, you can see all players currently in your game.
You can filter for players by their username, user ID, and sort them by their last activity, reputation, and more.
Once you find the player you want to moderate, click on their username to open their profile. Here, you can see their activity, reputation, and other information.
To create a new moderation, click the + New Moderation button at the end of the player list. You will be prompted to select a moderation type, enter a reason, and optionally set an expiration date for the moderation.

Moderation types

  • Ban: Permanently bans the player from your game. They will not be able to join until the moderation expires.
  • Kick: Kicks the player from your game. They will be able to rejoin.
  • Mute: Mutes the player, preventing them from sending messages in the game chat. They will still be able to join and play.
  • Report: Allows players to report others for inappropriate behavior. You can review these reports and take action as needed.

The moderation type enums are as follows: ban, kick, mute, and report. You can use these enums in the Zyntex SDK to create and manage moderations programmatically.

Viewing moderations

Game moderations

To view all moderations in your game, navigate to the Moderations tab in the Zyntex dashboard after selecting a game. Here, you can see all active and deleted moderations. You can filter by moderation type, player, and more. All moderations appearing in this page will be live.

Player moderations

To view a player’s moderations, navigate to the Players tab in the Zyntex dashboard after selecting a game. Here, you can see all players currently in your game. Click on a player’s username to open their profile. In the profile, you can see all active and deleted moderations for that player.

Public player moderations

To view a player’s public moderations, navigate to the Players page. Here, you can see all players currently in your game. Click on a player’s username to open their profile. In the profile, you can see all public moderations for that player.

SDK Integration

Creating a moderation

To create a moderation in the Zyntex Roblox SDK, you can use the Zyntex:ModeratePlayer method. This method takes the player’s user ID, moderation type, reason, and optional expiration date as arguments.

local Zyntex = require(path.to.zyntex)("YOUR-GAME-TOKEN")

Zyntex:init({
    debug = false;
})

game:GetService("Players").PlayerAdded:Connect(function(player)
  -- Can also be :Kick, :Mute, or :Report
  Zyntex:Ban(player, "Disruptive behavior", DateTime.fromIsoDate("2026-10-01T12:00:00Z")) -- Ban the player until the specified date
end)

If your game’s owner is on the Standard or Enterprise plan, the moderation will be counted towards the player’s reputation.
If you don’t want the moderation to affect the player’s reputation, you can set the test parameter to true when creating a new moderation.
Moderations from the Dashboard are always going to affect the player’s reputation.

All moderations applied in Studio will automatically be considered as a test.
This means that they will not permanently affect the player’s reputation.

Listening to moderations

If an administrator moderates a player from the dashboard, you can listen to the moderation event in the Zyntex Roblox SDK. This event is fired whenever a player is moderated.

local Zyntex = require(path.to.zyntex)("YOUR-GAME-TOKEN")

-- Can also be :OnKick or :OnMute
Zyntex:OnBan(function(player: Player, reason: string)
  local player = game:GetService("Players"):GetPlayerByUserId(player.UserId)
  -- Moderation actions are fired to ALL servers, regardless of if the player is in the server or not.
  if player then
    player:Kick(reason)
  end
end)

Zyntex:init({
    debug = false;
})

We highly recommend that you hook onto the moderation event (:OnBan, :OnKick, or :OnMute) before you call Zyntex:init().
This ensures that your moderation hooks are set up before the Zyntex SDK processes current players in the game.
Otherwise, players who are already in the game will be moderated without your hooks being called.

The Zyntex SDK has default moderation hooks that will automatically ban, kick, or mute players when they are moderated from the dashboard.
When you call Zyntex:OnBan, Zyntex:OnKick, or Zyntex:OnMute, you are overriding the default behavior.