[MECH/MISC] ComPassionate v2.6 - Expand your compass' features and navigation! [BukkitDev]

Discussion in 'Archived: Plugin Releases' started by DrBoweNur, Aug 22, 2011.

  1. Offline


    ComPassionate - The ultimate tool-set for your players' compasses!
    Version: v2.6
    BukkitDev: ComPassionate v2.6

    ComPassionate v2.6

    Quick video showcasing ComPassionate:
    (This video is fairly outdated, be sure to read the updated features)

    Ever wondered why Notch took the time to add the compass, and then destroyed its use by the creation of beds? If so, then you've been wondering the same thing as me.

    ComPassionate was my very first Bukkit plugin. Because of this, there were lots of issues with it. In order to see how far I've actually come from day one, I decided to completely revamp this plugin to suit my satisfaction. This plugin is the ultimate tool-set for compasses, allowing the tracking (and saving) of several waypoints in addition to the tracking of mobs and players. Not good enough? Tell me what else this should do, and I'll look into it ASAP!

    • Currently 4 Unique Compass Modes to make your compass experience more enjoyable and practical!
    • Completely internal control (no commands if you so desire, simply left/right click!)
    • Mob Tracker (Compass Mode) Read further down to find out more!
    • Player Tracker (Compass Mode) Read further down to find out more!
    • Waypoint Tracker (Compass Mode) Read further down to find out more!
    • (NEW) Grave Tracker (Compass Mode) Read further down to find out more!
    • BukkitPerms support (NEW) and option to disable permissions all together
    • (NEW) Ability to choose whether or not players who die with a compass will spawn with a compass (Makes Grave Tracker useful)
    • More Configuration
    • Complete set of user-friendly commands

    There are 3 'base' aliases for the ComPassionate commands: /compassionate, /compass, and /cp
    • /cp help - Tells you everything you need to know.
    • /cp locate <waypointName> - Targets the named waypoint
    • /cp waypoint list - Lists all of your waypoints
    • /cp newwaypoint <name> - Creates a new waypoint with <name> at current location
    • /cp info <waypointName> - Tells you the coordinates and info of a certain waypoint
    • /cp setinfo <waypointName> <info...> - Allows you to set a generic description for a waypoint
    • /cp remove <waypointName> - Removes a waypoint from your current list
    • /cp mode help - lists a separate help section for compass modes
    • /cp locateplayer <playerName> - Locates the selected player
    • /cp share <waypointName> <playerName> - Sends a waypoint to another player
    • /cp toggle - Toggles the entire ComPassionate feature set, on/off
    Permissions : (open)

    - 'compassionate.waypoint' - Allows the use of the Waypoint Compass mode (and commands)
    - 'compassionate.mob' - Allows use of the Mob-Tracker Compass mode
    - 'compassionate.player' - Allows use of the Player-Tracker Compass mode
    - 'compassionate.locateplayer' - Allows use of /cp locate <playerName>
    - (NEW) 'compassionate.grave' - Allows use of Grave Tracker Compass mode
    - (NEW) 'compassionate.untrackable' - Players with this node will be hidden from the PlayerTracker


    **To cycle through each compass mode, right-click with a compass in your hand!

    Compass Mode: Waypoint Tracker
    Show Spoiler

    The Waypoint Tracker is what I consider the premier feature of ComPassionate 2.0. It allows players to create lists of waypoints that can be seamlessly targetted by their compass, in addition to allowing descriptions of each waypoint to be made (so they aren't confused by similar entries)
    • Left-Click: Cycles through the player's current list of waypoints
    • Shift-Left-Click: Sets a waypoint to the player's current location, and prompts them for a name and description
    • Shift-Right-Click: Tells you which waypoint you're tracking

    Compass Mode: Mob Tracker
    Show Spoiler

    The Mob Tracker mode will essentially scan an area around you (configurable) for mobs, select a mob at random, tell you what type of mob it is, and set your compass to follow that mob. Every 5 seconds, the compass will update to the mob's new location. If the mob dies, or you go too far away, it will drop the target. Players have the option to remove certain mobs from the cycle.
    • Left-Click: Tracks a random mob in a configurable vicinity
    • Shift-Left-Click: Will 'ignore' the mob for future trackings. This is useful for only searching for a specific type of mob in an area.
    • Shift-Right-Click: Tells you which mob you're tracking

    Compass Mode: Player Tracker
    Show Spoiler

    The Player Tracker mode is extremly similar to the Mob Tracker mode, except it will scan players instead of mobs. For this reason, I'm not really going to give much use info for it. All the steps for the mob scanner, are the same for this. (Just pretend each 'mob' is replaced with 'player')

    (NEW) Compass Mode: Grave Tracker
    Show Spoiler

    The Grave Tracker mode allows players to keep track of the last place they died. This can be useful for going to retrieve items after a nasty fall, creeper encounter, or dance with cave spiders. It also persists through reloads, so if the server shuts off unexpectedly, you can find your items when it's back up.
    • Left-Click: Locate your last known death location
    • Shift-Left-Click: (none)
    • Shift-Right-Click: (none)

    Known Issues:
    - None thus far.

    Please give me:
    • Your Bukkit Build #
    • The stack-trace (if there is one) [error log]
    • The version of this plugin that you're using.
    • Any additional information that you can muster up.
    Show Spoiler

    • BukkitPerms support
    • Global Waypoints (so admins can create a list of 'places to see', or do treasure hunts)
    • Make it so that commands can fully handle compass modes, if people so desire.


    Have something you want added that's compass related? Let me know, and I'll be glad to give it a shot! Just post your request here in this thread, on BukkitDev, or PM me!

    The Project Page at BukkitDev:

    Version 2.6
    • Updated plugin to run on the current Bukkit build
    • Fixed the issue where config files wouldn't initialize themselves for new users
    • Cleaned up and modified the formatting of some commands
    • /cp info <waypointName> now shows the coordinates of the waypoint along with the description
    Version 2.5.3
    • Fixed an NPE when the player respawns. This is not a critical update, as the NPE did nothing more than clog the server-log. Still encouraged, however.
    Older Changelogs:
    Show Spoiler

    Version 2.5.2
    • Fixed an NPE with the new 'compassionate.untrackable' feature
    • /cp locate now sets your Compass Mode to Node Tracker
    Version 2.5.1
    • Minor bug fixes, nothing to document really
    Version 2.5
    • Updated to be compatible with R5 and up
    • Added 'compassionate.untrackable' to hide players from PlayerTracker
    • Added /cp toggle, allows to turn off all features of ComPassionate (and then turn them on again)
    Version 2.4
    • Added an option for spawning with a compass (provided the given player died with a compass). This makes Grave Tracker much more useful. Also made sure to prevent any duplication (if they die with a compass they don't drop it when they spawn with one)
    Version 2.3.1
    • Added new config option 'Enable-Permissions'. Setting this to 'false' will allow everyone to use every mode (This is for servers with no permission plugins)
    Version 2.3
    • Added new Compass Mode: Grave Tracker
    • New permission node 'compassionate.grave'
    Version 2.2
    • Added /cp share <waypointName> <playerName>
    • Added notification message after setting the info for a waypoint
    • Fixed a few NPE's that may/may not have been noticed
    Version 2.1
    • Added /cp locateplayer <playerName> (Permission: compassionate.locateplayer)
    • Added /cp remove <waypointName> (For removing waypoints from list)
    • Changed waypoint creation so that it won't allow duplicate entries
    • A bit of command tidying up
    • Perms3 dropped in favor of BukkitPerms
    Version 2.0.1
    • Fixed a few NPE errors that I completely forgot to check for.
    • Removed a debug message that I left in on mistake.
    Version 2.0 (8/23)

    • Completely re-designed the plugin from top to bottom. Re-released due to major differences.
    • Massive code refractoring (Almost nothing from the original plugin exists)
    • Mob/Player Tracker now auto-update the target's position
    • Completely new command interface
    • Waypoints that can be saved, named, described, and cycled through
    • You can now 'forget' mobs in Mob Tracker, so you dont pick up the same one over and over again
    • Seriously. The new waypoints actually work this time :)
    Version 0.2.4 (6/24)
    • Bounty Hunter no longer tracks NPCs (if using Citizens plugin)
    • Node Tracker now has the feature to Shift-Left Click in order to update to your most recent node (a feature it SHOULDhave had before, but wasn't properly implemented in the coding!)
      • To elaborate further, the only way to 'update' your compass target before, was to switch all the way around until you hit Node Tracker again, which updates to the node by default. Now, you can simply shift-left click in order to do this!
    • Any and all NPE's have been fixed. Go ahead. Try to get some spammed. I dare ya'. (But seriously, I *think* I got rid of them all with a little code re-working, let me know if it works or not ;) )
    • Players are now loaded into the Compass Database via logging in, as opposed to their first 'right-click' (this is what was causing NPEs before)
    Version 0.2.3

    • Bug fix to multiple unforseen issues with Mob Scanner and Bounty Hunter
    • Added new Compass Mode (Bounty Hunter)
    • Additional code clean-up (not much)
    • Basis for permission's support (not implemented, but should be in 0.2.5)
    Version 0.2

    • Improved Compass Mode toggling
    • Added new Compass Mode (MobScanner)
    • Added new command /mobscanner (I'm aware that it should be branched off of /compassionate, fixing later ;)
    • Improved overall message display, to make things clearer and neater
    Version 0.1.1

    • Added command /compassionate
    • Added ability to cycle through spawn and the player's waypoint/node
    Version 0.1

    • Releasing ComPassionate to the public

    Also, I'd like it known up front that I have done no testing with a live server, so I haven't tested with multiple players. I'm fairly sure that this plugin should work with several players, but there is a slight chance that I may have overlooked an area or two. Let me know how it goes.

    EDIT: Uploading video now

    EDIT2: Done.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 18, 2016
    EdenCampo likes this.
  2. Offline


    Glad you found a solution, though I can tell you now that you're probably an OP (Thus granted access to everything by default). So yes, the '-' features is what you'd be looking for :)
  3. Offline


    I'm not op. I do have the permission '*' though on my default group. Im putting everything in my default group and made myself default to for testing purposes and I run everything I need for admin under the console. Bah, if the OP thing isn't the problem then I have no idea =/.
  4. Offline


    Oh, well the '*' node will essentially give everyone every possible permission. So that would definitely explain your issues earlier. But if you're using the '-' feature to remove permissions, then I'm assuming everything is working okay now?
  5. Offline


    Yea things are working. I only just now thought about the meaning of the * node as I was just saying it haha. But yeah, thanks for helping me. I JUST started using permissions and plugins on my server today. I play with my brother and a few of our friends, so I'm not too concerned about administration breaches or griefing. Thanks for being available and there when I needed you ^_^

    Is there a way to use /cp newwaypoint <name> with commandpay? I've tried a bunch of different syntax, but i can't get it to work.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 18, 2016
  6. Offline


    I can think of ways that CommandPay could offer support, but I can't really do that from within this plugin. Try contacting him about it, and if he has any questions on how to support it, he can always ask me. :)
  7. Offline


    Okay =). I wasn't bugging you to code anything or anything. It was just more like seeing if you could help me off the top of your head or if there was something silly I was missing.
    I swear I thought CommandPay had something for a dynamic argument like that, but what I thought it was didn't work. Ill go poke around over there.
  8. Offline


    Done :)
    Download version 2.4
  9. Offline


    Awesome Dude.

    Cool Idea + Plugin.
  10. Offline


    hey what mod do you use to have map in right hand corner
  11. Offline


  12. Offline


  13. Offline


    Updated to be compatible with Bukkit R5 and up.

    Also added two new features:
    • 'compassionate.untrackable' permission will allow players to be invisible to the Player Tracker
    • /cp toggle - Toggles the entire set of ComPassionate clicking events on/off, good utility for admins with WorldEdit
  14. Offline


    This plugin is great for adventure-themed servers! Works great for me, except that if you've had a compass once, and die, you will always get another one, even that it wasn't in your hand, leading into a duplication exploit.

    Could you also make the plugin to automatically change into node tracking mode when the player types /cp locate?
  15. Offline


    I actually (thought) I fixed the compass-duplication bug in one of the latest versions (2.5 +), though I may be wrong. And I could do that, yes.

    Version 2.5.2 is out
    • Fixed an NPE with the new Player-Tracker hiding mechanism
    • When using /cp locate, you will automatically change to Node Tracker Praash
    • Added a few more safety checks to assure there's no more compass duplication

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 18, 2016
  16. Offline


    Will this work with Bukkit beta 1.2.3?
  17. Offline


    In theory, yes.
  18. Offline


    cool ill give it a try thanx for the response
  19. Offline


    The original compass is fairly worthless unless you build your home on top of the initial spawn location...which is not exactly practical as you expand your horizons or spawned in an unfavorable location. ;)

    The additional tracking options are great and actually make it worth the iron investment...however, is there a way to make a mode that actually works like a compass....and always points north? That would be more helpful to me when cave-diving / exploring than anything else.

    Thanks for the great plugin,

    EDIT #1: I found a mod called Useful Compass that has a "point North" option.

    EDIT #2: Hahaha...I got "educated" in what "North" actually was in this game. LOL. All of my manual signs I created to keep track of the Sun rising in the East and setting in the West was all wrong. In this game, the sun rises in the South and sets in the North. hahaha. OMG this game is nutz...but fun.
  20. Offline


    Can you make a function so that someone with certain permissions can only scroll those modes?
    I'm creating a hunger games server and I'm using it to track people. (not my signature, it's not released yet)

    So if I only have the compassionate.player permission, I only see "[compassionate] player tracker activated!" thing. I would not see the other modes when I right click.

    If this requires too much work/if you don't want to do this, could you create a private one with only the player tracking compass function? (I don't need the /locateplayer thing, just the leftclicking and right player locator function)

    Thank you very very much. I would strongly appreciate it if you could do this! We aren't releasing without a tracker plugin (otherwise they would dig to bedrock and no one can find them lol)
  21. Offline


    Good work first of all for this plugin. I'm being lazy and not implementing permissions at the moment and may have stumbled across a couple of bugs unless I've just implemented it wrong?

    minecraft server version 1.2.5
    ComPassionate v2.5.3
    First issue: I tried to add 'Enable-Permissions: false' to the config but must not be doing it right because every time I start the server the config.yml is 0 bytes.

    This is the error message in the logs.
    2012-04-17 11:50:36 [INFO] [ComPassionate] Enabling ComPassionate v2.5.3
    2012-04-17 11:50:36 [SEVERE] Cannot load plugins/ComPassionate/config.yml
    org.bukkit.configuration.InvalidConfigurationException: Top level is not a Map.
    at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:57)
    at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:143)
    at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:109)
    at org.bukkit.configuration.file.YamlConfiguration.loadConfiguration(YamlConfiguration.java:177)
    at org.bukkit.plugin.java.JavaPlugin.reloadConfig(JavaPlugin.java:117)
    at org.bukkit.plugin.java.JavaPlugin.getConfig(JavaPlugin.java:111)
    at me.DrBoweNur.ComPassionate.ComPassionate.loadConfig(ComPassionate.java:104)
    at me.DrBoweNur.ComPassionate.ComPassionate.onEnable(ComPassionate.java:79)
    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:215)
    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:336)
    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381)
    at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:250)
    at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:232)
    at net.minecraft.server.MinecraftServer.t(MinecraftServer.java:371)
    at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:358)
    at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:187)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:422)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
    2012-04-17 11:50:36 [INFO] [ComPassionate] version 2.5.3 enabled
    Second issue: if a player dies, they respawn with a compass. I would prefer it drops with everything else. Is this a bug or intentional?
    I'm using a plugin called "Cenotaph v2.1.2" which puts all the killed players gear into a chest where they died but this duplicates the compass. One in the chest where they died and one in the inventory of the player that respawns.
  22. Offline


    Sorry if this has already been posted, but I think we may need multiworld support.
  23. Offline


    You should make it so you can track certain mobs or animals throughout the whole world.
  24. Offline


    After almost a year of inactivity, it's been updated to v2.6
    Works with the latest build, and most of the things that broken have been taken care of. Enjoy!

Share This Page