Commit Graph

207 Commits

Author SHA1 Message Date
Brettflan
c0d1772418 Release 1.8.6 2016-08-16 17:27:39 -05:00
Brettflan
f9d89034b4 Merge branch 'master' of github.com:Brettflan/WorldBorder 2016-07-10 23:03:52 -05:00
Brettflan
e64defbdeb suppress logging of border-checking task being "stopped" when the task is being restarted (which is done to make sure there's only one such task running at any time), to reduce potential confusion 2016-07-10 23:03:29 -05:00
Marcel Maryniak
a762b95cfe fixes #57 2016-02-26 02:47:03 +01:00
Maxim Van de Wynckel
895bec7061 public percentage methods for fill and trim task
Provides public methods to get the percentage for the fill and trim
task. These can be used by 3rd party plugins to get the calculated
percentage or get the values of the processed/total amount of chunks.

Possible usages I have in mind:
- Boss bar showing a progress of the fill task
- Action bar showing the status
- ...
2016-01-15 12:38:17 +01:00
BuildTools
dd4a8348be World Trim/Fill task start events 2016-01-12 20:47:10 +01:00
Brettflan
9abf6ff938 Release 1.8.5 2016-01-02 04:55:03 -06:00
Brettflan
fd134e4527 Fix for minor bug in border knockback code for worlds that have a single layer bedrock base at Y level 1.
The bug was that locations at Y level 1 were never treated as safe locations for border knockback, even though they can be safe on a world which has only a flat 1-block height layer of bedrock at the bottom. For reference, normal worlds have multiple layers of bedrock at the bottom.
2016-01-02 04:54:10 -06:00
Brettflan
98c98b8618 minor style cleanup of last commit to match project style 2015-09-05 04:13:10 -05:00
timafh
e42c5be1dc Adding WorldBorder Events 2015-09-04 20:20:27 +02:00
Brettflan
a349063a74 Release 1.8.4
Also updated Spigot and Dynmap API version references, and one very minor bit of code cleanup.
2015-06-23 12:38:26 -05:00
Brettflan
99bfc689f2 Minor bit of code cleanup 2015-05-19 09:17:24 -05:00
Roy Curtis
1320215c3f Proposed & implemented feature: prevent mob spawns outside of border, including:
- command `/we preventmobspawn`
- permission `worldborder.preventmobspawn`
- MobSpawnListener for cancelling spawns outside border

Changes outside of scope:
- prevent potential NPEs whilst disabling already-disabled preventblockplace and preventmobspawn
- added intelliJ IDE files to gitignore
2015-05-18 12:18:36 +01:00
Brett Flannigan
c8edf9f898 Merge pull request #44 from ShadowRanger/master
Minor code formatting changes
2015-03-08 05:00:27 -05:00
Brettflan
a107ee7e8a Release 1.8.3 - quick fix to remove "worldborder" command alias, which would replace vanilla /worldborder command 2015-03-07 16:20:42 -06:00
ShadowRanger
a548578819 Minor code formatting changes
Updated some classes to ensure code formatting consistency is kept
throughout the entire project.
2015-03-02 11:37:01 +11:00
Brettflan
c254442056 Release 1.8.2 - for Spigot builds for Minecraft 1.8+ 2015-03-01 10:23:34 -06:00
Brettflan
c96672a9ec initial test update for MC 1.8 Spigot... fix for border check routine failing and spewing errors due to change in Bukkit.getServer().getOnlinePlayers() 2015-02-08 09:14:31 -06:00
Brettflan
211a40f893 minor tidying of preventblockplace 2014-11-26 04:14:09 -06:00
gipsy
3028b3c7c6 add prevent-block-place option
Prevents players from placing blocks outside the world border. Default
off.

This is for the PrisonPearl plugin, where if a player is imprisoned in a
chest placed far enough outside the world border it becomes impossible
to break the chest and free the player.

The BlockPlaceEvent listener is only registered if the option is
enabled.
2014-11-25 21:33:51 +01:00
Brettflan
649efc25bb Release 1.8.1 - probably final release for Bukkit 2014-09-27 12:51:08 -05:00
Brettflan
d38bfc3f30 When checking for +/- on radiusZ parameter, it was incorrectly checking the radiusX parameter instead; fixed 2014-06-17 05:53:02 -05:00
Brettflan
2c02a33275 minor cleanup and formatting changes to last commit, and added +/- info to radius command help 2014-06-17 05:48:11 -05:00
Maxim Van de Wynckel
15f47118e8 Added + and - before radius as an optional char
This allows players to perform time based, vote based or donation based commands to increase the map size.
Examples:
1) Player votes, increase the map by 1 block
2) Player joins (more players) increase the map, Player is offline for X days decrease the map
3) Reached donation goal, increase the map
2014-06-15 10:50:27 +02:00
Brettflan
195c593879 Release 1.8.0 2014-05-30 19:15:36 -05:00
Brettflan
2984d9513f Changed bypass list to track UUIDs instead of names, in advance of changeable names in Minecraft 1.8.0+. There might be a slight delay in response now when running the /wb bypasslist command, and when running the /wb bypass command on a player who is not online. This is because the Mojang UUID lookup server must be queried in those cases. This may be handled better in a future update if/when Bukkit provides methods for caching and looking up that information.
The UUID/player name lookup code I've used is by evilmidget38, from: http://forums.bukkit.org/threads/player-name-uuid-fetcher.250926/

