Developers
Java API
Read suspects and control watch sessions from your own plugin.
Setup
softdepend: [SentinelAC]<dependency>
<groupId>com.sentinelac</groupId>
<artifactId>sentinelac</artifactId>
<version>2.9.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/libs/SentinelAC.jar</systemPath>
</dependency>Getting the API
SentinelSusApi sus = Bukkit.getServicesManager().load(SentinelSusApi.class);
if (sus == null) return;
for (Suspect s : sus.suspects()) {
getLogger().info(s.name() + " " + s.verdict().score() + " " + s.patterns());
}Methods
| Method | Returns |
|---|---|
suspects() | Every flagged player, worst first. |
suspect(UUID) | One player's Optional<Suspect>. |
review(UUID) | UNREVIEWED, CLEARED, WATCHING or CONFIRMED. |
startSession(staff, target) | Start watching. true if it started. |
endSession(staff) | Stop watching and restore the staff member. |
inSession(staff) | Whether they're watching someone. |
watching(staff) | Who they're watching, if anyone. |
activeSessions() | How many staff are watching. |
Suspect
| Field | Meaning |
|---|---|
id(), name(), online() | Who the player is. |
verdict().score(), verdict().tier() | Confidence 0 to 100, and its tier. |
patterns() | Likely cheats, like "Fly hack". |
checks() | Per-check levels behind the score. |
flagCount(), kicks() | Totals so far. |
lagShare(), exemptShare() | Share of evidence from lag or game mechanics. |
review(), claimedBy() | Team verdict and who's watching. |
Threading
Call the read methods from a server thread. startSession and endSession must run on the staff member's own thread; on Folia, use their entity scheduler.