COMBATSIM.COM: The Ultimate Combat Simulation and Strategy Gamers' Resource.
 
Changing the Parameters in B-17
by Iain Howe of Wayward Studios

Printer Friendly Version


B-17 contains fair scope for user tweaking. Not so much the plane skins, but more in the nuts and bolts of the game itself which is far more interesting! Im sure someone will hack the resources eventually, anyway, and provide us with custom plane skins, but the following are changes that EVERY user with a text editor can make!

 

The main source for tweaking is a file called RIVERANDROADSDB.LMF, which is located in the DATABASES directory of your B-17 install. If you open this file up youll find that its chock full of different areas, and each of those areas contains specific parameters that can be used to affect various areas of the game.

 

It goes without saying that the settings currently being used represent the Developers best efforts at balancing play properly, and representing things in as historically accurate, balanced and fun a manner as possible. If you leap in and start making near-random changes, they will have both obvious and subtle effects on gameplay. The system that I find works is to make very small changes, document them, and see what the results are. I also keep copies of both the original RIVERANDROADSDB.LMF and the last good one that I created. That way you can always roll back later. It sounds like a lot of work, but its worth it. You can fine tune your copy of B-17 until it plays exactly the way YOU want it to or you can screw up so much that the game is unplayable, and you have to replace the parameters file with the old one.

Registry Hacks:

 

  1. In addition to RIVERANDROADSDB.LMF there are a couple of Registry Hacks that you can use.

 

    1. The first of these is called EnableQuitStartMissions. EnableQuitStartMissions changes the function of the Main Menus Quit Game switch, allowing the user to launch special missions (as defined in RIVERANDROADSDB.LMF) if youve activated EnableQuitStartMissions youll need to use ALT+F4 to quit the game.
    2. The second of these is called ForceWindowed. ForceWindowed makes B-17 boot into a shell, rather than full screened. This shell can be used to view information on the current aircraft by clicking on the Aircraft tab (once a mission is in progress). In addition you can use the Game tab to affect the simulation. Many of the controls in the Game tab may not work correctly as part of the process involved in finalising the game meant that the resource structure was changed.

 

There are rumours of additional Registry Hacks that do things like make it snowy throughout Europe and so forth Ill be checking into those rumours and bringing you the fresh word as soon as I can.

 

The process of entering a Registry Hack is as follows:

 

First, think carefully before you perform the Hack. Youll be playing around in your System Registry not something a sane person would do if they werent sure they knew their way around. Although following these instructions properly puts you at almost no risk at all, if you do something hideously incorrect it is REALLY possible to screw things up in here so only perform a Registry Hack if you:

 

        Accept the responsibility for any problems caused. EVEN if that means formatting your hard drive and reinstalling!

        Reckon you can follow the instructions carefully and exactly.

        Understand that it MIGHT affect the stability of your game

        Understand that the process involves meddling with forces that man was not meant to understand. ;-)

 

1.      Press the START button and select RUN

2.      Type Regedit into the box provided and select OK

3.      Open HKEY_LOCAL_MACHINE by clicking on the plus next to it

4.      Open Software by clicking on the plus next to it

5.      Open Microprose by clicking on the plus next to it

6.      Open B17 by clicking on the plus next to it

7.      Select General by clicking on it some data should be displayed in the Right Hand screen.

8.      Right click in the Right hand window and select NEW. A cascade menu will pop up from which you should select DWORD Value.

9.      The DWORD will be created, and you should rename it now, to match the Hack name. Type them exactly, either EnableQuitStartMissions or ForceWindowed without the quotes.

10.  Right click on the new hack and MODIFY it. Set the value to 1 (either Hex or Decimal not important!).

11.  Congratulations. You are now a 133T H4X0R, D00D! ;-)

 

RiverAndRoadsDB.lmf

Despite its misleading extension, this is a simple text file. Many of the options are numerical choices, which are made clear within the context

 

Upon opening it you will, no doubt, quickly become confused. So heres a simple breakdown of the files structure.

 

  1. Header

Basic Authorship info. If you use any logging tools this information is appended to the file. Replacing our names with yours does NOT, in any way, make you 1337. Adding your name to ours to identify a log as YOURS is different.

 

  1. General

Whole bunch of generic game stuff

    1. Timeskip

Full and Mini timeskip lengths. In addition, if timeskips are taking too long, reduce the TimeOut setting length.

    1. Release Vs. Debug

Through out the file if you put // before a line of text itll get ignored. This is two sets of the same parameters, Debug and Release, obviously the Debug settings were used for testing, whilst the Release ones represented the final game. Either one or the other set should be commented out with //. I suggest editing the Debug ones to your hearts content, but preserving the Release settings, commented out.

    1. Takeoff Runway

The standard runway is 1. You can, apparently, force the B-17s to take off from one of the runways regardless of wind direction with this setting.

    1. Crewmember Highlight

Sick of the white line around B-17 crewmembers when theyre selected? Set this to 0 and remove it!

    1. Spawn Vs. Takeoff NME Fighters

If you set this to 1, the Luftwaffe will appear in the air seems to be a good way to guarantee lots of fighter opposition.

    1. Max No. Of Active Airfields

At the moment, only three groups of Luftwaffe fighters at a time can be vectored towards you. If youve got a damn good system, you could crank this number up and allow more Luftwaffe Fighters into the air.

    1. Allied Fighter Squadron Size

