• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

unmerged(12544)

General
Dec 9, 2002
1.936
0
Visit site
Land Movement

This is my current knowledge about the formulas. 1 mile = 1.609 km

MOVETIME = DISTANCE / [SPEED] * INFRA_F * CONTROL_F * RIVER_F * OIL_F
MOVETIME = DISTANCE / [SPEED_MAX / TERRAIN_F / MODIFIER_F / ESE_F / ORG_F * MINISTER_F] * INFRA_F * CONTROL_F * RIVER_F * OIL_F

SPEED = SPEED_MAX / TERRAIN_F / MODIFIER_F / ESE_F / ORG_F * MINISTER_F >= 1 km/h (capped) equal to the speed shown in game

The minimum speed is:
Non-oil consuming: 1.0 km/h shown = 0.376 km/h effective
Oil consuming: 1.0 km/h shown = 0.125 km/h effective

For all units with a max. speed >=1.0, regardless of their max. speed

DISTANCE (Air) = (Army-X,Army-Y)-difference between start and destination province (in pixel) * 0.66 (in km)
DISTANCE (Land) = (Army-X,Army-Y)-difference between start and destination province (in pixel) * 1.24 (in km)
(Army-X,Army-Y)-difference² = (Army-X-difference)² + (Army-Y-difference)²

MOVETIME = time (hours)
SPEED_MAX = Maximum Speed (km/hour) [range: 1.5 - 20]
when Maximum Speed + Brigade Speed Bonus > speed_cap_xxx
then speed_cap_art, speed_cap_eng, speed_cap_at, speed_cap_aa are used as SPEED_MAX
INFRA_F = 1 + (100 - infra_dest) / 10 * 0.07 [range: 1.00 - 1.70]
infra_dest = current infrastructure at destination [range: 0 - 100]
TERRAIN_F = factor from "terrain types.csv" [range: 1.0 - 2.0]
MODIFIER_F = 100 / (100 + weather_dest) * 100 / (100 + terrain_dest) [range: >= 0.91]
weather_dest = MOV_BLIZZARD;SNOW;RAIN;STORM;FROZEN;MUDDY [range: -70 to -10]
terrain_dest = MOV_DESERT;MOUNTAIN;HILL;FOREST... [range: -47 to +10]
ESE_F = 100 / ESE = 100 / ((100 + infra_start) / 2 + HQ_bonus) [range: 0.926 - 2.0]
ESE = (100 + infra_start) / 2 + HQ_bonus [range: 50 - 108]
HQ_bonus = [range: 0 - 8]
ORG_F = 1.0 [org >=1] or 2.0 [org <1]
MINISTER_F = 1.0 or 1.1 [CoS - Manoeuvre]
CONTROL_F = 1.0 [controlled] or 1.25 [not controlled dest] is not shown as speed reduction in game
RIVER_F = 1.0 [no river] or 1.25 [river] or 1.33 [sea] Lübeck-Copenhagen is an example for [sea], is not shown as speed reduction in game
OIL_F = 1.0 [oil] or 3.0 [no oil] non oil consuming units don't care about a shortage

Distance in HOI2:
The map is based on a coordinate system, starting in the upper left West of the Aleutes Islands with 0,0 and ending with about 30000,11600. So moving from North to South means raising the y-values, from West to East, raising the x-value. All symbols and units are placed at certain coordinates. The computer then calculates the distance between two provinces by taking the appropriate coordinates of both and calculating their distance to each other. For LAND and AIR distance calculation the Army-X and Army-Y coordinates from ..\db\"province.csv" are used. Their distance in pixel is then multiplied by about 0.66 to get the number the tooltip shows, when you select an air unit at an air base and move the mouse over a neighbouring province. I am assuming, that land distances are not in miles, but kilometers. Also the unit speeds would then be km/hour.

Calculting the pixel distance:
You need for land and air, the ArmyX and ArmyY coordinates from province.csv.
E.g. Berlin - Newcastle(AST)

Berlin (15913,2350) - Newcastle(AST) (27774,9781) ->9249 km says the tooltip
x difference = 11861 pixel
y difference = 7431 pixel
distance² = 11861² + 7431²
distance = 13996.54 pixel
distance (km) = 13996.54 pixel * 0.66 km/pixel = 9238 km

HOI2 distance test 1:
From airbase Berlin the tooltip(t) shows
(t) - tooltip
(c) - stands for calculated via the formulas
(r) - in reality
pixel are calculated as Army-X,Army-Y-difference

