Better Warp

Better Warp 1.3.01

This plugin provides many features to make event servers, or survival servers with shops a hell of a lot easier. This is mainly because of this plugins functionality to paste CopyPaste paste files at your desired warp point automatically on a server wipe.
It also offers a gateway like system where you can stand on a point to teleport to a created warp point. The automatic creation of warp points with pastes also supports the Gateway feature, but you have to specify static coordinates for the gateways location. Gateways act as an entrance to a warp point. You could for example, set a permission for the warp point command and only allow players to teleport to a warp point via the gateway. The gateway functionality has a config option (disabled by default) so it'd need enabling if you want to make use of this feature.


betterwarp-1.jpg

betterwarp-2.jpg


If you have any suggestions or feedback for this plugin let me know, I'll be regularly developing this plugin so I would love some more ideas.

The main features are:
  • Automatic pasting at warp points
  • Gateways for warp points
  • Gateway location marking
  • NoEscape raidblock and combat block checks
  • Ability to cancel warp countdowns
  • Easy chat command based warp creation
  • Optional warp cooldown
  • Ability to teleport back to original position after warping
  • UI for listing all available warps
  • Random warps
CopyPaste explanation
Since I did a very bad job at initially explaining this functionality I will write a detailed explanation/tutorial of how it works. So, for a Paste to be applied by the plugin you need to edit it in the config. The config field named "List of warps and paste information" is a list of pastes you can provide. So you can have as many as you want.

For a paste to sucessfully paste, a warp with the "WarpName" needs to not exist. For example, if your WarpName is "MYWARPNAME" there needs to be a warp that doesn't exist named "MYWARPNAME". If there is a warp that exists with that name, the paste and warp will not be created. That is why it is important to keep enabled the "Wipe warp and player data on new map save" configuration option if you want pastes to automatically spawn after a map wipe!
Filename
The filename in the config is the name of the copy paste file you would like to use. You would have needed to create a paste prior to this, the paste needs to exist for the warp to be created etc.
WarpName
The WarpName is the name you want to set for the warp. For example, you could have a filename of "MYFILENAME" but a warp name such as "file" so it's easier to type for your players.
Position
The position is where you want both the paste file and the warp to be created at. You can use a rust command "printpos" in F1 console to find out your current position for this config setting. I think you have to be admin to use it though.
Gateway
You can also automatically create gateways for these warps. Gateways have to be enabled for this feature to work, which you can change near the end of the configuration file. For help about the position you can look at the previous subheading as it works exactly the same. Remember a gateway is an entrance to a warp so I suggest you have different positions for each if you want to use Gateways.
Cooldown
The cooldown field is quite self explanatory, it's the amount of seconds you want this warps cooldown to be. The cooldown is taken into account with the command and also the gateway if you have that setting enabled.
Countdown
The countdown, like the cooldown is quite easy to understand. It is the number of seconds you want until the player is teleported. IE, if your countdown is 15 it will take 15 seconds for the player to be teleported there after entering the command.

Command run down
/warp
  • /warp to <id> - Teleports the player to the created warp point.
  • /warp help - Displays help commands, displays admin commands if the player has required permissions.
  • /warp cancel - Cancels the pending warp countdown, also cancels /back or /warp back countdowns.
  • /warp back - Teleports the player back to their original position.
  • /warp list - Shows a list of available warps, also shows the cooldown beneath.
  • /warp add <name> <id> <cooldown> <countdown> <permission> - Creates a new warp where the player is currently standing. (requires auth2 / betterwarp.admin)
  • /warp wipe <players/warps> - Wipes the data file of whatever the player specifies in their arguments. (requires auth2 / betterwarp.admin)
  • /warp remove <id> - Removes an active warp point with the ID specified. (requires auth2 / betterwarp.admin)
/gateway
  • /gateway locate <id> - Marks on the screen where the warp id's gateway is
  • /gateway add <id> <perm> - Adds a gateway where the player is standing for the warp id specified. (requires auth2 / betterwarp.admin)
  • /gateway remove <id> - Removes a gateway for the warp id specified. (requires auth2 / betterwarp.admin)