NOTE: if you have a bypass list saved, it will be wiped when you first run this update. The wipe will only happen once, as it is a safety precaution.
2014-05-28 11:13:16 -05:00
Brettflan
1698548fb5 completion message for Fill process now indicates which world it was running on 2014-05-13 08:02:23 -05:00
Brettflan
6e65b00712 Release 1.7.9 (Beta)
This is marked as a beta to be on the safe side due to the overhaul of the entire command system. I've tested every command both through the server console and in-game, but it's certainly possible I missed a bug or two somewhere in there.
2014-03-19 09:02:10 -05:00
Brettflan
abdfeda774 Workaround fix for players who have a passenger (pet riding their head or whatever) being able to bypass borders. This is due to a CraftBukkit issue (bug really, but whatever) where all teleportation fails silently if the entity attempted to be teleported has a rider/passenger.
Normally players can't have anything riding them, but various plugins make that possible for pets or similar, as unwise as that may currently be with the CraftBukkit teleportation problems outlined above.

I finally set aside some time to add and test this workaround out using EchoPet to make sure it actually works.
2014-03-12 04:50:59 -05:00
Brettflan
b8735aded0 Made "whoosh" effect default to on, as it's a nice effect that I think most people would like. For some reason I thought I'd already done this long ago.
Also a few more bits of code improvement.
2014-03-10 22:40:52 -05:00
Brettflan
1faccf0a25 New command: /wb help [command] - get help on command usage. This provides further help for any specified command. Accordingly, help info has been added to every command. This info is also provided if there was an error with the command parameters passed to any given command.
Some further changes as well, including some minor code design improvement. As part of that, the root plugin's GetWorldBorder(String worldName) method has been deprecated and replaced with proper first-letter capitalization: getWorldBorder(String worldName).

All commands have now been tested in-game and through console, and a couple of remaining command bugs have been fixed.
2014-03-10 22:27:42 -05:00
Brettflan
cd9ee900ae Major rework of command handling. This is mostly internal code changes rather than something noticeable to the end user, though on command input errors (wrong number or format of arguments, etc.) it will now have it show examples for the command the same as seen in the command list provided by the root wb command.
Replacing the monolithic and crude "if...else if...else if..." command handler in WBCommand.java with every command crammed in there, each command is now handled in a separate subclass in the new "com.wimbli.WorldBorder.cmd" package. This is inspired by the way the Factions plugin handles subclassed commands.

