# Using levels to increase magic spells

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

1. ### CWellsStoryteller/Artist

Messages:
731
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?

2. ### djDarkXRetro & Remastered Music Guru

Messages:
2,699
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!

3. ### CWellsStoryteller/Artist

Messages:
731
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.

4. ### Tai_MTVeteran

Messages:
5,144
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?

5. ### CWellsStoryteller/Artist

Messages:
731
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.

6. ### Tai_MTVeteran

Messages:
5,144
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.

7. ### CWellsStoryteller/Artist

Messages:
731
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
8. ### FafnirAnd yet, these hands will never finish anything.

Messages:
317
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.

9. ### Tai_MTVeteran

Messages:
5,144
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.

10. ### CWellsStoryteller/Artist

Messages:
731
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

11. ### FafnirAnd yet, these hands will never finish anything.

Messages:
317
25
Welcome to PEMDAS...

12. ### Tai_MTVeteran

Messages:
5,144
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.

13. ### CWellsStoryteller/Artist

Messages:
731
40
First Language:
English
Please Excuse My Dear Aunt Sally/ Parenthesis Exponents Multiplication Division Addition Subtraction.

14. ### Tai_MTVeteran

Messages:
5,144
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.

15. ### CWellsStoryteller/Artist

Messages:
731
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
16. ### muramasaAbomination of life, or life itself.

Messages:
581
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

CWells likes this.
17. ### CozzerVeteran

Messages:
258
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...

Fafnir likes this.
18. ### FafnirAnd yet, these hands will never finish anything.

Messages:
317
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.