This number represents the number of Fighters in an Escort formation.

    1. Luftwaffe Squadron Size

This number represents the number of Fighters in a Luftwaffe formation. (Beware: Radically cranking both f and h together will cause MAJOR performance hits!)

    1. Bomber Captain Views

If you set the restrictions to 0 rather than 1, youll get the big picture Squadron Commander camera in Bomber Captain campaign mode.

 

  1. Weather
    1. Severity scalars for Front End weather options

These numbers here are applied to the settings below for wind and Cloud cover to determine easy, medium and hard weather settings.

    1. Wind figures

This affects Navigation difficulty, and the effect of wind on the aircraft.

    1. Cloud Cover information

Cloud cover impedes Navigation, and also makes bombing real difficult. You can manipulate the amount of cloud cover.

  1. Sound Effects Careful how you play with these!

  2. Prompts
    1. Navigator Prompts Think the Navigator sits on his mistakes for too long? Think that 8 miles off course isnt lost? Change the settings here for just lost, pretty lost and REALLY lost.

  3. Mini Mission See the SPECIFIC section on creating user missions.

  4. Recon Mission Parameters
    1. TimeHours Works on a 24hr clock system. 15 = 15:00, which works well, because there is shadowing. Times closer to midday will make for tough feature identification.
    2. AltitudeFeet Determines the altitude of your recon mission. You can specify this to coincide with your average Bombrun altitude if you have one.
    3. SpeedMilesPerHour How fast is the recon plane going. Your own aircraft will be travelling at approx 150mph.
    4. Bearing - What bearing from the target will the run commence from? If youre sneaky you can configure the Recon settings AFTER you plan your mission, save off and restart the game, and see the target from the direction YOULL be flying later.
    5. DurationSeconds This is obviously closely tied into the Speed setting. No point in recon that finishes too early.
    6. CameraAngle This is the angle of the camera. An angle of 0 points out the nose (useless). An angle of 90 points straight down at the ground.
    7. FlakProbability This is a Scalar determining the probability of there being a flak attack on the recon mission. The recon plane will never be hit (or how could it return to bring you its film?) but flak adds a little atmosphere at the cost of obscuring detail on occasion.

  5. B17 Virtual Damage Nothing fun in here, this deals with internal compartment damage in an artistic sense, not a gameplay sense.

  6. Bail Out Each Crew position has a difficulty and a bone number.
    1. Difficulty A Scalar reflecting the relative difficulty of escape. A value of 1.0 was though excessive even for the Ball Turret gunner.
    2. Bone Bone 0 is the Bomb Bay. Bone 1 is the Waist Hatch. Bone 2 is the Tail Hatch.

  7. Crew Initiative Careful how you play with these. Changing these values could absolutely WRECK the games playability at any crew autonomy setting other than ZERO. See the separate section on Crew Initiative.

  8. Crew Personality
    1. Injury Stats Changing these will REALLY change the way injuries work in game terms.

                                                               i.      FirstAidMaxTimeSeconds This number represents the length of time (in seconds) that patching up a crewmember on deaths door will take. In effect if you reduce this number you INCREASE the amount of first aid that can be performed in one second of game time.

                                                             ii.      ResidualDrainTimeHours This number controls the speed that a crewmember can bleed to death in (standard rate of damage over time). Note that this is applied to any injury AFTER First Aid is applied and is from Shock, Fatigue, Loss of Blood and the effects of Pain Killing drugs.

                                                            iii.      MaxHealAmount Health is expressed as a number between 0 and 1. The maximum a character can ever be healed to is 0.7 through first aid. Change this up if you want crewmembers to have a higher threshold.

                                                           iv.      CriticalHealthLevel Health is expressed as a number between 0 and 1. When a character takes a hit a number is removed from that 1.0 and further bleeding reduces it further. When HEALTH (Bleeding+Wounds) reaches this threshold the character is defined as being CRITCAL.

                                                             v.      CriticalInjuryHealTimeModifier Once a character is injured beneath the CriticalHealthLevel he must be restored to it before further healing can take place. (There is a chance that no further healing will awaken the character). This healing takes longer (is multiplied by the modifier above).

                                                           vi.      MinKnockoutHealth Health is expressed as a number between 0 and 1. At this number the game starts checking for unconsciousness.

                                                          vii.      Min KnockoutChance Expressed (again) as a number between 0 and 1 this is the probability at the min level above that a crewmember will pass out.

                                                        viii.      MaxKnockoutHealth With a health below this value no crewmember will EVER remain conscious.

                                                           ix.      MaxKnockoutChance Expressed as a probability this represents the chance that a crewmember will pass out at the max value.

                                                             x.      KnockoutCheckIntervalSeconds After this interval elapses the sim will check for Knockouts in injured crewmembers.

                                                           xi.      xInitialDamageMin This represents the base damage inflicted by ONE INCIDENCE of ONE ROUND of the indicated damage vector (Fire, Flak, Cannon etc).

                                                          xii.      xDamageRange This represents the range of potential modifiers (+/-) applied to the base damage (above).

                                                        xiii.      xDamageSeconds A period of time, in seconds, in which the DamagePerTime damage is inflicted. This damage is inflicted until First Aid is applied.

                                                        xiv.      xDamagePerTime This is an additional amount of damage inflicted each time the xDamagePerTime period is elapsed. This represents immediate shock, bleeding and pain. Untreated wounds are bad news, no?

    1. Panic Effects

                                                               i.      PanicSkillModifierMin If a guy is panicking then his skills will be affected. The most stalwart troops will only be affected by this amount (.25 = reduced by 25%)

                                                             ii.      PanicSkillModifierMax This is the amount of effect on skills that the shakiest crewmembers will experience

                                                            iii.      PanicTimeModifier First Aid, Winching down gear whatever the task it takes longer if your hands are shaking! (1.5 = 150% normal time).

                                                           iv.      Panic/AggressionAmplifier Do your guys whimper and cower or stupidly blast round after round at nothing? A value of .50 = a fifty-fifty chance of either.

                                                             v.      PanicCureTimeSeconds How long do your guys stay panicked if you take them under manual control?

    1. Learning Speeds Skills can improve by the indicated amount per mission. If a human being takes control then they improve by the higher indicated amount, depending on how much of the ImprovementCombatTime the player occupies them for.
    2. Togglier Reaction times and Emergency System speeds in seconds.

 

  1. Reward System
    1. If you think you get medals too easily take down the points totals for damaging and destroying fighters! Other events with positive and negative effects are listed too.
  2. Compartment Fire Parameters Careful how you play with these!
    1. You can adjust the severity of fire for example if you want it to be able to spread faster, but do a lot less damage, you could quickly have your B-17 ablaze from stem to stern. By changing the IntensitySpreadMin setting. Its pretty unsporting to change it lower than the first level of warning though (See Prompts above).
  3. Gunner AI Changing this can result in sniper gunners putting rounds through the heads of the pilots and the engines of the fighters. Be advised that you, as player, may have a LOT less fun if the AIs pick off all fighters at over a kilometre distant!
    1. By separating Range Spot and Range Fire by a larger distance, the Gunners will be calling fighters out before engaging them.
    2. If you take down the Min Fire then more friendly fire incidents will occur, but more lethal hits might be scored on the enemy fighters
    3. With more separation between Max and Min BurstTime settings the gunners will be more economical. Or you could increase the Pause time for more Short Controlled Bursts.
    4. DO NOT PLAY WITH MUZZLEVELOCITY That was in there in case we changed it in the Physics engine at any point. We didnt. Nuff said.
    5. The Max Errors and Time to Homes can be reduced for a more homegenous (and better average) performance. This will minimise the effect of experience on the gunners though, as even at low skill levels the AI Gunners will be pretty accurate.
    6. Max Home and Min Home means that the gunners will start to aim at the bigger setting with a higher skill and at the smaller setting with a lower skill. Increasing the difference will result in more homogenous performance by experience. Pushing both numbers out will increase accuracy. Pushing both numbers in will reduce accuracy. Note that they will still fire without aiming if the NME fighters enter their RangeMaxFireYards but not accurately.
    7. Waste is a thief! Be careful that you dont have your gunners blowing away all their ammo due to bum settings in here.
  4. Engine Sounds Dont touch! More on the sound at the bottom!
  5. Flak Information
    1. It is REALLY, REALLY, REALLY easy to render B-17 unplayable with this stuff. On the other hand careful tweaking will suit the game more to your desire. There is a separate section dealing with Flak below.
  6. Bomb Damage
    1. This is all pretty self explanatory. Only mess with this stuff if you REALLY feel that Bomb Damage is incorrect.
  7. Aircraft Gun Parameters
    1. As part of the difficulty levelling, some help is given to the player when enemy planes are set to lower levels. This help is in the strength of the bullet, and in the scaling of the Collision Geometry. Right now its pretty transparent that this is happening and as these scalars refer to invisible boxes surrounding parts of the aircraft, its probably wise not to radically mess with them.
    2. Damage scalars, on the other hand, are ways of taking the complex mesh of individual component strengths and applying a broad scalar to them in order to easily make certain classes of aircraft more or less rugged. In addition you can make the damage differentiation between the sturdier Radial engines and the more fragile Inline and Jet ones more or less pronounced.
    3. Finally, some aircraft are equipped with 30mm cannon rather than the more usual 20mm ones. Simply change the CannontoBf109CannonDamageScalar to determine the damage relationship between them. The higher the number, the greater the amount of damage the 30mm cannon does. The lower, the closer its effect is to its smaller brother.
  8. Gun Damage
    1. Both Cannon and Machine gun have their section here. The hit probabilities and the damage. Hit probability determines the chance (expressed as a Scalar) that a particular component is hit IF THE GEOMETERY IT OCCUPIES is struck by a single bullet of that type.
    2. Damage determines the damage inflicted on the component by a single strike. Note that all totals should add up to 1.0. Thusly a component with a machinegun damage rating of 0.2 can take 5 machinegun rounds before being broken.
  9. Damage Effects
    1. PostCrashVelocityBelowWhichEffectsSwitchOff This turns off streaming effects. No gameplay value, probably best not to mess.
    2. PostCrashVelocityBelowWhichHugeFireSwitchesOn Inhibits the huge explosion after crashing. No gameplay value, again.
    3. TextureDamageFromOilPerTick This controls the visual speed of the oil staining after an engine suffers an oil leak. Affects only the visual damage, not the actual effect on the engine.
    4. TextureDamageFromHugeFirePerTick Causes the blackening from huge fireballs. No gameplay effect to this setting.
    5. TextureDamageFromFirePerTick This affects the eating of the control surfaces during an engine fire. This affects the texture only, again no actual gameplay application. This SHOULD be set lower than the oil one, above.
    6. AmountOfOilTextureDamageBeforeUpdate The comment really says it all for this one.
    7. AmountOfFireTextureDamageBeforeUpdate See the Amount of Oil Texture damage comment.
    8. ExplosionSizeForDetachedPartDissapear Theres a big explosion when a wing comes off. This determines HOW big the explosion is.
    9. ExplosionSizeForFuelTankMain This is the biggest damn bang in the game. How big SHOULD it be? (Bigger?!) :)
    10. ExplosionSizeForFuelTankWing For a half wing tank.
    11. ExplosionSizeForDetach For the detached wing itself.
    12. LargeExplosionLikelihoodForWingDamage Sometimes catastrophic damage causes a bigger bang. What chance as a Scalar quantity is the big explosion?
    13. ExplosionSizeForWingDamage This represents just damage, not the whole deal.
    14. EngineDamageFromEngineFirePerTick Again the comment says it all. Just remember how short a period of time a tick is!
    15. PercentageFuelLossPerTick Fuel leaks can be made more concerning and less devastating by playing with this setting. Again remember how short a tick is and experiment! Also remember its a PERCENTAGE not a fixed sum.
    16. PercentageOilLossPerTick See comments above.
    17. ChainLiklihoodFactorPerTick See, explosions can cause other explosions. Pretty soon this could wreck the whole plane.
    18. SecondaryDamageFromExplosionsFactor When something goes boom this puts stress on the rest of the airframe. Stuff can get fried, shaken loose or snapped and bent if the bang is big enough. This should be kept pretty low in general, unless you want stuff breaking up front because the Tail Gunner took a round.
    19. ChanceOfExtraDamageFromFirePerTick Fires a pretty insidious thing. Increasing this makes it that much worse malfs will crop up all over the plane.
    20. ChanceOfExtraDamageFromEngineFirePerTick The comments about as clear an answer as I could get. However at a GUESS Id say that this is the scalar that causes actual FM damage to surfaces brushed by an Engine Fire. Cue exploding wings and Fuel tanks.
    21. ChanceOfExtraDamageFromHugeFirePerTick You might think this is pure windowdressing, but with this set too low, some B-17s can escape from what look like totally fatal exlosions and fire hazards.
    22. DAMAGE_EFFECTS_ChanceOfExtraDamageFromHugeEngineFirePerTick The results of a streaming huge engine fire. This is internal to the affected engine.
    23. ChanceOfExtraDamageFromHugeSmoke No smoke without fire, in this case its caused by a fuel leak. The damage (I believe) refers to the engine / wing/ tank itself, and not to any other systems.
    24. DamageToMainAerofoilFromHittingModifier Some areas of the wing are separate from the wing. This reflects their bulk shielding the wing itself from damage and allows a lesser portion of the damage to affect the wing. If set to 0.0 Engine and Aileron hits wont damage the wing at all highly unrealistic!
    25. ChanceOfFuelTankExploding Some days itll take a lot of rounds Then again BOOOM. If you think exploding fuel tanks are too rare or too common you can edit this to introduce more or less of this fairly random plane killer.
    26. LikelihoodOfWingTipBreakOff When the wing suffers extreme damage, sometimes the wing widows its tip sacrificially to prevent extreme damage.
    27. ProbabilityOfTemporaryEffect Effects the chance of a non-critical hit to the engine knocking some fuel or oil onto the exterior of the carburettor or somesuch. Causes the heavier grey smoke that just stops after awhile.
    28. ProbabilityOfSmokeEffect If the engine is hit, a proper smoke effect representing an oil leak onto the carb occurs. This causes damage to the engine. This time the visual and damage effect are linked.
    29. ProbabilityOfOilLeak This damage effect represents a cracked oil reservoir oil spills away and eventually the engine will seize. Note that this time the visual and damage effect are linked.
    30. ProbabilityOfFuelLeak A line in the engine gives way and a fuel leak develops. Again, the effect and the damage are linked.
    31. ProbabilityOfFire Sometimes a fuel leak catches fire. This is the probability. Note that you really DO want the player to have time to shut off the fuel pump, and pump out the fuel.
    32. OilLeakToOilFireProbFromWingDamage Fuel isnt the only flammable liquid in the engine. Oil is LESS flammable though, so a lesser chance of causing a fire.
    33. MaximumBuckledWingAngle It isnt reasonable to expect a wing to buckle too far without breaking. This determines the maximum angle a wing will buckle to.
    34. ForceToInitiateBuckle The force to buckle is measure in arbitary units. This is the point at which the stressed metal STARTS to buckle.
    35. ForceToBuckleToFullDeflection And this is the force required to buckle it to the angle decreed as maximum above. Note that youll need to modify this number proportionately to any change to the maximum angle.
    36. ProbabilityOfNormalFireType Fuel fires can either be little trails of flame (At this probability)
    37. ProbabilityOfBigFireStartingWithBigSmoke This controls the chance that a major external fire will kick off with some smoke first as a warning. Doesnt happen all the time.
    38. DamageFromChainReactionBase The scalar represents the proportion of initial damage done per chain explosion.

