summaryrefslogtreecommitdiff
path: root/builtin
diff options
context:
space:
mode:
authorLoïc Blot <nerzhul@users.noreply.github.com>2017-07-18 21:39:55 +0200
committerGitHub <noreply@github.com>2017-07-18 21:39:55 +0200
commit79f19b8369a0120fbf0bd0ee3739989fbbbca50e (patch)
tree0051cde3efe56d35d03aa50a5095d9b8ba04d15b /builtin
parent7e3cdf7088b1fb6744d0bd9cc903823b6e3bbfe3 (diff)
downloadminetest-79f19b8369a0120fbf0bd0ee3739989fbbbca50e.tar.gz
minetest-79f19b8369a0120fbf0bd0ee3739989fbbbca50e.tar.bz2
minetest-79f19b8369a0120fbf0bd0ee3739989fbbbca50e.zip
[CSM] Add flavour limits controlled by server (#5930)
* [CSM] Add flavour limits controlled by server Server send flavour limits to client permitting to disable or limit some Lua calls * Add limits for reading nodedefs and itemdefs * flavour: Add lookup node limits * Merge get_node_or_nil into get_node. Sending fake node doesn't make sense in CSM, just return nil if node is not available for any reason * Add node range customization when noderange flavour is enabled (default 8 nodes) * Limit nodes range & disable chat message sending by default * Bump protocol version
Diffstat (limited to 'builtin')
-rw-r--r--builtin/settingtypes.txt13
1 files changed, 13 insertions, 0 deletions
diff --git a/builtin/settingtypes.txt b/builtin/settingtypes.txt
index c710afdcf..60508d0dd 100644
--- a/builtin/settingtypes.txt
+++ b/builtin/settingtypes.txt
@@ -960,6 +960,19 @@ block_send_optimize_distance (block send optimize distance) int 4 2
# so that the utility of noclip mode is reduced.
server_side_occlusion_culling (Server side occlusion culling) bool true
+# Restricts the access of certain client-side functions on servers
+# Combine these byteflags below to restrict more client-side features:
+# LOOKUP_NODES_LIMIT: 1 (limits get_node call client-side to csm_flavour_noderange_limit)
+# CHAT_MESSAGES: 2 (disable send_chat_message call client-side)
+# READ_ITEMDEFS: 4 (disable get_item_def call client-side)
+# READ_NODEDEFS: 8 (disable get_node_def call client-side)
+# type: int
+csm_flavour_limits (Client side modding flavour limits) int 3
+
+# If the CSM flavour for node range is enabled, get_node is limited to
+# this many nodes from the player.
+csm_flavour_noderange_limit (Client side noderange flavour limit) int 8
+
[*Mapgen]
# Name of map generator to be used when creating a new world.