[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

    nickguletskii

    Is Essentials.jar located in plugins directory? Are you launching in the server directory? Full log + launch script would be nice...
     
  3. Offline

    The PC Tech Guy

    No, I'm NOT running Essentials. That's the point.
     
  4. Offline

    nickguletskii

    That's why you should follow the installation instructions... There are two different repos. One for Essentials, second for vanilla.
     
  5. Offline

    The PC Tech Guy

    I was confused with that. I thought it meant for... well I'm not "vanilla..." Well I just thought it was for something else, so yeah.

    However, it still eats up the vanilla /list command...
     
  6. Offline

    nickguletskii

    Vanilla doesn't have /list as far as I know...

    EDIT: Whoops... Making a script for that! :D

    EDIT2: Fixing tomorrow, I don't think bukkit is updated yet... I get bat packet errors.
     
  7. Offline

    White Sheep

    Running on Bukkit 684 and SpyAdmin V0.8_1

    Error: "22:32:25 [SEVERE] sun.org.mozilla.javascript.WrappedException: Wrapped java.lang.ClassNotFoundException: com.earth2me.essentials.Console (<Unknown source>#107) in <Unknown source> at line number 107"
     
  8. Offline

    Guenael

    You mean config files ?
     
  9. Offline

    seriosbrad

    I don't want to doubt your coding knowledge but I tested it multiple times with and without patched version and with, without essentials. Seeing as I'm not the only one with the problem I think there is another issue at hand.
     
  10. Offline

    nickguletskii

    This happens because there isn't plugins/Essentials.jar (version 2.1) relative to the launch script.

    See the above reply. If you don't have essentials, use the VANILLA repo!

    Yes... Just don't overwrite anything :p
     
  11. Offline

    blindsarcasm

    My friend and I are both on seeall and spies, but I can't see him and he can see me. What on earth is going on?
     
  12. Offline

    nickguletskii

    What do you mean? You aren't using it right then...
     
  13. Offline

    MinecraftHead

    Any chance at getting this updated for 1.5? Currently running 709 have tried 700-709, when I /spy in game the console get spammed with SEVERE errors.
    Snip below:
    org.bukkit.command.CommandException: Unhandled exception executing command 'spy' in plugin SpyerAdmin v0.82
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:80)
    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:255)
    at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:650)
    at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:613)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:607)
    at net.minecraft.server.Packet3Chat.a(SourceFile:36)
    at net.minecraft.server.NetworkManager.a(NetworkManager.java:195)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:73)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:370)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:285)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    Caused by: java.lang.NoSuchFieldError: a
    at nickguletskii200.SpyerAdmin.SpyerAdminPlayerListener.invisible(Unknown Source)
    at nickguletskii200.SpyerAdmin.SpyerAdminPlayerListener.vanish(Unknown Source)
    at nickguletskii200.SpyerAdmin.SpyerAdmin.onCommand(Unknown Source)
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
    ... 12 more
    2011-04-22 08:24:40 [SEVERE] Exception in thread "Thread-17"
    2011-04-22 08:24:40 [SEVERE] java.lang.NoSuchFieldError: a
    2011-04-22 08:24:40 [SEVERE] at nickguletskii200.SpyerAdmin.SpyerAdminPlayerListener.invisible(Unknown Source)
    2011-04-22 08:24:40 [SEVERE] at nickguletskii200.SpyerAdmin.SpyerAdminPlayerListener$2.run(Unknown Source)
    2011-04-22 08:24:40 [SEVERE] at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:33)
    2011-04-22 08:24:40 [SEVERE] at java.lang.Thread.run(Unknown Source)
     
  14. Offline

    nickguletskii

    Damn, I'll have to fix that... The network handler changed, but I thought it didn't...

    EDIT: Updated. Hopefully fixed.
     
  15. Offline

    MinecraftHead

    Is there a new download link? The one in the OP still leads to the same version.
    Thanks for the quick response!
    MH
     
  16. Offline

    nickguletskii

    Oh my god... Damned dropbox... Completely forgot that I need to restart it... :mad:I'll do that in 10-20 minutes, can't do that right now.
     
  17. Offline

    Hrdkr

    It's already 24 minutes ago, lol.
     
  18. Offline

    Nate204

    IS this supported on 709 then?
     
  19. Offline

    Hrdkr

    I have nothing to say, just waiting for nickguletskii here.

    I have a question. Which plugin is responsible to the showing /spy and /quit commands for all the players in the available commands list (/list): Spyer, Essentials, GroupManager or Bukkit itself? Dunno which author I have to abuse.

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

    Filip Weiss

    I can give you ftp/web space if you want. Contact me in this Irc Channel :)
     
  21. Offline

    Hrdkr

    After the adding SpyerConfig to the plugins folder (SpyerAdmin is already there) the /spy and /quit commands are gone! But for all, also for me — OP and Admin. Adding addspy and/or removespy to the SpyerAdmin.conf doesn't makes any sense.
     
  22. Offline

    cholo71796

    Can you add Permissions support? I only want one faction to be able to use this.

    Other suggest that are perhaps too far-reaching would be selecting who can see who- I want that faction to be able to see other spies within the faction- and disabling the ability to do damage for certain players while they are spying?

    Also, what are the exceptions you say are implemented for allowing invisible players to be damaged?

    EDIT: When you login it informs you both that you are invisible and that you are still invisible. It's kind of redundant.
     
  23. Offline

    nickguletskii

    Already uploaded... Please check, I can't test this myself because my computer can't handle two clients, a server and eclipse running at once.
    As long as build 709 doesn't do major modifications to the basics then it is fine.
    Spyer.
    I am fine, thanks. Going to install Ubuntu 11.04 and then I won't have a problem. There seems to be an incompatibility between Dropbox and Ubuntu One, which causes this. I won't install Ubuntu One anymore.
    Err... What are you doing? I don't understand your actions.
    Working on permissions support. And sorry, damage won't ever be controlled by this plugin.
     
  24. Offline

    cholo71796

    Ah, darn, well I guess I won't be using this, I don't want to be giving out paid invincibility + invisibility to my players.
     
  25. Offline

    Filip Weiss

    If i use /spy this happens:

    Log (open)

    2011-04-22 21:05:38 [SEVERE] java.lang.IllegalStateException: Failed to remove player. net.minecraft.server.EntityPlayer@62b3(michi_x at -18.542185273879877,69.5,112.84302204450962) isn't in chunk 4, -1
    2011-04-22 21:05:38 [SEVERE] at net.minecraft.server.PlayerInstance.b(PlayerInstance.java:49)
    2011-04-22 21:05:38 [SEVERE] at net.minecraft.server.PlayerManager.removePlayer(PlayerManager.java:101)
    2011-04-22 21:05:38 [SEVERE] at net.minecraft.server.ServerConfigurationManager.disconnect(ServerConfigurationManager.java:113)
    2011-04-22 21:05:38 [SEVERE] at net.minecraft.server.NetServerHandler.disconnect(NetServerHandler.java:97)
    2011-04-22 21:05:38 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:565)
    2011-04-22 21:05:38 [SEVERE] at net.minecraft.server.NetHandler.a(SourceFile:66)
    2011-04-22 21:05:38 [SEVERE] at nickguletskii200.SpyerAdmin.SpyerAdminPlayerListener.invisible(Unknown Source)
    2011-04-22 21:05:38 [SEVERE] at nickguletskii200.SpyerAdmin.SpyerAdminPlayerListener$2.run(Unknown Source)
    2011-04-22 21:05:38 [SEVERE] at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:33)
    2011-04-22 21:05:38 [SEVERE] at java.lang.Thread.run(Thread.java:662)
    2011-04-22 21:05:38 [SEVERE] java.lang.IllegalStateException: Failed to remove player. net.minecraft.server.EntityPlayer@62b3(michi_x at -18.542185273879877,69.5,112.84302204450962) isn't in chunk 4, 0
    2011-04-22 21:05:38 [SEVERE] at net.minecraft.server.PlayerInstance.b(PlayerInstance.java:49)
    2011-04-22 21:05:38 [SEVERE] at net.minecraft.server.PlayerManager.removePlayer(PlayerManager.java:101)
    2011-04-22 21:05:38 [SEVERE] at net.minecraft.server.ServerConfigurationManager.disconnect(ServerConfigurationManager.java:113)
    2011-04-22 21:05:38 [SEVERE] at net.minecraft.server.NetServerHandler.disconnect(NetServerHandler.java:97)
    2011-04-22 21:05:38 [SEVERE] at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:565)
    2011-04-22 21:05:38 [SEVERE] at net.minecraft.server.NetHandler.a(SourceFile:66)
    2011-04-22 21:05:38 [SEVERE] at nickguletskii200.SpyerAdmin.SpyerAdminPlayerListener.invisible(Unknown Source)


    And all players will be disconected.

    Edit: CraftBukkit Version: 709
     
  26. Offline

    nickguletskii

    Damn... Going to look into this.

    EDIT: Yeah. Now network handler has a method called "sendPacket", which I didn't notice. Basically, Bukkit wanted to play with refactoring again.
     
  27. Offline

    Nate204

    Same here,
    I just disconnected everyone on my server.
     
  28. Offline

    nickguletskii

    With the newest one? Weird, my friend joined me and I had no problems...

    EDIT: Cleaned up some code, did a great start at permissions implementation.
     
  29. Offline

    Nipper

  30. Offline

    SourHead69

    I downloaded this Plugin but when I start Spying and use both /spy and the bone to hide, it takes everyone out of the game. HELP! PLZ
     
  31. Offline

    BioRage


    711.
     

Share This Page