[INACTIVE][FUN/ADMN] Spyer 1.5_1 - invisibility for moderating and pvp!(alternative to Vanish) SPOUT

Discussion in 'Inactive/Unsupported Plugins' started by nickguletskii, Feb 27, 2011.

  1. Offline

    nickguletskii

    SPYER HAS A NEW HOME!

    WARNING! THIS PLUGIN REQUIRES SERVER SIDE SPOUT! CLIENTS DO NOT HAVE TO DOWNLOAD ANYTHING!
    WARNING! OLD PERMISSION SYSTEM IS NOT SUPPORTED! YOU WILL NEED A BUKKIT PERMISSIONS STANDARD COMPLIANT PERMISSIONS SYSTEM!
    Hotfixed SpyerFun on 16th of August. Version number of the jar didn't change. Fixed a bunch of bugs.
    SpyerFun - a plugin that allows playersto become invisible for some time. Each second the player "eats" one item out of the stack he is holding (hider item, sugar by default). While invisible, mob can and will still attack the player, although other players (exceptions are implemented) can not. The player will reappear when he either runs out of the hider item or switches to another item in his action bar, e.g. a sword.
    SpyerAdmin - a plugin that allows moderators to hide themselves for an unlimited amount of time, as well as simulating them leaving. This is a constantly updated alternative to Vanish, with much more features and configurations!
    Thanks to brafenschlug for this hilarious video of moderators playing pranks on players!

    Features:
    • Now uses Spout! This plugin is no longer CPU heavy!
    • Allows players to become invisible for a set amount of time!
    • Adds more fun to PVP.
    • Allows administrators to hide themselves and simulate them quitting! Overrides msg,r and list.
    • Stops players from picking things up while using SpyerAdmin (see the configuration section)
    • Knocks players out from invisibility (SpyerFun) when they get damaged (see the configuration section)
    • Knocks players out from invisibility (SpyerFun) when they left-click a block (see the configuration section)
    • Now reload friendly!
    How to use (SpyerAdmin):
    • Use /spy to become and stop being invisible (toggled).
    • Use /quit to simulate you quitting/joining (toggled).
    • Place 1 piece of the indicator item into your quickbar. It will indicate if you are hidden or not. By default it is glowstone that turns into sulphur. You can configure that in plugins/Spyer/SpyerAdmin.conf.
    How to use (SpyerFun):
    • Right click with the "hider" item, every second it will eat up one item from the stack.
    • To add/change "hider" items, go to plugins/Spyer/items.yml. You'll see something like this:
      Code:
      {352: 3000, 353: 1000}
      Items are separated by commas. The ID is the right value, and the time of usage (per block) in milliseconds(HAS to be dividable by 50!). So if I want to add clay to work for 10 seconds per piece, I will do something like
      Code:
      {352: 3000, 353: 1000, 337: 10000}
      Note: by default, bones and sugar are used.
    Installation instructions, downloads:

    Install server-side Spout. No Spout client required.
    Extract the contents of the bundle(Spyer.zip) into the plugins folder.
    Bundle downloads:
    Download
    Download command line installer
    Github
    jars (open)

    Instructions for different setups:
    • Essentials: Download SpyerInstaller, put it in the server directory and run it from terminal(console). Go to configuration->4.
    • Vanilla Bukkit: go to (server directory)/plugins/Spyer. Open repo.conf, replace everything with
      Code:
      http://dl.dropbox.com/u/16258042/SpyerAdminRepos/Vanilla/
    • CommandBook: Special version for you! semi-direct Replace SpyerAdminConmmands.jar with this version!
    Configuring:

    List of permissions:
    1. spyer.spy (Players who have this have access to the /spy and /quit commands, without permissions checks for op powers)
    2. spyer.seeAll (Players who have this can see people who are hidden, without permissions checks for op powers)
    3. spyer.fun (Players who have this can use SpyerFun, without permissions defaults to true)
    4. spyer.stopmobs.admin (Stops moderators from being attacked by mobs while hidden)
    5. spyer.stopmobs.fun (Stops players from being attacked by mobs while hidden)
    Files:
    • spyer.yml - responsible for holding timing data. If syncWithScheduler is true, the plugin will use the bukkit's scheduler (recommended). If false, use Java timers. refreshRate defines the time in ticks (in milliseconds if syncWithScheduler = false). Add the optional field coolDown and set its value to your cooldown time in milliseconds (for SpyerFun, time in between invisibility uses). Add pickUp: true to allow picking up items while hidden in SpyerAdmin. To knock out people from SpyerFun when they damage an entity, add "onDamage: true". To knock out people from SpyerFun when they left click a block, add "onBlock: true". To stop invisible players (SpyerFun) from damaging other living entities, add "noDamage: true". Boolean "wait" allows/disallows the plugin to delay reloading to give them time to hide.
    • repo.conf - holds the url of the repository from which SpyerAdmin will update the script.
    • script.js - compatibility layer between plugins. e.g. Essentials script will simulate Essentials commands, Vanilla script will simulate the normal minecraft commands.
    • items.yml - holds the list of items used in SpyerFun
    • SpyerAdmin.conf - holds indicator item ids for SpyerAdmin
    Modifying scripts:
    1. Comment out all the lines in repo.conf.
    2. Modify the script.
    3. If you want to update the script, you can get it from [repopath]/script.js
    Version: v1.5_1

    Known issues
    • If you get a NullPointer when enabled (that contains something like "at nickguletskii200.SpyerAdmin.CustomHandling.<init>(Unknown Source)", then download this and put it into your jre's lib directory. You might also need to install Rhino. Disclaimer: this file is a part of the OpenJDK package.
    Changelog (open)

    Version 1.5
    • Migrated to Spout packet filtering. Timers are now only used for indicators(admin) and item deduction(fun). You can decrease the tick rate now if you want.
    • 1.5_1 Fixed the whole bundle. Nasty bug didn't appear in testing!
    Version 1.4
    • Separated SpyerAdmin into two modules.
    • July 17th - now using bukkit permissions API. Blind update. If you got this plugin before build 1000, then you have the old version. If you got it after build 1000, new version.
    Version 1.3
    • Made plugins reload friendly.
    • _1 Essentials 2.3 compatibility added through autoupdate.
    • _2 Fixed default item pickup. Now doesn't pick up items by default.
    • _3 Added noDamage property for SpyerFun.
    Version 1.2
    • Improved performance.
    • Added position checks.
    Version 1.1
    • Some little customisation upgrades.
    • Some hotfixes.
    • Improved SpyerFun's invisibility system.
    Version 1.0
    • Added mob targeting control.
    • Hotfix: fixed(hopefully) the log spam!
    • Small feature added (13/05/11): cooldown times for SpyerFun.
    Version 0.9
    • Permissions support!
    • Cleaned up code.
    Version 0.8
    • Added indicators.
    • You can now do /spy [on|off] to force.
    • Invisibility persists when you reconnect.
    • Fixed updater to work with Windows.
    • 0.8_1 fixed some problems with commands.
    • 0.8_2 major fixes.
    Version 0.7 (SpyerAdmin only for now)
    • Automatic script updating.
    • Better logging (will help me get rid of bugs) (coming soon)
    Version 0.6
    • Scripting support! That means no more compile-time library linking and more compatibility!
    • Multiple item support for SpyerFun added!
    Version 0.5
    • Added refreshrate and sync method variables. See the usage instructions to learn how to cofnigure them.
    Version 0.4


    • Extended functionality of /quit. Overrides msg and list commands of essentials.
    Version 0.3
    • A rewrite, separated packages. Hopefully removed all known bugs.
    • 0.3_1 Separated in-game configurations into another package.
    • 0.3_2 Fixed some bugs.
    • 0.3_21 Fixed some exceptions, small fix.
    Version 0.2
    • Shadow moderation ("addspy <player>" - allows player to hide with "spy" and "quit", "removespy <player>" - opposite. "addseeall <player>" - allows player to see hidden players, "removeseeall <player>" - oppiste. "spy" - hides you until called again. "quit" - hides and removes you from the list of players.
    • Click in the air now works
    • Migrated to SnakeYaml, no more jars!
    • 0.2_1 upgraded to remove double invisibility, quit now fully simulates player leaving.
    • 0.2_2 fixed player reappearing after "spying".
    • 0.2_3 huuuuuuuge bugfixes!
    • 0.2_4 fixed some bugs, one known: you have to say "/spy" twice to hide after using sugar/other hider item.
    Version 0.1
    • Release



    TODO
    • Some technical cleanups
    • Suggest more!
    Credits (no particular order)
    These people helped me by posting a lot of descriptive bug reports, removing bugs from scripts, making videos, cooperating with debugging and helping other users understand my horrible documentation ;)
    • The PC Tech Guy
    • Sparx
    • Tim Yong
    • Greylocke
    • KevinHouse
    • aidan matzko
    • brafenschlug
    • Nelien
     
  2. Offline

    RunningDingos

    Hey!

    i downloaded the plugin it ROCKS! me and my fellow op's have so much fun :p we have also cut down of griefing and stealing alot :D one thing is the /quit feature it dosent seem to work :( when i do the command nothing happens.

    anyway Thanks fir the plugin :D
     
  3. Offline

    nickguletskii

    Any exceptions?
     
  4. Offline

    RunningDingos

    ?
     
  5. Offline

    acetech09

    Yep. normal /spy and /vanish work fine.
     
  6. Offline

    RunningDingos

    this comes up in the server terminal

    2011-06-05 11:14:51 [SEVERE] java.io.FileNotFoundException: plugins/Spyer/spyer.yml (No such file or directory)
    2011-06-05 11:14:51 [SEVERE] at java.io.FileInputStream.open(Native Method)
    2011-06-05 11:14:51 [SEVERE] at java.io.FileInputStream.<init>(FileInputStream.java:137)
    2011-06-05 11:14:51 [SEVERE] at java.io.FileReader.<init>(FileReader.java:72)
    2011-06-05 11:14:51 [SEVERE] at nickguletskii200.SpyerAdmin.SpyerSettings.load(Unknown Source)
    2011-06-05 11:14:51 [SEVERE] at nickguletskii200.SpyerAdmin.SpyerAdmin.onCommand(Unknown Source)
    2011-06-05 11:14:51 [SEVERE] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
    2011-06-05 11:14:51 [SEVERE] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:128)
    2011-06-05 11:14:51 [SEVERE] at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:281)
    2011-06-05 11:14:51 [SEVERE] at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:718)
    2011-06-05 11:14:51 [SEVERE] at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:684)
    2011-06-05 11:14:51 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:677)
    2011-06-05 11:14:51 [SEVERE] at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:32)
    2011-06-05 11:14:51 [SEVERE] at net.minecraft.server.NetworkManager.b(NetworkManager.java:217)
    2011-06-05 11:14:51 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75)
    2011-06-05 11:14:51 [SEVERE] at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    2011-06-05 11:14:51 [SEVERE] at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:401)
    2011-06-05 11:14:51 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:311)
    2011-06-05 11:14:51 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-06-05 11:14:51 [INFO] Error: could not fetch settings from YAML document. Make sure it is correct.
    2011-06-05 11:14:51 [SEVERE] Exception caught in SpyerAdmin! Exception ID CMD1307294091981. Please upload spyeradmin.log and notify the author (nickguletskii200).
     
  7. Offline

    nickguletskii

    Heh. Probably something stupid in the Essentials code.
    You did not install it correctly.
     
  8. Offline

    RunningDingos

    oh
    oh what did i do wrong?
     
  9. Offline

    nickguletskii

    You didn't unpack the configs.
     
  10. Offline

    RunningDingos

    Ahh kk ty fix'd :D
     
  11. Offline

    OrtwinS

    @nickguletskii
    Thanks for including the no-pvp thing... but:
    - did you update the commandbook version?
    - no config file is created
    - the default is pvp=true? since I could harm others while invisible
    - if the config is manually placed it cannot unzip, it says 'Error unzipping: Library cannot extract this entry. Version required is (788)'.
    - it does not take over the /list command from commandbook correctly, I'm still on the list (I did /quit, not /spy), and the names are not ordered by group anymore.
    - after I do /quit, its says I'm invisible and that I quit, when I do /quit again I turn visible... and I have to do /quit a THIRD time to make the join message appear.

    I use version 1.3.3 with CB820 (has some fixes over 818)
    no errors in log
     
  12. Offline

    nickguletskii

    SpyerFun isn't dependent on command plugins.
    The config is spyer.yml
    Yes, default is true.
    What? It works for me.
    That is because you can see everyone, right?
    And that is weird, because it doesn't happen for me.
     
  13. Offline

    OrtwinS

    Not dependent, I know, but you do have an extra link for a special version for commandbook users, so something is different right?
    There is no spyer.yml here, no Spyer folder, nothing, and if I try putting it in manually I get that error.
    And /list should still order the names by group... removing spyer fixes it so it must be something spyer is doing.
     
  14. Offline

    nickguletskii

    That is only for SpyerAdmin.
    Well, the problem is your archiver, because it works fine for me.
     
  15. Offline

    OrtwinS

    So others will still see the group specific name list?
    I'm sure I can find a workaround for the archiver... weird though, never had trouble before
     
  16. Offline

    nickguletskii

    CommandBook doesn't sort names by groups.


    Aaaah, it is time to release my customisable commands plugin so I can finally drop support for these damned command plugins.
     
  17. Not using permissions.

    Could you remove the 'Permissions system not detected, default to OP' spam that appears in console.
    Once at bootup is fine but when I'm in game its logging that message with every block placement. Unneeded, I know who is OP. Great plugin.
     
  18. Offline

    OrtwinS

    It does, though it is an option that needs to be enabled in the config.

    Code:
    online-list:
        colored-names: false
        grouped-names: true  <-----
        show-max-players: true
    
    But if you do not plan on supporting it I'll go back to Vanish, its reported to work on 818.
    Thanks for the effort though.
     
  19. Offline

    nickguletskii

    https://github.com/sk89q/commandboo...89q/commandbook/commands/GeneralCommands.java
    There is no sorting in there. You might be using some unofficial/really outdated version.

    Vanish has no pseudo-quit features. You can easily disable pseudo-quit in Spyer.

    Patched that up. Redownload. Version number didn't change because it isn't a major change.

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

    OrtwinS

    I used 1.5.1, and now 1.5.2, which is the newest version, and I tell you when I do /list it sorts by group...
    I'll try later tonight with disabling the pseudo-quit.


    idea?
    Show Spoiler

    I dont know shit about java, BUT... I guess you intercept the /list command eh? and replace it with your own (substracting the 'quit' player).
    Could you also intercept the actual /list output in whatever form it comes and do a search & replace before passing it on to the client...?
     
  21. Offline

    nickguletskii

    Cool idea, I wish it was possible, but I can't see a way of intercepting the messages.
     
  22. Offline

    OrtwinS

    OK... another one :p.
    Can you access the commandbook config (read) and output in the correct format with or without grouping? (still assuming you intercept the command and do the output yourself).
     
  23. Offline

    nickguletskii

    The problem is that I don't see any grouping in the source code, so I can't replicate the command exactly.

    I am going to release my customisable, scripted commands plugins that is going to simplify it for me and hopefully many other developers. That means that different plugins will be able to modify the behaviour of other plugins commands. This also means that the server owners will just have to delete a script to remove a command and modify the script for custom behaviour.
     
  24. Offline

    OrtwinS

    I dont think people will start using ANOTHER basic command plugin just to have seemless integration with some spy plugin.... I know I wont.
    But I appreciated your motivation.

    If I send you a screenshot from the commandbook player list, could you then replicate it? if its 99% perfect it will be good enough, noone will notice.
     
  25. Offline

    nickguletskii

    I am not aiming for that. I am aiming at making a fully customisable command plugin, which would also help my case.

    Well, I can't guarantee anything, but I will try my best.
     
  26. Offline

    Psycho Robot

    Its not just ANOTHER essentials/commadbook clone, 'scuse me, "fork", like every other default command plugin out there. Its totally different from the very core, and people will realise that.
     
  27. Offline

    OrtwinS

    Please enlighten me.
    SK got me pretty convinced he made the most decent and solid command plugin available now. It didn't break the last few MC updates.
    Convince me and I will honestly consider it, I try not to be a fanboy of any particular plugin/developer, so please give me your best shot.
     
  28. Offline

    nickguletskii

    Basically, the plugin itself just loads the commands. All commands are stored in separate files. The commands are written in javascript, which means that if you don't like something, you can easily modify that part. Something missing? You can write your own command, using a simple template! Need a library from Java? Easily - JSR223 is used.

    I am in the stages of writing some standard commands.
     
  29. Offline

    rad1game

    2011-06-07 01:42:14 [INFO] Found permissions. Using them for SpyerAdmin.
    2011-06-07 01:42:14 [INFO] SpyerAdmin updates are disabled.
    2011-06-07 01:42:14 [SEVERE] Error occurred while enabling SpyerAdmin v1.3 stable (Is it up to date?): null
    java.lang.NullPointerException
    at nickguletskii200.SpyerAdmin.CustomHandling.<init>(Unknown Source)
    at nickguletskii200.SpyerAdmin.SpyerAdmin.onEnable(Unknown Source)
    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:125)
    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:750)
    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:253)
    at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:134)
    at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:112)
    at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:232)
    at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:219)
    at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:146)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:285)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)

    CB #818
     
  30. Offline

    Kuja_Diartua

    Hey. Im about to launch the something like thiefcraft server, and may i ask: can you add the ability to player go invisible in the set amount of lighting? e.g. if the player is in the shadows, he will turn invisible, and if in light (torch, sun) he will become visible. Also, the ability to kick player off the invisible, if someone is 1 block away from him or standing just right to player? (well, all stuff can be configured, i guess) This can use some sort of cooldown, i guess. e.g. if you kicked off the invisible mode, you cant go invisible for some time
     
  31. Offline

    megaman0122

    well the CPU problem has to be because of you because it only happened when your plugin was in.
    and I do not have "essentials" or any other command plugin.

    I think this is just a bunch bs that you keep re posting because you are too lazy to fix the problems.
    I have read this allover the comments you always say the same thing "it's because of essentials" and stuff.

    in my opinion I don't care if vanish no pickups is "dead" I am still gonna use it over your piece of crap cause they know what they are doing.
    I have never had a problem ever using vanish no pickups.

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

Share This Page