[INACTIVE][MECH] DwarfCraft V1.01 - Skills, Training, and Progression [527]

Discussion in 'Inactive/Unsupported Plugins' started by smartaleq, Feb 21, 2011.

     
  1. Offline

    smartaleq

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    DwarfCraft - Player progression plugin with skills that are improved by training(not xp):
    Current Version: v1.01
    Authors: smartaleq, LexManos and RCarretta

    Introduction:
    DwarfCraft is a plugin for minecraft (via Bukkit) that allows players to improve their characters skills and capabilities. Players can pay trainers to improve their skills, which provides benefits such as increased weapon damage, decreased tool wear, increased drops from blocks or mobs, etc. Because of the training system, DwarfCraft can provide an interesting and fun RPG base for Survival MP servers that will remain relevant and interesting for casual and intense players alike.

    Features:
    • Players may choose to play as Dwarves or Elves. Switching resets all skills. The race names are entirely configurable.
    • Elves play very similar to vanilla Minecraft with slight nerfs for balance (to farming mostly)
    • Dwarves have 40+ skills that progress from level 0 (worse that normal) to level 30 (extremely proficient). Each skill has several effects. Most effects reach par at skill level 5. New supported skills will be released.
    • Skills are improved by paying a training cost to a trainer. Server admins may place trainers and customized messaging NPC. Skill costs increased with level and balanced to encourage specialization.
      • Example: To train"Pickaxe Use" from 0 to 1 cost 16 cobblestone. To train from 15 to 16 cost 640. At level 0 pickaxes degrade 20% faster than normal, at level 20 they degrade about 45% slower.
    • Skills and Effect details are easily found through in-game commands. A general summary of skills is in the post below, along with design goals discussion.
    Players - Getting Started:


    Welcome, Dwarf <whateveryournameis>!
    To get started in a DwarfCraft world, you should know what it is, exactly, that is different.

    Your mining sucks. You get less coal, iron, cobblestone, and gold. Your sword does pitiful damage. Animals don't drop things when you punch them. Falling hurts. A lot. Burning too. Zombies rearrange your face. Dirt doesn't pile up quite like it used to. For some reason when you craft planks you make less. Three sticks too. And less fences and stairs. Also, raw pork isn't very filling. And farming seems totally worthless.

    Guess what? You're a level 0 Dwarf.
    I know it seems awful now, being the brunt of jokes and suffering all that punishment, but I have good news, friend. At least you're not an elf! See, the elves gloat now, with their 1.0 stone drop rate and their filling porkchops, but after you spend the time to level your bowman skill to master and turn their day to night with a hail of 3.5 damage per shot arrows... well, then they'll be sorry!

    The road to mastery may be hard, Dwarf, but the payoff is well worth it- Diamonds dropping by the handful, creepers leaving 5 gunpowder behind with their corpse, your sword dealing double damage to monsters, and cliff falls leaving nary a scratch. Along the way, you may find your calling as a crafter as well. Just as you depend on your friends for supplies, they may depend on your specialties. Craft 4 times as many brickblocks as your neighbor? That's a marketable skill, my friend!

    So off with you, Dwarf, into the wilds of your world (and one day to the Nether, perhaps)! Start by discussing the terms of your advancement with the local trainers. When you've gathered their material demands, sock it to 'em, and see your diligence rewarded with an ever-improving arsenal of advantages.

    Players - Getting the most out of DwarfCraft:

    You'll benefit the most from DwarfCraft by doing two things:
    1) Get your skill levels in the necessities up to a reasonable level. No matter what your playstyle is, you probably want most of the stone and wood skills to 5 (the cost is small and the payoff large). The same is true of climbing and sword skills, or you may find yourself dead much more often than you're used to.
    2) Pick a few activities you love to do and train train train! If you're only marginally better than someone else, they won't have much use in trading with you. Try and get 1 or 2 skills to 20 that you can leverage to gather other valuable materials. If you're a master sailor, don't spend all day mining cobblestone, go sailing on the lookout for pumpkins, mushrooms, and clay. If you're a monster hunter with a bow, 5 minutes out at night is worth far more than the hundred cobblestone you could collect.

    I'm not saying to stop doing things you find fun! Instead, train up the things you find fun so you can do it better and get rewarded for doing it.

    I'll use myself as an example. I far prefer chopping trees to mining for diamonds, and love to chase animals and explore. To support this, I trained these skills above level 5: woodchopping, axe use, woodcrafting, swordsman, animal hunting, and climbing. To shore up some weaknesses, I traded several stacks of logs for several stacks of cobblestone, because I have poor cobblestone mining skill and my friend has poor lumberjack skills. I used the stone to train up the Excavator and Quarry Worker skills to 5, so that I can manage to get cobblestone when i need it, without suffering the very low drop rates at level 0. When I want cobblestone for constructions, its often very easy to find someone in need of wood. I also do woodcrafting (1 log -> 6 planks) in exchange for fee or a cut. When I find a diamond vein while digging, I usually leave it, and sell the location information to a better diamond miner.

    Sometimes, my mining friend(RCarretta) and I will go on adventures exploring underground caves. I'll take the point through natural caves, with sword and bow at the ready, while he harvests the ores we find. When we reach a dead end, we dig in different directions, and take the first new path together. We're able to survive very long times underground with very little additional supplies because I carry extra leather for armor and can handle most creature situations, and his tools last quite a while. High level gravel digging keeps me supplied with flint and decent monster hunter skill pulls a sizable amount of feathers from zombies, which combine to keep my quiver topped off.

    Admins - How to install DwarfCraft
    DwarfCraftV1.04.zip contains updated jar and sqlite file. Do not mix with pre-V1.03 config files.
    DwarfCraftV1.01.zip. Unzip the archive to your CraftBukkit root directory. Use this if looking for a stable build.

    Archive Contents:
    /plugins/DwarfCraft.jar
    /plugins/DwarfCraft/DwarfCraft.config - General server config variables including race names and file locations
    /plugins/DwarfCraft/Messages.config - Configurable plugin messages, such as welcome, info, rules, etc.
    /plugins/DwarfCraft/GreeterMessages.config - Flatfile storage of NPC greeter messages. For version 1.0, greeter messages must be manually added before the NPC is created. Dynamic message insertion is on the roadmap for future versions.
    /plugins/DwarfCraft/skills.config and effects.config - Supported skills and effects. Any change to these may result in unexpected errors. If you would like help in customizing balance for your server, contact smartaleq via PM.
    /plugins/DwarfCraft/dwarfcraft.db - A sqlite database, pre-created empty for you. If you want to reset your players completely, delete this and create a new file of the same name.
    /lib/sqlite.jar - A required library for SQLite to operate

    DwarfCraft has no plugin dependencies, and should play well with others. Some notes:
    • [Econ] Econ plugins are recommended with DwarfCraft. Training for "currency" will not be supported (ever!), so trade, auction, or shop plugins will likely help your players get their hands on those oh-so-valuable pumpkins early.
    • [Mech] Transmutation plugins may conflict, crafting plugins may conflict. Using DwarfCraft with McMMO, Skills, LevelCraft, etc. will likely screw everything up. Other Mech plugins may or may not work. Generally, the more they affect player actions, the more likely they are to cause problems.
    • [Chat] [Fun] [TP] and [Info] plugins should all work without any issues.
    • [Admin] [Sec] and [Gen] plugins will probably work.
    *Warning* Installing DwarfCraft on an existing world where players have large stockpiles of materials may completely screw up the balance of the mod. New or young worlds should be used if at all possible. If your players have every skill at 20 and think that the game is too easy, stockpiles were your problem. You've been warned.


    NO PERMISSIONS WILL BE SUPPORTED UNTIL BUKKIT INTEGRATION. Requests for permissions plugin integration will be ignored (and possibly ridiculed).

    Admins - Getting Started

    First run instructions:
    After you have the DwarfCraft files installed, the first thing you'll need to do for your players to benefit from DwarfCraft is to create trainers.
    Join your server, go somewhere and type: /createtrainer Test1 TestTrainerDummy 1 30
    This will create a new trainer at your location(facing and look-direction) with name TestTrainerDummy, that trains skill #1 (pickaxe use) and can train to maximum level of 30(the max).
    Left click on him to verify skills are loaded.
    Give yourself 16 cobblestone.
    Right click on him to verify training is working.
    Type /skillsheet to verify that your skill increased to level 1.
    /save-all and restart the server. Verify that he is still there.
    type /removetrainer Test1 and verify that he has been removed.
    If you have any problems through this point: pm smartaleq

    Admins - Creating a playable DwarfCraft server

    For your server to have a thriving community of dwarves, you will need to provide trainers for all the skills you want, in enough places to be convenient. You will also need rules that encourage either co-operation or competition for resources. If every player goes after the same skills, the plugin doesn't provide much benefit at all.
    As an example of a working community, the author's server has rules that require all trainers to be in an "appropriate" location, and not a room full of trainers. Most trainers created in the world are given a maximum training level of 15-20, based on where they are created. Only a few level 30 trainers are created. This gives our players an incentive to build impressive things, justifying the placement of "master" trainers. Using remote trainer creation, it is possible for an admin to create trainers without any hassles. As our baseline, each Towny town will eventually have one of every trainer the mayor desires.
    Read the Players sections for more thoughts on what your community may need.

    Admins - Support

    Source Code is available at github.com/RCarretta/DwarfCraft
    Please do not post bugs or feature requests in this thread! Discussion and simple questions are perfect to put in the forum thread. Issues should go in the issue tracker on github- after you've searched to see if it's already there. Please report installation issues via PM to smartaleq

    Changelog:

    Version 1.04
    • Changed applicable sqlite driver.
    Version 1.03 Experimental
    • Added support for multiple races. Add race names to skills.config at the end of each line you want the race to inherit the skill.
    • Skillsheet and other skill commands will have spotty performance until integration is complete.
    Version 1.01
    • Removed player matching debug output.
    • Edited commands in plugin.yml to fix command not found errors
    • Set default debug level to 10, eliminating console spam. If you have reproducible problems, please set debug level to -10 and send in the appropriate sections of your log.
    Version 1.0
    • First published version


    Donations
    skmaster, Dangazzm, Goliathe and 4 others like this.
  2.  
  3. Offline

    smartaleq

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    will take a look. bukkit consistently confounds me with commands
  4. Offline

    inphinitii

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Not sure if this is important or not, but in the /help list, it shows any commands from DC as "Null"

    For example:

    "race: null
    setskill: null"

    etc.
  5. Offline

    Lock

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Suggestions:

    Towny chat link
    When a player achieves a level the members of that players town are notified. Maybe every 5th level in the nation chat. Just something that would enhance the game play

    Fishing
    I second this!
    A fishing skill would be rather useful. With increased 'fish haul'.

    Squid Diver
    A squid divers skill - That allows for either increased haul from squids and/or longer breathing time.
  6. Offline

    vend3r

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    You had mentioned the ability to rename the races, but I do not see the config/setting for that anywhere, is this not possibly yet?
  7. Offline

    smartaleq

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I guess I left them out of the default config. Use these:

    Primary Race Name: Dwarf
    Primary Race Plural: Dwarves
    Secondary Race Name: Elf
    Secondary Race Plural: Elves

    I'm actually working on redoing races based on a suggestion above in this thread, allowing unlimited # of races and each race may or may not have each skill.
  8. Offline

    Janb

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Woo! DC released!

    Okay so, I get crazy errors when I use my existing version of sqlite (I can post them if needed). When I use the DwarfCraft included sqlite, everything runs just fine, except it seems to break Stats (I know someone else had this issue). Here's the error:

    Code:
    11:58:22 [SEVERE] [Stats-0.7] SQL exception: NYI
    11:58:22 [SEVERE] java.sql.SQLException: NYI
    11:58:22 [SEVERE]       at org.sqlite.Conn.prepareStatement(Conn.java:217)
    11:58:22 [SEVERE]       at com.nidefawl.Stats.datasource.PlayerStatSQL.save(PlayerStatSQL.java:34)
    11:58:22 [SEVERE]       at com.nidefawl.Stats.Stats.saveAll(Stats.java:879)
    11:58:22 [SEVERE]       at com.nidefawl.Stats.Stats.access$0(Stats.java:870)
    11:58:22 [SEVERE]       at com.nidefawl.Stats.Stats$SaveTask.run(Stats.java:606)
    11:58:22 [SEVERE]       at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:33)
    11:58:22 [SEVERE]       at java.lang.Thread.run(Thread.java:662)
    
    Is this something I need to ask Nidefawl about, or is this the right place?

    Thanks!

    Edit: Using cb527

    Edit2: Any plans to make the menus/messages configurable? I'd like to change the colors
    around a bit to match the scheme on my server (or is there a way already?)
  9. Offline

    Karinth

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    So if I understand this correctly, you can create NPC's with this plugin, or does it require a separate one? If a separate one, what would it be?
  10. Offline

    Janb

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Noticed if you rename the races in the config file, the defaults still show up in your skillsheet.
  11. Offline

    Grimmkrieg

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Not sure if colours are, but the plain text of the messages should be configurable in one of the DwarfCraft .config files.

    Yes, you can create NPCs. They're very limited in what they do (as they're for the training of individual skills which the plugin adds, obviously.) They aren't like other NPC plugins where you can script them with quests and whatnot... at least, not yet that is.
  12. Offline

    Karinth

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Well as of now, NONE can be scripted with quests
  13. Offline

    Janb

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Aye, there's a messages file, but it's mostly empty. Is it listed somewhere all the proper headers to use? I mean, there's this:

    Code:
    #/dchelp:
    GeneralHelp:
    #/rules:
    ServerRules:
    But I'm not sure where to go from there. Especially if I wanted to change things such as the return from /ss and the text output from trainers.

    Sorry if there's a explanation for this somewhere and I totally missed it...
  14. Offline

    smartaleq

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I've written the colors to be configurable, but I haven't yet written/tested the code to actually configure them. I'll put that on my TODO for V1.1, after configurable races and debugging all the configuration settings in general. Just a heads up, backwards compatibility from 1.0 to 1.1 for settings files may not be maintained.

    Database backwards and forwards compatibility is ALWAYS maintained, don't worry about your trainers and skills.
  15. Offline

    DeNarr

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    So I lost all my trainers after going from v1.0 to v1.01. Was that intentional?
  16. Offline

    SplenectomY

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Adding this to my server in about an hour or so (v1.01), if anyone wants to come try it out. I'll keep it on for the rest of the evening. I'm not changing any of the config. mcserver.teamasshat.com. It's full-fledged RPG/Towny with 4 worlds, 2 of which are free build but they all support Towny and its inherent antigrief. We also have Vampire 1.3 and a whole bunch of others:

    Questioner, Pumpkin Diver, LocalShops, iMonster, AutoMessage, SearchIds, Fluid Dispensers, BackupPlugin, BorderGuard Lite (Square), Vampire, Reserved, MonsterTamer, RemoteToolkitPlugin, Citizens, iConomy, MultiVerse, Cleaner, Lockette, Informant, Towny, Permissions, ServerEvents, WorldGuard, Minequery, NoCheatPlugin, WormholeXTreme, WorldEdit, LWC, TelePlus, HeroBounty, iAuction, HelpPages, MyHome

    See you there!
  17. Offline

    smartaleq

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    When upgrading, you need to be careful not to overwrite your database file. I'll release a separate JAR and install package in the future, to save others the trouble.

    Remember to back up your configs when upgrading, people!
    SplenectomY likes this.
  18. Offline

    juicifer

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Sorry if its a retarded question but where can i see patchnotes for 1.01?
  19. Offline

    inphinitii

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    I decided to sniff out the problem with DwarfCraft and my server, and what was causing the internal errors was Essentials.

    EDIT: If Essentials is gone, the errors will cease. If you could fix this conflict it'd be much appreciated.
  20. Offline

    Evan Melvin

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Yeah, needs a change log.

    Also, implementing this with other npc plugins would be cool. Kinda weird when half of the npcs work in one way and the other half work in a completely different manner.
  21. Offline

    zwarmapapa

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Getting an error:

    Error.png

    help me plox!
  22. Offline

    smartaleq

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    change log added. Looking into sqlite issues and possible conflicts with other sqlite plugins.
  23. Offline

    SplenectomY

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    This is working flawlessly in my server. I encourage anyone to join who wants to see it.

    Also, call me crazy, but I can't seem to find the command to switch to an Elf. How does this work?
  24. Offline

    inphinitii

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
  25. Offline

    neoman321

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Went I started wood splitting I had no penalty, I could craft four of everything. Did you just not get to that yet or is it bugged.
  26. Offline

    Racha

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    This looks so cool, i will test it!
  27. Offline

    Lock

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Request: NPC name fade

    Looking to get the feature of the npc names disappearing when you are out of range of them. Trying to make it so that you have to explore a dwarf fortress to find the trainers. And with the names semi visible, it makes it too easy.
  28. Offline

    DeNarr

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Is there a way to make everyone start at level 5? Or put another way, to have level 1 not penalize people? My players like the idea of improving, but not being penalized to start with.

    Also, my players seem unable to become elves.
  29. Offline

    neoman321

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Never mind its working
  30. Offline

    Janb

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    Also interested in this too, my guys have the same concern. Maybe a way to set the default race other than Dwarf? I'm guessing that might be included in the customization update, but worth mentioning.
  31. Offline

    Daveyo

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    same sqlite conflicts. If i use my default one i get huge errors with dwarfcraft, if I use dwarfcrafts I get many less errors with dwarfcarft, but it shuts down several other mods
  32. Offline

    Evan Melvin

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Minecraft account:
    MCUSERNAME
    That's client-side; can't be done.

Share This Page