The client's mod list, judged by the server.
RefuseMods, on by default, withModPolicyatAllow: the plugins the server itself runs are always fine, anything else has to be named inAllowedMods.Denyinverts it for a server that only wants to name what it will not have.This is the check that actually reaches cheating on a dedicated server, and the reason is one line of vanilla:
Console.IsCheatsEnabledreturnsZNet.instance.IsServer(). A client's owndevcommandsis inert on somebody else's server - it flips a bool the gate then ignores - so anybody cheating there is necessarily running a mod that patched around it. What a character did in the past is a weaker question than what the client is running now.Both lists ship empty, and
DeniedModscould not honestly ship otherwise: a list of cheat mod GUIDs written in advance is stale the week after and reads as complete when it is not. Every plugin a client brings that the server does not run is written to the log as it connects, admitted or not, which is what those lists get built from.Self-reported, like everything else here. A purpose-built client can lie about all of it.
Discussion
Nothing said yet.
Sign in or make an account to join in.