Venusanticheat docs

CloudService interface

Connection state, reconnects and per-player cloud mitigation — nothing about your server’s raw payloads.

Reach it through api.cloud(). The cloud is optional: with it disabled, local checks, alerts, history and punishments all keep working. This service only reports and controls what is already happening; there is no API for submitting data to the cloud.

xyz.kaosmc.anticheat.api.cloud.CloudService
SignatureDescription
boolean connected()Whether the cloud connection is currently up.
void reconnect()Forces a reconnect attempt; no-op when already connected.
String serverName()The name this server registered with the cloud.
boolean mitigating(User)Whether the cloud is actively mitigating this player right now.
Optional<String> activeProfile(User)The mitigation profile name when one is active, empty otherwise.
void forget(User)Clears all cloud state held for the user.

Connection status

surfacing cloud state in your /status command
if (api.cloud().connected()) {
    sender.sendMessage("Cloud: connected as " + api.cloud().serverName());
} else {
    sender.sendMessage("Cloud: offline — local checks only");
    api.cloud().reconnect();
}

Mitigation

When the cloud classifies a player it can apply a mitigation profile — tightened tolerance rather than a punishment. mitigating(user) is the live answer; activeProfile(user) tells you which profile was chosen. Both clear when the mitigation expires or you call forget(user).

announcing a mitigation to staff
api.events().repository().register(MitigationEvent.class, event -> {
    User user = event.user();
    api.cloud().activeProfile(user).ifPresent(profile ->
            getLogger().info(user.username() + " is on cloud profile " + profile));
});

Cloud detections

The categories the cloud reports arrive on CloudDetectionEvent — see event classes. The enum that names them:

xyz.kaosmc.anticheat.api.cloud.CloudCheckType
SignatureDescription
AUTO_CLICKERClick-rate and click-pattern models.
CHEST_STEALERInhuman container looting patterns.
COMBAT_BEHAVIORBroader combat behaviour classification.
INVALID_PROTOCOLProtocol-level impossibilities.
SCAFFOLDScaffold / tower movement patterns.
CPS_LIMIT / RIGHT_CPS_LIMITClick-per-second ceilings, normal and right-click.
LATENCY_ABUSEManipulation of lag and packet timing.
MOVEMENT_ANOMALYMovement the local checks did not explain.
UNKNOWNFallback; also what parse(String) returns for anything unrecognised.
static CloudCheckType parse(String)Lenient parser: trims, normalises -/space to _, case-insensitive.

Connection setup and domain verification are covered in domain verification and onboarding procedure.