mm.                       DamageFromChainReactionRandom An extra random component hooked on to Chain Damage.

    1. LiklihoodOfInternalFirePerTick Engine fire causing fire in an internal compartment.
    2. SpeedToPutOutFire The diving speed at which engine fires might be extinguished.
    3. SpeedToMakeFireSplutter This is the speed at which fire begins to flicker out.
    4. UpperBandBaseDefault The altitude at which the upper band contrails start to form.
    5. UpperBandFullIntensityHeight The max intensity of the upper band.
    6. MaxUpperOffset The potential offset (due to seasonal conditions) can be this big.
    7. LowerBandMidDefault The Default mid level of the inversion layer when it occurs.
    8. LowerBandWidth The lower end of the inversion layer.
    9. MaxLowerOffset The offset to account for seasonal variations in the inversion layer.
    10. LowerBandIntensity This allows you to make the lower band less intense.
    11. LowerBandLikelihood - Whats the likelihood of an inversion layer?
    12. PilotFireDamageFromHugeFirePerTick Allows you to inflict damage to crewmembers from huge fires.
    13. PilotFireDamageFromFirePerTick and here from littler fires.
    14. PilotInitialDamageTolerance The comment covers this one.
    15. ToleranceReductionFromExplosion The effect of explosions on Pilot Morale.
    16. ToleranceReductionFromDetachPerTick Pause control for ejection after wing detachment.
    17. ToleranceReductionFromAsGoodAsDeadPerTick Controls the whole crew ejection once the AI sets the AGAD flag.
    18. ChanceOfExtinguisherWorking If you feel this is a little harsh, you can raise the chance so that a correct extinguisher run works first time.
    19. ChanceOfWindmillingPropComingOff - If the prop doesn't come off, a wing will
    20. ForceToExplodeOnWaterImpact Beware an explosion will kill all occupants of the B-17.
    21. ForceToExplodeOnGrassImpact See above.
    22. ForceToExplodeOnTarmacImpact See above.
    23. ForceToBreakApartOnImpact See above.
    24. ForceReductionFactorForSmallPlanes The B17 tends to have more force in an impact than the small planes, so this reduces the small planes tolerance for crashing
    25. GroundImpactSpeedForEffectsToStart The comment has it all really.
    26. DamageToWingFromExplosion Again, fairly self-explanatory, given the comments.
    27. DamageToEngineFromPropCollision See comments
    28. DamageToEngineFromCollision This covers a collision with a solid object on the engine geometry.

