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

    Racha

    Why people can use all the jobs?
     
  3. Offline

    Aj Cherup

    yup
    that was my problem thanks a lot i look forward to using this plugin.
     
  4. Offline

    flametornado

    at one point i will.

    you can set the maximum number of jobs a player can join at one time if you want, you can also set the number of slots each job has (number of people with the job on the sever).

    There's also a penalty to being part of all the jobs. Leveling up becomes substantially more difficult the more jobs you have.
     
  5. Is there no solution to my problem? I would love to get this plugin to work ! The server gives me the "Systemt can't keep up" message everytime i enable this plugin.

    Could it be the permissions?

    Thx.. Kregme
     
  6. Offline

    flametornado

    I don't know why it's doing that, I don't get that message. Do you or anyone on the server get any lag?
     
  7. Offline

    Daniel Few

    @flametornado
    I have a couple of ideas that I thought of last time I saw this plug-in.

    Ideas:
    [] have to set a 'cuboid area' for a job centre.
    [] The commands can be used in the job centre to 'check in' and 'check out' of your job + apply. No where else.
    [] Configuration to say when you check in, you are given the task of say 'mine 100 cobble' and once you mine it, you give it to the job center and they pay you. You could list the tasks that can be given for each job and how much they pay.
    [] Set hours that you can work EG end of Sunrise to beginning of sunset, and if you try and go to your job b4 that you can't.
    [] As you get higher in your job, your given more advanced tasks + more money.
    [] Maybe penalties for missing your job in a day?

    I wanted to make a plug-in that set up Minecraft Weeks so you can do say /time and see the day (monday-sunday) + 24 hour time. If this way done, you could make it so you work on a Friday-Sunday or Mondays, Thursdays + Fridays.
    Just some ideas, to see if your interested.
    -DanJames
     
  8. Offline

    sprk1ng

    Why when i try /jobs browse don't show any job?
     
  9. Offline

    Trenix

    I just got the same problem and I figured out why. You need to tell us exactly what colors we're able to use. Also it would be nice if steps were more precise. Steps are actually considered Slabs ingame. They're many different types of slabs as well.
     
  10. Offline

    spoothie

    I have a problem. It seems that nearly all commands don't work. I can display all Jobs with /jobs browse, but when i try to join a job with /job join Jaeger, nothing happens. There is no error or success message, just nothing. And when I tra /jobs stats after that it says me that I have to join a Job first. What am I doing wrong? My configs:
    jobConfig.yml:
    Code:
    # Jobs configuration.
    #
    # Stores information about each job.
    #
    # NOTE: When having multiple jobs, both jobs will give the income payout to the player
    # even if they give the pay for one action (make the configurations with this in mind)
    # and each job will get the respective experience.
    #
    # e.g If player has 2 jobs where job1 gives 10 income and experience for killing a player
    # and job2 gives 5 income and experience for killing a player. When the user kills a player
    # they will get 15 income and job1 will gain 10 experience and job2 will gain 5 experience.
    
    Jobs:
        # must be one word
        Holzfaeller:
            # full name of the job (displayed when browsing a job, used when joining and leaving)
            # also can be used as a prefix for the user's name if the option is enabled.
            # Shown as a prefix only when the user has 1 job.
            #
            # NOTE: Must be 1 word
            fullname: Holzfaeller
            # Shortened version of the name of the job. Used as a prefix when the user has more
            # than 1 job
            shortname: H
            # The colour of the name, for a full list of supported colours, go to the message config.
            ChatColour: YELLOW
            # Option to let you choose what kind of prefix this job adds to your name.
            # options are: full, title, job and none
            chat-display: none
            slots: 5
            # [OPTIONAL] - the maximum level of this class
            max-level: 100
            # [OPTIONAL] - the maximum number of users on the server that can have this job at
            # any one time (includes offline players).
            #slots: 10
            # Equation used for calculating how much experience is needed to go to the next level.
            # Available parameters:
            #   numjobs - the number of jobs the player has
            #   joblevel - the level the player has attained in the job.
            # NOTE: Please take care of the brackets when modifying this equation.
            leveling-progression-equation: 100*((1.15)^(joblevel-1))
            # Equation used for calculating how much income is given per action for the job level.
            # Available parameters:
            #   baseincome - the income for the action at level 1 (as set in the configuration).
            #   joblevel - the level the player has attained in the job.
            # NOTE: Please take care of the brackets when modifying this equation.
            income-progression-equation: baseincome*((1.01)^(joblevel-1))
             # Equation used for calculating how much experience is given per action for the job level.
            # Available parameters:
            #   baseexperience - the experience for the action at level 1 (as set in the configuration).
            #   joblevel - the level the player has attained in the job.
            # NOTE: Please take care of the brackets when modifying this equation.
            experience-progression-equation: baseexperience
            ########################################################################
            # Section used to configure what items the job gets paid for, how much
            # they get paid and how much experience they gain.
            #
            # For break and place, the block name or id is used.
            # You can select a sub-type by using a '-' between the id and the bit
            # value for the sub-type. e.g LOG-0 = usual log, LOG-2 = birch log
            # 17-2 = birch log.
            #
            # If no sub-type is give, the payout will be for all sub-types.
            #
            #
            # For kill tags (Kill and custom-kill), the name is the name of the
            # mob.
            # Available mobs:
            #   Chicken
            #   Cow
            #   Pig
            #   Sheep
            #   Wolf
            #   Creeper
            #   Giant
            #   Skeleton
            #   Spider
            #   Zombie
            #   PigZombie
            #   Squid
            #   Ghast
            #   Player
            #   Slime
            #
            # NOTE: mob names are case sensitive.
            #
            # For custom-kill, it is the name of the job (also case sensitive).
            #
            # NOTE: If a job has both the pay for killing a player and for killing a
            # specific class, they will get both payments.
            ########################################################################
            # payment for breaking a block
            Break:
                # block name/id (with optional sub-type)
                LOG:
                    # base income
                    income: 0.2
                    # base experience
                    experience: 2.0
            # payment for placing a block
                SAPLING:
                    income: -0.1
                    experience: -1.0
            Place:
                LOG:
                    income: -0.2
                    experience: -2.0
                SAPLING:
                    income: 0.1
                    experience: 1.0
        Minenarbeiter:
            fullname: Minenarbeiter
            shortname: M
            ChatColour: YELLOW
            chat-display: none
            slots: 5
            max-level: 100
            leveling-progression-equation: 100*((1.15)^(joblevel-1))
            income-progression-equation: baseincome*((1.01)^(joblevel-1))
            experience-progression-equation: baseexperience
            Break:
                COAL_ORE:
                    income: 0.1
                    experience: 1.0
                REDSTONE_ORE:
                    income: 0.2
                    experience: 2.0
                IRON_ORE:
                    income: 0.2
                    experience: 2.0
                GOLD_ORE:
                    income: 0.3
                    experience: 3.0
                LAPIS_ORE:
                    income: 0.4
                    experience: 4.0
                DIAMOND_ORE:
                    income: 0.4
                    experience: 4.0
                OBSIDIAN:
                    income: 0.4
                    experience: 4.0
                MOSSY_COBBLESTONE:
                    income: 0.5
                    experience: 5.0
            Place:
                IRON_ORE:
                    income: -0.2
                    experience: -2.0
                GOLD_ORE:
                    income: -0.3
                    experience: -3.0
                OBSIDIAN:
                    income: -4.0
                    experience: -4.0
        Architekt:
            fullname: Architekt
            shortname: A
            ChatColour: YELLOW
            chat-display: none
            slots: 5
            max-level: 100
            leveling-progression-equation: 100*((1.15)^(joblevel-1))
            income-progression-equation: baseincome*((1.01)^(joblevel-1))
            experience-progression-equation: baseexperience
            Place:
                WOOL:
                    income: 0.1
                    experience: 1.0
                STONE:
                    income: 0.1
                    experience: 1.0
                GLOWSTONE:
                    income: 3.0
                    experience: 3.0
                SANDSTONE:
                    income: 0.1
                    experience: 1.0
                GLASS:
                    income: 0.1
                    experience: 1.0
                BRICK:
                    income: 0.4
                    experience: 4.0
                STEP:
                    income: 0.2
                    experience: 2.0
                RAILS:
                    income: 0.2
                    experience: 2.0
        Jaeger:
            fullname: Jaeger
            shortname: J
            ChatColour: YELLOW
            chat-display: none
            slots: 5
            max-level: 100
            leveling-progression-equation: 100*((1.15)^(joblevel-1))
            income-progression-equation: baseincome*((1.01)^(joblevel-1))
            experience-progression-equation: baseexperience
            Kill:
                Pig:
                    income: 0.1
                    experience: 1.0
                Cow:
                    income: 0.1
                    experience: 1.0
                Chicken:
                    income: 0.1
                    experience: 1.0
                Squid:
                    income: 0.2
                    experience: 2.0
                Wolf:
                    income: 0.4
                    experience: 4.0
                Slime:
                    income: 0.3
                    experience: 3.0
    generalConfig.yml:
    Code:
    # General configuration.
    #
    #   The general configuration for the jobs plugin mostly includes how often the plugin
    # saves user data (when the user is in the game), the storage method, whether
    # to broadcast a message to the server when a user goes up a skill level.
    #   It also allows admins to set the maximum number of jobs a player can have at
    # any one time.
    
    # storage method, can be MySQL, flatfile
    storage-method: MySQL
    
    # Requires Mysql.
    mysql-username: ni3600_2_DB
    mysql-password: zbVOz8xx
    mysql-database: ni3600_2_DB
    mysql-url: jdbc:mysql://localhost:3306/
    mysql-table-prefix: j_
    
    # How often in minutes you want it to save, 0 disables periodic saving and
    # the system will only save on logout
    save-period: 15
    
    # Do all players get a message when somone goes up a skill level?
    broadcast-on-skill-up: false
    
    # maximum number of jobs a player can join
    max-jobs: 1
    
    I hope you can help me.
     
  11. Offline

    thernztrom

    Hello flame! I have installed this plugin and given my players the 'jobs.join.*' permission. But they seem unable to see the /jobs browse menu. I that am Owner with just an '*' in permissions can see them just fine.
    I suspect there is something wrong with permissions, but what exactly? Is there a additional permission node for /Browse?
    Code:
    Here is my node in permissions:
    [jobs.join.*,etcetc
    Edit, they can join jobs either, so same problem as above.
     
  12. Offline

    flametornado

    That's more of a questing mechanic, not a job.

    Do you have the permissions nodes set up properly? Are you getting any console errors?

    steps and slabs are different. They have different item ids. For the different types, you can do subclassing (e.g. if you have slab in your config it'll pay for all slabs, slab-0 will pay only for stone slabs, slab-1 for sandstone etc.

    You can use item ids if that's easier for you. Also the configuration files have detailed comments that outline what everything does. If you think i need to make anything more clear, please tell me what you're having problems with.

    Do you have permissions set up properly?

    I tried it now. It works fine with those permissions. I would recommend looking over the permissions again.
     
  13. Offline

    spoothie

    I am OP and Admin in Permissions.
    In my Permissions config the Admin Group has the Permission - '*'.
    So normally that should work for me. Or do I have to add an extra Permission?
     
  14. Offline

    flametornado

    that should work for all commands. Any console errors?
     
  15. Offline

    Inspitron

    some commands do not work. i double checked permission nodes and they are fine. no console eerror of any kind.
    for me, as an admin /jobs fire and /jobs leave does not work.
    for users, /jobs browse doesn't give them a list of jobs and /jobs join tells them that they don't have permissions to join that job. not sure what im doing wrong

    i think there is a missing node for permissions, when ever i give defaults '*' , jobs browse works and you can join jobs, but job leave and job fire still doesnt work
     
  16. Offline

    Trenix

    I just need to know what colors I can use in chat colour. Also you should add the slab id in the "list of all possible items". By the way, nice plugin.
     
  17. Offline

    flametornado

    do you have the latest jobs version?

    all chat colors are in the message config file, i'll prob remove that list later.
     
  18. Offline

    Trenix

    Oh, I see. I didn't have the latest version. The WIP version wasn't under downloads.
     
  19. Offline

    flametornado

    i'm planning to test and release the wip version when 1.6 is stable.

    the wip version is in most cases far better and more stable than 1.3

    i just said wip so the release would have less bugs since it's been tested by anyone who was curious about 2.0 features and because i was being lazy and didn't want to have a new version every day and a colossal changelist
     
  20. Offline

    RustyDagger

    Version 2 looks like its going to be a smash hit With my users, They are complaining about some of the jobs I have atm and iv been looking for a reason to sit down and rework it. When I do move to version 2 I think that will be a good reason :D. Any way I like the idea of the give xp commands I can hand that out as prizes for contests ect And the users will love it.

    prob wait till after the 1.6 mess to upgrade the server any more. I just wish my host would hurry the F up with the new cp so I can read my server log and find out whats making errors. :/
     
  21. Offline

    Trenix

    I wonder, if someone breaks a block/item then places it again, will he get the money and exp for breaking it again? If so, that should be changed. Items like painting, torches, and so on, can exploit jobs.
     
  22. Offline

    RustyDagger

    Can be abused like that and it sucks the only real fix would be to connect to some thing like logblock but Flame don't think that's a good idea at all so.... personally i think he under estimates mysql. But w/e hes the plugin dev not me.

    Another way to fix it would be to hold the last 40 blocks a user placed in memory and remove any thing older than that. and run checks against that. checking memory would not be as intensive as connection to the mysql.
     
  23. Offline

    flametornado

    i don't think that doing something like this would be good. My problems are:
    • Colossal lag: even with a small server, you'll have players placing thousands of blocks and with bigger servers, checking all of these blocks would take far too much computational time causing some truly epic lag, massive need for extra resources (both ram and hard drive).
    • To balance that out, you would need to clear some of the older blocks. Which means people can just wait for a while and then farm.
    • holding the last 40 blocks in memory would cause absolutely no difference from no blocks. 40 blocks would equate to 10 blocks per player, and they could always just build blocks up to the sky and then mine them out.
    Also, I've done loads of work in high performance computing and I've learnt to find areas that could cause massive lag :p. Actually my phd is in high performance computing :p
     
  24. Offline

    RustyDagger

    I would just love to see how my server would handle asking the mysql every time a block was placed with 15 users online because i can run around just fine clicking on blocks getting their history using logblock.

    but i trust you know what your doing cause i sure as hell don't i just learn better from trying things.
     
  25. Offline

    flametornado

    i'll think about doing it and seeing if everyone get colossal lag. (also i think logblock wipes the data every day or hour or so to keep the database small)
     
  26. Offline

    RustyDagger

    I have it set up to wipe data that is older than 3 days whilst the data base is fairly large any thing smaller Defeats the purpose of it and that is to roll back changes of greifers.
     
  27. Offline

    flametornado

    I've looked at the source code and send a message to the developer asking them what the performance is like. I see they're using a linked list type data structure (i think). That means that if i want to search for a specific block i'd have to go through it all (which is pretty bad since it will happen every time someone breaks a block anywhere).

    I'll still look into it though.
     
  28. Offline

    Racha

    Where i can do it?
     
  29. Offline

    flametornado

    general config file.
    Look through the configuration files (get the newest version if needed), they're well commented on what everything does.

    Some options will be commented out. just uncomment them (delete the # in front)
     
  30. Offline

    RustyDagger

    yer it would be better if say the data was stored per player then you would only have to loop past all the changes from them.

    Although that would be so many tables And be worse in most cases.

    I know my database has around a million entry's at most times.
     
  31. Offline

    flametornado

    The best way to do something like this is to have the blocks location in 3d space (x,y,z coordiantes) and search on those.

    Also, if you have a million entries, there's no chance i'm putting this in if it's a linked list. It'd mean that for every block broken it'd have to go through a million entries.

    That would result in severe lag.
     
Thread Status:
Not open for further replies.

Share This Page