DisguiseCraft
Tired of backwards EnderDragons? Upward looking chickens? Or some of the other bugs in MobDisguise? Ready to try something brand new? With DisguiseCraft we are taking a brand new approach on mob/player disguises by taking advantage of the advanced features released in the 1.1-R4 build of CraftBukkit!
Features:
- Disguise as any mob
- This includes: babies, colored sheep, sized slimes/magmacubes, tamed/aggressive wolves with colored collars, tabby/tuxedo/siamese cats, saddled pigs, villager occupations, and charged creepers
- Also unnatural slime/magmacube sizes: bigger, massive, godzilla
- You can also set the disguise on fire and hold blocks as an Enderman
- This includes: babies, colored sheep, sized slimes/magmacubes, tamed/aggressive wolves with colored collars, tabby/tuxedo/siamese cats, saddled pigs, villager occupations, and charged creepers
- Disguise as any player, including their skin, cape, and in-chat name
- The item you are holding and arm swings are shown
- Disguise as certain objects
- This includes the vehicles: boat, minecart, poweredminecart, storageminecart
- And the blocks: endercrystal, fallingblock (different materials)
- No Spout necessary! Disguised players' names are not shown in SpoutCraft (This is because the disguised player's packets are not sent to other clients)
- No Backwards EnderDragon! No messed up chicken head!
- Permissions support (All popular permissions systems)
- Multi-world permissions are supported
- Granular player-disguise nodes
- The player list doesn't show players who are disguised in your world
- The ability to see through disguises is given with a permission node (disguisecraft.seer)
- Disguises can fool mobs too! (disguisecraft.notarget & disguisecraft.notarget.strict)
- Item-pickup can be disabled while wearing a disguise
- You can disguise or undisguise other players
- You can keep your disguise even after log out (Activate in the config)
- Utilizes the Plugin Metrics service
- All of the commands have tab completion
- Developer API to allow for plugin integration
Commands:
Legend: <required> [optional]
- /d or /dis or /disguise [mobname/materialname] - Disguise as a mob or falling block of a given material (If no mob is given, the available disguises are listed) {also gives current disguise}
- /d baby [mobname] - Disguise as a baby mob (If no mob is given, the current disguise is used)
- /d <color> [sheep/wolf] - Disguise as a colored sheep or a wolf with a colored collar
- /d charged creeper - Disguise as a charged creeper
- /d <tiny/small/big/bigger/massive/godzilla> [slime/magmacube] - Disguise as a specifically-sized slime or magmacube
- /d <tamed/aggressive> [wolf] - Disguise as a tamed or aggressive wolf
- /d <tabby/tuxedo/siamese> [ocelot] - Disguise as a tabby, tuxedo, or siamese cat
- /d <saddled> [pig] - Disguise as a saddled pig
- /d <donkey/mule/undead/skeletal> [horse] - Disguise as a horse type
- /d <librarian/priest/blacksmith/butcher/generic> [villager] - Disguise as a villager with an occupation
- /d infected [zombie] - Disguise as a villager zombie
- /d wither skeleton - Disguise as a wither skeleton
- /d hold <block name/id #> - Hold blocks as an Enderman
- /d <burning> [mobname] - Disguise as a burning form of any mob
- /d player <playername> - Disguise as a player
- /d <nopickup/np> - Disable item pickup
- /d <blocklock/bl> - Locks your disguise to the center of the block you're in
- /d <noarmor/bl> - Makes your armor not show on your disguise
- /d <send/s> <playername/*> - Send your disguise to another player (or everybody)
- /u or /undis or /undisguise [playername/*] - Undisguise yourself or another player (or everybody)
These commands can all also be run from the console. You just need to specify the player name right after the /d or /u.
Permission Nodes:
Defaulted group in parenthesis (Note: Defaults are overriden by the '*' permission)
- disguisecraft.* - Has all DisguiseCraft privileges (Nobody)
- disguisecraft.other.* - Can use any of the disguise commands affecting others (Op)
- disguisecraft.other.disguise - Can disguise other players
- disguisecraft.other.undisguise - Can undisguise other players
- disguisecraft.seer - Can see nametags through disguises (Nobody)
- disguisecraft.notarget - Is not targeted by mobs while disguised as one (Everybody)
- disguisecraft.notarget.strict - Not targeted even after attacking the mob (Op)
- disguisecraft.player.* - Can disguise as any player (Op)
- disguisecraft.player.<playername> - Can disguise as the specified player
- disguisecraft.mob.* - Can disguise as any mob (Op)
- disguisecraft.mob.<mobname> - Can disguise as the specified mob
- disguisecraft.mob.<mobname>.baby - Can disguise as baby form
- disguisecraft.mob.sheep.color.* - Can disguise as a sheep of any color
- disguisecraft.mob.creeper.charged - Can disguise as a charged creeper
- disguisecraft.mob.<slime/magmacube>.size.* - Can disguise as any size slime or magmacube
- disguisecraft.mob.wolf.<tamed/aggressive> - Can disguise as either a tamed or aggressive wolf
- disguisecraft.mob.wolf.collar.* - Can disguise as a wolf with a colored collar
- disguisecraft.mob.ocelot.cat.* - Can disguise as any type cat
- disguisecraft.mob.pig.saddled - Can disguise as a saddled pig
- disguisecraft.mob.enderman.hold - Can hold blocks as an Enderman
- disguisecraft.mob.horse.type.* - Can be any horse type
- disguisecraft.mob.villager.occupation.* - Can disguise as a villager of any occupation
- disguisecraft.mob.zombie.infected. - Can disguise as an infected zombie (zombie villager)
- disguisecraft.mob.skeleton.wither - Can disguise as a wither skeleton
- disguisecraft.object.* - Can disguise as any object
- disguisecraft.object.vehicle.* - Can disguise as any vehicle
- disguisecraft.object.vehicle.<vehiclename> - Can disguise as the specified vehicle
- disguisecraft.object.block.* - Can disguise as any block entity
- disguisecraft.object.block.<blockname> - Can disguise as a specific block entity (TNTPrimed, EnderCrystal, FallingBlock)
- disguisecraft.object.block.fallingblock.material - Can disguise as a FallingBlock of any material
- disguisecraft.object.block.<blockname> - Can disguise as a specific block entity (TNTPrimed, EnderCrystal, FallingBlock)
- disguisecraft.object.vehicle.* - Can disguise as any vehicle
- disguisecraft.burning - Can have burning disguises
- disguisecraft.nopickup - Can use the "/d nopickup" command
- disguisecraft.blocklock - Can use the "/d blocklock" command
- disguisecraft.noarmor - Can use the "/d noarmor" command
How to use:
- Put Disguisecraft and http://www.spigotmc.org/resources/protocollib.1997/ in your plugins folder
- Restart your server
- Disguise! (e.g. /disguise Creeper)
- Run around scaring your friendssssssssssssss
Video:
Useful Links
Planned or ToDo <== Put suggestion comments over here!
Development builds of this project can be acquired at the provided continuous integration server.
These builds have not been approved by the BukkitDev staff. Use them at your own risk.
Dev Builds (Jenkins) <== Contains the latest DisguiseCraft builds!
JavaDocs and Source Code
Plugins Utilizing the API:
- Mortuus Terra - A Post-Nuclear Zombie Apocalypse
- FleetingDisguises - Disguise time-limits and cool-downs
- DisguiseTester - An advanced entity metadata research tool
- MobDisguisePVPControl - Adds PVP-related disguise handling
- Be Herobrine - Makes the Herobrine disguise more intense
- SimplyVanish - The first invisibility plugin compatible with DisguiseCraft
- FactionsPlus - Undisguise upon entering territories
- CloneCover - Hide in a crowd where everybody looks alike
- CommandPoints MobDisguise Bridge - Let regular users disguise in moderation
- Armor Abilities - Use armor to disguise as a creeper and explode upon death
- Pony Pack - Enter the changelings
- PropHunt - Hide 'n Seek Revolutionized
- Infected - If you liked COD Zombies, you'll love this
- PVPPack - Your new solution to fair combat
- Dwarves vs Zombies - A DvZ plugin in the works
- Ultimate Herobrine - The legend continues
- MobHunting - Disguising is dangerous business
How to negate the disguisecraft.seer node with PermissionsEx
Or, how to make it so that you don't see the nametag of the person inside of the disguise!
- Open up your permissions.yml file
- Add the permission node "-disguisecraft.seer" to the group that is seeing the double disguises!
- Do /pex reload ingame.
Example pex file:
admin: options: rank: '1' permissions: - -disguisecraft.seer - '*'
Project Page Notices: (Please Read)
- Be sure to read our Frequently Asked Questions section.
- Report errors using the ticket system and be sure that you are using this plugin with the CraftBukkit build that it supports. Any error reported in the comment area may be deleted and ignored. Also make sure to check your tickets often and report in when a build or release has fixed the issue.
- We will only release for stable CraftBukkit builds. Do not report errors when using our plugin with a build it was not listed to support. Because we need to recompile for each specific build, you will only ever see versions for CraftBukkit Dev builds in our jenkins.
-
View User Profile
-
Send Message
Posted Mar 30, 2013Is this plugin lightweight (doesn't take up a lot of memory or lag the server) My server does not have much ram and I really want this plugin. Thanks for the awesome plugin.
-
View User Profile
-
Send Message
Posted Mar 30, 2013How do I use the fallingblock command? The documentation doesn't indicate the format for the command. I tried /d fallingblock sand, /d fallingblock:sand, etc. but it's always a sponge.
-
View User Profile
-
Send Message
Posted Mar 30, 2013@Devil_Boy
Not sure. Players have reported that they sometimes do work. I'll ask them to take a look tomorrow. I'll have to enable the seer permission for the time behind I suppose.. I'll let you know if I find anything out.
-
View User Profile
-
Send Message
Posted Mar 30, 2013@Bimmr
Currently, it cannot be done. However, that is something I can definitely add.
@HitmanPL47
Do nametags show up when you relogin?
I've just been having some weird issues getting the nametags to show up when the players first disguise. I'm beginning to think that it has to do with their distance from you....
-
View User Profile
-
Send Message
Posted Mar 30, 2013@andrewkm
Awesome. Though I have no idea what they did to fix it XD
@ehbaron123456789
Chances are, you're using a version of DisguiseCraft that was listed to work only for MC 1.5.0. You need to be using the latest dev build in the Jenkins.
@kevin9ye
Every skin in the Minecraft database will show up with DisguiseCraft ;)
@spoonyloony
You are using the latest DisguiseCraft dev build correct?
-
View User Profile
-
Send Message
Posted Mar 29, 2013Was just wondering would i be able to use the API and add a custom name above the disguised player?
-
View User Profile
-
Send Message
Posted Mar 29, 2013Hey Devil Boy - when my players disguise their name tag disappears. I thought before it didn't - has something changed?
I'd like players to be able to disguise but still have their names so they can't just super sneak. I'm willing to use TAGAPI and already use ProtocolLib.
-
View User Profile
-
Send Message
Posted Mar 29, 2013@andrewkm
Hey. No reference to the reply you just made, but I noticed your Spigot logo which happens to be the server processor I'm using (I'm running Spigot). If you could tell me if the error I'm receiving is the bi-product of a Spigot internal error or not, that'd take me one step closer to finding out why DisguiseCraft is so buggy. :D
-
View User Profile
-
Send Message
Posted Mar 29, 2013@Devil_Boy
It looks like JSONAPI responded to the github issue and fixed the problems. Both latest JSONAPI and DISGUISECRAFT seem to be working well together :) https://github.com/alecgorge/jsonapi/commit/b2c1651f9ccba49f5c72b2832a8948bbbc393ac4
-
View User Profile
-
Send Message
Posted Mar 29, 2013Hey. When I launch my server, DisguiseCraft does not launch with it. The error is:
2013-03-29 13:24:13 [SEVERE] Could not load 'plugins/DisguiseCraft.jar' in folder 'plugins' org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError: net/minecraft/server/v1_5_R1/Packet
at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:184) at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:307) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:231) at org.bukkit.craftbukkit.v1_5_R2.CraftServer.loadPlugins(CraftServer.java:262) at org.bukkit.craftbukkit.v1_5_R2.CraftServer.<init>(CraftServer.java:240) at net.minecraft.server.v1_5_R2.PlayerList.<init>(PlayerList.java:55) at net.minecraft.server.v1_5_R2.DedicatedPlayerList.<init>(SourceFile:11) at net.minecraft.server.v1_5_R2.DedicatedServer.init(DedicatedServer.java:109) at net.minecraft.server.v1_5_R2.MinecraftServer.run(MinecraftServer.java:385) at net.minecraft.server.v1_5_R2.ThreadServerApplication.run(SourceFile:573)
Caused by: java.lang.NoClassDefFoundError: net/minecraft/server/v1_5_R1/Packet
at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:249) at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:173) ... 9 more
Caused by: java.lang.ClassNotFoundException: net.minecraft.server.v1_5_R1.Packet
at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:70) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) ... 12 more
Could you help me find a solution to this error?
-
View User Profile
-
Send Message
Posted Mar 29, 2013what skins are already registered in DC on default?
-
View User Profile
-
Send Message
Posted Mar 29, 2013@spoonyloony
I can confirm this. Running build 735, though this might be a Spigot/Netty related issue?
-
View User Profile
-
Send Message
Posted Mar 29, 2013Crashed on spigot 1.5.1! Please fix, I won't update my server until you do. Meanwhile, I am on 1.5.
-
View User Profile
-
Send Message
Posted Mar 29, 2013@libraryaddict
I don't think you can through DisguiseCraft's system. We have em separated so that packets that a mob shouldn't be having aren't sent.
You'll probably need to use iDisguise for your plugin or use this rather hacky API way:
This method *should* work as a replica for how MobDisguise originally worked.
-
View User Profile
-
Send Message
Posted Mar 29, 2013@Devil_Boy
Any possible way I could get the disguise to use the same entity ID as the disguiser?
The problem being is when someone right clicks the disguise. My plugin is waiting for them to right click the player and well. It never fires.
When I try to make the disguise use the same entity ID as the disguiser. The disguiser is kicked for illegal stance.
This is also using ProtocolLibrary which may be a help.
Basically I would like the ability for the disguise to be the same entity ID. It would break seer I know, Unless you made the seer disguse show as a new entity ID.
-
View User Profile
-
Send Message
Posted Mar 28, 2013@WizardCM
It is a plugin o.o
Are you sure you're downloading the jar file correctly?
@bwinkl04
We're changing how the seer permission works. Too many people couldn't read the description and didn't understand that seeing the player in the disguise meant they had the seer permission. Now, we're doing seer using mob nametags. It's taking us awhile to iron things out, but it will probably come out looking nicer than before.
@monstercat101
We'll work on Spigot support afterwards.
-
View User Profile
-
Send Message
Posted Mar 28, 2013Broken to the latest spigot recommended build. 1.5.1
-
View User Profile
-
Send Message
Posted Mar 28, 2013Ever since 1.5 I cant see the disguised players on my server. I have disguisecraft.* and I even specifically gave myself disguisecraft.seer. Any ideas?
-
View User Profile
-
Send Message
Posted Mar 28, 2013@Devil_Boy
Apparently the file isn't a plugin and won't load on my 1.5.1 server.
-
View User Profile
-
Send Message
Posted Mar 27, 2013Our Jenkins is back up. The latest DisguiseCraft build for MC 1.5.1 is 208.