Page 1 of 1

[Mod] NoCheat [1.0.1] [nocheat]

PostPosted: Sun Aug 04, 2013 12:19
by sfan5
NoCheat is a mod that can automatically ban or revoke interact of cheaters and hackers.

License
Code: GPLv2
Textures/Sounds: -
Dependencies:
none
Download:
1.0.1: https://dl.dropboxusercontent.com/u/30267315/Minetest/nocheat1.0.1.zip
1.0: https://dl.dropboxusercontent.com/u/30267315/Minetest/nocheat1.0.zip
All versions of NoCheat need the latest git of Minetest from at least 2013-08-04(YYYY-MM-DD)
A win32 version is (currently) only available from me: Sfan5's Minetest Win32 Builds | Post #258

Privileges:
maycheat
The player may cheat and be undetected by NoCheat.
Commands:
/vlreset <playername>
Resets the VL of a player | Requires privs Privilege
/vlget <playername>
Outputs the current VL of a player | Requires privs Privilege
/grant <playername> maycheat
Allows a player to cheat | Requires privs Privilege
/revoke <playername> maycheat
Revoke the right to cheat from a player | Requires privs Privilege
Explanation:
When the minetest server detects cheating the NoCheat callback is run.
The callback gives a player a specific amount(can be changed using vlsettings) of VL(Violation Level), Cheating can be announced in public(public_notify) and|or to the cheater(player_notify).
If a players VL reaches the level specified by auto_limit he is either banned(autoban) or his interact privilege(can be changed using revokesettings) is revoked(autorevoke).
If a player is banned this action can be announced in public(public_ban_notify).

All settings can be changed in settings.lua
Thanks to:
celeron55 for making the anticheat system better
PilzAdam for helping me test my mod
Uberi for having the idea of revoking interact
Jordach for more ideas

PostPosted: Sun Aug 04, 2013 12:48
by Bas080
What is considered cheating?

PostPosted: Sun Aug 04, 2013 12:56
by PilzAdam

PostPosted: Sun Aug 04, 2013 15:48
by rubenwardy
Nice!

PostPosted: Sun Aug 04, 2013 22:27
by Bas080
PilzAdam wrote:
Bas080 wrote:What is considered cheating?

https://github.com/minetest/minetest/blob/master/doc/lua_api.txt#L1147


Nice mod. I'm using this to avoid irritating glitch when server guests move to fast because of teleport <admin> <guest>.

PostPosted: Sun Aug 04, 2013 22:34
by Cooper97
Nice mod :-) but... why does it require the GIT version 0.4.7? Why does it not work with the stable version of Minetest 0.4.7?
And please make it so that the NoCheat mod works with Minetest 0.4.8 stable when 0.4.8 is released. And as improvement suggestion: If the mod works without bugs, it would be great if the NoCheat mod would be added by default.

PostPosted: Sun Aug 04, 2013 23:08
by PilzAdam
Cooper97 wrote:but... why does it require the GIT version 0.4.7? Why does it not work with the stable version of Minetest 0.4.7?

The anti-cheat code was recently fixed and improved, it now triggers a Lua event so mods like this can handle it.

PostPosted: Mon Aug 05, 2013 07:03
by sfan5
Cooper97 wrote:If the mod works without bugs, it would be great if the NoCheat mod would be added by default.

I don't think it should be added by default.

PostPosted: Mon Aug 05, 2013 11:16
by Jordach
NoCheat should be added to the servers that see FREQUENT PLAYERS daily. Not just the ones with one or two player; I mean like mauvebic's StarTest; that usually has 14 players on it.

For example; this mod should make it easier to revoke interact of chat spamming users to revoke their shout priv; this is a known thing where a 12yr old griefs; loses his interact; spams until he gets it back; revoking shout to these users would be a great benefit to the other clients connected to the server as it's less of a headache.

PostPosted: Mon Aug 05, 2013 11:38
by sfan5
Update!
Changelog:
  • The privileges revoked when using autorevoke can now be configured using revokesettings
Download in OP

PostPosted: Wed Aug 07, 2013 06:58
by Cooper97
sfan5 wrote:
Cooper97 wrote:If the mod works without bugs, it would be great if the NoCheat mod would be added by default.

I don't think it should be added by default.


Minetest 0.4.7 has also an anti cheat protection by default, if you add
disable_anticheat = false to the config, but this cheat prevention is very simple, and with added by default I mean replacing the old, simple prevention by this mod.

PostPosted: Wed Aug 07, 2013 07:17
by sfan5
Which old simple protection?
This mod doesn't check player movement etc. all that is done by the engine

PostPosted: Wed Aug 07, 2013 07:27
by Cooper97
sfan5 wrote:Which old simple protection?
This mod doesn't check player movement etc. all that is done by the engine


If I enable the default cheat prevention in the config, and I move to fast on my server, it teleports me back an it say's in the server window anything like "cheat prevention, player Cooper97 moved to fast."

PostPosted: Wed Aug 07, 2013 10:56
by sfan5
Yeah thats right, that is done by the engine automatically.
If you'd read the code of my mod you'd know that it only counts the VL and doesn't teleport the player back

PostPosted: Wed Aug 07, 2013 11:32
by Cooper97
Ok. But I think this mod is very useful for all server. That is the reason for the idea to add this mod by default.

PostPosted: Wed Aug 28, 2013 03:35
by BrunoMine
This means that hackers have minetest?
Someone explain this better?

PostPosted: Wed Aug 28, 2013 08:17
by Zeg9
brunob.santos wrote:This means that hackers have minetest?
Someone explain this better?

...someone tell him?

Re: [Mod] NoCheat [1.0.1] [nocheat]

PostPosted: Fri Mar 06, 2015 00:57
by BrunoMine
It seems that is not working.
I tested entering a server with active mod, but I broke a locked alien chest several times and nothing happened.

Re: [Mod] NoCheat [1.0.1] [nocheat]

PostPosted: Wed Mar 11, 2015 10:25
by sfan5
This mod handles cheating detected by the Minetest engine, this doesn't include breaking some locked chest node.