This is the first pass of the command handling rework. I still need to do some further testing, and I plan to further improve feedback for input errors to also show some basic help info along with the command examples.
2014-03-06 15:03:44 -06:00
Brettflan
6e7f79711a fix for "denypearl" command not correctly indicating whether it's enabling or disabling the option 2014-02-27 19:30:16 -06:00
Brettflan
133027dc77 Release version 1.7.8 2014-02-22 08:10:38 -06:00
Brettflan
41912f9e17 a bit of cleanup for denypearl functionality, and made setting enable itself for people updating from older versions of the plugin where it defaulted to false (as it now defaults to true); this is done since the changed functionality should now be desirable for most people 2014-02-22 08:10:13 -06:00
Brettflan
9e7e9d0682 Some minor code refactoring and cleanup courtesy of Zeluboba, taken in desired bits referenced from his larger pull request here:
https://github.com/Brettflan/WorldBorder/pull/32/files
2014-02-17 06:37:18 -06:00
Brettflan
6eecf93a53 re-sort permissions in plugin.yml to be alphabetical, for tidiness 2014-02-17 06:00:13 -06:00
Brettflan
fd161533d0 Changed existing "deny-enderpearl" config setting to only deny ender pearls which are thrown past the border, and switched it to be enabled by default. Added new command /wb denypearl <on/off> to toggle the option on or off, which requires the new permission worldborder.denypearl to use. 2014-02-17 05:51:40 -06:00
Brettflan
cfaf955e9a Add TeleportCause.PLUGIN indicator to the teleport methods used by border knockback, so other plugins can see that the teleport was triggered by a plugin and potentially not interfere if they otherwise would have
Specifically, this should hopefully take care of CombatTag preventing WorldBorder knockback if the player is considered to be in combat
2014-01-26 20:51:37 -06:00
Brettflan
66390223c6 Added config option "fill-memory-tolerance" which defaults to 500. If/when the Fill process pauses due to low memory (<200 MB), this setting is the amount of free memory (in MB) required to be available before it automatically continues.
This option isn't made available to change through a command as most people shouldn't change it. It's been made available for people who are running extremely low memory (and thus necessarily tiny) servers which have less than 768 MB memory available to their CraftBukkit server.
2014-01-20 12:51:44 -06:00
Brettflan
9f7719074f Two new variations of the set command are available thanks to sponsorship from Rhythmatic:
/wb [world] set <radiusX> [radiusZ] spawn - uses the world's spawn point.
/wb set <radiusX> [radiusZ] player <name> - centers a border on the specified player.
2014-01-09 08:42:26 -06:00
Brettflan
f21ef695ba Update version number in plugin.yml to 1.7.7 (oops) 2013-12-21 07:19:37 -06:00
Brettflan
2e48a5f903 Additional check added to make sure frequency value specified in Fill and Trim commands is greater than zero. Thanks to sync667 for pointing this oversight out. 2013-12-20 06:03:04 -06:00
Brettflan
8a75d0e630 New command /wb fillautosave <seconds>, which lets you set the interval for automatic saving of the world during the Fill process (default 30 seconds). Set to 0 to disable, though this is not generally recommended as any errors or crashes during world generation can then result in a lot of lost progress. Requires new permission "worldborder.fillautosave". 2013-12-18 01:12:44 -06:00
Brettflan
0cda19b6a9 list of players with border bypass enabled is now saved and will persist through server restarts 2013-12-14 15:17:47 -06:00
Brettflan
567385ff1c New command /wb bypasslist, which outputs a list of all players who have border bypass enabled. Requires new permission "worldborder.bypasslist". 2013-12-14 15:02:05 -06:00
Brettflan
541facb5db nitpick, note 2013-11-16 04:05:02 -06:00
Nick D
2c2340f056 Option to deny enderpearl completely,
Prevents 'glitching' into places.
2013-11-16 14:52:06 +10:30
Brettflan
9f45cef34f Added support for Essentials-style formatting and color codes in the border crossing message, which are based on standard Minecraft text formatting codes (ex. §c for red) but with the more accessible "&" ampersand in place of the "§" (ex. "&c" for red). The default red coloration is now included in the border message itself as "&c" at the start of it. Existing configurations will have their border messages automatically updated to add it.
Reference, standard Minecraft codes (note again that you can replace "§" with "&" for ease of use):
http://minecraft.gamepedia.com/Formatting_codes
2013-11-03 11:34:09 -06:00
Brettflan
75ea990bb8 Release 1.7.6 2013-10-19 22:44:03 -05:00
Brettflan
a5a2fca2fa Added option to Fill command which will force it to load all chunks instead of automatically skipping chunks which are already fully generated.
This option was mainly added for people wanting to follow Mojang's recommendation to load all important world chunks in 1.6.3 - 1.6.4 before updating to the eventual 1.7 release to prevent errors with structures such as witch huts and nether fortresses:
https://mojang.com/2013/09/minecraft-snapshot-13w37a/
2013-10-19 22:43:07 -05:00
Brettflan
97aca7a5bb Change "Teleport cause" debug log message to remove WARNING status, as that was unnecessarily worrying some people who had debug output enabled 2013-09-03 11:12:28 -05:00
Rourke750
f7989ad638 Added option to kill player instead of teleporting to spawn. 2013-09-02 20:07:43 -07:00
Brettflan
6c2d705769 additional bits for release 1.7.5 2013-07-12 02:25:36 -05:00
Brettflan
68bb624e20 Release 1.7.5 2013-07-12 02:21:19 -05:00
Brettflan
47c6b1ed3c Added check to Trim process to make sure it doesn't drag on for too long per tick; shouldn't normally be possible on Trim process as opposed to Fill process, but I've had a couple of reports indicating it might rarely be an issue 2013-07-12 02:17:47 -05:00
Brettflan
893701637a fix for longstanding issue of chunks which didn't exist in a region file still being unnecessarily wiped by the Trim process, also adding to the reported number of individual trimmed chunks. Now chunks which were already nonexistent aren't "trimmed" for no reason and the reported number of individual trimmed chunks is exactly correct. 2013-07-12 01:56:27 -05:00
Brettflan
0a827e69e8 Release 1.7.4 2013-07-07 02:52:07 -05:00
Brettflan
1eb7e0da10 New command /wb remount <amount>, which determines the delay in server ticks before remounting a player to their vehicle after they're knocked back from the border. Requires new permission "worldborder.remount". The default value of 0 disables this feature, leaving the player dismounted beside their vehicle after knockback. This value should not be set to a value lower than 10 (the former default value) on a public server as that would lead to client glitches. Even the former default value of 10 has been reported to rarely glitch on some servers, thus remounting now defaulting to disabled.
Working around Minecraft and Bukkit client/server glitches when teleporting an entity which has a passenger or is a passenger is the whole reason for this "feature". The need was introduced a few Minecraft versions back when this well and truly broke; hopefully they will fix the underlying problems eventually.
2013-07-07 02:51:24 -05:00
Brettflan
5c23d072f1 Release version 1.7.3 2013-07-05 15:41:57 -05:00
Brettflan
fa23da50f3 Fix for problem in recent dev builds of CraftBukkit for Minecraft 1.6.1, which would lead to spammed errors in the log file and potentially a server crash sometimes when a person crossed the border. This problem occurred most when riding horses and boats. 2013-07-05 15:33:57 -05:00
Brettflan
5d745ca788 Updated target Bukkit lib version to 1.6.1-R0.1-SNAPSHOT
Added carpet to safe open block list
Added showWhooshEffect(Location loc) helper method to Config class to show the whoosh effect, if it is enabled
2013-07-05 15:28:13 -05:00
Brettflan
fa5fb33da8 Release 1.7.2b
Also updated some Maven pom config
2013-05-22 11:35:20 -05:00
Brettflan
b42945d643 Further Dynmap error catching 2013-05-17 18:05:56 -05:00
Ian Macalinao
e6b3ec360f Mavenized entire project
Signed-off-by: Ian Macalinao <ianmacalinao@gmail.com>
2013-05-16 23:27:12 -05:00
Brettflan
65f9b9354e Missed in earlier commit: same goes for Trim command 2013-04-21 20:12:05 -05:00
Brettflan
2407a7ef84 Bugfix release 1.7.2 2013-04-21 20:09:02 -05:00
Brettflan
0eec9a007a Fix for Fill command potentially running on wrong world if specified by player with "fill confirm" command not specifying world 2013-04-21 20:08:36 -05:00
Brettflan
b074a34ee3 Release 1.7.1; for real this time, without a nasty bug, and with wrapping value properly retained after running other commands such as radius or wshape 2013-04-14 06:39:48 -05:00
Brettflan
60c124643f Release 1.7.1 2013-04-14 05:19:43 -05:00
Brettflan
7757a506d0 New command /wb portal <on/off>, which will allow you to disable WorldBorder's portal redirection method that is used to force portal targets to be inside your border. Requires new permission "worldborder.portal". This command has been added due to reported incompatibility with the Multiverse plugin somehow preventing that plugin from creating new portals. I see no way it should somehow be incompatible, particularly on WorldBorder's end which simply changes the target location of player Portal travel events, but there you go. 2013-04-14 05:18:07 -05:00
Brettflan
c83b49090b New command /wb wrap [world] <on/off> to toggle wrapping for a specific world; requires new permission "worldborder.wrap". Wrapping changed from a global setting to per-world only. 2013-04-14 04:51:57 -05:00
Brett Flannigan
993d52a79c Merge pull request #16 from Indiv0/master
Implemented world wrapping capability
2013-04-14 01:13:49 -07:00
Brettflan
e95e1b2f42 Too many people seem to have been confused and/or scared by the "skipped" report from the Fill task, thinking it indicated a bug or something, so I've removed it.
It was originally there mainly as debug info for my own use anyway, way back when the Fill feature was new and not thoroughly tested.
2013-04-10 18:44:06 -05:00
Nikita Pekin
d6bea2b616 Implemented world wrapping capability 2013-04-03 16:19:51 -04:00
Brettflan
8006e1f0fd Release 1.7.0 2013-04-02 00:51:56 -05:00
Brettflan
ef001b15bf Update to allow players to stay in/on vehicle when knocked back from border. From further testing I found that the key was to add a delay after ejecting the player and teleporting the vehicle to give the client time to process the vehicle being teleported. After such a delay it is then safe to set them as passenger of it again. With the delay the client mostly treats the player as if they're not in the vehicle but instead walking around freely.
A delay of at least 2 ticks worked on my local VM test server, but for potentially loaded live servers on the internet with players who potentially have slow/poor connections... a longer delay is probably needed to prevent client glitches. I've set the delay to 10 ticks (half a second) which still looks reasonable enough in-game, I think.

