Minetest Game有特权 (Privileges) 的设计,规定每个玩家可以做的事情,包括使用命令的权限。
在单人模式下,玩家预设只能走路、挖掘节点。需要使用命令给自己特权,才可以飞行、跑步、穿墙,否则会出现「没有xx权限」。
玩其他子游戏也一样,需要使用命令才能获得所有特权。
权限在多人游戏十分有用,给予全部特权,玩家可以指定多个管理员;给予部份特权,可以避免玩家破坏建筑。
特权种类可藉由模组扩充。
1. Minetest Game自带的特权
特权 | 说明 |
---|---|
interact | 玩家可以破坏节点,放置节点,跟节点互动,攻击其他玩家。 |
give | 使用/give和/giveme命令的权限。 |
teleport | 使用/teleport命令的权限。 |
bring | 使用/teleport指令,并将其他玩家传送到身边的权限。 |
fast | 玩家可以跑步。 |
fly | 玩家可以飞行。 |
noclip | 玩家可以穿墙。 |
shout | 玩家可以聊天。 |
settime | 使用/time命令的权限。 |
privs | 使用/grant和/revoke命令的权限。 |
basic_privs | 可修改其他玩家shout和interact的权限,可查看线上拥有特定权限玩家的列表。 |
kick | 使用/kick命令的权限。 |
ban | 使用/ban和/unban命令的权限。 |
rollback | 使用/rollback命令的权限。 |
protection_bypass | 玩家可以开启受保护的节点,例如上锁箱子和钢门。 |
server | 使用/shutdown, /clearobjects, /set等管理伺服器命令的权限。 |
debug | 存取游戏除错功能的权限。 |
home | 使用/home和/sethome命令的权限。 |
password | 使用/setpassword和/clearpassword命令的权限。 |
creative | 玩家可以使用创造模式物品栏。 |
2. Minetest Game玩家默认的特权
单人模式中,玩家预设的名字叫做singleplayer
。玩家一进入世界,会自动取得interact、shout、privs、basic_privs这些基本特权,这些特权无法撤销。如果是其他玩家连线加入,同样也是取得这些基本特权。
多人游戏中由minetest.conf
指定的管理员玩家会自动拥有所有特权,这些特权无法撤销。
3. Minetest Game特权相关命令
在多人游戏中,管理员玩家可以给予、撤销特权。
命令 | 功能 |
---|---|
/privs <玩家名> | 显示玩家拥有的特权,无输入名字则为自己 |
/haspriv <特权> | 显示拥有该特权的玩家 |
/grant <玩家名> <特权> | 给予玩家指定特权 |
/grant <玩家名> all | 给予玩家所有特权 |
/grantme <特权> | 给予自己指定特权 |
/grantme all | 给予自己所有特权 |
/revoke <玩家名> <特权> | 撤销玩家指定特权 |
/revoke <玩家名> all | 撤销玩家全部特权 |
/revokeme <特权> | 撤销自己指定特权 |
/revokeme all | 撤销自己全部特权 |
使用例:
单人模式给予自己所有特权:
/grantme all
给予叫做player1
的玩家飞行特权:
/grant player1 fly
给予playerB
玩家所有特权:
/grant playerB all
撤销playerC
玩家破坏节点的权限:
/remove playerC interact