/back - Teleports the player back to their original position.
/cancel - Cancels the pending warp countdown, also cancels /back or /warp back countdowns.
/rwarp - Warps a player to a randomly selected warp which they have permission to.
/<name> - A command is registered for every warp id that exists, so if a player types /<name>, it would be the same as /warp to <name>.
/pastewarp <warpname> - Pastes a warp paste that you have in your configuration file. The warp name is case sensitive. (requires betterwarp.admin)
warps.paste <warpname> - This is a console command. Pastes a warp paste that you have in your configuration file. The warp name is case sensitive. (requires betterwarp.admin if in-game)
Default Configuration File
Code:
{
  "List of warps and paste information": [
    {
      "Filename": "TownPasteNameV1",
      "WarpName": "UniqueWarpName!",
      "Position": {
        "PosX": 0.0,
        "PosY": 500.0,
        "PosZ": 0.0
      },
      "Gateway": {
        "Position": {
          "PosX": 0.0,
          "PosY": 5.0,
          "PosZ": 0.0
        }
      },
      "Cooldown": 300,
      "Countdown": 15
    }
  ],
  "Checks": {
    "RaidblockChecks": {
      "UseNoEscape": true,
      "CheckCombatBlock": true,
      "CheckRaidBlock": true
    },
    "PlayerChecks": {
      "CheckBleeding": true,
      "CheckWounded": true,
      "CheckCrafting": true,
      "CheckSwimming": true,
      "CheckDucking": false,
      "ChechBuildingBlocked": true,
      "CheckRunning": false,
      "CheckParented": false, // Checks if they are on a lift/hotair/cargo etc.
      "CheckHostile": false, // Checks if they are hostile in a safezone
      "CheckInHelicopter": false, // Checks if they are flying a minicopter
    }
  },
  "Commands": {
    "GatewayCommand": "gateway",
    "WarpCommand": "warp",
    "BackCommand": "back",
    "CancelCommand": "cancel"
  },
  "BackTimer": 15,
  "Wipe warp and player data on new map save": true,
  "GatewaySettings": {
    "Enabled": false,
    "UseCooldown": false
  }
}

