UsefulVillagers
RIP
Unfortunately, yeah, this plugin is dead. I've repeatedly said that I've no time left for it. The source are available but nobody's dare to maintain it, only complain that it doesn't evolve. Sorry internet, blame yourself for that. There's no charge for this plugin, I've never asked for donations. Now if you want to make it live (if it's worth it as "many other plugins are better" as i've read sometimes), use your brain, use your skills, use your own time. By now, I'm done.
Summary
This plug-in aims at adding some purpose to the villagers. Instead of walking around, villagers can also performs tasks depending on their profession. As they walk around, they will grow food, cut trees, gather sugar cane to make books, get wool, use furnaces, mine, etc.
Changelog for 0.4.0
- Added a configuration key in 'config.yml' that avoid 'not useful villagers' messages.
- Blacksmith now also cook pork (how strange it is ...).
- Various internal technical improvement.
Quote from Some Random GameDev:There's now a dependency to Gson. You'll have to download the third library jar, store it somewhere and update the -Djava.ext.dirs parameter.
Usage
First, a complete manual is available here.
Villagers professions can be set by right-clicking with the appropriate items:
- Wheat : Transforms a villager into a 'farmer'. A farmer will harvest wheat, melon and pumpkin, sugar cane.
- Book : Transforms a villager into a 'librarian'. Librarians take sugar cane from chest, use nearby workbench to produce books and put back produced books in the next encountered chest. Librarian can also 'study' weird items, such has glowstone dust, blaze powder, ghast tears, and give back experience points to players (study time depends on the given item).
- Iron ingot : Transforms a villager into a 'blacksmith'. Blacksmith with furnaces and chests in there surrounding will automatically transfer goods from furnace to chest and start smelting job from chest content. If interacted with a gold pickaxe, the blacksmith gain (or loose) mining ability (see manual for full description/usage).
- Leather : Transforms a villager into a simple 'butcher'. Butcher, for now, uses shear to collect wool from sheep.
- Glass Bottle : Transforms a villager into a 'priest'. Priest heal and defend villager (and player) with spells.
A villager can be provided with items by right-clicking on it.
- Give an hoe to a farmer and it will be able to transform dirt/grass to soil and plant seeds.
- Give seeds to a farmer to allow him planting seed.
- Give an axe to a farmer and it will be able to cut tree (if the tree is marked for cutting).
- Give sugar cane to librarian and it will craft books as soon as it cans.
- Give interesting stuff to librarian and it will study them and give back experience to you after time.
- Give shears to butcher and it will collect wool from sheep.
- Give stone or iron pickaxes to blacksmith and if it has a mining ability, it will mine below iron blocks.
- Give glowstone dust to priest and it will heal surrounding players and villagers.
- Give blaze rod to priest and it will set nearby monsters on fire (creepers/spider/skeleton/zombie).
(Extra : Give torches to a golem and it will place them in encountered dark places).
When a chest is encountered, the villagers will put their products in it (wheat, melon, pumpkin, wood logs, sugar cane, books, wool).
Disclaimer
It is not a 'active AI'. It is not experimental and rely totally on bukkit API. Hence, this plugin doesn't override villager behaviour but add some features to it. The villagers will continue to move and act as they're used to. But, periodically, player-activated villagers will modify their environment accordingly to their profession.
Roadmap
- Add priest brewing capabilities.
- Add more flexible serialization (XML or other) to allow easy migration without blasting all !
- Add blacksmith charcoal production management.
- Add butcher management (animals breeding and processing).
- Add commands for live administration.
Any suggestions are welcome.
Rejected Suggestions
First of all, keep in mind that I can't alter villagers movement.
- Fishing : Heart breaking, but it's not possible ...
- Villager self-defense : out of my range (only passive area of effet enabled via priest).
- Structure building
Commands
None for the moment. See Roadmap.
Configuration and Permissions
Again, a complete manual is available here with details concerning configuration and permissions. Check this out and read it !
Requests
Don't hesitate to report any problems or make any suggestions here.
We must ask someone to update it.
(((
Oh, so sad. This was a really lovely plugin that was so close to making minecraft more of a simulation :(
Plugin is dead? =((
any chance this getting updated? :P
I've tried 0.3.5.c and 0.4.0, in both cases I can assign villagers jobs, but they don't actually do anything...
@softvelvet - what server version are you running? And do the villagers do jobs?
strange
anyone know how to get this working on 1.4.6
I use 0.3.5c.jar and it works fine
No :((((
Does it work with new versions of bukkit?
Need help i have given everyone all the permissons but it still says they dont have permission pls anyone help me i know its working because i can use them as OP but noone else can
Are you going to update this anytime soon? Really love this plugin.
My suggestion:
I was thinking about connecting everything inside of this plugin.
Like: you start off with a librarian giving a book to a priest, this priest will then write abilities in the book for example: FARM SUGAR CANE - FARMER. This book will go to the Farmer, he will then be able to farm Sugar Cane, so that the Librarian can continue producing books for the Priest. The Priest will then be able to continue writing abilities inside the book and give them to their owners (Butcher, Farmer, Librarian, Blacksmith ...)
I think if this would be possible that it would be very cool ;D
Will it be possible to customize the items + rewards that Librarians study? I tried editing some of the code but it never worked for me, or I just fail with the .Class things ;) Might try it out later again
2012-12-10 11:07:18 [SEVERE] Error occurred while enabling UsefulVillagers v0.4.0 (Is it up to date?)
java.lang.NoClassDefFoundError com/google/gson/GsonBuilder
at org.randomgd.bukkit.workers.WorkerHandler.getWorkerInfoFromDisk(WorkerHandler.java:350)
at org.randomgd.bukkit.workers.WorkerHandler.onEnable(WorkerHandler.java:194)
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217)
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:374)
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381)
at org.bukkit.craftbukkit.v1_4_5.CraftServer.loadPlugin(CraftServer.java:304)
at org.bukkit.craftbukkit.v1_4_5.CraftServer.enablePlugins(CraftServer.java:286)
at net.minecraft.server.v1_4_5.MinecraftServer.j(MinecraftServer.java:324)
at net.minecraft.server.v1_4_5.MinecraftServer.e(MinecraftServer.java:303)
at net.minecraft.server.v1_4_5.MinecraftServer.a(MinecraftServer.java:262)
at net.minecraft.server.v1_4_5.DedicatedServer.init(DedicatedServer.java:147)
at net.minecraft.server.v1_4_5.MinecraftServer.run(MinecraftServer.java:402)
at net.minecraft.server.v1_4_5.ThreadServerApplication.run(SourceFile:856)
Caused by: java.lang.ClassNotFoundException com.google.gson.GsonBuilder
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:44)
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:29)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 13 more
@Peda1996
I'm rootin' for potatoes and carrots support!
(ba-dum TSHH)
@seanth
that would be soo cool :)
possible to update for new items, if you haven't already?
A proposal for a self-sustaining village:
Iron Golem convert villagers into random professions
Blacksmiths make various tools from stone and wood from farmers
Farmers can make bread
Farmers make bread from the wheat they harvest
Priests use bread from farmers to heal villagers
Librarians make golem using iron from blacksmiths and pumpkins from farmers
You get the idea. Basically, have the useful villagers make everything they need to be useful.
Hi there. Sorry for the long delay (some issues irl). I'm really busy these days.
To Cellybeans and cadija_orade : Sorry for that. I've done several tests and didn't have any issue of this kind. Can you check the 'UsefullVillagers' directory in your plug-ins directory and see if there's a file named 'workers.json'. This file shall contain all the villagers information (in plain text, JSON format). If this file is not present, or if the directory is not present, perhaps you're experiencing a write protection issue. Check if you've got the right to create/modify file in the plugins directory. But be aware that the rights must be set for the user launching the server.
To seanth: No, villagers can't do that yet. But why not ? Let's push this idea for the v0.5 (or v0.6 :) ).
To Joymo: Thank you very much for the kind words :) Unfortunately, I've got big difficulties to find time for working on this plugin ... As always, check the git repository on github and feel free to fork it ! I'll be very pleased to see someone maintaining the plugin !
This is such a lovely plugin, here's hoping for updates and new features :)