QUOTE(spinesheath @ Nov 20 2006, 12:43 AM)
First off:
shouldn't it be f(a,b,c)
* 100 = x ?
Normally you get something like 0.65 which then is 65%, so you have to multiply (1% = 1/100)
Well then, I'll just post some thoughts I'll be having right now while I post
Variables I'll use: u,v,w; d,e,f
The first thing to work out would probably be this:
Is the function something like this
CODE
f(a,b,c) = (u * a) + (v * b) + (w * c)
Which would mean that a, b, c affect x independently.
As you already mentioned with "number gets more significant the higher speed and health are", I doubt it's that simple.
Ok, I'll try a basic formula... just an idea to discuss on.
CODE
f(a,b,c) = ((u * a) + (v * b))/d + (w * (a/e + b/f) * c)
some reasons: both speed and health have significant effects imo. u and v must be chosen to balance out a against b. As a and b rise, as you said, c becomes more significant. Therefore (a/e + b/f) must become significantly larger than 1 as a and be rise.
Maybe a root or a ² would suit this as well. I actually think that (a/e + b/f)² would give better results (as long as you can't wall on this map!)
Ok so much from me now. I hope this basic ideas will cause others to have better ones
This is so much out of the blue...
[right][snapback]591648[/snapback][/right]
Interesting, but too much variables. The only actuall variables I need is a, b and c. The rest must either be certain mumbers or growing numbers.
QUOTE(Rantent @ Nov 20 2006, 12:57 AM)
Forgive me if this is confusing, I'm just writing down thoughts.
speed ranges from 1-12
health ranges from 1-8388607
count ranges from 1-100 (for the safe side of placement errors)
Speed limits the ammount of times a unit can attack the enemy, health determines the ammount of times the units need to attack the enemy, count ranges the number of enemies to attack. You want difficulty.
health (a)
speed (b)
Count ©
lots of enemies + low health + low speed = The units you buy matters most. (a.k.a. fast attacking units pwn) ©
few enemies + low health + fast speed = Your position across the width of the field matters most. (a.k.a. If you can cover the width of the field you can kill them all, block them) (b)
few enemies + high health + slow speed = Your ability to continuously attack the enemy matters most. (a.k.a. If you can move your units to follow the tough units.) (a)
693273(b)+(a)+83886©=x (If we treat each aspect with equal importance.)
Position across the feild becomes the most important, Unit attack speed becomes second important, and Unit mobility becomes least important.
You may wish to scale those numbers down some, if you wish to use health points that max out below 8388607, but if your going to the game limits, then this equation should work.
lol, ( c ) becomes ©
[right][snapback]591655[/snapback][/right]
Hmmm, did you mean b*a+a+c*a or b*MAX(a)+a+c*MAX(a)?
Frifrat, I know that there are many factors and there is no universal formula that would work for all D maps. What I'm trying to do is to create a formula that would allow me to create 70 levels that varies in HP, count and speed very much. After I create the levels with formula, I will start balancing it by testing and experience.
I once made a map, for Staredit only contest, using a simple "formula". Every next level consisted of stronger, faster and more units. It was quite entertaining actually.
What do you think of this one.
a*c - shows the actual amount of HP that you have to damage, considering that it's more than 1 shot to kill them.
b is the inverse of the time that you have while to unit passes you, lets say 40 tiles. So 1/b would be the actual time or in our case 40/b. Let's cut c by half for the ground units because you can wall in my map.
f(a,b,b) = (a*c)/10+x / (40/b)
Now I need the 1% or the weakest level.
1 = (a*c)/11 / (40/b)
Let's say I want the 1% level to be with reavers(b=2.09). As it's ground unit the speed is divided by 2, b= 2.09/2= 1.05.
1 = (a*c)/11 / 38.1
Lets say I want 20 of them.
1 = (a*20)/11 / 38.1
Now lets calculate how much HP the reaver must have.
a = {[(10+x)*(40/b)]*x} /c ... a=21 HP
Hmm, looks ok so far, lets try a 70% or last level in my map.
I want 50 upgraded Scouts with c=8.07
a = {[(10+70)*(40/8.07)]*70} /50
a = {[80*5]70} /50
a = 560. Hmm kinda small.
Ideas!!
Edit:
I know the count has to much of a influence in this formula, I should divide the count by 5 or something. Let's see.
f(x=1); 20 reavers
a = (((10+x)*(40/b))*x) /(c/5)
a = 105 (hmm, big)
f(x=70); 50 upgrades scouts
a = 2800 (Damn, the increase is still to small)
I guess I need to add more significant meaning to the x, or a new formula.