primordial stew
Emperor
I'm working on getting an old board game into civ5. The period is June 41 - June 44 (or so) on the eastern front only. Warsaw to Stalingrad is the width. The Finns, Italians (abstractly), Hungarians, and Romanians are allied with Germany. They are present as CS, but most of the units were under command of the German army, so show up as German units instead. Finland might be able to maintain it's own army, but for the others combat will be too far away to interest them, so they must be German controlled. The scale is 25 miles/hex and army/corp sized units. There is no city production, it is instead abstract, though maybe that can be adapted. Like have the capitol as the only city able to build anything??
There is little bombardment in the game. Cities cannot fire. I'm not bothering with ships, the embarkation promotion has been removed, and there will only be a few arty units. In May of 42 the Axis get the "siege train" that was used to bombard Odessa. And the Soviets don't get their first (of 3) unit June of 43. Air forces are the main support, but won't do a lot of damage. Mainly this is corp on army slugging it out!
The map has been created and the order of battle implemented (based on Rules of Engagement - Stalingrad code). There are some WW2 unit graphics available, and I'll be bringing some of them in this week along with adding some new promotions. The bulk of the remaining work is now in lua, which I am just getting into so am looking for help to speed things up.
1. What I am looking for is some help with the weather
That is adding weather "promotions". The weather in Leningrad is often different than the weather in Rostov. In Leningrad we may have snow, and down in Rostov it might be mud. So a function needs to add the correct promo to the units each turn based on a weather table look up. Weather effects are very important for limiting aggression. When it's muddy, there is little combat as men and supplies can't move quickly. When the weather is nice (or at least the ground is hard) pincer movements and encirclements are possible.
The base movement is 4. Cavalry, and almost all German Army (proper) units have 6 moves. There are only 23 hexes between the Axis start line and Moscow.
2. Replacement pool. In regular civ any unit that can accept replacements gets them, but really replacements were limited. This is a key in limiting aggression. So some mechanism must be devised to deal with this. The game comes with tables to determine how many replacements are available, but I've no idea how to do this in the game. Maybe it's not worth it?
Excess replacements can be used to reconstitute eliminated units. So some book keeping of eliminated units should be kept along with a mechanism to pick which one(s) to buy each turn with any available replacements.
3. Variable hit points.. We had this in civIII and I've been missing it ever since. Right now it's very costly for the Axis to "break out" from their start line. The problem is that the Soviets have too many hit points. For this case one could loop through the military district units and setDamage, but a general solution is needed. Maybe a hook into unit healing???
4. Railroad conversion and out of supply. There are no roads on the map, only railroads. The friendly board edge, and railroads are the only sources of supply. A unit >5 hexes away from a supply source at the beginning of the turn has it's movement halved (another promotion).
The other aspect is railroad gauge. The Germans and Russians used different gauges, so perhaps when a city is captured all of the railroads within it's cultural boundary get pillaged. In the game any unit could expend movement points to repair, but this would probably be difficult to implement, so I was planning on adding workers who are only capable of repair. New rails cannot be built, only existing ones can be repaired. The AI should handle this just fine.
5. This one isn't lua, but are there any settings to make it so the unit defending a city dominates the defense value of said city? Right now I've got cities set to 10 (without any fortifications), so any unit can take them in 1 shot. If an infantry is defending then I want the defense to be.. 40 or something. A number such that it will usually take 2 infantry to take the city (and 3 or 4 if fortified).
There are some significant differences from the board game, but with the addition of the lua code above I'm hoping this will play out nicely. Already I'm seeing some of the strategy. The Axis forces starting down in Romania really need to lay low for a bit instead of jumping out. They are just too weak to stand up to the multitude of Soviet units in the Odessa district. Army Group South has a hard time. I've pushed the panzers out to far only to see them destroyed by mods of Soviet units. Infantry must protect the flanks!
There is little bombardment in the game. Cities cannot fire. I'm not bothering with ships, the embarkation promotion has been removed, and there will only be a few arty units. In May of 42 the Axis get the "siege train" that was used to bombard Odessa. And the Soviets don't get their first (of 3) unit June of 43. Air forces are the main support, but won't do a lot of damage. Mainly this is corp on army slugging it out!
The map has been created and the order of battle implemented (based on Rules of Engagement - Stalingrad code). There are some WW2 unit graphics available, and I'll be bringing some of them in this week along with adding some new promotions. The bulk of the remaining work is now in lua, which I am just getting into so am looking for help to speed things up.
1. What I am looking for is some help with the weather

The base movement is 4. Cavalry, and almost all German Army (proper) units have 6 moves. There are only 23 hexes between the Axis start line and Moscow.
2. Replacement pool. In regular civ any unit that can accept replacements gets them, but really replacements were limited. This is a key in limiting aggression. So some mechanism must be devised to deal with this. The game comes with tables to determine how many replacements are available, but I've no idea how to do this in the game. Maybe it's not worth it?
Excess replacements can be used to reconstitute eliminated units. So some book keeping of eliminated units should be kept along with a mechanism to pick which one(s) to buy each turn with any available replacements.
3. Variable hit points.. We had this in civIII and I've been missing it ever since. Right now it's very costly for the Axis to "break out" from their start line. The problem is that the Soviets have too many hit points. For this case one could loop through the military district units and setDamage, but a general solution is needed. Maybe a hook into unit healing???
4. Railroad conversion and out of supply. There are no roads on the map, only railroads. The friendly board edge, and railroads are the only sources of supply. A unit >5 hexes away from a supply source at the beginning of the turn has it's movement halved (another promotion).
The other aspect is railroad gauge. The Germans and Russians used different gauges, so perhaps when a city is captured all of the railroads within it's cultural boundary get pillaged. In the game any unit could expend movement points to repair, but this would probably be difficult to implement, so I was planning on adding workers who are only capable of repair. New rails cannot be built, only existing ones can be repaired. The AI should handle this just fine.
5. This one isn't lua, but are there any settings to make it so the unit defending a city dominates the defense value of said city? Right now I've got cities set to 10 (without any fortifications), so any unit can take them in 1 shot. If an infantry is defending then I want the defense to be.. 40 or something. A number such that it will usually take 2 infantry to take the city (and 3 or 4 if fortified).
There are some significant differences from the board game, but with the addition of the lua code above I'm hoping this will play out nicely. Already I'm seeing some of the strategy. The Axis forces starting down in Romania really need to lay low for a bit instead of jumping out. They are just too weak to stand up to the multitude of Soviet units in the Odessa district. Army Group South has a hard time. I've pushed the panzers out to far only to see them destroyed by mods of Soviet units. Infantry must protect the flanks!