PlayersInCubes
PlayersInCubes helps you control when players can see each other based on their distance. Players that are far from each other will be hidden from each other, and shown again when coming close enough. Player "radar" and tracking cheats become less threatening.
Fridays plugin !
Maintenance Phase
Due to timing constraints i will likely not add much to this one, but keeping it updated as long as possible.
Reference: Commands and Permissions | Configuration
Features
- Players are being hidden from each other if their distance exceeds certain limits. If they come close enough they will be shown. Works horizontally and vertically.
- Configure the accuracy and seeing distance (to a certain extent).
- All at runtime: reload configuration, disable, enable, re-check all (cleanup).
- Exclude certain worlds to have players see each other at any distance there.
Method
- Players get associated with cube shaped partitions of the world, if two players share association with one or more of those "cubes", they can see each other.
- Symmetry: Players can either both see each other or both not see each other.
- To prevent effects of players not seeing each other, when they stand on the border of different neighboring cubes players can get associated with multiple cubes, depending on the distance the player has to the center of nearby cubes.
- To increase performance the players locations are stored and only if the player moved farther than a certain (small) distance, then a new check will be done for which cubes to associate the player with.
Pitfalls
- This will very likely be incompatible with any sort of plugins that do vanishing or disguises.
Hopefully i can find a way to make it somewhat compatible with some plugins like SimplyVanish. - Currently all players are treated alike, so there is no switch to see all at any distance for admins yet. I am planning to add such, i might as well bring in invisibility.
- The plugin uses the vanish API given by Bukkit, so it might be that players that you can't see will not appear in your player list, the tell command might also not work to addressing those.
- Players activities like breaking or placing blocks still might be noticed by others, even if out of seeing range. So don't get tracked down while chopping wood.
Repository: https://github.com/asofold/PlayersInCubes
@Wizel603
That should be possible, however it could also result in sound-spam fro crowded places - might work with some cooldown time though.
Could I request a feature that would hopefully be mostly trivial to add? A config option to play a minecraft sound to a player when someone enters their cube, and a different sound when someone leaves their cube. This would allow the players to know to check their tab list to see if a friend or foe has moved into range.
@Shaded26
Alright, thanks for clarifying! Could have guessed if i had followed the message-reference...
@asofold
I'm sorry for the misunderstanding but I was referring to spigot, which does not support hiding players in a vertical direction so killers with X-ray can easily spot people digging below them. What I'm saying is that Spigot's way of hiding players is kinda useless when it works only horizontal.
@Shaded26
Not entirely sure what you are pointing at - pic does account for the vertical distance same way as horizontal distance (cubes...)!
It may appear that the vertical distance covers more than the horizontal, but the rough distance for hiding/showing players should be the same.
@asofold
It doesn't count the vertical distance which is a shame.. :(
@Wizel603
Can be done e.g. /pictell - you would have to add an alias via bukkit.yml then.
It probably should "respect" ignored worlds, such that players can actually hide there.
Could a minimal '/tell' replacement be added to PIC that ignores cansee, similar to the /tell replacement in CM?
@MyPictures
Yes, Spigot users should not use this plugin but the spigot.yml settings.
(Provided i am right: the distances in spigot.yml also count for the vertical distance, which is important for mining more safely.)
@asofold
I completely missed that:
It hides more then just players.
@MyPictures
Does spigot allow to only hide players on a certain distance (just players not mobs, chunks)?
@anusman
VanishNoPacket once had its own player hiding feature. If your server is not too big, it should be usable (it used a less efficient algorithm).
@anusman
You can use Spigot instead of PlayersInCubes. It shouldn't break any plugins and will have the exact same effect.
I really wish this plugin had support with VanishNoPacket. I'd use it in a heartbeat.
PlayersInCubes 2.2.6
To get uploads early you can register with the subscriptions link for this project, or guess the file name with sequence number and version.
Do check for re-uploads repeatedly until approval.
Early 1.5 support (only necessary for the packet sending for online players / tab completion), not strictly needed, waiting for approval:
Mod remove link to unapproved file.
All 1.4 (including 1.4.7, shortly tested):
http://dev.bukkit.org/server-mods/playersincubes/files/10-players-in-cubes-2-2-2/
(approval pending).
@noxturno
That is the problem with the chat plugins respecting who can see whom, which is good for not getting spotted by tell, if you really intend not to be there. In my own plugin ContextManager there is a config-flag to be able to ignore who can see whom for the tell command. You might try to find out if HeroChat has such too, or make a feature request there, to add a config setting to allow players to chat to other players they can't see.
found an other small issue, cant /tell people even if they are on, only when in close range you can do /tell , I am using herochat for my chat plugin. also people cant press tab to autofill the names of people anymore unless in close rage with them.
@noxturno
Problem is, you might not notice that PlayersInCubes showed you to another player that came in-range. It is not like the plugins break with error-logs, it would just interfere with who can see whom...