Default Language File
Code:
{
  "BuildingBlocked": "You're not allowed to teleport whilst building blocked",
  "Swimming": "You're not allowed to teleport whilst swimming",
  "Ducking": "You're not allowed to teleport whilst ducking",
  "Running": "You're not allowed to teleport whilst running",
  "Wounded": "You're not allowed to teleport whilst wounded",
  "Raidblocked": "You're not allowed to teleport whilst raidblocked",
  "Combatblocked": "You're not allowed to teleport whilst combatblocked",
  "Cooldown": "You have to wait {0} to teleport again",
  "Permission": "You don't have permission to use this command",
  "Crafting": "You're not allowed to teleport whilst crafting",
  "Bleeding": "You're not allowed to teleport whilst bleeding",
  "InvalidArgs": "Invalid arguments. See <color=orange>/warp help</color>",
  "NoLocFound": "No previous location found",
  "NoTele": "You don't have a teleport pending",
  "WipedPlayers": "You've sucessfully wiped the players data file",
  "WipedWarps": "You've sucessfully wiped the warps data file",
  "InvalidCooldown": "<color=orange>{0}</color> doesn't seem to be a valid cooldown",
  "InvalidCountdown": "<color=orange>{0}</color> doesn't seem to be a valid countdown",
  "BackCmd": "\n<color=orange>Back</color>\n<color=silver>/{0}</color> - Teleports back to original position",
  "CancelCmd": "\n<color=orange>Cancel</color>\n<color=silver>/cancel</color> - Cancels your pending teleport",
  "WarpCmd": "<color=orange>Warp</color>\n<color=silver>/{0} to <name></color> - Teleports you to the warp\n<color=silver>/{0} back</color> - Teleports back to original position\n<color=silver>/{0} cancel</color> - Cancels your teleport",
  "WarpCmdAdmin": "\n<color=silver>/{0} wipe <players/warps></color> - Wipes the players/warps data file\n<color=silver>/{0} add <name> <id> <cooldown> <countdown> <permission></color> - Adds a warp\n<color=silver>/warp remove <name></color> - Removes a warp",
  "GatewayCmd": "<color=orange>Gateway</color>\n<color=silver>/{0} locate <id></color> - Locates a gateway",
  "GatewayCmdAdmin": "\n<color=silver>/{0} add <id> <perm></color> - Adds a gateway\n<color=silver>/{0} remove <id></color> - Removes a gateway ",
  "ListShown": "A list of valid warp points has been displayed",
  "ListItem": "<color=orange>{0}</color>",
  "ListCooldown": "\n{0}",
  "WarpTeleported": "You've teleported to <color=orange>{0}</color>",
  "Countdown": "Teleporting in {0} to <color=orange>{1}</color>",
  "Initiating": "You already have a teleport initiating",
  "Cancelled": "You have sucessfully cancelled your teleport",
  "CancelledMoving": "Your pending teleport was cancelled because you moved out of your gateway.",
  "OriginalPosition": "original position",
  "Added": "You have sucessfully added a warp named <color=orange>{0}</color>",
  "Exists": "A warp named <color=orange>{0}</color> already exists",
  "DoesntExist": "A warp named <color=orange>{0}</color> doesn't seem to exist",
  "Remove": "You've sucessfully removed the warp named <color=orange>{0}</color>",
  "List": "Name: {0} \nID: {1} \nCooldown: {2} \nCountdown: {3} \n Permission{4}",
  "GatewayExists": "You already have a gateway for this warp. {0} (<color=orange>{1}</color>m away)",
  "GatewayNotExists": "There's not a gateway for warp named <color=orange>{0}</color>",
  "GatewayAdded": "You've sucessfully added a gateway for warp named <color=orange>{0}</color>",
  "GatewayRemoved": "You've sucessfully removed the gateway for warp named <color=orange>{0}</color>",
  "DayFormat": "<color=orange>{0}</color> day and <color=orange>{1}</color> hours",
  "DaysFormat": "<color=orange>{0}</color> days and <color=orange>{1}</color> hours",
  "HourFormat": "<color=orange>{0}</color> hour and <color=orange>{1}</color> minutes",
  "HoursFormat": "<color=orange>{0}</color> hours and <color=orange>{1}</color> minutes",
  "MinFormat": "<color=orange>{0}</color> minute and <color=orange>{1}</color> seconds",
  "MinsFormat": "<color=orange>{0}</color> minutes and <color=orange>{1}</color> seconds",
  "SecsFormat": "<color=orange>{0}</color> seconds",
  "Position": "X: <color=orange>{0}</color>, Y: <color=orange>{1}</color>, Z: <color=orange>{2}</color>",
  "GatewayClose": "<size=20>{0} Gateway</size>",
  "GatewayFar": "<color=black><size=20>{0} Gateway</size></color>",
  "GatewayDistance": "{0}m away",
  "GatewayDisabled": "That command isn't enabled on this server",
  "GatewayPermission": "You don't have permission to use that gateway!",
  "Displayed": "The gateway for warp named <color=orange>{0}</color> has been displayed. It's <color=orange>{1}</color>m away"
}
  • 20170811220044_1.jpg
    20170811220044_1.jpg
    478.9 KB · Views: 984

Information

Author
Ryan
First release
Last update
Rating
4.00 star(s) 4 ratings

Latest Release v1.3.01

Released
Mar 5, 2020 at 2:00 AM
Rating
0.00 star(s) 0 ratings


More resources from Ryan

  • BPSync
    BPSync
    Sync your players blueprints across multiple servers!
  • Spot System
    Spot System
    Spot enemies to mark their location to your team mates!

Better Warp by Ryan
© chaoscode.io Aug 12, 2017

Latest reviews

Don;t work. I'm not a coder and have no idea where to put the language file or how to make it work. Why can't these things come ready to go plug and play? Tired of trying to jack with stuff to make it work. Waste of money!
Great plugin works well.
Cannot fault the base functionality of this plugin and the ability to set custom gateways is a pretty feature! The sky is the limit, really!
Ryan
Ryan
Perfect, glad you're in love with these features. I hope you welcome the additions in v1.2!
Perfect for a better teleport to towns/public places
Ryan
Ryan
Glad it fits your needs :)