minetest/builtin/game
Auke Kok f627ef39e0 Introduce "protection_bypass" privilege.
This privilege allows map protection bypassing for server operators
and world moderators.

Initially I had thought that bypassing protection mods would have been
something that could entirely be done inside mods and minetest_game,
but the concept of protection is defined in core, in the code of
core.is_protected().

I don't feel that it would be logical to introduce a protection
concept in core, but not some way around that for server operators
to maintain map parts that need fixing, de-griefing or cleanup.

Others had noticed the same problems, and proposed a patch to
minetest_game. That patch is fine by itself, but it fails to add
protection bypass functionality for digging normal nodes and placing
nodes.

So, instead, we indroduce the new priv "protection_bypass" in core,
and modify 'on_place_node' and 'node_dig' to allow bypassing node
protections if the player holds this priv.

This priv was tested with protector redo by tenplus1.

A followup patch to Minetest Game will include allowing special checks
for doors, trapdoors, chests in Minetest Game.

Protection mods will likely want to mimic the changes in their relevant
code sections.
2016-03-11 21:09:53 +00:00
..
auth.lua Faster insertion into table 2016-03-06 23:42:04 +00:00
chatcommands.lua Add consistent monotonic day counter - get_day_count() 2016-03-09 01:45:23 +01:00
constants.lua Improve LuaVoxelManip documentation 2015-11-07 11:59:24 -05:00
deprecated.lua Refactor logging 2015-10-14 01:03:54 -04:00
detached_inventory.lua SAPI: Track last executed mod and include in error messages 2015-08-12 23:56:12 -04:00
falling.lua Minor tweaks __builtin:falling_node 2015-09-01 19:14:08 +02:00
features.lua Add AreaStore custom ID API 2016-03-07 16:33:20 -05:00
forceloading.lua Fix crash reported here: https://forum.minetest.net/viewtopic.php?f=6&t=9726 2014-07-13 11:05:07 +02:00
init.lua Add callback parameter for core.emerge_area() 2015-11-02 18:43:09 -05:00
item.lua Introduce "protection_bypass" privilege. 2016-03-11 21:09:53 +00:00
item_entity.lua Show infotext with description for item entities 2016-01-18 17:21:41 +00:00
misc.lua Faster insertion into table 2016-03-06 23:42:04 +00:00
mod_profiling.lua Fix retval of entity.get_staticdata beeing lost while profiling is enabled 2014-08-24 01:56:27 +02:00
privileges.lua Introduce "protection_bypass" privilege. 2016-03-11 21:09:53 +00:00
register.lua Add minetest.register_lbm() to run code on block load only 2016-03-07 19:54:26 +01:00
statbars.lua Hud: Modify Y-positioning of health/breath starbars to prevent overlapping with Hotbar 2015-02-08 12:47:45 -05:00
static_spawn.lua Log static_spawn error only once 2015-11-21 00:13:28 +01:00
voxelarea.lua Improved VoxelArea variable locality, thus performance 2014-11-14 00:10:09 +10:00