Hammerfest 1325 km(t) - IRL(r) about 2000 km
Moscow 1138 km(t) - IRL(r) about 1650 km (1841 km road)
Tokio 7139 km(t) - 8930 km (r)
Cottbus 90 km(t), 163.2(c), 125 km (r), 136.780 pixel
Küstrin 104 km(t), 190.4(c) 175 km (r), 158.146 pixel
Stralsund 71 km(t), 128(c), 100 km (r), 107.201 pixel
Potsdam 47 km(t), 81.6(c), 60 km (r), 71.021 pixel

DISTANCE = MOVETIME * [SPEED] / INFRA_F / CONTROL_F / RIVER_F / OIL_F

Distance test 3:
From airbase Kuching the tooltip(t) shows

Kuching - Miri:
DISTANCE = 160 (hours) * 2.9 (km/hour) / 1.42 / 1.0 / 1.0 / 1.0 = 326.8 km
Kuching - Mahakam:
DISTANCE = 189 (hours) * 2.6 (km/hour) / 1.56 / 1.25 / 1.0 / 1.0 = 252 km
Kuching - Semitau:
DISTANCE = 200 (hours) * 2.6 (km/hour) / 1.56 / 1.25 / 1.0 / 1.0 = 266.7 km
Kuching - Pontianak:
DISTANCE = 316 (hours) * 2.9 (km/hour) / 1.42 / 1.25 / 1.0 / 1.0 = 516.3 km

Miri 176 km(t), 326.8(c), 267.152 pixel
Mahakam 133 km(t), 252(c), 202.072 pixel
Semitau 141 km(t), 266.7(c), 213.588 pixel
Pontianak 278 km(t), 516.3(c), 420.954 pixel

Dividing the pixel distance by the tooltip number gives about 1.5098 - 1.5219 for Berlin and Moscow. What is equal to 0.657 - 0.6622 as multiplicator.
Dividing the calculated distance number by the pixel number gives about 1.1975 - 1.2229 for Berlin and 1.2280 - 1.2723 for Moscow as multiplicator. For Kuching it is 1.2232 - 1.2487. For Washington 1.2277 - 1.2541. Berlin seems to be off, while Moscow, Kuching and Washington are close to each other. It can not be Infra, that makes the difference, maybe the fact that movetimes for Berlin are all very short compared to the other examples. There might be some numbers rounded downward.

Some practical examples:
Crossing a river -> Time +25%
Entering enemy territory -> Time +25%
Infra at destination is 100% -> Time +0%
Infra at destination is 90% -> Time +7%
Infra at destination is 80% -> Time +14%
Infra at destination is 70% -> Time +21%
Infra at destination is 60% -> Time +28%
Infra at destination is 50% -> Time +35%
Infra at destination is 40% -> Time +42%
Infra at destination is 30% -> Time +49%
Infra at destination is 20% -> Time +56%
Infra at destination is 10% -> Time +63%
Infra at destination is 0% -> Time +70%
Unit is out of oil -> Time +200%
The above ones can appear in combination and ALWAYS get multiplied on each other

Blizzard in the destination province -> Time +233%
Rain in the destination province -> Time +11%
Org is 0 -> Time +100%
ESE is only 50% -> Time +100%
You have a Chief of Staff with Shool of Manoeuvre trait -> Time -9%
The above ones can appear in combination, but do NOT get multiplied on each other in all cases

Historical movement rates:
1) From pmanlig: ..walk (Inf) 40 km/day, and there's an event in Nijmegen (Holland) where people keep that pace for 4 days and it's said to be quite a chore.
2) Hoth with his Pz Corps in 1941 from June 22 to June 25 made about 250 km to Molodetschno. So more than 80km/day into enemy territory.
3) Guderian on Sept 3rd 1941 made under slighly muddy conditions 75km in 5 hours.
4) 1. and 10. Pz Div had almost reached Sedan on May 13, 1940 at 1600 CET, about 100km in 3 days ->33 km/day
5) Guderians 2nd Pz div had a screening range of 420 miles in 48 hours ->338 km/day
6) 132. ID had to march from Yugoslavia (after Apr 11, 1941) to 6. Army (AG South) 800 km and arrived in July ->at least 10 km/day

I am currently using those values (exclusive below described factors):
Code:
Model	Speed km/h	km/day
	Max.	Min.	Max.	Min.
MIL-0	 1.5   	0.376    36.0	 9.0
INF-1	 1.4   	0.376    33.6	 9.0
MOT-2	 6.0 	0.125	144.0	 3.0
MEC-1	 7.5 	0.125	180.0	 3.0
ARM-3	 6.5	0.125	156.0	 3.0
in addition there can be
- a CoS effect of SPEED_MAX * 1.1
- ESE effect of SPEED_MAX * 1.08
- Inf in urban terrain of SPEED_MAX * 1.1
- total SPEED_MAX * 1.3068 ->under perfect conditions Inf can be 30.7% faster

