teleport-request/README.md

107 lines
6.4 KiB
Markdown
Raw Normal View History

2019-07-09 03:47:14 +02:00
# Teleport Request
2019-07-09 03:47:14 +02:00
[The Pixel Shadow](https://minetest.tv/) Minetest game servers have switched from "teleport" to "teleport request" via the *teleport-request* mod. This mod makes it so players must send a request to another player in order to teleport to them. Before they will be allowed to do so, the player must accept the request. This prevents malicious users from teleporting to players' private areas without their permission. It also enhances the overall privacy of our services since if denied teleport, a player must instead travel to the area and "use the front door" so to speak... which might be a locked iron door.
2019-07-09 03:47:14 +02:00
## Privileges:
Each command needs a privilege. These are the following privileges:
- **tp** is requiered in order to use all commands.
- **tp_tpc** is requiered in order to use "/tpc"
- **tp_tpc** is requiered in order to use "/tpe"
- **tp_tpc** is requiered in order to use "/tpj"
2019-07-12 20:28:32 +02:00
- **interact** is also requiered to use all commands.
**tp_admin** overrides everything: e.g. you can teleport to players even when they haven't decided to accept, or not. You can also teleport him/her to you.
2019-07-09 03:47:14 +02:00
Players can also teleport to coordinates, however, if the area is protected, the teleport will be denied.
2016-05-13 14:38:19 +02:00
2019-07-12 20:28:32 +02:00
## How to use:
Each command does a function. "**Example Usage**" is an example of how to use the command.
Note there must be 2 players in order to make the commands to work: a player must send a request to another player (**see https://wiki.minetest.net/Server or see https://wiki.minetest.net/Setting_up_a_server for more information**).
These are the following commands available in-game:
2016-05-10 15:53:18 +02:00
2016-05-10 15:58:13 +02:00
``` /tpr [playername] ```
2016-05-19 14:28:17 +02:00
- **Name:** Teleport Request
2016-05-18 17:51:16 +02:00
- **Description:** Requests permission to teleport to another player, where [playername] is their exact name.
2019-07-09 03:47:14 +02:00
- **Required Privileges:** "interact", "tp"
2016-05-18 17:51:16 +02:00
- **Example Usage:** */tpr RobbieF* - requests permission from RobbieF to teleport to them.
2019-07-12 20:28:32 +02:00
- **Notes:** Usernames are case-sensitive. If you have "tp_admin" privilege, you will immediately teleport to the specificed player.
2016-05-10 15:53:18 +02:00
2016-05-10 15:58:13 +02:00
``` /tphr [playername] ```
2016-05-19 14:28:17 +02:00
- **Name:** Teleport Here Request
2016-05-18 17:51:16 +02:00
- **Description:** Request permission to teleport another player to you.
2019-07-09 03:47:14 +02:00
- **Required Privileges:** "interact", "tp"
2016-05-18 17:51:16 +02:00
- **Example Usage:** /tphr RobbieF - requests RobbieF to teleport to you.
2019-07-12 20:28:32 +02:00
- **Notes:** Usernames are case-sensitive. If you have "tp_admin" privilege, RobbieF will teleport to you immediately.
2016-05-10 15:53:18 +02:00
``` /tpc [x,y,z] ```
2016-05-19 14:28:17 +02:00
- **Name:** Teleport to Coordinates
2016-05-18 17:51:16 +02:00
- **Description:** Teleport to coordinates.
2019-07-09 03:47:14 +02:00
- **Required Privileges:** "interact", "tp_tpc", "tp"
2019-07-12 20:28:32 +02:00
- **Notes:** Honors area protection: if the area is protected, it must be owned by you in order to teleport to it, or you must have "areas" privilege in order to teleport to those coordinates (this does not apply if "areas" mod is not detected).
2016-05-18 17:42:47 +02:00
``` /tpj [axis] [distance] ```
2016-05-19 14:28:17 +02:00
- **Name:** Teleport Jump
- **Description:** Teleport a specified distance along a single specified axis.
2019-07-09 03:47:14 +02:00
- **Required Privilege:** "interact", "tp", "tp_tpc"
2016-05-18 17:51:16 +02:00
- **Available Options for *axis*:** x, y, z
- **Example Usage:** '/tpj y 10' - teleport 10 nodes into the air.
2016-05-19 14:28:17 +02:00
``` /tpe ```
- **Name:** Teleport Evade
- **Description:** In a sticky situation? Evade your enemy by teleporting to several nearby coordinates in random pattern. There's no knowing where you'll end up.
2019-07-09 03:47:14 +02:00
- **Required Privileges:** "interact", "tp_tpc", "tp"
2016-05-19 14:28:17 +02:00
- **Example Usage:** '/tpe' - teleports you to a random number of random coordinates in an evasive pattern.
2016-05-10 15:58:13 +02:00
``` /tpy ```
2019-07-12 20:28:32 +02:00
- **Description:** Accept a user's request to teleport to you or teleport you to them.
2016-05-10 15:53:18 +02:00
2016-05-10 15:58:13 +02:00
``` /tpn ```
2019-07-12 18:09:08 +02:00
- **Description:** Deny a user's request to teleport to you or teleport you to them.
2016-05-18 17:42:47 +02:00
2019-07-09 03:47:14 +02:00
## Dependencies
There are no dependencies.
However, optional dependencies are:
2019-07-09 03:47:14 +02:00
- [areas](https://github.com/minetest-mods/areas)
- [intllib](https://github.com/minetest-mods/intllib)
2019-07-09 03:47:14 +02:00
2019-07-22 06:29:17 +02:00
## Requirements
This mod requieres MT/MTG 5.0.0+ to run.
Older versions not supported.
## Bugfixes & suggestions
Report bugs or suggest ideas by [creating an issue](https://github.com/ChaosWormz/teleport-request/issues/new).
If you know how to fix an issue, or want something to be added, consider opening a [pull request](https://github.com/ChaosWormz/teleport-request/compare).
2019-07-09 03:47:14 +02:00
## License
2019-07-21 07:24:29 +02:00
LGPL-2.1 for code, CC-BY-SA-4.0 for [media](https://github.com/ChaosWormz/teleport-request/blob/master/sounds/LICENSE.txt) and [textures](https://github.com/ChaosWormz/teleport-request/blob/master/textures/LICENSE.txt) (click [here](https://github.com/ChaosWormz/teleport-request/blob/master/LICENSE.md) for more information).
2019-07-09 03:47:14 +02:00
## Contributors:
2016-05-17 16:49:11 +02:00
- [RobbieF](https://minetest.tv) | [GitHub](https://github.com/Cat5TV)
- [DonBatman](https://github.com/donbatman)
- [NathanS21](http://nathansalapat.com/)
2016-05-17 20:01:19 +02:00
- [ChaosWormz](https://github.com/ChaosWormz)
2019-07-22 06:29:17 +02:00
- [Panquesito7](https://github.com/Panquesito7)
2019-07-09 03:47:14 +02:00
- Traxie21, the original creator of this mod (however, he/she does not have a GitHub account anymore).
2019-07-22 06:29:17 +02:00
All those who contributed to the original mod (please see `init.lua`).
2019-07-09 03:47:14 +02:00
## Installation
- Unzip the archive, rename the folder to "tpr" (**without the quotes**) and
place it in ..minetest/mods/
- GNU/Linux: If you use a system-wide installation place
it in ~/.minetest/mods/.
- If you only want this to be used in a single world, place
the folder in ..worldmods/ in your world directory.
For further information or help, see:
https://wiki.minetest.net/Installing_Mods
2019-07-09 03:47:14 +02:00
## TODO:
- Make it so if a player attempts to teleport to coordinates within a protected area owned by another player, and that player is online, the owner receives a request to allow or deny the user from teleporting to their area.
- Add limitations to /tpc which only allow a user to teleport X number of blocks. Prevents users from teleporting to the edge of the world.
2016-05-13 14:46:44 +02:00
- Assess value in changing all tpr-based chat commands to one global command such as /tp to reduce the chance of confusion between tps_admin and the original mod (and also make it so people don't have to remember so many commands).
2016-05-13 16:04:16 +02:00
- Create a better sound effect for teleport and apply it to all teleport methods (not just /tpc)
- Create a new function for the actual set_pos() to remove all the redundant code each time the player is moved and the sound played.
2016-05-18 13:28:24 +02:00
- Rewrite to place all chat commands into one single command much like how /teleport works.
2016-05-19 00:55:05 +02:00
- Make evade respect land: no teleporting inside land, but instead make sure player is standing on surface or in water.