A rewrite of the node_ownership Minetest mod with many new features.
Go to file
ShadowNinja f096fb4dbb Use table indices as IDs
This significantly optimizes a lot of operations and removes redundancy.
2013-11-18 21:12:09 -05:00
textures Initial commit 2013-09-02 19:16:14 -04:00
.gitignore Initial commit 2013-09-02 19:16:14 -04:00
api.lua Use table indices as IDs 2013-11-18 21:12:09 -05:00
chatcommands.lua Use table indices as IDs 2013-11-18 21:12:09 -05:00
depends.txt Initial commit 2013-09-02 19:16:14 -04:00
hud.lua Fix possible hud vector error 2013-11-14 18:25:47 -05:00
init.lua Use table indices as IDs 2013-11-18 21:12:09 -05:00
interact.lua Actually fix buildable_to nodes and update for protection support pull 2013-09-06 23:08:01 -04:00
internal.lua Use table indices as IDs 2013-11-18 21:12:09 -05:00
legacy.lua Use table indices as IDs 2013-11-18 21:12:09 -05:00
LICENSE.txt License tweaks 2013-11-14 19:11:20 -05:00
pos.lua Use table indices as IDs 2013-11-18 21:12:09 -05:00
README.md License tweaks 2013-11-14 19:11:20 -05:00
settings.lua Shorten lines 2013-09-03 01:33:08 -04:00

Areas mod for Minetest 0.4.8+


Configuration

If you wish to specify configuration options, such as whether players are allowed to protect their own areas with /protect (Disabled by default), you should check config.lua and set the apropriate settings in your minetest.conf.

Tutorial

To protect an area you must first set the corner positions of the area. In order to set the corner positions you run:

  1. "/area_pos set" punch the two border nodes.
  2. "/area_pos set1/2" punch only the first or second border node.
  3. "/area_pos1/2" set position one or two to your current position.
  4. "/area_pos1/2 X Y Z" set position one or two to the specified coordinates.

Once you have set the border positions you can protect the area by running:

  1. "/set_owner <OwnerName> <AreaName>" -- If you are a administrator or moderator with the "areas" privilege.
  2. "/protect <AreaName>" -- If the server administraor has enabled area self-protection.

The area name is used so that you can easily find the area that you want when using a command like /list_areas. It is not used for any other purpose. For example: /set_owner SomePlayer Diamond city

Now that you own a area you may want to add sub-owners to it. You can do this with the /add_owner command. Anyone with a area can use the add_owner command on their areas. Before using the add_owner command you have to select the corners of the sub-area as you did for set_owner. If your markers are still around your origional area and you want to grant access to your entire area you will not have to re-set them. You can also use select_area to place the markers at the corners of an existing area. The add_owner command expects three arguments:

  1. The id of the parent area. (The area that you want it to be a sub-area of)
  2. The name of the player that will own the sub-area.
  3. The name of the sub-area.

For example: /add_owner 123 BobTheBuilder Diamond lighthouse

Chat commands

  • /protect <AreaName> Protects a area for yourself. (If self-protection is enabled)

  • /set_owner <OwnerName> <AreaName> Protects a area. (Requires the "areas" privilege)

  • /add_owner <ParentID> <OwnerName> <ChildName> Grants annother player control over part(or all) of a area.

  • /rename_area <ID> <NewName> Renames a existing area, usefull after converting from node_ownership when all areas are unnamed.

  • /list_areas Lists all of the areas that you own. (Or all of them if you have the "areas" privilege)

  • /find_areas <Regex> Finds areas using a Lua regular expresion. For example: /find_areas [Cc]astle To find castles.

  • /remove_area <ID> Removes a area that you own. Any sub-areas of that area are made sub-areas of the removed area's parent, if it exists. Otherwise they will have no parent.

  • /recursive_remove_areas <ID> Removes a area and all sub-areas of it.

  • /change_owner <ID> <NewOwner> Change the owner of a area.

  • /select_area <ID> Sets the area positions to those of an existing area.

  • /area_pos {set,set1,set2,get} Sets the area positions by punching nodes or shows the current area positions.

  • /area_pos1 [X,Y,Z|X Y Z] Sets area position one to your position or the one supplied.

  • /area_pos2 [X,Y,Z|X Y Z] Sets area position two to your position or the one supplied.

License

Copyright (C) 2013 ShadowNinja

Licensed under the GNU LGPL version 2.1 or higher. See LICENSE.txt and http://www.gnu.org/licenses/lgpl-2.1.txt