UltraItems
<font color="red" size="5">UltraItems is going to be merged with SpoutBlocks into SpoutMaterials.</font>
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.
We cannot recipe for exemple Lapis Lazuli (351:4). I don't know if there is a solution for this problem... I'm french = Poor english :(
@gosti
You can use OddItem : http://dev.bukkit.org/server-mods/odditem/
@Hoot215
You can try to report it in spout issue tracker.
@Lisured
Yes it seems like CookBook is the issue. Do you have any idea how I might be able to fix that?
Ho yeah great thank :)
@Hoot215
Not sure. Could you test it with CB disabled?
@Lisured
Do you think that it is because I use CookBook?
@gosti
I've created an issue https://github.com/Acrobot/ChestShop-3/issues/5.
this plugin IConomyChestShop required itemid a solution could exist for sell customitem?
@gosti
Could you explain it little bit more?
support sorry for my poor english...
@gosti
What iconomyChestShop issue?
Hi could you add a iconomyChestShop issue? Because some of people on my server want to sell... viagra ... :) And a statu delay?
Good day from france!
Gosti
@Hoot215
It is working for me on bukkit #1337, spout #497 and dev version with your config. I can craft both refined ingot and obsidian sword.
@Lisured
hero :)
@Lisured
That's great news! I guess I misinterpreted the crafting fix. However, none of my crafting recipes (Or furnace recipes) are working. My config is here:
http://pastebin.com/raw.php?i=L0tyL2nZ
CraftBukkit: #1337
Spout: Tested with both #497 and #449
UltraItems: v0.9
(No error in the console)
@Hoot215
You can craft from custom items (that was the crafting fix) but you can't use normal items with data values because of some bug (i think it isn't working yet in 495). I've discussed it with Olloth on irc and he said it is probably fault of MaterialData.getMaterial(id, data) method.
Minecraft items can be added by passing for example MateriaData.greyWool (sth like this uses JukeBukkit). Which gives me an idea i could probably temporarily bypass it by detecting item with data value and passing correct thing.
Ad tools: It doesn't look very well. Class posted before (GenericWeapon or sth) is used for registering minecraft weapon implementing spout material. I have some other idea but chance it will be working is very low.
I won't do the recipe bypass today because it is already 4 AM here. I was trying to configure Maven so i changed file structure in eclipse but i didn't liked it so i changed it back what caused that i can't build UltraItems neither with Eclipse nor Maven. I hope i will figure it out tomorrow.
I asked chrisrulesall (Developer of JukeBukkit) how he made his crafting recipes, which use custom items, and he told me to look at the source code. As I've said, I don't know much about Java, but it looks to me like the SpoutDev team have solved the crafting issues. I would appreciate it if you took a look at the source code of JukeBukkit (https://github.com/thedudeguy/JukeBukkit/blob/master/src/cc/thedudeguy/jukebukkit/CustomsManager.java), and use it to fix the crafting recipes in this plugin.
Also, how are the custom tools coming? Sorry if I'm being annoying, but that (and a crafting fix) are all I really want from this plugin. :)
Ok, as expected, with Spout 495 my JukeBukkit blocks are flints.
Using last Craftbukkit, but I cant make tests right now ...