Battle Formula: Why?

Discussion in 'Game Mechanics Design' started by SpicyNoodleStudios, Sep 13, 2019.

  1. SpicyNoodleStudios

    SpicyNoodleStudios Aspiring Vigilante Veteran

    Messages:
    64
    Likes Received:
    85
    Location:
    Sacramento
    First Language:
    English
    Primarily Uses:
    RMVXA
    I'm using VX Ace. I'm not sure what the formulas are set to start as on any of the other engines, I imagine they aren't too different.

    My main question is, why are the battle formulas set that way? It's like, the attack stat multiplied minus the defense stat, multiplied. Why isn't it just a flat attack versus defense formula?

    I would like to get a better understanding of why the formula is like this before I get too far into all of the combat. I know in Pokemon there is one formula that almost every attack can be plugged into. I'm not sure how formulas work in other games.

    But... why?

    I'm not saying it's bad, I just don't understand the reasoning. What am I not getting?
     
    #1
    atoms likes this.
  2. Wavelength

    Wavelength Pre-Merge Boot Moderator

    Messages:
    4,381
    Likes Received:
    3,656
    Location:
    Florida, USA
    First Language:
    English
    Primarily Uses:
    RMVXA
    I'm not sure there's anyone at this forum who was there when the developers decided on a "default" damage formula to include for skills.

    But here's my take on why you don't have a default formula like "a.atk - b.def". It's because if this were the formula, and battlers tend to have equal stats to each other, and the Attack and Defense stats are also similar to each other, then damage will be zero! We don't want battles where damage is zero. Sure, if the ATK stats tend to run higher than the DEF stats, this won't happen, but designers might not be thinking that way, and even if they are, that opens up a whole can of worms with the relative value of incrementally increasing one stat versus another.

    A formula like "a.atk * 4 - b.def * 2" will create real, positive damage results when ATK and DEF stats are equal. They will also cause the damage amounts to increase throughout the game as both characters' and enemies' stats grow larger, which is good because Max HP totals almost always increase throughout the game as well.

    This formula is far from perfect - if you check out some of the many Damage Formula discussion threads in this subforum, you'll see that I usually argue for multiplicative formulas, such as "(a.atk * skill_power) / b.def", instead of additive formulas. But the formula is just a default that's supposed to get you started off and produce quasi-reasonable numbers (with the default skills/classes/enemies) if you have no idea what you're doing, and it does that job just fine.
     
    #2
  3. Icelord888

    Icelord888 Villager Member

    Messages:
    29
    Likes Received:
    7
    First Language:
    Romanian
    Primarily Uses:
    RMMV
    I can think of two reasons why this was done:

    One - the devs wanted to give you an example of a more "complex" formula to show you what you can do with it, or at least the basics.
    Two - You want to see a better damage scales, seeing low dmg numbers isn't as fun as seeing big numbers flying (most people perceive it like that)
    Three - You want to avoid no damage (or 0 damage), because this is very confusing for many players (is that enemy immune to magic or it has just a rly high mdf?)
     
    #3
    atoms and SpicyNoodleStudios like this.
  4. kairi_key

    kairi_key Veteran Veteran

    Messages:
    83
    Likes Received:
    44
    First Language:
    thai
    As others have stated above,

    Having multiplier of user's ATK larger than multiplier of target's DEF will easily prevent damage from being 0 rather than flat ATK-DEF which can result in 0 damage easier.

    Another reason for it being 4 multiplying ATK while 2 multiplying DEF rather than just 2 and 1 is because the damage number can be satisfyingly large enough. "2*a.atk - b.def" is a doable formula, but the result tend to be lower than the norm of other RPG. (In former case, target's DEF must be 4 times larger than user's ATK to nullify the damage to 0, which is less likely to happen, while in latter case, target's DEF just need to be double the amount of user's ATK to nullify that damage).

    Also, they use subtraction rather than division to make a damage value graph a plain simple line. Division in formula will make the damage value graph into an exponential one and exponential is not that readily calculable/user-friendly when compared to the linear one.

    I advice you play with it and then playtest it just to see how these formula feels when used in-game. Then you can adjust it to your liking. It's not a perfect formula.

    As for spells, you'll see a constant number of either 200, 500 or 1000 plus user's ATK/MAT. That would mean that the constant number will be the bottom threshold of the spells in its raw power. For example, 200's spells won't go below 200 in raw power for sure(that is before subtracting the target's DEF/MDEF).
    As for why 200 500 and 1000, I'm not too sure myself. It could be arbitrarily. One thing for sure is that it dictate the threshold of how powerful each tier of spells will become. The relationship between the user's MAT and target's MDF is roughly the same, but the spells' raw power scale up in each tier instead. This makes it easier for us to adjust the threshold of each tier to your needs rather than having to give the program's user complex relationship of multipliers to work with or even have to think up new formula for those who is not that good with math(like me, lol).

    As for Special skills, they are simply normal attack's formula adjusted. Mostly, we'll see 4 multiplier adjusted into 5 or 6. I guess it is a way for the dev to show us how we can take the advantage of simple equation to increase the damage output while still keeping the the relation of the user's ATK and target's DEF some what the same.
    Some skills will have more than user's ATK. In that case, the devs show us that you can incorporate other stats into the formula to favor some other stats for each different classes. For example, in case of a class favoring AGI, the original formula of 4*user's ATK will have to be broken up into half; 2*ATK and 2*AGI, which is simply the average of the 2 stats. (You can totally do 4*AGI, but AGI is not a stat that usually scale up as you equip new weapons, so I guess that's why the dev chose average between the common ATK stat and another secondary stat.)

    I think the program devs chose these numbers to make it not that hard to calculate/wrap your head around while still making some decent, satisfying numbers for the damage. As well as showing us user the way to tweak simple formula into our game.
    Tbh, it's just a relationship between numbers/factors. It will be easier to grasp the relationship of these numbers by setting "variance" into 0 and playtest it with every skills equiped.
     
    #4
  5. SpicyNoodleStudios

    SpicyNoodleStudios Aspiring Vigilante Veteran

    Messages:
    64
    Likes Received:
    85
    Location:
    Sacramento
    First Language:
    English
    Primarily Uses:
    RMVXA
    I'm not saying Enterbrain's formula is wrong or anything. I didn't understand it at first. It seems to be more for beginners which is what everyone is getting at and I see that now... so, question answered! Thank you so much!

    So, for zero damage...

    To avoid zero damage shouldn't attack always be more than defense? I mean, if you're doing an amount of damage that the defense can withstand it should result in zero damage being inflicted...

    I'd rather use more manageable numbers. They're easier to strategize with. If the numbers get out of control the players are going to spam whatever attack seems the most effective and hope for a victory more than plan a victory. I also think having zero damage isn't a bad thing though if you manage to reach an enemy that you're doing 0 too, it should either be for story purposes or an accident... More than anything, 0 damage should appear when going back to level 1 enemies after completing most of the game.

    So, I understand why the formula is that way but I prefer more simple formulas.

    Are there any threads that show examples of the formulas used in other turn based rpgs?
     
    #5
  6. TheoAllen

    TheoAllen Self-proclaimed jack of all trades Veteran

    Messages:
    4,385
    Likes Received:
    4,955
    Location:
    Riftverse
    First Language:
    Indonesian
    Primarily Uses:
    RMVXA
    This is purely a game design choice. Some design can work with zero damage, some can't. There is no should. Just use what best to pick for your game design. Now, if there is a given context on the whole game design, it can be discussed further if zero damage would work or not.

    There's several threads discussing the damage formula, although I forgot the exact thread title. Maybe you can search them by the keyword "damage formula" or something.
     
    #6
  7. ShadowHawkDragon

    ShadowHawkDragon Veteran Veteran

    Messages:
    469
    Likes Received:
    836
    First Language:
    English
    Its less about preventing zero damage its about making the status/equipment screen readable at a glance.

    imagine looking at your status screen and you saw
    80, 70, 30, 90, 110, 80

    now what if I told you the average for those stats was 80, EXCEPT for 2 which are balanced around 40. It wouldn't matter if I told you which, let's the 2nd and 4th. At a glance those 2 stats look about right (no more than 10 above or below 80 ), BUT that's not the case. Because their 'average' value is 40 not 80,so in terms of raw value they are actually worth 140 and 180 compared to the others. As you can see, working out how your stats compare to each other starts to become a headache and it becomes easy to make false assumptions.

    So while having the average defence half that of attack makes sense as a designer, it can make things harder to understand for the player since they now have to double defence on the status screen to compare their stats.
     
    #7
    SpicyNoodleStudios likes this.
  8. SpicyNoodleStudios

    SpicyNoodleStudios Aspiring Vigilante Veteran

    Messages:
    64
    Likes Received:
    85
    Location:
    Sacramento
    First Language:
    English
    Primarily Uses:
    RMVXA
    I'm not sure about other players but when I look at the stats, I automatically connect the stats and the character in my mind. Humans? Squishy. Low defense makes sense. Armor? Higher defense boost. Tough from going through a lot of fights? Magical barrier? etc etc etc.

    Maybe it's more of a normal occurrence to see the stats as nothing but numbers? But I see them as representations for other things.
     
    #8
  9. Basileus

    Basileus Veteran Veteran

    Messages:
    260
    Likes Received:
    398
    First Language:
    English
    I don't think it's just about the 0 damage issue, I think it's also about scaling damage. If the player's damage was a simple (a.atk - b.def) calculation, then every attack upgrade would be pretty much negated every time the player encountered new enemies.

    Say the player's starting Wooden Sword gives 5 attack and the player has 20 base attack. Against a starting enemy with 10 defense the damage looks like this: (20+5)-(10)=15. Then the player levels up (+5) and gets a nifty Bronze Sword (+5), resulting in damage that looks like: (25+10)-(10)=25. But then the player goes to a new area with tough enemies and this happens: (25+10)-(20)=15. And if enemy health also scales then this results in enemies becoming damage sponges in addition to relatively static damage numbers being boring and unsatisfying. The player wants to see their damage numbers scale over time. This is only one solution to the issue of scaling into late game, but it's a simple one that helps prevent wild balance issues from enemy base stats being a little too high/low.

    Damage could certainly still be reduced to low levels against enemies with high defense when it makes sense to do so. This could be used to indicate that magic damage is the way to tackle that enemy, or that the enemy is currently not something the player should be fighting. A tough fight resulting in low damage numbers is fine. But having the player's damage constantly staying around the same levels due to scaling enemy defense, or going up only to go back down as soon as the player reaches a new area, can be frustrating. I think a formula where attack inherently scales harder than defense allows damage to generally ramp up over the game's length regardless of scaling enemy defense.
     
    #9
    SpicyNoodleStudios likes this.
  10. bgillisp

    bgillisp Global Moderators Global Mod

    Messages:
    12,093
    Likes Received:
    12,269
    Location:
    USA
    First Language:
    English
    Primarily Uses:
    RMVXA
    @Basileus : Or you can leave DEF the same or mostly the same in the game. FFX almost all enemies have 1 DEF (though I think they call it VIT in FFX) per the strategy guide, but the player hardly notices this as the HP goes up to match the ATK stat increases of the player.

    Now you might have a harder time convincing the player that your DEF hardly ever going up is part of the balance. This might be why FFX also didn't have stats on armor or weapons, and instead it was just the boosts you could add to them which changed.
     
    #10
    SpicyNoodleStudios likes this.
  11. Wavelength

    Wavelength Pre-Merge Boot Moderator

    Messages:
    4,381
    Likes Received:
    3,656
    Location:
    Florida, USA
    First Language:
    English
    Primarily Uses:
    RMVXA
    I think this sort of works toward the idea of "simplification" of stats and damage formulas, which I always recommend to designers unless the complexity is necessary for a specific combat dynamic.

    In one of the two games (of my own) that I'm working on, I simplified the ATK/MAT stats into a single ATK stat, and simplified the DEF/MDF stats into a single DEF stat. In the other game, I went even further - battlers' only three stats are Max HP, Max MP, ATK, and AGI. "Defensive" battlers are simply given a lot more Max HP, or interesting skills to prevent incoming damage.

    This makes things much clearer to the player (such as why they are or aren't dealing a lot of damage), and also makes things easier to balance as the designer (since there are fewer moving parts).

    I'm getting beyond the scope of "why is the default formula designed this way", but just wanted to quickly spout about simplicity since the discussion has been moving toward ignoring or downplaying certain stats. :D
     
    #11
    SpicyNoodleStudios and xoferew like this.
  12. SpicyNoodleStudios

    SpicyNoodleStudios Aspiring Vigilante Veteran

    Messages:
    64
    Likes Received:
    85
    Location:
    Sacramento
    First Language:
    English
    Primarily Uses:
    RMVXA
    I think this is good, tbh. To me, this is more realistic and more satisfying to experience. What I see this as, is an opportunity to get creative. It could be used to incentivize using skills other than the basic attack. If you give the player skills that lower defense, elemental attack which let them target weaknesses, poison attacks which let them do DoT while attacking etc etc then that offsets what seems to be a lame damage slope. It could also mean that you can't just level once or twice and expect to take on the next tier of enemy. You have to get strong, for real.

    I personally agree more with this type of design philosophy. However I have kept MDF in the RPG I'm developing as I think armor wouldn't block electricity as well as a sword. I think that's what you are saying though, no need for the extra complexity unless it's there for a reason.
     
    #12
  13. JosephSeraph

    JosephSeraph White Mage Restaff

    Messages:
    811
    Likes Received:
    668
    Location:
    Santos, Brasil
    First Language:
    Portuguese
    I think it's important to ask yourself why and which is the simplest route to convey that gameplay narrative; you can keep the MDF stat for example, or you can scratch MDF altogether and have every [insert armor type] block 1/4 of a certain damage type, as well as give varying amounts of HP for example.

    The dangerous thing about using the default battle system (or even more dangerous when you're adding scripts) is that it's easy to accept the defaults without not even thinking about them -- it's just so common to see RPG Maker games that use the default database States for example, and while there's certainly nothing wrong with them, it's certainly not as good as when you take the time to design every aspect of your gameplay, from scratch

    That's why I enjoy making custom evented battle systems on 2k3, it forces myself to plan every aspect of the battle system as I program it and really question whether it's worth to pour in a lot of hours into a feature that can even detract from the game, conversely it often gives me the chance to be inventive with it in a way that, because of my lack of Ruby or JavaScript skills, I just can't on Ace and MV with scripts (or without)

    But yeah, it's good to ask yourself about every aspect of the gameplay system and see whether everything coalesces and supports your gameplay goals or if it stands in your way. There are soooo many different JRPGs that do battle formulae sooo differently, as well. FFX's, for example, which has already been cited, does a cubic battle formula -- instead of STR * 4 like the rtp, it's STR³, or STR*STR*STR. (IT's actually a much larger and more complex cormula than that, but that's the main thing.)

    And why does it do that? Because of the game's Sphere Grid. FFX's formula is based around each point increasing your damage not by a flat number, but by a fixed percentage of the previous number. For example, iirc 5 points in FFX always raises your damage by 1/3. (That's the effect of a fully stacked Cheer, and each Cheer stack = 5 STR.)

    This means that Cheer is equally as strong in every part of the game, but especially, that a STR+1 node will always be very useful and provide a noticeable damage bump. (Until you hit the shitty damage cap which is 'nother can of worms...)

    In games where you want these stat ups to be constant and always valuable throughout the whole playthrough, this sort of formula is good. Otherwise, a +5 Attack Seed from the beginning of the game will provide a large damage bump early game but will be hardly noticeable late-game; therefore this is also a good damage formula for games that do stat-ups on level up for example. Except a lot of these games will just use standard subtractive formulae, and add the scaling factor into the stat itself -- by making stat ups more powerful if you're higher on level for example.

    It's really a matter of thinking about how your game will flow and how you want your formulae to deliver that, it can be pretty complex and daunting to understand the stuff that some Final Fantasies pull off (really obtuse, large formulae) but if you have a set of super sturdy, simple formulae you understand very well and can always easily edit, you're bound to pull off nice and tight gameplay!
     
    #13
    SpicyNoodleStudios likes this.
  14. Wavelength

    Wavelength Pre-Merge Boot Moderator

    Messages:
    4,381
    Likes Received:
    3,656
    Location:
    Florida, USA
    First Language:
    English
    Primarily Uses:
    RMVXA
    I'm glad you brought this up! It is an extremely common mistake among game developers with no Design experience. Nothing to be ashamed of, and a great opportunity to learn.

    Realism is a great tool in video games, but it is a terrible aim. A great designer never includes a dynamic "because it's realistic" - they build a fun, clear, and interesting gameplay dynamic first - and then they try to wrap realistic framing around that dynamic to make it more immediately intuitive to the player (and more thematic).

    Let's focus on the first part - designing a great gameplay dynamic. When building a stat system to serve good gameplay, generally you want to look at "what are the different playstyles a player might want to give to their characters", and then to assign a stat to each of those playstyles to represent a clear way to invest in each style. Additionally, the stats must be well-balanced against each other (so that there's no one "correct" way to build characters) and both the damage formula and the stats (as well as other mechanics like Element Rates and States) should make it as clear as possible why you are dealing more or less damage against an enemy.

    When I look at something like "Armor would block a sword better than it would block electricity", I don't see a compelling reason to separate the defense stat into Physical and Magical.
    • First off, it's highly open to interpretation - for example, ceramic armor would do a LOT to block electricity, beast hide armor would do a little, and metal armor would probably amplify the electricity magic, but then metal armor would protect you much better against a blast of water than ceramic armor would. So which one would have the higher MDF?
    • Secondly, it creates extra, unnecessary confusion about the results of actions. Why did you take a lot of damage when the enemy spellsword attacked you with an electricity-covered blade? Was that attack physical or magical? Was it because your DEF or MDF was low? Or maybe it was because his ATK or MAT was really high? All of the above, because the formula used all of those stats? OR, maybe that particular skill is just really powerful? Or maybe it was an Elemental Weakness to Electricity? Or maybe the RNG just gave a really unlucky result with the Variance? If you cast a spell to double that character's MDF right now, will it help? And if so, by how much? (The more of these things you can show to the player - or better yet, remove from your design entirely - the clearer the rest will be!)
    • Third, it makes your game a little harder to balance, since you don't know which stats the player will have invested in when they go against a certain boss, meaning that boss might be too hard for some subset of players, and too easy for others... and you now have two defensive stats that each only work against half of attacks, which you now need to balance against Max HP which works against all attacks.
    • But most of all, in most cases it doesn't actually add anything interesting or fun to the gameplay! Since the player doesn't know what type of damage they're going up against in the near future, there's no interesting decision to be made about whether they want to invest in Physical Defense or Magic Defense, unless you give the player the option to (for example) spend a turn to switch their equipment mid-battle. Enemies will just use physical or magical attacks at random, and you'll either "happen" to have the right equipment for that stat equipped, or you won't.
      • Only in a very specific design would the divide make sense - for example, all battlers can deal only one type of damage, it's clearly signposted which type each enemy deals, and all characters of a certain archetype have clear strengths and weaknesses, such as all DPS Mages have much lower DEF than MDF. In a case like this, it allows for clear and interesting decision-making during battle - if your mages are badly injured, you need to quickly kill the enemies' physical damage-dealers; if the enemy troop has a mix of mages and other archetypes, you may want to have your physical damage-dealers target the mages while your own mages and tanks target someone else.

    I admittedly make a lot of assumptions and spout a lot of theory here, but I promise you that the results of adapting this philosophy of "simplicity over reality" is really good gameplay!!

    Finally, a look at the second part (wrapping realistic framing around an already-built mechanic). Designer board games tend to be really good examples here.

    7 Wonders
    has a mechanic where if you have more of a certain type of card than your neighbors at the end of a round, you gain victory points. This mechanic is cool because it creates a rippling "arms race" dynamic - when you take more of that card type, your neighbors have to decide whether they want to compete with you by taking more of that card, and if they do, their other neighbors have to do the same to compete with them! No matter what you frame this as, it's a cool mechanic that leads to fun gameplay. You could call it "comparison points" if you wanted to; it would still work. But the designers decided that "Military" was a good fit for overpowering your neighbors, and named the cards of this type Barracks, Armory, Walls, etc. Feels intuitive in the player's mind - if I load up more of these cards than you, I can overpower and conquer you. If the designers started with "what does an Armory do", "what do Walls do", etc., they probably would have made things unnecessarily complicated, and not come up with the beautifully elegant mechanic of "take more of these cards than your opponent".

    Race for the Galaxy has several different actions you can play each turn - for example, drawing new planets, adding planets in your hand to your empire by discarding other planets, having your planets produce goods, or discarding goods to earn victory points. This is a slightly oversimplified explanation of the actions, but you can sort of see the flow from the first action to the last, right? This is a very intentional flow by the designers (and the reason it's so interesting is because while you can only choose one action each turn, everyone gets to take that action). I fully believe the designer created this flow first, and then gave thematic trappings to the actions (Explore, Settle, Produce, Consume). If he started with "what would Exploring realistically do", it would be less drawing cards and more peeking at them. If he started with "what does consumption do", it would probably be populating the planets or making them happier, but the game doesn't need that type of complication - Victory Points is a good output. But it still feels really cool feeling like you are exploring the galaxy as you draw new opportunities, and playing cards like SETI to increase your Explore capabilities!

    By designing the mechanics from the ground-up, rather than starting with the object or theming and then working from the top-down, designers can create awesome play experiences.

    I completely and passionately agree with your general sentiments about stats in this post, but I did want to draw some attention to the numbers on FFX - either you explained the setup incorrectly, or (more likely) your conclusion is incorrect.

    If your current STR is 5 and you increase it by +5, you are increasing it to 10 and therefore increasing your damage by a whopping 700%! (10 cubed is 1000; 5 cubed is 125) If your current STR is 50 and you increase it by +5, you are increasing it by a modest 33%. (55 cubed is 166375; 50 cubed is 125000). So each incremental point of strength is definitely not raising your damage by a fixed percentage of the previous number.

    Despite the incremental percentage decreasing, the incremental AMOUNT of damage you'll deal with this point of strength over the last point keeps increasing, which seems like it would make STR extremely valuable unless the amount is being divided by at least the square of a scaling stat (like DEF) somewhere in the formula. For this reason, I'd be very, very wary of designing a formula that cubes a stat! It can very easily lead to runaway amounts of damage, completely decimating any sense of balance that the game would have had.
     
    #14
  15. Basileus

    Basileus Veteran Veteran

    Messages:
    260
    Likes Received:
    398
    First Language:
    English
    I used the basic attack as an example, but that actually applies to everything that uses the Attack stat for damage. You could bypass this damage reduction on skills by having skills do flat damage or having them scale with a different stat, but if you want physical skills and magic skills then it could impact all physical skills and make magic feel like the only option.

    I'm also not sure that players would like the "treadmill" effect on damage. If damage stays roughly the same over the course of the game while enemy HP increases, then it feels like you aren't getting anywhere and can take away from the sense of progression.
    • Player starts the game and can deal 5 damage to a Slime
    • Player gets a new weapon and can now deal 10 damage to the Slime
    • Player goes to a new area and fights a Spider, dealing 5 damage
    • Player has to upgrade their weapon again to deal 10 damage to the Spider
    The problem is that dealing 10 damage to the Spider is less impactful if it also has more health than the Slime. If the Slime has 10 HP but the Spider has 15 HP, then the player can kill a Slime in one hit after upgrading their weapon but it will take 2 hits to kill the Spider after upgrading their weapon a second time. In the first zone the player goes from 2 hits to kill the Slime to 1 hit, but in the second area they go from needing 4 hits to kill the Spider to 2 hits even after upgrades. If this continues then the 3rd enemy type will take 8 hits to kill going to 4 hits after yet another weapon upgrade. This can easily feel like the player is running in place and not getting anywhere, or even getting outpaced by enemies.

    Obviously this is a simple problem that can be fixed by balancing stats and weapon damage properly, but it demonstrates what I mean with weapon damage going up and down and up and down without really progressing. It feels satisfying to watch your damage go up with each upgrade. It can feel tense when your damage is lowered again by enemy stats, but it can also feel tense to see your bigger hits having less effect. In this case, you can keep the feeling of growth and the feeling of tension through the UI. Showing damage numbers provides the sense of increasing power that makes upgrades feel meaningful, while showing enemy health bars can show how ineffective the player's damage can be. This has the added benefit of communicating to the player the difference between an enemy with tons of health and an enemy that resists physical damage. Seeing an enemy with so much health that their damage barely moves the bar signals that they are up against an enemy that may be too strong for them at the moment. But seeing their damage become lower is a signal that the enemy may simply require a different type of damage.

    I completely agree with incentivizing the player to use all of their skills, I just disagree that constantly keeping Attack damage in the same range throughout the game is a fun way to do so. It's all in how you communicate what is happening to the player. If the player only sees low damage numbers on their attacks then after a while they may wonder why they would even bother to upgrade their weapons. Sure, you could add other stats/features to weapons, but then you need to ask yourself why you are even bothering to have weapons and basic attacks in the game at all when you could just have magic and accessories instead.

    The (a.atk * 4 - b.def * 2) formula is definitely a very simple fix and probably not the most elegant one, but I think it does the basic job of maintaining a sense of progression. At the very least it makes sure the player's attacks don't go all the way back to Lv. 1 damage unless you give an enemy tons of defense. Making the player want to use buffs/debuffs/statuses/weaknesses should be done through the enemy and troop composition design, not by preventing the player's attacks from dealing satisfying damage.
     
    Last edited: Sep 19, 2019
    #15
  16. JosephSeraph

    JosephSeraph White Mage Restaff

    Messages:
    811
    Likes Received:
    668
    Location:
    Santos, Brasil
    First Language:
    Portuguese
    You're absolutely right! I mentioned the FFX formula has a cubing element for its progression but I wasn't quite clear about it (mostly because it's got too many steps for I to quickly process it and elucidate)

    but that's the base formula, before defense reduction:

    Damage=(STR³/32)+32
    (and then this value is multiplied by the ability multiplier, then once again multiplied by a defense constant and divided by 730)

    Now though, you're absolutely correct that it DOESNT increase the damage by a linear 33% every 5 STR! That honestly blew my mind. There's some step I'm missing in the calculation

    100 STR= 31.282‬
    105 STR= 36.207 (~15.7% increase)
    110 STR= 41.625 (~14.9% increase)
    115 STR= 47.559 (~14.2% increase)

    oh wow i'm..... really
    It's like everything I knew was swept from beneath my feet LOL
    You can still see how a small 5 STR increase results in a great damage increase even lategame, but it's a lot less neat than I thought it was ;o;
    Sorry for my inaccuracy!

    The neat thing to take note too though, is that FFX eases its cubicness a lot by dividing by 32 then adding a flat 32 on top. It's still kinda wonky when it gets to the late game though, with every skill hitting the 99999 relatively easy with high enough stats, and some stuff being blown far off into the millions (Kimahri's Nova) even though the hard cap is 99999, with the late game becoming a painful Quick Hit fest and characters like Lulu becoming utterly useless... Sad, it's a weird example of a game whose battle formulae worked brilliantly for the main game and then the endgame content was just so bizarre and interacted with the gameplay systems so differently

    I usually have a lot of fondness for this sort of cubic damage increase (for systems where it's relevant) but I personally have for my last few projects used a simple multiplier for my formulae.

    For example, an attack spell deals MAT * 4 damage. And that's it. Enemies don't even have (regular) defense, in the case of my latest side project I calculate the defense portion as (MATx4) x (MDF) / 100, meaning that if an enemy (or ally) has 100 MDF they'll take "full" damage from magical attacks, if they have 200 MDF they'll take double. (kind of like Magic Damage Rate, except it's an evented battle system on 2k3)

    I find that level of predictability to be really pleasant. Like on FF1 where you knew a Cure spell would heal 16~32 damage. I've been doing that since my last playthrough of Makai Toushi SaGa, since every action in that game works like that (having a different formula for each weapon, instead of the weapons adding X to a stat)
     
    #16
  17. SpicyNoodleStudios

    SpicyNoodleStudios Aspiring Vigilante Veteran

    Messages:
    64
    Likes Received:
    85
    Location:
    Sacramento
    First Language:
    English
    Primarily Uses:
    RMVXA
    Yo, thanks for sharing so much information! I love reading all these different perspectives on how to do things. I feel like I've managed to add some new ideas to my arsenal. Though I agree with some things, I feel like there is simply a difference of preference.

    For example, some confusion for the player is good. They should be thinking, trying to understand to some degree. There's the idea of easy to get into but hard to master. If a player wants to perform more complex strategies, they will have more complex feedback to deal with. If you want the option to access deeper systems, that is unavoidable. The option to spam a basic attack is usually still available. Also, You can't slice a slime's leg to slow it down. If you ignore too much realism, the player's immersion will be eviscerated.

    Another example, the treadmill effect. Yo, just have enemy armor increase slower than the health. That way the player consistently retains more damage throughout the game. If being able to go back and wreck weaker enemies isn't enough of an indicator of progress, the lower armor slope should do the trick. I'm not sure how anyone else envisions a game progressing, but the time to finish a fight shouldn't shorten when moving up to stronger enemies. It should take around the same amount of time or more.

    Also, I have absolutely no problem putting in the work to properly balance a battle system.
     
    #17

Share This Page