NoItem
NoItem v3.1.0 - DERP.
What does it do?
NoItem aims to allow server admins to restrict almost any aspect of players actions via permissions. Things such as placing and breaking blocks, interacting with levers and buttons, opening chests and furnaces, even breeding animals can be controlled! There are of course other things that can be restricted as well. For a complete list, check the wiki!
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.
Downloads:
http://dev.bukkit.org/server-mods/noitem/files/
Beta/Development builds may contain bug fixes, but also may contain new bugs
So before you report a bug, check and see if a new build has fixed it!
Feature List
NoItem can restrict the following:
- Crafting certain items
- Holding certain items
- Having certain items
- Brewing certain potions
- Cooking certain items
- Picking up certain items
- Dropping certain items
- Placing certain blocks
- Breaking certain blocks
- Wearing certain armors
- Interacting with certain items / entities in general
- Left clicking certain items / entities
- Right clicking certain items / entities
- Using certain tools. (right click / left click / in general)
Commands
Command | Permission | Description |
---|---|---|
/noitem | noitem.admin | Prints current NoItem version |
/noitem reload | noitem.command.reload | Reloads the configuration |
/noitem debug toggle | noitem.command.debug.toggle | Toggle debugging |
/noitem debug dump | noitem.command.debug.dump | Write debug file to the servers base directory |
Videos
FAQ
Q: How do I...
A: Check the wiki! If you are still confused and have tried to figure it out, ask in the comments.
Q: There is an error in the console or something is not working as expected
A: Submit a bug report to github! (Link above) DO NOT post the error in the comments section! Also be sure to include the error in your report.
This plugin utilises Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:
- A unique identifier
- The server's version of Java
- Whether the server is in offline or online mode
- The plugin's version
- The server's version
- The OS version/name and architecture
- The core count for the CPU
- The number of players online
- The Metrics version
Opting out of this service can be done by editing plugins/Plugin Metrics/config.yml and changing opt-out to true.
NoItem 4.X - It's Aliiiveeee!
NoItem 4.X is currently in development and is not finished. There will be bugs, there will be a lack of certain features, there will be questions.
Here is the link to the information page: https://github.com/nala3/Noitem4/wiki
Here is the link to the development builds: http://ci.worldoftomorrow.net/ (Also on the wiki page)
Submit bug reports to the github bug tracker.
Currently known issues are:
- None - Please report any found!
Currently Implemented Features (also their permissions)
- break
- place
- craft
- open
- cook
- pickup
- drop
- hold
- interact.object
- interact.entity
- use - is buggy and needs refinement
Permissions format:
- noitem.action.<action>.<object>[.secondaryValue]
- noitem.object.<object>[.secondaryValue].<action>
- Asterisk values are supported for specific actions and objects. not for all actions or objects at once. (e.g. noitem.action.* is not supported, but noitem.action.break.* is)
I am open to suggestions on what other action to implement on top of the ones I am currently working on.
A wild button appears!
You use "CLICK". Its super effective!
@CollinDesigns
Did you take the graphical bug I mentioned into account? I am testing with your permissions right now (with the "-"s removed) and it is working, the glitch is still happening of course but it is working. If you want me to join your server I can come and check it out.
@nala3
Ok so now i removed all double - and i can still craft it all.... What am i doing wrong? :( How i fix this?
@CollinDesigns
Okay a few things.
EDIT: Upon further review, there is a slight bug with crafting so that if you are stopped from crafting, say a pickaxe and get a ghost item and break a block with it, initially the block will re-appear, but it will then break and the tool will disappear. I'll look for a way to fix this, but I'm doubtful.
@nala3
Edit: its working but not like it should for me :( Currently i have this assigned to default: http://pastie.org/8535718 I can craft all items listed expect enderchest... but all rest is done exactly same as i did perm for enderchest.. What am i doing wrong?? Also when i try to craft enderchest its saying: You are not allowed to craft this object. When in config its stated to say: "Craft: You are not allowed to craft &4%i&9. Go to spawn and buy it from the corresponding shopkeeper."
Edit: redownloaded latest version from: http://ci.worldoftomorrow.net/job/NoItem%204.X/lastBuild/ Now can also craft enderchest.... What am i doing wrong?
How i fix this? :( Please reply asap.
@CollinDesigns
https://github.com/Bukkit/Bukkit/blob/master/src/main/java/org/bukkit/Material.java#L212
noitem.action.craft.anvil OR noitem.object.anvil.craft
It explains the permission changes on the Noitem 4.X git repository Wiki.
@nala3
Or just tell me how i can block the crafting of an anvil. Just gimme that permission so i can use that perm and change the id of the anvil to fit all my needs, cause i only use the no crafting perm. Thats all i need for now. If you could tell me that i could edit/change the id of the anvil in cauldraon, enderchest, etc to fit my needs.
Ty in advance.
@CollinDesigns
Private message me a copy of your permissions file that needs to be updated. I'll see if I can write a script to convert them for you, no promises but I'll try.
@CollinDesigns
NoItem is one of those plugins that uses minecraft and craftbukkit internal code (it goes outside of the bukkit api) which means that it has to be updated every time minecraft/bukkit has an update. It breaks otherwise. I am maintaining the NoItem 3.x series while nala3 is writing the NoItem 4.x series. The 4.x series is a complete re-write and the permissions structure is different, so if you use the 4.x series (still indev) then yes, you will need to change the perms you use according to the instructions listed in his git wiki. I have a development update of the 3.x series on my jenkins, but it is completely untested. Mojang changed so much code that there is no guarantee that it works as intended, but it compiled.
@nala3
Update them? They are the same as in 1.6.4.. Do i have to redo all my perms? Q_Q
@CollinDesigns
Did you update your permissions?
1.7.2 isn't working for me, i can craft anything i normally should fine now... Any idea why?
@lANTHONYl
My early builds of the new version of NoItem (4.X), may not have as many features, but the latest builds are compiled against and should work with MC 1.7.2. For those who wish to try it out, here is the github repo link with information about the new version, currently implemented features and download links. https://github.com/nala3/Noitem4/wiki
For those interested, I currently have implemented support for: break, place, craft, open, pickup, drop and hold.
As the format of permissions has changed you would need to update them to work with the new version.
Trying to update NoItem for 1.7.2 compatibility but am having an issue. Apparently something in the nms code has changed. See here for the compilation errors. Anyone that is able to figure out what needs to be changed is welcome to submit a PR here.
Always... (1.6.4-r2.0 server)
17:23:03 [SEVERE] Could not pass event InventoryClickEvent to NoItem v3.0.7-SNAPSHOT
org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462) at net.minecraft.server.v1_6_R3.PlayerConnection.a(PlayerConnection.java:1383) at net.minecraft.server.v1_6_R3.Packet102WindowClick.handle(SourceFile:31) at net.minecraft.server.v1_6_R3.NetworkManager.b(NetworkManager.java:296) at net.minecraft.server.v1_6_R3.PlayerConnection.e(PlayerConnection.java:116) at net.minecraft.server.v1_6_R3.ServerConnection.b(SourceFile:37) at net.minecraft.server.v1_6_R3.DedicatedServerConnection.b(SourceFile:30) at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:592) at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227) at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488) at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421) at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) Caused by: java.lang.NoClassDefFoundError: org/bukkit/craftbukkit/v1_6_R2/inventory/CraftItemStack at net.worldoftomorrow.noitem.events.Handlers.isCookable(Handlers.java:578) at net.worldoftomorrow.noitem.events.Handlers.handleNoCookInvClick(Handlers.java:450) at net.worldoftomorrow.noitem.events.Listeners.onInventoryClick(Listeners.java:68) at sun.reflect.GeneratedMethodAccessor282.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425) ... 14 more
Can you add color code support for the custom texts? It doesn't work for me...
@lANTHONYl
Haha true that. The new version was written without regard to how older versions worked. This allowed me imagine a new way of approaching this plugin. I think so far it is turning out pretty good.
@nala3
Oh, was just glad to see you posting is all.
@lANTHONYl
(>'_')># yes?
@nala3
:)
Howdy all. For all you curious folk who like to try new things. NoItem 4.X series information link: https://github.com/nala3/Noitem4/wiki/NoItem-4.X---Now-With-400%25-More-Unit-Tests
There will be no support for NoItem 4.X on this page, however all issues for NoItem 4.X can be brought to my attention via a github issue ticket. (https://github.com/nala3/Noitem4/issues)