Further, I found that out of the native vehicles boats in particular quite simply cannot be teleported without the client ending up confused about where it actually is for whatever reason. I came up with a workaround for this by destroying the boat and spawning a new one in the correct position.

Bah, gotta love workarounds within workarounds.

As a reminder, this all primarily came about due to the ability to teleport entities which have a passenger being removed by the Bukkit team to apparently combat a nasty related bug.
2013-03-31 08:10:23 -05:00
Brettflan
686072b87c riding something across the border would double-trigger the border crossing handler since leaving a vehicle fires a teleport event (go figure); fixed
Players going through a portal will now no longer be able to generate chunks outside the border; the portal teleport location is re-targeted inside the border to prevent that so that new portals aren't created outside the border

added redstone comparator and activator rail to "safe open blocks" list for knockback safe location finder
2013-03-30 02:56:12 -05:00
Brettflan
1c950228d7 Players who are riding something are now (unfortunately) ejected when knocked back from the border. This was necessary due to the Bukkit team removing the ability to teleport entities which have a passenger or are the passenger of another entity.
Note that I tried to work around it by ejecting the player, teleporting the entity they were riding (minecart, pig, whatever), and then setting the player as passenger again, but it was bugged and only halfway treating the player as if they were riding something.
2013-03-29 21:48:12 -05:00
Brettflan
f6388102f9 Changed method for finding region folder (used by Fill and Trim) to hopefully support custom world types such as Twilight Forest and Mystcraft... untested, but hopefully working 2013-03-29 19:18:58 -05:00
Brettflan
6b4a0be0b2 Players who are flying (from creative mode or otherwise) can now be moved back into air when they cross the border and are knocked back; no more requirement for a safe place to stand for them
also a minor change to the Fill command to make it potentially less taxing when run at high rates
2013-03-29 17:57:52 -05:00
Brettflan
d2f0f407c2 New "setcorners" command to set border based on corner coordinates: /wb [world] setcorners <x1> <z1> <x2> <z2>
This is useful now that border shapes can be rectangular/elliptical with different X and Z radius values.

