1. We have added a Gift Upgrades feature that allows you to gift an account upgrade to another member, just in time for the holiday season. You can see the gift option when going to the Account Upgrades screen, or on any user profile screen.
    Dismiss Notice

Over the Reich - Creation Thread

Discussion in 'Civ2 - Scenario League' started by JPetroski, Feb 4, 2011.

  1. Prof. Garfield

    Prof. Garfield Deity Supporter

    Joined:
    Mar 6, 2004
    Messages:
    2,255
    Location:
    Ontario
    OK, I've figured it out. It was a bug in the cloud mechanism, but not directly related to city building.

    In the cloud code, I have a line that if a tile is in the table of tiles replaced by clouds, and does not have a cloud on it itself, then it should get the terrain improvements stored in the table, since that must mean the terrain was changed with a cloud on it. To deal with another bug, I decided not to delete entries in the table, thinking it would do no harm to keep them, even if not needed. I'll try to get a fix out tonight. At the moment, this means that no tile that has ever had a cloud over it can have its improvements changed, which is undesirable.

    Was there a reason we were removing terrain improvements from cloud tiles other than aesthetics?
     
  2. JPetroski

    JPetroski Emperor

    Joined:
    Jan 24, 2011
    Messages:
    1,658
    No reason other than aesthetics and if forced to choose between aesthetics and functional city building, I'll take functional city building.
     
  3. Prof. Garfield

    Prof. Garfield Deity Supporter

    Joined:
    Mar 6, 2004
    Messages:
    2,255
    Location:
    Ontario
    OK, here is the fix.

    The Russian Front and Italian Front cities no longer receive airbase improvements, so they are not subject to deletion for not having a corresponding night airfield.

    I fixed the bug in the cloud code, and at the very least the city being deleted in the active game now survives.

    My new defence against the other weather bug is to only allow one instance of the update weather function to run at a time, by using a global variable to check if an instance of update weather is running.
     

    Attached Files:

  4. JPetroski

    JPetroski Emperor

    Joined:
    Jan 24, 2011
    Messages:
    1,658
    @Prof. Garfield can you please take a look at the RUDT table I built (probably wrong? It's throwing up a nil error when anything except the first entry "early radar" is selected. I'm guessing this means that I didn't properly "encapsulate" the other entries. I'm assuming RIDT is probably equally flawed. What do I need to do to get this fixed before @McMonkey needs to use his Ju88G's? Thanks!


    Error:
    Code:
    D:\Test of Time\Scenario\OTR\events.lua:5678: attempt to index a nil value (global 'radaruserDetailsTable')
    stack traceback:
        D:\Test of Time\Scenario\OTR\events.lua:5678: in function <D:\Test of Time\Scenario\OTR\events.lua:5345>
    
    Code:
    local radarUserDetailsTable = {}
    local RUDT = radarUserDetailsTable -- can use either form to make edits
    RUDT[unitAliases.EarlyRadar.id] ={ keyCode = specialNumbers.primaryAttackKey,
    baseRangeSchedule = {{.5,2.5},{1,6}},
    techRangeBonus = {{tech = techAliases.AdvancedRadarI, rangeSchedule = {{1, .5}}},
                      {tech = techAliases.AdvancedRadarII, rangeSchedule = {{1,1.5},{.25, 1.5}}}},
    allMaps = true,
    errorThresholdPerfect = 1,
    errorThresholdClose = {{tech = techAliases.FortiesI, bonus = 2},{tech = techAliases.AdvancedRadarII, bonus = 1}},
    errorThresholdDetected = {{tech = techAliases.FortiesI, bonus = 3},
                              {tech = techAliases.AdvancedRadarI, bonus = 1},
                              {tech = techAliases.AdvancedRadarII, bonus = 1},},
    moveCost = testingMoveCost or 4,
    
    }
    RUDT[unitAliases.AdvancedRadar.id] ={ keyCode = specialNumbers.primaryAttackKey,
    baseRangeSchedule = {{.5,3},{1,10}},
    techRangeBonus = {{tech = techAliases.AdvancedRadarI, rangeSchedule = {{1, 1}}},
                      {tech = techAliases.AdvancedRadarII, rangeSchedule = {{1,2},{.25, 1}}}},
    allMaps = true,
    errorThresholdPerfect = 1,
    errorThresholdClose = {{tech = techAliases.FortiesI, bonus = 2},{tech = techAliases.AdvancedRadarII, bonus = 1}},
    errorThresholdDetected = {{tech = techAliases.FortiesI, bonus = 3},
                              {tech = techAliases.AdvancedRadarI, bonus = 1},
                              {tech = techAliases.AdvancedRadarII, bonus = 1},},
    moveCost = testingMoveCost or 4,
    
    }
    RUDT[unitAliases.Ju88G.id] ={ keyCode = specialNumbers.secondaryAttackKey,
    baseRangeSchedule = {{.5,1},{1,2}},
    techRangeBonus = {{tech = techAliases.AdvancedRadarI, rangeSchedule = {{1, 1}}},
                      {tech = techAliases.AdvancedRadarII, rangeSchedule = {{1,1}}}},
    sameMap = true,
    errorThresholdPerfect = 1,
    errorThresholdClose = {{tech = techAliases.FortiesI, bonus = 2},{tech = techAliases.AdvancedRadarII, bonus = 1}},
    errorThresholdDetected = {{tech = techAliases.FortiesI, bonus = 3},
                              {tech = techAliases.AdvancedRadarI, bonus = 1},
                              {tech = techAliases.AdvancedRadarII, bonus = 1},},
    moveCost = testingMoveCost or 8,
    
    }
    RUDT[unitAliases.He219.id] ={ keyCode = specialNumbers.secondaryAttackKey,
    baseRangeSchedule = {{.5,1},{1,3}},
    techRangeBonus = {{tech = techAliases.AdvancedRadarI, rangeSchedule = {{1, 1}}},
                      {tech = techAliases.AdvancedRadarII, rangeSchedule = {{1,1}}}},
    sameMap = true,
    errorThresholdPerfect = 1,
    errorThresholdClose = {{tech = techAliases.FortiesI, bonus = 2},{tech = techAliases.AdvancedRadarII, bonus = 1}},
    errorThresholdDetected = {{tech = techAliases.FortiesI, bonus = 3},
                              {tech = techAliases.AdvancedRadarI, bonus = 1},
                              {tech = techAliases.AdvancedRadarII, bonus = 1},},
    moveCost = testingMoveCost or 10,
    
    }
    RUDT[unitAliases.MosquitoII.id] ={ keyCode = specialNumbers.secondaryAttackKey,
    baseRangeSchedule = {{.5,1},{1,2}},
    techRangeBonus = {{tech = techAliases.AdvancedRadarI, rangeSchedule = {{1, 1}}},
                      {tech = techAliases.AdvancedRadarII, rangeSchedule = {{1,1}}}},
    sameMap = true,
    errorThresholdPerfect = 1,
    errorThresholdClose = {{tech = techAliases.FortiesI, bonus = 2},{tech = techAliases.AdvancedRadarII, bonus = 1}},
    errorThresholdDetected = {{tech = techAliases.FortiesI, bonus = 3},
                              {tech = techAliases.AdvancedRadarI, bonus = 1},
                              {tech = techAliases.AdvancedRadarII, bonus = 1},},
    moveCost = testingMoveCost or 8,
    
    }
    RUDT[unitAliases.MosquitoXIII.id] ={ keyCode = specialNumbers.secondaryAttackKey,
    baseRangeSchedule = {{.5,1},{1,3}},
    techRangeBonus = {{tech = techAliases.AdvancedRadarI, rangeSchedule = {{1, 1}}},
                      {tech = techAliases.AdvancedRadarII, rangeSchedule = {{1,1}}}},
    sameMap = true,
    errorThresholdPerfect = 1,
    errorThresholdClose = {{tech = techAliases.FortiesI, bonus = 2},{tech = techAliases.AdvancedRadarII, bonus = 1}},
    errorThresholdDetected = {{tech = techAliases.FortiesI, bonus = 3},
                              {tech = techAliases.AdvancedRadarI, bonus = 1},
                              {tech = techAliases.AdvancedRadarII, bonus = 1},},
    moveCost = testingMoveCost or 10,
    
    }
    
    
     
  5. Prof. Garfield

    Prof. Garfield Deity Supporter

    Joined:
    Mar 6, 2004
    Messages:
    2,255
    Location:
    Ontario
    It was a typo in line 5678. I put in
    radaruserDetailsTable

    instead of

    radarUserDetailsTable

    This should fix it.
     

    Attached Files:

  6. Prof. Garfield

    Prof. Garfield Deity Supporter

    Joined:
    Mar 6, 2004
    Messages:
    2,255
    Location:
    Ontario
    @JPetroski @McMonkey

    Here's the updated events, this should fix the problem. Haven't tested, so let me know if it doesn't work (it's a pretty obvious fix, though). Directly modified from the version 4 download. If there was some other change, that will have to be re-done, or this fix applied there too.

    4355 changed from
    local rUOwner = areaDamageUnit

    to

    local rUOwner = areaDamageUnit.owner
     

    Attached Files:

  7. Prof. Garfield

    Prof. Garfield Deity Supporter

    Joined:
    Mar 6, 2004
    Messages:
    2,255
    Location:
    Ontario
    @JPetroski @McMonkey

    Here's the fix

    (line 4325 begin) Red added
    if modInfo.tech1 and civ.hasTech(rUOwner, modInfo.tech1) then
    modifier = modifier*(modInfo.tech1Mod or 1)
    end
    if modInfo.tech2 and civ.hasTech(rUOwner, modInfo.tech2) then
    modifier = modifier*(modInfo.tech2Mod or 1)

    I used the events file that I had, so anything JPetroski did after my last fix will have to be redone (I think it's something to do with battleship extra ammo--please post the fix here, even if it isn't big enough for a proper update. That way, the fix doesn't have to keep getting re-done.)

    Bug explanation: modInfo.tech1 and .tech2 return technology objects, which are a part of the TOTPP and not basic Lua itself. Hence, lua calls its type "userdata". It's the same problem as if you were trying to add (or multiply, as this case is) a number with a string or boolean, or nil.

    (modInfo.tech1Mod or 1) is a "safety", so if that entry was missing for some reason, the game will produce 1 instead of throwing a error. Since something was there, just the wrong thing (since I didn't use the right key), the or 1 part didn't activate.
     

    Attached Files:

  8. JPetroski

    JPetroski Emperor

    Joined:
    Jan 24, 2011
    Messages:
    1,658
    Thanks Prof. Garfield - here is the events I changed with the "--" next to carrier on 1179(?)
     

    Attached Files:

  9. JPetroski

    JPetroski Emperor

    Joined:
    Jan 24, 2011
    Messages:
    1,658
    Here's the latest events that fixes Foggia. There's an issue with Regensburg's refinery that I'll have to eventually fix but haven't done it yet.
     

    Attached Files:

  10. Prof. Garfield

    Prof. Garfield Deity Supporter

    Joined:
    Mar 6, 2004
    Messages:
    2,255
    Location:
    Ontario
    @JPetroski @McMonkey

    Here's the fix for the Gomorrah event, and the Regensburg refinery bug.

    I simply forgot to include the destruction of the city improvements in the Gomorrah event, and the Regensburg refinery had the wrong tile entered in a table.
     

    Attached Files:

  11. Prof. Garfield

    Prof. Garfield Deity Supporter

    Joined:
    Mar 6, 2004
    Messages:
    2,255
    Location:
    Ontario
    @JPetroski @McMonkey Here's another quick bugfix. It should now be possible to generate munitions on the edge of the map. The code that checked if neighbouring squares had forbidden air cover broke if when the "adjacent tile" didn't exist. I've introduced a guard to fix this.

    5083
    if hasAirAndTarget(t) then
    changed to
    if t and hasAirAndTarget(t) then
     

    Attached Files:

  12. McMonkey

    McMonkey ----Evertonian---- SLeague Staff

    Joined:
    May 9, 2005
    Messages:
    2,876
    Location:
    Cardiff
  13. Prof. Garfield

    Prof. Garfield Deity Supporter

    Joined:
    Mar 6, 2004
    Messages:
    2,255
    Location:
    Ontario
    @JPetroski A while ago we discussed requiring a certain number of Civilian Population improvements before allowing the corresponding level of Industry/Refinery/Aircraft Factory to be built in a city. Did we decide against this, or did we forget to implement it?
     
  14. JPetroski

    JPetroski Emperor

    Joined:
    Jan 24, 2011
    Messages:
    1,658
    I think in the multitude of things that we worked on we probably didn't implement it and I forgot that we had discussed it, but it would certainly make the RAF more useful. I don't think we should implement it for the current playtest going on, however as its 1) way too late; and 2) neither of us planned around that
     
  15. JPetroski

    JPetroski Emperor

    Joined:
    Jan 24, 2011
    Messages:
    1,658
    While our playtest isn’t done, it has given me some thoughts about the future of this scenario. I think the overall scenario is strong with the mechanics working but there’s still an issue of late game drag, mainly caused by the ground war in my estimation. I’m currently spending 45 minutes a turn just trying to whittle down every city with 2 flak guns in it. Definitely not fun and the need to do this has made it impossible to build anything except for A-26’s and fighters. That has to go.

    There’s some balance issues that I won’t know as much about until @McMonkey weighs in and the playtest AARs are unlocked, but the following are very apparent:

    ISSUES

    1. There is a bug with the mosquito apparently throwing up an error for defensive fire – need to examine further

    Proposed Solution: Simple – fix this!

    2. Veterancy is a problem in this scenario. It’s very difficult for a unit to achieve it (impossible offensively – the unit needs to survive an attack).

    Proposed Solution: Have an event where if a munition kills an enemy aircraft, nearby friendly aircraft have a certain percentage chance of earning veteran status for participating in the battle.

    3. The Germans have no practical way to aggressively win – they can only passively win. The current way that the points are set up makes it exceptionally unlikely that Germany will ever get to their magic number, because their points get reduced by enemy actions.

    Proposed Solution: Have both sides’ points reduced by actions of the other. Each side races to a certain number to trigger invasions. Germany can trigger an invasion of England if they do well enough. The odds are still against Germany pulling this off, but it is possible. Germany needs to reach a certain negative number threshold (example: -1000), Allies must reach a certain positive number threshold (example, 1000).

    4. The Allies have no reason to bring bombers home, frankly. Aside from role playing, there is absolutely no reason to ever try and bring a bomber home (at least from distant targets).

    Proposed Solution: I believe that the solution for #3 above would solve this as well. Bomber losses would cause point reduction. There would be a reason to safely get bombers to target and back alive—otherwise, you’d be spinning your wheels and making no progress.

    5. The Germans have very little reason to build bombers or especially tactical bombers.

    Proposed Solution: I believe that the solution for #3 above would solve this as well.

    6. There is detrimental late-game crawl caused by trying to whittle down ground forces and move substantial ground forces. The “quality of life” fixes such as formations don’t work/aren’t necessary for ground forces. The game turns from an air war game into a ground war game which is not, by any stretch of the imagination, its strength.

    Proposed Solution: I want to move to a totally abstract ground war. The progress on the map/city capture will 100% be driven by points and can flip back and forth. Captures will progress historically (so, landing in Normandy, eventual break out, etc.) Territory can be lost if air war goes against you (it would be possible for the Allies to do so well that they invade Normandy, but then to botch it and end up having Germany invade England and capture London). With the only way to gain points being to destroy air targets and units (well, probably naval too), the air war is 100% the focus of the scenario.

    7. There are gaps in action caused by one side or the other not having sufficient strength. This isn’t such a big deal and frankly there could be a gap in action caused by a player deciding not to attack right away at any given moment.

    Proposed Solution: Move up the historic mission schedule a bit and increase the number of aircraft allotted. Schweinfurt/Regensburg in particular doesn’t arrive until too far into the scenario.

    8. While the Battle of the Atlantic is fun early game, I think it is slanted too far in favor of the Allies. Freighters move far too fast and are only exposed for one turn in the Bristol Channel. This makes any attempt by the Luftwaffe to intercept them a bad odd for attrition (you’d have to do it every single turn).

    Proposed Solution:
    Reduce freighter speed from 10 to 3. Consider increasing U-Boat speed. There should still be a good chance of having a steady stream each turn, but it will take time to set up, is more vulnerable, and more likely to be disrupted unless significant resources are employed.

    Battle of the Atlantic – Another Possible Approach
    The other option for the Battle of the Atlantic would be to keep the freighter speed where it is, but have them randomly spawn within the convoy zone each turn depending on how many target units in England exist (ports and army/garrison and potentially convoys in the zone?). U-Boats would need to actively hunt in this zone, which might make turns drag on, but it is small enough that it might be more fun than just pressing a button too. Luftwaffe action against British ports and other targets would become more meaningful.

    In this approach, perhaps the Allied convoys would cost fuel each turn (kind of like the baggage train in Napoleon) to prevent too many from being in place.

    What are your thoughts? Would this be more fun or less?

    9. Cloud cover wasn’t as effective as I would have liked.

    Proposed Solution: Either increase the defensive attributes of cloud cover or utilize some sort of lua event that reduces attack rating of munitions to 1 if they are activated on cloud cover. The latter approach wouldn’t do anything if the bomber/fighter could find a clear tile next to a target, but in that situation we could assume it is just “hazy.” If the clouds are so bad that a target/unit is totally encapsulated by them, they’d be nearly impossible to hit.

    10. Very limited use of the Mediterranean bombers

    Proposed Solution: Provide limited (5-6) “free” bombers from time to time when certain point thresholds are met.

    Considerations with This Approach

    A. The French Resistance mechanic/German freight train spawn will need to be reworked.

    Proposed Solution: Create a new immobile Garrison/Army unit that is tied to an improvement (probably the courthouse). Use the same strategic bombing mechanism to create/destroy the improvement/unit when one or the other is built/destroyed. Count how many of these are on the map to determine how many freight trains are spawned each turn. Simply have them spawn at the start of the German turn rather than having a unit “call” them as in the current version. Possibly have a similar mechanism for the Allies. These units might carry a hefty point value which would compel the use of tactical bombers as well.

    B. Happiness might become an issue with no ground forces for the cities

    Proposed Solution: This might solve itself with flak. Hitler called flak batteries a “crutch” for the German people. Significant numbers were built and deployed as they made people feel safe/protected. With that said, not having as many inexpensive units to garrison cities with would make attacks on urban targets all the more important.

    C. How to deal with units that are in cities that are “captured” because of the points system?

    Proposed Solution: Ground units to be deleted. Air units to be moved over a space or two with a suitable message and given a chance to escape.

    Units to Rename
    -Regardless of which Battle of the Atlantic option is employed, Destroyers to now be ‘convoys’ as per an early recommendation by Professor Garfield.

    Units to Remove (20 total)
    -Advanced Radar (I don’t think the game needs this with the way that radar is set up, lua can simply make the early radar better).
    -Light cruiser
    -Heavy cruiser
    -Battleship
    -Landing Craft
    -Light shells
    -Medium Shells
    -Heavy Shells
    -Gun Battery
    -Allied Artillery
    -Allied Infantry
    -Allied Tanks
    -Red Army
    -German Artillery
    -German Infantry
    -Panzers
    -Neutral Territory (since I can’t get it to function – the barbarians delete it for some reason)
    -SAVE (not removing it but just keeping track of units I have free now)
    -SAVE (see above)
    -SAVE (and again)

    Units That Must Be Added
    -Army (stationary target – I’d probably just use a NATO symbol so it is country-neutral and use one unit rather than two).

    Net new units to play with = 19
    Are there any units you feel were desperately missing? 19 is a lot to play with. It would allow other target types, perhaps an expansion of Mediterranean assets, or French fighters that the Germans pressed into service (a good chance to use some new art). Also, it would allow “special” units like “Aces” and “Experten.”

    @McMonkey and @Prof. Garfield (and anyone else who is lurking) I'm quite interested in your thoughts.
     
  16. Prof. Garfield

    Prof. Garfield Deity Supporter

    Joined:
    Mar 6, 2004
    Messages:
    2,255
    Location:
    Ontario
    Why not have bombers only carry one set of bombs? We can use a unit's home city to determine if the bomber is loaded or not. Empty bombers have a home city of NONE and can't generate munitions. Loaded bombers have an airbase as the home city, and the city is changed to NONE when the bomber generates munitions. This would also mean that you can't support all operations out of a single airbase.

    If bombers can only make one attack, there is no value to not trying to return home. It may be necessary to increase the quantity of munitions generated for the attack to compensate for the inability to go from target to target over a few turns.

    Another idea I had would be to try to count attrition. If a bomber is damaged in combat (from full health), it counts as a "lost" bomber (even if not killed, so that disbandment/out of range counts as a loss). A damaged bomber that starts the turn in a friendly city is healed and reduces the "lost" counter by 1. Too many losses and pilots start to defect to Sweden or whatever.

    I'm inclined to suggest empty bombers as the simpler solution, since it is probably adequate.

    You could just have ground units represent much larger groups of units, so there are only a few of them to move. Then, rather than tactical bombers bombing these units into oblivion, the tactical bomber goal is to whittle the enemy down just enough to guarantee that the attacker will win.

    If you want to make the ground war events only, then perhaps you should make tactical targets appear for your bombers to attack in order to make the war progress.

    I seem to remember thinking watching McMonkey play Germany that it might have made sense to divert all of the French trains to submarine construction and try to overwhelm the convoy zone. At ~100 shields per submarine, in a few turns all the French Atlantic ports could churn out a submarine each turn, I think, once the trains started to make their way north.

    I'm inclined to think that 3 movement freighters would be annoying to shuffle around, but that would probably make it impractical to offer air cover to every freighter. Giving a freighter a home city and only allowing it to dock in that city would increase logistics, but would also offer more opportunities for the Germans to interdict shipments.

    Maybe we just make freighters "strategic targets" and so ineligible for air cover.

    Perhaps destroyed submarines have a chance to reappear outside the convoy zone, so there is some incentive to have them active.
     
  17. JPetroski

    JPetroski Emperor

    Joined:
    Jan 24, 2011
    Messages:
    1,658
    I'm off in the middle of nowhere making large responses tough, but I'm curious how the home city would be assigned and stored? OnActivate (only if in a city) and then 'k' turns it to none?

    I've wanted to be able to have a payload forever and I know plenty of others would appreciate this functionality. I would agree that the less changes made, the better.
     
  18. Prof. Garfield

    Prof. Garfield Deity Supporter

    Joined:
    Mar 6, 2004
    Messages:
    2,255
    Location:
    Ontario
    To load the bomber, just use the 'h' key to assign the current city as the home city, no need for an event (also prevents units getting disbanded if a bomber lands in the wrong airfield by mistake). 'k' would turn it to NONE as you already deduced.

    The trouble with payload is that you need to have some sort of unit flag to keep track of what units have a payload and what units don't. You can't use a state table, since unit id numbers are not guaranteed to be preserved between saved games. Ideally, the loading should be easily visible to the player, but a key press check of the active unit could also be used.

    I don't know if any of the unit 'attribute' flags are unused. Someone has to spend some time with lua to figure out what all the attributes mean. I think one of them is 'has moved' (probably to check if eligible for healing).

    Veteran status could be used, but you have to use code to override the ordinary rules of veteran status.

    I think home city vs no home city works well for Over the Reich air units, but wouldn't be very useful in other contexts.

    For land/sea units (that don't use the range counter) you could have two unit type slots, for loaded and unloaded. Change the name of the unit by event so that the loading status is only shown to the active player (this last part requires civ specific units).
     
  19. JPetroski

    JPetroski Emperor

    Joined:
    Jan 24, 2011
    Messages:
    1,658
    I think this might be the most brilliant thing you've thought of yet, which is saying a lot after all you've done here. I'll think about all of this over the next few days.

    I'm still not convinced the ground war is fun or interesting enough to keep. It seems to replace the air war instantly which is a shame since the air war is at a level where it can be very interesting by the time D-Day is triggered.
     
  20. McMonkey

    McMonkey ----Evertonian---- SLeague Staff

    Joined:
    May 9, 2005
    Messages:
    2,876
    Location:
    Cardiff
    I like all of the above proposals. With the Battle of the Atlantic, I would probably go with the random spawning option as I found the mechanism where the nearest Allied destroyer spawned the freighters to be an issue for me as it meant all of my efforts would need to be focused on one point. I realize the BotA might have been a fruitful objective to pursue but with so many production priorities to pursue I felt it was a waste of resources to fight a battle I was always likely to lose. Perhaps this was an error in judgment on my part.

    My proposal, though it's not been thought out in any great depth, would be for random spawning of Freighters that need to get to port. I would reduce the number of Destroyer escorts and make it more of a Maritime air battle - hunting down the U-Boats. Right now I feel like any U-Boats I send out to sea are on a suicide mission. If the focus was more on Freighters vs U-Boats vs Allied Maritime Airforce then I may be more incentivized to send the Luftwaffe to try and gain control of the skies.

    I agree that the current land warfare system needs to be overhauled. I made the mistake of not fortifying my French airfields with sufficient AA early on & by the time I realized my mistake, it was too late to put it right, meaning that the Luftwaffe had to abandon its French airfields & leave the Wehrnacht to its fate. I realize this was an error on my part. I have managed to remedy this somewhat in Germany and the Low Countries but it means that for now I'm just sitting waiting for the Battle of the Western Frontier to begin before I can risk my aircraft at longer range. I think the Allied push into Germany will be far tougher than the conquest of France. Something to bear in mind for your calculations.

    My slow pace over the past few weeks has been in part due to my frustration at making such a mess of aspects of this scenario. I wasted a lot of resources building Flight Schools where they were not needed. I neglected the Night Fighters so that after some of the heavy raids depleted my numbers I was no longer able to effectively contest the skies at night, even with Wild Sau. I would recommend a cheaper Night Flak unit to help the Luftwaffe protect its airfields. There is no industry on the night map to efficiently produce Flak in large enough numbers. I would also question the ability of Bomber Command to effectively attack Luftwaffe Airbases at night (where most of my losses were incurred). Bombing cities is one thing, but hitting a blacked out airbase at night seems unrealistic to me. Instead of allowing more cheap flak at night you could find a mechanism to prevent bombing of airbases. Of course, hit & run raids on day map airbases makes a lot of sense historically.

    I would look at randomizing the spawning locations of Supply Trains from France to make them less predictable. I found the invisibility of RAF night bombers to be pretty frustrating. I knew they were there as my radar picked them up but pinpointing their locating was a bit of a grope in the dark. I think it would be more enjoyable if they were visible once spotted by my adjacent aircraft. I don't think it would be a massive disadvantage for the Allied player because locating them is only part of the story. Shooting them down is not always easy as Flak 88s are quite weak and Night Fighters have to endure defensive fire. Perhaps you could compensate by slightly reducing radar range. This would make the Radar equipped night fighters a more worthy investment. For me, the most enjoyable part of this scenario was trying to pick up your bomber streams, predict their flight path and try and get enough night fighters in position to ambush without being detected. You will see from my secret thread that I went to great lengths to plan this effectively. It's just a shame that I ran out of night fighters & had to surrender the night skies to the RAF!

    Another mistake I made was to not push the science rate to the maximum from the start. This scenario has been a steep learning curve but also a lot of fun! Next time I will be far better prepared, armed with the tactical & strategic insights this playtest has given me. One lesson is when to conserve my forces & when to strike in force so as not to fritter away my aircraft. Another is picking which airbases to be the main hubs and ensuring they are adequately protected. Yet another is to prioritize science to keep my technological edge. I'm gutted I failed to develop Vengeance weapons!!
     

Share This Page