Design Fuel Consumption?

Moderator: Vic

zgrssd
Posts: 5101
Joined: Tue Jun 09, 2020 1:02 pm

RE: Design Fuel Consumption?

Post by zgrssd »

- We now know the base fuel consumption of engines. Light diesel is 0.1, medium diesel is 0.5, heavy diesel is 1, double diesel is 1.5, and triple diesel is 2. This base value is just a flat addition to the fuel use derived from the models size/weight.
- Double diesel engines double fuel use and triple diesel engines triple it; as the names suggest it is literally two and three engines. This multiplication happens before the base fuel consumption of the engines are applied.
- Weight does not increase fuel use if the total weight is below 150. This means any fuel use below that weight has to be from the size rating of the chassis. A 60 weight buggy and a 90 weight buggy both use 0.4 fuel with a light diesel engine before base engine consumption is added. Similarly a size 2 weight 65 truck uses 0.2 fuel before base engine consumption.
- There are weight bands for fuel consumption. Any weight value inside these bands use a set amount of fuel. From 0 to 149 weight is the first band, 150 to 249 is the second band, 350 to 449 the third, etc. A 207 weight light tank uses the same amount of fuel as a 222 weight or a 237 weight light tank.
Using this I would write it as:

1. Note the Stated Fuel Consumption of the Engine as "Base Consumption". It will be added at the end.
2. Note if it is a single, double or tripple engine. This will be used as a Multiplier called "Engine Count".
3. Take the weight, substract 50, divide by 100, round true. This is the "Weight Band Multiplier"
4. Take the Base Weight divided by 10. This is the "Size Base Consumption"

Real consumption is:
Size Base Consumption * Weight Band Multiplier * Engine Count + Base Consumption
zgrssd
Posts: 5101
Joined: Tue Jun 09, 2020 1:02 pm

RE: Design Fuel Consumption?

Post by zgrssd »

Let us take a look at my Mechanized Artillery to double check the values:
1. Base Consumption is 1 from heavy diesel Engine
2. This is a single engine I think, so 1 again
3. Weight is 1020. (1020-50)/100 = 9.7; Rounds to 10
4. Base Weight is 70, so Size Base Consumption of 7

7*1*1+1 = 8 expected fuel consumption
8 Fuel Consumption/hex was observed
GuardsmanGary
Posts: 50
Joined: Sat Jul 04, 2020 2:24 pm

RE: Design Fuel Consumption?

Post by GuardsmanGary »

ORIGINAL: zgrssd

3. Take the weight, substract 50, divide by 100, round true. This is the "Weight Band Multiplier"

Wouldn't this cause issues if the total weight is within 50 weight of the lower band limit? The Light Tank 2 example is 650 total weight, which places it just barely in the 7th band by 1. If you were to subtract 50 it would drop it down to the 6th band giving an inaccurate return.
Let us take a look at my Mechanized Artillery to double check the values:
1. Base Consumption is 1 from heavy diesel Engine
2. This is a single engine I think, so 1 again
3. Weight is 1020. (1020-50)/100 = 9.7; Rounds to 10
4. Base Weight is 70, so Size Base Consumption of 7

7*1*1+1 = 8 expected fuel consumption
8 Fuel Consumption/hex was observed

Wouldn't it be 7*10*1+1?
zgrssd
Posts: 5101
Joined: Tue Jun 09, 2020 1:02 pm

RE: Design Fuel Consumption?

Post by zgrssd »

Wouldn't this cause issues if the total weight is within 50 weight of the lower band limit? The Light Tank 2 example is 650 total weight, which places it just barely in the 7th band by 1. If you were to subtract 50 it would drop it down to the 6th band giving an inaccurate return.
Then substract 49 instead.

"The two biggest problems in programming are naming things, cache invalidations and off-by-one-errors" [:D]
GuardsmanGary
Posts: 50
Joined: Sat Jul 04, 2020 2:24 pm

RE: Design Fuel Consumption?

Post by GuardsmanGary »

ORIGINAL: zgrssd

Then substract 49 instead.

That's still the same problem though. Subtracting any amount runs risk of dropping the weight into a lower band. In the case of that 650 weight light tank, which is a valid combination in the game, even subtracting 1 would give an inaccurate value. What is your reasoning for including a subtraction step?
zgrssd
Posts: 5101
Joined: Tue Jun 09, 2020 1:02 pm

RE: Design Fuel Consumption?

Post by zgrssd »

ORIGINAL: GuardsmanGary

ORIGINAL: zgrssd

Then substract 49 instead.

That's still the same problem though. Subtracting any amount runs risk of dropping the weight into a lower band. In the case of that 650 weight light tank, which is a valid combination in the game, even subtracting 1 would give an inaccurate value. What is your reasoning for including a subtraction step?
(199-50)/100 = 149/100 = 1.49 Rounded true, you end up at 1.
(200-50)/100 = 150/100 = 1.50 Rounded true, you end up at 2.

