Sneaky
Use the latest version of ProtocolLib if Sneaky doesn't function in other worlds (such as the nether or the end).
Sneaky is a small but versatile plugin that simply allows players to only appear to be sneaking at all times, without having to hold down the sneaking key.
Many plugins offer a similar ability, but they may cause glitchy movement or trigger anti-cheating measures as they modify the player state on the server-side. To avoid these problems, Sneaky applies this effect on outgoing packets destined for each player, ensuring that any modification is purely a client-side illusion. This approach also permit us to selectively disable the sneaking effect, allowing (for instance) your operators or superusers to see through it completely.
Links
Up-to-date developer builds of this project can be acquired at my Jenkins server. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
Dependencies
This plugin requires ProtocolLib to function! Some features also require Vault.
Features
- Toggle persistent sneaking on and off by calling /sneak
- Operators can toggle the sneaking of other players by calling /sneak [player]
- Operators are (by default) not affected by the sneak effect.
- Set the maximum duration a player can be sneaking in a single go, and a cooldown time until the sneak command is available after a use.
- Customize the duration and cooldown on a per player or per group basis. Requires Vault.
Commands
There is presently only one command - /sneak
If no parameters are specified, the sneaking of the sender will be toggled provided the permission sneaky.sneak.self is set.
Operators, or players with the permission sneaky.sneak.other, can specify a player in the second parameter other than themselves. The last parameter sets the desired state - either on or off. If not included, the state will be toggled.
Permissions
Permission | Description | Default |
---|---|---|
sneaky.sneak.self | Toggle automatic sneaking for your own player | true |
sneaky.sneak.other | Toggle automatic sneaking of other players | op |
sneaky.hide.autosneak | Whether or not to hide all automatic sneaking for this player | false |
sneaky.exempt | If set, the player is not bound by any cooldown or duration limit | op |
It is also possible to customize the duration or cooldown for a specific player by setting the permission info nodes (see the documentation of your permission plugin of choice) sneaky_duration and sneaky_cooldown respectively. This feature requires Vault to be installed.
For PermissionsEx, this can be done like so:
users: Player: group: - Members options: sneaky_duration: 15 sneaky_cooldown: 5
Configuration
The standard configuration file allows you to customize each notification message, with custom colors using the character '&' instead of 'ยง'. You can also set the maximum duration of a persistent sneak effect along with the cooldown until it can be used next (in seconds):
messages: # Sent when sneaking has been enabled. %s is replaced by the player name. enabled_sneaking: Enabled automatic sneaking for %s disabled_sneaking: Disabled automatic sneaking for %s # Sent when the cooldown has expired and sneaking can be activated again cooldown_expired: Automatic sneaking can now be activated. # Error message sent when a player tries to use sneaking before the cooldown has expired cooldown: Sneaking is disabled for another %s seconds # All in seconds limits: # Amount of seconds until sneaking can be used again cooldown: 0 # The maximum number of seconds sneaking can be on in one go duration: 0
Thanks for this, knew some one would pretty much recreate good ol /sneak :D
@CommodoreAlpha
Thanks. :)
However, there's no need for a separate plugin - I can just as easily add those aliases directly to Sneak. Get the new version here.
I can easily imagine using an alias-creating plugin like BetterAlias to create a "/crouch" command that will combine both the look of sneaking of this plugin and the effect of sneaking (without slowing down) from AutoSneak. Unfortunately, both plugins use the same command, /sneak.
Anyhow, this is a very nice plugin, since it lets anyone look like an assassin. :)
@CommodoreAlpha
It's the former. The effect is purely an "illusion".
But I guess I can update the description with a clarification. :)
@ic_trab
No problem. :)
@aadnk
It is ok I am not adverse to running dev builds if needed.
The dev build of protocollib is working nicely thanks!
Sneaky is now working just fine :)
Does this plugin only create the appearance of sneaking, or can it actually give the appearance and the effect? I felt the first sentence I read was a little ambiguous.
That beginning sentence:
"...that simply allows players to appear to be sneaking at..."
Could either be one of the following.
"...that simply allows players to only appear to be sneaking at..."
"...that simply allows players to sneak at..."
@ic_trab
This is actually caused by a pretty serious bug in ProtocolLib - essentially, any plugin retrieving entities from entity IDs will only work for the first loaded world, as you've discovered.
You can get a developer build with this fix here, but I'm afraid I'll have to wait before I'll push this out to BukkiDev. I mostly keep to a weekly release schedule with regards to ProtocolLib, unless there is a critical game crashing bug (most likely due to a new version of CraftBukkit). But it should be out on BukkitDev next Wednesday.
After testing it is working.
However it is not working in all worlds.
Our server has 7 worlds loaded (6 are active) and it only works in the primary world "world"
Other worlds that it was tested in that failed to work with: world_nether world_the_end hardcore hardcore_nether
and it worked in none of those worlds as soon as I go back to world it is working. PEx has the permissions enabled globally and Sneaky still has the correct enable/disable messages as the commend is being used, it just has no effect.
CraftBukkit: git-Bukkit-1.4.7-R0.1-b2602jnks
ProtocolLib: 2.1.0 Sneaky: 1.0.0
Plugin List: WorldEdit, Register, HawkEye, Lockette, ProtocolLib, BanHammer, Modifyworld, Multiverse-Core, PermissionsEx, WorldGuard, dynmap, Essentials, WorldBorder, ChatManager, EssentialsSpawn, Multiverse-Portals, Multiverse-Inventories, Multiverse-NetherPortals, Sneaky
@HCprofessionals
Ah, sorry. The configuration system is one of those things that is best avoided in Bukkit ... it's terribly easy to get it wrong.
In any case, I've fixed it and pushed a new developer build. In the meantime, just copy over the default configuration on this page, if you need it.
hmmm, doesn't seem that a default configuration file was created.
@EpicPie011
It shouldn't, since it doesn't modify anything on the server itself.
I also test my plugins against NoCheatPlus regularly, and I haven't found any issues.
This plugin seems interesting. Would it conflict with any plugins like NoCheatPlus?
@HCprofessionals
I was just waiting for the first release to be approved. You can download it now. :)
So when are you going to provide a download?
@S1lverK3y
Thanks. :)
I noticed a distinct lack of updates and maintenance on the other sneaking plugins, so I figured I might be able to fill the gap. And yes, using packets will make it a lot more powerful.
Awwesome! Looking forward to this great autossneak packet power plugin!