Example:
Moving from 60% infra to X % infra, enemy controlled, CoS-Manoeuvre, perfect weather, plains, HQ_bonus = 4

Code:
	Speed	eff.Sp.	km/day	infra_dest	
ARM-2	13.00					(max. Speed)
	12.01	9.61	230.6	100
	12.01	8.98	215.5	 90
	12.01	8.43	202.3	 80
	12.01	7.94	190.6	 70
	12.01	7.51	180.2	 60
	12.01	7.12	170.8	 50
	12.01	6.77	162.4	 40
	12.01	6.45	154.8	 30
	12.01	6.16	147.8	 20
	12.01	5.90	141.5	 10
	12.01	5.65	135.7	  0			

	Speed	eff.Sp.	km/day	infra_dest
INF-1	1.60 					(max. Speed)
	1.48	1.18	28.4	100
	1.48	1.10	26.5	 90
	1.48	1.04	24.9	 80
	1.48	0.98	23.5	 70
	1.48	0.92	22.2	 60
	1.48	0.88	21.0	 50
	1.48	0.83	20.0	 40
	1.48	0.79	19.1	 30
	1.48	0.76	18.2	 20
	1.48	0.73	17.4	 10
	1.48	0.70	16.7	  0

Unit speed:
1) max. speed 5 equals 5.0 km/h [minister effect excluded]
2) When a unit is standing the mph number tells you at which speed the unit would move into a target province of the same terrain with the same infra level.
3) A leader with engineer trait does not increase unit speed.
4) A leader with panzer leader trait does not increase unit speed.
5) An engineer brigade does not help to cross a river in terms of time. It usually gives a speed bonus and so increases max. speed only for the division it is attached to everywhere.
6) My experience is: trust the ETA shown, but don't trust speed shown, when it is at 1.0 km/h.
7) The RIVER_F penalty also applies on national territory, meaning everywhere.

weather = xxx in the save game file can be:
blizzard (MOV_BLIZZARD)
raining (MOV_RAIN)
snowing (MOV_SNOW)
winter (MOV_FROZEN)
muddy (MOV_MUDDY)
storm (MOV_STORM)

So there can be a penalty on movement from:

1) Terrain of the target province from "..\db\units\modifiers.csv" and "..\map\terrain types.csv"
2) Weather in the target province
3) Infrastructure of the target province
4) ESE - infuenced by infra in the starting province
5) When current ORG of one unit in corps is <1
6) Rivers
7) When the target province is enemy controlled
8) When a unit is out of oil

Notes:
1) The discussion started here
http://www.europa-universalis.com/forum/showthread.php?t=186391&page=1&pp=25
2) The values for weather_dest and terrain_dest tells you how much slower a unit is (its speed), when moving into this kind of weather/terrain compared to plains.
3) "Muddy" instead of "temperate" in the province.csv has no direct influence on speed, it might raise the likelyhood for rain or muddy.
4) Retreat seems to be treated like movement.

Questions/BUGS:
1) I have not seen MOV_NIGHT do anything.
2) MOV_RAIN is NOT additive to MOV_MUDDY, so rain + muddy is much better than only muddy, because the MOV_RAIN value applies! Also in game there is only Muddy + Rain and never Muddy alone. But when you load a saved game, you can have muddy without rain for some time. So the bug is, that muddy only exists after a reload.
3) The air distance calculation via tooltip seems to have a far too low multiplicator to get realistic distances.
4) Apply the RIVER_F factor for rivers and sea zones ONLY on enemy territory.

Suggestions for Paradox:
1) Create the weather = muddy_raining using (MOV_MUDDY + MOV_RAIN), this condition should be the second worst state after blizzard.
2) Turn MOV_NIGHT into MOV_LANDING to adjust the speed with which naval landings are conducted.

updated with v1.2, but just a few quick tests done
 
Last edited:
There may be an org factor as well. Units at 0 org seem to move more slowly than units at max org.

Snow and Frozen are both distinct weather factors, ie, snowing and frozen. Does muddy work?
 
The formula is certainly NOT complete, it contains my current knowledge of the formula. I have no reason to believe, that MOV_MUDDY is not working, I will test that later and put my discoveries in the first post.
 
