Using levels to increase magic spells

Discussion in 'Game Mechanics Design' started by CWells, Sep 16, 2013.

  1. CWells

    CWells Storyteller/Artist Veteran

    Messages:
    731
    Likes Received:
    40
    First Language:
    English
    Instead of having Ice I II III IV V etc, I'm considering relying on levels placed directly in the damage formulas.

    But It feels a bit stiff when I have something like:

    a.level * 15 + a.mat * 4.2 - b.mdf - 3.8.

    The level part is of concern to me because of how it would multiply on its own.

    I was trying to think of a good way to help control this multiple, or rather, chop it down a little.

    Could I do something like:

    a.level * 15 - 7? Meaning after it calculates a level 10 character using the spell for 150 damage, it takes away 7 points or something?

    What about dividing? What are some good ways for controlling the multiplier for formulas?

    Don't worry about the .mat-mdf part, I can work that all out without much issue. What leveling checks can you suggest?
     
    #1
  2. djDarkX

    djDarkX Retro & Remastered Music Guru Veteran

    Messages:
    2,699
    Likes Received:
    1,887
    Location:
    Currently unsure...
    First Language:
    Music
    Primarily Uses:
    RMMV
    You would usually add a base first, for damage and then add in a formula and try multiplying the damage put together with level divided by a certain number.  Example:

    250 + a.mat * n * a.level / n - b.mdf * n

    So let's say I wanted to have a level 5 character with a current stat of 25 MAT and a divison of 2 on the level, using a standard 2 multiplier on MAT and 1.5 multiplier on enemy MDF and use a spell using the above formula:

    250 + 25 * 2 * 5 / 2 - b.mdf * 1.5

    Barring the enemy attack damage, the outcome of total damage would be 375 - b.mdf * 1.5.  Now, if we increase the actor level to 27 along with the stats (randomly made, so not accurate)...

    250 + 156 * 2 * 27 / 2 - b.mdf * 1.5

    Base damage would be about 4,462, not including enemy mdf reduction.  Now, that's where the real kicker is.  How to account for enemy growth as well.  You can actually use the actor level to help with this.

    base + a.mat * n * a.level / n - b.mdf * n * a.level / n

    Anyway, it's really up to you to decide on how to go about this and what numbers to use, but it can help.  Anyway, good luck and I hope this helped a bit!
     
    #2
  3. CWells

    CWells Storyteller/Artist Veteran

    Messages:
    731
    Likes Received:
    40
    First Language:
    English
    Well  it gave me some idea now. I'm thinking adjusting the magic like this:

    a.mat + a.level * 30 / 1.20

    I think this will help me cut down on the level multiplier just a bit.
     
    #3
  4. Tai_MT

    Tai_MT Veteran Veteran

    Messages:
    5,144
    Likes Received:
    4,282
    First Language:
    English
    Primarily Uses:
    RMMV
    I'd be a bit wary about using levels as part of any multiplication of damage.  Especially since you're officially emphasizing level over stats once you do it.  Actually, in all honesty, I'd just cut out the "level" portion of the formula altogether.  You are either going to have too much damage added by including it, or far too little damage by including it.  It gets even more confusing when level cap is 100 and stat cap is 999.  Think about that for a second.  With your current formula at max stats, you are doing this:  999+100 * 30.  32970 Initial damage before the division symbol.  27475 final damage.  Though, you may want that.  Some enemies may require that much damage to put down, I have no way of knowing.

    But, I will offer you this advice, whether you want to keep going with adding your current level into the formula or not.  No matter what formula you use, you need to calculate out damage it will do at first level, at 20th level, at 50th level, at 70th level, and at 100th level with varying degrees of stats (namely the stats you plan to have by those levels).  Then, compare these damage amounts to the monsters you have already created or have plans to create.  30 + 2 * 30 / 1.20 is still 800 damage.  That's for a relatively low stat at level 2.  Are you sure you want that kind of damage?
     
    #4
  5. CWells

    CWells Storyteller/Artist Veteran

    Messages:
    731
    Likes Received:
    40
    First Language:
    English
    Which is exactly why I have a test enemy in a test troop. i was just going through the scaling, fighting at levels 1,10, 20.

    Before adding any enemy defenses into the equation, I'm seeing a fairly small but properly noticeable increase. It's going pretty well with this:

    a.mat + a.level * 30 / 1,20.

    The highest increase to mat from my equipment so far is about 80 points(highest level staff).

    At level 1 I am hitting for around 60 damage. At level 20 I am hitting for 570. It's pretty stable. At 40, I'm hitting for 1100. Now this is before adding enemy defenses and equipment.
     
    #5
  6. Tai_MT

    Tai_MT Veteran Veteran

    Messages:
    5,144
    Likes Received:
    4,282
    First Language:
    English
    Primarily Uses:
    RMMV
    Is that a division of 120?  I am reading it as one point two.  When I plug it into a calculator and even the RPG Maker, it's hitting around that 800 mark without the defenses calculated in.  If it's a division of 120, that would probably work better and make more sense.
     
    #6
  7. CWells

    CWells Storyteller/Artist Veteran

    Messages:
    731
    Likes Received:
    40
    First Language:
    English
    It should be 1.20. One point two zero. Basically cutting off twenty percent from the a.level.

    OH! If you are getting around 900 you are probably multiplying the mat instead of just adding it, See my formula again.

    It is a.mat + not * a.level. I see how you could have gotten 900 because I got that after I turned the + to *

    So at level one let's say mat is 40

    40 + a.level * 30 / 1.20
     
    Last edited by a moderator: Sep 16, 2013
    #7
  8. Fafnir

    Fafnir And yet, these hands will never finish anything. Veteran

    Messages:
    317
    Likes Received:
    25
    But that's just like giving everybody 25 extra matt per level, why don't you just do that?

    Unless you wanted a different level dependency in each spell, but that would be a nightmare to balance.
     
    #8
  9. Tai_MT

    Tai_MT Veteran Veteran

    Messages:
    5,144
    Likes Received:
    4,282
    First Language:
    English
    Primarily Uses:
    RMMV
    No, I'm doing addition like you said, ha ha.  If you were to do 40 + 1, it equals 41.  41 multiplied by 30 is 1230.  1230 divided by 1.2 is 1025.  I suppose if the formula uses actual math rules in which it does all the multiplication and division first, the numbers would make more sense.  1 multiplied by 30 is thirty, divided by 1.20 is 25, added to 40 is 65.

    If you're getting those numbers in your battles, it makes more sense than the way I was calculating it.
     
    #9
  10. CWells

    CWells Storyteller/Artist Veteran

    Messages:
    731
    Likes Received:
    40
    First Language:
    English
    Yeah my numbers are way smaller.

    The calculation is probably in this order:

    40 + 30(level 1) = 70 / 1.20.

    40 + 60(which would be level 2, or a.level * 30) = 100 / 1.20

    40 + 90

    The formula box might just be reading from left to right. Remember that the level part is already multiplied upon level up. So with these formulas it isn't going to be 40 + 1 making 41*30. No, 30 is the base, level 1. Then level 2 would make that 60. It is the level that multiplies the 30. So at level 10, It is 300.

    So as with the above examples:

    40 + 300 / 1.20

    Not 40 +10(the level) * 30, making 50 * 30. The numbers would rocket
     
    #10
  11. Fafnir

    Fafnir And yet, these hands will never finish anything. Veteran

    Messages:
    317
    Likes Received:
    25
    Welcome to PEMDAS...
     
    #11
  12. Tai_MT

    Tai_MT Veteran Veteran

    Messages:
    5,144
    Likes Received:
    4,282
    First Language:
    English
    Primarily Uses:
    RMMV
    That actually makes a lot more sense.  I kept screaming at my computer screen "you're doing it wrong!  These numbers are massive!".  Ha ha.  Makes more sense now.  The way you're doing it is 40 +(level *30), then dividing the whole thing by 1.20.  Those numbers are quite a bit more reasonable than what I was imagining.

    Also, what's PEMDAS?  Ha ha ha ha.
     
    #12
  13. CWells

    CWells Storyteller/Artist Veteran

    Messages:
    731
    Likes Received:
    40
    First Language:
    English
    Please Excuse My Dear Aunt Sally/ Parenthesis Exponents Multiplication Division Addition Subtraction.
     
    #13
  14. Tai_MT

    Tai_MT Veteran Veteran

    Messages:
    5,144
    Likes Received:
    4,282
    First Language:
    English
    Primarily Uses:
    RMMV
    That is not how I learned it, ha ha.  Though, I could see that being extremely useful.
     
    #14
  15. CWells

    CWells Storyteller/Artist Veteran

    Messages:
    731
    Likes Received:
    40
    First Language:
    English
    Well, I wanted to use levels for a different reason. And no I will not be changing up the increase in strength per level for different spells. That would indeed be a bit exhaustive. No, the levels will remain flat for every spell. I will be using. a.mat or a.mp depending on the spell, to adjust for differing strengths instead.

    You know how some spells have a default flat damage rate of 250? I didn't want things to be static like that. I wanted to figure a way to make it grow along with a character so I just decided to use levels. This way, instead of a spell doing 250 at level 1 and 250 at level 40, it can grow with the character. Just trying to tie up the magic more to the character.

    So my new and final formula setting is something like:

    a,mat * 4.2 + a.level * 27. So there is a 27 point bonus every time the character levels. And it isn't until level 37 that the spell is given about 1000 point boost just from the level alone. This is much better than a flat rate.
     
    Last edited by a moderator: Sep 17, 2013
    #15
  16. muramasa

    muramasa Abomination of life, or life itself. Veteran

    Messages:
    581
    Likes Received:
    293
    Location:
    CR
    First Language:
    Spanish
    base*(1+(a.level/30.0))+(a.mat*2)

    a.level*a.mat/2

    base*(a.level-b.level) #for this you will need to define a level property for monsters

    base+((30+a.level)/30)+a.mat*2

    Etc,

    OZ
     
    #16
    CWells likes this.
  17. Cozzer

    Cozzer Veteran Veteran

    Messages:
    258
    Likes Received:
    89
    Location:
    Italy
    First Language:
    Italian
    I think it would be better to just make the multiplier for a.mat bigger. Unless you want your warriors to be somewhat proficient with spells as they level up...
     
    #17
    Fafnir likes this.
  18. Fafnir

    Fafnir And yet, these hands will never finish anything. Veteran

    Messages:
    317
    Likes Received:
    25
    I agree. MAT is already a function of level, so by adding a level dependency you're not making any significant improvement.

    (You also have to trouble yourself with defining levels for monsters)

    Now if mat and level where independent, this would make sense. I've seen it done in Persona, where damage depends on your level and on the magic stat of your persona. This allows you to equip weak personas during the endgame and level them from scratch, if you wish.
     
    #18

Share This Page