Crew Initiative

This gives you access to part of the AI not the code itself, but the behaviour database that makes it all tick.

 

Its pretty simple stuff, conceptually; we follow the laws of physics. As standard a crewmember at rest wishes to remain where he is, doing what hes already doing. In order to move someone more force must be applied to move him than is being applied to keep him still.

 

If the crewmember is at a station with a combat application (all gunners plus the bombardiers bombsight) then the force keeping him still is equal to his CombatTaskImportance provided hes in combat or his TaskImportance if hes not. TaskImportance is generally lower than CombatTaskImportance..

 

If the crewmember is at a station with NO combat application then the force keeping him still is equal to his TaskImportance.

 

Crew initiative is something best modified through trial and error. For example, we made the Radio Operator a free agent by design, so that he would shoot off and deal with any First Aid or fires and suchlike. If you want your Radio Operator to stay put by design, then you should increase the importance of his position.

 

The sections referring to damage Importances refer to systems like the Norden bombsight. If theyre set to 0.0 then usually there ISNT a system at that position that can be repaired.

 

If you wanted to make sure that crews take more care of each other you would ensure that the Injury lines have a higher importance than the station lines for the crewmembers you want to roam around. If you wanted your gunners to stay at their stations regardless of the chaos breaking out around them, then youd make sure the gunner CombatTaskImportance lines were higher than the malfunction, injury importance and other such lines.

 

