[FUN] DnDCraft v1.4 - The Essential d20 Plugin [1000]

Discussion in 'Inactive/Unsupported Plugins' started by Kevin Forte, Apr 16, 2011.

  1. Offline

    Kevin Forte

    DnD Craft: The One and Only D&D Plugin
    ~Version: 1.4~
    Download: [JAR]

    During the time I have spent amongst the Bukkit community, I have encountered people of all ages from all across the world. Based on that knowledge, I made the assumption that Someone (other than myself) must play Dungeons and Dragons (even if they are too afraid to admit it). Therefore, I have began working on this plugin, that will (hopefully) make your life slightly easier and less paper-based through the use of Minecraft.

    Features:
    • Rolling a simple d20.
    • Rolling a d2-d100.
    • Rolling a d2-d100 and adding a modifier.
    • Rolling multiple dice at once.
    • Each user can define skills and their modifiers for said skill.
    • Rolling for a skill rolls a d20 and adds the predefined skill modifier.
    • If a skill has a difficulty class set by the DM, rolling for it will tell you whether you passed or failed the check.
    • Tells you when you've rolled Natural 20s or Critical Fumbles.
    • Broadcasts rolls over the server, so no fudging rolls.
    • A permission-node-based /rollhide command, for secretive DMs that don't want players seeing their rolls.
    • A permission-node-based /skilldc command, for DMs to set the difficulty class of a skill roll right before it happens allowing for instantaneous pass/fail results.
    • EXP and Health management
    Commands:
    [] = Necessary Argument
    {} = Optional Argument
    ** = Requires Permissions

    • /roll {#2-100} {any number (first argument is necessary if using this argument)}
    This command is the basic roll. If there are no arguments, it rolls a d20 by default. The number 2-100 will change the die (i.e. '/roll 6' rolls a 6-sided die). The second number will add a modifier (i.e. '/roll 6 1' will roll a 6-sided die and add 1 to the result).
    • */rollhide* (All the same as /roll)
    This command is the same as '/roll', except only the user that issued the command will see the results as opposed to the results being broadcasted over the server. This command requires a permission.
    • /rollmult [amountofdice] {typeofdice} {modifier}
    This command is used when rolling multiple dice at the same time. The first argument is the amount of dice to roll. When only this argument is used, the type of dice defaults to 20 and it does Not add the results, instead listing them as if you had used /roll multiple times. Adding the type of dice defines the dice that is being rolled the number of times defined by amountofdice. Adding this argument results in the numbers being summed up to get a total. Lastly, you can add a modifier to the entire roll (Useful for damage rolls, such as 2d6+3).
    • /skill [skill name (Not case sensitive)] {any number}
    This command sets the values of the modifiers of your skills. For example, '/skill spot 4' will set the value of the modifier for the Spot skill to 4. Leaving off the second number will default a skill back to 0.
    • /rollskill [skill name]
    This command will roll a d20 and add the modifier for the skill you defined with '/skill'. Again, the skill name is not case sensitive.
    • */skilldc [skill name] [difficulty class]*
    This command allows DMs to set the difficulty class on any skill. If you want to turn off the difficulty class for a skill, simply leave off the difficulty class argument.
    • /health [amount] *{player name}* ~ */exp [amount] [player name]*
    The health and exp commands allow DMs (or players, in the case of /health) to modify health and exp values of players. For instance, if a player has 10 health, "/health 5 (name)" will set their health to 15. "/health -5 (name)" will set their health to 5. The same goes for exp. Players can modify their own health, but DMs must modify their EXP values.
    • /healthset [amount] *{player name}* ~ */expset [amount] [player name]*
    /heathset and /expset are similar to /health and /exp, but will set (as opposed to modifying) health and experience respectively.
    • /healthcheck *{player name}* ~ /expcheck *{player name}*
    Simply returns the value of a player's experience or health. DMs can check the values of other players as well.


    To-Do:
    Show Spoiler

    *Please bear with me with me on these, I'm brand new at Java and plugin developing, so this is more a list of my ideas or the ideas of others than an actual list of what I am currently capable of. xP
    • Rolling multiple dice at once.
    • Possibly the ability to add your previous roll (/rolladd)
    • Implement setting base attack bonuses. (/skill bab)
    • Rolling for attack with certain items in your hands adds the bonuses for different weapons automatically.
    • A command log, so DMs can make sure the roll commands are actually being rolled and someone isn't just taking (too much) time to format their own messages to look like the command.
    • Setting a block as a "trap block", so if a player isn't careful they can set off traps. Notification that a trap was set off would be sent to the DM only.
    • Allowing a DM to type /rollfor [skillname] {playername} to automatically roll a skill for the player. If playername isn't defined, it will roll the skill for all players. (Useful for initiative checks or reflex saves)
    • /skill list {playername} will display all of your currently set skills or the skills of the defined player (if you have the proper permissions).
    • /skill del [skillname] to get rid of skills from your skill list (Would take care of skills created via typo or something).
    • Health monitoring
    • Skill DC setting (thanks to Phealoon!).
    • I don't know, you tell me! (This is my first plugin, so I'm sorry if I can't make it hardcore enough)


    Permissions:
    Show Spoiler

    The node for basic use (Everyone must have this node, even the DM):
    Code:
    DCraft.use
    The node for DM specific functions:
    Code:
    DCraft.DM


    Changelog
    Show Spoiler

    v1.4:
    • Updated permissions and added a universal node for plugin use.
    v1.3:
    • Added Health and EXP management.
    v1.2:
    • Added the ability for DMs to set the DC (Difficulty Class) of skills, and a [PASS]/[FAIL] result on /rollskill if a DC for that skill exists.
    v1.1:
    • Added ability to roll multiple dice at once.
    v1.0:
    • Released the plugin, duh.


    Special Thanks To:
    retsrif - For getting me started with the plugins in the first place.
    rcjrrjcr - For dealing with my slow noob syndrome for a couple of hours over IRC to walk me through the skill database setup.
    Quite a few other people, basically most of the #bukkitdev room. If I didn't mention your name, thanks to you too!
     
    svict4 likes this.
  2. Offline

    FortuneNL

    Seems real good! What do skills do? :S
     
  3. I will try it out now!:D
     
  4. Offline

    Mooee

    Almost seems like minecraft is made for this, haha, just told my dad about this and he got all giddy. So with that in mind, I would suggest going forth and implementing the whole game in minecraft; DM's (I think that's what they're called, ha) could create their own dungeons with specific mobs in them, create character sheets equipment lists ect, and integrate a per-game chat system. I think it'd be kinda sweet to have an optional gamemode inside of survival like this.
    Made an account just to post this, btw.
     
  5. Offline

    Kevin Forte

    Well the skills do nothing to affect Minecraft (sorry about that xP) but if you've ever played D&D there are a ton of skills and rolling for them if a pretty key component.

    Tell me what ya think, and if you have any suggestions let me know :)

    Ha, that's awesome! Actually, moving the game into Minecraft is why I started working on this. My DM (who is also my art teacher) was looking for a way to make visual representation of the rooms easer. I suggested using Minecraft, and he didn't like the idea at first since he's all old-school about the game (paper ftw) and so I made this plugin and a test dungeon to show him how it could work. I don't think I plan on using mobs, but I have a lot of other stuff in mind :p
     
  6. Offline

    MJRamon

    It's good, but don't forget, that players and mobs can walk specific amount of blocks, only on their turn.
    I think, this is hard to do in multiplayer Minecraft :(
     
  7. Offline

    Kevin Forte

    Yeah, some stuff will be impossible. I don't plan on moving the entire game into Minecraft, just most of the visual representation stuff. I wouldn't want to move the Entire game, because that would ruin the fun of using your mind to play the game. The picture in my head I have is of using Minecraft during gaming sessions, where the DM will still narrate and explain where the monsters are etc. while Minecraft allows players to freely explore the rooms they are in between combat.
     
  8. Offline

    Mooee

    I like your idea, sounds like it's ment to keep people involved (instead of having people alt+tab or go grab a snack and come back all "wtf"). Still, seems like it could be more immersive, maybe not use the mobs themselves but models or something as representations thereof. As for restricting player movement, I assume it would be possible to have specific localised air blocks "lock up" to disallow player movement, or have a glass cage put around them (I've seen the glass done in a few mods, so I know it's possible); the problem would lie in counting the player steps/distance, I guess you'd use a certain radius.
    Edit:
    Please say there'll be trap blocks. :p
     
  9. Offline

    Sleepywalker

    I have a good idea for monsters and how to represent them (Yes I play D&D a lot.) All you would need to do would be to do a quick redesign of your texture pack pictures and (For example change donkey kong into picture of a Dragon) all you would do is design the base monster with stone blocks or whatever, then move that particular piece around with worldedit.
     
  10. Offline

    rcjrrjcr

    Congratulations on having DnDCraft accepted!
     
  11. Offline

    Kevin Forte

    Thanks :D

    See, that's where I think stuff get's too complicated; trap blocks will definitely be implemented eventually, but I don't know about combat related things; that might be where your imagination takes over and just bases it's construction of the room off of what is built in Minecraft.

    The base monster idea is a good one, since I was thinking DMs could just setup little stacks of stone with signs on them to represent where monsters were originally xP /monster [monstername] is what I had in mind, so it created the little figurines for you. That will be a little ways in the future though as that would involve the use of a config file that defined how things were built (sort of like TentThis) and goes Way past what I know how to do.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 13, 2016
  12. Offline

    meltedt0aster

    Wow, this is amazing. I was just talking to my friends about trying to make a plugin like this. I play D&D alot and this would make alot of things less time consuming.
     
  13. Offline

    Kevin Forte

    Sweet :D Hope all goes well for you with it. Let me know if you have any suggestions.

    Multiple dice rolls has been added :) Enjoy.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 13, 2016
  14. Offline

    darklust

    Epic plugin man, keep up the good work.
     
  15. Offline

    Kevin Forte

    thanks much :p
     
  16. Offline

    Mooee

    Haha, well you got me there. I tend to think too... Optimistically. You're probably right in keeping that part out of it; I was mainly concerned with player loyalty. (What's to prevent them from scewing it all up by destroying key blocks or letting a lava flow loose?) I do like the idea of having stone pilars with signs on them, quick and clean.
     
  17. Offline

    Kevin Forte

    Optimism is great, I'm just sorry my Java skills aren't up to par with that optimism :p I'm sure some sort of zone protection could be used to keep blocks safe. When I do eventually use this for my group (need to ge people set up on minecraft first), I'm sure it will simply be honor code. DM says don't break sh!t, then don't break sh!t. :p
     
  18. Offline

    Phealoon

    I am creating an RPG server and have been playing RPGs for almost 20 years off and on. This has a lot of potential and I am very impressed. I will try this out and if I have any more ideas, I will be happy to share them.
     
  19. Offline

    Kevin Forte

    You are a prime example of the crowd of people I thought might really enjoy this. Let me know what you think, and definitely feel free to submit any and all ideas :)

    Updated to v1.2, implemented setting a skill check difficulty class for DMs that don't feel like comparing every single player's individual skill rolls themselves. x)

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 13, 2016
  20. Offline

    Mephestrial

    I like the idea, but a couple of the commands could be merged into a single "/roll [amountofdice] {typeofdice} {modifier} {hide}" with "typeofdice" defaulting to 20, "modifier" defaulting to 0, and "hide" defaulting to false.

    Some stuff for Armor Class, Attacks Rolls, and Damage would be a nice addition to this plugin (if automated of course with values in a config file for each weapon, armor and creature).
     
  21. Offline

    Kevin Forte

    I don't think I'm going to merge the /roll and /rollhide commands, because if I do then to hide a roll you will have to go through each of the commands preceding arguments (to roll a hidden d20, you'd have to do '/roll 20 0 hide' as opposed to '/rollhide'). Same goes for rolling multiple dice, the arguments would make that more obnoxious than simply remembering one more command. I believe I will be adding a /rollmulthide command though, and a list of all commands that is accessible in game with /rollhelp.

    In a nutshell, it's a choice between a lot of arguments or a lot of commands. Personally, I'd prefer more commands.
    Persistent Health and Experience will both be added in the next update (if that's what you meant by damage) and the config file will come in the future, because that seems as though it'd be a big step for me. Until then, Armor Class will probably be handled similarly to skill DCs. A /attack command will be added to set BAB and a /rollattack command will be added to roll for it, checking against the currently set Armor Class.
     
  22. Offline

    Trucido Mortis

    Whats the skill list, and what do said skills do?
     
  23. Offline

    Kevin Forte

    The skills can be whatever you want, there is no defined list, and unless you play D&D, I am sorry to say they do nothing. They allow for quick rolling of said skill against a set Difficulty Class for skill checks. If you do not play D&D, that probably made no sense at all.
     
  24. Offline

    Kevin Forte

    Updated to 1.3, Health and Experience management added.
     
  25. Offline

    transient

    Would it be possible to have permissions added for roll commands? I love the plugin but sometimes people spam chat with rolls so I have to disable it.

    Thanks
     
  26. Offline

    Kevin Forte

    Well that's obnoxious. I can definitely do that.
     
  27. Offline

    transient

    AWESOME! Thanks, it'll help us out a ton!
     
  28. Offline

    Kevin Forte

    @transient
    Updated to 1.4, added a universal use permission node.
     
  29. Offline

    transient

    You're awesome!!
     
  30. Offline

    Kevin Forte

    :D Why thank you sir.
     

Share This Page