Jump to content
Wilhelm

Class Balance Discussions

Recommended Posts

Since I couldn't find a section related to pko discussions I'm using the "Offtopic" section to create this topic. However, if the moderators judge that this is the wrong place for this kind of discussion, please feel free to transfer it to right place and delete this message. Thanks for the comprehension!

 

Hello folks! First of all, I'm leaving a song so you guys can be immersed in the pko atmosphere (or not) and don't get bored reading this long post:

 

Spoiler

 

 

 

Now, the real deal. We all know that class balancing has always been a subject of controversy and relative importance, even when the official versions were still running. However, despite of the complaints of many players, who seek a balanced server, most of the admins don't even consider touching on this subject, and when they try to do something about it, they fail miserably (FoxLv II Team for example). 

 

This brings me some questions:

What is behing this? Why is it so hard to balance a server? Do players prefer the vanilla balance? If they do, for what reason? I can't understand this fear of change, if it's for the best.  

 

Now if this subject is considered taboo in the community, lock/delete/forget this topic, and let's keep being stuck in time (if playing this game isn't being stuck in time, but this is not in question here). Otherwise, here is what I'm proposing: We could use this thread to discuss what we should change (or not) in order to achieve a better class balance, which would consequently result in a better gameplay, be it on pk, bossing, farming or grinding. 

 

Here some things that we should consider before going ahead with this "project" (if we can use this noun):

When people raise this matter (class balance), they almost always think about two things, skills and stats progression. However, the blind modification of these aspects, in 90% of the cases, won't fix the problem, they will just bring a brief and fleeting solution, the problem goes beyond that. Therefore, we have to consider other aspects and game mechanics, such as pets, pet skills, sp consumption, role of the class (group and solo), mazes, items, weapons and armor sets, shields, gems, pots, life-skills (crafting, manu, etc) and the list goes on. We also need to indentify what are the most frequent complaints from players, and what are their concerns regarding these changes, aswell how these changes would affect most of them. Then we could start proposing the appropiate changes, and at the same time, trying them out in a "testing enviromnent (server)".

 

So what you folks have in mind? Waste of time? Too utopic? Or maybe it is worth afterall...? 

 

And please, let's follow these "rules" or "guidebook" (as you prefer):

 

  1. Always be respectful with another's opinion
  2. Do not go offtopic
  3. Try to bring constructive ideas

 

Thank you very much for the patience!

Share this post


Link to post
Share on other sites

A server balance is a "delicate" subject within running server. Yes, administrators try to balance the growth of the stats, a few servers may edit some skills, and that's it. The thing is, they are doing it on their perspective, on their own ideal of a true balance. They either give more power to a class that's already fine or screw around with a class that needs a power-up. I'm not gonna go and say which class is good or badly balanced, just point out a few things servers do which screw some things up:

  1. Hand out "buff notes" as rewards from farming or mazes.
    1. This essentially screws the purpose of having alternate characters as buffers.
    2. On a low populated server with high rate of players being crusaders, sharpshooters or champions, this will ultimately kill clerics, maybe even seal masters.
    3. Servers with an amount of cleric or seal masters will make those players focus on giving priority to second class skills since there's no need for herbalist skills due to item.
  2. Modify the class' HP/DEF increase.
    1. This might work on something like sharpshooter maybe a bit on clerics.
    2. Crusaders are the most damage dealing class besides sharpshooter, if given an increase on HP/DEF, it becomes a hard to kill class after the champion. This effect shows drastically on those server that add gems that given 10 or more stat points per level, equipment (those unnecessary and unbalanced "VIP" sets) or effects that given out HP percentages, DEF increase or increase on physical resistance (pretty dumb if you ask me since it stops being useful after 85 I think).
  3. Modify the class' attack damage.
    1. This is self explanatory, if you reduce it on champions, then it becomes an obsolete class. I know its main role is to withstand damage, but its attack is way below crusaders, this can be left as is.
    2. Maybe increase a bit the damage dealt per spirit on seal master when they go pure defensive stat.
  4. Attack speed is fine, since it will soft cap at 300 (that's if they haven't modified it).
  5. Dodge is something that goes along with the HP/DEF issue, due to highly "overpowered" gems/equipment, crusaders will essentially surpass the sharpshooter, which in my opinion it shouldn't.

Things to try out and can help:

  1. STOP GIVING GEM/EQUIPMENT OUT LIKE CANDY. Guaranteed to work 100%.
  2. Don't make items that replicate other class' skill.
  3. Don't try to make stat growth equally for classes.
  4. Do not grant excessively large percentage bonuses on equipment.
  5. Do not grant a large stat bonus between high level equipment.