Quite drastic changes to the crews behaviour can be made using these factors. I suggest deciding what changes you want and then carrying out multiple small-scale changes taking the time to ensure that changes dont cause any unexpected behaviours to creep into the system.

Custom Quitstart Missions

You need to enable the Quitstart Registry hack in order to access these easily but, once you have, you can use the Quit switch in the main menu to launch a number of interesting sub missions. The most obvious additional feature is being able to fly any fighter you want from any Airbase in the game, without having to worry about pesky missions. In addition you can custom build a mission to any target in Europe from any airbase in Europe. Pretty keen stuff.

 

Having enabled the Quitstart Registry hack you need to cast your eye over the part of the GameParameters file RiverAndRoadsDB.lmf at the section displayed below:

 

[MiniMission]

Type = FighterAttack // Can be Standard, StandardFree, Free, FighterAttack

Airbase = Ridgewell // Ridgewell, Podington, Kings Cliffe, Steeple Morden, Deenethorpe, Duxford, Raydon, Funsville

Target = Brest Harbor// Brest Harbor, Brest U-boat Base, Harnes Oil Facility... any defined target

MissionAltitudeFeet = 20000 // Height at which the mission will be flown

 

// Free Mini Mission Parameters

FreeFighterType = ME262// Can be P51, P47, P38, BF109, FW190, ME262

FreeFighterQuantity = 1

 

// FighterAttack Mini Mission Parameters

FighterAttackAttacker = ME262 // Can be P51, P47, P38, BF109, FW190, ME262

