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

    Killing animals must fall under the "Kill:" tag, upload the file and i'll have a look at why it doesn't work.
    Please upload the file using the upload file button. The formatting is really important (sadly not my code either :( )
     
  3. Offline

    vip

    Sry for disturbing you. I found the mistake. I wrote "CHICKEN: 2.0" and not "Chicken: 2.0". I thought i tried every way - sry again

    If you look at my log-file which i postet before, could you imagine which mod confuses yours with the chat?? The only mod that effects the chat really i think is the "DispNameChanger". I took it out but it still doesn't work.
     
  4. Offline

    Ross Gosling

    ok thanks for the update
     
  5. Offline

    RustyDagger

    Nice plugin you have there SSsssSSSSsssSSSs <BOOM> Why you ask Chat formatting is so primitive and hopelessly untidy.

    Its totaly unworkable Who needs giant spaces in the bit b4 every message Not me can i remove it and still keep the info umm nope.

    Heres where my problem lies:

    How i would like to format it is like this.

    [JobName][Title]<playername with color formatting from iChat> Message Color also handled by IChat

    The reason for the Ichat is because players are given a color based on group atm my chat box looks horid like this.

    [GroupName] < Title Jobname Playername > message Its a huge horrid looking spaced out mess.

    no amount of picking colors will ever make it look nice Can we have some better control over it please maybe set it up like Ichats messaging format or heck go 1 better and plug into it
     
  6. Offline

    Ross Gosling

    I think there should be an option to disable titles and your job in your name for people like you but i like it and it shows how good you are at a job

    and i love the fact you can customise each title because i have:

    - lv0
    Beginner - lv1
    Ametuer - lv15
    Talented - lv50
    Skilled - lv 75
    Expert - lv100
    Lv1 Master - lv101
    Lv2 Master - lv102
    ...
    Lv25 Master- lv125

    And i have all these titles and there awesome to look at, and i made the master have multiple levels due to no one ever getting to them so when they do it shows what amazing level you have reached
     
  7. Offline

    beebsproduction

    This plugin is awsome, but there is 1 problem, the job "builder" have a lot of properties in "create" and "destry", so when a builder enter "/jobs stats" he can't see his stats because of the long list ;)
     
  8. Offline

    slowmonkey1227

    I'm using the latest version (1.3.2). And I may be wrong about the money doubling bug. Turns out my user was mining a ton of obsidian and earning a ton of money. But the bug still stand where if you join the job again or join another one you will have the job name twice, three times, ect. Example: My user was a Farmer but then changed to a Miner. This then caused his name to be: Farmer Miner (username).

    I apprieciate you responding so quickly to my post and you are doing a great job with this plugin. Please take your time on these fixes as I am in no rush and neither should you. Again, keep up the good work!

    Thanks, Slowmonkey1227
     
  9. Offline

    Mezada


    Yea the console commands work. thanks! was just trying to use MySQL workbench gui.

    I did notice that when i have blocks set to give 0.2 per break and the xp multiplier was 1.0 they were not getting xp. however i just bumped it up the multiplier to 10.0 and the xp needed for level 1-2 to 1000. so it would keep the same ratio from your spreadsheet.

    Also would it be possible to have two different info commads? It seems like both job info (Job) and status give the same info save for your xp but if you have a lot of blocks then the xp is cut off. So I guess I'm saying would it be possible for the status command to just give your level and xp?

    Finally is there a way to turn off losing xp for doing things that give you a neg money value? ie. for a miner placing a block costs you money but it also makes you lose xp.
     
  10. Offline

    Ross Gosling

    Hi everyone i thought you guys might want a configuration file full of great jobs for if your new to this plugin or if your just out of ideas feel free to copy and paste my jobs into your configuration files,

    There is also a huge titles list that i thought you might like so copy and paste it if you like it or use the whole config
     
  11. dude plz help. :) mine says when i do /jobs browse : The following jobs are avaible: and then it doesnt say anything. need help ty :p

    HAHAHAHA sorry xD big fucking mistake i just copyed your <jobname> and didnt write anything in there xD HAHAHA

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

    Ross Gosling

    I just updated my jobs config so if anyone wants it again but updated feel free

    Can the following features be added:

    1- Bonuses - Jobs recieve a configurable bonus every set time and it doesnt count towards your xp

    2- Promotions - The ability to set promotions in the titles, where you can set the base salaries at that level

    eg.

    Apprentice Woodcutter

    5.0 log

    Novice Woodcutter

    6.0 log

    It sets the payment and still applys the original IncomePergressionRate

    3- Multiple Jobs - In the config file choose how many jobs a person can have at once
     

    Attached Files:

    Last edited by a moderator: May 14, 2016
  13. Offline

    RustyDagger


    There is a way to turn them off Its just that i want them just in a neat format not some messed up spaced out eye sore.

    Take a look at this, This is My Chat Format atm.

    message-format: '&5[+prefix+group&5]<+prefix+name&5>+suffix+message'

    This plugin forces its way in between my +prefix+name Meaning my name gets uncolord.

    What i Suggest you do to make the plugin more flexible. Is add a new setting to the ways to display called detect.

    This Detect Setting would search the Players Base Name string For Placement indicators.

    Example I set my IChat Message up like this.

    message-format: '&5[+TITLE&5][+JOB&5]<+prefix+name&5>+suffix+message'

    Your Plugin would see this. as its string after i chat was finished.

    [+TITLE][+JOB]<Name>Message

    Your plugin could then fill in the blanks of title and JOB inserting the right info all before the messages is showed.
     
  14. Offline

    flametornado

    I will look into that. I thought i fixed it in a previous version.

    The new version (1.3.2) should allow for experience less than 1, so you shouldn't need to put a multiplier if you don't want to.

    The /jobs stats shows you your current level, experience and how much you get per block (not the base amount, but how much you get at that level).

    I will also probably make each item give money and experience set up in the config file so you can have items giving whatever experience you want per item (incl not giving negative experience).

    Multiple jobs would require a penalty scheme, (maybe you get 1/numberofjobs experience per block) so leveling is really really slow. but i will look into doing that (probs after crafting)

    For bonuses, as i said before I'll make experience and income independent of eachother.

    If i did promotions, then the configuration file may get very messy as you change the base income of items as you increase in level. If it was a static increase to everything, or a percentage increase in everything that would be simpler and less messy, but otherwise you'd require a 5 page configuration. Since people are having problems with the configuration as it is, I don't really want to make it more complicated.

    I was thinking of making the changes to the name more customizable so you can set exactly how you want it to be using a configuration string, but that will take a bit of effort and it's not very high on my priorities list at the moment.
     
  15. Offline

    Ross Gosling

    ok thanks

    ?? i dont understand do u mean - Base Salary divided by the number of jobs you have??

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

    flametornado

    exp = normal exp * (1/#jobs)

    so if you have 2 jobs, you get 1/2 exp for all items.
     
  17. Offline

    Ross Gosling

    oh i get it, just didnt understand the first equation
     
  18. Offline

    RustyDagger

    Just got the bug where i have more than 1 job Name before my name It seems it happens when i do a live reload with /reload.

    It gets used for alot of reasons on most servers so theres a bug in the initalize there some where that dose not check so see if they already have a job because it gave me the same job again its like it loaded it from the file and gave it to me with out knowing i already had a job :)

    Hope this helps you sort it out Im not sure how im going to fix it....

    This is the whole data file : RustyDagger:0:1:Woodcutter
     
  19. Offline

    Tenebrion

    I'm just wondering is it possible (or will it be any time soon) to specify items sub-version for example: you get money for placing pine-saplings but not birch-saplings or red wool but not gray wool?

    (sry for the bad english It's not my first language)
     
  20. Offline

    Mezada

    See already ten steps ahead of my questions! Awesome job.

    Yea my question on this was a little vague and badly worded. What I was meaning to say is I know that /stats gives you that information. My problem is that if I have a lot of breaks and place rules for a job they fill up the chat window and your level and exp are pushed off the top of the page. So I was seeing if there could be a way maybe in a future version to have a either or command. I mean we can already get the place/break info from the /jobs info (job) command so maybe the /jobs stats could just be your level and xp kinda thing. But in any case love this plugin!

    would be cool, but I also like the equation method you have. But seriously no matter the turn out a very good job on this plugin.
     
  21. Offline

    rhospet

    Q. can you make mobs worth coin or not. if you can could you plz give me a quick example as i have tryed the config file system and it did not work
     
  22. Offline

    vip

    You get so many replies to your mod that you sure have a lot to do.
    Would you please find the time to look at my log-file which i postet before, could you imagine which mod confuses yours with the chat (no colour, no job-name, no rank)?? The only mod i found that effects the chat is the "DispNameChanger". I took it out but it still doesn't work.
    Please have a short look on my installed mods.
     
  23. Offline

    slowmonkey1227

    After using this plugin for a couple of days I was able to figure out that you were correct about the joining the job multiple times... it will pretty much reset their level and their name will just have two job (Miner) tags next to their name. I have also discovered that whenever you level up, your name will gain another "job" tag and the only way to fix this is to sign out then sign back in. Hope that helps you understand more about the bug I was trying to explain to you in the previous posts...

    Another problem I just got was when I made a new job called, "Farmer". I made it so you get money from breaking wheat, sugar cane, and cactus. I believe I have it configured correctly because it doesn't give me the notification in the console. Problem is when people break those objects they don't gain xp or money. Any suggestions on what may be wrong?

    Just one more question before I go. Say someone is the highest level of a certain job and they wanna join another job and level up that job. After they join the new job will they lose the level on their previous job? If so, can you try to make it where they keep that job level in case they ever wanna go back to it instead of having to restart?

    Thank you for responding and I will look foward to seeing an update in the near future!

    P.S- For anyone who uses the default Woodcutter job, you may wanna change that specific job config because my users have discovered that they can place a load of saplinga and break then over and over and get TONS of money off it. Just a tip :)

    Slowmonkey1227
     
  24. Offline

    flametornado

    I know about the error, I thought i got rid of it, but it seems like i didn't. I will look into it more when i get some time. Thanks for all the details.

    About your farmer job, i have a feeling you set the configuration to the items, not the item block.

    I did the reseting to 0 because i didn't want people to keep switching jobs all the time. This way there's a real penalty and makes people think. I will add the possibility to pick more than one job at some point in the future (with a penalty to experience gained if you have more jobs). That should sort most problems out.

    If they get tons of money for placing saplings, change the money to 0.1. The plugin does experience properly as of 1.3.2 and will count experience lower than 1 to two decimal places (it won't be saved, but the maximum lost will be .99 exp, which in my opinion is reasonable, given that the alternative is to change the database schema for everyone that uses the plugin)

    Sorry about that. I didn't see any plugins that could conflict, but I've had another plugin conflict with the database (apparently it uses a table called jobs too)

    You can kill mobs. It's the same as place or break but with kill. And then the creature name below like the rest of the configurations.

    I could do pages. I could also do stats and browse to show what you get for placing, breaking and killing. (e.g. jobs stats place)

    i'll have a look into that.

    Ok, this page is getting very messy very quickly and there are a few bugs and feature requests that are going to get lost.

    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.

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

    beebsproduction

    Hi, I just can't understand, I created 6 jobs, but with 2 of them i got an error when I type /jobs info [jobname]. the error is "An internal error occured while attempting to perforom this command".
    There is a job that work:
    mineur:
    ChatColour: DARK_GREEN
    levelingProgressionRate: 0.15
    incomeProgressionRate: 0.05
    Break:
    STONE: 0.01
    COAL_ORE: 3.0
    REDSTONE_ORE: 3.0
    IRON_ORE: 4.0
    GOLD_ORE: 5.0
    LAPIS_ORE: 5.0
    DIAMOND_ORE: 6.0
    OBSIDIAN: 7.5
    RAILS: -2.0
    Place:
    RAILS: 2.0
    IRON_ORE: -5.0
    GOLD_ORE: -6.0
    STONE: -0.01

    and one of two that doesn't work:
    redstoneur:
    ChatColour: DARK_GREEN
    levelingProgressionRate: 0.15
    incomeProgressionRate: 0.05
    Place:
    REDSTONE_WIRE: 3.0
    REDSTONE_TORCH_ON: 3.0
    STONE_BUTTON: 3.0
    REDSTONE_WIRE: 1.5
    STONE_PLATE: 3.0
    WOOD_PLATE: 3.0
    LEVER: 3.0
    Break:
    REDSTONE_WIRE: -3.0
    REDSTONE_TORCH_ON: -3.0
    STONE_BUTTON: -3.0
    REDSTONE_WIRE: -1.5
    STONE_PLATE: -3.0
    WOOD_PLATE: -3.0
    Lever: -3.0

    thanks for this awsome plugin :D
     
  26. Offline

    flametornado

    why do you have redstone wire twice? Also please upload your configuration file as a file next time. Structure matters a lot in yml formats.
     
  27. Offline

    tcvs

    I dont get it it is a .rar file so it does not work for me? or am i doing something wrong
     
  28. Offline

    Gary Heaton

    Anyone else having problems with mobs disappearing, getting credit and not getting loot drops?
     
  29. Offline

    flametornado

    extract the rar file.

    which version are you using. If it's before 1.3.2, update it. 1.3.2 does drops, before that there were problems.
     
  30. Offline

    Nijikokun

  31. Offline

    flametornado

    Last edited by a moderator: May 13, 2016
Thread Status:
Not open for further replies.

Share This Page