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

    flametornado

    I would absolutely love to do that, but I can't figure out how to measure when someone crafts something (or smelts, or fishes). As far as I've seen, nobody else has been able to do this either, so I think it's probably due to the way the server works and not giving owners to the creation events of the objects. I may be wrong and I'll continue to look for how to do this.

    I've said before that HeroBounty fills this need perfectly and that doing this would make the class hard-coded, which is something I'm trying hard to avoid.

    Modifying the jobs has a bug when the name of the job is longer than 1 word. I'll get onto fixing that in the next update. Otherwise I tested what you said on my server and everything works fine. It's probably a problem with the way you edit the yml file. When editing, remember not to use tabs but only spaces. Also there MUST be a space between the colon and the value, otherwise it breaks quite amazingly (not my code, it's due to the yml reader).

    Thirdly, it's not a bug, it's an undocumented(i think i may have mentioned this) feature. Everyone gets 1 coin for all other jobs. This does not scale with level, it's just 1 coin and this is so the jobs aren't extremely restrictive and annoying to play at high levels.
     
    Raspberry likes this.
  3. Offline

    everhaunted


    Hope you find an answer
     
  4. Offline

    darkwarriors

    flametornado.. pls make configurable this option, that everyone get paid 1 coins.. beacuse i use small iConomy price in my server and i wouldnt that every ppl can farm money.

    otherwise iam not able to configure my jobs... probally i wrogn something.. but every time i changed something value or add some materials nothing work and i have to reinstall all the plugin..
     
  5. Offline

    flametornado

    You have to make sure to use spaces and not tabs.

    I will make that option configurable.
     
  6. Offline

    darkwarriors

    http://pastebin.com/ETKjcg3N

    this is my jobs config, but even if i have to wait an update to remove 1 coins giving for everithing, this config dont work.. some times dont load jobs, every time dont give exp but only money!

    can u help me pls?
     
  7. Offline

    flametornado

    1.2.o fixed the giving 1 coin. Now you can choose the flat rate pay for all items.

    You're getting no experience because the values are too small, sadly. The experience is in integers and having a payout of 0.2 means that you're getting the integer representation of 0.2 which is 0.

    If you're on a low income server, i would suggest increasing the base prices to over 1, lowering the progression rate for both income and leveling.

    The name of the job is in mysql as well as the level. I've made a php page for my server to show the job information.
    I also made my php site open the configuration file and display the jobs. What more information would you like on the mysql db?

    I made an excel spreadsheet to see how much money a player gets depending on the item and leveling and income progression rates. I suggest you do the same. It makes balancing a lot easier.
     
  8. Offline

    darkwarriors

    yea i see now the information sry for my newbies request!

    can u upload your excel spreadsheet i dont knwon how to make it and it coul be very usefull.

    thank for your advice i'll change the rate and see if it is all correct!
     
  9. Offline

    iffa

    I'd love to use this but I can't use MySQL... :/
     
  10. Offline

    Burgersen

    Can you make an some finished jobs for this? because I do not understand how to make jobs.
     
  11. Offline

    flametornado

    Excel sheet is now uploaded and under the downloads section of the page.

    The sample configuration that comes with the plugin already has some pre-configured jobs. They're not 100% complete or balanced. They are working well on my server, but the economy on other servers is different and this is why I made the plugin so configurable. As to how you create new jobs, follow the template that is in the configuration file. For a list of all blocks that work, there is a list of all possible items included on this page and prices should match rarity and how difficult it is to get a specific block.

    What kind of help would you like with MySQL? There is also a flatfile option that doesn't require any databases if you can't get MySQL working.
     
  12. Offline

    iffa

    Well, my webhost doesn't want remote mysql connections from java nor am I reallyu interested in paying bout 3 dollars per month for the server host to make me a database.

    Anyways, thanks for pointing out it works as flatfile. MY server now has jobs and thanks to the "disable prefixes" option I managed to hide peoples jobs
     
  13. Offline

    flametornado

    If you want to make a video that would be great. I might update the plugin later to take killing mobs and players into account, and it seems like notch's official stats measure crafting events, so when bukkit opens up that section of the api i'll include those. I probably won't do much updating of new features for the next couple of weeks since I have a literature review due in soon.
     
  14. Offline

    QuackzMcDuck

    I get this error http://pastebin.com/mypDpCcZ, it's MySQL related but I can't figure out how to fix it. I'd rather not use the flatfile option. So please help me with this.
     
  15. Offline

    flametornado

    Someone else got that error, but i could never replicate it.

    Could you give me an output of the table schema for jobs?
     
  16. Offline

    QuackzMcDuck

    I don't currently have access to it..Don't know anything about MySQL. I just install plugins for the owner of the server..I'll see what I can do however.
     
  17. Offline

    flametornado

    if you can get me a printout of the schema, i'll be really happy.

    to do that follow the steps:
    if phpmyadmin is installed:
    1. log in
    2. on the left sidebar click on minecraft to switch to that database.
    3. on the left sidebar click on jobs to switch to that table.
    4. on the top tabs, click on structure.
    5. give me a screenshot of what is there.

    otherwise:
    1. log into the database using mysql ...
    2. type 'use minecraft' to switch to this database.
    3. type 'show columns from jobs;' and give me the printout.

    i can also make a script for you if you tell me whether you're using linux or windows if you want it to be simpler
     
  18. Offline

    QuackzMcDuck

    If it helps, I installed it by downloading 1.2.0 dragging jobs.jar into my plugins and dragging the jobs folder in along with it.

    I know this is on a linux VPS.. but how would I log into the database?

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

    flametornado

    mysql -u <username> -p
    then type in your password
     
  20. Offline

    QuackzMcDuck

    This is what it returns----I appreciate the help by the way.
    [​IMG]
     
  21. Offline

    flametornado

    well that makes sense, hmm, do you have another plugin for handling jobs?
     
  22. Offline

    riuthamus

    This is just epic!
     
  23. Offline

    QuackzMcDuck

    Heres my plugins. [​IMG]

    Someone told me in IRC that I was missing a column but idk..



    EDIT: It works just fine flatfile with all of those plugins..I just like to speed up data storage anywhere I can.
     
  24. Offline

    flametornado

    The
    problem you're having is that another plugin has created the table jobs in the database. Did you install any other jobs plugin previous to my one?
     
  25. Offline

    QuackzMcDuck

    Not that I can remember...But couldn't I just delete that table and let Jobs regenerate it?



    If that's possible, I'd like help on how to do that.
     
  26. Offline

    flametornado

    It would. I just wouldn't want to kill another plugin
     
  27. Offline

    QuackzMcDuck

    None of my other plugins have job functionality..If you know how to do delete the table, I'd like some help with that also..
     
  28. Offline

    flametornado

    drop table jobs;
     
  29. Offline

    QuackzMcDuck

    Ok here's what I did. I stopped the server. Did drop table jobs; Then restarted my server.. tried to join a job and got the same error.
     
  30. Offline

    flametornado

    that means that one of the current plugins is creating that table for you.

    I can safely say it's not remote toolkit plugin, local shops, permissions, lwc, dynmap, iConomy or residence, since i have those running now on my server

    The easiest way to fix this is to create another database, maybe call it minecraftJobs or minecraftAlt and configure the plugin to look at that database.

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

    QuackzMcDuck

    None of my plugins either log to a database or have a table designated for themselves....None of them even mention Job functionality. I'm baffled.
     
Thread Status:
Not open for further replies.

Share This Page