UltraItems
<font color="red" size="5">UltraItems is going to be merged with SpoutBlocks into SpoutMaterials.</font>
![](http://dev.bukkit.org/thumbman/images/35/407/600x358/intro.png.-m1.png)
UltraItems creates custom items (with custom title and texture). You can also set crafting recipe and left / right mouse button click action. Action is something to post in chat (eg. command or some message), so you need another plugin to handle this. It is recommended to have commandhelper installed to do advanced commands (command chaining). This plugin requires Spout to be installed, otherwise items will have default texture. You can get item via command /ultraitems (alias /ui).
What you can do with this: wands, food, <s>tools</s>, <s>change stackability</s>
What you can't do (for now): armor, blocks, entities, change durability
<font color="red" size="5">Warning: This plugin requires development version of spoutcraft (check 'use latest dev build' in spoutcraft options) because of bug where items.png is in inventory instead of texture.</font>
Frequently Asked Questions
- Why ain't my permissionbypass working?
- You have to use some permission manger using SuperPerms (like PermissionsBukkit or PemissionsEx or bPermissions)
- How can i set healing staff?
- You can set negative damage.entity option to achieve that
- Will you add maxstacksize soon?
- I have asked Olloth (he's working on custom item api in spout) and he said that method for changing stackability isn't something that can be done easily.
- Will you add crafting with different data values soon?
- See IRC log
- What about furnace crafting from custom items?
- See Spout issue #800
- Will you add custom blocks soon? What will be possible to set?
- Yep. Luminescence, opacity, drop, friction, hardness, whether is powered, explosion resistance. I also like the idea it would act like tree block. And some events like place.
- Why i can't change id of base item?
- Not a preferred way of creating item with spout api anymore.
- How can i set mob drops?
- Use one of following plugins: CookieMonster, EcoCreature or MoneyDrop
- How do i convert old items (pre 0.8) to new spout compatible items?
- Follow this info.
- How can i find out id and data value of item?
- It is shown in console on start-up or after performing /ui reload.
- What does 'Config is unproperly formated?' mean?
- You either don't have UltraItems as root node or you have BOM signature in your config.
Example configuration
Following example should be working with dev version. If you can't use something, download dev version first.
UltraItems: # main container
flashwand: # item name (used when obtaining item via command)
title: Lightning wand # title shown when cursor moved on item in inventory
url: http://ogion.cz/files/items/flash.png # url of image to set to inventory item (it is currently only in inventory and in-hand)
lclick: # left click section
action: |
/zap # command sent when left clicking with item in-hand
let them burn! #you can specify more action as same as multiple permissions to bypass just add multi-line notation (pipe, vertical bar or whatever you call |)
#also you can use variables $player, $coords, $world
permissionbypass: flashplugin.zap # temporarily adds specified permission (removed after performing of action), not recommended to use (if you leave item in chest everybody can use it).
rclick: # right click section
action: /zap multi# command sent when right clicking with item in-hand
cracker:
title: Notch crackers
url: http://ogion.cz/files/items/notch.png
rclick:
health: 20 # 2 = 1 hearth, you can use negative values too
hunger: 20 # 2 = 1 hunger unit (chicken leg), you can use negative values too
consume: true # whether or not is item consumed after clicking
sound: http://ogion.cz/files/items/crunch.ogg
<s>maxstacksize: 6 # maximal size of stack</s>
recipes:
- type: shaped
amount: 2 # amount of items gained by crafting
ingredients: |
0 266
266 357 266
0 266
osword:
title: Obsidian sword
url: http://dl.dropbox.com/u/1189439/osword.png
instantbreak: true # instantly breaks the block being destroyed
damage:
entity: 80 # damage caused to entity (2 = 1 hearth)
recipes:
- type: furnace # you can use furnace, shaped or shapeless
ingredients: "49" # ingredient id:data
- type: shaped
ingredients: |
0 49
0 49
0 cracker
# note you can use item names in recipes (item has to be specified before used in recipe)
Permissions
- ultraitems.* - All UltraItems' commands
- ultraitems.reload - Reload config (default: op)
- ultraitems.list - Show list of items (default: true)
- ultraitems.give - Give item (default: true)
- ultraitems.give.* - Give all items (default: true)
- ultraitems.craft.* - Craft all items (default: true)
Commands
- /ultraitems <itemname> [amount] - gives player item itemname
- /ultraitems list - shows list of items
- /ultraitems reload - reloads configuration file (this works quite weird if you updated recipes so rather use /reload)
- /ultraitems replace - replaces items before new spout item api with new ones
Future releases
- Support for mana plugins
- Complex scripting language for more customisable items
- Block enemy attack (like right click with weapon in mc)
- Integration into give command (General plugin)
- More food properties (poison) and animation
- More events (blockplace, drop, pick, destroyed, walkedon, walkedoff)
- Explosions
- Custom blocks
- Config generator
- Delay option
- Advanced consumption (another items, replacing item)
- Entity shooting (arrows, fireballs)
Changelog
0.9
- Added crafting permissions
- Added amount for give command
- Some crafting fixes (you can use custom item names in recipes)
- Added basic api
- Added instantbreak option
0.8.1
- New bukkit config api
- /ui replace command for replacing old items with new ones
- Info about added items
0.8
- Compatible with new spout api
- Entity damage multiplier changed to absolute number
- Removed multiple spaces bug, data values can be now separated with :,;-
0.7.1
- Fixed data values in recipes
0.7
- Disabled consume for left click action
- Added crafting recipes
- Added health and hunger options
- Colored messages
- Prevented stacking of items with different data values
- Added maxstacksize option
- Added permissionbypass option
0.6
- Added entity damage multiplier
- Enabled data value 0 for click action
0.5
- Better error handling
- Enabled data value 0
- Blocking all right click actions
0.4
- Moved action, consume into l/rclick section
- Action not required for other settings
- Sound setting supported
0.3
- Added consume option
- Enhanced exception handling (incorrect spout)
- Fixed onPlayerInteract without item causing NPE
0.2
- Working reload command
- No errors in console mode
- Restructured returns
- Removed dev messages
0.1
- Initial release
- SuperPerms support
Known bugs
New features are tested before being released but it can miss some bug. If you find any, please report it to the comments or issues section.
- Sound sometimes isn't played (Spout's bug?)
- Reloading config doesn't reset item titles and textures if removed from config (you can use /reload command from bukkit)
- Consume on left click not working correctly (had to disable it because it caused internal server error - bukkit's issue?)
- Maxstacksize isn't working correctly
Download
You can find it in files section. Source is in repository
You can get latest dev version on DropBox.
@couljj
Not yet
@Lextao
Sorry i forgot to add it to faq (twice):
It is shown in console on start-up or after performing /ui reload.
Is it possible to create armor?
How do i know my new items ID's?? Before i had this:
katana:
item: 280
data: 3
title: Katana
url: http://dl.dropbox.com/u/38840761/katana.png
damage:
entity: 10
I used /ui replace but theres no difference... the config won't change and i dont know the new id... it just says: UltraItems: Items from inventory replaced.
Help?
Sorry i was out of town for last few days so i couldn't respond.
@KoBro12
That is planned.
@Flenix1
This sounds doable but what if player drop the item on the ground and take it?
If there was a method for changing stackability i could distinguish inventory items.
@esinger5
Look on the example above. There should be everything.
@RealExa There is no permission for using items. Please post your config.
@Astaen See permissions section:
ultraitems.craft.<itemname>
What the syntax for crafting permissions ?
Permissionbypass doesnt seem to work for me. I'm using PermissionsBukkit and i'm trying to use a plugin called spawnmob, so my rclock action is /spawnmob pig and my permissionbypass is spawnmob.pig
As an Admin it works but my users it doesn't. I got my permissions all set up (as they can use citizens traders and other stuff i've set up). Do i need to add an Ultraitems permission to the permissions aswell for my users? I don't see one that allows for use of the items, just crafting might be needed (but its standard set to true so i haven't added it)
Thanks for any help!
You mean Jukebukkit is still compatible? I'll test it and find out!
@Misteryan
Really? But then why did it still work with the old build? Also, JukeBukkit didn't require an update to stay compatible.
the API has changed for Items and blocks !
But Lisured worked with the latest dev build :)
That's why it works
@razerwashere
I think the new update really only changed custom blocks, not so much items, so it seems to work fine still.
@Misteryan
Wouldn't it have to update, first?
@razerwashere
yes
Will the new Spout RB work with this?
awsome. :)
@KoBro12
Quite possibly.
ok, thanks. But will it be possible to make this in the future?
Is there a wiki that list and explains all configuration options / values?
@KoBro12 It was mentioned a long time ago, maybe he should add to the original post of "not possible stuff" - Tools and Weapons use data values for their damage, therefore you can't currently add another data value for a texture and information... as soon as you use it it just changes its texture and reverts to normal.
You CAN add special tools/weps though, such as some I have: Heroes Bows - automatically bound to the Heroes arrows skills, so they fire poison/fire arrows Redstone Sword - waiting on a bug fix, but it'd be a one hit kill and would be consumed Bedrock weapons/tools? - I don't use them, but maybe they'd have infinite durability. Balance it how you like :)
@ the OP, I DID have an idea for durability, but its not ideal. Use some sort of database (probably have to be MySQL) to store how much damage someone has done with a specific item. The only problem is, the damage would be shared over the amount of items they have... say they have 3 Mythian swords or whatever, they could almost use one up then drop it, and they'd use the second and the DB would see it as the first and remove it. You wouldn't be able to differentiate between multiple of the same item... but its a start? It also means we can very easily set the durability amount, and things like repairs and bonus damages (like using a sword on glass is 2x damage)
Man, i really like this plugin, but got some questions tho. Can you make it so you can set if it is a Sword, Pickaxe, Axe, hoe, Shovle, food or just an item? I use this on my server. :) And 1 more thing, the items look a little buggy, but they work. :)