RandomWarp

This plugin allows you to create one or multiple random warps for players to use. You can define "areas" in the configuration which can then be randomly warped to. This plugin is great for servers who want to give players a quick way to get into the wild without all players accumulating at the same start point creating a cluttered area where many resources may already have been mined by other players. This plugin give you the ability to have a well spread community while keeping them within the constraints of the specified area. To make this experience even easier, it can be combined with my TriggerCmds plugin to allow you to create button in your spawn to teleport the user to this random location at the click of a button or even the walking on a pressure plate (which can bring a while new usage to this plugin for traps and area protection).

One of the main advantages of this plugin over similar plugins is that this plugin checks the location before dropping the player there. This means you wont end up with players being dropped into water or lava or landing on top of trees. The other great feature is the option for multiple warp areas so you can use it for many purposes on your server.

Features

  • Create named random warps that users can warp to using "/rwarp [name]"
  • Editable via config file
  • Options to make sure users do not land in water, lava or on trees
  • Supports no permissions (OP based admin), Bukkit Permissions (i.e. most permissions plugins) or Vault Permissions (i.e. all the major ones that don't use Bukkit permissions)
  • Works perfectly with TriggerCmds to use with buttons

Installation/Usage

  1. Configure using configuration file (see below)
  2. Setup permissions if required (see below)
  3. Players execute "/rwarp" or "/rwarp [name]"

Commands

  • /rwarp - teleports the executing player to
  • /rwarp reload - admin command to reload configuration from config file

/rwarp can be aliased to /randwarp or /randomwarp

Configuration file

Example configuration file with comments:

#Default warp location
default: default
#Defined warps
warps:
  default:
    world: world
    x1: -128
    z1: -128
    x2: 128
    z2: 128
#What to avoid the user landing on
avoid:
  water: true
  lava: true
  trees: true
#Height to drop player into place with (No fall damage is incured if it is, set to a value less than 4)
drop-height: 8
#Shouldn't need to but checks the full distance from drop point to ground (adds aditional check, can lower performance. Helps avoid player landing in trees)
check-drop: false
#Loads (and generates if required) the chunk before testing the tp location
preload-chunks: true
#Attempts to find a location to warp the player to
attempts: 10
#If a suitable location can't be found, warp them somewhere even if it may be on something that was being avoided.
always-teleport: true
#Is the plugin enabled (i.e. Can players use it)
enable: true
#Display extra information in the console for debugging
debug: false
#Default permissions settings
permissions:
  #Op has all permissions
  op: true
  #Use Bukkit permissions
  bukkit: true
  #Use Vault permissions
  vault: false
  #Default permissions for ALL players ireespective of other permissions/plugins (can be all set to false for default confiruration)
  default:
    admin: false
    user: true
    warps:
      default: true
    warpother: false

Permissions

  • rwarp.admin - Permission to use in-game commands to manage warps and other admin features (i.e. reload)
  • rwarp.user - Permission to use the command to be randomly warped. Player will still need permission for the respective warp they wish to use.
  • rwarp.warps.* - Permission for a player to go to any defined warp
  • rwarp.warps.<name> Permission for the player to warp to the specified area
  • rwarp.warpothers Permission for a player to warp another player

Configuration

RandomWarp can be configured to work with no permissions (OP based admin), Bukkit Permissions (i.e. most permissions plugins) or Vault Permissions (i.e. all the major ones that don't use Bukkit permissions). You can use any single option or any combination of these. Which to be used is specified in the configuration file with the permissions.op, permissions.bukkit and permissions.vault nodes - if true, that permissions system will be used.

Default permissions

These should be configures no matter what permission system you are using. Default permissions apply to all users. If a default permission is set to true it means that all players will have that permission however setting it to false does not mean they wont - it will check with other permissions (Bukkit/Vault) if enabled to see if the user has permission allowing you to use the the standard permissions system as you usually would. If you are using Bukkit/Vault permissions you will probably want to set all of these to false as this will put full dependency on Bukkit or Vault saying a user has a certain permission however you may still use default permissions to cut down on how many nodes you need to provide in your permissions config if you know you want all users to have a specific permission. All users should check this configuration after updating, particularly if new permissions were added.

Recommended admin permissions

Bellow is a list of permissions that I would grant to admins in a real server situation:

  • rwarp.admin
  • rwarp.warpothers This assumes that admins inherit all permissions that users have if not, also provide the recommended user permissions.

Recommended user permissions

Bellow is a list of permissions that I would grant to users in a real server situation:

  • rwarp.user
  • rwarp.warps.*

ToDo

  • Improve search alogrithm to make it more effective
  • Check teleport location is accurate
  • Add functionality for /rwarp <player> as a command
  • Allow groups to teleport together to the same location
  • Add option for delays
  • Add an avoid radius
  • Get to work in nether/end
  • Add in game admin commands (to create warps)

Known Bugs

  • Player sometimes lands on the edge of an avoided block
  • If world need to be generated when teleported (they teleport to an unloaded chunk), player can fall then end up buried under ground. Usually occurs after a "Can't keep up! Did the system time change, or is the server overloaded?" See: https://bukkit.atlassian.net/browse/BUKKIT-3461

Donating

Making a donation is totally voluntary, however if you wish to donate I am happy to accept. I don't expect everyone using my plugin to donate however if your using my plugin (or any developer's plugins for that matter) on a server where you too receive donations then how about considering passing along some of that love to the people who make the plugins that make your server possible? I wouldn't expect people who don't make money from the use of the plugin to donate but all donations are appreciated and would help speed up development and get feature requests completed. If you would like to donate to me then you can use the button below:

Donate


Comments

Posts Quoted:
Reply
Clear All Quotes

About This Project

Categories

Members

Recent Files

Bukkit