[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


    Mark listen now.
    Make fast switching with skills, make a rouge class with stealth, make a seperate healing class...
    If you do this will be in top 5 bukkit plugins mate :)
  3. Offline


    Factions has been 733 for almost 2 weeks+ and the dev stopped replying to the thread.
  4. Offline


    An idea I had is to maybe have a messages sent to the user as their mana is recharging. I know this could get a little spammy but at the proper interval might not be to bad. Also, the xp requirement on the first couple levels may be a little low.

    I don't know if you are wanting a level "cap " or not but thats something else you might want to consider.
  5. Offline


    Ooo, maybe could have for priests and mages, if you stand on an iron block your mana charges 2x faster. As in example, if you were charging 8 mana per charge, if you charged on an iron block it would charge 16 instead.
  6. Reccomendations:

    Class change cost: Maybe a 50% exp loss for changing class? (or set % depending on configuration, and would obviously de-level the player depending on the current exp) Or if iconomy is ever made compatible, money-loss feature (can be optional for people without iconomy) Another option could be that the player requires a certain amount of a certain item (defined in config) such as the player needs 10 diamonds in their inventory (or hand) to change class. (players may also need to be in a specific place to be able to change class)

    Block Exp: such as you can set a block to give a certain amount of exp when right clicked by the player, for example, an admin can look at a block and write "/expblock 300" to set 300 exp on that block and the player can only get the exp once from the block, would be a nice feature to add so players can do quests and such and get an exp reward at the end. (also a "/expblockremove" to remove the exp block, although it would probably be easier to just destroy the block and add a new one :p)

    Player Death: Possible exp loss on death? Also if another player is killed (possibly from the opposite side good/evil if factions are added) you can gain exp from them which varies depending on their level, for example, player level 1 = 10exp, player level 10 = 100exp.


    Players can make a team, which could possibly have any or all of the following:
    • Team chat
    • Shared exp
    • Team ability's
    • Zones that require certain number of players in a team to enter
    Commands would be something like:
    • /team create (the person who creates the team is the team leader and can kick/invite)
    • /team invite [player] (invites player)
    • /team kick [player] (kicks player)
    • /team leader [player] (passes leader to player)
    • /team quit (player quits team)
    • /team disband (disbands team)
    If factions are implemented then:

    Faction Perks: Both factions give a different benefit, for example, Evil = Slight HP Heal when mob/player/animal has been killed.
    Good = very slow HP-regeneration over time (assuming the factions is implemented, plus these are just example perks)

    Neutral Zones: Zones where the players cannot attack each other (or will not gain/lose exp from killing/death) which would stop players from killing each other in dungeons/quest locations/towns. (although the PVP off part could just be done using izones and flagging PVP, thought I might as well recommend it)

    Faction PVP optional: Players can choose whether to enable PVP with opposite faction members, something like /pvp [off or on] (would only become affective after 1minute to avoid people using it to run from fights and going straight back into a fight after healing) Both players would need to have PVP on to be able to attack eachother.

    Faction Tag: Depending on the chosen faction a tag will appear above a players name to make other players aware, such as Good = Green "Good" above head, and Evil = Red "Evil" above head

    Editable Faction Names: Allow the admin to change the name of the factions in the config, to apply to the servers story/idea, or just for fun. (and possibly the colour of the tag if that is enabled too)

    Separate Faction Spawns: Pretty much in the name, 2 different spawn locations, one for each faction.

    These are just recommendations I know this plugin's pretty new and that I probably shouldn't add recommendations so early but I thought I might as well do it now rather than later.

    P.S Loving the plugin ;D
    You should really add a donate button.

    And fast skill switching ideas, would something like /s[number] like "/s1" = skill 1 and so on, be efficient or were you thinking of something non-text based like mouse scroll (I know that changes item's in hotkeys so wouldn't work, just asking)
  7. Offline

    Mark Lohstroh

    I'll note the message regarding mana recharging, and as for the level "cap" there is a point where the xp needed is just incredibly ridiculous. You'll see that when it comes to level 20ish :p

    Maybe, I gotta first put in the rouge and priest.
  8. Offline


    Can't wait if you can, get mcmmo to work with this :D.. but skills are a little lacking atm, like you said have some skills in the incredibly high levels it would keep players happier longer.

    Can't wait till v1 :D
  9. Offline


    I'm liking your ideas :) Nice post btw, looks like you put a lot of time into that one :)

    Hi there :)
    I think I found how to fix the xp problem for now! A temp fix for me is to add a mysql.jar into the main minecraft server folder, you can get the jar from the iConomy plugin page HERE.

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

    Mark Lohstroh

    Yes, it is very very buggy. Hence its not at version 1.0 yet. Negative mana is fixed in the new version (that was a stupid return statement that i missed) >.>

    And yes, warriors are REALLY powerful right now, and thats cause i wanted to make them sound appealing so people would actually choose them. And i'll make their powers a bit toned down. Actually I'm going to turn EVERY damage dealt down so people can have more fun and a better chance. So this plugin is still experimental. Actually very experimental

    ETA: Next two weeks. :/

    First off, WOW. Thanks for putting some thought in this. I'm copying all of this into my notes right now :)

    What you posted is what I do want my plugin to eventually look like(with a couple minor changes/additions).

    And as for the donate button, I dont' want to put that in JUST yet. Mainly cause I'm not doing this for the money. I'm doing this because I love minecraft and I love you guys. It'll come eventually when I think its "worthy" of being donated to(Meaning when you guys don't have to struggle with bugs).

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


    AWE :D <3
  12. Offline


    Great plugin. But very bugged. Sometimes I get negative mana and negative xp. The archer is really bugged, dexterity and arrows dont seem to work. And the whole point about sneaking giving mana is annoying me. Also it is very unbalanced, a Warrior can easily one-shot someone with fists.

    Here is my suggestion:

    Fix the bugs
    Make milk grant mana, and not sneaking.

    Thanks for the advance
  13. Offline

    Mark Lohstroh

    Thanks for the feedback and the bugs are being fixed.
  14. Offline


    I think the negative mana only comes in when the exp ratio is set to a high amount of exp gain.
  15. Offline

    Mark Lohstroh

    Not exactly. But I have fixed it for good. Like seriously this time. ;)
  16. Offline


    I hope everthing piratescott suggested, the balance issues fixed, and mana regen with milk gets implemented very soon. It is a really good plugin.
  17. Offline


    Mana regain with milk is a GREAT idea. I wonder why I didn't think of that :( I hope Mark puts it in ;) maybe I could help him.. I'm learning java now -.- Gosh what a confusing language.
  18. Offline


    If you think Java is confusing, you should try C++. Java is the most easiest language to code IMO.
  19. Offline


    well it's a big step up from python :I
  20. Offline

    Mark Lohstroh

    Hey, look! I put out a new update!
  21. Offline


    How do a Mage use Heal?
    It still hurts other when i type /skill Heal
  22. Offline


    Please make a video or at least pictures.
  23. Offline

    Mark Lohstroh

    The video will come soon. I just want the plugin to be a tad more stable and I want all the classes in there also.
  24. Offline


    I can report one bug so far. Rouge is spelled wrong. It's spelled Rogue.
  25. Offline


    20:04:01 [SEVERE] Could not pass event PLAYER_ITEM_HELD to EasyRPG java.lang.ArrayIndexOutOfBoundsException: -1
            at net.minecraft.server.InventoryPlayer.setItem(InventoryPlayer.java:178)
            at org.bukkit.craftbukkit.inventory.CraftInventory.setItem(CraftInventory.java:62)
            at com.ninename.easyrpg.RPGPlayerListener.onItemHeldChange(RPGPlayerListener.java:140)
            at org.bukkit.plugin.java.JavaPluginLoader$15.execute(JavaPluginLoader.java:290)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:257)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:610)
            at net.minecraft.server.Packet16BlockItemSwitch.a(SourceFile:24)
            at net.minecraft.server.NetworkManager.a(NetworkManager.java:195)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:74)
            at net.minecraft.server.NetworkListenThread.a(SourceFile:100)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:370)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:285)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:394)
    I think this has to do with the handler. Let's say I pick Mage and unable to use Diamond Swords? But if I fill my whole inventory so that it is unable to be moved I can still use the item. and it generates that once each time you select the item for a class whom cannot use it.

    ..There was another one I was going to report but I suddenly had a serious brainfart and cannot for the life of me remember it now, I will do an edit /or post again once I do remember.
  26. Offline

    Mark Lohstroh

    Yes, I encountered that... I'll fix that soon. Like right now :p
  27. Offline


    It may be by design... But when you recover mana (Crouching) you recover STAT 2+TimeSneaked which seems a bit off since you could just as well abuse that by crouching 2s then stand and crouch again to recover much faster since you get the STAT 2 recovery that way. Is this by design or is the regeneration rate just wrong? Would make more sense to me if the formula was something along ((Level*1.25)*(STAT2*0.25)) per tick that you regenerate.

    10 seconds interval. Kept crouching gave me 26 Mana while what was mentioned above granted me 6x17 Mana (102)

    EDIT: I remember now! I wanted to mention Warriors life steal seems to drain their own health and not the mo your hitting... It may be an error on my part though, the line is "10:Leech_Health:leech:1:30"

    Excellent! Looking forward to it :)
  28. Would it be possible to change the wand too from a stick for wizards in configuration? I find Redstone torches to look better as wands, not really that important was just curious, thanks ;D
  29. Offline

    Mark Lohstroh

    Yes, i realize that you are able to spam that shift button and regain mana faster in increment of two seconds rather than holding it down for longer. I'm going to put in that mana just passively regens each second.

    Yeah that's a quick change. It'll probably be either a stick or a redstone torch.
  30. Offline


    The plugin looks really nice, but you can improve it this way :

    1. Sign support : Instead of using commands people will be able to choose class and raise thier stats by interacting with signs, it's much simpler and it take a little more work for the server operator.
    2. Spell/Skill scrolling : you can add a simple scrolling ability by using the secondary weapon/tool function (ex : swordsmen will scroll using the right mouse button and bowmen will use the left mounse button).
    3. Mulipliers : Add multiplier support that will be optional. Operators will be able to use one of the systems : defining the values for each monster one at a time or use multipliers that will effect the basic data set by the plugin developer (you).
    4. Factions : Add simple factions, with configurable name and leaders. Each faction will have its own spawn point and turf, but the peace won't last for too long right? factions will be able to declare war on each other and try to destroy the rival faction.
    5. Faction HQ : The faction HQ will be the faction's administration building, each faction will send agents to do some tasks using a special quest system (Next suggestion).
    6. Sign based questing : Each faction's leader will be able to set quests, Every player in the faction will be able to accept it. By completing the quest he will recieve a raward (the has been offered by the leader) and some exp depanding on the task.
    Here is the quest sign syntax :

    Line 1 : Progress (can be Avalible|Taken)
    Line 2 : Objective (<kill|gather><amount|Target)
    Line 3 : Reward (<ID><Amount>)
    Line 4 : Empty (or the reward item name)

    The exp per task will be pre-set by you (plugin dev) and will be changeable through the configuration file using a multiplier.

    That's it for now, if you need some more ideas just PM me or just tell me in this thread :D
  31. Factions is already a separate plugin, Mark already said above that he'd like this plugin to just be good/evil, plus I think adding all that faction stuff would pretty much be like creating 2 plugin's rather than one, so if it was done it'd be best to just make it plug into the existing one somehow, but the sign based quests and class selection is good ;D

    and the multipliers... exp can already be set for each mob, in the config :p or do you mean, a seperate exp for each mob per level?

    such as:
    creeper at player level 1 = 100exp
    creeper at player level 2= 95exp
    creeper at player level 3= 80exp

    and so on?

    VB.net :p I'd say that's easier

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

Share This Page