The thing to notice here is, you'll never reach a "perfect" balance, due to the different nature of players. Some are good grinders, some are very social and some are none of that. If you try to balance the server for one of those type of players, you'll eventually screw things for the other two types.

 

Well, that's all I can think of at the top of my head, I know that some might be wrong, or not the ideal way to cover them, but that's my view on this balance issue. As for the thread, trying to keep things respectful, please do not mention server name even if they are no longer active since you mentioned one already. This will only bring issues and/or bad comments.

 

One way I can think of balancing the overall stats of class can be by adding some percentage modifier at the stat calculating function. Start with 100% and carefully go above or below the starting point to see how players react and their opinions, at any case you can go back to 100% without making a hardcore modify at the stat growth.

 

I know it kinda goes against at what I said on some points above, but I have this on my server files for testing purposes.

JOB_STAT[0] = {MxHP = 1, MxSP = 1, MnATK = 1, MxATK = 1, DEF = 1, PR = 1, HR = 1, DODGE = 1, DROP = 1, CRIT = 1, HPREC = 1, SPREC = 1, ASPD = 1, ADIS = 1, MVSPD = 1}	--[0]	= "Newbie"
JOB_STAT[1] = {MxHP = 1, MxSP = 1, MnATK = 1, MxATK = 1, DEF = 1, PR = 1, HR = 1, DODGE = 1, DROP = 1, CRIT = 1, HPREC = 1, SPREC = 1, ASPD = 1, ADIS = 1, MVSPD = 1}	--[1]	= "Swordsman"
JOB_STAT[2] = {MxHP = 1, MxSP = 1, MnATK = 1, MxATK = 1, DEF = 1, PR = 1, HR = 1, DODGE = 1, DROP = 1, CRIT = 1, HPREC = 1, SPREC = 1, ASPD = 1, ADIS = 1, MVSPD = 1}	--[2]	= "Hunter"
JOB_STAT[4] = {MxHP = 1, MxSP = 1, MnATK = 1, MxATK = 1, DEF = 1, PR = 1, HR = 1, DODGE = 1, DROP = 1, CRIT = 1, HPREC = 1, SPREC = 1, ASPD = 1, ADIS = 1, MVSPD = 1}	--[4]	= "Explorer"
JOB_STAT[5] = {MxHP = 1, MxSP = 1, MnATK = 1, MxATK = 1, DEF = 1, PR = 1, HR = 1, DODGE = 1, DROP = 1, CRIT = 1, HPREC = 1, SPREC = 1, ASPD = 1, ADIS = 1, MVSPD = 1}	--[5]	= "Herbalist"
JOB_STAT[8] = {MxHP = 1, MxSP = 1, MnATK = 1, MxATK = 1, DEF = 1, PR = 1, HR = 1, DODGE = 1, DROP = 1, CRIT = 1, HPREC = 1, SPREC = 1, ASPD = 1, ADIS = 1, MVSPD = 1}	--[8]	= "Champion"
JOB_STAT[9] = {MxHP = 1, MxSP = 1, MnATK = 1, MxATK = 1, DEF = 1, PR = 1, HR = 1, DODGE = 1, DROP = 1, CRIT = 1, HPREC = 1, SPREC = 1, ASPD = 1, ADIS = 1, MVSPD = 1}	--[9]	= "Crusader"
JOB_STAT[12] = {MxHP = 1, MxSP = 1, MnATK = 1, MxATK = 1, DEF = 1, PR = 1, HR = 1, DODGE = 1, DROP = 1, CRIT = 1, HPREC = 1, SPREC = 1, ASPD = 1, ADIS = 1, MVSPD = 1}	--[12]	= "Sharpshooter"
JOB_STAT[13] = {MxHP = 1, MxSP = 1, MnATK = 1, MxATK = 1, DEF = 1, PR = 1, HR = 1, DODGE = 1, DROP = 1, CRIT = 1, HPREC = 1, SPREC = 1, ASPD = 1, ADIS = 1, MVSPD = 1}	--[13]	= "Cleric"
JOB_STAT[14] = {MxHP = 1, MxSP = 1, MnATK = 1, MxATK = 1, DEF = 1, PR = 1, HR = 1, DODGE = 1, DROP = 1, CRIT = 1, HPREC = 1, SPREC = 1, ASPD = 1, ADIS = 1, MVSPD = 1}	--[14]	= "Seal Master"
JOB_STAT[16] = {MxHP = 1, MxSP = 1, MnATK = 1, MxATK = 1, DEF = 1, PR = 1, HR = 1, DODGE = 1, DROP = 1, CRIT = 1, HPREC = 1, SPREC = 1, ASPD = 1, ADIS = 1, MVSPD = 1}	--[16]	= "Voyager"
	local Multiplier_MxHP = MAP_STAT[MapName].MxHP * JOB_STAT[CharJob].MxHP * BOTH_STAT[Num].MxHP
	local Multiplier_MxSP = MAP_STAT[MapName].MxSP * JOB_STAT[CharJob].MxSP * BOTH_STAT[Num].MxSP
	local Multiplier_MnATK = MAP_STAT[MapName].MnATK * JOB_STAT[CharJob].MnATK * BOTH_STAT[Num].MnATK
	local Multiplier_MxATK = MAP_STAT[MapName].MxATK * JOB_STAT[CharJob].MxATK * BOTH_STAT[Num].MxATK
	local Multiplier_DEF = MAP_STAT[MapName].DEF * JOB_STAT[CharJob].DEF * BOTH_STAT[Num].DEF
	local Multiplier_PR = MAP_STAT[MapName].PR * JOB_STAT[CharJob].PR * BOTH_STAT[Num].PR
	local Multiplier_HR = MAP_STAT[MapName].HR * JOB_STAT[CharJob].HR * BOTH_STAT[Num].HR
	local Multiplier_DODGE = MAP_STAT[MapName].DODGE * JOB_STAT[CharJob].DODGE * BOTH_STAT[Num].DODGE
	local Multiplier_DROP = MAP_STAT[MapName].DROP * JOB_STAT[CharJob].DROP * BOTH_STAT[Num].DROP
	local Multiplier_CRIT = MAP_STAT[MapName].CRIT * JOB_STAT[CharJob].CRIT * BOTH_STAT[Num].CRIT
	local Multiplier_HPREC = MAP_STAT[MapName].HPREC * JOB_STAT[CharJob].HPREC * BOTH_STAT[Num].HPREC
	local Multiplier_SPREC = MAP_STAT[MapName].SPREC * JOB_STAT[CharJob].SPREC * BOTH_STAT[Num].SPREC
	local Multiplier_ASPD = MAP_STAT[MapName].ASPD * JOB_STAT[CharJob].ASPD * BOTH_STAT[Num].ASPD
	local Multiplier_ADIS = MAP_STAT[MapName].ADIS * JOB_STAT[CharJob].ADIS * BOTH_STAT[Num].ADIS
	local Multiplier_MVSPD = MAP_STAT[MapName].MVSPD * JOB_STAT[CharJob].MVSPD * BOTH_STAT[Num].MVSPD

	local MxHP = Mxhp_final(Player)* Multiplier_MxHP
	local MxSP = Mxsp_final(Player)* Multiplier_MxSP
	local MnATK = Mnatk_final(Player)* Multiplier_MnATK
	local MxATK = Mxatk_final(Player)* Multiplier_MxATK
	local DEF = Def_final(Player)* Multiplier_DEF
	local PR = Resist_final(Player)* Multiplier_PR
	local HR = Hit_final(Player)* Multiplier_HR
	local DODGE = Flee_final(Player)* Multiplier_DODGE
	local DROP = Mf_final(Player)* Multiplier_DROP
	local CRIT = Crt_final(Player)* Multiplier_CRIT
	local HPREC = Hrec_final(Player)* Multiplier_HPREC
	local SPREC = Srec_final(Player)* Multiplier_SPREC
	local ASPD = math.floor(100000/(Aspd_final(Player)))* Multiplier_ASPD
	local ADIS = Adis_final(Player)* Multiplier_ADIS
	local MVSPD = Mspd_final(Player)* Multiplier_MVSPD

 

  • Like 1

Share this post


Link to post
Share on other sites

Yeah, I agree with all of yours points. It seems that the most complaints are related to the gap between crusaders and other classes, due to the nature of this class. As you mentioned, they can get tanky very easily and have massive dmg per second. But when someone think about nerfing them, mayhem is created, since they are the most used class, for obivious reasons. 

 

Another thing that bothers me is the inconsistance of unsealed equipments. It's been known, and it's not a secret, that unsealeds have ridiculous stats for some classes that don't benefit from them. In my humble opinion, this should be one of the priorities before releasing a server, if they plan on using unsealeds anyway.

 

Indeed the different nature of players and administrators are relevant, however I wish there was a common sense with at least the most known inconsistencies.

 

2 hours ago, Angelix said:

please do not mention server name even if they are no longer active since you mentioned one already

 

You are right, I supported that server from the beginning, and even if they adimited their mistake themselves (or at least some of the members of the team), it's not a good idead mentioning it, that was a fail from my part. I'll edit the post, removing the mentioned server in question. Subject closed, let's keep going with the reason of the thread.

 

EDIT: I just noticed someone else editted it, thanks for that. 

 

Edited by Wilhelm

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...