[INACTIVE][FUN/MECH/RPG] EasyRPG v0.9.7 - The easiest RPG plugin you'll use! [928]

Discussion in 'Inactive/Unsupported Plugins' started by Mark Lohstroh, May 4, 2011.

  1. Offline

    Mark Lohstroh

    EasyRPG - Version: v0.9.7

    I am now going around and visiting public servers with my plugin. So if you want me to visit your server and get ideas from your people on your server please message me! I love doing it.


    This is an easy RPG plugin (hence the name). There are currently four classes. Warrior, Mage, Rogue, and Archer. For each class there are two stats. A primary stat and a secondary stat. Each class has their own skills. Skills and stats will be explained below.

    • /rpgstats - Displays your level, primary and secondary stats and current mana
    • /points - Displays your points that you can distribute
    • /class - Lists classes you can chose from or displays your own class
    • /class [class_name] - Chooses your class
    • /points [1 or 2] [points to add] - Adds points to your primary [1] or secondary [2] stat
    • /xp - Displays how much XP you have left till your next level
    • /skill - Skills you've unlocked and lists their mana requirements
    • /skill [skill_name] - Switches your skill to that skill (Skill names are case sensitive)
    • /changeclass [class name] - Changes your class but cuts all your xp and stats in half!
    • /reloadrpg - Reloads all the constants and properties files
    • /resetplayer - Removes the player from the database allowing him to start over
    Download the Plugin

    Download SQL Lite Put in the same directory as bukkit.jar

    Requires Permissions,

    Nodes: 'easyrpg.canrpg' for normal users and 'easyrpg.canreload' for OP's

    Source Code

    Admin Info:
    The plugin creates a EasyRPG.config file where it includes customizable xp values when you kill or break blocks. For now, don't add in any extra blocks because I haven't put in any block ID recognition yet.

    Stat Info:
    When you attack, the damage dealt to the mob/player goes like this.

    initial damage * 1.03 ^ firstStat

    And defense goes like this

    1.06 ^ secondStat

    Very Simple

    When you level up, your mana will go up also. It goes up as much as your first stat.

    Mana regenerates every second and more regenerates when you add points to your second stat.

    All mage skill are used by a right clicking when holding stick (Wand or Redstone Torch). Archery skills work when you shoot an arrow. Depending on what your current skill is thats what will happen. Warrior skills are mostly passive. Leeching health is the only thing thats not passive. And it happens when you hit someone.

    Configuring Skills:

    To configure a classes' skill, you need to open up their config file. In there, you'll find the default skills. To make your own skills, you'll need to follow the format. The format should be included in the config file but here it is for reference anyways.

    The format goes like this [level of skill]:[skill name]:[skill effect]:[skill effectiveness]:[mana needed]

    So and example for a weak fire ball would be. 1:Weak Blast:fire:1:20

    [level of skill] is just what level the player needs to be.
    [skill name] is the name that the user will have to type in to switch to that skill
    [skill effect] is the effect that the skill will have on impact. They are pretty easy to figure out.
    [skill effectiveness] is basically how hard the skill will hit. You can currently only put 1 or 2 in here currently. But a 2 will have more effect than a one basically.
    [mana needed] is just the amount of mana needed to cast a spell.

    Skill Effect List - These are the exact effects that need to be put into the config file
    Show Spoiler

    Warrior - Can only use swords
    • att_up - Passively increases warriors attack
    • resist - Resists any skill effect cast on the warrior. The mana for this should be decently low to make the warrior a more appealing class. Note: Skill effectiveness will not change the efficiency of the skill.
    • leech - Leeches health
    Mage - Can't use a bow or above an stone sword
    • fire - Casts a fireball at the user, only catches on fire if the spell hits
    • heal - A healing spell. Note: The efficiency if this spell should be set to 1 and the priests heal set to 2 just to make the priests a bit nicer.
    • lightning - Casts one or five lightning bolts on the entity if the spell hits
    • explode - Creates an explosion if the spell hits the entity
    Archer - Can't use above an stone sword
    • fire - Same as mage, only if the arrow lands
    • lightning - Same as mage
    • poison - Right now, catches the user on fire for so long. So less powerful than the fire arrow.
    • explode - Same as mage
    Rogue - Can use bows and swords
    • vanish - Lets the user vanish from sight and do anything he likes. Until he reappears. Used by sneaking
    • trap - Traps the user in a spider web so the rogue can finish them off
    • poison - poisons the hit entity
    Priest - Can't use a bow or above an stone sword
    • cure - Cures the user if the user is on fire.
    • group_heal - Heals everyone in the priests range. ALSO HEALS OTHER PEOPLE ALSO
    • heal - Recovers a certain amount of health. Note: Efficiency should be set to 2
    • barrier - Puts up a 3X3 barrier of cobble stone for protection. Note: Skill efficiency has no effect on this
    • passive_heal - When this is the priests current skill, and mana permits, the priest will regain health over time
    • cure_all - Cures everyone in the priests range of fire

    Known Issues:
    • People can work around the weapon restriction. (will be fixed in v0.9.7)
    • Fishing rods have the same effect as a arrow if the player is an archer
    • Switch from sqlLite to mySql

    Show Spoiler

    Version 0.9.7 - MORE BUG FIXES!

    • Permissons support has been added! 'easyrpg.canrpg' for normal users 'easyrpg.canreload' for OP's​
    • Stat names now change along with the class​
    • Invisiblity issues are fixed​
    • The book scrolling is finally fixed, NOTE: In order for this to work correctly, in the config file, you must line the skills up going from lowest level needed to highest level needed.
    • Leech SHOULD be fixed.​
    • Monsters are nastier and you can now defend against them​
    • Block xp should scale now.​
    • Fixed the stats disappearing and reload issues. You can now use /reload all with my plugin!​
    • Fixed the healing players when you attack them. (Thats probably why you couldn't kill anyone :p)​
    Version 0.9.6 - Mainly just a bug fix update
    • Hopefully fixed the disappearing info for the players NOTE: Not completely
    • Priests' barriers only last for 30 seconds
    • The stat system has been redone.
    • Monsters are now more powerful and you will now have defense against them.
    • Added more commands, allows for my plugin to reload my constants
    • CHANGED THE .CONFIG FILES TO .PROPERTIES YOU MUST SWITCH THE STATS OVER. This change was made due to some ftp clients not being able to handle .config files.
    • Changed /add to /points
    • Fixed the healing issues and mana draining NOTE: Nope...
    • Group xp now hopefully working ;)
    • Half step disappearing when lit on fire SHOULD not happen now.
    Version 0.9.5
    • Fixed the rogue reappearing bug
    • Xp now scales up when you are a higher level
    • Fixed stupid typos in my source
    Version 0.9.4
    • Added priests and rogues
    • Added skill effects for priests and rogues
    Version 0.9.3
    • No more sneaking for mana. Mana regens every second
    • Heal actually heals
    • Effect group_heal has been added, not tested yet.
    • Inventory null pointer fix
    • mcMMO compatible
    • changed /stats to /info
    • A redstone torch now acts as a wand
    Version 0.9.2

    • Bug fixes!
    • No more negative mana
    • Fast skill switching via right clicking while holding a book.
    • Found bug that i was surprised that no one complained about...
    • You will find a rouge.config, but don't screw around with it, it won't get you anything and you can't choose it yet. Thats in v0.9.3
    • I toned down the attacking a LOT. So all damage dealt is now multiplied by 0.2 so we don't have someone how just boosts his first stat a ton.
    Version 0.9.1

    • Fixed issues with fire destroying non-air blocks.
    • Fixed the calculations for damaging mobs.
    • Removed the weapon just disappearing and reassigned it to another empty inventory slot.
    • All skills are customizable and scalable! They are in their own config files in the EasyRPG directory
    • All you need is the jar file to run the plugin now. The plugin will take care of the rest.
    Version 0.9
    • Published the plugin

    This plugin may not be worth donating towards yet, so thats ok. Don't feel obligated.

  2. Offline


    how can i use the Fireball?


    oh, i know it now, it's use the wand ._.

    i really like this plugin
    thank you
    but fireball will break the Rails, Ladders, Stairs
    i hate this bug
    sorry about my English

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 15, 2016
    TOM1234 likes this.
  3. Offline


    I am interested in this plugin as I have been looking for an RPG plugin that is very simple and is based solely upon killing stuff. The grinding aspect of other RPG plugins is completely unappealing. That said, this needs more configuration options before I can use it. I need the ability to remove or possibly add abilities, change the cost of abilities, change classes, etc.
  4. Offline


  5. Offline

    Mark Lohstroh

  6. Offline


    title lacks the craftbukkit recommended tag, like [740], which really is the only thing I cannot edit myself for you sine I do not know what you tested.
  7. Offline

    Mark Lohstroh

    I pulled from the git repo.... so i'm assuming that latest?


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


    Please test against recommended builds not development ones (git repo).
    moved to releases
  9. Offline


    cool ty man
  10. Offline


    REQ: Custom messages so ppl could translate to their players language
  11. Offline


    I am running an up-to-date server and bukkit. I just installed this plugin and am unable to choose a class. The commands "/stats" and "/class" are responsive in that they return information, but using "/class Archer" for instancedoes nothing, and does not return anything.


    I believe the problem has to do with the way my server host handles their plugins. I don't actually have the freedom to create the folder (EasyRPG) that is needed, so my config file creation fails. Any chance you could add a check for that folder and create if missing?
  12. Offline


    Yo, i guess you can fix the problem with the disappearing items by looking into Residence's code. When you try to use a block, that is restricted, it moves it to a different inventory slot.
  13. Offline


    this plugin looks pretty cool, it's simple and easy to use.
    I'm going to test it :D
  14. Offline


    How do you use a skill?
  15. Offline

    Mark Lohstroh

    It depends on what skill you want to use. All mage skill are used by a right clicking when holding stick (Wand). Archery skills work when you shoot an arrow. Depending on what your current skill is thats what will happen. Warrior skills are mostly passive. Leeching health is the only thing thats not passive. And it happens when you hit someone.
  16. Offline


    Looks like a great plugin! Maybe you could add a better stat system like the "Rifts" plugin. You have certain stats that you can raise such as agility,strength,intelligence,etc. Also the more stats you have in that element could make it so you do more damage. (Lets say intelligence is fire, so the more intelligence you have the more fire spells damage does)
  17. Offline


    Alright, thanks. Simple enough, I would suggest you put that in the main post.

    I think it would be better if you would just have a level-able spell stat instead of an arbitrary and confusing intelligence to fire stat.

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


    Why not have both?
  19. Offline

    Mark Lohstroh

    That will come out in my next release. Which will be soonish... (I hope). I'm programming it now. But i'm assuming that you need root user permissions to do that. And I've noticed that when I create that directory with root perms, I have issues reading the file for whatever reason. I'll be fixing it don't worry though. Sorry for being too lazy to put one line of code into my plugin :p

    Thanks for the idea :D I was really hating that I just made the item disappear.

    I like what the Rifts plugin guy did but I thought it was a bit too much micromanaging going on. So I thought that only two stats would be nice and easy to handle. And the way i've set it up is so all the stats balance everything. Mana gained each level is based off first stat. And then Mana regen is based off your second stats. And attack and defense respectively :) So once I had that kind of structure going, I just stuck with it cause it seemed to be working.

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


    I really agree with that, though his coding is insane and awesome, you basically can't use it on anything but a brand new, rift-specific server.
  21. Offline


    OMG this is just like herocraft. Thank the lord you made this. This is amazing.

    EDIT: This is 2 time better than Rift plugin.
  22. Offline


    The Rift plugin is good, but 3 worlds is way to much resources,

    on the contrary EASYRPG will be used for Sitcraft ;)
  23. Offline


    I think it was this plugin that made mobs almost invinsible. I cant kill a mob on my server now. Since I edited the config.
  24. Offline

    Mark Lohstroh

    I think you mean invincible. And you have to choose a class before you go kill mobs. otherwise no damage is dealt. I'm tossing around the idea if I want to leave that in or not. Cause it is annoying but at the same time it FORCES everyone to choose a class. Type /class [class name] to choose your class. Then go to town at killing mobs. And I'm rolling out another version soon. Making skills customizable and correcting a couple of calculations.
    kahlilnc likes this.
  25. Offline


    kay thanks but everytime I reload it resets everything can you add autosave to db every interval or is there already?
  26. Offline

    Mark Lohstroh

    When you say reload what exactly does that mean? Is it giving you error messages? Or just resetting all your stats? Can you give me a log? The database is set to only load/save on player logins, player quits, and server shutdown.
  27. Offline


    Either the /xp command isn't working for me or the xp system isn't working. When I type /xp it tells me "an internal error occurred while attempting to preform this command". So, to test if the xp system was working I gave myself 20 diamond blocks and destroyed them, but I'm still level 1. I can post the error messages if you would like. But this plugin sounds amazing and I'm really excited about it.
  28. Offline

    Mark Lohstroh

    Post the errors please. I need to see where the error has occurred. I haven't fully tested block busting yet.
  29. Offline


    I mean when I do /reload command.
  30. Offline


    The /xp error message is
    06.05 02:14:14 [Server] INFO ... 12 more
    06.05 02:14:14 [Server] INFO at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
    06.05 02:14:14 [Server] INFO at com.ninename.easyrpg.EasyRPG.onCommand(EasyRPG.java:110)
    06.05 02:14:14 [Server] INFO at com.ninename.easyrpg.RPGPlayer.xpNeededTillNextLevel(RPGPlayer.java:264)
    06.05 02:14:14 [Server] INFO at com.ninename.easyrpg.EasyRPG.getXP(EasyRPG.java:286)
    06.05 02:14:14 [Server] INFO Caused by: java.lang.NullPointerException
    06.05 02:14:14 [Server] INFO at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    06.05 02:14:14 [Server] INFO at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:285)
    06.05 02:14:14 [Server] INFO at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:370)
    06.05 02:14:14 [Server] INFO at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
    06.05 02:14:14 [Server] INFO at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:74)
    06.05 02:14:14 [Server] INFO at net.minecraft.server.NetworkManager.a(NetworkManager.java:195)
    06.05 02:14:14 [Server] INFO at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:32)
    06.05 02:14:14 [Server] INFO at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:634)
    06.05 02:14:14 [Server] INFO at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:640)
    06.05 02:14:14 [Server] INFO at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:677)
    06.05 02:14:14 [Server] INFO at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:255)
    06.05 02:14:14 [Server] INFO at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:85)
    06.05 02:14:14 [Server] INFO at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
    06.05 02:14:14 [Server] INFO org.bukkit.command.CommandException: Unhandled exception executing command 'xp' in plugin EasyRPG v0.0.1
    06.05 02:14:14 [Server] SEVERE null

    The block error message is
    06.05 01:43:42 [Server] INFO at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    06.05 01:43:42 [Server] INFO at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:285)
    06.05 01:43:42 [Server] INFO at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:370)
    06.05 01:43:42 [Server] INFO at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
    06.05 01:43:42 [Server] INFO at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:74)
    06.05 01:43:42 [Server] INFO at net.minecraft.server.NetworkManager.a(NetworkManager.java:195)
    06.05 01:43:42 [Server] INFO at net.minecraft.server.Packet14BlockDig.a(SourceFile:42)
    06.05 01:43:42 [Server] INFO at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:436)
    06.05 01:43:42 [Server] INFO at net.minecraft.server.ItemInWorldManager.b(ItemInWorldManager.java:118)
    06.05 01:43:42 [Server] INFO at net.minecraft.server.ItemInWorldManager.d(ItemInWorldManager.java:156)
    06.05 01:43:42 [Server] INFO at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:257)
    06.05 01:43:42 [Server] INFO at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:59)
    06.05 01:43:42 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader$33.execute(JavaPluginLoader.java:400)
    06.05 01:43:42 [Server] INFO at com.ninename.easyrpg.XPBlockListener.onBlockBreak(XPBlockListener.java:27)
    06.05 01:43:42 [Server] INFO at com.ninename.easyrpg.EasyRPG.getXP(EasyRPG.java:286)
    06.05 01:43:42 [Server] INFO java.lang.NullPointerException
    06.05 01:43:42 [Server] SEVERE Could not pass event BLOCK_BREAK to EasyRPG

    It's in reverse order because the people who host my server do it that way.

Share This Page