DUXPLIMA Documentation

Targeting and immunity

The spectate list, self-targeting, who is spared, and the server cooldown.

Two scopes

ScopeHits
OneThe player you are currently watching
AllEverybody in the server

The panel puts them on two sides: the right-hand buttons are single target, the left-hand buttons hit everyone.

The target list

The panel lists the players you may target, sorted by display name, and the camera follows whichever you are on. Stepping through the list moves the camera with it.

The list updates when anybody joins or leaves, so a target who has left cannot be selected.

Immune players are absent, not greyed out

An immune player never appears in the list. That is deliberate: a greyed-out entry tells everybody who is protected, and an absent one tells them nothing.

Immunity

Configuration/Server/ImmunitySettings.luau:

UserIds = {},
AttributeName = "TrollImmune",

Two ways to be immune:

A user id in UserIdsPermanent
The attribute, set to trueLive, for as long as your code wants
player:SetAttribute("TrollImmune", true)

Set AttributeName = "" to switch the attribute check off entirely and use only the list.

Immunity is checked in three places: when the list is built, when a single-target troll is delivered, and when an everyone troll picks its victims. There is no path that reaches an immune player.

Self-targeting

AllowSelfTarget = true,

Whether a player may put themselves in the target list and buy a single-target troll on themselves.

Harmless, and some players enjoy it. false removes them from their own list.

Does an everyone troll hit the buyer

AllIncludesBuyer = false,

Off by default. Paying to kill yourself reads as a bug rather than as a joke.

Turn it on if your game's tone is that a server-wide troll is genuinely indiscriminate.

The cooldown

AllCooldown = 10,

Seconds between two everyone trolls, counted across the whole server rather than per player.

A player who presses too soon is told privately how long is left, and no purchase prompt opens.

This is your main chaos dial

Ten seconds is playable. On a busy server with a lot of buyers it is still a troll every ten seconds, which for some games is the point and for others is unbearable.

Raise it to 30 or 60 before you consider disabling the everyone buttons.

Single-target trolls have no cooldown of their own. The rate limit in Configuration/Shared/Settings.luau is a general anti-flood guard, not a game rule:

Security = { MaxRequestsPerSecond = 10 },

What happens when a troll is refused

SituationResult
The troll is disabledNothing happens. The button is hidden anyway
The cooldown is runningA private chat line, no prompt
No target selected for a single trollThe purchase becomes a credit
The target is immuneThe purchase becomes a credit
The target leftThe purchase becomes a credit, with a private line

A purchase is never simply lost. See Products and credits.

Everyone trolls with nobody to hit

An everyone troll that reaches nobody, because the server is empty or everybody in it is immune, is not marked as granted. Roblox keeps the receipt and retries it later, so the purchase is not lost: it lands the next time it is retried and there is somebody to hit.

That is an edge case worth knowing about on a small server with a large staff.