Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411646 Posts in 69395 Topics- by 58451 Members - Latest Member: Monkey Nuts

May 15, 2024, 08:47:52 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsDeveloperDesignCalculations on paper? - The planning of level ups, damage, etc..
Pages: [1]
Print
Author Topic: Calculations on paper? - The planning of level ups, damage, etc..  (Read 1850 times)
Cello
Level 0
*


View Profile
« on: August 01, 2011, 10:38:57 AM »

Hey there designers,

I come to you all today with a request for advice in how to progress with my game idea! I'm currently in the process of designing a 2d sidescroller, or Castlevania-type game. So far i've fleshed out a lot in my notebook as far as the plot and basic game features go. However, one thing I always seem to end up stuck on is designing balanced formulas for stat progression when obtaining a level, points gained for allocation when levelling up, and the dreaded damage calculation formula.

How would you go about planning these formulas on paper outside of code?

I ask this because after reading several game design books/articles related to the engine i'm using (Torque 2d), the authors suggest that in addition to listing out all the basic details/functions, you should plan out the calculations and formulas as well to better help them understand what it is your aiming for.

Any tips, examples, or references would be greatly appreciated to help me cross this bridge.
Logged
Tumetsu
Level 10
*****



View Profile WWW
« Reply #1 on: August 01, 2011, 10:45:56 AM »

I think that to find good equations for stat-growth may be rather hard, actually I'm doing something similar at the moment. I think you should first think how you want your game feel. Grindy? More casual? How steep curve you want and then find the proper curve. I doubt you can make this on paper only and best way is probably testing until you find one which fits your purposes.

I have to soon design stat-growth equations for my rpg-game and I plan to first make table of stats and exp by hand then fit curve in created data-points to get an equation to use in actual game.
Logged

psy_wombats
Level 0
**



View Profile WWW
« Reply #2 on: August 01, 2011, 11:35:01 AM »

There's nothing that playtesting can't fix. That said, it's always better to start with a base. Is there any reason you're constrained to paper and can't use a better modeling tool? Even something like simple graphs in Excel or with Wolfram Alpha would give you some better insight.
Logged

WombatRPGs - Game Discussion and Design
baconman
Level 10
*****


Design Guru


View Profile WWW
« Reply #3 on: August 01, 2011, 11:55:52 AM »

Use the KISS formula. Keep it simple, silly.

Something like...
%weaponlevel% + %attackstat% = attack.
%armorlevel% + %defensestat% = resist.
%spelllevel% * %effectbonus% + %magicstat% = magic.
%barrierlevel% * %resistbonus% + %magicstat% = magic resistance.

Now, physics on the other hand? That just takes a little feeling out. You'll have to know about what the character should be capable of executing - start off with how directly high and far you want your character to be capable of jumping. Horizontal speed first - find something that works within your tastes, and don't err on the side of being too slow-paced. Then tweak initial jumping vspeed, gravity, and maxvspeed to get your jumping arc. It may seem like something you can "math together," but not without intimate familiarity of the physics engine, and that only comes with time and exposure. You'll home in on values that work for you.

Are you going for 8-bit CV style, SotN style, or something a little quicker-paced, but similar in overall abilities? (Like NES Ninja Gaiden...)


EDIT: As far as the Leveling formula goes, the most common one I know of works something like this:

XP to level = 100 * %currentlevel%

And every Level Up effectively resets/spends your XP. The "total XP acquired" stat you see on status screens then simply re-adds the missing amounts by:

%currentxp% + (%currentlevel%! * 100)
« Last Edit: August 01, 2011, 12:03:33 PM by baconman » Logged

Cello
Level 0
*


View Profile
« Reply #4 on: August 01, 2011, 01:34:24 PM »

Thanks for all the helpful responses guys!

@Tumetsu
Yeah, it definitely is a progress stopper in some cases. I definitely see what your saying, though. Planning it all out on paper can only go so far. Real progress starts once the game begins development so you can get in there an really get a feel for what you want so refinements can be made. Best of luck to you with your project!

@psy_wombat
Well, currently i'm computerless for the next two-or-so weeks, and I don't really want that to stop me from making progress. I imagine in those two weeks I could finish planning out a simple first game project so I can begin development when I have access to a computer again. I wouldn't doubt that excel would be a HUGE help with testing damage formulas, though.

@Jasmine
I figured that's how I would handle experience in levels for the game. I was just kind of scared of how stat progression would work. I didn't want the player to gain a level only to immediately be given so much attack that everything goes down in one hit, or possibly vice-versa. Don't get me wrong, though; that still helps out!

@Baconman
Thank you for that very helpful post, it really helped to give me a push in the right direction in planning a simple yet effective damage formula. As for the physics, i'm not too concerned with that. I'm a game art/design student who just finished up a mess of physics classes, so I feel pretty confident when it comes to tackling the physics of this project. Overall i'm thinking more along the lines of watered-down Sotn for my first game.
Logged
Richard Kain
Level 10
*****