Last edited:
Panther II said:
3) The caculation base for MODIFIERS_F is strange. E.g. when you move into mountains instead of clear, you are NOT 33% slower. You are 100 / (100 - 33) = 1.49, meaning you need 49% more time to get there. You are 33% faster, when you move into Clear, compared to mountains.

That's because you are thinking in terms of movement time. The modifiers affect the SPEED of the unit, not the movement time. Thus the speed is 30% less, (which results in ~49% greater movement time, as time will be distance/speed)

2) MOV_RAIN is NOT additive to MOV_MUDDY, so rain + muddy is much better than only muddy, because the MOV_RAIN value applies! Also in game there is only Muddy + Rain and never Muddy alone. But when you load a saved game, you can have muddy without rain for some time. See S-3 and S-

Rain+Muddy does not exist. On the weather map, there is only one tye of weather than applies, you can only have rain OR muddy. There is no such thing as rain + muddy weather. You can have muddy+temperate climate type, but climate type only determines what kind of weather a province gets, it's not a movement modifier on its own (e.g., subarctic will probably get more snow, but if clear will not have any other movement modifers beyong terrain type, infra etc). Which brings me back to my original question of whether or not muddy works.

Also, do you have a factor for the unit speed? Speed is defined in the unit files, max speed of 5 for infantry, etc. +
 
Last edited:
From the information know is it possible to componsate for oil based movement in low infra province in desert terrain? Low infra really hurts oil based transportaion. In the dessert however it was footed infrantry that was hurt more by teh dessert terrain than the trucks and tanks. Which is why both the axis and allies moved to motorised infantry in north africa. Yet the game mechanics dont reflect this.

Could you provide a bonus to percieved infra for these units in desert? of a bonus to desert movement rate to simulate this? My fear with just bummping up desert speed is that in high infra desert terrian you might get insane movement rates.
 
Belissarius said:
From the information know is it possible to componsate for oil based movement in low infra province in desert terrain?
The best solution looks to me to remove the OIL_P variable. Or maybe it should be capped.
Belissarius said:
Low infra really hurts oil based transportaion. In the dessert however it was footed infrantry that was hurt more by teh dessert terrain than the trucks and tanks. Which is why both the axis and allies moved to motorised infantry in north africa. Yet the game mechanics dont reflect this.
Yes, the current situation is not very realistic.
Belissarius said:
Could you provide a bonus to percieved infra for these units in desert? of a bonus to desert movement rate to simulate this? My fear with just bummping up desert speed is that in high infra desert terrian you might get insane movement rates.
I will wait for 1.2 to fix some issues. But you could edit modifiers.xls and make motorized units faster there with the disadvantage, that they will get way too fast in 100% infra provs e.g. desert provinces (if such a prov exists). For now I have made them equally slow in muddy,swamp,blizzard, because they are already penalized enough by the oil penalty.
Gjerg Kastrioti said:
Rain+Muddy does not exist.
......
Which brings me back to my original question of whether or not muddy works.
On the the weather map the ground is muddy (brown) and it is raining. But only MOV_RAIN applies. Save that and reload and you will only have muddy, what is working, but only after a reload.
Gjerg Kastrioti said:
Also, do you have a factor for the unit speed? Speed is defined in the unit files, max speed of 5 for infantry, etc. +
I will try to add such a factor.
 
Last edited:
Panther II said:
MODIFIER_F = 100 / (100 + weather_dest) + 100 / (100 + terrain_dest) - 1 [range: >= 0.91]
weather_dest = MOV_BLIZZARD;SNOW;RAIN;STORM;FROZEN;MUDDY [range: -70 to -10]
terrain_dest = MOV_DESERT;MOUNTAIN;HILL;FOREST... [range: -47 to +10]
Your terrain and weather modifiers are still incorrect. The correct one is simpy to multiply the two modifiers, not add them. E.g. frozen in mountain for motorized is 2.67, not 2.33 as per your formual. Instead of dividing several times, just mutliply by (1+weather)*(1+terrain). For the above example this works out to be (1-0.25)*(1-0.50)=0.375 = 1/2.67
Or at least change it to:
MODIFIER_F = 100 / (100 + weather_dest) * 100 / (100 + terrain_dest)
 
Don,

I have done distance test, with the result, that air distances look good, when they are in miles not kilometers. Then the air distance is almost equal to the calculated land distance. Those two values, might then still include some kind of a not go strait factor, which then brings them for a short distance quite close to reality. This is current theory.
What have you found?
 
Why imperial speeds, but metric distances?

Panther II said:
Don,

