Author Topic: Damage calculator  (Read 22803 times)

Offline HwitVlf

  • Dark Slayer Destroyer
  • ****
  • Posts: 1667
Re: Damage calculator
« Reply #60 on: July 08, 2013, 04:25:29 pm »
You'll prefer this formula. I didn't expect it. It just emerged organically. Call it divine providence.
Gee tanks fer tellin me cause I two stupt to no whats I like lesn somun tell me. Maybe it's divine providence punishing you for your irreverence by giving you a bad idea? Joking aside, I don't mean your formula is bad for game players, just that it's not optimized for the common fan game maker.

Quote
BTW: Am I the only one that gets freezed out of this site after a couple page reloads? I just expect for this site to go dead for 5 minutes at least once every time I use it. Might want to clean the lent trap on the database.
haven't had any problem like that in a long time.

Just out of curiosity, can you define "rat in a maze"?

Do you mean for instance you can't go somewhere because it will be Game Over if you get touched?

Or is it you can't dispose of an obstacle? Because if its the latter, say a giant in a doorway with 127 defense. Then with ATK-DEF you are going to being doing 0 damage unless your weapon is at 128. Unless you can make it under the giants legs he may as well be a locked door.

Whereas with this formula if your weapon is at 127 you do 63 damage. And at 89 you do 1 damage. At 177 or more you do 177.

Compare to 127 is 0 damage. 89 is 0 damage. And 177 is 50 damage.

Remember you are stuck between 0 and 255.


PS: Also consider ATK-DEF while being unintuitive also throws out at least half of the range. If you make a monster that has 250 defense. Then the best weapon the player can muster can only possibly do 5 damage plus bonus. Whereas if you hit that monster with a 250 weapon with SOM's formula you do 128 damage, which is what you expect when two equally matched opponents square off. In other words, a tie.

In this instance, by "rat in a maze" I meant you were given the illusion of being able to go where you want, but in truth, you would get 1 hit KO'd by creatures a few levels higher than you so you're actually stuck following the developer's choreographing.  In general, I use "rat in a maze" to describe anything that limits the player's actions to a single choreographed path- both environmentally: as in there is only a single ravine that you must follow to it's end, and intellectually: as in you can shoot an atomic weapon at a boss and he won't die, but if you use your trusty dagger to collapse the ledge above him, he gets crushed to death.

As far as all the rest, plenty of games have used dam=atk-def, so if you're confused as to how it would work, maybe you should do some research. You're ignoring HP as a factor, and SoM does this damage calculation for each of its eight damage types, then adds the results.  So the damage limit would actually be 128x8, and you're not factoring in elemental weaknesses which would be essentially added to ATK. I did of course mean 0 damage =1, but that would happen behind the scenes and therefore would not be a significant part of the formula that the designer would have to keep track of.

It's this simple:
If the designers wants an enemy to get killed in two hits: HP=20, DEF=10, Player ATK=20
After twenty hits, HP=200, DEF=10, Player ATK=20,
A hundred: HP=1000, DEF=10, Player ATK=20
A thousand hits HP=1000 DEF=20, Player ATK = 20
You know as well as I do how it would work. Why do you keep bringing this up? Are you hoping to prove my idea is dumb? Who cares; I have dumb ideas all the time.  Here, I'll save you the effort "my idea for damage=atk-def was a dumb idea and would make any game that used it completely boring and unplayable". Now can we move on?

You asked somewhere if there was a disassembler that charted sub routines. Yes, IDA is one. But usually each sub routine is charted on a separate page or you would just have a tangled mess. All I meant by "chart" was to catalog the function of the sub-rouines you work on for future reference.
« Last Edit: July 08, 2013, 05:23:36 pm by HwitVlf »

Offline Holy_Diver

  • Holy Diver
  • Archmage of Light
  • *****
  • Posts: 2280
  • This account won't read/reply to Private Messages
Re: Damage calculator
« Reply #61 on: July 09, 2013, 06:27:50 am »
You'll prefer this formula. I didn't expect it. It just emerged organically. Call it divine providence.
Gee tanks fer tellin me cause I two stupt to no whats I like lesn somun tell me. Maybe it's divine providence punishing you for your irreverence by giving you a bad idea? Joking aside, I don't mean your formula is bad for game players, just that it's not optimized for the common fan game maker.