Substracting half the devisior then rounding true, is the same result as just dividing and rounding down.
But I try a rewrite anyway.
zgrssd
Posts: 5101
Joined: Tue Jun 09, 2020 1:02 pm

RE: Design Fuel Consumption?

Post by zgrssd »

Formula:

Code: Select all

Total Consumption = Size Base Consumption * Weight Band Multiplier * Engine Count + Engine Base Consumption

- Size Base Consumption is the basic weight of the Model before any equipment is added, divided by 10.
- Weight Band Multiplier works as follows: Take the Total Weight.
a) If it is under 150, the weight band multiplier is 0
b) otherwise, the WBM is the weight, divided by 100, rounded down
- Engine Count is the number of Engines, usually single, double or tripple. For Airplanes it is propably based on the Models Engine count. This value is currently not listed in the Designer
- Engine Base Consumption is the value listed in the designer for each engine

Results:
- Total Weight is by far the biggest contributor to fuel use - move mass is expensive
- the second biggest factor is the model itself. Even the light truck is a x2 multiplier, with buggies already clocking in at x4. And it only becomes worse from here
- Engine base consumption is comparatively miniscule. However the number of engines has a massive impact on consumption
GuardsmanGary
Posts: 50
Joined: Sat Jul 04, 2020 2:24 pm

RE: Design Fuel Consumption?

Post by GuardsmanGary »

ORIGINAL: zgrssd
Total Consumption = Size Base Consumption * Weight Band Multiplier * Engine Count + Engine Base Consumption
Let's try this with a buggy equipped with a medium diesel engine and 50mm of polymer armour. Weapon options weigh 0 on buggies.

40 base weight + 100 for 50mm polymer armour + 60 for engine = 200 weight.
(40/10)*(200/100)*1+0.5
simplified:
4*2*1+0.5 = 8.5
In the game such a design would return 1.3. If you were to multiply the engine base consumption by 10 before adding it you would instead get 13, which is the "move cost" value as displayed in the design log.

Let's try a light tank with 40mm howitzer, 100mm steel armour and medium diesel engine.

50 base weight + 100 for 40mm howitzer + 375 for 100mm steel armour + 60 for medium diesel = 585 weight
(50/10)*(585/100, rounded down)*1+0.5
simplified:
5*5*1+0.5 = 25.5
In game such a design would return 3.5. Let's multiply the base engine consumption by 10 again to see if that gets us the "move cost" value: 5*5*1+5 = 30. That's still not right. It should be 35, not 30. It's off by 5 because we rounded 585/100 down to 5 instead of rounding it to the nearest whole number, 6. This effectively dropped it into the lower weight band, giving it an incorrect weight band multiplier.
- Size Base Consumption is the basic weight of the Model before any equipment is added, divided by 10.
Base weight is derived from the size of the model as simply size*10. Doing it this way is just taking a derived value and reverting it. It's adding and taking away the same number of zeroes. But more than that this is also why your formula gives values that are so much higher than what they should be, as the size base consumption is a full order of magnitude greater than it should be.
- Weight Band Multiplier works as follows: Take the Total Weight.
a) If it is under 150, the weight band multiplier is 0
The weight band multiplier is only 0 if weight is 49 or less, as is the case of a truck equipped with a light electric engine. Between 50 and 149 it has to be 1. If you treat weight below 149 as 0 then the size base consumption is also zeroed out; a 120 weight buggy with a medium diesel engine uses, as reported by the game, 0.9 fuel per hex. If you treat 120 weight as effectively 0 weight, and thus a weight band multiplier of 0, it would return 0.5 fuel use. This is obviously inaccurate.
Substracting half the devisior then rounding true, is the same result as just dividing and rounding down.
b) otherwise, the WBM is the weight, divided by 100, rounded down
Again, this is only causing inaccuracies for designs that fall within 50 weight of the lower limit of the weight band. A light tank with a 60mm howitzer and 100mm steel armour can be in either weight band 6 or 7 depending on what engine you pick. If the additional weight of all 3 engines put the tank in the 6th weight band, as would be the case if you subtract 50 or round down, you'd see a fuel use progression of 3.1 for the light diesel engine, 3.5 for the medium, and 4 on the heavy. Instead you see 3.1 on the light, 3.5 on the medium and 4.5 on the heavy. This is because the weight of the heavy diesel engine is enough to push the design into the 7th weight band, which adds an extra 0.5 fuel use to the design. Why do you believe a subtraction, or now rounding down, is necessary?

The formula as I wrote it in my original post:
(SIZE/10) * WEIGHT BAND * number of engines + engine base consumption
At the time I wrote this I wasn't even aware there was a "0th" weight band that only a light electric engine equipped truck falls into, yet it still accurately predicts the energy consumption of this edge case truck design. It also accurately predicts the fuel use of designs that are on the absolute edge of the weight bands. This formula consistently and accurately predicts fuel use for every design I've tested it against. It is, as far as all testing has revealed it to be, correct.