FighterAttackDefender = FW190 // Can be P51, P47, P38, BF109, FW190, ME262

FighterAttackDistanceFeet = 250// Initial distance between the fighters

 

The above area of the file controls the Quitstart Missions I mentioned above. Basically you have four types of mission that can be enabled :

  1. Standard
    • This creates a standard Bomber Commander mission to the target defined and from the airbase defined. The main benefit of this is being able to start from an airbase you pick, rather than the four predetermined ones, and that you can attack any target at any point of the map.
  2. Free
    • This creates any fighter of the type determined in the file, and in the specified quantity. This allows you to do things like flying a fighter training mission plenty of time to get the engine running and just tool about the countryside. This is especially valuable for the rarer fighters such as the ME262, which you might not otherwise see much of.
  3. StandardFree
    • Here you can merge the settings for Standard and the settings for Free. This allows you to create a bomber mission from any airbase to any target and create a flight of your favourite fighter at the same airbase. The possibilities are many and varied practice your own interception tactics without having to fly a mission. Or you can tool alongside the bombers as a Fighter Pilot and do things like sweep ahead or conduct CAP above the Bomber Formation. Alternatively it provides nice ground targets for you to strafe, if you leave the bombers where they are.
  4. FighterAttack
    • This used to create two fighters of the specified types and set them off against each other in a dogfight. Unfortunately the way that the Dogfighting AI worked changed, and now the Fighter AI is not active. This can still be used to create two fighters of varying types for you to practice flying, and so has its uses.

 

 

[QuickStartMissions]

 

MinInitialEnemyRangeMiles = 2.0 // The distance away from the player's formation that the enemy is created

MaxInitialEnemyRangeMiles = 2.5 // The distance away from the player's formation that the enemy is created

 

 

// Limping Home

MissionOneAirbase = Ridgewell // Where the player is limping to

MissionOneStartPosXMetres = 961968.10 // X coordinate of the start position

MissionOneStartPosZMetres = 2224982.79// Z coordinate of the start position

MissionOneStartHeightFeet = 6000 // Starting height above the terrain

MissionOnePortAileronDamage = 0.0 // 0.0 no damage 1.0 full damage

MissionOneStbdAileronDamage = 0.5 // 0.0 no damage 1.0 full damage

MissionOnePortFlapsDamage = 0.5 // 0.0 no damage 1.0 full damage

MissionOneStbdFlapsDamage = 0.5 // 0.0 no damage 1.0 full damage

MissionOnePortWingDamage = 0.2 // 0.0 no damage 1.0 full damage

MissionOneStbdWingDamage = 0.2 // 0.0 no damage 1.0 full damage

MissionOneElevatorDamage = 0.0 // 0.0 no damage 1.0 full damage

MissionOneRudderDamage = 0.5 // 0.0 no damage 1.0 full damage

MissionOneVerticalStabiliserDamage = 0.0 // 0.0 no damage 1.0 full damage

 

// Attack of the Axis

MissionTwoTarget = Bremen Oil Refinery // Target that the B-17 squadron has just bombed

MissionTwoDistanceFromRallyPointMiles = 1.0 // ummmm... distance from the rally point

MissionTwoMissionAltitude = 27000 // Height at which the mission will be flown

MissionTwoEscortSquadronSize = 3 // Number of escorts

MissionTwoNumInterceptorSquadrons = 2 // Number of interceptor squadrons

MissionTwoInterceptorSquadronSize = 4 // Number of interceptors in each squadron

 

// Where are the Little Friends

MissionThreeTarget = Yonne River Rail Bridge // Target that the B-17 squadron is attacking

//MissionThreeTarget = Brest Harbor // Target that the B-17 squadron is attacking

MissionThreeDistanceToInitialPointMiles = 1.0 // Distance to the initial point of the bomb run

MissionThreeMissionAltitude = 27000 // Height at which the mission will be flown

MissionThreeNumInterceptorSquadrons = 3 // Number of interceptor squadrons

MissionThreeInterceptorSquadronSize = 2 // Number of interceptors in each squadron

 

// Opportunity for the Axis

MissionFourTarget = Wildau Torpedo Plant // Target being attack by the B-17 squadron

MissionFourAircraftType = BF109 // Aircraft type the player gets to fly

MissionFourMissionAltitude = 8000 // Height at which the mission will be flown

MissionFourEscortSquadronSize = 3 // Number of escorts

MissionFourNumInterceptorSquadrons = 2 // Number of interceptor squadrons

MissionFourInterceptorSquadronSize = 4 // Number of interceptors in each squadron

 

// Fighter Sweep over France

MissionFiveAircraftType = P47 // Aircraft type the player gets to fly

MissionFiveStartPosXMetres = 796601.08 // X coordinate of the start position

MissionFiveStartPosZMetres = 1923380.0 // Z coordinate of the start position

MissionFiveStartHeightFeet = 18000.0 // Starting height above the terrain

MissionFiveAlliedSquadronSize = 4 // Size of allied squadron

MissionFiveNumAxisSquadrons = 1 // Number of axis squadrons

MissionFiveAxisSquadronSize = 4 // Size of axis squadron

 

// Defence of the Reich

MissionSixAircraftType = FW190 // Aircraft type the player gets to fly

MissionSixStartPosXMetres = 934884.17 // X coordinate of the start position

MissionSixStartPosZMetres = 1956460.65 // Z coordinate of the start position

