Venusanticheat docs

FAQ

The questions that come up before and right after the first install.

Is Venus a fork of another anticheat?

No. Venus reads packets through PacketEvents and runs its own movement simulation, its own check set and its own storage layer. The API deliberately mirrors the shape of APIs server owners already know, which is why the service names here will feel familiar.

Do I need ProtocolLib?

No, and you should not install it. Venus injects at the Netty level through PacketEvents. If both are present, packets get rewritten twice and the symptom is checks quietly not firing.

My players are getting flagged for movement. What do I check first?

  1. Look at the verbose line. It names the check and the numbers behind it, which tells you whether this is a simulation mismatch or a genuine cheat.
  2. Consider the player's ping. A player on a connection that barely keeps up will look wrong no matter what — the transaction timeout exists to catch exactly this, so tune it before you blame the check.
  3. Check whether the player is on Bedrock, behind ViaVersion, or on a client that rewrites movement. All three are supported, but the corresponding exemptions have to be in place.
  4. If the flags are consistent and the player looks legitimate, raise the group threshold in checks.yml rather than disabling the check.

Can I exempt a player or a world?

Yes. The bypass permission disables every check for whoever holds it, but only when it is enabled in the configuration — the permission alone does nothing, so a wildcard permission setup can never silently unhook your anticheat. For per-world or per-region exceptions use the world options in the configuration, and for a single session use the exemption service from a plugin.

Does Venus store player data?

Only if you enable the datastore. With storage off, everything lives in memory and history queries report that there is nothing to show. With it on, sessions and violations are written to the backend you configure — see configuration.

Does the cloud connection send player names?

Cloud features send the signals needed to classify behaviour, not chat logs. You can keep the cloud disabled entirely; local checks, alerts, history and punishments all keep working.

How do I pause punishments while I tune?

Remove the actions from the group in checks.yml and keep the group itself, so checks stay active and you still get alerts and logs.