I have done distance test, with the result, that air distances look good, when they are in miles not kilometers. Then the air distance is almost equal to the calculated land distance. Those two values, might then still include some kind of a not go strait factor, which then brings them for a short distance quite close to reality. This is current theory.
What have you found?

I'm not 100% sure what you're aiming for, but I think we're on the same path. I'll try explain what I have found (if for no other reason than give the developers a good laugh at our fumbling around with the game :D )

I checked out the distances a bit more (while actually playing the game :D), and found that there is a very simple relationship between the provinces.csv file and the distance in the game. The pixel distances from the file converts directly into km in the game. I.e. one pixel on the map is one km of distance. This is the distance given as range between provinces for air missions, and is calculated directly disregarding the actual move path the plane will have to make to the target. As move is in mph, the 0.66 factor I brought up in the other thread comes frmo the kilometers to miles coversion 1/1.609.

For land units it is just as simple, but the distance you have to move is twice the direct distance. Again the factor I brought up in the other thread of 1.24 comes from 2/1.609. It appears our armored spearheads have to move twice the distance of the planes, no matter how many straight motorways Hitler manages to build.

More later,
E
 
Don,

my aim is to understand the mechanics of the game to improve it or tell Paradox, what is wrong in my opinion. I did not intend to spend so much time on such an issue. ;)
That 1 pixel is one kilometer makes a lot of sense, because that would have made it a lot easier to draw the map. What you are saying suggests, that both air and land distances are in miles, because of /1.609. I will wait for you results and change my initial post later on the army distance issue.
My new speed values for infantry do work fine in game, they slow down conquest a lot. I will keep them in the area.
 
Panther II said:
That 1 pixel is one kilometer makes a lot of sense, because that would have made it a lot easier to draw the map. What you are saying suggests, that both air and land distances are in miles, because of /1.609. I will wait for you results and change my initial post later on the army distance issue.
Nope, the distances are in km. As the speed in the game are given as mph (why, just why :confused: ) the 1.609 factor comes in when calculating the travel time.

My new speed values for infantry do work fine in game, they slow down conquest a lot. I will keep them in the area.
Do you have a going thread where you discuss these changes?
 
You can see in the first post (there is no other thread), that I am using a max. speed of 1.5 for infantry model 1, making their movement speed much more realistic. All other leg units are at 1.4 - 1.7. All that is assuming, that unit speed is actually in km/hour; when it is miles, then the speed will be even lower. All brigade speed bonuses and penalties are gone, except for heavy tanks. Also all "terrain types.csv" factors are now 1.0. And the "super" additional penalty for MOT, ARM, etc. in jungle, swamp, mountain, muddy are gone. All units are treated equally there (modifiers.csv), only Marines and Bergsjaeger get a small bonus. MOT speed is something, that needs testing, but armor +30% should be absolutely no problem.

Don,
For air distance it can not be 1 km / 1.609 = 0.6215
because there is the factor of 0.66 - 0.67, that seems to be constant everywhere. For land distances I am suspecting a correction factor, that might be based on the Y-distance to the equator.
 
Last edited:
Panther II said:
Don,
For air distance it can not be 1 km / 1.609 = 0.6215
because there is the factor of 0.66 - 0.67, that seems to be constant everywhere. For land distances I am suspecting a correction factor, that might be based on the Y-distance to the equator.
Good point, that's what I get for making hasty calculations. Guess it would have been too nice for such a correlation that my mind decided it didn't want to see the discrepancy. :p
I'm still willing to put my money on the factor being a result of the km to miles conversion, the 2/1.609 = 1.24 is just to neat. Perhaps Paradox made the same mistake as me and converted 1/1.609 into 0.66? :D

I can not verify any correction factor though. I get the same factors when testing in southern or northern SU. If there was a correction factor it should have come into effect on the Kola peninsula.
 
Don E,

actually I did not want to dig deeper into this issue, but now I will do some further tests. My experience is, that you need pixel distance, to get results, which are precise enough.
I still think, that land speed and distance being km, makes a lot of sense. the numbers would be about 20-30% above direct real world distances (actually very good).
Yes, there is no correction factor.
 
Last edited:
Is there away to boost desert move as a factor of infrastruture? What I mean teh lower the infrastructure in a provice the higher bonus is added to desert travel so that is eliminate the low infra oil penalty? I'm not 100% sure how the variables can be worked here so I was wondering if anyone sees a way?
 
No, not possible, just look at the structure of the formula. You can raise infra world wide and so force the penalty to stay low. You can also raise the max. speed, what might make the units rockets on controlled territory with high infra. But in my eyes, we can only do some small fixes and wait for Paradox to "enhance" the formula.