MissionSixStartHeightFeet = 8000.0 // Starting height above the terrain

MissionSixNumAlliedSquadrons = 2 // Number of allied squadrons

MissionSixAlliedSquadronSize = 3 // Size of allied squadron

MissionSixAxisSquadronSize = 4 // Size of axis squadron

 

The text above allows you to edit the settings for the various Quickstart Missions. These are all fairly self-explanatory, but can really change the whole texture of a mission. Right now I feel that attack of the Axis has a nice scrabbling at the brink of the abyss feel to it at Elite level those who disagree can certainly up the number of squadrons of each type of aircraft to recapture that emotion.

 

 

[TrainingMissions]

 

// Taxi and Take Off

MissionOneAirbase = Ridgewell // Starting airbase

MissionOneWindHeadingDegrees = 0.0 // Wind direction

MissionOneWindSpeedMPH = 0.0 // Wind speed

 

// Approach and Landing

MissionTwoAirbase = Ridgewell // Starting airbase

MissionTwoWindHeadingDegrees = 0.0 // Wind direction

MissionTwoWindSpeedMPH = 0.0 // Wind speed

 

// Feather/Restart an Engine

MissionThreeAirbase = Ridgewell // Starting airbase

MissionThreeWindHeadingDegrees = 0.0 // Wind direction

MissionThreeWindSpeedMPH = 0.0 // Wind speed

 

// Bombing Easy

MissionFourTarget = Training target // Target being bombed

MissionFourMissionAltitudeFeet = 8000.0 // Height from which the bombs are dropped

 

// Bombing Hard

MissionFiveTarget = Training target // Target being bombed

MissionFiveMissionAltitudeFeet = 18000 // Height from which the bombs are dropped

MissionFiveWindHeadingDegrees = 0.0 // Wind direction

MissionFiveWindSpeedMPH = 0.0 // Wind speed

MissionFiveCloudCover = 0.6 // Cloud cover over target

 

// Gunnery

MissionSixAirbase = Ridgewell // Starting airbase

MissionSixHitsToSucceed = 50 // Number of bullet hits per gunner position required to complete the mission

MissionSixWindHeadingDegrees = 0.0 // Wind direction

MissionSixWindSpeedMPH = 0.0 // Wind speed

MissionSixLowHeightFeet = 200 // Height below aircraft for dummy B-17

MissionSixHighHeightFeet = 200 // Height above aircraft for dummy B-17

MissionSixRangeFeet = 400 // Range for dummy B-17

MissionSixChinTurretBearingDegrees = 0.0 // Bearing for dummy B-17

MissionSixCheekGunBearingDegrees = 30.0 // Bearing for dummy B-17

MissionSixTopTurretBearingDegrees = 135.0 // Bearing for dummy B-17

MissionSixBallTurretBearingDegrees = 270.0 // Bearing for dummy B-17

MissionSixLeftWaistBearingDegrees = 90.0 // Bearing for dummy B-17

MissionSixRightWaistBearingDegrees = 270.0 // Bearing for dummy B-17

MissionSixTailGunnerBearingDegrees = 180.0 // Bearing for dummy B-17

 

Again, here, you can edit the parameters for the Training Missions. Its particularly worth doing in the Bombing Missions where you can adjust the grade curve for yourself if you feel that 18,000 feet is a wussy bombing altitude. In the game youre more likely to be playing at 20 to 25 thousand feet. In addition you can alter the cloud cover to simulate a REALLY bad day over Europe, should you wish.

 

Another good one is to increase the number of rounds required in the gunnery mission, requiring a steadier hand to complete it.

 

 

 

[HistoricalMissions]

 

MissionOneAirbase = Ridgewell // Home airbase

MissionOneTarget = Bremen FockeWulf Factory // Target attacked

MissionOneStartTimeHours = 7.75 // Engine start time ( 7:45AM )

MissionOneOutlegEscort = P47 // Out leg escorts

MissionOneReturnLegEscort = P38 // Return leg escorts

MissionOneMissionAltitudeFeet = 25000.0 // Mission altitude

 

MissionTwoAirbase = Ridgewell // Home airbase

MissionTwoTarget = Osnabruck Industrial Center // Target attacked

MissionTwoStartTimeHours = 10.0 // Engine start time ( 10:00AM )

MissionTwoOutlegEscort = P47 // Out leg escorts

MissionTwoReturnLegEscort = P38 // Return leg escorts

MissionTwoMissionAltitudeFeet = 25000.0 // Mission altitude

 

MissionThreeAirbase = Ridgewell // Home airbase

MissionThreeTarget = Ludwigshaven Rubber Factory // Target attacked

MissionThreeStartTimeHours = 7.25 // Engine start time ( 7:15AM )

MissionThreeOutlegEscort = P47 // Out leg escorts

MissionThreeReturnLegEscort = P38 // Return leg escorts

MissionThreeMissionAltitudeFeet = 25000.0 // Mission altitude

 

MissionFourAirbase = Ridgewell // Home airbase

MissionFourTarget = Frankfurt Industrial Center // Target attacked

MissionFourStartTimeHours = 7.00 // Engine start time ( 7:00AM )

MissionFourOutlegEscort = P47 // Out leg escorts

MissionFourReturnLegEscort = P38 // Return leg escorts

MissionFourMissionAltitudeFeet = 24000.0 // Mission altitude

 

MissionFiveAirbase = Ridgewell // Home airbase

MissionFiveTarget = Brunswick Bomb Factory // Target attacked

MissionFiveStartTimeHours = 7.75 // Engine start time ( 7:45AM )

MissionFiveOutlegEscort = P47 // Out leg escorts

MissionFiveReturnLegEscort = P51 // Return leg escorts

MissionFiveMissionAltitudeFeet = 21000.0 // Mission altitude

 

MissionSixAirbase = Ridgewell // Home airbase

MissionSixTarget = Eurotank Oil Refinery and Storage // Target attacked

MissionSixStartTimeHours = 6.25 // Engine start time ( 3:45AM )

MissionSixOutlegEscort = P47 // Out leg escorts

MissionSixReturnLegEscort = P51 // Return leg escorts

MissionSixMissionAltitudeFeet = 26000.0 // Mission altitude

 

You can play with the above but theyre actually derived from historical datum, so why bother, unless you want to store custom missions for retrieval at leisure?

Sounds

A great deal of the sound in B-17 is constructed from tiny, tiny segments and then assembled into the game sound as you know it. Therefore there is NO B17engine.wav that you can replace by hacking the resources. Even the Machinegun sounds are assembled from about 8 different Wav files that are then constructed into a continuous stream of audio. A dynamic system like that is much harder to manage, but the benefits are the utter lack of looping and sounds more responsive to environment.

 

There are some hooks into the sound system in this file, but they mostly cover the triggering of certain sound phases, or the control of sounds in, for example, the engines of aircraft. These will be difficult to make sensible tweaks in.

Flak Tweaking

Flak is a much easier prospect for tweaking. As it stands, the flak has been play balanced to create a suitable sized flak box, which shouldnt cause undue damage PROVIDED the player takes some form of evasive action usually in the form of an altitude change. However, Flak can still inflict grievous damage if you dont take evasive action, and it is entirely possible for a light Flak zone to end the mission for a single plane.

 

The reason for this is that Flak is not statistically calculated or controlled. Flak is created in the following highly realistic way.

 

The point that the lead ship would occupy in the formation is designated as the aim point. Around the aim point a flak box is constructed according to the dimensions specified in the GameParameters file, thus:

 

LightFlakHeight = 100 // How high is the "box" in feet above and below the aimpoint?

LightFlakWidth = 600 // How wide is the "box" in feet to the left and right of the aimpoint?

LightFlakLength = 200 // How long is the "box" in feet from the front and the back of the aimpoint?

 

The trick is to remember that the every foot beyond that required to surround the formation itself is pure artistry. Whilst having a wide and high box helps counter evasive action having a long box really doesnt accomplish very much beyond really nice visuals. Once that box is built it is populated with a set number of Flak Shells, each of which spawns fragments that have a defined radius of effect. The lines in which this is covered are shown below:

 

BlastRadius = 75.0 // Size of flak burst damage radii

LightFlakFrequency = 175 // Frequency is the rate of fire x blasts within a time period.

 

The frequency is the key number having created a box of a certain size above, you must now fill it with flak shells. If the box is too big, or the frequency is too low then youll get a dotty effect like the light flak but even sparser. If the box is too small, or youre filling it with too many shells then youll get a brief glimpse into the hell that must have been the centre of Bremen with every gun pointing your way.

 

The trick to getting flak HITS right is to turn on the damage logging and then fly the formation through a flaksite. You can examine the number of hits and decide whether the density is right for you. Another good rule of thumb is the by eye rule if it LOOKS how you think heavy flak ought to look then itll be nice and immersive.

 

The next thing to consider is the type of damage being done by the fragments. The following lines of text cover this:

 

FireProbability = 0.15 // Likelihood of flak causing a fire.

CrewDamageScalar = 0.3 // Likelihood of damage being inflicted by flak on crew

SkinDamageScalar = 0.2 // Affects amount of damage inflicted by flak to the Aircraft's skin

SystemsDamageScalar = 0.3 // Likelihood of damage being inflicted by flak to the Aircraft's systems

PhysicsSystemsDamageScalar = 0.5// Affects amount of damage inflicted by flak to the Aircraft's physics systems

 

The above lines control the TYPE of damage dished out by flak. If you want flak to be a nuisance, nibbling at control surfaces, setting fires and injuring crewmembers then you can reduce the physics systems damage whereas increasing physics systems damage will enable flak to do much more physical damage to the airframe. Careful not to go too far though flak is inherently chaotic by its nature, and weve captured that. Mostly youll catch the edge of bursts and be just fine however if you catch the centre of a burst with physics turned up, itll be invariably fatal.

 

The final control for Flak is the duration of firing periods and how quickly they cope with the movement of the target aircraft. This represents the physical density of Flak Guns, but also what you believe the quality of crew and ammunition supply is. How long can these guys PHYSICALLY fire, and when will the next crew pick you up?

 

The lines of code that control this are as follows:

LightFlakAltitudeTrackTime = 25 // How long does it take the flak crews to respond to a change in altitude?

LightFlakDurationOn = 80 // The duration in seconds of an attack

LightFlakDurationOff = 500 // The mean duration in seconds between one attack ending and the next starting.

 

Click to join a discussion about this article.

Printer Friendly Version




© 2014 COMBATSIM.COM - All Rights Reserved