• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 11:03
CEST 17:03
KST 00:03
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
ByuL, and the Limitations of Standard Play1Team Liquid Map Contest #22: Results and Winners7Code S Season 2 (2026): RO4 and Finals Preview12TL.net Map Contest #22 - Voting & Ladder Map Selection7Code S Season 2 (2026) - RO8 Preview8
Community News
[TLMC] Summer 2026 Ladder Map Rotation05.0.16 patch for SC2 goes live (8 worker start)76ZeroSpace at Steam NextFest - Last free demo31Weekly Cups (June 8-14): Clem and Solar double, PTR tested0RSL: S6 Finals played at BlizzCon 202611
StarCraft 2
General
5.0.16 patch for SC2 goes live (8 worker start) Daily SC2 Player Grid - feedback wanted Is the larve respawn broken? The Death of Cheese: From a Professional Cheeser Mizenhauer's Douyu Cup Preview
Tourneys
Maestros of The Game 2 announcement and schedule ! Douyu Cup 2026: $20,000 Legends Event (June 26-28) RSL Revival: Season 6 - Qualifiers and Main Event INu's Battles#17 <BO.9> Sparkling Tuna Cup - Weekly Open Tournament
Strategy
[G] Having the right mentality to improve
Custom Maps
New Map Maker - Looking for Advice - Love or Hate Work In Progress Melee Maps [D]RTS in all its shapes and glory <3
External Content
The PondCast: SC2 News & Results Mutation # 531 Experimental Artillery Mutation # 530 One For All Mutation # 529 Opportunities Unleashed
Brood War
General
ASL 22 Proposed Map Pool Quality of life changes in BW that you will like ? Farewell Beloved Starcraft (Youtube Videos) BW General Discussion vespene.gg — BW replays in browser
Tourneys
[Megathread] Daily Proleagues [ASL21] Grand Finals The Casual Games of the Week Thread [BSL22] GosuLeague Casts - Tue & Thu 22:00 CEST
Strategy
Simple Questions, Simple Answers Creating a full chart of Zerg builds Relatively freeroll strategies Why doesn't anyone use restoration?
Other Games
General Games
Nintendo Switch Thread Path of Exile Stormgate/Frost Giant Megathread Beyond All Reason ZeroSpace at Steam NextFest - Last free demo
Dota 2
Looking for a Dota Mentor Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
TL Mafia Community Thread Vanilla Mini Mafia
Community
General
US Politics Mega-thread The Games Industry And ATVI Canadian Politics Mega-thread Things Aren’t Peaceful in Palestine Russo-Ukrainian War Thread
Fan Clubs
The HerO Fan Club! The herO Fan Club!
Media & Entertainment
Movie Discussion! Series you have seen recently... [Req][Books] Good Fantasy/SciFi books [TV/BOOK] *SPOILERS* Game of Thrones Discussion
Sports
Formula 1 Discussion 2024 - 2026 Football Thread McBoner: A hockey love story TeamLiquid Health and Fitness Initiative For 2023 Cricket [SPORT]
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread Facing Challenges in Mobile App Development
TL Community
The Automated Ban List
Blogs
Listen To The Coaches!
TrAiDoS
An Exploration of th…
waywardstrategy
I'm an arrogant trash talke…
FlaShFTW
Gauntlet SC2: A Retrospectiv…
Ctone23
ramps on octagon
StaticNine
StarCraft improvement
iopq
Customize Sidebar...

Website Feedback

Closed Threads



Active: 8891 users

Math genius needed for game making - Page 2

Blogs > shannn
Post a Reply
Prev 1 2 All
freelander
Profile Blog Joined December 2004
Hungary4707 Posts
January 06 2012 14:23 GMT
#21
On January 06 2012 19:52 evanthebouncy! wrote:
that is not what a mathmatician do. sorry


lol so true
neither programmers..
And all is illuminated.
freelander
Profile Blog Joined December 2004
Hungary4707 Posts
January 06 2012 14:27 GMT
#22
by the way I think that using the level of the attacking character is plain out retarded designwise. why would you do that?

you should just use the attack stats, which will naturally grow with a levelup. one more step forward simplicity..
And all is illuminated.
adwodon
Profile Blog Joined September 2010
United Kingdom592 Posts
January 06 2012 15:54 GMT
#23
On January 06 2012 23:27 freelander wrote:
by the way I think that using the level of the attacking character is plain out retarded designwise. why would you do that?

you should just use the attack stats, which will naturally grow with a levelup. one more step forward simplicity..


Some games will give you a bonus when facing lower enemies etc

I think just using the level isn't good though, instead just use the different charLvl - mobLvl to get some kind of multiplier ie 1.0, 1.1, 0.8 and just multiply the stats by that factor, simpler.