The only confusion that could come of this is not knowing what a weight band is, which can be fixed by amending the formula to read:
(size/10) * (weight/100) rounded to nearest whole number * number of engines + engine base consumption
zgrssd
Posts: 5101
Joined: Tue Jun 09, 2020 1:02 pm

RE: Design Fuel Consumption?

Post by zgrssd »

(size/10) * (weight/100) rounded to nearest whole number * number of engines + engine base consumption
I definitely find "Number of engines" confusing, as I only ever have one engine module installed in the model and the only thing mentioning multiple engines are the Airplane Models.
But then I disagree with the multiplier in general, as it really makes no sense. I seriously thinkg it is a plain old mistake.

And Engine Base Consumption is not defined anywhere in the Manual. Best to give a definition for each value that is not inherently evident from the main card.

As for Size, I had checked if Size = BaseWeight/10 or vice versa, but thought I spotted a exception. But it looks like that was just my memory playing tricks on me.
Also you did write Size/10 both times wich is not quite the value.
The weight band multiplier is only 0 if weight is 49 or less, as is the case of a truck equipped with a light electric engine. Between 50 and 149 it has to be 1. If you treat weight below 149 as 0 then the size base consumption is also zeroed out; a 120 weight buggy with a medium diesel engine uses, as reported by the game, 0.9 fuel per hex. If you treat 120 weight as effectively 0 weight, and thus a weight band multiplier of 0, it would return 0.5 fuel use. This is obviously inaccurate.

I did get the 150 figure from your original text:
- Weight does not increase fuel use if the total weight is below 150. This means any fuel use below that weight has to be from the size rating of the chassis. A 105 weight buggy and a 135 weight buggy both use 0.4 fuel with a light diesel engine before base engine consumption is added. Similarly a size 2, 65 weight truck uses 0.2 fuel before base engine consumption.
User avatar
BlueTemplar
Posts: 1074
Joined: Thu Apr 29, 2010 12:07 pm

RE: Design Fuel Consumption?

Post by BlueTemplar »

And Engine Base Consumption is not defined anywhere in the Manual. Best to give a definition for each value that is not inherently evident from the main card.
Yeah, isn't it *the only one* that the model designer shows ?
Funnily enough, it's (generally ?) the least important variable ?
zgrssd
Posts: 5101
Joined: Tue Jun 09, 2020 1:02 pm

RE: Design Fuel Consumption?

Post by zgrssd »

ORIGINAL: BlueTemplar
And Engine Base Consumption is not defined anywhere in the Manual. Best to give a definition for each value that is not inherently evident from the main card.
Yeah, isn't it *the only one* that the model designer shows ?
Funnily enough, it's (generally ?) the least important variable ?
I would guess it was planned to be way more important. Propably to be used instead of the Engine Count multiplier.

But then things did not work out that way and he never got around to fixing the UI.
zgrssd
Posts: 5101
Joined: Tue Jun 09, 2020 1:02 pm

RE: Design Fuel Consumption?

Post by zgrssd »

Okay, I found the Formula - and I mean the actuall formula - in the gamefiles.
Debug Mode - > Management -> Debug -> Library 11) SE_Model -> Table 183) Flex Model Type Stats
There is one Column for each engine, both in the Fuel and Energy consuming variant.
"1*SIZE*((50+stat.5)/100) +1" is what is written for "FUEL/ENERGY USE for Light Diesel Engine"
The formula holds for all 5 Engines, except of course double and tripple having a x2 and x3 at the start respectively (which I still think is a bug).

I think "Stat.5". is defined as:
"STAT.6 * 10"

"STAT.6" meanwhile is fixed Model Specific Size value.

So the formula looks right, but it seems to be using totally different values?
User avatar
BlueTemplar
Posts: 1074
Joined: Thu Apr 29, 2010 12:07 pm

RE: Design Fuel Consumption?

Post by BlueTemplar »

How do you access this debug mode ?

I suppose that this is for 10 hexes since Light Diesel Engine is "0.1 Fuel" ?
What happened to weight ? It's "SIZE" ??
zgrssd
Posts: 5101
Joined: Tue Jun 09, 2020 1:02 pm

RE: Design Fuel Consumption?

Post by zgrssd »

ORIGINAL: BlueTemplar

How do you access this debug mode ?

I suppose that this is for 10 hexes since Light Diesel Engine is "0.1 Fuel" ?
What happened to weight ? It's "SIZE" ??
How to enable the Debug mode is written in teh S&S Editor manual. Similar to the usertestmoed, you find a file in the gamefolder and change the content frome "FALSE" to "TRUE".

What exactly "Size" means has me confused as well. We know the formula roughly. And it does match the formula I found in the gamefiles - just the variables that are used in the gamefiles do not match.
Post Reply

Return to “War Room”