View Profile WWW
« Reply #5 on: August 01, 2011, 01:38:15 PM »

Frankly, I would probably use a spreadsheet. That's what a lot of those stat tracking and comparison algorithms are based off of anyway.
Logged
Orymus
Level 3
***


View Profile WWW
« Reply #6 on: August 02, 2011, 06:45:15 AM »

Normally I use endpoints.

If you reverse engineer (in this case, reverse design) a game like any given Castlevania, you'll end up realizing there are a number of enemies that are staples to the game.


Formulae aren't just a chore to get things going, they help you adjust the flow, and there are a number of crazy things you can do with that aside from letting the player know an area is unsuited for him at this stage.

First, you do want to set up the kind of tempo you want as Tumestu stated in his own words.
For a casual game, you want to ensure the fight enemy can be killed in a single well-placed strike whereas, for a more grind-based game, you absolutely want to avoid that; the first enemy should take anywhere from 2 to 5 strikes before falling. Grinding, in this scenario, will allow the player to reduce the amount of hits it takes to kill an enemy.

One of the most important aspects of balancing a game like that is that stats 'don't matter' to the player. The result, however, does.

If your character attacks by 4 against an enemy with 8 hp, you will take 2 hits to kill it. Adding 1 power at this stage will be irrelevant because there will be no measurable difference. For this reason, you need to be able to scale your game as easily as possible. You might be tempted by bigger numbers, but smaller numbers here will be your best friends.
Have your character start with 1 power, and enemies with 1 hp for the sake of it. Quickly scale up enemies hp, and slowly character power.

You could do a chart of your optimal path:

Level 1 : 1 power
Level 2 : 2 power
Level 3 : 3 power

And then add three columns for three staple monsters you want to compare with.

Level 1 : 1 Power : 1 Hit : 2 Hits : 5 Hits
This would mean that, at level 1 (having 1 power) your character would take 1 hit to kill lowly scums, 2 hits for slightly more advanced dudes and 5 hits for mid/late game warriors.

You can even skip levels to have a broader idea:

Level 1 : 1 Power : 1 Hit : 2 Hits : 5 Hits
Level 5 : 5 Power : 1 Hit : 1 Hit : 1 Hit
Level 15 : 15 Power : 1 Hit : 1 Hit : 1 Hit
etc.

Once you have the relative "power" value for this level, you can start the maths and find the right formula that touches most of these endpoints.

You will probably want to do the same thing for your 'health' value as well.

In this case, do the opposite;

Calculate how many hits you can survive from enemies:

Level 1 : 1 Hp : 1 Hit : 1 Hit : 1 Hit
Level 2 : 2 Hp : 2 Hits : 1 Hit : 1 Hit
Level 3 : 3 Hp : 3 Hits : 2 Hits : 1 Hit

Etc.

Note that this will also help you define the values of HPs and Power for your enemies as well.

As for the actual formula, this is the 'easiest' part. It is basically just maths, if you are somewhat unfamiliar with that, there may be some tools out there (not game-related) that will find the formula you are seeking for based on endpoints.

Apparently, excel 2007 has a built-in tool for that. It may be worth investigating Smiley
Logged
RyanHuggins
Level 1
*



View Profile WWW
« Reply #7 on: August 03, 2011, 10:26:17 PM »

Even though I very rarely venture into actually calculating things like this out, I honestly think that no matter what you do, stat progression is something that will change as you actually go about developing your game. As an indie developer, I personally believe that you should take a basic formula based on the general idea of your game (for example, LevelEXP = LastLevelEXP*1.125 + BaseEXP/CurrentLevel <---Just made up) and run with it. As your game develops and you code and animate gameplay, then you can go ahead and start doing basic stat calculations to determine how you want the game to scale in difficulty.

For my current game, I've determined only the max stats and the base stats; everything that comes in-between will be determined after the entire game is completed and during balancing/final bug-testing.

Granted, this is my first game, so this may be a horrible idea. The only way to learn is to do however. Tongue In theory, I believe my idea is the best method to go for, so that all the stats are flexible from the beginning and you design the game and enemy difficulty based on level design, enemy location, and how the game itself scales in difficulty naturally (not due to enemies).
Logged

Orymus
Level 3
***


View Profile WWW
« Reply #8 on: August 04, 2011, 05:52:29 AM »

The downside is that you are essentially saying your game will be based around multipliers whereas it may not be the case.
Think of stats increase ala D&D.
I'm not saying square numbers or multiplication is bad (it served Squaresoft/SquareEnix very well, hence Square's initial naming) but it may not directly tie-in with your ultimate strategy.
There are more maths operations than strictly multiplying values.
Logged
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic