Search Unity

Balancing a MOBA or RPG Game?

Discussion in 'Game Design' started by jonkuze, Jan 6, 2015.

  1. jonkuze

    jonkuze

    Joined:
    Aug 19, 2012
    Posts:
    1,709
    OK, so I have a question for all of you who have some real experience with developing a MOBA or RPG Game... when you are trying to balance character classes with their many attributes from magic, basic damage, armor, speed etc... is there some kind of traditional or standard rpg cookbook / formula or something we should be following to help us properly balance a game that have multiple different classes and attributes to deal with?

    I've played RPGs for a very long time since Nintendo Zelda, and Final Fantasy to PlayStation JRPGs (FF Series, Suikoden, Wild Arms, and more..) to MMORPGs like Lineage II and Guild Wars. So I think I can hold my own with figuring out how to properly balance RPG character classes, enemies etc...

    but i'm wondering what resources are out there or known game design formulas that work and shouldn't be broken if at all... share your thoughts. ^_^
     
  2. BFGames

    BFGames

    Joined:
    Oct 2, 2012
    Posts:
    1,543
    (((SkillADamage / Cooldown) * SkillADifficulty) + ((SkillBDamage / Cooldown) * SkillBDifficulty) + ((SkillCDamage / Cooldown) * SkillCDifficulty) + (DPS * TankinessCofficent)) / 4 = BalanceValue.

    So in more simple words..... I got no idea.
     
  3. jonkuze

    jonkuze

    Joined:
    Aug 19, 2012
    Posts:
    1,709
    LOL! Nice
     
    theANMATOR2b likes this.
  4. BFGames

    BFGames

    Joined:
    Oct 2, 2012
    Posts:
    1,543
    But to be honest then you should just play test a lot (with a large an audience as possible) and save all info using something like GameAnalytics. Then you find whats OP and what UP.
     
  5. jonkuze

    jonkuze

    Joined:
    Aug 19, 2012
    Posts:
    1,709
    Yes for sure play test alot will be key to figure out correct balance! ^_^

    thanks man!
     
  6. RockoDyne

    RockoDyne

    Joined:
    Apr 10, 2014
    Posts:
    2,234
    It's actually really easy to make characters balanced, you just make them all the same. No one can really complain that checkers is unfair. Balance just doesn't do anything to make interesting character.

    Worse yet, there is no way to balance qualitative properties with formula. How do you quantify something like a skill that prevents other characters' magic? This is why it's much more interesting to design based on counter-play, where you are actively looking for and building strategies to counteract other strategies. Say for instance, that magic users might be able to buy equipment that counteracts the magic seal, but it still comes with negatives, like being stuck in place so that now the player has to go all out and rain death down so that they don't get picked off.
     
  7. Tiny-Tree

    Tiny-Tree

    Joined:
    Dec 26, 2012
    Posts:
    1,315
    personally i use an excel file, have different profile, enemies player etc, write their stats, then add some skills and attack
    with formula to define if i have this attack on player what will be the damage, how long player need to kill enemies, how much damage enemies will deal during the time we attack him.

    then i just have to balance stats/ formulas
     
    AndrewGrayGames likes this.
  8. jonkuze

    jonkuze

    Joined:
    Aug 19, 2012
    Posts:
    1,709
    I didn't think about an excel sheet, might be a great way to lay everything out! I think i'll definitely use that tool to help! Thanks alot!
     
  9. BFGames

    BFGames

    Joined:
    Oct 2, 2012
    Posts:
    1,543
    I would recommend this setup then. Using it at work now for a adventure game. Its so good:

    Google Spreadsheet + https://www.assetstore.unity3d.com/en/#!/content/11818

    Our designer just change numbers in our various spreedsheets (we got like 15+ all with 25+ columns) and then it changes things in-game.
     
    theANMATOR2b, Gigiwoo and jonkuze like this.
  10. JoeStrout

    JoeStrout

    Joined:
    Jan 14, 2011
    Posts:
    9,859
    What I often do is write a combat simulator... it uses a simple (or sometimes not-so-simple) AI for all the characters on both sides of the battle, and just runs battles over and over, gathering statistics about the outcome.

    Then I run a bunch of scenarios for whatever it is I'm trying to balance. For example, are three level-1 characters roughly equivalent to a level-3 character? Set that up, run it 100 times, and see. Or, is this new monster with the Silence spell and Claws of Rending going to fit well on the 10th level of the dungen? Pit it against 100 randomly generated level-10 parties and see how it works out.

    Or, to use your example, is a lone spellcaster balanced against a lone fighter? Generate 100 random fighters and 100 random spellcasters of the same level, and see how it goes. (Though if it follows classic patterns, I would expect the spellcaster to get creamed at low levels, and to turn the fighter into a thin smear on the back wall at high levels.)
     
  11. jonkuze

    jonkuze

    Joined:
    Aug 19, 2012
    Posts:
    1,709
    That's Awesome! I think I can actually do this with my current game in development. I can just setup my Player Characters to borrow the Enemy AI Script that should force my Player Characters to Auto Fight with Monsters or with each other.... since my Character Script is used across all Players and Enemies, I have a Option where I set what Team the Character is On to determine if we can attack it or not... So I'll just set the Player Character on Opposite Teams, add the Enemy AI Script and Set them into Aggressive Mode which will force them to Auto Attack their Enemy in Range. So yea I could totally use this, that's an awesome idea and way to do it... Thanks JoeStrout, i'll let you know how it goes.
     
    Gigiwoo and JoeStrout like this.
  12. jonkuze

    jonkuze

    Joined:
    Aug 19, 2012
    Posts:
    1,709
    Another useful tool and idea... pretty cool! that will beat the hell out of going to each character prefab and adjusting their attributes one at a time, field by field via the inspector! I already find myself doing this and it's painful lol.
     
  13. AndrewGrayGames

    AndrewGrayGames

    Joined:
    Nov 19, 2009
    Posts:
    3,821
    This is actually what I'm doing for my project. Since I got my battle system in a workable, if unpolished state, I can actually start it! :D
     
    JoeStrout and jonkuze like this.
  14. GoGoGadget

    GoGoGadget

    Joined:
    Sep 23, 2013
    Posts:
    864
    Balancing a MOBA is very tricky, particularly if you've got a large spread of players at different skill levels. Remember that you shouldn't aim to achieve perfect balance between every hero - a game with perfect balance is boring, and top MOBAs like LoL actively try to design around this.

    For a multiplayer MOBA, I don't think the AI simulation would give you any meaningful data, unless your game is way simpler than all the others. It's capped at your skill level naturally, so even if you could code AI that played exactly as you would, that would only give you meaningful data at your skill level, and your playstyle.

    Like others have said, analytics is probably the best way to go for this - even simple stuff like champion win rate is a good indication of how balanced a certain champion is.
     
    jonkuze and AndrewGrayGames like this.
  15. AndrewGrayGames

    AndrewGrayGames

    Joined:
    Nov 19, 2009
    Posts:
    3,821
    TTKt = HPt / DPSa. (Time to kill for the target is a function of the targets HP divided by the DPS of their attacker (assuming one attacker.)

    That doesn't account for skill, damage mitigation calculations, simply dodging attacks, or the other player ragequitting. That's only raw stats, and in a multiplayer game it gets blown to hell and back a few times over. It's not quite worthless, it's a starting point, though. I think @GoGoGadget is correct, analytics are probably the right tool for working a MOBA out.

    EDIT: BFGames, you're doing it wrong. In that equation being a better tank would actually make you a better DPS, people who play DPS characters with that balance equation will gripe harder than a StarCraft II fan being told all units in the game are being replaced with pretty princesses (I wouldn't though, that would probably make the game worthwhile. But, I'm silly.)
     
  16. JoeStrout

    JoeStrout

    Joined:
    Jan 14, 2011
    Posts:
    9,859
    Yes, my comments about the combat simulator were aimed more at a turn-based RPG sort of game. These are much easier to drive with AI and get results similar to human players.

    In a MOBA or fighting game, there really is no substitute for getting a bunch of playtesters (including expert players), and basing your balance on that.

    In fact I read an article about this recently... ah, I think it's this one. Very interesting stuff. Especially how your playtesters will gripe bitterly when you inevitably have to nerf some overpowered hero. But if you don't, people will quickly learn that that's the only character worth playing, and the other 19 characters will be stuck on the bench.
     
  17. BFGames

    BFGames

    Joined:
    Oct 2, 2012
    Posts:
    1,543
    "So in more simple words..... I got no idea."

    It was a Joke :D
     
  18. AndrewGrayGames

    AndrewGrayGames

    Joined:
    Nov 19, 2009
    Posts:
    3,821
    I know. There was some good stuff hidden in the joke, thus why it was funny!

    I still want someone to implement a tankiness coefficient that alters DPS output, though. That'd be hilarious.
     
  19. jonkuze

    jonkuze

    Joined:
    Aug 19, 2012
    Posts:
    1,709
    I was thinking about your sim idea and yea I recently releazed it might only work best for Turn Based Combat system. I'm currently working on Real-Time MOBA combat system. So yea, Analytics will probably be the key here to getting it right. I don't want to overpower any characters i want each to have equal advantage disadvantage but also need to take play style and skill into account... It's going to be tricky for sure.
     
  20. RockoDyne

    RockoDyne

    Joined:
    Apr 10, 2014
    Posts:
    2,234
    Thing is, that equation assumes that it is about two entities that are pretty much just wailing on each other. It's useless in games that are fundamentally spatial like chess and checkers, or games that have qualitative relationships like rock-paper-scissors.

    If players can describe characters as being OP and have to use the word "but" a lot, you probably are close to being well balanced.
     
    GoGoGadget and AndrewGrayGames like this.