I am just making a prediction. Don't take things so personally. You're wrong to doubt my judgement though. And that's not a prediction.

Quote
As far as all the rest, plenty of games have used dam=atk-def, so if you're confused as to how it would work, maybe you should do some research. You're ignoring HP as a factor, and SoM does this damage calculation for each of its eight damage types, then adds the results.  So the damage limit would actually be 128x8, and you're not factoring in elemental weaknesses which would be essentially added to ATK. I did of course mean 0 damage =1, but that would happen behind the scenes and therefore would not be a significant part of the formula that the designer would have to keep track of.

SOM doesn't have elemental weaknesses. While its true everything is by a factor of 8. That just means if you have 128 on all 8 affinities you can hit the giant for 8 HP instead of 1 HP. If he has lots of HP that's going to be a long fight. I like monsters to go down in about 5 hits or less myself.

I mean its besides the point. We established the giant has 127 defense. That doesn't mean he has 0 fire defense. That means he has 127 defense no matter what you use. Which is likely to be the case, because most ordinary things don't have elemental weaknesses.

Quote
It's this simple:
If the designers wants an enemy to get killed in two hits: HP=20, DEF=10, Player ATK=20
After twenty hits, HP=200, DEF=10, Player ATK=20,
A hundred: HP=1000, DEF=10, Player ATK=20
A thousand hits HP=1000 DEF=20, Player ATK = 20

You can also just take the monsters defense. Cut it in half to suppose the player and monster are equally matched. And multiply that by the number of hits you want.

Quote
You know as well as I do how it would work. Why do you keep bringing this up? Are you hoping to prove my idea is dumb? Who cares; I have dumb ideas all the time.  Here, I'll save you the effort "my idea for damage=atk-def was a dumb idea and would make any game that used it completely boring and unplayable". Now can we move on?

You are projecting here. I'm just arguing the merits of two damage schema. I assume ATK-DEF has merits. It supposes when equally matched no damage is dealt. If I am doing anything humanitarian, it is saving you from the trouble of setting up a map and discovering you are unhappy with the results.

Quote
You asked somewhere if there was a disassembler that charted sub routines. Yes, IDA is one. But usually each sub routine is charted on a separate page or you would just have a tangled mess. All I meant by "chart" was to catalog the function of the sub-rouines you work on for future reference.

There are tools usually used to document APIs that arrange all of the subroutines and draw lines of dependencies between them. They automatically figure out the best way to arrange things. Even if the best you can get is a tangled mess that's better than no graphical representation at all.

I suspect SOM's games would not be that complicated of a program once you pruned away all of the junk subroutines. There might only be a handful of logical units.

Offline Holy_Diver

  • Holy Diver
  • Archmage of Light
  • *****
  • Posts: 2280
  • This account won't read/reply to Private Messages
Re: Damage calculator
« Reply #62 on: July 09, 2013, 08:46:11 am »
BTW: I am very serious about rethinking the bonuses.

But I am not sure how to proceed. One very promising concept is to incorporate the map scales into the damage. It seems reasonable that a 2x sized monster would have 2x damage output and 2x defenses.

I will probably bring this up in my demo announcement post later today.


PS: Intuitively it seems like the Strength bonus should work in reverse. So you are penalized for not being at maximum Strength. Or maybe it should work on a bell curve. The only problem is there is no standard for what degree of Strength is achievable in a game. So its almost too soon to say. Its also a little presumptive to assume human strength.

The scaling concept kind of supports the idea of going over 255. Since a 2x monster with 255 attack would do 510 damage. So if you want to make a giant monster, you can just make him small, and scale him up on the map to go way over the 255 limit. So within this concept rising strength is a lot like scaling the player up. I think this is the right way of thinking about this anyway. So I made this post to celebrate.

EDITED: Also I would like to settle on something before the release happens.

PPS: The 999 hp limit is pretty arbitrary. You can map to any HP. But you can also go up to 65535 HP. The limit is just imposed by SOM_SYS's text fields. Shadow Tower uses more than 999 HP even from the start of the game I think. So a fix will be in order sooner or later. Of course you can also just scale things down in the hit_handicap_quantifier.
« Last Edit: July 09, 2013, 08:49:02 am by Holy Diver »