Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
31.06.2010
Peter Lrkens
Peter.luerkens@tonline.de
CumulusX! is an add-on for Microsoft Flight Simulator X for the creation of a soaring
environment. It was inspired by the well-known Cross Country Soaring 2004 of Eric
Carden for Flight Simulator 2004. CumulusX ! creates thermal lift with appropriate clouds
either on the fly every time new in the environment of your glider with a wide variety of
characteristics, or based on custom-tailored lists of thermals. Both allow joining in online
sessions, thereby equal conditions for all participants can be achieved. It adapts
automatically and continuously to the internal weather conditions of Flight Simulator X
even under real-weather-mode.
CumulusX! produces varying ridge-lift conditions in all areas of the world. It tries also to
place thermals in mountain areas according to slope conditions and sun irradiation.
Thermal and ridge soaring are experienced with a completely new quality. The user can
choose the difficulty level according to his/her personal skills from very easy to realistic
and difficult.
Disclaimer
The author hereby notifies that the implemented procedures and behaviours may
differ significantly from the behaviour of real aircraft and excludes any liability for
the adoption of inappropriate skills that may lead to accidents, damage or personal
injury, when applied to operation of real aircraft.
The author refuses in addition any liability for unwanted effects on the computer, on
which the software is installed and executed, or with other software, or on a
network-connected computer.
The licensee must not give away the license files in any case. Giving away the
license files will incur the immediate loss of the right to use and for support. The
licenser reserves asking for damages in this case.
The licensee accepts electronic storage of his personal data for the purpose of
administration of the relationship between him and the licenser. Personal data is
neither given to other parties nor used for other purposes.
In case of individual conditions of the license conditions being ineffective, these are
replaced by substituting conditions which are closest to the initial intent. The
contract remains effective regardless. This contract is under the law of the Federal
Republic of Germany. Venue for cases of dissension is the domicile of the licenser.
All rights reserved, (c) 2007-2010 Peter Lrkens
Dr.-Ing. Peter Lrkens
peter.luerkens@t-online.de
Kirchfeldstr. 64, 52080 Aachen, Germany
All Flight Simulator In-Game-Screenshots are published under the Game Content Usage
Rules of Microsoft (http://www.xbox.com/en-US/community/developer/rules.htm)
Thermal Lifecycle
Thermal lift starts now on groudn first, evolving upwards up to the thermal ceiling.
When this is reached, a cloud is developed. At the end, lift stops on ground first,
while the cloud remains until the there is no lift at all anymore.
Note: The following features are available only in the registered mode and in demo
mode around Innsbruck (LOWI), Austria. It is assumed however, that they do not
influence soaring performance in general, so participation in competitions should
not depend on license status.
Smart-Tow
In the original program the tow-plane followed a simple straight flight path,
regardless of terrain obstacles and the current thermal situation, sometimes
resulting into a CFIT crash (controlled flight into terrain). The smart tow allows
now to configure in the first part for a circuit pattern (left or right), and proceeds
thereafter to the next thermal. Thereby rising terrain is avoided. This feature is still
in a very early phase, and CFIT-events may still occur in some cases. Please read
the manual chapter on Smart Tow
Requirements
Windows operating system (XP, Vista, 32 and 64 bit versions, Windows 7 please note
the limitations above)
For Windows XP: .NET 2.0 Runtime, look here:
http://www.microsoft.com/downloads/details.aspx?FamilyID=0856EACB-4362-4B0D8EDD-AAB15C5E04F5&displaylang=en
A decently working installation of Microsoft Flight Simulator X with Servicepack 2. In
case of trouble, please refer to the section Limitations/Known bugs first.
Setting up
Installation
You need to be logged in as an administrator. Attention: Windows 7 users have to rightclick the installation script and choose Run as administrator (or equivalent).
The CumulusX!' installer cannot be executed if Flight Simulator X Service Pack 2 is not
installed.
The compressed distribution archive contains a sub-tree Modules, containing another
sub-folders CumulusX! with the components of the program, some settings files and the
manuals. The sub-tree SimObjects\Misc contains the new visual cloud models.
Extract all files into a temporary directory of you choice. Open the directory and doubleclick the file install. The installation routine will try to identify the installation directory of
Flight Simulator X and proposes to install CumulusX ! there too. Though you can still
choose a different location. If Flight Simulator X is not detected, though it is installed, the
installation routine will offer you a choice to navigate manually to Flight Simulator X' root
directory. During installation the user may be asked to overwrite components of older
installations of CumulusX!. If CumulusX! Is installed for the first, the configuration dialogue
will open to define an initial configuration. Accept this by clicking Ok.
Deinstallation:
Rename _ThermalDescriptions.xml to its original name. Then delete the CumulusX !
folder from the folder Modules in Flight Simulator X. If this now empty you may remove
the folder Modules, too.
In addition, in the folder SimObjects\Misc delete the folder CumulusXCloud
CumulusX! saves its settings in the registry at :
HKEY_CURRENT_USER\Software\Peter Lrkens\CumulusX
You may delete this registry key entirely, however be careful not to delete anything else,
since the registry is very sensitive to user errors. If you decide to leave the entries, it will
not have any relevant effect.
CumulusX! Functions
Ridge Lift
Ridge lift is the lift that affects an aircraft in the
proximity of mountains caused by the deflection of
the surface wind through the shape of the terrain.
Indeed Flight Simulator X itself has a notation of
ridge lift, in two forms. One is scenery based and
consists of polygon blocks, characterised by an
orientation, a scaling factor and a height. The
orientation represents the direction of the slope face,
the scaling factor the steepness. The height
parameter can resemble the influence of the size of
the slope. Though this approach is basically quite
reasonable it is practically impossible to cover large
areas with detailed ridge lift data this way. As a
consequence the complexity of the scenery data Fig. 6: Ridge Lift
base will become enormous, and it has proven to be
very difficult, to translate an arbitrary terrain into a polygon based abstraction with a
reasonable complexity and sufficient accuracy at the same time.
The second form is found in the mission system of Flight Simulator X. While the ridge lift
model here has even more functionality, the concept of the model is actually completely
inappropriate, for achieving realistic ridge lift conditions, not mentioning the bugs, which
are still in it.
Thermal Ridge Lift
Thermal ridge lift may be considered a special form of ridge lift, which can be perceived at
mountains slope in absence of horizontal wind and occurs also, if normal thermals are no
or not any more present. Most of the time it is a weak lift due to direct sun irradiation
during the day, and stored thermal energy in the evening in combination. This allows to
prolong a final glide in the evening by clever selection of the appropriate slopes even in the
absence of wind or normal thermals.
Generation of Ridge Lift
Since Version 1.5 CumulusX! creates ridge in dependence of the installed and activated
scenery. CumulusX! develops ridge lift from the profile of the terrain under and around the
aircraft. This is inquired continuously during flight. These information are transformed into
usually reasonable ridge lift by a heuristic formula. So it is not necessary to integrate the
set of Navier-Stokes differential equations by extensive numerical methods. The
disadvantage is, that the result may not be realistic under certain circumstances.
During this, the orientation of two extended areas are analysed, one upwind, the other
downwind. These areas grow and shrink with the aircraft altitude above ground. By this
small protrusions and terrain irregularities have less influence and the ridge lift gets
smoother, as the aircraft gains altitude. Thereby the area with best conditions shifts in
upwind direction.
In addition a larger upwing area is analzyed for the presence of obstacles producing a
slipstream effect in the lee of a ridge. Once the aircraft is within the slipstream area, ridge
lift is substantially reduced, eventually down to zero. This avoids unrealistic ridge-lift at
Thermals
Although Flight Simulator X contains already some built-in implementation of thermal
generation, its approach is far away from satisfactorily. Just to name a few shortcomings, it
is highly static, meaning that thermals, once present, remain at fixed places all over the
day, thermals widely not reacting on current weather conditions, e.g. do not adapt their
ceiling to the ceiling of otherwise existing clouds, they do not react on seasons, thermals
are absolutely vertical, regardless of wind conditions, and there is no texture in the
atmosphere in between of the thermals.
While this may be a acceptable starting point for beginners, it quickly becomes boring, and
it has nothing to do with the real thrill of uncertainty to react on in real life soaring.
In fact, Flight Simulator X uses a land-class based approach by means of the configuration
file ThermalDescriptions.xml, to identify thermal properties for a certain region, which
could have had result of reasonable thermals world-wide, if a regional factor and season
and weather adaptation would have been included. Unfortunately, this is not the case, so
this approach can only be said to be useless.
CumulusX! goes a different way, based on a small configuration file of few bytes, which
contains some general information about the current thermal properties, like coverage with
thermals, strength, ceiling, size, and atmosphere behaviour in between. This information
is then automatically adapted to the current season, weather, and terrain conditions, and a
live thermal distribution is produced, in which thermals are constantly creating and
dissipating. Depending on the local weather situation, thermal clouds are produced along
with the thermals, or not, when otherwise blue sky conditions prevail.
The principle thermal creation process is a random placement of a large number of
thermal cells. CumulusX! activates only those, which coincide with favourable conditions.
Thereby conditions of the ground underneath and steepness of slopes and their orientation
are checked.
This gives the freedom to react on local conditions, while still being able to synchronize the
thermal generation with well defined rules, which is essential for multiplayer compatibility.
Only those thermals are made visible which are in sufficient close proximity of the user
aircraft. There are more invisible thermals in a bubble of reality around the user aircraft
which are activated and made visible when required. During flight this follows the user
aircraft, while thermals left behind are discarded again according to the natural lifespan.
Thermal Model
In Fig. 8 the general thermal model is
shown. Basically it is a slanted cylinder. In
the centre of the core, the maximum lift is
obtained. The core is surrounded by a shell
of moderate sink. In default this is 10% of
the lift in the core. The thermal starts at
ground with a lift of zero, which gradually
increases until the end of the weak surface
layer is reached.
Then the lift continues with its nominal
value, until an inversion layer is
encountered. In the inversion layer, the lift
gradually decreases to a certain value, e.g.
50%, in the middle between upper and
lower inversion boundary. From then on, Fig. 8: Principal thermal model
the lift increases again until the end of the
inversion layer is passed. The lift starts to decrease again 90 m below the cloud lower
boundary and drops to zero at 50 m above.
If there is wind in the current altitude of the aircraft, thermals are leaning to the lee-side.
The leaning ratio, i.e. the ratio of lateral displacement between the top and the bottom of
the thermal and its height is the ratio between wind speed and lift, in same units. Thus the
leaning angle can be substantial, when lift is weak and wind is strong. In mountains extra
calculations are done to prevent from leaning into the slope, which would make it
impossible to follow the thermal from ground to the ceiling. Instead, the column would
follow the surface of the terrain, if this is steeper than the leaning angle of the thermal. For
better match to a vertical windprofile, wind speed and direction close to ground and at
ceiling altitude is taken to produce a realistic leaning curve.
In addition both patterns are slowly time dependent, so thermal lift and sink regions move
during a day, so that one cannot rely that a certain area will have lift at a given time. Again
these patterns, while experienced mostly random, are synchronised to conditions which
are equal among participants of multiplayer sessions.
These widespread lift and sink conditions are influencing the thermal placement in a way
that thermals are not produced in areas where sink is dominating. In case of wind speed
around 15 kts, this results in the known clouds streets (Fig. 12, at dense thermal
coverage), which often allow to proceed miles and miles without loosing any altitude. The
penalty is, that the streets are usually not leading into the desired direction, and you will
have strong sink when trying to cross over the gaps in between.
These two functions are used to control begin of thermal activity in the morning and fade
out in the evening. Frequently it is observed, that in the morning thermal population starts
to grown while thermals are relatively weak. Later their strength rise to the maximum
value. In the evening however, thermal coverage reduces, while individual thermals are
still pretty strong. This is nicely represented by the high thermal energy, even present after
sunset. Of course with sunset latest, no new thermals will be born. These two behaviours
are covered by a transformation of sun altitude and thermal energy into an effective
coverage, and an effective activity.
Fig. 15: Effective thermal coverage at 50 Fig. 16: Effective thermal activity at 50
latitude
latitude
One can see, that thermal coverage starts to develop in July at 50N around 8:30 hrs (9:30
DST), and achieves its full value at 9:25 (10:25 DST). Thermal strength develops more
slowly. It begins at the same time, but achieves its full value at 10:00. In the evening the
relation is a bit vice versa. It start to reduce in July at 18 hrs, while thermal activity, and
thus the strength remains high until very short before sunset at 19:30 hrs solar time.
Currently, the situation seems perhaps a bit too optimistic, and this behaviour will be a field
of further calibration in the future.
Weather dependency
The thermal simulation does an analysis of the built-in weather in Flight Simulator X to
decide, if thermal activity is likely to happen at all. An early idea was, to assess the local
status of the atmosphere, including temp and dew point, to create an assessment of the
thermal situation. Actually, real world weather in Flight Simulator X is indeed rich of
information on these parameters, at least in most cases. Unfortunately, the information in
the built-in weather themes is too sparse that one could expect a reasonable result.
CumulusX! concentrates therefore on the visible effects of the weather to decide on some
aspects of thermal activity. Most important here are cloud layers in Flight Simulator X. If
there is an appropriate cumulus cloud layer, this is used as the primary value for the
thermal ceiling. Otherwise, cloud situation is used to exclude thermals, or allow it after
evaluating time-of-day and season conditions. If there is no appropriate cumulus layer, and
conditions are otherwise appropriate for thermals, then blue thermals are created. and
CumulusX! removes the visible clouds. Nevertheless, thermal activity will go on. Most
probably the ceiling will be different from before, because in absence of clouds from Flight
Simulator X CumulusX! switches back to its own definition of thermal ceiling. This ceiling
depends on the configuration of CumulusX ! by the user.
You can also choose real weather from the weather setting in Flight Simulator X, which
makes the soaring flight as unforeseeable as in reality.
The following table gives an overview under which weather condition one can expect
thermals, or not.
Cumulus
Overcast cumulus
No cumulus
No stratus
Yes
Yes, no CumulusX!
clouds
Yes, Blue
Yes
Yes, no CumulusX!
clouds
N/A
Stratus
N/A
N/A
No
Stratus under
Cumulus
No
No
N/A
Overcast stratus
No
No
No
world weather. Check (by switching temporarily to user defined weather, without confirming
it) that there is no stratus layer in real world weather below your global cumulus layer. If
not, re-adjust the global cumulus layer and download real world weather again. You should
also check that global wind corresponds to the overall real world weather conditions.
There are many more possible combinations, I'd leave it to the fantasy of the user to think
of other useful settings.
Ground Dependency
During thermal creation a few ground features are considered. One is that thermals are not
created over water bodies. Thermals over snow and ice areas occur only over steep
slopes in mountain areas. Basically this is to avoid creation of thermals in an unrealistic
way over open sea and large lakes, or glacier areas.
In forest regions the start of thermal activity is delayed, depending on seasonal conditions.
However, at evening time a higher number of thermals can be found over forests,
compared to the remaining landscape.
A further ground feature is the ground elevation. In reality, thermal ceiling tends to climb to
a certain extent with the elevation of the surrounding terrain. Initially, CumulusX ! did not
consider this effect and set the thermal height either to the predefined value, or aligned
with existing cumulus layers from Flight Simulator X. Now the simulation can make a
balance between the predefined ceiling, or the ceiling of cumulus layers from Flight
Simulator X, and the terrain elevation, depending on the users setting.
One simple option is, not to consider ground elevation at all. In this MSL-mode, clouds
will follow the predefined setting or align fully with existing clouds layers. Another option is
to raise the thermals with increasing ground elevation. This case is considered as AGLmode.
A third method is to use a weighted adaptation using the a mixture of the predefined ceiling
and the ground elevation. For an adaptation factor of e.g. 50% it is checked if the ground
clearance is at least 50% of the predefined thermal ceiling. If this not achieved any more,
the thermal height is increased by the missing altitude, scaled by the adaptation factor
again. This leads to the effect that lower ground features do not have any effect, while the
thermal height increases in higher mountain areas. Still very high mountains are in clouds.
Multiplayer Compatibility
In order to support multiplayer sessions, the thermal pattern, while looking random is still
following a rule, which results in exactly the same sequence of locations, timing, strength
and all other parameters, as long as all clients have the same global time and weather
conditions, the same land-class configuration (for forests, water, snow and ice), the same
mesh scenery (for slope influence), and all involved CumulusX ! instances use the same
configuration. Weather and time situation is automatically fulfilled in multiplayer sessions,
hosted by Flight Simulator X instances. The CumulusX! configuration can be shared prior
to the session by exchanging a small text file, or by agreeing on using the default settings.
When using Flight Simulator X' multiplayer mode, synchronisation of simulator clock and
weather conditions is done automatically. This is not the case with 3 rd party multiplayer
solutions. In this case, users have to align their clocks manually and agree upon this in
advance. Moreover, gliding is a daylight activity, preferably from noon to the later afternoon
and early evening. So if people world wide like to meet on a multiplayer server, the
problem occurs, that depending on the desired location, participants have to rise in the
middle of the night (if real time is agreed), or cannot reasonably participate in events
outside their real-world region.
To solve both problems it is proposed, to agree on a common clock synchronization
scheme which has a focus on the season and daytime which are favourable for gliding.
This means:
1) Daytime is divided into a repeating pattern (shift) which is adopted in starting a
session
2) Calender is adjusted to mostly summer months
3) General synchronisation is done with real-word Zulu time
To achieve this, the following procedure is executed:
1) The user aircraft is moved to the location of the venue
2) The simulator clock is synchronized with real world time (Menu environment/Time
and Season, Reset)
3) GMT-Date is checked if it is in the preferred months (June, 1 st, to September, 30th, in
Northern hemisphere, December, 1st, to March, 31st, on Southern)
4) If not, Calender is shifted by multiple of 122 days on Northern hemisphere, 121 on
Southern (or 122 in leap years)
5) Local Time is checked if it is within the planned window. If not clock is adjusted by
integer multiples of the shift duration until this is the case. GMT date must not
changed by that, i.e. one has to wrap around on the same Zulu day.
Because this is very tedious to achieve this manually, CumulusX! has a menu entry, that
does the job. Please relocate your aircraft to the venue of the event first to catch up local
daylight saving time and time zone conditions. Once the clock is set, no further alterations
are done, so one can fly out of the shift, without being hampered by wrap-around effects.
However, newly joining and syncing pilots will have other conditions, than those having left
the shift window.
Currently, three different shifts of 8, 6, and 4 hours are supported. It is necessary to agree
on a particular shift pattern for an event or a given server.
Another option for multiplayer operation is using the thermal script file, which allows a
placement of thermals by hand, and in this way also to consider very specific local
conditions, as power plants, house-thermals and so on. With a thermal script file, other
simulator weather conditions are largely neglected, except cloud altitude.
Operating Instructions
The Main Window
The main window is the primary user
interface. It contains three main buttons,
Connect, Disconnect and Enable Lift
(or Disable Lift if lift is already enabled).
The buttons Connect and Disconnect
manage the connection to the Flight
Simulator X simulation engine. The Button
Enable Lift transfers the simulation of the
vertical movement of the aircraft from Flight
Simulator X to CumulusX!. When Flight
Simulator X is running the simulation, the lift Fig. 19: Main Window
button turns green. When it is paused,
slewing or the user is using some dialogue it turns pink, meaning that CumulusX ! is
temporarily suspended.
Unless disconnected or disabled, or being in dialogue mode, CumulusX ! continues to
function during all its user interface actions, so you can change your settings on the fly
without suspending the simulation. However, the window mode of CumulusX ! is not
compatible with full screen mode, so you have to switch to windowed mode first. Then,
usually Cumulus! has to rebuild the thermal situation after a change of settings, which can
take up to a minute. Flight Simulator X will continue to run during this time without being
noticeably affected, so it is easily possible to change settings on the fly (if you can manage
to control the aircraft at the same time).
There is a series of check boxes which
allow selecting and deselecting certain lift
contributions individually. The flags right of
the lift check boxes indicate the current
state of the individual mechanism. Empty or
grey means, that the item is deactivated, or
information is not available, because
CumulusX! does not need this sort of lift for
the moment. Green means, that everything
is OK, and lift values are produced when
needed. Red means, that some error has Fig. 20: CumulusX! active
occurred, for example if slope lift is
activated, but there is no information available for that region. The thermal flags have also
the state orange, which means thermals have still to come, and the state light blue, which
means that there will be no more thermals today. Weather conditions are no reflected in
the check box.
Script Thermals are prioritized over AutoThermals. This means, if both are activated, Script
Thermals are used, unless a valid script file is not found, whereas CumulusX ! falls back to
producing AutoThermals. Nevertheless you can always enforce a particular lift source by
un-checking the unwanted sources.
Settings Files
CumulusX! allows the saving and loading of
settings files, to exchange with other users
and achieve easily the same configuration.
Settings files are simple text files containing
all
relevant
configuration
data
of
!
CumulusX . When planning a multiplayer
session the session host should prepare an
appropriate settings file for download
somewhere, or decide to use the default
settings.
UnBlue option, which makes thermal clouds visible, even when blue sky conditions
prevail.
The multiplayer soaring clock (Fig. 24)
menu allows easy clock synchronization
among
participants
of
non-Flight
Simulator X multiplayer servers, by using
real world time. This requires a correct
setting of computer clock and time zone,
which should be the case in most
circumstances. Time synchronisation is
done in shifts, the only variable is the
length of the shift, on which should be
agreed upon when defining the event or
setting up the server. It may boradcast by
a server info or during the event by
means of virtual radio. Select the
appropriate shift from the menu. After that
Flight Simulator X will reload your Fig. 24: Soaring Clock Menu
scenery and traffic (if any). Then calendar
should show a date between June, 1 st,
and September, 30th, on Northern
hemisphere and December, 1st, and
March, 31st, on Southern hemisphere.
Local time should be in the window,
indicated in the menu.
If CumulusX! detects loading of a flight or
a mission or a flight it tries to load a
CumulusX!-configuration-file with the
extension .CMX from the same
directory as the .FLT-file. If successful
CumulusX! enters competition mode. In
competition mode the options UnBlue
and Debug are deactivated and the
CumulusX! user interface is locked. Also Fig. 25: Terminating competition mode
the map view, allowing spotting of thermals in the area is deactivated. By means of the
Flight Simulator X Add-On menu the CumulusX ! user interface can be unlocked again (Fig.
25). CumulusX! reports this to other programs, e.g. a logger program, so it can detect, if
CumulusX!' is settings were altered during a a mission, or if CumulusX ! was terminated and
restarted.
Smart Tow
The function Smart-Tow, which is an
intelligent tow plane is available only in
the licensed version or in the demo
mode. The Smart-Tow is activated by
selecting it from the drop-down menu. It
has to be configured prior to issuing the
tow-command (Fig. 26) to either a left- or
right-circuit pattern. After the initial climbout the tow-plane performs a 90 turn
and after gaining some additional altitude
it will perform another 90 turn. After
reaching 300 m above the aerodrome it
sets course on a nearby visible thermal
and starts circling there. During this
process rising terrain is avoided, so it will
also work in mountain areas. If there are Fig. 26: Configuring Smart Tow
no nearby thermals with a cumulus cloud, smart tow continues a rectangular pattern aside
the aerodrome. After release of the glider the Smart Tow returns to the aerodrome and
lands, vacates the runway, stops and
disappears. In mountain regions the return to
the aerodrome frequently fails at this time, as
there is not yet a reliably enough working
return procedure that works in all possible
situations. In such cases when a collision with
a mountain is imminent, the tow plane simply
disappears. This feature is still in an early
phase, so CFIT (controlled flight into terrain)
events may still occur.
Furthermore it is now possible to select the Fig. 27: Selection of the tow-plane
tow-plane, its pitch, tow speed anhd flap
setting. Change of aircraft and ptich however
require a restart of the simulator. CumulusX! scans shows a dialogue from which a
directory can be selected that contains the new tow-plane and its variations. After selecting
the directory one can choose the desired variation, define the pitch (positive is nose-up),
the desired tow speed, and flap setting. The tow plane and its pitch are defined in Flight
Simulator's configuration file FSX.CFG, which is read only once during start of the
simulator. Therefore these changes require a restart of the simulator. In this case
CumulusX! has to stay in memory and wait until Flight Simulator has terminated before the
necessary changes can be written here, because the simulator itself overwrites the
configuration file upon exit and would eliminate all changes of external programs. For
safety reasons CumulusX! creates a backup file of the configuration which can be used to
restore the configuration file in case of trouble.
Settings Panel
You can access the settings panel (Fig. 30)
with the Tools/Configuration menu. The
settings panel opens a script file and defines
the properties in AutoThermal mode.
The field Thermal Script File allows defining
a text file containing timing location and other
properties of thermals, typically for a whole
day. When using script file, the parameters
defined in the script file header will overwrite
the settings pane. There is no randomization Fig. 29: Open Settings
of parameters. This gives most control over
thermal situation on the one hand, but on the other hand, the outcome will usually fit to a
specific location and weather situation (look in the appendix for more information). If the
field is empty or the script file is missing, or contains errors, CumulusX ! changes to
AutoThermal mode, if enabled. Its properties are defined by a number of parameters.
Several of these are defined by ranges. For these properties pseudo-random values are
chosen which are randomized, based on some global data from Flight Simulator X, being
equal for all participants in a multiplayer, so that all involved CumulusX ! instances will
produce the same conditions. This way the existence of an inversion layer and its
properties are determined, too.
The Lift Ceiling range defines the altitude above mean sea level to which the lift extends,
when there is no other information on thermal height available. When there are cumulus
cloud layers from the built-in weather system below 20000 ft, this value is used for the lift
ceiling instead. If weather conditions are suitable for thermals, and there are no cumulus
clouds produced by Flight Simulator X, CumulusX ! will generate blue thermals within the
depending on the ground elevation below. If the parameter is 0, then ground elevation is
not considered at all. With a parameter of 1, thermal ceilings are effectively considered as
AGL altitudes. Parameter values between 0 and 1 lead to a kind of minimum effect of the
ground clearance of thermals. The desired ground clearance is considered as the the
currently effective thermal ceiling, scaled by ground-elevation-effect-parameter. If the
actual ground clearance would be less than this, the ceiling is raised. The amount of
additional altitude is the missing altitude, again scaled by the ground-elevation-effect. The
effect is, that in lowlands thermals are not affected. Only in high mountains ceiling is
increased. Still, very high mountains are still peaking in the clouds. A value of 0.5 will
produce a behaviour that thermal ceiling will increase in high regions, but not to the full
extent of the additional ground elevation. It has turned out that this gives usually a pretty
realistic effect. It happens that if there is a cumulus cloud layer of the built-in weather, then
the thermal clouds can reside over these.
The Inversion Layer parameters define a layer of weaker lift, representing the effect of
inversion conditions. Like the determination of the thermal ceiling, every three hours
CumulusX! determines newly if an inversion layer exists, and if so its parameters. A
probability of 0 means, there will be never an inversion layer. Vice versa, a probability of
100% means that an inversion layer will exist always. Distance Below Ceiling describes
the lower boundary of the inversion layer. Beginning from here the lift is decreasing in
upward direction until in the middle of the layer. Then it increases again, until the initial
value is re-established. Be careful with these settings, because depending on the strength
of a thermal and the minimum sink of you glider you can easily create a situation, in which
it is impossible to climb through the inversion layer.
The parameter Turbulence Effects (%) controls the strength of the turbulence feature.
The wing lift effect is turned off, if 0% is set here. The Dynamic Tow Plane checkbox lets
the tow plane show lift and turbulence effects during tow. These functions are available to
the registered users only.
The check box CCS-Compatibility affects profiles and characteristics of ridge lift and
during scripted mode. When it is set, CumulusX ! has mostly the same behaviour as
CCS2004, which should allow common multiplayer sessions of Flight Simulator X and
Flight Simulator 2004 in ridge lift and scripted mode. The two parameters Slope Lift
Scalar and Slope Layer Scalar determine the strength of ridge lift and affect the thickness
of the lift layer. They are only available in compatibility mode.
The button Reset restores default settings in all fields, except from Thermal Script File.
It is a reasonable fall back for multiplayer sessions, when no settings file could be
exchanged or defined before and included settings files have been altered,
Debug Window
By selecting Info/Debug a tool-window presenting information on CumulusX ! internal states
is presented. The content of it will probably change from version to version and is primarily
meant for supporting error reporting and debugging. For beginners it may be also helpful
to get some more information on the situation around the user aircraft.
Currently displayed values are:
Slope angle
Slope_dir
AmbWindDir
AmbWindSpeed
Lift Decay Const
Acft Altit. AGL
Slope-Lift
Wind:
Thermal:
Slope steepness []
True slope orientation []
True wind direction []
wind speed [m/s]
Lift decay constant/ Limit
Current AGL altitude [m]
resulting slope lift [m/s]
Lift due to wind
Lift due to sun
Thermal Lift
WideSpreadSink
AirTexture
Limitations/Known bugs:
Unrealistic wind correction angle in slipstream
Unfortunately, it is a night mare trying to affect the simulator's weather system directly to
express sliptstream effects by reduction of wind speed. The two reasons are that first
many other add-ons as weather-addons or other utlities are already influencing directly the
weather system, so that conflicts would become unavoidable. Second, it is very difficult to
produce exactly the desired effect, in this case reducing wind speed at a particular
location. CumulusX! therefore affects the lift only and leaves the actual windspeed
unaffected. This leads to a much higher wind correction angle as one would expect in view
of the little lift which might be left over, as if the air flow goes directly though the mountain.
This is the same effect as without CumulusX ! at all. Though this is noticeably unrealistic I
can't do better for the moment.
Acknowledgements
The author acknowledges the great work that has been done by a large number of
persons in the FS community. In particular I would like to mention Manfred Moldenhauer,
for creating historic SCASM, the invaluable tool for the scenery designers, Roland Stuck
for designing the beautiful ASW20BL and Max Roodveldt for the essential glider
instruments, Wolfgang Piper for a broad range of beautiful vintage and contemporary
glider planes, Eric Carden for his great thermal generator program CCS2004, an the entire
SOAR community for spending their time during beta testing and producing helpful
suggestions for improvements. I have taken advantage of their work since long time and
without them, CumulusX! would not exist. Special thanks Id like to express to Ian ForsterLewis for his tool Sim_Probe that proved the validity of the on-the-fly terrain scanning
method and served a long time as the information source for ridge lift of previous
CumulusX! releases. He produced also fruitful contributions for the multiplayer compatible
thermal creation algorithm.
And finally I like to express special thanks to the beta testing team (Joachim Schweigler,
Ian J. Lewis and Bert de Bruin) for lots of critical and nevertheless helpful findings.
Remarks
CUMULUSX.EXE was produced with Visual Studio 2005 Express Edition VB.NET
For those who are interested in virtual soaring, a very active community is found at SOAR,
an internet location, dedicated to the development and proliferation of soaring in flight
simulation.
Microsoft, Windows and Visual Studio are trademarks of the Microsoft Corporation.
Copyright 2007-2010, Peter Lrkens
Appendix
AutoStart with EXE.xml file
Find FSX' start-up file for Add-on executables EXE.xml. Open the Start/Run (Winkey-R)
and type %AppData%\Microsoft\FSX. Open the file EXE.XML in notepad and insert the
bold black lines from below. Take care not to break any existing block of <Launch.Addon>
/<Launch.Addon> clauses, but add before or right after. If you have installed CumulusX
at the proposed location in the Modules folder, you can use the proposed lines from below
directly. Otherwise you have to edit the italic line, that it points to the actual location of
CumulusX.exe.
The next time you start, Flight Simulator X will ask you to start CumulusX !, and if you trust
the source. If you click Yes, the next time CumulusX ! will start fully automatically. If you
check AutoStart in the CumulusX !-tools menu, CumulusX! will from now on connect
automatically and enable lift.
<?xml version="1.0" encoding="Windows-1252"?>
<SimBase.Document Type="Launch" version="1,0">
<Descr>Launch</Descr>
<Filename>EXE.xml</Filename>
<Disabled>False</Disabled>
<Launch.ManualLoad>False</Launch.ManualLoad>
.
.
.
<Launch.Addon>
<Disabled>False</Disabled>
<ManualLoad>False</ManualLoad>
<Name>CumulusX!</Name>
<Path>Modules\CumulusX!\CumulusX.exe</Path>
<CommandLine></CommandLine>
<NewConsole>True</NewConsole>
</Launch.Addon>
.
.
.
</SimBase.Document>
The text in the very first line serves as version indicator and is created when saving a
settings file. You will get a warning when you try to load settings from a different version.
The colon character serves as comment separator. Do not include additional empty lines
or additional comment lines.
The line with the slope data base path should be empty. Then the settings file can be
loaded also on installations with CumulusX 1.0 and 1,1, without overwriting the local
settings for the slope data base path.
Content
Remarks
Unsupported
<empty line>
Mandatory!
Stop Time:
<empty line>
[Lift/Sink Settings]
3.00
Steepening factor
10
Widespread Sink:
5 fpm
0 200
11
12
Unsupported
13
1.0
14
1.0
15
1.0
0 3
16
<empty line>
17
18
Present:
19
Thickness:
applicable
20
Peak Strength
applicable
21
Distance below
applicable
22
<empty line>
23
24
<empty line>
18:00
Mandatory!
Mandatory!
1
0 or 1
not
Factor:
not
ceiling:
not
( present = 0)
Mandatory!
0
Unsupported in CumulusX!
Mandatory!
When CCSCompatibility is checked, the Start and Stop Time parameters in the header are
neglected and a fixed start/stop time at 10:00 and 18:00 LT is considered. This is typically
redundant, because the list of thermals usually wont extend beyond the limits of this
window anyway.
The Lift Ceiling depends on the presence of the lowest Cumulus Cloud layers of the
internal weather system of Flight Simulator X, if any. If there is a cloud layer below 20000
ft, its altitude is used instead of the number here.
The weak surface layer height determines a layer of weak lift close to ground.
Note that the meaning of the thermal lean factor in CCS2004 is inverse to CumulusX !settings pane. A higher number in CCS2004 means a less leaning thermal while in
CumulusX! a higher number means a more leaning thermal. Here in the script file the
CCS2004 definition is used for compatibility reasons.
The switching of BGL Scenery lift is not supported in CumulusX ! directly, but can be
realised by the configuration setting Turn off all turbulence effects at user aircraft (or so)
in Flight Simulator X.
The slope lift strength scalar multiplies the default slope lift strength. The slope lift height
scalar extends the default decay of the slope lift by the given factor, i.e. a factor of 2
means a two times thicker layer of slope lift above the current AGL as default. These two
Longitude
[rad]
Visibility
Radius [km] Lift [m/s] (unused Start Time [s]
)
25
00000
0.788606
0.109900
0.473
2.4
34200
26
00001
0.791193
0.116206
0.476
1.8
34200
27
00002
0.769687
0.117022
0.468
3.6
34200
28
00003
0.784883
0.102056
0.476
1.8
34200
29
00004
0.779877
0.087373
0.467
3.9
34200
30
00005
0.800298
0.106343
0.475
2.1
34200
31
00006
0.769693
0.097293
0.468
3.6
34200
32
00007
0.774295
0.107619
0.468
3.5
34200
33
00008
0.770844
0.116338
0.472
2.7
34200
34
00009
0.800770
0.113570
0.472
2.7
34200
35
00010
0.778938
0.096496
0.470
3.2
34200
36
.
.
.
00011
0.770454
0.107212
0.467
3.7
34200
The first column identifies each thermal with a number, which is ignored by CumulusX !. For
compatibility reasons the effective radius and lift are not exactly as found in the list. Radius
is actually only 93% of the radius parameter. Actual lift is approximately 10% less as
indicated in the list. This is likely to change in the future such that these adaptations are
only done in CCS-Compatibility mode, while in native mode the parameters are taken as
they are.
In addition, thermal strength varies during the day, regardless of the indication in the list. In
compatibility mode the lift strength fades in and out from 10:00 to 13:00 LT and 16:00 to
18:00, respectively. This is also likely to change in future, that in native mode thermal lift as
taken from the list at it is (you might create thermals at midnight).
Visibility is currently unused as it refers to the function of the cheat-key option only, which
is not provided in CumulusX!.
The last two columns define the timing behaviour of the thermals. As mentioned above,
regardless of the settings in the header and the timing parameters, lift is never effective
outside a window of 10:00-18:00. As before, this is also going to change. In future, timing
settings are always considered strict, unless CCS-Compatibility mode is chosen.
Version History
Version #
Release Date
Description
Thermal lift profile modified, CCS2004-slope lift behavior
restored in compatibility mode.
In licensed mode only: Smart Tow and Dynamic Tow
Plane, DLL (V.1.2.2) included in package
1.8
31.06.2010
1.7
Not released to
public
1.6
15.12.2009
1.5.4.0
05.09.2009
1.2.1
21.06.09
1.1.5
18.05.2009
1.0
15.03.2008