As far as tuning your numbers, don't be lazy, do it yourself.
People get to understand formulas by playing around with them and using them, not because they have some sort of magical innate ability.

Just make an instance where you can easily change the stats and play around to see what happens.
shannn
Profile Blog Joined May 2010
Netherlands2891 Posts
January 06 2012 16:23 GMT
#24
On January 06 2012 23:27 freelander wrote:
by the way I think that using the level of the attacking character is plain out retarded designwise. why would you do that?

you should just use the attack stats, which will naturally grow with a levelup. one more step forward simplicity..

If you actually read the comments I did that after some input from others already.

Then you'd have saved yourself time from actually asking and would know I had 0.0 experience in actually making a damage formula since it's actually my first game.

On January 07 2012 00:54 adwodon wrote:
Show nested quote +
On January 06 2012 23:27 freelander wrote:
by the way I think that using the level of the attacking character is plain out retarded designwise. why would you do that?

you should just use the attack stats, which will naturally grow with a levelup. one more step forward simplicity..


Some games will give you a bonus when facing lower enemies etc

I think just using the level isn't good though, instead just use the different charLvl - mobLvl to get some kind of multiplier ie 1.0, 1.1, 0.8 and just multiply the stats by that factor, simpler.

As far as tuning your numbers, don't be lazy, do it yourself.
People get to understand formulas by playing around with them and using them, not because they have some sort of magical innate ability.

Just make an instance where you can easily change the stats and play around to see what happens.

I know but asking for a very simple formula and try not tune too much would be much better and it can't hurt asking :D

Anyways I've actually made a separate project and just logging the values of each level's damage and stats vs other levels in the console for each touch input (so that I can generate multiple outputs).

This lets me see the damage output much better and faster by just watching it in the console and generate new damage outputs :D
http://www.teamliquid.net/forum/viewpost.php?post_id=6321864 Epic post.
THE_DOMINATOR
Profile Blog Joined April 2010
United States309 Posts
January 06 2012 17:05 GMT
#25
as someone already said modulo that shit!
DOMINATION
Excalibur_Z
Profile Joined October 2002
United States12248 Posts
January 06 2012 18:28 GMT
#26
You would probably do well to study some other games and see how they did it. Final Fantasy 6 for example used level^2 / 256 as part of its damage calculation. http://www.gamefaqs.com/snes/554041-final-fantasy-iii/faqs/13573

The calculation doesn't have to be exactly transparent (years of study went into FF6's system, for example) for the damage to be somewhat predictable, all you have to do is see to it that the numbers scale up appropriately as the game progresses. That is, level 3s probably shouldn't be doing 8x the damage of level 1s or you end up with insane numbers as levels increase.
Moderator
Sufficiency
Profile Blog Joined October 2010
Canada23833 Posts
January 06 2012 20:34 GMT
#27
First of all this is not math at all. It's just experimentation.

Also, is the problem with how the "random damage" is generated, or is there something else? For the random damage part, just use a uniform distribution from A to B.

Say the "fixed damage" calculated from your formula is D. Then you can make A = -0.2D and B = 0.2D. Then your character will always do 80% to 120% of the "fixed damage".

It's also interesting to allow a character to modify the random damage part (similar to HoMM series).
https://twitter.com/SufficientStats
Zocat
Profile Joined April 2010
Germany2229 Posts
January 06 2012 21:16 GMT
#28
You approach the problem from the wrong angle. Or you dont post enough information

First you need to set some goals - aka design. And from there you find the needed formulas (that part is the math part - and contrary to what people said - it IS what mathematicians do).

Until now we know:
- Charlevel should be important
- Attack/Defense Power (an item attribute?) should play a role
- There should be a random component

What you should think of:
How many levels are there in game? 10? 20? 100? 256? 1000?
How big is the health pool? How does it change over levels? How many hits should it take to kill an enemy when both have the same level? How many hits when the level is different? Does this change (i.e. 5hits for 2 lv 1 chars fighting, 10hits for 2 lv 100 chars fighting)? How important should the random factor be?

Random thoughts:
Your RandomDamage looks horrible. Between 0 and Charlevel*10. Variance is way to high. i.e. a lv 100 char:
1, 2 vs 999, 1000 (depending how the HP scales this is a huge issue). Take Sufficiency's approach with his D.

CharAttackingBasePower vs Level:
Why do you need both? Both increase when a level up occurs (I assume). So you can eliminate one stat? If it's class dependant use a class modifier.
Grndr101
Profile Joined March 2011
Belgium125 Posts
Last Edited: 2012-01-11 06:55:33
January 11 2012 06:47 GMT
#29
So an idea about your design here. What a lot of games do is keep a list of attributes for different mobs at different levels, and also for characters.

This would look like this:

