[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



    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!

    • 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:
      {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
      {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 command line installer
    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
    • CommandBook: Special version for you! semi-direct Replace SpyerAdminConmmands.jar with this version!

    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)
    • 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

    • 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


    hi i'm using your plugin on my server but /t command are in conflit with 2 other plugin, Towny version 0.72.1 and Essential 2.4 can you remove this command in your plugin?
    And can i desactivate too /msg and /tell ect...? in your plugin? another use this too
    I only want /spy command...
  3. Offline


    You can open the .jar files with an archive manager, and edit the plugin.yml to modify/delete the command that are bugging you.
  4. Offline


    There is no t command.
  5. Offline


    Working thx.
    And nice plugin i have just a suggestion. your /quit just "fake" a quit can you hide too from a /list of player connected?
  6. Offline


    It already hides you from common player lists.
  7. Offline


    what is the permission for this command /quit
  8. Offline


    Read the OP. Quit and spy have the same permission.
  9. Offline


    Ok, spyer isn't working for me. I type /spy or /quit, but people say they can still see me... I even tested it with another account, and I wasn't disappearing. I later realized that I wasn't using the trigger item, but even when I tried that, nothing happened. I'd give myself glowstone dust, right click after having said /spy, but still nothing? What am I doing wrong? (No, I'm not getting any error messages)
  10. Offline


  11. Offline


    I have installed the special version of spyeradmincontrols.jar for commandbook, yet when I type /quit it displays the message fine and turns me invisible, however whenever anyone types /who they will still see me in the playerlist. Running spyer version 1.4, CB 953, and commandbook 1.5.2
  12. Offline


    You need to use the CommandBook customiser to remove the who and message command from CommandBook so that Spyer could handle them.
  13. Offline


    I was wondering if anybody could help me with this problem. I cannot get SpyerAdmin to work. It comes up with the message you are now visible, but no matter how many times i type /spy, it will not tell me i have become invisible. The invisibility for SpyerFun works fine. SpyerAdmin is also set to default. My server also has CommandBook and replaced the .jar with the CB one. It doesn't allow me to Right click said item and become invisible, but it converts the IndicatorItemFired into the IndicatorItem. Right Clicking either along the way makes me invisible.

    My problem is more/less the same as Roratos. How would i go about changing Permissions and where these Permissions can be found.
    Also why is there a IndicatorItem and IndicatorItemFired? Can't have you it so Admins only have to type /spy to enter and exit invisibility? if you ask me it would be a lot to enable than to have it scripted to items.
  14. Offline


    It is an INIDICATOR item. It INDICATES that you are invisible. You need to use the COMMANDS. If you have no permissions plugin installed, then OPs will see hidden people and normal people will not.
  15. Offline


    players can still see me but mobs cant
  16. Offline


  17. Offline


    I see, I will do that. Thank you!
  18. Offline


    Eeeh, threw a blind update to build 1000. Should work in theory - all I did was replace the permissions code with new permissions code which is much better.
  19. Offline


    hey i've got a problem. I'm from germany and I don't understand everything in your Plugin description so I don't know if i've installed it correctly but not even one command is working! It always says: An internal error occured while attempting to perfome this command.

    I've got the indicator items and I'm admin so it should work. But it doesn't I'm using bukkit build #953 because DeinMine.de isn't working with any highers right know.

    If you don't know how to help me or if it's very hard to understand, could you please give me the link to the Vanish plugin? I think i'm to stupid to find it...
  20. Offline

    Psycho Robot

    When the "internal error message" comes up, you should look in the console. There will be a more detailed error message there. Copy it (use this as a guide), then paste it here, preferably in this format:

    Error message here
    Then the dev will be able to help you more, because he can see exactly what went wrong.
  21. Offline


    Hey where's the changelog for 1.4?
  22. Offline


    Fixed the OP.
  23. Offline


    Build #1000

    Anytime I type /who I receive this error. I do have /who disabled in Commandbook.

    02:05:37 [SEVERE] javax.script.ScriptException: sun.org.mozilla.javascript.internal.EcmaError: TypeError: Cannot call method "getSettings" of null (<Unknown source>#28) in <Unknown source> at line number 28
    02:05:37 [SEVERE]       at com.sun.script.javascript.RhinoScriptEngine.invoke(RhinoScriptEngine.java:251)
    02:05:37 [SEVERE]       at com.sun.script.javascript.RhinoScriptEngine.invokeFunction(RhinoScriptEngine.java:209)
    02:05:37 [SEVERE]       at nickguletskii200.SpyerAdmin.CustomHandling.who(Unknown Source)
    02:05:37 [SEVERE]       at nickguletskii200.SpyerAdmin.SpyerAdminCommands.onCommand(Unknown Source)
    02:05:37 [SEVERE]       at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
    02:05:37 [SEVERE]       at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:129)
    02:05:37 [SEVERE]       at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:320)
    02:05:37 [SEVERE]       at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:713)
    02:05:37 [SEVERE]       at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:677)
    02:05:37 [SEVERE]       at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:670)
    02:05:37 [SEVERE]       at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:33)
    02:05:37 [SEVERE]       at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    02:05:37 [SEVERE]       at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
    02:05:37 [SEVERE]       at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    02:05:37 [SEVERE]       at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
    02:05:37 [SEVERE]       at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
    02:05:37 [SEVERE]       at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    02:05:37 [SEVERE] Caused by: sun.org.mozilla.javascript.internal.EcmaError: TypeError: Cannot call method "getSettings" of null (<Unknown source>#28)
    02:05:37 [SEVERE]       at sun.org.mozilla.javascript.internal.ScriptRuntime.constructError(ScriptRuntime.java:3773)
    02:05:37 [SEVERE]       at sun.org.mozilla.javascript.internal.ScriptRuntime.constructError(ScriptRuntime.java:3751)
    02:05:37 [SEVERE]       at sun.org.mozilla.javascript.internal.ScriptRuntime.typeError(ScriptRuntime.java:3779)
    02:05:37 [SEVERE]       at sun.org.mozilla.javascript.internal.ScriptRuntime.typeError2(ScriptRuntime.java:3798)
    02:05:37 [SEVERE]       at sun.org.mozilla.javascript.internal.ScriptRuntime.undefCallError(ScriptRuntime.java:3817)
    02:05:37 [SEVERE]       at sun.org.mozilla.javascript.internal.ScriptRuntime.getPropFunctionAndThisHelper(ScriptRuntime.java:2319)
    02:05:37 [SEVERE]       at sun.org.mozilla.javascript.internal.ScriptRuntime.getPropFunctionAndThis(ScriptRuntime.java:2312)
    02:05:37 [SEVERE]       at sun.org.mozilla.javascript.internal.Interpreter.interpretLoop(Interpreter.java:1524)
    02:05:37 [SEVERE]       at sun.org.mozilla.javascript.internal.Interpreter.interpret(Interpreter.java:854)
    02:05:37 [SEVERE]       at sun.org.mozilla.javascript.internal.InterpretedFunction.call(InterpretedFunction.java:164)
    02:05:37 [SEVERE]       at sun.org.mozilla.javascript.internal.ContextFactory.doTopCall(ContextFactory.java:429)
    02:05:37 [SEVERE]       at sun.org.mozilla.javascript.internal.ScriptRuntime.doTopCall(ScriptRuntime.java:3163)
    02:05:37 [SEVERE]       at sun.org.mozilla.javascript.internal.InterpretedFunction.call(InterpretedFunction.java:162)
    02:05:37 [SEVERE]       at com.sun.script.javascript.RhinoScriptEngine.invoke(RhinoScriptEngine.java:245)
    Also. My mods have the permissions
    but cannot invis. Nothing shows, no You are invis or You arent', or error messages. If I OP the player, they can do it.
  24. Offline


    You aren't using essentials. You need to use a different script/version.
  25. Offline


    I'm getting this too. /spy is now none functional for anyone bar owner.
  26. Offline


  27. Offline


    That's what I figured - unfortunately I don't want to implement that yet as it doesn't do everything I need. In the meantime I've rolled back Spyer to the previous version and it works finewith Bukkit build 1000
  28. Offline


    Would you happen to have a link where I can get the previous version please ? I too am having the issue where I am unable to use the commands of SpyerAdmin.
  29. Offline


    Quick Q cause I didn't quite get 100% what the changelog was saying. If we update the plugin does it still use permissions plugin? Or should we just stay at the version we currently have?
  30. Offline


    It doesn't use any permissions plugins, it uses Bukkit's own permission system.
  31. Offline


    So you're saying this no longer works with Permissions V3.X?...

Share This Page