The Battle for... somewhere - Provisional Signups

Your new games, homebrews, mods and ideas. Forum games go here.

Re: The Battle for... somewhere - Provisional Signups

Postby BLANDCorporatio » Wed Oct 06, 2010 3:12 pm

Well, to properly close today's rant, I'll try and work out the constant in the Defense term.

My cost formula (a different version from Sihoiba's game however!), so far, looks like this:

Hits*Move*0.5 + (8/(8-Defense))*(Hits^2/3)*some constant + Attack + Specials.

I'm trying to get "some constant" at such a level to make buying Defense cheaper than buying Hits.

Going from 0 to 1 point of Defense costs how much? (8/7)*(Hits^2/3)*some constant, and it increases combat hits by 14%. To increase hits by 14% instead, I need to pay 0.14*Hits*Move*0.5, or 0.07*Hits*Move. Move can be as cheap as 1; even cheaper for garrison units. I don't yet know how low garrison unit move will be, but it matters less- garrison units are never mounts that can carry units, so they shouldn't pay cargo ability costs! (They should, in fact, pay the same for Hits and Defense; I'll use this bit later in some other rant.)

So then, I need to make it so that Hits*0.07 > (8/7)*(Hits^2/3)*some constant, or (Hits^1/3)*0.06125 > some constant. The lower the Hits value I use in the formula, the lower the constant.

If Hits is 1, then I'm not really gaining anything by beefing them up by 14%*. The effect starts to be noticeable to units of ~7 Hits or more. So I'll use Hits = 7.

(EDIT: *: Of course, even a 2Hit unit would benefit from having defense 4 (if only it could have defense 4). It gains 1 extra combat hitpoint! Which will be waaay cheaper than buying defense 4. So small units will tend to pay a bit more, comparatively speaking, for defense than for hits, but this effect will only be noticeable for units with less than 7 hits. These are the units where you may be able to get cargo space "for free").

Then, some constant < 0.11716. If I pick some constant to be, say, 0.11111... (or, 1/9), then the Garrison unit move should be around 0.95 to make it so that for a Hits 7 garrison unit, an extra Hit or extra Defense cost the same. (It's ok for the Move to be even slightly cheaper, so that Hits are cheaper than Defense; after all, Defense has another side-effect).

Notice that under this proposed change, Defense gets significantly cheaper. This is ok, as long as I remember that to ensure all those CGC conditions I'm about to tackle, Attack must be made much cheaper too.
Last edited by BLANDCorporatio on Wed Oct 06, 2010 3:20 pm, edited 1 time in total.
The whole point of this is lost if you keep it a secret.
User avatar
BLANDCorporatio
Tool + YOTD Supporter!
Tool + YOTD Supporter!
 
Posts: 3446
Joined: Fri May 01, 2009 5:24 am

Re: The Battle for... somewhere - Provisional Signups

Postby zilfallon » Wed Oct 06, 2010 3:17 pm

Well, you suggested that costs of attack and defence should be lower. We already decided to make scouting cheaper. So...point value of everything is dropping, and if this happens, we will reach the same point. And GM's will start to give less points , since equal number of hit points in this newer "cheaper" system will require less points.
Kinda like inflation? Except that here, every price gets lower, and GM's lower our "money supply" so our "army" stays same.
rkyeun wrote:Roses are red.
Violets are blue.

Image
User avatar
zilfallon
 
Posts: 564
Joined: Sun Nov 08, 2009 3:47 am
Location: Magic Kingdom

Re: The Battle for... somewhere - Provisional Signups

Postby BLANDCorporatio » Wed Oct 06, 2010 3:22 pm

zilfallon wrote:Well, you suggested that costs of attack and defence should be lower. We already decided to make scouting cheaper. So...point value of everything is dropping, and if this happens, we will reach the same point. And GM's will start to give less points , since equal number of hit points in this newer "cheaper" system will require less points.
Kinda like inflation? Except that here, every price gets lower, and GM's lower our "money supply" so our "army" stays same.


Heh, no. So far I've been working by keeping the Hits term in my formula the same: Hits*Move*0.5. Defense didn't enter in the scout calculation (that resulted in the new value for the scout special). Neither did anything BUT the Hits term.

This once, I've been careful :)

Because of the scout calculation, I intend to keep the Hits*Move*0.5 term the same. I will also try to keep the Defense term fixed from now on, for the same reason- so that I can use it in future calculation without worrying that I need to redo them.

IF, however, I find that there's no way to balance without changing the Hits, and now the Defense, terms, then, ok, I'll just destroy the formula and start from scratch... well not quite. I have, after these rants, found some principles that a cost formula should obey. In summary, they are:

1. The cost of complete scouting of an area around a hex should at worst equal the cost of "surprise" (delivery of a significant payload at the center hex).
2. Costs related to Defense should reflect increases in effective combat hitpoints.
3. Increasing Hits (for units that can move) should be more expensive than increasing Defense, by an amount called the cargo cost which must be Move-dependent (and optionally, Hits dependent). For Garrison units, increasing Hits should be as expensive or cheaper than increasing Defense.


(EDIT:

In a sense, we are experiencing "deflation": less pop points for more unit power. I first thought you were concerned that putting the costs down would be an uncontrollable spiral, as this stuff gets cheaper then something else gets cheaper for balance reasons, then the first gets cheaper still etc. So far, this does not appear to be necessary.

I also expect something to INCREASE in cost, significantly. The Ranged special, namely.)
The whole point of this is lost if you keep it a secret.
User avatar
BLANDCorporatio
Tool + YOTD Supporter!
Tool + YOTD Supporter!
 
Posts: 3446
Joined: Fri May 01, 2009 5:24 am

Re: The Battle for... somewhere - Provisional Signups

Postby Nihila » Wed Oct 06, 2010 4:11 pm

BLANDCorporatio wrote:I also expect something to INCREASE in cost, significantly. The Ranged special, namely.)
YES. We need Ranged to increase in cost. Looking at Sihoiba's game, we need to patch Ranged units now, if not sooner.
"The Infantrymen of Erfworld have nothing to lose but their chains. They have Erfworld to win. Infantry of all sides: Unite!"--Kawl Mawx, Master-class Moneymancer
Nihila
 
Posts: 750
Joined: Fri Apr 16, 2010 5:09 pm
Location: Probably totally lost.

Re: The Battle for... somewhere - Provisional Signups

Postby BLANDCorporatio » Wed Oct 06, 2010 4:43 pm

Well, if anyone would like it thusly, my next rant of the day (tomorrow) will be about how much Range should cost.

The calculation will be based on the CGC(Archer; Infantry) < Cost(Archer) condition.
The whole point of this is lost if you keep it a secret.
User avatar
BLANDCorporatio
Tool + YOTD Supporter!
Tool + YOTD Supporter!
 
Posts: 3446
Joined: Fri May 01, 2009 5:24 am

Re: The Battle for... somewhere - Provisional Signups

Postby Nihila » Wed Oct 06, 2010 7:12 pm

BLANDCorporatio wrote:Well, if anyone would like it thusly, my next rant of the day (tomorrow) will be about how much Range should cost.
Sounds great. But, have fun. My thoughts on the matter are that the assumption that A will have the highest rolls and B the lowest leads to (using my generic Infantry and Archery from Twoy's formula) the CGC being 133% of the Archer's cost. That should give a baseline of how things are now.
"The Infantrymen of Erfworld have nothing to lose but their chains. They have Erfworld to win. Infantry of all sides: Unite!"--Kawl Mawx, Master-class Moneymancer
Nihila
 
Posts: 750
Joined: Fri Apr 16, 2010 5:09 pm
Location: Probably totally lost.

Re: The Battle for... somewhere - Provisional Signups

Postby WaterMonkey314 » Wed Oct 06, 2010 9:35 pm

BLAND, I am in awe of your analyses - if only we had done these BEFORE I ended breaking the game in the South Wing... :oops: Anyway, I guess it did serve a purpose in that it provoked an incredibly lively debate about the game.
WaterMonkey314
 
Posts: 788
Joined: Wed Jun 23, 2010 9:40 pm

Re: The Battle for... somewhere - Provisional Signups

Postby BLANDCorporatio » Thu Oct 07, 2010 4:15 am

WaterMonkey314 wrote:BLAND, I am in awe of your analyses


Yes great, but I just noticed a problem with the new Defense term- it's not 0 when Defense is 0. Oops, actually it should read like

((8/(8 - Defense)) - 1)*something or, since it's the same, (Defense/(8-Defense))*something. That's 0 for Defense 0, 0.14 for Defense 1 etc.

Ok, so to redo the computation in the previous post, it follows that to have Defense cheaper than Hits in my formula, the formula should look like

Hits*Move*0.5 + (Defense/(8-Defense))*(Hits^(2/3))*some constant + Attack + Special,

where some constant must be smaller than 0.937. That's better. Let's make it some friendlier-looking fraction, and just for illustration let's make it 0.875 (aka, 7/8), and for this value, the Move for garrison units should be no greater than (and reasonably close to) 0.93. So again, looks like Move for garrison units should be somewhere between 0.8 and 0.9.

If you want the cargo cost to be proportional (or closer to it) to Hits*Move, then the Defense term should be

(Defense/(8-Defense))*some constant*Hits*Move

(so, Hits and Move at the max power that can be allowed, to be able to keep Defense cheaper than Hits). "Some constant", in this case, must be smaller than 0.49. Note that in this form, garrison units get cheaper defense than non-garrison units- this is a bug, which needs to be fixed by keeping "Move" at a minimum of 1 in the Defense term.

I'm a bit worried that my original formula, the one with Hits^(2/3), makes Defense too cheap for large units, as the cost doesn't reflect the increase in combat hitpoints. Isn't Twoy's formula including a term Defense*Hits? That seems better.

In any case, right now I'm thinking of proceeding with a unit cost formula that looks either like this

Hits*Move_a*0.5 + (Defense/(8-Defense))*Hits*Move_b*0.25 + Attack + Special
or like this
Hits*Move_a*0.5 + (Defense/(8-Defense))*Hits*0.25 + Attack + Special


(Move_a: unit Move or garrison Move, whichever is larger; Move_b is unit Move or 1, whichever is larger). They should, hopefully, be easier to analyze for the CGC conditions. Coming soon, later today.


(the numbers in italics may wobble a bit, if balance requires).
The whole point of this is lost if you keep it a secret.
User avatar
BLANDCorporatio
Tool + YOTD Supporter!
Tool + YOTD Supporter!
 
Posts: 3446
Joined: Fri May 01, 2009 5:24 am

Re: The Battle for... somewhere - Provisional Signups

Postby zilfallon » Thu Oct 07, 2010 1:19 pm

Bland, the more complicated this unit cost formula gets, the more i will say "WTF" when trying to create a faction. I study an unnecessary amount of maths in school, and having to do long calculations when playing a game just makes me feel lazy :P

Don't mind me, i'm just whining :D
rkyeun wrote:Roses are red.
Violets are blue.

Image
User avatar
zilfallon
 
Posts: 564
Joined: Sun Nov 08, 2009 3:47 am
Location: Magic Kingdom

Re: The Battle for... somewhere - Provisional Signups

Postby BLANDCorporatio » Thu Oct 07, 2010 5:06 pm

zilfallon wrote:Bland, the more complicated this unit cost formula gets, the more i will say "WTF" when trying to create a faction. I study an unnecessary amount of maths in school, and having to do long calculations when playing a game just makes me feel lazy :P

Don't mind me, i'm just whining :D


Heh, don't worry. So far the trend appears to be simplification. Right now, the formula I'll be using for my next calculations is

Hits*Move*0.5 + (Defense/(8-Defense))*Hits*0.25 + k_a*Attack + Special

where k_a is "some constant" in the Attack term and is to be defined. The formula is easier as there's no Hits^2/3 anymore (but, Hits^2/3 still appears in the Attack Cap).

Anyway, rant time. Today's rant is about false starts, more balancing catastrophies and sketching a new direction.

Here's what I tried first: Flier beats Infantry, Infantry beats Range, Range beats Flier. And it may have worked too, if Erfworld didn't have the AutoHeal.

Say I have a stack of Fliers, and I want to do a hit and run on an Infantry stack. But, because of the AutoHeal, I'd better kill at least the top unit. So, if I want Fliers to cheaply hit-n-run Infantry, I need to make Fliers able to cheaply take out even the largest Infantry units. However, a Flier stack that can do hit and runs is effectively a more expensive Ranged stack, so it follows that if Fliers beats Infantry, Ranged beats everything (it turns out that the comparisons I've been using are too harsh to be fulfilled by any unit, Range or no Range; that doesn't mean Range would not be better, by some other more meaningful metric).

So that didn't work. What now? Well, my Attack Cap suggests a way. Small units can do more damage, big units have more of their cost devoted to hitpoints. Because of the AutoHeal, it means that small units should be somehow balanced so as to be efficient at killing large units. Why make large units then? Because they are more resistent, again because of the AutoHeal, to Hit and Run attacks.

Therefore, the new trinity I'm playing with is Small, Large, and Raider. Hit and Run will need to change a bit though. For starters, it will only be invoked if the attacker starts in a different hex to the defender. This way, only units with at least 2 move can become Raiders. Further, I'd like my Small/Large/Raider trinity to be less sensitive to Range. Raiders should be efficient against Small Ranged units also, after all. So, probably a stack doing a Hit and Run will do some fraction of the listed damage (it moves, aiming is a bit hard, but hey the defender is standing still so it's a bit easier) while receiving at most only a smaller fraction of the defender's retaliation (shooting after moving targets is hard).

For example, if my stack could do 100 damage normally, it would only do 50 in a hit and run, and if it attacks a ranged stack that normally would have done 100 damage, (or, if my raiders are melee and the defender stack is either ranged or not, it doesn't matter) my stack would receive 25 damage in retaliation. Numbers only for illustrative purposes, as I won't get to tuning them tonight.

Anyway, so I have the Large, Small, Raider trinity (and later I'll consider mixes of these types). An analysis similar to the one below for the CGC(Large, Small) produced a disturbing conclusion: Attack should have negative cost in order for small units to be able to guarantee that a large unit is killed, while costing less than the large unit. This is absurd of course, and rendered a few assumptions in the analysis as contradictory. So this was a dead-end.

Ok, how about, I asked then, if I only want Small units to have a better than even chance of croaking the large unit, while costing less? Can be done, but Attack should now be weighed by a factor of 1/20. Which is again ridiculous: so, until a unit hits Attack 20, it pretty much gets free offense. Not good.

The conclusion from that work was that trying to ensure that CGC-wise attack is cheaper than hits will get nowhere. This is a consequence of Erfworld's AutoHeal rule and the fact that attacks can significantly miss (because of the random factor). Paradox?

After all, we've been killing units in these games just fine. What gives? Well, when we kill units, we invest a bit more in the killers than the victims cost; but that could be ok. At the end of the battle, the question to ask is who lost more? Whose casualties are more expensive?

It turns out that in this case, it appears possible to balance the Attack term in a way that's not ridiculous, and that's what I'll do today.

In fact, here's a schedule for future rants:

Large Melee vs. Small Melee (right now),
Large Range vs. Small Range (hopefully today as well, in a next post),
Raider vs. Large, Raider vs. Small (tomorrow),
Mixed stacks: I already know that if the above (Raider>Small>Large>Raider) is true, then (Flier, Small: NOT stacked together) > {Large, Small: either stacked or not} is true, and would then need to make it so that (Flier, Large) (at least, while on the offensive) > (Flier, Small) while still keeping (Large, Small) > (Flier, Large), (sometime in the weekend but most likely after)
no-shotgun: make sure that no one unit type is more effective than all others (after that).

(Observation: any unit, ranged or not, would be useable as a Raider if it is on it's own turn and has a move of at least 2, under my new idea for the hit-and-run rule; this will be something to keep in mind when balancing Raider vs. Large and other things, but not today I won't delve into it).

So, back to the problem. The enemy has a "Large" unit, which means for my purposes any unit with 10Hits or more. I want to guarantee croaking this unit using "Small" units (9Hits or less), so I'll need to buy some. They'll cost more than the Large unit, which can't be helped, but I'm not comparing that anymore. Instead, I'll compare the cost of the Large unit to the cost of the Small units that it can, potentially, kill.

So, the Large unit will have perfect rolls, the Small units, the worst rolls. Should make for a conservative estimation.

Both Large and Small units will have Move 1. I'm not using maneuvering. Both are Melee and have no specials. The Small units have as much Attack as they can get. The attack of the Large unit I will leave as a free parameter for now. Then the units are:

Large: H_l, A_l, D_l, 1 (Hits, Attack, Defense, Move)
Small: H_s, A_s, D_s, 1.

The formula for the cost of the units is above. I'll call k_o the number of Small units that the Large unit can kill, and k_o, and subsequently the pop-trade of this battle (Cost(Large) - k_o*Cost(Small)) are, after some symbol wrangling:

k_o = (A_l/H_s)*(8 - D_s)/8
pt = 0.5*(H_l - A_l*(8 - D_s)/8) + 0.25*(D_l*H_l/(8-D_l) - A_l*D_s/8) + k_a*A_l*(1 - (8-D_s)/4)

pt looks quite ugly, because it has a gazillion parameters (H_l, A_l, D_l, D_s, k_a ...). But we can turn to calculus to get a feel for how pt varies when any one of these parameters changes.

It turns out that if I increase D_s, the defense of my units, pt will increase regardless of the (by rules-valid, meaning above 0 and no Defense above 5) values of the other parameters (which is in my favour). This seems intuitive, by increasing my units' survivability I reduce the number I lose.

If the enemy increases D_l, pt will increase regardless of the (by rules-valid) values of the other parameters. This seems a bit less intuitive, but the idea is that the enemy, by spending points on increasing his unit's survivability, is not spending points on killing my units. And this time what we're comparing is what's actually killed in the battle.

Now, things get a bit iffy. It turns out that if I derive the pt, as seen above, by H_l, I find that the more the enemy spends on H_l, the worse the trade is for them. This seems intuitive, since spending on Hits is again not spending on killing my units. OTOH, for reasonable values of k_a, if the enemy increases A_l, the trade becomes better for them. So when optimizing their Large unit to kill the most of my Small units, the enemy will feel a pressure to get Hits down, but at the same time get Attack up (and also, Hits, because Hits cap Attack).

Now both me and my enemy are optimizing our units for this battle. I beef up my Small units' defense as much as possible- it's now 5. The enemy reduces the defense of their own unit as much as possible- now it's 0. The enemy will beef up the Attack as much as the unit's Hits will allow; it remains to determine what the optimum number of Hits (H_l) is.

Right now, our units look like this:
Large: H_l, 4*H_l^(2/3), 0, 1 (Hits, Attack, Defense, Move)
Small: H_s, 2*H_s, 5, 1

This simplifies the expression for pt loads. It now looks like this:

0.5*H_l - H_l^(2/3)*(11-8*k_a)/8,
and its derivative by H_l is
0.5 - H^(-1/3)*(11-8*k_a)/12.

Both formulas are important. The derivative tells me where the optimal H_l for the enemy is, and this depends on the value k_a. As long as it is below 10 (so the optimal hits are no longer that of a Large unit, and we are in fact seeing an underpowered Small unit fighting against a fully armed and operational Small unit), it's ok. In fact, I can now use the simplified pt to tune k_a better.

The idea is that if the optimum trade for the enemy occurs at H_l, I dunno, 5, then as H_l increases the trade becomes worse for the enemy. At H_l = 10, the threshold for Large units, is the best trade they can get. And conversely, the worst trade I get. So, the bigger pt is if H_l is 10, the more efficient Small units are against Large ones.

Here's some examples: for k_a = 0.25, the optimum occurs below 0 (which means it can be ignored) but pt(H_l = 10) is -0.22. So I could lose 0.22 pop points more than the enemy lost in the battle.

For k_a = 0.5, the optimum H_l is again somewhere below 0 (ignore), but this time pt(H_l = 10) is 0.94. So, at the very worst, I'll only gain 0.94 pop points on the enemy in a small-vs-large battle.

For k_a = 1, I'd gain 3.26 at the worst.

Therefore, I now know that in the formula, k_a will be somewhere above 0.5 (and may well be good enough to be 1).

However, this is not comparing a unit with the cost of the units necessary to guarantee croaking it. That comparison is too harsh to be feasible in Erfworld. Instead, it appears that I am forced to compare the pop-cost of battle casualties and use this metric when balancing.

Right, a break from typing, some scribbling then, maybe Large Range vs. Small Melee (and Small Range) today.
The whole point of this is lost if you keep it a secret.
User avatar
BLANDCorporatio
Tool + YOTD Supporter!
Tool + YOTD Supporter!
 
Posts: 3446
Joined: Fri May 01, 2009 5:24 am

Re: The Battle for... somewhere - Provisional Signups

Postby Sihoiba » Thu Oct 07, 2010 5:48 pm

This is very interesting analysis, and one I need to look at more detail.

I think the principles you are working towards seem fair, and also feel like they imply a way to balance specials, once we well you get that far in the maths.
Sihoiba
 
Posts: 584
Joined: Wed Mar 17, 2010 12:50 pm

Re: The Battle for... somewhere - Provisional Signups

Postby HerbieRai » Thu Oct 07, 2010 5:58 pm

I like the analysis bland, but there are some things that help small units overpower large ones, aka stacking bonus, fatigue, ect. As long as 5 20pt units can kill a 100 pt unit with only losing 1 or 2 (I don't know what you want the ratio to be), the rock paper scissors will work
HerbieRai
 
Posts: 471
Joined: Mon Sep 13, 2010 1:58 pm

Re: The Battle for... somewhere - Provisional Signups

Postby BLANDCorporatio » Thu Oct 07, 2010 6:38 pm

Sihoiba wrote:This is very interesting analysis, and one I need to look at more detail.

I think the principles you are working towards seem fair, and also feel like they imply a way to balance specials, once we well you get that far in the maths.


As it happens, ideas for that crossed my mind today. I was looking at the "make forts" ability in your game and wondering, "how much should that cost"? Basically, how much good can it do?

The idea is that some stacks would benefit more from a special than others, to say nothing that more stacks can be in the same hex. So the way to go, probably, is to designate some "Standard Stack(s)", and have new extensions to the system (new Specials and Abilities) costed in ways that reflect their effect on the Standard Stack(s).

It remains, for the future, to design "Standard Stack(s)" that cover "typical" cases.

HerbieRai wrote:I like the analysis bland, but there are some things that help small units overpower large ones, aka stacking bonus, fatigue, ect. As long as 5 20pt units can kill a 100 pt unit with only losing 1 or 2 (I don't know what you want the ratio to be), the rock paper scissors will work


Fair point. In my analysis I ignored all combat bonuses (except the random roll, and even that I do away with most of the time by assuming worst rolls for one side, best for the other). It's tricky enough as it is. I also ignored stacking limits, but hey, we're not limiting stacks to 8 anymore are we, so large stacks merely have the stack bonus (which I ignored anyway) reduced back to 1.

To account for what you're saying, when tuning k_a I'll have to be not very greedy. For example, even if Small melee can extract, at worst, 3.96 pop points from a battle with Large melee, that already speaks volumes and is enough of an effect.

=====

Okay, Large Ranged vs. Small. Small Melee, first.

I'd like Small Melee to be better than Large Ranged, so here's what I'm thinking. To kill the Large unit, I'll need, say, k_1 units ("the croak"), assuming the Large unit does no damage to my stack. But the Large unit does in fact do damage, and will kill k_2 units ("the soak") before they get a chance to retaliate.

So here's the thing. In a battle of Small Melee vs. Large Ranged, I need to bring enough to soak AND to croak the Large Ranged unit, in order to hope to get a good pop point trade out of this.

I will always get a good trade by attacking Large Ranged with Small Melee, but I would still prefer Large Ranged, unless the cost of the Ranged special equals the cost of the soak units.

Here's why I always get a good trade: a Large unit can kill k_2 units, whether Ranged or not, and I've already balanced things so that these k_2 units cost less than the Large unit; even if said Large unit is Melee and therefore cheap. If the Large unit is Ranged, it will be more expensive and I'll get an even better trade ...

... "but at what cost"? I had to invest in a stack that can both soak and croak that Large Ranged unit. For that extra cost, the enemy could buy more Large Ranged units, forcing me to buy even more Small Melee ... I can't win. If the enemy invests in Large Ranged, and I in Small Melee, I simply have to pay more to make a dent in their army. Unless ...

The cost that I pay for the soak units is balanced by the cost of the Ranged special of the Large unit that can kill them. If this condition holds, then it goes like this- enemy buys Large Melee, I buy a stack of Small Melee that can kill that. I know that, while I have to pay more, I can trade pop points favourably in this case.

Spoiler: show
Question: since I said the small units needed to croak a Large Melee unit will cost more than the Large unit, won't that make Large units better? After all, for the cost I spend on Small Melee, the enemy could buy more Large Melee, right? Yes, but I can chose how many Small Melee units to send in battle, and as long as I can croak x Large Melee units, the casualties in Small Melee units that I'll sustain will cost less than what I kill. As long as I can maintain either a steady attrition (trickling in Small Melee to just croak the Large units one by one and negate most of their firepower) or immediate destruction style warfare (through sheer outnumbering), I stand to win.


Then, the enemy spends some points buying the Ranged special, forcing me to buy the soak units. At this step, I say, we should pay about the same cost (or maybe slightly more for the Ranged).

Fortunately it comes out pretty easy, and I find that the Ranged Special should cost somewhere around:

Attack*(3/8)*(0.5 + 25/12 + 2*k_a).
(or in other words, Attack*(3/8)*(31/12 + 2*k_a)

(k_a is the constant factor in the Attack term).

(Edit: ah wait, that 0.25 was missing, okay corrected the Ranged cost).

(EDIT, edit: if you're wandering what that means, in numbers: since k_a will be somewhere between 0.5 and 1, most likely, it means that the factor for Attack in the Ranged special will be somewhere around 12/8 to 15/8: so from 1.5 to roughly 2).
The whole point of this is lost if you keep it a secret.
User avatar
BLANDCorporatio
Tool + YOTD Supporter!
Tool + YOTD Supporter!
 
Posts: 3446
Joined: Fri May 01, 2009 5:24 am

Re: The Battle for... somewhere - Provisional Signups

Postby Nihila » Thu Oct 07, 2010 7:06 pm

So, end conclusion, Ranged should cost 1.5x to 2x Attack, depending on k_a?

Edited to change "Hits" to "Attack."
Last edited by Nihila on Thu Oct 07, 2010 7:55 pm, edited 1 time in total.
"The Infantrymen of Erfworld have nothing to lose but their chains. They have Erfworld to win. Infantry of all sides: Unite!"--Kawl Mawx, Master-class Moneymancer
Nihila
 
Posts: 750
Joined: Fri Apr 16, 2010 5:09 pm
Location: Probably totally lost.

Re: The Battle for... somewhere - Provisional Signups

Postby BLANDCorporatio » Thu Oct 07, 2010 7:22 pm

Nihila wrote:So, end conclusion, Ranged should cost 1.5x to 2x Attack, depending on k_a?


With the correction in bold, yes.

EDIT: to be more exact, the formula in the previous post gives a lower bound for the Ranged special. But it should stay close to this lower bound I think, in the interest of fairness.

There can also be an upper bound for the cost of Ranged, from the situation of Large Ranged vs. Small Ranged (I'd probably want Small Ranged to be the better of the two). This needs checking, but not today.
The whole point of this is lost if you keep it a secret.
User avatar
BLANDCorporatio
Tool + YOTD Supporter!
Tool + YOTD Supporter!
 
Posts: 3446
Joined: Fri May 01, 2009 5:24 am

Re: The Battle for... somewhere - Provisional Signups

Postby BLANDCorporatio » Fri Oct 08, 2010 1:19 pm

Brief rant today, the topic still being Large vs. Small units.

From last time, I got to a condition for the Ranged cost. If ranged would cost something like k_r*Attack, then (after some expression beautification):

k_r >= (3/8)*(11/12 + k_a*2). (k_a is what Attack is multiplied with)

Now, let's compare Large Range and Small Range- I'd like to have it so that Small Range can get better trades. So proceed much like in the Melee case with the analysis:

a Large Range unit has cost that is the cost of the equivalent Large Melee unit + the cost of the Small Melee units that it can kill (that's how I balanced the Ranged special and obtained the condition above). Those units that it can kill will cost as much as Small Melee units do, while also adding a component due to the Ranged special. Equal terms vanish so I'm left with a condition: the cost of a Large Melee unit should be larger than the cost of the Ranged specials of the Small Ranged units that it can kill. This works out nicely to this condition:

k_r <= (4/3)*k_a.

Now, to be able to satisfy both conditions, k_a needs to be at least 33/56, or about 0.5893.

So in summary,

k_r >= (3/8)*(11/12 + k_a*2). (k_a is what Attack is multiplied with)
k_r <= (4/3)*k_a
k_a >= 0.5893


I won't check whether Small Range vs. Large Melee results in a better trade for the Small units. For small values of k_a (meaning, around 1), I already know that this will not be the case, and it's better to attack a Large Melee unit with Small Melee units, rather than Small Ranged. This doesn't seem to be bad, balance-wise. Small Ranged units would still have their uses, but about that later.

Btw, paranthesis time. I noticed that in my original problem (Large Melee vs. Small Melee, make it so that in a simple engagement they trade casualties in a way that favours Small Melee), the bigger the k_a got, the better the trade was for the Small Melee units. I checked the function I ran with, but it seems correct. Even though it's not very intuitive, not to me at least. I can invent a just-so story to explain it though-

Spoiler: show
it's all in the question. The Large unit needs to croak, that is a given. OTOH, I want the trade to be as good as possible, which means I want my Small Melee units to be as durable as possible. Meanwhile, the enemy doesn't care about their own unit surviving, they only care to kill as many of my units as they can at the smallest possible pop-point cost to themselves. So the enemy ends up investing a higher proportion of their resources into Attack.


The lesson to learn from this is that it's all in the question. Here's a different question, and some disturbing results.

Suppose we have an Arena. One side will send only stacks of Small Melee units. The other will only send stacks of Large Melee units. The units fight. Then autoheal. Then both sides get an equal number of pop points to spend on reinforcements, each pops the units that it can pop, then sends them in the Arena. And the process is resumed. Will any of the two sides eventually gain the upper hand?

IF the Large Melee side only starts with 1 Large Melee unit, WHEREAS the Small Melee side starts with enough to guarantee croaking the Large Melee unit, then Small Melee wins. Duh.

However, if both sides start with the same number of pop points, eventually the Large Melee side wins. This is because it's more expensive to guarantee croaking a unit than it is to buy it. It's also more expensive even to have a fair chance at it. This, together with the autoheal rule, gives Large units the edge. So what if the Small Melee units can kill 1.5 Large Melee units. They might as well have only killed 1, while the 2 Large Melee units will be capable to leave a more significant dent in the Small Melee troops.

There are ways to try and fix this. Here's four:

- eliminate autoheal. (NO: autoheal is very Erfworld)
- change the Hits term in the cost formula to account for the autoheal effect. (I'd RATHER NOT; the Hits term so far has been used extensively for balancing and I'd rather not have to do that work again)
- put a cost on AutoHeal. (RATHER YES: should be erf-like. Units need upkeep/rations after all. I don't think we've seen what units do without upkeep, or whether upkeep and healing are related in-canon- I think- but seems reasonable.)
- ignore: Small units can be beefed up by Large ones.

As you can see I'm leaning towards the last two. I won't be making a choice between them today, because the real test of these balance mechanisms is how well they will integrate Raiders in the picture. Remember, I want Large units to be an effective counter against Raiders, while Raiders to be good against Small units.

I will explain however the reasoning behind solution number 4. Let's say, for a simple argument, that to guarantee croaking a Large Melee unit, I need to pay twice its cost in Small Melee units. So, the enemy buys a Large Melee unit, I buy the Small units to guarantee its croaking, the enemy buys a second Large Melee unit to compensate. Both of us now buy a Large Melee unit; they will cost the same, but while the enemy unit is optimized to be a killer, my Large unit is optimized to be the best Meatshield it can be for the same cost as the enemy's unit.

I know that when the two stacks meet, the Small units in my stack will guarantee that one of the enemy's Large Melee units is killed. If the enemy cannot kill my Large unit however, I stand to win. So basically, if three (number for illustration purposes only) Large Melee Killers cannot quite croak a Large Melee Meatshield, we have a situation where stacks of Large and Small units are optimal. This looks about right, as in Erfworld we see stacks of pikers with a Twoll here and there.

Now, this doesn't take stack bonuses into account. I'll need to bring more Small units than the enemy does Large ones, so I either need to forfeit the stack bonus, or run in several waves and hope that the retaliation fatigue compensates for the fact that the enemy gets to strike more.

So yeah, there's a bit of fudge in solution number 4, and I'd rather put costs on AutoHealing (therefore, solution 3). Heck, it follows the spirit of this analysis, I've always followed here a principle of "if it's good for you, pay up!" :P I just need to make sure that even though Autohealing will cost, it will still leave Large units more resilient to Hit-n-Runs than Small ones, enough so as to make them the better counter to Raiders.
The whole point of this is lost if you keep it a secret.
User avatar
BLANDCorporatio
Tool + YOTD Supporter!
Tool + YOTD Supporter!
 
Posts: 3446
Joined: Fri May 01, 2009 5:24 am

Re: The Battle for... somewhere - Provisional Signups

Postby zilfallon » Fri Oct 08, 2010 1:36 pm

Bland, cost on autoheal doesn't seem comic like to me.
Erfworld has a simple mechanic about that:

-Units whose upkeeps are not paid, are disbanded.
-Units heal fully at start of their turn.

So, if the unit is "hungry", then it disappears, puff, gone.

Edit: Canon proof of my above statement:

When Jillian was interrogated by Wanda, her injuries were healed BEFORE she ate her rations.
Last edited by zilfallon on Fri Oct 08, 2010 1:36 pm, edited 1 time in total.
rkyeun wrote:Roses are red.
Violets are blue.

Image
User avatar
zilfallon
 
Posts: 564
Joined: Sun Nov 08, 2009 3:47 am
Location: Magic Kingdom

Re: The Battle for... somewhere - Provisional Signups

Postby BLANDCorporatio » Fri Oct 08, 2010 1:36 pm

Incidentally, as a small exercise, here's a question. How much should the Healomancy special, as seen in the Battle of Two Cities, cost?

Healomancy does two things: halves the unit's attack for combat purposes and allows it to negate some of the enemy attack. (And it gives a healing ability but whatever. I'll allow myself a bit of lazyness and say that this is more or less equivalent to negating attack: it's BETTER for defense-hardened units, but will be used less often because the autoheal will take care of that well enough most times.)

Btw, this is an excellent occasion to think about k_a in my formula too, because what Healomancy does is:

- reduce a unit's Attack,
- while increasing it's combat hitpoints.

So the cost for Healomancy should be Number of combat hitpoints it adds * cost of the combat hitpoint - half the cost of the unit's attack.

Here's where balancing k_a comes into play. One combat hitpoint should cost about the same as a point of attack. How much is a combat hitpoint? The term to check is the defense term: a defense of 4 adds a number of combat hitpoints equal to the number of Hits of the unit, or, in my formula, that's

(4/4)*Hits*0.25 for Hits combat hitpoints: 0.25 per combat hitpoint. So from this, I know that I should increase the cost of Defense a bit in my formula (I did say that the 0.25 was there to wobble a bit) and that some calculations will need redoing, but redoing them will mean pretty much just plugging new values here and there.

So, a version of the pop cost formula that this analysis worked towards so far:

Hits*Move*0.5 + k_a*Hits*Defense/(8-Defense) + k_a*Attack + Special

Then, in a version of the rules that uses this formula, the Healomancy Special would cost 0.5*k_a*Attack. (Should be a bit higher even, if/when AutoHeal costs will be devised).
The whole point of this is lost if you keep it a secret.
User avatar
BLANDCorporatio
Tool + YOTD Supporter!
Tool + YOTD Supporter!
 
Posts: 3446
Joined: Fri May 01, 2009 5:24 am

Re: The Battle for... somewhere - Provisional Signups

Postby Sihoiba » Fri Oct 08, 2010 1:44 pm

Yeah in hindsight I over-costed healomancy, also the healomancy having attack just felt right there's nothing in the comic, aside from altruistic elves being left out of combat to suggest that having healomancy makes you less useful for attacking.

Effectively healomancies usefulness is dependant on the presence or lack of a hit point cap (or at least something that makes hits prohibitively expensive beyond a certain point) as it effectively gives a units extra hits.
Sihoiba
 
Posts: 584
Joined: Wed Mar 17, 2010 12:50 pm

Re: The Battle for... somewhere - Provisional Signups

Postby BLANDCorporatio » Fri Oct 08, 2010 1:46 pm

zilfallon wrote:Edit: Canon proof of my above statement:

When Jillian was interrogated by Wanda, her injuries were healed BEFORE she ate her rations.


Good point. Well then, AutoHeal is free. Le Gasp!

I'll have to see how this beast can be tamed, but the next rant will not be during the weekend.

(TODO, hopefully still today however, is to redo the Ranged special limits, now that I've slightly changed the Defense term)

EDIT: aand here they are, the limits on k_r, based on the k_a parameter. A shortcut I used before to get a nicer upper bound doesn't work anymore unfortunately, so things look a bit uglier- but these are only tuning formulas. In the end, k_a will likely have a nice value (1) and so will k_r (about 1.6).

k_r <= (5 + 18.56*k_a)/13.93
k_r >= 3/16 + k_a*11/8


Edit, Edit: wait a second, I remember now why I put the 0.25 in the Defense term. Something about cargo cost, and increasing Hits being more expensive than increasing defense. Ok, so the 0.25 stays in the defense term. It should also stay in the attack term. Then, re-redoing the limits for the range factor, I get (remember, I know now that k_a will be 0.25) that a good value for the ranged special factor is 0.6. Heh, what do you know, everything did turn out cheaper after all.

Okay, formula so far:

Round up(0.5*Hits*Move + 0.25*Hits*(Defense/(8-Defense)) + 0.25*Attack + Special).

Known specials so far:
Scout: minimum of 6, uses Nihila's formula.
Ranged: 0.6*Attack
Healomancy (as defined by Sihoiba): 0.125*Attack

Stuff to tackle next will be the Hit and Run, and I've thought of a new way to "punish" larger units, since they get the AutoHeal for free after all. Fiddling with the Attack cap.
The whole point of this is lost if you keep it a secret.
User avatar
BLANDCorporatio
Tool + YOTD Supporter!
Tool + YOTD Supporter!
 
Posts: 3446
Joined: Fri May 01, 2009 5:24 am

PreviousNext

Return to Your Games

Who is online

Users browsing this forum: 0100010 and 2 guests