MainCharacter(level1(attack, defence, health,.. other attributes), level2(..),.... ..., levelMax(....))

Same for others, while this looks cluttering, a list like this is actually quite efficient in terms of speed and size. It also keeps your game less cluttered instead of using formulas based on level.

You'd simply have to have a function where it retrieves the useful char info and uses it in damage calculation. This also allows you to adjust your stats for items, buffs etc. pretty easily. Just pull out the base stats for level, then apply equipment buff/debuffs and you have an instance of the character ready for combat.

Just some thoughts here, tell me if I'm wrong about sth I said, I am not a professional.

EDIT: lol this got me even more fired up to get into programming again, so much fun designing a game
Prev 1 2 All
Please log in or register to reply.
Live Events Refresh
BSL22 NKC (BSL vs China)
14:00
Playoffs Day 1/2
Bonyth vs TerrOr
eOnzErG vs Dewalt
XuanXuan vs TBD
ZZZero.O146
LiquipediaDiscussion
Maestros of the Game
12:30
Offline Playoffs
Maru vs SerralLIVE!
herO vs TBD
ComeBackTV 3232
WardiTV1938
RotterdaM1797
IntoTheiNu 1462
Ryung 1084
TaKeTV 729
SHIN 323
Rex306
IndyStarCraft 304
SteadfastSC299
BRAT_OK 200
EnkiAlexander 121
CosmosSc2 102
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
RotterdaM 1797
Ryung 1084
SHIN 323
Rex 306
IndyStarCraft 304
SteadfastSC 299
BRAT_OK 200
CosmosSc2 102
ZombieGrub79
StarCraft: Brood War
Britney 38746
Horang2 3515
Jaedong 1748
EffOrt 1443
BeSt 937
actioN 633
ggaemo 392
ZZZero.O 146
Leta 130
Mong 120
[ Show more ]
Sharp 99
Pusan 91
Movie 70
Hyun 57
sorry 56
Hm[arnc] 40
sSak 25
Aegong 23
Rock 22
yabsab 21
Sacsri 20
GoRush 19
Dota 2
qojqva1967
syndereN343
LuMiX1
Counter-Strike
pashabiceps960
Heroes of the Storm
Khaldor459
Other Games
singsing3354
B2W.Neo1715
Lowko390
crisheroes366
byalli332
Hui .223
XaKoH 163
KnowMe118
XcaliburYe90
Trikslyr17
fpsfer 2
Organizations
Dota 2
PGL Dota 2 - Main Stream9655
Other Games
EGCTV1074
StarCraft: Brood War
UltimateBattle 44
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 16 non-featured ]
StarCraft 2
• 3DClanTV 83
• Response 4
• IndyKCrew
• sooper7s
• AfreecaTV YouTube
• intothetv
• Kozan
• LaughNgamezSOOP
• Migwel
StarCraft: Brood War
• Michael_bg 8
• FirePhoenix5
• Pr0nogo 4
• STPLYoutube
• ZZZeroYoutube
• BSLYoutube
Other Games
• Shiphtur84
Upcoming Events
Douyu Cup 2020
13h 57m
BSL22 NKC (BSL vs China)
22h 57m
Mihu vs TBD
Online Event
23h 57m
RSL Revival
1d 10h
WardiTV Weekly
1d 19h
RSL Revival
2 days
RSL Revival
3 days
Bombastic Starleague
3 days
Kung Fu Cup
3 days
OSC
4 days
[ Show More ]
CrankTV Team League
4 days
Bombastic Starleague
5 days
Replay Cast
5 days
The PondCast
5 days
HomeStory Cup
5 days
Replay Cast
6 days
HomeStory Cup
6 days
Liquipedia Results

Completed

CSL Season 21: Qualifier 1
WardiTV Spring 2026
Heroes Pulsing #2

Ongoing

IPSL Spring 2026
Acropolis #4
YSL S3
BSL 22 Non-Korean Championship
CSL Season 21: Qualifier 2
SCTL 2026 Spring
Douyu Cup 2026
Maestros of the Game 2
Murky Cup 2026
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
Asian Champions League 2026
IEM Atlanta 2026
PGL Astana 2026
BLAST Rivals Spring 2026
IEM Rio 2026

Upcoming

CSL 2026 Summer (S21)
ASL Season 22:Wild Card Qualifier
CSLAN 4
Blizzard Classic Cup 2026
Kung Fu Cup 2026 Grand Finals
RSL Revival: Season 6
CranK Gathers Season 4: BW vs SC2 Team League
HSC XXIX
BCC 2026
Light Tournament 2026
Eternal Conflict S2 Finale
Eternal Conflict S2 E1
Heroes Pulsing #3
FISSURE Playground #5
BLAST Open Fall 2026
Esports World Cup 2026
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.