ADMIN featured mod

mckaygerhard 1f949b4c11 fix anticheat for huge amoutn if nodes "digged" on explotions 1 gadu atpakaļ
LICENSE.txt 4383e656fa LICENSED under CC-BY-SA-NC 4.0 by mckaygerhard and mckayshiroy 2 gadi atpakaļ
README.md b804fa5c39 implements the beowulf anticheat client detection and improve it 1 gadu atpakaļ
administration.lua 6ffe2386e6 detection of dragonfire moved to respective modules 1 gadu atpakaļ
anticheats.lua 1f949b4c11 fix anticheat for huge amoutn if nodes "digged" on explotions 1 gadu atpakaļ
antispawn.lua e50a08e5d3 featured antispawn by appgurueu 1 gadu atpakaļ
commands.lua 043d3fe7f1 add support to detect hudbars and check if exits, then provide command 1 gadu atpakaļ
depends.txt 043d3fe7f1 add support to detect hudbars and check if exits, then provide command 1 gadu atpakaļ
governing.png 1a25157990 icon mod and first ready to use 2 gadi atpakaļ
init.lua 6ffe2386e6 detection of dragonfire moved to respective modules 1 gadu atpakaļ
mod.conf 043d3fe7f1 add support to detect hudbars and check if exits, then provide command 1 gadu atpakaļ
process.lua 6ffe2386e6 detection of dragonfire moved to respective modules 1 gadu atpakaļ
settingtypes.txt 2942ce1b50 implement basic anticheat and admin commands : anticheat + beowulf + fairplay 1 gadu atpakaļ

README.md

minetest mod governing

ADMIN mod, light version of various mods and extra tool for manage server

Information

@mckaygerhard PICCORO's improvement administration combo and commands for minetest

This mod attempts to be an improvement administration combo, but minimized as a light version of some other tools like geoip, names-per-ip, antigrif, antihack, etc etc etc

Technical info


This mod must be named governing and provides administrarion tools and procedures to manage server.

This mod features powerfully anticheat tools, mostly mixture of many others, and are able to detect the modified clients.

Repository : https://git.minetest.io/minenux/minetest-mod-governing

Note: this mod requires that the server have compiled with extra information enabled

Configurations

config param type value req default/min/mx example or description
secure.http_mods string governing yes none set geoip,governing
secure.trusted_mods string governing yes none set auth_rx,governing
governing.checkapikey string <string> yes none set 177cd4797a4949c4b1114d2e4ab9af11
anticheat.timestep int 15 no 15 / 10 / 300 How many time will run checks in seconds
anticheat.timeagain int 15 no 15 / 10 / 300 How many seconds checks again (to compare) on a suspected player
anticheat.moderators string admin yes admin,singleplayer Comma separated list name players that can watch and check stats
beowulf.dfdetect.enable_kick boot false no false will kick the cheater when performs detections

The governing.checkapikey string is requested by registering a free (or paid) account at https://vpnapi.io/ and if not configured, will be used a simple geoip request.

  1. its powered by VPNapi.io IP VPN & Proxy Detection API
  2. but if apykey is not set, its powered by IP Location Finder by KeyCDN

Warning: anticheat its a WIP from rnd's anticheat mod with beowulf mod fusioned

Commands

command & format permission description function observations
/killme interact kill yourselft no matter if killme mod is present or not
/govip <playername> governing complete ip player info Will require keyapi configuration set
/geoip <playername> geoip simple ip player info no matter if geoip mod is present or not
/cstats moderator to see latest detected cheater its not a privilegie, use config settings
/cdebug moderator to see even suspected cheats to be verified later its not a privilegie, use config settings
/satiation server manipulates the satiation of a player only provide if our mod its present, the original mod already has it
/cchk <playername> moderator checks for a cheater player it send a msh rare to the cheater

privs

  • geoip can make a geoip query, no matter if geoip mod is present or missing
  • governing can run administration command like ip check

Warning: currently moderator its not a privs.. its a list of players names, its a WIP from rnd's anticheat mod with beowulf mod fusioned

Api

Currently only geoip functions are exposed, we later exposed antcheat also

-- lookup command
governing.checkip("213.152.186.35", function(result)
	-- see "Check ip information data"
end)

-- overrideable callback on player join
governing.joinplayer_callback = function(playername, result)
	-- see "Check ip information result data"
end

Check IP information on data:

{
    "ip": "8.8.8.8",
    "security": {
        "vpn": false,
        "proxy": false,
        "tor": false,
        "relay": false,
    },
    "location": {
        "city": "",
        "region": "",
        "country": "United States",
        "continent": "North America",
        "region_code": "",
        "country_code": "US",
        "continent_code": "NA",
        "latitude": "37.7510",
        "longitude": "-97.8220",
        "time_zone": "America/Chicago",
        "locale_code": "en",
        "metro_code": "",
        "is_in_european_union": false
    },
    "network": {
        "network": "8.8.8.0/24",
        "autonomous_system_number": "AS15169",
        "autonomous_system_organization": "GOOGLE"
    }
}

LICENSE

  • Copyright (C) 2023 mckaygerhard mckaygerhard@gmail.com CC-BY-SA-NC 4.0
  • Copyright (C) 2023 mckayshirou mckayshirou@gmail.com CC-BY-SA-NC 4.0
  • Copyright 2016-2017 rnd LGPL v3 for anticheat code of minetest 0.4 engines
  • Copyright 2021-2023 BuckarooBanzay MIT for beowulf code of mt-mods

It applies CC-BY-SA-NC 4.0 unless you ask to request permission with special conditions. The ipcheck idea, the mod inclusion, can be distributed if the URL of repo are not altered when promotes.

URL : https://git.minetest.io/minenux and http://minetest.org