Also various cleanup of new rectangular/elliptical support. Commands can now accept a single radius value (as it used to) or separate X and Z. Radius is displayed as single number if X and Z are equal. "shape" and "wshape" commands accept round|square as before for backwards compatibility and simplicity, alongside the new elliptical|rectangular (which work the same). Updated config loader to support loading older configs with single radius value specified. Added various other methods for backwards compatibility.
2013-03-29 17:32:21 -05:00
Lang Lukas
dcb815878f Added support for rectangular and elliptic borders 2013-02-14 10:35:35 +01:00
Brettflan
c501e5ebda Release 1.6.1 2012-11-21 14:43:17 -06:00
Brettflan
024c68a14f Whenever a chunk is loaded on the server, a check will now be run to make sure the border-monitoring task is still running like it should be. It will be restarted if necessary. 2012-11-11 05:07:27 -06:00
Brettflan
d7a2bebf99 Release version 1.6.0
Also added bypass to worldborder.* permission set since it now only enables the command rather than permanently forcing bypass mode.
2012-11-05 16:36:43 -06:00
Brettflan
b41267af1a Reworked border bypass to be toggleable by command, instead of always on if player had the permission like it was.
New command /wb bypass [player] [on/off], which allows the player to go beyond the border without being knocked back. Requires "worldborder.bypass" permission (Ops only by default). Nobody has bypass mode enabled by default (has to be toggled on), and the list of people with bypass enabled is wiped on server restarts. Player name ("[player]") is optional if run in-game and defaults to the player running the command, but must be specified if run from console. If on or off ("[on/off]") is not specified, it will simply be toggled.
2012-11-05 11:35:37 -06:00
Brettflan
caa3db3734 Real Release 1.5.5 2012-11-04 17:01:51 -06:00
Brettflan
1b696ef724 0 knockback was glitchy; fixed
Also attempt to fix problem when riding mobs via MobRider where mob and player end up underground after knockback; seems unsuccessful. Seeing as pigs in vanilla CraftBukkit without MobRider don't have this problem, but _do_ have the problem along with all other mobs when MobRider is loaded, I'm not bothering with this one further for now.
2012-11-04 16:46:46 -06:00
Brettflan
28e5ea7019 Polish up border bypass handling a bit 2012-11-04 15:48:16 -06:00
Brettflan
243e23f9a2 Release version 1.5.5 2012-11-04 15:22:30 -06:00
Brettflan
7b8d78ec12 Fix for command to enable/disable Dynmap border display not reporting correctly whether it's now enabled or disabled when run
Also added variables for Dynmap border color/thickness/opacity, just for internal clarity... will also simplify things if I or someone else ever gets around to adding settings for those values, to allow them to be changed
2012-11-04 15:14:12 -06:00
Brettflan
470b19160d Allow knockback to be set to 0, for the rare person that might for whatever reason want to disable border knockback 2012-11-04 15:07:41 -06:00
Brettflan
9fd230a218 Added a couple of new safe blocks to the list 2012-11-04 15:02:38 -06:00
Brettflan
28e76340ea Added artificial height limit for Nether worlds, to work around CraftBukkit bug which reports a max height of 255 for them, leading to players being teleported on top of the "roof" of the Nether at height 127 2012-10-25 01:04:23 -05:00
Brettflan
0ba6b59837 Added new "worldborder.bypass" permission which will allow a person to move around outside the border without being knocked back. This permission is not granted to anyone by default, even Ops, and is not included in the "worldborder.*" permission set.
Thanks to st-remy and guyag for pull requests close to what I ended up implementing here.
2012-10-19 00:55:08 -05:00
Brettflan
6197a6e320 Release 1.5.4 2012-03-29 08:39:09 -05:00
Brettflan
c4127c35ad If attempting to get MarkerAPI from DynMap results in an NPE (like version 0.35 if DynMap's Spout integration fails), it will no longer prevent WorldBorder from continuing to load. 2012-03-29 07:52:11 -05:00
Brettflan
247e9052c2 Added integration with DynMap to display borders. It's enabled by default if you have DynMap installed, but note that you'll need DynMap v0.36 or newer for it to work. Borders will be displayed correctly as round or square and should be very accurate, based on a Y height of 64 on isometric maps. Any changes you make to your borders should almost immediately be reflected in DynMap (border radius or shape change, removal, new border set, etc.).
Thanks to mikeprimm for adding a couple of requested features to DynMap which made this feature possible.

New commands:
/wb dynmap <on/off> - turn DynMap border display on or off.
/wb dynmapmsg <text> - DynMap border labels will show this.

New permissions:
worldborder.dynmap (Op): Can enable/disable DynMap border display integration
worldborder.dynmapmsg (Op): Can set the label text for borders shown in DynMap

Also, a slight improvement to how boolean values are determined from command input; it accepts "y", "yes", "true" instead of just "on".
2012-03-16 00:26:13 -05:00
Brettflan
59cba09a35 Fix for error on border crossing if player is riding on something which is not classifiable as a Vehicle (as only provided by another plugin, presumably, like one that makes wolves ride-able) 2012-03-10 18:58:47 -06:00