Inactive Jobs v2.0.1 - Jobs plugin for Minecraft (iConomy 4/5 & BOSEconomy, Permissions) [860]

Discussion in 'Inactive/Unsupported Plugins' started by flametornado, Apr 17, 2011.

Thread Status:
Not open for further replies.
  1. Offline

    flametornado

    NOTE: THIS PLUGIN IS NO LONGER BEING DEVELOPED \ SUPPORTED BY ME.

    phrstbrn HAS TAKEN UP THE DEVELOPMENT \ SUPPORT AND ALL QUERIES SHOULD GO TO HIM ON HIS POST. (http://forums.bukkit.org/threads/ec...t-935-iconomy-5-boseconomy-permissions.23429/)


    Jobs - The Job plugin for Minecraft:
    Version: 2.0.1

    Requires:
    • iConomy 4/5 / BOSEconomy
    Optional

    • Stats and Achievements
    • Permissions
    • MySQL
    A fully configurable plugin that allows you to get paid for breaking, placing and killing. Class based (experience increases as you perform your job).


    NOTE: Please read the comments in the configuration file thoroughly and check the console errors before posting here for help.

    [fire]IMPORTANT [fire]: If you want to upload your config for help, please do so using the forum's upload functionality.

    If you like this plugin, please donate.

    [​IMG]

    Video



    Thanks Samkio for the plugin tutorial video.

    Downloads
    Previous Versions (open)



    Features:
    • Create your own custom jobs and choose what they get paid for and how much.
    • Leveling mechanic where higher level jobs will give higher incomes. Income earnt = experience gained.
    • Equation determining maximum experience, experience gained and income gained is customizable.
    • Customizable skill levels in the game to mark leveling milestones (fully customizable in the configuration file).
    • Your profession and skill level is part of your display name and whenever you talk everyone will know what you do and how good you are. (optional)
    • Stats of your maximum level in a job is saved if you have the stats and achievements plugin. ( for bragging rights) (optional)
    • Does periodic saving and save on player exiting the server.
    • Leaving a job resets your job level and experience to 0.
    • Permissions support.
    • Admin commands work even when the players are offline.
    Source:


    I made a sourceforge account for this. It will allow you to report bugs and feature requests. It'll help me a lot to make sense of this.

    The link is https://sourceforge.net/projects/flametornadjobs/.

    Some rules before you go there:
    1. Please look through the bugs that have already been reported to see if someone else has already reported that bug. If you have any extra information, post it on the bug's comments. The more information I have, the easier it is for me to fix it and test it.
    2. Same as above for feature requests.


    Commands:
    Code:
    Player:
    /jobs browse -  View a list of the available jobs.
    /jobs join [job name] - Join the job.
    /jobs leave [job name] - Leave the job.
    /jobs info [job name] [break, place, kill] - view information about that job.
    /jobs stats - view your job level and experience needed to level up.
    
    Admins:
    /jobs fire [playername] [job] - fire the player from the specified job.
    /jobs employ [playername] [job] - employ the player into the specified job.
    /jobs promote [playername] [job] [levels] - promote the player in their job X levels.
    /jobs demote [playername] [job] [levels] - demote the player in their job X levels.
    /jobs grantxp [playername] [job] [experience] - grant the player X experience in the selected job.
    /jobs removexp [playername] [job] [experience] - remove X experience from the player in the selected job.
    /jobs transfer [playername] [oldjob] [newjob] - transfer the player's job (keeps levels and experience)
    
    NOTE: All job names are case sensitive.
    
    Permissions Nodes:
    Code:
    jobs.join.<jobname> - allows the group to join the job. Where <jobname> is replaced with the job name (e.g. jobs.join.Woodcutter or jobs.join.* to join all jobs).
    jobs.world.<worldname> - allows players to get paid on selected world.
    
    jobs.admin.fire - enables the fire admin command.
    jobs.admin.employ - enables the employ admin command.
    jobs.admin.promote - enables the promote admin command.
    jobs.admin.demote - enables the demote admin command.
    jobs.admin.grantxp - enables the grant experience admin command.
    jobs.admin.removexp - enables the remove experience admin command.
    jobs.admin.transfer - enables the transfer admin command.
    Changelog:

    Version 2.0.2 WIP
    • Added more parameters to job level up (jobname, jobcolour, titlename, titlecolour, playername, playerdisplayname, joblevel)
    • Fixed promote and demote to correctly change the max exp.
    • job names are no longer case sensitive.
    • Changed the saving mechanism to be synchronous instead of asynchronous (may help with people losing jobs)
    • added config option of enable-pay-near-spawner in general config.
    • Fixed some NPE
    • Wolves killing things gives the player money and experience.
    • Fixed empty tags not resulting in errors.
    • fixed mysql password is all numbers.
    • fixed honorific error
    NOTE: This version is stable, but not fully tested. I will not release this version fully until i track down the jobs vanishing bug and destroy it for all the hassle it has cause me :p


    Version 2.0.1
    • Small bugfixes
    • Moved where the update stats command is called so it won't break anything if there's an error in it. Should also improve performance slightly
    • made the enabling of the stats and achievements plugin optional (configuration parameter in general settings
    • ChatColour can now be in any case and it'll still work.
    Version 2.o.0

    • Multiple jobs
    • Exposed equations
    • More customization
    • Can specify sub-class
    • Can specify job class kills.
    • Messages are customizable.
    • Kills with arrows works
    • Admin commands (work offline too)
    • Can disable payout on certain worlds (mainly for creative servers).
    • Can limit the number of jobs a player can have
    • Can limit the number of people that can have a certain job per server.
    • Better console error messages.
    • Plugin disables itself properly.
    Changelog (open)



    Version 1.3.3b and 1.3.2b
    • Killing works properly now. Drops seem to have gone back to normal levels and you can kill stuff and get paid for it all the time.
    • 1.3.3b is for iConomy 5 AND ONLY iConomy 5
    • 1.3.2b is for before iConomy 5 AND ONLY before iConomy 5
    Version 1.3.3

    • iConomy 5 support.
    Version 1.3.2

    • Removed annoying spam message which was for debugging and i forgot in for 1.3.1
    • Changed experience to be a double so people get experience for things less than 1. Saving mechanism still saves using integers, it would create waaaay too much fuss to change this since the database schema would need to be changed for everyone that used this plugin and it would render all previous saves incompatible. This seems like a decent compromise. People will lose a maximum of .99 exp when they log out.
    • Better method for checking when an animal's dead, should fix the weird animation problem and the lack of drops some people have been experiencing.
    Version 1.3.1

    • Killing near mob spawners will not give you money anymore.
    • Displays payment amount when you do /jobs info for killing now too.
    • Changed way that you create kill tags incode. Results in the system crashing and the plugin not being enabled if you got the wrong name (e.g. capitals or misspelt name)
    Version 1.3.0

    • Killing stuff should work now. This section is not as thoroughly tested, but should work fine.
    • No jobs have been made with killing stuff, you're on your own with the configuration for a while but the template section has been updated, it follows the same pattern as break and place.
    Version 1.2.3 - Bugfix update

    • changed priority to make sure it gets run last (to make the following points work properly)
    • checks if you can place a block or if the event is canceled by another plugin. Done to avoid people getting rick very easily by placing blocks in areas they are not allowed.
    • Fix for players not getting removed properly in the onDisable function which results in weird names when people reload their plugins.
    Version 1.2.2

    • The titles will now take into account any previous modifications to your display name by another plugin and simply tack on the title at the front (and when you change jobs, strip it from your title and tack a new title at the front).
    Version 1.2.1

    • Base experience is now configurable
    • experience multiplier is not configurable (for those who want lower economies). If you want to give 0.2 of your currency to per item, then set the multiplier to 10.
    Version 1.2.0

    • A little code cleanup.
    • Permissions support
    • customizable flat rate pay
    • customizable skill titles.
    Version 1.1.2

    • Cleaned up sql commands more to make them more specific and avoid errors as much as possible. Hard to test this since neither my testing server and my proper server have any problems seen by other people.
    • Fixed the system to work with /reloadall command. The experience was still being saved, you just needed to log out. I didn't even know that this command existed, so i never thought i'd have the plugin enable with people in the server. It now takes that into account and online users will not need to log out to see their stats and work on their jobs.
    Version 1.1.1 [fire] RECOMMENDED [fire]

    • Cleaned up SQL commands to be more exact, should result in less errors.
    • New configuration for what kind of prefix to add to the username (job, skill level, both or none).
    • New configuration to toggle the option of broadcasting messages when users reach the next skill level.
    • [Stats & Achievements] - further integration, this plugin now also adds the iConomy money amount to the stats table. (will always be 1 block behind)
    • URGENT FIX - tables were not getting cleared and players ended up having multiple jobs with multiple levels instead of one job and one set of levels. Code written to auto correct this.
    Version 1.1.0

    • Added BOSEconomy integration. This should be automatically detected.
    • Added flatfile functionality for server admins who don't want to use mysql.
    • EXPERIMENTAL : Added sqlite functionality, I sadly couldn't get sqlite to work properly on my testing machine so i haven't tested it. It should work though.
    Version 1.0.1

    • Small fix on /jobs stats command. It now rounds off the two decimal places and is less annoying to look at when it gives you the price for placing/destroying a block
    Version 1.0

    • Initial build, spent the weekend on it, pretty satisfied with it, added all mentioned functionality.
    [\SPOILER]

    TODO:



    See sourceforge for requested features and bugs.
     
  2. Offline

    Taien

    Mob names are not all capital. Make sure you pay attention to the initial post. Also, setting your base rates that high is a pretty bad idea....by level 99 the players would be making hundreds of thousands if not millions per block...
     
  3. Offline

    flametornado

    That's coming in the next version.
    Make the new classes similar to the old ones. Structure is important and so is using 4 spaces not tabs.
    Can you add the errors you get. MySQL works fine for me.
    There's a conflict somewhere with another plugin that also creates a jobs table. I have no idea which one it is. If anyone could narrow that down i'd be over the moon. It's also very weird since the only other jobs plugin around is iJobs and i don't think that's the problem.
    What error do you get?

    The colour of the titles and job names changes.

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

    AndyP

    This was my 2nd attempt to make it work.
    At my first try,the names of the mobs were all with no capital letters written.
    And it still dindt work
     
  5. Offline

    flametornado

    upload your config file.
     
  6. Offline

    hofec

    Hi there.

    This plugin is really awesome ! Great work btw .[diamond] :D

    Few thing .. "Leave" command is important in next release .. and also i have this mess, which non-stop spams my console, when somebody Place/Destroy any block (currently has a job activated)
    Code:
    03:02:29 [INFO] 0.0
    03:02:29 [INFO] 0.0
    03:02:30 [INFO] 0.0
    03:02:30 [INFO] 0.0
    03:02:30 [INFO] 0.0
    03:02:31 [INFO] 0.0
    03:02:31 [INFO] 0.0
    03:02:31 [INFO] 0.0
    03:02:31 [INFO] 0.0
    03:02:32 [INFO] 0.0
    03:02:33 [INFO] 0.0
    03:02:33 [INFO] 0.0
    03:02:34 [INFO] 0.0
    
    ....
    .....
    .......
    Can i somehow disable this (debug?)
    Thank you for help ! :)
     
  7. Offline

    flametornado

    The leave command is def in the next update. And I will remove those debug commands. Sorry about that.
     
  8. Offline

    hofec

    U just made my day man ! [meat] thank you :) waiting for update..
     
  9. Offline

    Taien

    SPIDER = Spider
    ZOMBIE = Zombie
    PIG = Pig
    PLAYER = Player
    etc.

    1st letter captial. Not all small either.
     
  10. Offline

    gumball3000

    I mean the player's name, i don't want it wite.
     
  11. Offline

    l3arry

    hey flametornado. Is it possible to make a craft command? just like someone asked before?
     
  12. Offline

    GmK

    @flametornado

    Is there any way you can make it so, that you define the name of the used MySQL Table yourself? I am at a loss which other plugin uses a 'jobs' table, even if I drop that and restart the server, the conflict still happens. Am not at leisure to constantly stop and restart to test plugins, as its a live server with many players.

    Thank you!!
     
  13. Offline

    Felix Seemann

    rly great work u did there!
    my server is having a great market, its rly fun!

    but, can u set a max. level for a job?
    some players reached a high level and get to much money per block
     
  14. Offline

    Anakis

    Hello,
    I have a problem with this plugin. In my server, everyone can join a job and change his job. Normally, only the admins join a job (by default). Jobs should run with permissions, right? I need this plugin for my server. Your plugin is a great work.
    I need your help, thank you in advance
    (excuse me for the mistakes, i'm french :D)
     
  15. Offline

    NekoMikan

    hi, where do you change the names it gives people, the problem is that every time people change job they keep their name so if they changed from miner to builder they get both names and 3 names if they change again,

    tried removing the plugin and names are still there
     
  16. Offline

    AndyP

    Hi!
    I solved the problem on my own :)
    It didnt work because I used the color ORANGE . After I replaced it,everything worked fine.
    Maybe its not a supported color?
     
  17. Offline

    ripzeus

    Thats the problem, I don't get any errors till a player logs in.
    And this is what i get
    Code:
    12:39:27 [SEVERE] Could not pass event PLAYER_JOIN to Jobs
    java.lang.NullPointerException
            at me.alex.jobs.Jobs.addPlayer(Jobs.java:353)
            at me.alex.jobs.JobsPlayerListener.onPlayerJoin(JobsPlayerListener.java:
    15)
            at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
    va:206)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:59)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:257)
            at net.minecraft.server.ServerConfigurationManager.a(ServerConfiguration
    Manager.java:94)
            at net.minecraft.server.NetLoginHandler.b(NetLoginHandler.java:95)
            at net.minecraft.server.NetLoginHandler.a(NetLoginHandler.java:74)
            at net.minecraft.server.Packet1Login.a(SourceFile:43)
            at net.minecraft.server.NetworkManager.a(NetworkManager.java:195)
            at net.minecraft.server.NetLoginHandler.a(NetLoginHandler.java:40)
            at net.minecraft.server.NetworkListenThread.a(SourceFile:87)
            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)
    Everything else works fine but jobs, I have also removed and reinstalled MySQL, changed engines from INNODB to MyISAM and back, I have uninstalled and reinstalled Java, even tested it on a test win2k8r2 box. Same error's.
    Jobs doesn't even write to MySQL at all. I'm at a loss.
    EDIT: Also it doesn't matter what version of Jobs and iConomy I use. Same errors no matter what version I use.
    Oh i donno if it helps or not, But I am running straight WIN2K8R2 servers, so they are nothing but 64BIT.
    Also I have changed from essentials to commandbook, and while commandbook works better with permissions than essentials does (i don't know why), jobs still gives me the same error. I even had it to where it's just Jobs running. Same error.
    EDIT: Here is some more error code when trying to join a job.
    Code:
    17:36:43 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'jobs
    ' in plugin Jobs v1.3.3b
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
            at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:85
    )
            at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:2
    55)
            at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.
    java:677)
            at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:640)
    
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:634)
            at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:32)
            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)
    Caused by: java.lang.NullPointerException
            at me.alex.jobs.Jobs.onCommand(Jobs.java:289)
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
            ... 12 more
     
  18. Offline

    6y7t8h

    about the upcoming leave feature, can you make it so there's a configurable time where the player who just left can't join another job when, for example, he finds diamonds..
     
  19. Offline

    seaturtle

    some people use Linux please don't rar your files
     
  20. Offline

    c97hristian

    Jobs:
    Hunter:
    ChatColour: RED
    levelingProgressionRate: 0.30
    incomeProgressionRate: 0.02
    Kill::
    PIG: 7.5
    SHEEP: 7.5
    COW: 8.0
    CHICKEN: 7.0
    SQUID: 20.0

    it doesnt work...
    and all of the other jobs cant be found when im making a new one... whats wrong?
     
  21. Offline

    Felix Seemann

    Kill::

    one : too much
     
    Raspberry likes this.
  22. Offline

    AndyP

    If you make 1 mistake,all jobs can disappear^^
    Kill::
    One ":" is enough :)
    You should change Mob Names to Pig,Sheep,Cow,Chicken,Squid(Not ONLY capital letters)

    The jobs can also disappear when you messed up the Titles under the jobs.
    I hope I could help you :)
     
  23. Offline

    bandgeek303

    shouldn't the file be a .jar? on mine it says it is a .rar, are they the same thing? or can i not use this?
     
  24. Offline

    Fligsnurt

    So not sure what I messed up here, but non of the three jobs appear in game. I've looked it over for an hour or two now and have been compareing it to the code on your post.
    Code:
    Jobs:
        Slayer:
            ChatColour: RED
            levelingProgressionRate: 0.15
            incomeProgressionRate: 0.10
            Break:
                MOB_SPAWNER: 50
            Place:
            Kill:
                Player: 50.0
                Cow: 5.0
                Pig: 5.0
                Sheep: 5.0
                Wolf: 20.0
                Creeper: 20.0
                Giant: 50.0
                Skeleton: 15.0
                Spider: 15.0
                Zombie: 10.0
                PigZombie: 15.0
                Squid: 15.0
                Ghast: 30.0
                Slime: 25.0
        Herbalist:
            ChatColour: GREEN
            levelingProgressionRate: 0.15
            incomeProgressionRate: 0.15
            Break:
                YELLOW_FLOWER: 5.0
                BROWN_MUSHROOM: 5.0
                RED_MUSHROOM: 5.0
                RED_ROSE: 3.0
                SUGAR_CANE_BLOCK: 3.0
                PUMPKIN: 10.0
                CROPS: 5.0
                LOG: 5.0
            Place:
                YELLOW_FLOWER: -5.0
                BROWN_MUSHROOM: -5.0
                RED_MUSHROOM: -5.0
                RED_ROSE: -3.0
                SAPLING: 1.0
                PUMPKIN: -10.0
                SUGAR_CANE_BLOCK: -3.0
            Kill:
                Player: 50.0
        Miner:
            ChatColour: DARK_GRAY
            levelingProgressionRate: 0.15
            incomeProgressionRate: 0.05
            Break:
                MOSSY_COBBLESTONE: 10.0
                STONE: 0.3
                COAL_ORE: 1.0
                REDSTONE_ORE: 3.0
                IRON_ORE: 3.0
                GOLD_ORE: 5.0
                LAPIS_ORE: 5.0
                DIAMOND_ORE: 7.0
                OBSIDIAN: 5.5
            Place:
                RAILS: 2.0
                IRON_ORE: -5.0
                GOLD_ORE: -6.0
                MOSSY_COBBLESTONE: -10.0
            Kill:
                Player: 50.0
     
  25. Offline

    ValBGaming

    How many decimal places does this pick up? In my server we have dollars and cents, so some things are worth very little, I am having people paid 10% the market price, which for some things is only about 5 cents, which is 0.05, and due to this, with between 1 - 3% income progression per level you end up going into the 3rd (0.000) and fourth (0.0000) decimal place and it doesn't make much difference until the higher levels. If the plugin doesn't deal with more than 2 decimal places I may have to do some adjusting.
     
  26. Offline

    flametornado

    Maybe in the next version. but then how would it work for multiple jobs?

    on the list of things to do.

    Probs will be there in the next update. I did entertain changing the database name to something that nobody will clash with, but then i'd need to have an update script built in. I may end up doing that or i could let the table name be in the config.

    I would really appreciate it if someone found out which plugin is causing the conflict.

    in the next update. if people are leveling up too quickly, change the leveling progression rate or drop the money progression rate.

    if you have permissions, you can give some people permissions to join jobs and others not. There is no giving people permissions command as of now.

    there are very few supported colors :(, it's because of the architecture behind the server (notch's problem)

    there is something wrong with the configuration for the database. it can't even make the connection.

    leaving jobs resets your level to 0.

    i use linux, it's prob even easier with linux. doesn't the default decompresson handle rar files?

    extract the rar file.

    2 decimal places. iConomy works to 2 decimal places and BOSEconomy works in itegers so i made mine go to 2 decimal places.

    mob spawner is 50 not 50.0

    I found the conflict.

    For some reason LWC also has jobs as a table. I have no idea why this is.

    For people having problems because they're using lwc. Make sure that lwc and jobs point to different databases.

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

    GmK

    Holy it is LWC? I would have never expected that, especially since that table doesnt seem to be populated on our server.

    Thank you! <3 <3 <3
     
  28. Offline

    flametornado

    Yea. It's quite annoying. I should ask the developer why it's even there.
     
  29. Offline

    NekoMikan

    could you help me with this?

     
  30. Offline

    flametornado

    that's a weird bug that seems to only happen sometimes. If people log out then back in their names should be fixed.

    It'll be fixed in the next version
     
  31. Offline

    NekoMikan

    it doesn't fix on my server when they log out, the names just keep getting longer every time they change job.

    I changed the name thing to none so it won't get longer, now how do I remove the names which it already gave them? tried removing the plugin but names are still there
     
Thread Status:
Not open for further replies.

Share This Page