Linux Air Combat ChangeLog

Video summaries of new features can be seen in the following brief YouTube clips: 




Major improvements from Spring 2016 were:



Major improvements in the October 2016 release were:

Major improvements in the December 2016 release were:

Major features of the January 2017 version were:

Major new features from February 2017 include:
Major new features from March 2017  (Version Lac03p72) include:
Major improvements from June 2017 (Version Lac04p16)  include: Major improvements from August 2017 (Version Lac04p53) include:

Major improvements from September 2017 (Version Lac04p77) include:

            1 of 5: USA's B25 "Mitchell" medium bomber.
            2 of 5: USA's B26 "Marauder" medium bomber
            3 of 5: Japan's G4m "Betty" medium bomber.
            4 of 5: US Navy's F4F "Wildcat" fighter.
            5 of 5: USA's P39 "Airacobra" fighter.     

Major improvements from October 2017 (Version 5.02) include:

Major improvements from November 2017 (Version 5.09) include:
            1 of 3: The Russian Lavochkin La5
            2 of 3: The Russian Lavochkin La7
            3: The Russian Ilyushin IL2 "Sturmovik"  
Major improvements from January 2018 (Version 5.50) include:
  1.  The USSR Yak1
  2.  The UK "Lancaster" heavy bomber
  3.  The UK "Mosquito" fast bomber
  4.  The UK "Typhoon" fighter-bomber
  5.  The Italian "Macci C.202 Folgore" fighter
  1. "NARROWCASTING" (When transmitting on a single channel not precisely matching the player's current mission and team). This label is always displayed with white text.
  2. "TEAMCASTING" (When transmitting to members of just one team of a network mission.) If the transmitting player is tuned to his own RedTeam mission channel, this label is displayed with red text. If the transmitting player is tuned to his own BlueTeam mission channel, this label is displayed with blue text. Otherwise, when the player is tuned to some other team or mission, grey text is used.
  3. "MISSIONCASTING" (When transmitting to everybody listening on both the "RedTeam" and the "BlueTeam" subchannels of an online mission). If the transmission is directed at the player's current mission, then this label is displayed in purple text (representing the combination of red and blue). Otherwise, if the transmission is directed at some other mission, then this label is displayed in grey text.
  4.  "REALMCASTING" (When transmitting to everybody participating in every mission of the current Realm, regardless of their team affiliation). This label is always displayed with white text.

Major new features of the early Feb2018 version (Lac05.63) include:

  1. France:        1 (fighter)
  2. Germany:       9 (5 fighters and 4 bombers)
  3. Italy:         2 (2 fighters)
  4. Japan:         9 (6 fighters and 3 bombers)
  5. UK:            7 (2 bombers and 5 fighters)
  6. USA:          19 (11 fighters and 8 bombers)
  7. USSR:          6 (1 bomber and 5 fighters)
  8. Imaginary:     1 (jet fighter)

Major new features of the late Feb 2018 version (Lac05p67) include:



Major new features of the Mar2018 version (Lac05p76) include:



Major new features of the early Apr2018 version (Lac05p91) include:




Major new features of the mid-Apr2018 version (Lac05p97) include:

Improvements in the Morse Code Radio. Now players hear actual Morse Code as characters are transmitted or received.

An eery, dramatic, new "Air Raid Siren" sound effect is started whenever either of the HQ airfields suffers new damage. The sound continues until the damage is repaired, or until the player flies so far away from the damaged airfield as to pose no threat or to have no effect on repair crews. The sound is very loud when landed on the airfield or when flying very close to the tower, but it quickly fades away with distance.




Major new features of the May 2018 version (Lac06p03) include:

New strategic warning messages in online, multiplayer missions. Because hostile strategic bombers are capable of destroying the player's airfield in a single sortie if they are well flown and if they arrive undamaged with a full bomb load, it is important that defenders launch bomber-intercept missions in a timely manner. Accordingly, three new types of warnings now alert defending players of the presence of strategic bombers as follows:

Warning 1 of 3: A prominent new RADAR icon, shaped like a large, bright diamond, indicates the location of strategic bombers piloted by network-connected, sentient players. However, at long interplayer distances, it takes awhile for the RADAR equipment to determine whether those bombers are piloted by a sentient player. Until that determination has been made, the other two types of warnings are issued. They are:

Warning 2 of 3: Prominent text messages periodically scroll across the "System Message Panel" near the bottom of the cockpit's instrument panel, and:

Warning 3 of 3: Those scrolling text messages are accompanied by a polite little acoustic "beep".

All together, these three new types of warning messages ensure that attentive network mission players are given enough warning about hostile strategic bombers to launch an effective defense with a reasonable possibility of success. The resulting conflicts tend to last longer than before, and players are now having more fun than ever as they contrive richer, more devious, and more timely tactics for attack and defense.





Major new features of the early June 2018 version (Lac06p10) include:

More balanced game play: With additional online player activity we have learned that airfields were too easy to destroy and strategic bombers were too difficult to shoot down. Accordingly, we have tripled the durability of HQ airfields, and we have cut the durability of strategic bombers in half.

Improved options for re-fueling, re-arming, and repairing aircraft. If your own HQ airfield is too damaged to offer full service, you can fly to some other airfield for more effective re-fueling, re-arming, and repairs.

Server Missions: Gun Camera recordings are now captured by the LAC Server, and can be replayed, as persistent "Server Missions". Several of these missions have already been recorded, and the server frequently replays them (in Realm "0") to make online play more interesting. If you record a guncamera segment and want to see it replayed by the server as a Server Mission in which you and/or friends can fly, please contact us by email at: bbosen@AskMisterWizard.com. Include these facts about the guncamera segment that you recorded:

  1. Realm
  2. MissionId
  3. Start Date
  4. Start Time (GMT)
  5. Approximate duration

(Those details will allow us to locate the correct guncamera segment among the Server's records).

We will respond by email and then we will work out a schedule for replaying it in an appropriate Realm from among the 32 Realms that are always available.

Alternatively, if you want us to replay any particular type of our existing "Server Missions" for your enjoyment (either flying solo or with friends), just send us an email describing the kind of mission you'd like the Server to activate and when you want it playing. We'll set it up to run continuously for the designated time period in one of our 32 available Realms.

As a general rule, our existing little library of Server Missions consists of heavy bomber strikes. We have missions with one, two, or three heavy bombers flying in formation. These Server Mission aircraft generally fly for the RedTeam and target BlueTeam HQ facilities. If there is only one Server Mission aircraft, it generally flies as player "9". If there are two Server Mission aircraft, they generally fly as players "9" and "7". Three-player Server Missions generally automate players "9", "7", and "5". If you fly among any of these missions, you can try to defend the BlueTeam HQ, or you can assist the automated RedTeam aircraft. Because these missions are persistent, any progress you make damaging opposing airfields or accelerating repair of your own HQ airfield remains in place even after you leave the mission. Other Sentient players will "inherit" your work, and you, in turn, will inherit theirs. This brings a valuable, long-term, strategic flavor into LAC's multi-player, multi-session activity!


Major new features of the mid-June 2018 version (Lac06p15) include:

Numerous small bugs were fixed in logic affecting the Me163 "Komet" rocket plane. In particular, when landing that plane on a damaged airfield, the throttle settings became corrupted, and the service crew failed to repair any damage it had sustained. Now the throttle problem has been fixed, and repairs are made as for other planes, so long as the airfield itself is sufficiently intact. I also diminished the ability of airfield-based defensive gunners to hit and damage enemy aircraft that are flying faster than about 430 MPH. This will especially benefit players flying the Me163.

Improvements in Server-based missions will also be apparent to new players: the damage that players inflict upon enemy airfields, and enemy aircraft, as well as any repairs that they cultivate on their own airfields, are all much better preserved between flight sessions, and even effect subsequent Server missions as one might expect.

Improved "glide" performance: When aircraft run out of fuel, they glide a lot better now (still not great, but not nearly so terribly as before).

Improved HQ airflield explosion sound effects: In prior versions, when HQ aircraft suffered damage from bombs or rockets that were not dropped by the player, appropriate damage was inflicted but no explosion sounds were heard. I fixed that. Now explosions are heard regardless of the source of the weapons in use.

A new log file, named "GunCamHistory.LAC": That file makes a text record describing every GunCamera segment session that the player ever requests from the server. The details within that record can help users request a specific GunCamera segment from the server.

This version is better behaved as new players join an online mission that already has several active players: If the player's desired "MyNetworkId" value is already in use by some other player, this version tries to find a new value, but it preserves the same Team affiliation (Blue or Red). The overall result is smoother, quicker, less confusing for other players, and helps develop a better sense of teamwork. If no new value from the player's previously configured team is available, the sim terminates with some informative messages advising the player to try selecting a different mission or to edit the LacConfig.txt file to change the value of "MyNetworkId" to reverse team membership.




Major new features of the July 2018 version (Lac06p19) include:

This version creates a new log file named "OnlineScoreLog.LAC", which makes a permanent record of all of the player's victories. This will eventually enable users to "claim" victories that will be published by the LAC Server on a public web site.

This is the first version to use the "CommunityHandle" field of the user's "LacConfig.txt" configuration file. Users can now choose a unique, 20-character "handle", by which they will be known within the emerging LAC community. That name is included in each entry within the new "OnlineScoreLog.LAC" file in order to attribute the player's victories to the chosen handle.

This version is better behaved after the user shoots down an online opponent in any of the three online, multiplayer missions. Instead of spawning a new, replacement "bot" aircraft immediately (and sometimes, confusingly, in the very same location), this version waits a few seconds.




Major new features of the Aug2018 version (Lac06p28) include:



Major new features of the Aug2018 version (Lac06p29) include:



Major new features of the Sep2018 version (Lac06p38) include:



Major new features of the Oct2018 version (Lac06p50) include:




Major new features of the Nov2018 version (Lac06p72) include:
           1 of 6:  American F4u Corsair. The standard version is a little nicer looking now. Furthermore, the "Optional3dModels" folder includes two even more beautiful versions for those with beefier graphics hardware.  
           2 of 6:  American F4F Wildcat. The standard version is a lot prettier now.
           3 of 6:  American F6F Hellcat. The standard version is a lot prettier now.
           4 of 6:  German Me163 "Komet". The standard version is a lot prettier now.
           5 of 6:  French Dewoitine 520. The standard version is a lot prettier now.
           6 of 6:  Italian Macci C.202.  Ths standard version is a lot prettier now.



Major new features of the Dec2018 version (Lac06p94) include:


Major new features of the Jan2019 version (Lac07p09) include:


Major new features of the Feb2019 version (Lac07p29) include:
           1 of 3: Me109F (German Fighter)
           2 of 3: Me109G (German Fighter)
           3 of 3: Mosquito (British Bomber)

             make
             make clean



Major new features of the Mar2019 version (Lac07p50) include:




Changes from the late Mar2019 version (Lac07p56) include:



Changes in the Apr2019 version (Lac07p61) include:




Changes in the late May 2019 version (Lac07p64) include:


Changes in the late June 2019 version (Lac07p65) include:

Changes in the mid-Aug 2019 version (Lac07p70) include:

Numerous small bug fixes.

1- Flight Models tuned: We tweaked flight models of medium bombers and dive bombers. In prior versions, several of these bombers lacked power to climb acceptably when lugging their full bomb loads. Others needed increased durability to perform according to the best historic information. These problems have all been fixed.

2- Mission-Ending improvements: We improved handling of network messages responsible for ending missions when one of the HQ airfields is destroyed. In prior versions (especially on networks suffering packet loss), it was commonplace for one or more players to miss these messages and continue in a mission, unaware that it had ended because somebody had already destroyed one of those HQ airfields. Now those messages are more robustly propogated and everybody gets the message.

3- Player "Death" is now more realistic: MissionNetworkBattle01 and MissionNetworkBattle02 now implement more realistic handling of pilot/player death (but MissionNetworkBattle03 retains the prior, simpler and easier logic): In prior versions, unsophisticated players were sometimes using "kamikaze" tactics, committing deliberate suicide after dropping bombs or completing a gunnery pass when far away from their own airfield in order to short-circuit and avoid the long flight back home. In this more sophisticated implementation, getting killed, or killing yourself, (or starting out from a fresh, "dead" state) carries a penalty in terms of refueling time. Upon entry into MissionNetworkBattle01 or MissionNetworkBattle02, whether starting out fresh or restarting after being killed, the player is almost out of fuel and is forced to land as in prior verions, but when fuel levels are low, it now takes a lot longer to be refueled. On the other hand, because it is normal and commonplace for players returning from a successful mission to have significant, unused fuel in their tanks, they spend far less time grounded during the refueling process. The same is true for repairs: Players that return to base without aircraft damage experience no ground delays associated with repairs, but players returning a heavily damaged aircraft must wait while the ground crew fixes them back up. While waiting for these ground services, players are, of course, vulnerable to attack, and any damage they suffer while grounded will either kill them or delay their takeoff further while the additional damage is repaired. (The delays are much, much smaller if only a small amount of fuel or minor repairs are needed.) The consequence of all of this is that players that kill themselves or get killed in some other way suffer new delays on the runway while they are refueled and repaired, while players that land with undamaged aircraft and with fuel in their tanks suffer little or no delay. This adds a new dynamic to MissionNetworkBattle01 and MissionNetworkBattle02: in addition to the obvious incentives to return to base alive, undamaged, and with unused fuel ready for re-use, the change also subjects players to additional, realistic risks associated with exposure on the runway, vulnerable to enemy players that may have positioned themselves advantageously above in order to vulch them while they are stuck there. (For those that prefer no such punishment associated with getting killed, MissionNetworkBattle03 was left with the old system where refuel, repair, and rearm tasks are completed almost instantly. Beginners, in particular, are urged to start out with this system while they build up their skills for more realistic treatment in the more sophisticated missions.)

Players using prior versions should update to this new version before joining others in MissionNetworkBattle01 or MissionNetworkBattle02. On the other hand, MissionNetworkBattle03 remains operationally compatible with all LAC versions since 7.56.




Changes in the late-Aug 2019 version (Lac07p72) include:

1- Better integration with "Mumble". After installing the free, well-known "Mumble" VOIP application according to the usual and customary norms, it is no longer necessary to configure Mumble with the 20 "Shortcuts" that have heretofore been recommended in order to automate switching between the 10 most important of our Mumble Channels. Now all of LAC's online, server-based, multiplayer missions automatically invoke Mumble and direct it to the appropriate channel according to the player's team affiliation and chosen mission, with no user intervention at all. Furthermore, all ten of LAC's standard Mumble channel-changing "Hot Keys" now directly command Mumble to switch to the corresponding channel on our Mumble server at LinuxAirCombat.com, so it is very easy for users participating in any of our missions to hop around among our popular Mumble channels at will (without exiting LAC or mouse-clicking anywhere) in order, for example, to speak temporarily on the Root channel and welcome new players, or even with players participating in other missions. (In order to avoid saturation of Mumble's administrative tasks, LAC enforces a 10-second time interval between these Mumble commands.) LAC's cockpit "Mumble Panel" and three-line, scrolling "System Message Panel" alert all players throughout the mission of all Mumble activity triggered by any of our standard Mumble Hot keys, so everybody knows who is talking, the Mumble Channels they are using, etc.

2- Improved Mumble Server configuration: each of our three online, multiplayer, server-based missions within our most important domains have long been served by a trio of associated Mumble channels arranged rather like a family, with one "Parent" channel named after the mission and two "Child" channels (one for BlueTeam and one for RedTeam). The intent has always been for team members to hold private conversations within their own "Child" channel, and for the "Parent" channel to serve for shared conversations among all team members. This can be very conveniently automated with a single Mumble "shortcut" configured with Mumble's "Shout to parent channel and all its children" facility. However, some players are reluctant to configure Mumble shortcuts or are using less powerful Mumble clients (like Android's "Plumble") that do not offer that option. As of 20Aug2019 we enhanced our Mumble Server to automatically enforce those relationships: Any "Push to Talk" transmission in one of the "BlueTeam" or "RedTeam" channels is never heard by others tuned to the "Sibling" channel of the opposing team. However, both of those sibling channels always hear and can speak to anybody tuned to the "Parent" channel. All of this can now be done without configuring any Mumble shortcuts.

3- Fixed several minor bugs in heavy bomber ordnance loading.

4- Removed some unimportant status messages that were cluttering the cockpit's three-line, scrolling "SystemMessage" panel, making it a lot easier to rely on that panel to learn of significant mission events.

This version remains interoperable and fully compatible with version Lac07p70. When limited to MissionNetworkBattle03, it remains operationally compatible with all versions since Lac07p56.





Changes in the early Sep2019 version (Lac07p82) include:

This version is operationally compatible with all prior versions since Lac07p70, but it takes powerful advantage of the newest (optional) features in Mumble V1.3.0, and the area of the keyboard used in our standard configuration has been expanded with additional functions for those that have updated their copy of Mumble.

While parked on the runway waiting for refueling and repairs, the player can now stop the automated review and vocalization of all of the mission targets (which normally cycles "Select Next Target" through all ten mission aircraft) by tapping the "Select Previous Target" key. This gives the player an opportunity to examine the tactical situation at his own pace and designate his own preferred target while his aircraft is being serviced.

Even more powerful Mumble integration, with an improved standard keyboard layout, placing even more Communication-oriented commands within easy reach.

Unfortunately, older versions of Mumble, which do not support new commands that recent versions of LAC like to use for interprocess communication, are still in common use. Accordingly, this version of LAC has enhanced its interpratation of the "NetworkMode" attribute that can be set in the "LacConfig.txt" configuration file. That variable is now "Bit Coded". Use of the least significant bit is unchanged, so a value of "0" still indicates "Peer to Peer Mode" as before, and a value of "1" still indicates "Client/Server" mode as before. However, we are no longer ignoring the other bits. As a consequence, four distinct settings of "NetworkMode" are now fundamental to LAC's operation on the network and with Mumble, as follows:

if NetworkMode is set to "0", LAC will operate in "Peer-to-Peer" mode and will not attempt to use any advanced Mumble functions.

if NetworkMode is set to "1", LAC will operate in "Client/Server" mode and will not attempt to use any advanced Mumble functions.

if NetworkMode is set to "2", LAC will operate in "Peer-to-Peer" mode but it will take full advantage of advanced Mumble functions.

if NetworkMode is set to "3", LAC will operate in "Client/Server" mode and it will take full advantage of advanced Mumble functions. This is the preferred setting.

(Explanatory text within the LacConfig.txt file explains all of this and will help users set the value of NetworkMode appropriately.)

When LAC is told to avoid Mumble's advanced functions, it relies on the user to configure Mumble "Shortcuts", as described in our "Frequently Asked Questions", as the basis for our Mumble interface. Users that configure all 26 of those Mumble shortcuts will enjoy very smooth, high-speed Mumble performance for all of the basics. However, for unknown reasons, Mumble loses some or all of those 26 shortcuts from time to time, so it is frequently necessary to reprogram them. Without those shortcuts, it is still easy to use Mumble on a single channel, but it is difficult to optimize channel choices. As a consequence, most Mumble transmissions will be broadcast to friendly and opposing team members alike.

When LAC is allowed to use the advanced functions from Mumble version 1.3.0 and later, it automatically tunes Mumble to the best channel for every mission as soon as the player selects it, and all of the following "Hot Keys" always work immediately during those online missions, with no need to program the corresponding Mumble Shortcuts:

"1":   Switch to M1All Channel.
"2":   Switch to M1Blue Channel.
"3":   Switch to M1Red Channel.
"4":   Switch to M2All Channel.
"5":   Switch to M2Blue Channel.
"6":   Switch to M2Red Channel.
"7":   Switch to M3All Channel.
"8":   Switch to M3Blue Channel.
"9":   Switch to M3Red Channel.
"0":   Switch to Root Channel.
"F7":  Morse Squelch BlueTeam
"F8":  Morse Squelch RedTeam
"F9":  Morse Unsquelch All
"F10": Switch to TeamCast channel.
"F11": Switch to MissionCast channel.
"CapsLock": Toggle keyboard in and out of "Morse Code Radio" mode.

In addition, the following Mumble commands are instantly available if the associated (very simple and well-behaved) Mumble shortcuts are configured:

F1: Push To Talk in Current Channel
F2: Shout to Parent Channel and its Children
F3: Volume Down
F4: Volume Up
F5: Mute Speaker
F6: Mute Microphone

Furthermore, LAC even uses those advanced Mumble commands in conjunction with five types of specially formatted Morse Code Radio messages as follows:

1 of 5: "PPPPPPPP2" (Eight or more sequential "P" characters followed by one or more copies of the single digit "1", "2", "3", "4", "5","6","7", "8", "9", or "0", corresponding with one of the ten players in the mission.) This is the "PROMOTE" command, and it grants administrative privileges to the designated mission player. Although no player can promote himself, he can promote any other player on his team. The player remains "promoted" until he is killed or exits the mission. After being promoted in this manner, the promoted player can thereafter issue any of these other six specially formatted Morse Radio messages:

2 of 5: "SSSSSSSS" (Eight or more sequential "S" characters). This is the "SECRECY" command, and it switches every member of the player's team onto a new, secret, Mumble channel for private communication. Members of the other team are NOT switched, and it is cumbersome and time-consuming for them to ever discover which channel is being used for this secret conversation. It is unlikely that members of the opposing team will hear conversations held in this manner.

3 of 5: "MMMMMMMM" (Eight or more sequential "M" characters). This is the "MISSIONCAST" command, and it switches every member of the player's team onto the "MissionCast" channel for the current realm and mission so that everybody participating in the mission will be able to hear and converse with everybody else.

4 of 5: "TTTTTTTT" (Eight or more sequential "T" characters). This is the "TeamCast" command, and it switches every member of the player's team onto the "TeamCast" channel for the current realm and mission. The other team also has its own TeamCast mission as a "sibling" channel, and those two sibling channels are isolated from one another so that voice communication in one is not heard in the other. Note, however, that any player that chooses to enter the mission's "MissionCast" channel WILL hear everything, so this "TeamCast" option is best viewed as a means of minimizing congestion rather than a means of ensuring secrecy.

5 of 5: "RRRRRRRR" (Eight or more sequential "R" characters). This is the "Root" command, and it switches every member of the player's team onto the "Root" channel of our Mumble server at LinuxAirCombat.com. This is handy for recruiting new players into the mission, since it is commonplace for new players to hang out in our Root channel while waiting for mission activity elsewhere.

As a consequence of these advanced commands, it is now much easier for teams equipped with the latest versions of Mumble to make powerful and orderly use of our Mumble channels, enjoying a significant advantage in combat.

If you don't use Mumble, or if you have Mumble (or one of the other Mumble-compatible voice comms apps) installed on your phone, tablet, or another computer, then you won't see any benefit installing any version since Lac07p72.





Changes in the mid Sep2019 version (Lac07p85) include:

This version is operationally compatible with all prior versions since Lac07p70, but all of the new features of its Mumble interface, previously limited to users of Mumble Version 1.3 and newer, now work with older versions of Mumble too! We've had success with versions as old as Mumble V1.2.3. Prior to version 1.3.0, Mumble used an older set of commands, so LAC still needs to know if your copy of Mumble is older than that. As with the prior LAC release, this is specified in the "NetworkMode" field of your "LacConfig.txt" file. Repeating our previous instructions on this subject, the four allowed values of "NetworkMode" are:

if NetworkMode is set to "0", LAC will operate in "Peer-to-Peer" mode and will control older versions of Mumble using the "old style".

if NetworkMode is set to "1", LAC will operate in "Client/Server" mode and will control older versions of Mumble using the "old style".

if NetworkMode is set to "2", LAC will operate in "Peer-to-Peer" mode but it will take full advantage of advanced functions for  Mumble 1.3.0 and later.

if NetworkMode is set to "3", LAC will operate in "Client/Server" mode and it will take full advantage of advanced functions for Mumble 1.3.0 and later.

The features of LAC's Mumble interface are now the same whether you use new Mumble 1.3.0, old Mumble 1.2.3, or something in between. (One minor difference: the newest versions of Mumble switch channels in about 5 seconds, while the older ones need about 6 seconds on average.)

If you have installed Mumble on the same computer that is hosting your copy of LAC, you should definitely upgrade to this version because the Mumble interface no longer requires such tedious configuration and is much more reliable. You will really enjoy the difference, and your team-mates will appreciate the way your communication will be automatically integrated into the action.

If you don't use Mumble, or if you have Mumble (or one of the other Mumble-compatible voice comms apps) installed on your phone, tablet, or another computer, then you won't see any benefit installing any version since Lac07p72.





Changes in the early October 2019 version (Lac07p88) include:

No new flight or mission features. This version remains operationally compatible with all prior versions since Lac07p70.

This version is even more reliable and "bullet proof" than the prior version, as a consequence of two tiny new user-management improvements as follows:

1 of 2: To make the Morse Code Radio more robust and reliable, "Squelch" settings now automatically expire every time the player's aircraft is serviced with fuel, ammo, or repairs while on the runway, deactivating old squelch settings to ensure more constant Morse Radio monitoring and availablity for interpretation of text-broadcast commands. As a consequence, stale old Morse Radio squelch settings (which can easily be forgotten during the activity associated with landings and takeoffs) no longer block subsequent Morse Code Radio messages, making all players more alert and more aware of LAC's most fundamental interplayer communication system and less likely to accidentally miss out on MultiPlayer commands, directives, bulletins, or queries transmitted by that means.

2 of 2: This version is easier to install than prior versions, even if the user does not read the online documentation and does not use the convenient "install.sh" script to optimize all of the installation steps. If a user attempts to run LAC immediately after downloading and/or compiling it (without making use of our standard "install.sh" script), it tries very hard, on its first execution attempt, to find or automatically generate all of the necessary configuration files, creating the required ~home/.LAC subdirectory to hold them. Any missing files that are absolutely required for LAC's basic operation are now generated automatically as needed, after which LAC generates explanatory diagnostic messages explaining their successful generation and urging the player to try running LAC again. Subsequent attempts to run LAC almost always succeed after that, allowing the user to experiment with the menus and basic flight.

However, the terrain that is used in LAC's most important missions is populated with random mountains, lakes, islands, and other geographic features unless the "DefaultHeightMap.LAC" file is present, and that file cannot be automatically generated. It is always downloaded as part of our standard distribution archive. If that "DefaultHeightMap.LAC" file is deleted or misplaced, the resulting, randomly generated terrain features never match up with the location or altitude of airfields, so runways are sometimes located underwater or displaced, in bizarre ways, from land features. (Sometimes the random terrain even exhibits water levels at altitudes high enough to swamp aircraft immediately upon their entry into a mission.)

To overcome this problem, new logic in this version of LAC tries very hard to find and appropriately utilize the "DefaultHeightMap.LAC" file, searching for it in all of the most likely places according to our experience monitoring user behavior. Usually this is successful during the first attempt to execute LAC, whereupon a series of helpful advisory messages are generated on the user's console upon program termination, along with an admonition to try running LAC again. These advisory messages differ slightly depending on the filesystem location where any copy of the "DefaultHeightMap.LAC" file is found, in order to be as helpful as possible to the user and to increase understanding of the ideal place to store LAC's executable file relative to its other components. Users that read and follow that guidance are very likely to experience complete success the next time they try to execute LAC.

Of course, if the "DefaultHeightMap.LAC" cannot be found in any of the usual places, then LAC proceeds to generate new terrain, populated with random geographic features that do NOT match the airfield locations that are expected in the missions. Affected users can only recover from this by placing a copy of the official "DefaultHeightMap.LAC" file into their ~home/.LAC folder. Detailed instructions for this have now been published in our "Frequently Asked Questions" ("FAQ") web page as FAQ #44.

(NOTE: Even though the improved installation logic in this version makes it easier to achieve basic LAC installation without using our "install.sh" script, the preferred installation process still uses that script because it automatically creates a tiny, convenient, additional new script named "lac" in the user's home directory which can thereafter be used to launch Linux Air Combat and also, according to long-standing desktop LINUX practice, to create graphical desktop or kicker-panel shortcuts to launch LAC with a single mouse click.)

If you are already happily using any version of LAC since Lac07p70, having formed good interplayer online habits and already having success with Mumble-based interplayer voice communication, then there is little reason for you to upgrade to this version. However, for new users, this version is the easiest to install of any LAC version, and routine operation helps inexperienced users to more reliably participate in the best interests of their team, less likely to miss out on interplayer communication.





Changes in the late October 2019 version (Lac07p90) include:

This version adjusts and improves flight models and other competitive aspects of online combat. Accordingly, this is a REQUIRED update. Players using older versions will be constantly alerted of the need to upgrade whenever a player using THIS version enters their mission.

Terrain geometry proportions have been changed to enhance the perception of high speed flight past terrain features. Now, especially when flying fast and low, the visual perception of speed is much more dramatic.

The logic that regulates the maximum climb rate of all aircraft at extreme altitudes has been improved.

The "Map Mode" shows a wider view of the terrain, allowing a better, more sweeping overview.

The flight parameters of all aircraft have been given a final "tweaking" to bring top speeds and climb rates into very accurate alignment with the best available flight test data from historic records. Performance from sea level on up to about 15,000 feet is now generally within 1% of the best available data. At higher altitudes, accuracy diminishes somewhat, but it remains respectable. Roll rates, zoom climb performance, turning rates, lethality, and durability have also been tuned to yield more accurate relative performance and to better match available historic and anecdotal information. This is the most accurate version of LAC ever.

Bomb loads of the Lancaster and B29 were adjusted to better match historic loadouts used in combat.

The Norden Bombsight is now a little more accurate across a wider range of drop speeds.

Airfield anti-aircraft guns now reach a maximum altitude of 10,000 feet instead of 15,000 feet.

Bomber auto-gunners are now slightly less accurate versus nearby opponents that are flying at very high speed.





Changes in the 15Nov 2019 version (Lac07r92) include:

This is the official, first "Production Release" version of LAC.

Users can now edit the "NetworkMode" field of their LacConfig.txt file to instruct LAC to ignore the presence of Mumble. This will be good for users with computers suffering incompatibilities when trying to use Mumble, or for users wishing to employ some other VOIP application.

Run-time diagnostic reporting was simplified, eliminating several unimportant details and improving framerate when looking to the right, left, up, down, or to the rear from within the cockpit.

LAC's video resolution configuration menu now offers nine standard resolution options instead of just five, making it far less likely that inexperienced users will ever need to manually edit the corresponding resolution fields in their LacConfig.txt file. The vast majority of new users will be able to find an appropriate setting from within LAC's menus.

The flight model of the Nakajima N1K1 fighter was improved with better handling of high-speed compressibility.

LAC's volunteer flight test crew flew meaningful missions, including takeoffs and landings with agressive ACM, in all 54 of the WW2 aircraft and confirmed that all of them fly reasonably without a lot of segmentation errors, and within expected flight performance parameters according to the best available historic and anecdotal records. Top speeds at sea level, climb rates, stall speeds, roll rates, maneuverability, lethality, and durability are all adjusted to our satisfaction. For controlled flight at normal altitudes and speeds, the overall performance and "feel" is entirely reasonable for anybody willing to use a little imagination. (At the extremes of speed and altitude, the flight models are less accurate, but still respectable.)  The biggest flight model compromise is evident during takeoffs and landings, which are considerably simplified and easier than in real life, but all of the active principles of flight are modeled in principle; LAC's compromises in takeoff and landing are matters of degree. All of the flight testers are satisfied with the resulting compromises.

Accordingly, we are declaring this release of "classic" Linux Air Combat as DONE, and we are issuing it with a new name:

"LINUX AIR COMBAT R 7.92".

The compiled executable program is now named "lac07r92".

This version is fully compatible and interoperable with all versions since 7.90. If you are already happily using version 7.90 or 7.91 there is little need for you to upgrade unless the Nakajima N1K1 fighter is important to you or your mates. However, you will find that the newest version is a little easier to configure for optimal video resolution and yields a slightly improved frame rate when looking to the side, to the rear, or up or down.





Changes in the 19Feb 2020 version (Lac07p96) include:

This version is fully interoperable with all prior versions since Lac07p90. No new features.

We fixed a bug that had sometimes caused aircraft to collide with their own bullets when flying faster than 375 MPH. This was especially troublesome when flying the Me163 rocket plane, which can easily exceed 500 MPH in combat.

We implemented several improvements in the visual perception of "network jitter". When looking at nearby online aircraft in flight, they are now a lot less "jumpy" as network packets update their positions and orientations.

This version remains functionally interoperable with all versions since Lac07r92.






Changes in the early Apr2020 version (Lac08p01) include:

The cockpit's "TAR ALT" display is now colored red when RedTeam objects are selected, and colored blue when BlueTeam objects are selected.

The duration of flight supported by fuel supplies has been adjusted for all aircraft so that bombers have longer flight endurance and greater range than fighters, etc. The B29 now has the longest flight duration (without refueling) in the sim, and the Me109 has the shortest endurance of all piston-powered aircraft, according to its well-known reputation. Others fall in between these extremes. In general, heavy bombers can remain aloft about twice as long as fighters, and medium bombers can remain aloft about 50% longer than most fighters.

The Spit5 and Spit9 now suffer from fuel-flow cutoff when pulling negative "G" forces, in the same manner as their historic counterparts.

The DeHavilland "Mosquito" has been upgraded from the "bomber-only" version to the "Fighter-Bomber" version, equipping it with guns and rockets in addition to its bombs. These changes should make the "Mossie" a more popular choice among LAC players.

I found and fixed several minor errors in the menu logic that displays "HISTORIC PERIOD" associated with each aircraft. Now, in LAC's menus, early-war aircraft are correctly described as "EARLY WAR", and all late-war aircraft are correctly described as "LATE WAR".

I found and fixed a tiny little bug in main.cpp's "event_targetPrevious()" function that was failing to vocalize aircraft team affiliations if there was only one other aircraft in the mission.

I found and fixed a bug that was causing the "FIGHTERS" tutorial mission to start out with IFF disabled every second time it was re-started.

I enhanced the two-player "HEAD TO HEAD" mission so that its cockpit instruments now display "DATA FLOW" instead of "CONNECTION" to better describe that mission's true use of network activity.

I adjusted starting positions in all three of the server-based, multiplayer missions. Now the player starts out farther from his requested airfield and higher up, giving more time to set up landing when desired.

I found and fixed a bug that sometimes caused LAC to "Hang" destructively when a targetted object was destroyed (either by the player or by somebody else). This bug had also sometimes caused segmentation errors WITHOUT "hanging" the sim.

I adjusted startup logic that was sometimes causing segmentation errors within the first 5 seconds of online missions. (Those errors are now diminished in frequency but still occur from time to time. Not very often. They can be avoided by avoiding violent maneuvers during the first 5 seconds of a new mission.)

I found and fixed a bug that was sometimes causing segmentation errors when the player collided with another aircraft or mission object.

I enhanced the "TargetNext" and "TargetPrevious" facilities. Now they ought to be more accurately named "TargetNextRed" and "TargetPreviousBlue", respectively, since the first of them cycles FORWARD through all RedTeam mission elements (skipping BlueTeam elements), and the second of them cycles BACKWARD through all BlueTeam mission elements (skipping RedTeam items). Accordingly, the keys and processes formerly known as "TargetNext" now yield the next RED target, and the keys and processes formerly known as "TargetPrevious" now yield the previous BLUE target. This arrangement sensibly preserves existing habits, keyboard and joystick mapping, and documentation, with only a small adjustment in pilot behavior. The arrangement is more convenient than the "classic" arrangement that has been in use for the prior three years, since a player that knows the team affiliation of his desired target can now select it with an average of only half as many keystrokes or joystick button activations.

I enhanced the "Map Mode" display with new information revealing the player's current altitude and true airspeed, making "Map Mode" a lot more useful (especially when the Norden Bombsight is active.)

I completely rewrote the Norden Bombsight logic. The "Continuously Computed Impact Point" pipper (which was too "jumpy" in prior versions) now moves much more smoothly. Accuracy is greatly increased. The prompting text has now been optimized to give better advice, which is customized a bit according to the type of aircraft being used.

I eliminated the universally despised, vocalized "tour" of the tactical situation at the beginning of all three online, server-based, multiplayer missions.

As a consequence of all of these changes, LAC is a little more realistic, suffers from fewer segmentation errors and "HANG" problems, is more accurate, and easier to control in complex tactical environments.

This version remains functionally interoperable with all versions since Lac07r92, but it is better behaved, a bit more realistic, and nicer to fly. All players are urged to upgrade.






Changes in the mid-Apr2020 version (Lac08p02) include:

Better support for players that don't have a joystick. The logic that supports flight without a joystick has been improved. Several serious bugs were fixed. Now it's much easier and more reliable to fly with just a mouse and keyboard, whether using the formerly flawed, optional "RELATIVE" mode, or the long-stable nonrelative mode. Both modes are now improved. As an option for pilots that are serious about tuning mouse controls for the maximum possible performance, players can edit their ~home/.LAC/LacControls.txt file to map two keyboard keys to "key_TrimRudderLeft" and "key_TrimRudderRight". In that case, even rudder inputs become available to players flying with only a mouse and keyboard for flight control input. LAC's "SETUP OPTIONS -> GAME" menu allows configuration of mouse controls in "RELATIVE" or nonrelative mode. Beginners will probably prefer the "RELATIVE" mode.

The amount of fuel available at the commencement of MissionNetworkBattle01 and MissionNetworkBattle02 has been diminished in order to more diligently force all players to land for fuel before commencing any other mission tactics.

Bugs in the Me163 refueling, rearming, and repair logic were repaired.

Fixed a bug that had failed to assert accurate "blackout" and "redout" effects when in the external view mode.

Airfield objects and battleships are now visible from much greater distances. This aids in accurate bombing and dive bombing.

Fixed bugs in the Junkers Ju87 and the Aichi D3A that were incorrectly permitting them to retract landing gear, in conflict with their historic, fixed-gear designs.

Fixed bugs in the Junkers Ju87 flight model that had caused occasional segmentation faults when its dive brakes were active.

Enhanced cockpit realism when IFF is disabled or damaged: without IFF, many of the advanced cockpit and RADAR targeting features are now unavailable and pilots are forced to rely on voice radios and LAC's target "vocalization" to locate other aircraft and airfields.

Enhanced the results of damage in flight: Now, as damage levels increase toward 100%, pilots experience various new types of failures associated with WEP, Undercarriage, IFF, Ordnance access, Speedbrakes, and flaps, in addition to the aileron and engine thrust damage that have long been experienced by LAC pilots.

Improved pilot experience after landing for refuel, re-arm, and repair services: the 20-second duration of HUD and RADAR shutdown has been diminished to just 5 seconds.

This version remains functionally interoperable with all versions since Lac07r92, but it is better behaved, a bit more realistic, and nicer to fly. All players are urged to upgrade, especially if they are using "mouse" flight controls because they have no joystick.





Changes in the late-Apr2020 version (Lac08p06) include:

The Mission Detail menus for the three online, server-based, multiplayer missions have been enhanced with three new, clickable areas. Two of these, labeled "TEAM" and "REALM", respectively, cycle Team and Realm affiliation and the third, labelled "SYNCHRONIZE MUMBLE WITH REALM/MISSION/TEAM", synchrohronizes Mumble to the best channel according to the user's chosen combination of Realm, Mission, and Team. Accordingly, players can now cycle their membership between "RedTeam" and "BlueTeam" and among LAC's 32 distinct player-community Realms with simple mouse clicks, avoiding the need to edit the LacConfig.txt file.

This version also modifies the value of "NetworkTransmitTimerInterval" when Realm "01" is in use. In that case, the value of "NetworkTransmitTimerInterval" is set to the special value of "101". This greatly improves the visual perception of network "jitter" when flying in Realm "01". If long-term experience with this setting does not cause problems for the server, then we may double the rate of packet transmission with a similar adjustment to "NetworkTransmitTimerInterval" in some or all of the other Realms too.

I found and fixed the "Default Aircraft Selection MenuRendering Bug" that has long plagued LAC. As a result of the improvements implemented in this new version 8.06, our menus are now prettier and a lot more functional. For the first time in almost 5 years, rendered images of mission aircraft are now visible in all appropriate areas of our menus according to reasonable user expectations, and menu clicks can cycle TEAM and REALM affiliations without editing the LacConfig.txt file. Mumble is easily synchronized with the user's choices, and any entry into Realm01 automatically enforces an experimental, more agressive setting of "101" for "NetworkTransmitTimerInterval".

This version is also more robust in handling certain types of "misbehavior", such as "fratricide" (shooting or killing members of your own team) and "ESCAPE desertion" (abuse of the "ESCAPE" key in order to instantly vanish from combat when facing a difficult tactical situation).

This version remains functionally interoperable with all versions since Lac07r92 but it is now much easier for users to select aircraft and team affiliations.






Changes in the mid-May 2020 version (Lac08p08) include:


No changes were made that affect flight. This version remains operationally compatible with all prior versions since Lac07p92.






Changes in the late-May 2020 version (Lac08p11) include:

  1.    Blake Williams is working on Mission #4.
  2.    Hyrum Bosen wants to begin working on Mission #5 soon.
No changes were made that affect flight. When used in any of the three classic online, multi-user, server-based missions, this version remains operationally compatible with all prior versions since Lac07p92.





Changes in the early June 2020 version (Lac08p12) include:


No changes were made that affect flight. When used in any of the three classic online, multi-user, server-based missions, this version remains operationally compatible with all prior versions since Lac07p92.





Changes in the mid-June 2020 version (Lac08p15) include:

No new player features or flight model changes.  When used in any of the three classic online, multi-user, server-based missions, this version remains operationally compatible with all prior versions since Lac07p92.

The four new, sample missions introduced back in Lac08p11 have been further cleaned up and improved. At present, all of them are functionally identical, and they duplicate the logic of our well-known, classic, "Network Mission 01", with some increased run-time reporting to increase understanding in support of new mission developers. We hope a few budding programmers will join our development team by adopting and customizing one or more of these missions. They have all been improved with increased and more detailed source-code comments, and with embedded examples showing how to take advantage of optional new features. Furthermore, LAC's underlying infrastructure has been made more robust in support of features that we hope will be helpful for future mission developers. For example, by following or duplicating well-documented patterns within those four published sample missions, it is now very easy for mission developers, even if their programming skill is modest, to change terrain types, weather conditions, or to insert events of any of these types at any desired point in their custom missions:

   1- Text messages on the cockpit's "SystemMessage" panel.
   2- Acoustic "beeps".
   3- Acoustic verbalization of text ("Text-To-Speech" sound effects).
   4- Video Clips.
   5- Web pages.
   6- Additional self-defending airstrips.
   7- Movement of self-defending Battleships or Aircraft Carriers (more types of moveable objects to come).
   8- Synchronization of mission states across multiple players (to synchronize the location of moveable objects).
   9- New definitions for victory and mission-ending conditions.

All of these new development tools are documented in a new LAC Forum named "Mission Developers" here:

https://sourceforge.net/p/linuxaircombat/discussion/






Changes in the late-June 2020 version (Lac08p21) include:

TEN online, multi-player, server-based missions are now available. (The original three such missions are unchanged.) All of the other new ones are still in a stage of experimental development, but the one labeled "PEABODY'S MISSION" has had quite a bit of alpha testing and is now ready for vigorous exercise by the LAC Community. It is bigger and more complex than prior missions, and takes place in a heavily forested, mountainous terrain. Victory requires destruction of TWO enemy airfields instead of just one, and HQ airfields are further fortified by an adjacent, very strong, artillery battery. Please report your experience with this mission in our LAC Forums.

Two of the remaining new missions, named "BLAKE'S MISSION" and "HYRUM'S MISSION", have been claimed by two of our developers for further improvement, and we can expect to see them creatively enhanced soon.

The four remaining new missions, named "NET MISSION 7", "NET MISSION 8", "NET MISSION 9", and "NET MISSION 10" respectively, are all essentially identical in function, and each is available for adoption by one or more members of the LAC community who would like to become a "Mission Developer". Each features a single moving aircraft carrier on which players can land a RedTeam aircraft for refuel, repair, and re-arm services. New LAC Mission Developers are encouraged to follow the pattern that created that single RedTeam aircraft carrier for enhancement with a BlueTeam aircraft carrier. There are abundant opportunities to further enhance these missions according to your inspiration! The source code for these new missions is extensively commented for easier understanding, and our forums, at:

    https://sourceforge.net/p/linuxaircombat/discussion/

....now offer an additional new forum area in support of Mission Developers. Interested members of the LAC community are encouraged to use these facilities to claim one of these missions as their own, to make their own improvements resulting in better missions, and to submit the resulting, improved code back to us through our forums. The best of these efforts will be incorporated into future versions of LAC!

LAC's standard cockpit instrument panel is now enhanced with an additional instrument displaying the estimated repair status of the selected, friendly airfield. (Although the repair status of selected, HOSTILE airfields is not displayed on a cockpit instrument, the user can press "F12" to request a voice radio report from a "forward observer".) In large missions with multiple defended airfields, this instrument is a great aid to players needing to understand the complex, evolving, tactical situation.

The visual appearance of battleships has been improved with addition of a large, central smokestack.

The following additional mission objects are now available for general-purpose use by new mission developers:

    1: Naval Destroyers.
    2: Artillery Batteries.
    3: Aircraft Carriers.

Mission developers can move Battleships, Aircraft Carriers, or Naval Destroyers around during their missions. Players can land aircraft on aircraft carriers and (if they are very very careful) they can take off again.

Mission developers can now easily create new missions of far greater complexity. As an example, a new, "sample" mission is included as "PEABODY'S MISSION". It takes place in a mountainous terrain covered with conifer forests and dotted with lakes of various sizes. Each of the two teams has two defended airfields, and victory requires destruction of BOTH opposing airfields. The two HQ airfields are toughened by the presence of a very strong, adjacent, artillery battery.

LAC's infrastructure in support of mission developers has been improved. Now it is much easier to synchronize repair status of airfields, and to synchronize the movements of mobile mission objects across multiple, network-connected players, and to avoid confusion if a new MissionCommander enters an established mission that has already advanced into its preconfigured set of MissionChronoMilestones.

Text-to-speech vocalization of many items of interest is now comprehensively implemented for players that install the free, well-known, optional "espeak" text-to-speech application. Users are urged to install espeak to benefit from this optional improvement.

When used with any of the three long-standing, "classic", online, multi-player, server-based missions, this version remains interoperable with all prior versions since 7.92.







Changes in version Lac08p23:

No changes were made that affect flight. When used in any of the three classic online, multi-user, server-based missions, this version remains operationally compatible with all prior versions since Lac07p92.

All of the changes in this version are intended to assist new Mission Developers, and all are focused on the seven new, experimental missions, all of which are now clearly advertised as "BETA" test or "WORK-IN-PROGRESS" features.

I fixed several bugs in the infrastructure of online missions. Prior versions suffered when new missions had two or more airfields. Upon receipt of serious damage to just one of those airfields, player RADAR and IFF would fail and a variety of other odd things were happening. Now those problems are fixed. (Players now suffer loss of RADAR and IFF after ALL of their airfields are heavily damaged, not when just one airfield is heavily damaged.)

Four new functions, named "TestDamageMissionObjectHqBlue()", "TestDamageMissionObjectHqRed()", "TestDamageMissionObjectAirfieldBlue2()", and "TestDamageMissionObjectAirfieldRed2()", are now available for use during new mission development. They are intended to help new Mission Developers test their missions without the need to coordinate a lot of online beta testing. Each of those functions inflicts heavy damage on the airfield implied by its name. New Mission Developers can invoke one of those functions at the commencement of any desired "MissionState" to simulate an attack by an online opponent. This can VASTLY simplify and accelerate alpha testing of new missions during development.









Changes in Version Lac08p28 include:

The "install.sh" installation script has been improved. It now offers additional advisory prompts and recommendations describing companion software like "Mumble" and "espeak".

Improvements in the seven new missions from version 8.21. All of the online, multi-player, server-based missions are now ready for serious use. The first three "classic" missions remain unchanged and interoperable with all LAC versions since 7.92.

MissionNetworkBattle06, advertised as "Peabody's Mission", takes place in a mountainous and heavily forested terrain, populated entirely with fixed strategic resources including artillery batteries fortifying the two primary airfields. I consider this mission to be complete at this point. It can serve as an excellent example for development of future "static" missions (whose strategic assets DON'T move around).

All six of the remaining new missions are functionally identical, taking place in the beautiful island terrain. Each of these new missions features FOUR self-defending, strategic airfields, and each is further enhanced with two mobile aircraft carriers. At this point, the aircraft carriers simply cruise around in a big, circular loop, visible to the North of each team's main airfield. Players can land on the aircraft carriers, receive fuel, ammo, and repairs as might be expected, and take off again. All six of these new Island Terrain missions are now ready for serious beta testing and for subsequent adoption and enhancement by future Mission Developers.

In all of our current missions, victory always requires destruction of all opposing strategic assets (but new Mission Developers could change those victory requirements as they customize future missions).

No changes were made that affect flight. When used in any of the three classic online, multi-user, server-based missions, this version remains operationally compatible with all prior versions since Lac07p92.







Changes in Version Lac08p29 include:

I removed some testing logic from all of the new missions to ensure that they are more user-friendly for public testing (however, all of those new missions are primarily intended as training material for New Mission Developers).

We determined that LAC performance is perfectly acceptable on the popular, extremely low-cost Raspberry Pi 4b. To encourage its use, I optimized performance for Raspberry Pi users, and a Raspberry-Pi-specific version is available in our download archives on SourceForge.net.


No changes were made that affect flight. When used in any of the three classic online, multi-user, server-based missions, this version remains operationally compatible with all prior versions since Lac07p92.


Changes in Lac08p30:

Since published version 8.29, I have enhanced handling of two items in LAC's configuration file "LacConfig.txt" to benefit operations on Raspberry Pi as follows:

1 of 2: The name of the "PreferredBrowser" is now set to "chromium-browser" when the "Raspbian" operating system is in use. This makes it much easier to access LAC's online help and to see YouTube video clips related to each of LAC's 54 simulated aircraft. Related, explanatory text in the LacConfig.txt file has been improved to clarify this.

2 of 2: The menus that automate management of video display resolution have been expanded and better optimized. Now they support additional, popular options, including 1280x720, diminishing any need to manually edit the LacConfig.txt file.

  • The "common.h" source-code file now has a new line of code that can be enabled or disabled via the well-known "comment it out" mechanism, and which triggers special logic when the "RASPBIAN" operating system is defined for use. By default, that line is commented out (disabled). People compiling LAC for use on the Raspbian operating system should enable that line.

  • The logic that handles landings on unusual surfaces has been improved. Now, when landing at an airstrip, it is necessary to remain on or very near the paved areas in order to receive repair, refuel, or re-arm services.

  • Water landings are now more realistic: A great deal of extra damage is inflicted if you attempt to land on water with landing gear extended. A loud "splash" sound effect is heard as your aircraft settles into the water at sea level. Your aircraft is no longer serviced, re-fueled, or re-armed after a water landing. (Note that some of these water landing details do not work as nicely when landing on lakes that are NOT at sea level.)

  • Landings on moving aircraft carriers are improved a little, but it is still necessary to use your engines to move forward with the aircraft carrier as it moves through the water, or the ship will drive out from beneath you. If you are VERY careful you can land on an aircraft carrier and remain in sync with its moving deck long enough to be refueled, re-armed, and repaired. After that you can take off.

No changes were made that affect flight. When used in any of the three classic online, multi-user, server-based missions, this version remains operationally compatible with all prior versions since Lac07p92.





Changes in Lac08p31:

1: Target vocalization has been slowed down for better speech clarity and to fix bugs that sometimes caused the vocalization to skip words or syllables.

2: Fixed a bug in the Raspbian version that had prevented proper refueling, re-arming, and repair services at airstrips.

Game Controller for use with LAC

3: Joystick logic has been enhanced to provide much better support for 4-axis, analog "game console"-style joysticks of the type that are in commonplace use on "XBOX", "PlayStation", and similar consumer-oriented console gaming systems. To take advantage of this new logic, players wishing to use a USB game controller of that style will need to edit the "NetworkMode" attribute of their LacConfig.txt file. That file now contains additional commentary details in support of that option. After making that change, players will also need to edit their LacControls.txt file to re-map the available joystick axes and buttons according to their own preferences. The button mapping can be customized to meet individual needs. The default layout is shown above. With the default layout, the four "triggers" (hidden from view) are used for looking UP/Down and for firing Primary/Secondary weapons.

4: The distribution archive now includes a new folder named "ConfigFileSamples" that contains several sample configuration files, each with descriptive names, that can be used to replace the "LacControls.txt" file and/or the "LacConfig.txt" file in certain popular situations. For example, the following new files are available for reference by those wishing to customize LAC:
Using LAC's prominent configuration menus and/or using a simple text editor, those sample configuration files can easily be further customized to meet your specific needs with different controller layouts and different display adapters, etc.

No changes were made that affect flight. When used in any of the three classic online, multi-user, server-based missions, this version remains operationally compatible with all prior versions since Lac07p92.

 




Changes in Lac08p32:

This version fixes one bug from Lac08p31 which won't affect very many people. Back in version 7.92 we added logic to disable LAC's automated management of Mumble, such as its automatic invocation at the commencement of a new LAC session, and automated Mumble channel changing to match the user's current LAC Realm, Mission, and Team. (Disabling that Mumble-management logic requires editing the "NetworkMode" field of the LacConfig.txt file.) Recent exercising of that logic revealed several bugs that failed to disable LAC's automated Mumble-management logic even when configured to disable it. This version fixes those bugs.

Very very few people have ever used that feature, since LAC's automated management of Mumble generally works perfectly. However, recent experiments on Ubuntu Desktop Linux from September 2020 revealed that extra copies of Mumble were being invoked each time a LAC user changed to a different Mumble channel. Accordingly, it is desirable for Ubuntu users (and perhaps other LINUX platforms too) to disable LAC's automated management of Mumble, leading to discovery and repair of this little bug.

No changes were made that affect flight. When used in any of the three classic online, multi-user, server-based missions, this version remains operationally compatible with all prior versions since Lac07p92.
 





Changes in Lac08p34:

I fixed a bug in NetworkApi.cpp that had sometimes been invoking espeak without first consulting "NetworkMode"to determine if LAC's espeak interface is disabled.

Unfortunately, the standardized means by which LAC commands Mumble to connect with our Mumble Server and automatically change channels is not compatible with some LINUX distros, and can cause various problems (like multiple instances of Mumble interfering with one another). To tame that problem, versions of LAC since 8.32 include a provision to disable LAC's automatic management of Mumble by adjusting the value of the "NetworkMode" attribute within the LacConfig.txt file (as prompted by explanatory text within that file).

Players that use this option to disable LAC's automated management of Mumble can still use Mumble to communicate with other players, but they must manage channel selection through Mumble's native tools, without any direct help from LAC. Under most circumstances this is not difficult; hundreds of thousands of Mumble fans use its native tools while playing network games lacking an automated interface. However, some of the advanced channel-changing commands that activate Mumble activity for an entire team might easily be missed by a player that has disabled them, causing those players to miss out on information intended for their team due to lack of knowledge of the channel in use by other team-mates. To help them keep up with the dynamic communication situations that sometimes develop in online, team-oriented combat, this new version 8.34 enhances LAC's cockpit and voice prompts with the following three new provisions:

1- In the usual case, when LAC's automated managment of Mumble is NOT disabled, nothing changes.

2- If the user disables LAC's automated management of Mumble, then before LAC abandons an incoming command to change Mumble's active channel to join or follow team-mates, the cockpit's "System Message Panel" instead displays a simple new message like "YOUR TEAM IS SWITCHING TO TEAMCAST CHANNEL" or "TEAM IS SWITCHING TO CHANNEL 001", as appropriate to the situation. After an appropriate, descriptive message is displayed on the player's cockpit SystemMessage Panel, the command is abandoned with no direct impact on Mumble, and (if a copy of Mumble that is NOT automatically managed by LAC is available) the user is expected to join team-mates by manually switching to the new channel as prompted.

3- If the user has installed the "espeak" text-to-voice application according to our recommendations, those new System Message Panel messages will also be vocalized into the player's speakers or headset.

Significant online testing confirms success. Now, even if players disable LAC's automated Mumble channel management, they are nicely alerted whenever their team-mates are automatically switched to a different channel, and it is reasonably easy for them to follow along if they have access to a copy of Mumble (either on the same computer or elsewhere). It is especially easy if that copy of Mumble is configured with the set of "Shortcuts" according to our old recommendations from the days before most users automated the process as described in THIS old YouTube clip:

https://www.youtube.com/watch?v=8LSbZMHqD1M

No changes were made that affect flight. When used in any of the three classic online, multi-user, server-based missions, this version remains operationally compatible with all prior versions since Lac07p92.




Changes in Lac08p36

This version derives directly from Version 8.34 (bypassing version 8.35). This version fixes two bugs in "Peabody's Mission" as follows:

1 of 2: Peabody's Mission was failing to display the RADAR antenna at secondary airfields,

2 of 2: In Peabody's Mission, the player's aircraft was prematurely destroyed whenever his secondary airfield was heavily damaged.

(Extensive online testing has recently confirmed that "Peabody's Mission" is now well-behaved and although it is still marked "TEST" in the menus, it can now be considered to be of "production" quality.

No changes were made that affect flight. When used in any of the three classic online, multi-user, server-based missions, this version remains operationally compatible with all prior versions since Lac07p92.






Changes in Lac08p38

This version derives directly from Version 8.36 (bypassing version 8.37). Three minor bugs were fixed in "Peabody's Mission" as follows:

1 of 3: RADAR was tracking targets flying too low to be realistically detected (down in valleys, etc.)
2 of 3: Target reticles were drawn around those same targets even when flying too low to be tracked by RADAR.
3 of 3: The rotating RADAR antenna at field "RED2" was positioned a few feet too far to the West.

Note that none of these bugs affected any other missions.

We also eliminated run-time diagnostic reporting during Peabody's Mission, resulting in much quieter operation. This was done by simply "commenting out" the associated source code lines. Accordingly, Mission Developers can easily re-enable that run-time reporting should they ever want to enhance the Mission or derive some future mission from it.

We also eliminated the "TEST" label associated with Peabody's Mission in the main menu, since it is now confirmed to be of "production" quality.

We also tweaked some of the graphic detail settings in main.cpp to achieve a very very slight improvement in frame rate.

No changes were made that affect flight. When used in any of the three classic online, multi-user, server-based missions, this version remains operationally compatible with all prior versions since Lac07p92.






Changes in Lac08p40

This version derives directly from Lac08p38 (bypassing Lac08p39 which has different objectives). It remains fully compatible with the prior published version. If you are happily using prior version 8.38 or 8.39, there is little reason to update to this new version. However, new users may benefit, especially if they are not using a full-size keyboard. Several small improvements were made as follows:

The cockpit's "SPEED" instrumentation has been enhanced. In addition to displaying the True Airspeed, additional controls now also display Indicated Airspeed ("IAS") and Ground Speed ("GS") when in flight.

Improved Menu references to "Peabody's Mission": LAC's previous few versions have resulted in very nice completion of "Peabody's Mission". However, the menu text describing that mission was still advertising it as "BETA TEST" and "UNFINISHED MISSION". We updated those menu references to advertise the mission's completion and stable status. We also enhanced menu text associated with that mission to more clearly define its objectives and unique aspects.

Improved commentary within the LacConfig.txt file to update and clarify certain details that have been evolving during the past several months.

Improved support for compact keyboards: Many users have been running LAC on laptop computers that lack a full-size keyboard. Because those keyboards often lack or scatter the organized cluster of six keys that LAC's standard arrangement uses for zooming the Field of View, the RADAR, and the Map in and out, use of these "simplified" keyboards has proven to be cumbersome. Furthermore, the Raspberry Pi Foundation announced availability of their new Raspberry Pi Model 400, which is becoming very popular. Like many laptops, its keyboard layout does not include the convenient rectangular cluster of six keys that we have been using for all of LAC's "zoom" functions. Several other keyboard keys are missing too, including "F11" and "F12". We want LAC to run well on that hardware.

To compensate, this version allows an easy option to "double-map" the keyboard keys for affected functions. In addition to the existing logic that maps keys to functions according to our existing online documentation, this new option hard-codes the following additional keys and functions:

   Num+     = RADAR Zoom In.
   Num-     = RADAR Zoom Out.
   NumDel   = FOV Zoom In.
   NumIns   = FOV Zoom Out.
   NumEnter = Query Forward Observer for status of selected enemy airfield.
   z        = Cycle Map View Zoom.

As you can see, most of those hard-coded changes rely upon formerly unused numeric keypad keys.

We now activate all of this new logic by consulting the "64" bit of the "NetworkMode" variable as configured within the "LacConfig.txt" configuration file, according to the established pattern for other run-time configuration options. The prompting text associated with "NetworkMode" within the "LacConfig.txt" configuration file has been expanded to explain all of this. It prompts the user to use the "64 bit" of "NetworkMode" to designate use of an alternate keyboard map and guides him in the calculation of the appropriate value.

Brief online testing confirms success: Now, if the user sets the "64" bit of "NetworkMode", (s)he can use the following extra keys from the numeric keypad (in addition to any already configured for the same purposes) to zoom FOV and RADAR range in and out:

   NumIns:   FOV Zoom Out
   NumDel:   FOV Zoom In
   Num-:     RADAR Zoom Out
   Num+:     RADAR Zoom In
   NumEnter: Query Forward Observer

Additionally, if the operator presses "z", (s)he can cycle Map Zoom through all available settings. Each "z" zooms Map Range in farther and farther until maximum zoom is achieved. An additional "z" resets Map Zoom out to maximum, and the cycle repeats indefinitely as the operater presses "z".

As a consequence of this new optional keyboard map, LAC players that use laptop computers, Raspberry Pi Model 400 computers or others lacking a standard, robust keyboard will still have easy access to all of LAC's important functions through formerly unused keys.

Alternative Makefiles: This version also includes two alternative Makefiles, for use by those that have had trouble compiling LAC with our standard Makefile. The alternative Makefiles are named "MakefileV2" and "MakefileV3". As you might well suppose, the file named "MakefileV1" is a duplicate copy of our well established, long-stable "Makefile".

Thanks to a new posting in our online forums by Daniel Barland, we have learned of improvements in LAC's Makefile that seem to help Ubuntu compilation efforts. In his post (in the "Welcome to Ubuntu" thread), he refers to our YouTube video playlist showing exactly how we downloaded, compiled, installed, and tested LAC on a brand new Ubuntu system in September of 2020. Here is the YouTube playlist to which he refers:

https://www.youtube.com/watch?v=7pgCJ5QLj6A&list=PL1IYes9MY6lLv_g8KUGIHWgpirjnzyi2i

Here is the text of Daniel's original post containing his improved PlayList:

========== BEGIN ==========
For those running Ubuntu 18.04LTS, things may be a little different from 20.04LTS as shown in the video playlist. You must still install the needed libraries, but successful compilation (Lac08p38) with 18.04LTS required a couple of tiny tweaks of the provided Makefile, as shown below. My 18.04 installation is using gcc 7.5.0, make 4.1, and glibc 2.27 on AMD64. The tweaks needed are to remove g++ PIE flag and that the linker requires libraries to be appended at the end of the compiler call.

Makefile:

OBJS=3ds.o aiobject.o audio.o cockpit.o common.o conf.o dirs.o effects.o fileloader.o FlightModel.o gl.o glland.o land.o loader_tga.o main.o mathtab.o menu.o mission.o model.o NetworkApi.o object.o objload.o pilots.o vertexarray.o

LIBS=`pkg-config --libs SDL_mixer` -lglut -lGL -lGLU

Lac08p38: $(OBJS)
    g++ -o Lac08p38 $(OBJS) $(LIBS)
    cp Lac08p38 bin/Release/Lac08p38
    chmod +x bin/Release/Lac08p38

clean:
    @rm -f *.o
    @rm Lac08p38
================ END =============

Daniel's new Makefile is included herewith as "MakefileV2". If our standard Makefile doesn't work for you, replace it with MakefileV2 and give it a try (or use the "CodeBlocks" option, with which many, many people have had success). "MakefileV3" derives from Daniel's MakefileV2 but includes compiler directives for "speed at any price". It should result in better frame rates. Further information about compiling LAC with all of these options can be found in our "Compiling and Installing LAC" forum here:

https://sourceforge.net/p/linuxaircombat/discussion/compilinglac
 
No changes were made that affect flight. When used in any of the three classic online, multi-user, server-based missions, this version remains operationally compatible with all prior versions since Lac07p92.




Changes in Lac08p42

1 of 2: Descriptive text in some of the mission menus is a little more detailed.
2 of 2: A subtle rudder-induced roll effect enhances the flight model. You will notice this when applying full rudder because your aircraft will tend to roll a bit. This is easily and naturally overcome with gentle aileron pressure as in real aircraft.






Changes in Lac08p44

The little-used old "ConfigFileSamples" folder has been deleted from our standard distribution page because that information is now available online through our "Flight Control Hardware" forum.

The little-used old "Optional3dModels" folder has been deleted from our standard distribution package because it is now available online through a prominent "ENHANCED ART" link at the top of our main web page.

The little-used "KnownBugs.txt" file has been deleted from our standard distribution package because that information is now available online through our "LAC Bug Tracking" forum.

I found and fixed a bug that had been sounding an irritating noise when landing a damaged aircraft.

I fixed a bug that was causing bomber gunners to shut down their guns in preparation for landing whenever their aircraft was flying at extremely low altitude. This behavior is no longer desirable because so many of our new terrains include low-altitude canyons and valleys where aircraft like to fly low in order to avoid radar detection.

I balanced the acoustic volume of all of the sound effects. Now the engine noise levels are more appropriate among all of the other sounds that are active in flight. Computer-generated voice effects from the "espeak" companion application are no longer so disturbingly loud. It is now easier for users to "tune" acoustic volume levels to their liking, and to balance them with sounds emanating from "Mumble", "espeak", "YouTube" documentation videos, etc.

I improved the selection of aircraft 3d model artwork for a better balance between visual quality and performance. If you are unhappy with any of these changes, you can always download individual .3ds art files for any aircraft, choosing from our "optimized for appearance" or from our "optimized for speed" online archives instead of the "balanced optimization" set used as the standard for this version of LAC. It is easy to find the required web page from the prominent "ENHANCED ART" link at the top of our official web page here:

http://askmisterwizard.com/2019/LinuxAirCombat/LinuxAirCombat.htm

I improved "USB Console Game Controller" support. Now users equipped with a low-cost, readily available USB Console Game Controller can use it with good success instead of a joystick. They have easy access to all 23 of these functions:

   01 of 23: Elevator Axis
   02 of 23: Aileron Axis
   03 of 23: Rudder Axis
   04 of 23: Throttle Axis
   05 of 23: LookFwd (Dedicated Button)
   06 of 23: LookBack (Dedicated Button)
   07 of 23: LookLeft (Dedicated Button)
   08 of 23: LookRight (Dedicated Button)
   09 of 23: LookUp (Dedicated Button)
   10 of 23: LookDown at Map (Dedicated Button)
   11 of 23: WEP (MaxThrottle & click)
   12 of 23: Undercarriage (CenterThrottle & click)
   13 of 23: SpeedBrakes (MinThrottle & click)
   14 of 23: Radar Zoom Cycle (Dedicated Button)
   15 of 23: FOV Zoom (Click Elevator/Throttle axis while looking out a cockpit window)
   16 of 23: Map Zoom (Click Elevator/Throttle axis while looking at map)
   17 of 23: Target Select Cycle (Dedicated Button
   18 of 23: Target Vocalize (Dedicated Button)
   19 of 23: Flaps Up (Dedicated Button)
   20 of 23: Flaps Down (Dedicated Button)
   21 of 23: Secondary Weapon Cycle (Dedicated Button)
   22 of 23: Fire Primary Weapon (Dedicated Button)
   23 of 23: Fire Secondary Weapon (Dedicated Button)

Here is a picture of a typical USB Console Game Controller mapped to take best advantage of all of these functions:


USB Console Game Controller mapped for use with LAC

Here is a YouTube "PlayList" showing exactly how to configure a typical USB Console Game Controller for use with LAC, taking full advantage of all of the new features recently made available:

https://www.youtube.com/watch?v=6bcpA8Uws8M&list=PL1IYes9MY6lLWfcNzU5acr9QWdXYY5KeS

All of this information about mapping a USB Console Game Controller can also be accessed through FAQ #53 from within our online FAQ here:

http://askmisterwizard.com/2019/LinuxAirCombat/LacFaq.htm



Changes in Lac08p47

Version 8.47 has no new features. However, it is installed in a different location on your computer. As a consequence of its mature status since early 2021, LAC's published versions have been divided into two classes according to two distinct installation methodologies. Even-numbered versions (8.40, 8.42, and 8.44) are installed in your private ~home filesystem for your private use, according to LAC's long-stable, long-documented conventions. You don't need "root" privileges to install any of these versions.

In contrast, odd-numbered versions (like 8.47) are installed in the global /usr filesystem for use by ALL users of your computer.

In both cases, user-specific configuration and log files are installed in a new, hidden folder named ".LAC" in the home folder of each user.

For an individual user, it doesn't matter very much which of these two versions you choose to install. The even-numbered versions (like 8.44) are better described in our online documentation and forums because everybody has more experience with that "classic" installation technique. Our FAQ and other publications still assume you are installing LAC in that way. Odd-numbered versions (like 8.47) are intended for new LINUX Distros, for publication in official or semi-official repositories, or for system administrators that want to make sure LAC is available to all users of a shared desktop LINUX computer.

All of this is best discussed in our "LAC in LINUX Repositories" forum HERE.





Changes in Lac08p48 and Lac08p51

Both of these versions derive directly from Lac08p44 (bypassing intervening versions). All of the aircraft, flight models, and missions are unchanged, so competitive, multiplayer aspects remain interoperable with all versions since 7.92. Version Lac08p51 differs only as required to support the well-known "AppImage" packaging and distribution norms.

However, one bug was fixed, new guidance is offered to help new users configure their systems optimally, and improvements were made to each of the Menus that describe an individual mission.

Because LAC now has 15 missions, there are 15 individual, descriptive, mission menus, and the purpose of each is to illustrate the aircraft that will be used, to describe the asssociated mission, to allow the player to choose a Realm and Team in which he wants to fly the associated mission, and to select among available starting points on the associated mission map.

Three enhancements were completed in each of those 15 menus. They are:

1 of 3: A list of active Sentient Players and any active Replay Blokes currently using the network in the selected Realm and Mission is displayed. This makes it much easier for new players to find the most active missions and/or to locate participating friends. (Note that this list is always empty for missions that do not support network access.)

2 of 3: A new button, labeled "CHECK FOR MULTIMEDIA", is displayed at the bottom center of the menu, immediately beneath the familiar set of buttons that have long been present on those descriptive, individual mission menus. When the operator clicks that button, LAC immediately attempts to activate the configured "PreferredBrowser" and to display a related web page, for the described mission, from AskMisterWizard.com. (The intent here is to play one or more brief "YouTube" video clips about the selected mission, showing exactly what the player can expect during the first minute or two after he commences the mission for himself.)

3 of 3: LAC's mission menus now offer very detailed, powerful text guidance to assist in configuring "CommunityHandle" and "mumble". For example, if mumble is not installed in any of the usual filesystem locations, LAC urges the player to install it. If the "CommunityHandle" has not been configured, LAC urges the player to configure it. After the CommunityHandle is configured, if mumble is installed and active, the player is instructed about options to disable LAC's active management of mumble if any incompatibilities are discovered in the user's specific environment. In that case, the user is urged to use mumble's native management tools instead, or to install and use mumble on a compatible phone or tablet.

The Morse Code Radio was enhanced with a new administrative command. By transmitting eight or more consecutive 'H" characters, new logic is triggered and the user is prompted (by new messages on the cockpit's SystemMessage Panel) to enter the text of their desired or new CommunityHandle, which is saved in the LacConfig.txt file and used thereafter exactly as one might expect. This makes it very easy for new users to configure their CommunityHandle from within LAC, diminishing the need to edit the LacConfig.txt file.

We found and fixed a bug that was making it cumbersome to activate LAC's menu items without a mouse. Although the numeric keypad's arrow keys have long allowed moving the mouse cursor around enough to navigate, activation of a selected menu button (by pressing the "ENTER" or "SPACE" keys) was always executing the selected function TWICE instead of just ONCE. This made it impossible to select alternative values for any of the "toggle" functions. That bug has now been fixed, so users that find LAC's menus cumbersome to navigate with a mouse can now do so with the same keyboard keys that LAC uses for view direction in flight.

The "AUTHORS" menu was also enhanced. It now displays the current version of LAC at the top of the scrolling authors report.

The cockpit display was also enhanced so that the "FLAPS" position is now displayed with a negative number. This makes more intuitive sense to players, since the flaps are "lowered" to increase their effect and "raised" to diminish their effect.

The "map" display is enhanced so that it now displays the name of the current mission.

The "NetworkMode" attribute is set to "67" by default within the LacConfig.txt file. This enhances LAC's standard keyboard map to take advantage of formerly unused keys on the numeric keypad. Users of laptop computers (and other computers lacking a full-sized keyboard) will find this helpful because it makes it easier to zoom the RADAR range and field of view in and out during missions. As a consequence of this change, the default arrangement of LAC's numeric keypad now looks like this:
LAC's numeric keypad command mapping
Version 8.48 is installed in the user's own "home" directory, according to our long-established pattern.



Changes in LAC 8.52

New version 8.52 derives directly from Version 8.48 (Lac08p48), bypassing intervening versions. All of the aircraft, flight models, and missions are unchanged, so competitive, multiplayer aspects remain interoperable with all versions since 7.92. Users that have been happily using version 8.48 and who have installed and configured Mumble for robust use within the LAC community will have little reason to upgrade.

However, new users will find that this version offers very helpful, additional guidance to get them started with a robust LAC experience.

Two significant improvements oriented toward optimal configuration and use are included. They are:

Improvement 1 of 2: New sign-on animation with instruction about navigating LAC's menus

Extensive online experience reveals that about 20% of LAC's players suffer with very slow response to mouse movement when menus are displayed. This has long been documented as FAQ #25. As therein explained, LAC's standard keyboard configuration compensates for this mouse pointer problem through easy navigation among menu buttons with the arrow keys of the numeric keypad. Affected users can just use those keyboard keys instead of their mouse pointer. Selected buttons are then toggled or activated by pressing the "ENTER" or "SPACEBAR" keyboard keys. Unfortunately, this option is not obvious to new players suffering from this problem, who may simply abandon LAC before discovering the simple solution.

Accordingly, I added new, animated instructive text to the initial signon animation. It displays "IF YOUR MOUSE POINTER RESPONDS TOO SLOWLY, YOU CAN NAVIGATE AMONG OUR MENUS WITH THE ARROW KEYS OF YOUR NUMERIC KEYPAD INSTEAD. AFTER HIGHLIGHTING A MENU BUTTON, ACTIVATE IT WITH <ENTER> OR <SPACE>". That new text starts out small and grows gradually larger for 14 seconds in order to attract enough attention to ensure it is seen by new users.

Improvement 2 of 2: User interface improvements for players that have not yet installed Mumble

All previous versions of LAC alert network players on the 3-line scrolling SystemMessagePanel whenever another player participating in the current mission presses the key configured as his Mumble "PTT" ("Push To Talk") key. For example, if the player with CommunityHandle "FRED" had configured "F1" as his Mumble "PTT" key for "NarrowCasting" according to our prevailing norms, when he held down "F1", all other players participating in his online, multiplayer mission saw the following message scroll onto their SystemMessage Panel:

   "NARROWCAST COMMS FROM FRED"

Following the same pattern, if FRED configured "F2" as his "PTT2" key for "MissionCasting" according to our prevailing norms, when he held down "F2", all other players participating in his online, multiplayer mission saw the following similar message scroll onto their SystemMessage Panel:

   "BROADCAST COMMS FROM FRED"

There was a little quirk in that logic: Even if the user had not installed Mumble, those Mumble Status Change Messages were still displayed in response to Fred's use of either of those keyboard keys. Of course, if Mumble was not present on the user's computer, those Mumble Status Change Messages were not very useful, and they might have confused new users. Furthermore, if a new user lacking Mumble ever attempted to transmit his voice through the "F1" or "F2" (Push-To-Talk) keyboard keys, his Mumble Panel would illuminate with status implying successful transmission of his voice, further confusing him.

This version improves that situation. If Mumble is installed and configured according to our norms, no changes will be apparent.

However, if Mumble is not installed, the user's cockpit instruments behave differently. The Mumble panel warns the user with a prominent message declaring "MUMBLE NOT INSTALLED" instead of "MUMBLE PANEL". Furthermore, instead of displaying the name of the current Mumble Channel, a message declaring "MUMBLE INACCESSIBLE. PLEASE INSTALL MUMBLE" is displayed by default. Attempts to use any of the Mumble-oriented channel-changing "hot keys" are ignored unless the user presses some of them in rapid succession, whereupon the "MUMBLE INACCESSIBLE. PLEASE INSTALL MUMBLE" message is temporarily replaced with "UNCHANGED". Whenever the player attempts to use either of his configured Mumble "Push-to-Talk" keys to attempt a Mumble TeamCast, MissionCast, Broadcast, Narrowcast, or Realmcast, the associated Mumble status message is colored grey and prepended with "CANNOT". When another network-connected user participating in the player's current mission transmits his voice for a TeamCast or a MissionCast via Mumble, any participating players NOT equipped with Mumble will see "VOICE NARROWCAST MISSED" or "VOICE BROADCAST MISSED" on their Mumble Panels, and a message like "FRED IS TRYING TO SPEAK WITH YOU" is scrolled through their 3-line SystemMessagePanel.

As a consequence of these changes, players that have not yet installed mumble are given constant, situation-appropriate feedback online about the resulting deficiencies. This will help new players to understand the value and importance of installing and using Mumble as they join and participate actively in the LAC online community.

I also updated and corrected spelling and punctuation in several of the aircraft selection menus.







Changes in Lac08p56


The flight model has been made more realistic as a consequence of torque-induced roll. This new torque-induced roll must be specifically switched on through LAC's menus, whereupon all propellor-powered aircraft except for the Lockheed P38 Lightning tend to roll in the direction opposite prop spin when flying too slowly for their ailerons and rudders to compensate, especially when at maximum power. (The P38 is the only prop aircraft that does not suffer from torque-induced roll because its two engines rotate in opposite directions, so that each engine cancels the torque induced by the other. Rocket and jet-powered aircraft do not suffer from torque-induced roll either.)

For most aircraft under normal flight conditions, this new torque-induced roll is a subtle effect of little consequence, and it is generally not felt at all when airspeeds exceed about 160 MPH. However, it will almost always be felt at takeoff and in low-speed turnfights, and the effect is greater for single-engine fighters equipped with large powerplants and props. In particular, the Vought F4u Corsair was notoriously difficult to take off because of its high torque-induced roll, and LAC's F4u suffers accordingly. Be gentle as power is applied during its takeoff, and (in any of the single-engine, prop-powered fighters) be ready to assert opposite aileron to steady any induced roll as soon as one of the wheels lifts off from the runway. In low-speed encounters, pilots that are aware of the quirks of torque-induced roll can gain an advantage in combat because their own aircraft may be able to roll a little faster in the direction favored by engine torque, and if they know that the aircraft they are opposing prefers to roll in the opposite direction, they may be able to compound that advantage by forcing the fight into rolls that the opposing aircraft cannot match.

As an option, this new torque-induced roll can be switched on or off. This is done from within LAC's "SETUP OPTIONS" -> "GAME" -> "DIFFICULTY" menu buttons, by cycling the value of "DIFFICULTY" back and forth between "2" and "3".

When "DIFFICULTY" is set at "2", all of the aircraft, flight models, and missions are the same as in prior versions since 7.92, so competitive, multiplayer aspects remain completely interoperable by default. Players that increase "DIFFICULTY" to "3" can still fly among other players using older versions, but their flight characteristics will be slightly more complex and more realistic.

All of the mission selection menus have been enhanced. Now, as the user views one of the menus describing any of the online, multi-user, server-based missions and cycles among the 32 associated realms, the "ACTIVE PLAYERS" list is immediately and dynamically updated with no need for the user to press the "UPDATE" button. The descriptive text associated with the most important and most popular mission/realm combinations has also been improved for better clarity and additional detail.

Consequently, as the user continues to click the menu's "REALM" indicator to cycle through the 32 realms that can host a particular mission, the names of all participating players are immediately updated in the prominent "ACTIVE PLAYERS" list. These improvements make it much easier for players to identify realm and mission combinations that are populated with Sentient players or with "Replay Blokes" (generated when the server replays previously recorded player activity).

The cockpit RADAR display was also enhanced. It now features a new indicator that announces "NO IFF" whenever the "Identify Friend or Foe" facility is switched off or disabled due to aircraft damage, airfield damage, or detected fratricide attempts. (Prior to this enhancement, some new users have been confused and mystified when the color of RADAR blips degraded to grey from their normal red or blue colors due to loss of IFF functionality.)


We also expanded LAC's aircraft selection menu by displaying new text that asks new players to fly online missions, to join Mumble, to join our forums, and to post favorable online reviews in order to expand our community. In order to make room for this new block of text I also moved the rotating aircraft image slightly to the left.

We also enhanced the text that displays the names and descriptions for all available online mission menus so that the old "TEST" labels now say "BETA TEST" instead, for better clarity. New text also advises users about the best realms for their use and the probability that the server may offer "Replay" missions in case no live, sentient players are participating. Browsing among the available missions and realms is now much more dynamic and responsive to the nuances of different mission/realm combinations. As a consequence, new members of LAC's growing user community will have an easier time finding other players or enjoying Replay Missions in Realms "00" or "01" when other players are not available.

Finally, we eliminated Linux Air Combat's "ESC abuse penalties" for anybody that is operating under all of these three conditions:

1 of 3: Mumble is installed
2 of 3: LAC is configured NOT to manage Mumble automatically
3 of 3: LAC is NOT running in full-screen mode.

It is very unusual for LAC users to operate under all three of those conditions, but when they do it is probably because they need to manage Mumble with their mouse pointer by clicking in Mumble's application frame displayed in a separate window adjacent LAC's application frame. In order to do that, they need to temporarily escape out of LAC, click something on the Mumble frame, and then return to LAC.

We don't want to penalize players for that behavior, because it is quite different from pressing "ESC" to temporarily flee from a threatening online combat situation.







Changes in Lac08p58

Three small bugs were fixed:

1 of 3: The "Query Forward Observer" function had been indvertently hard-coded to the Numeric Keypad's "ENTER" key. Several people have indicated a preference to use that Numeric Keypad "ENTER" key as an alternative Mumble "Push-To-Talk" key. Accordingly, this version removes the hard-coded coupling of "Query Forward Observer" with "NumEnter".

2 of 3: Destruction of a battleship moored adjacent an HQ airfield should propogate significant damage into that airfield, but a bug was interfering with that process. We fixed that bug.

3 of 3: The elevation of "SeaLevel" was changed in "Network Battle 02" from "50" to "46" because, under the Raspbian version of LINUX,  target selection logic within that mission was unable to select HQ airfields until the SeaLevel was dropped down to "46". We made this change effective for all versions of LINUX for the sake of consistency.

We also changed the default Realm from "00" to "01" because a long-term experiment has proved that the increased packet transmission rate in all odd-numbered Realms has resulted in smoother visual representation of online aircraft without causing any problems. As a consequence of this change, we expect Realm "01" to become our most popular Realm, and we have enhanced LAC's server with several powerful, dynamic new "Replay Bloke Missions" that ensure a much more interesting experience when a player finds himself all alone online.

We also adjusted the mission selection menus to clarify the new popularity and superiority of missions in Realm01.
The "Mission Notes" sections of each of our most popular missions are now dynamically adjusted according to the selected Realm and current availability of powerful new Replay Bloke Missions within Realm 01.



Changes in Lac08p59


Features in Version 8.59 are identical with features in Version 8.58, but (like all recent, odd-numbered versions), Version 8.59 installs in the global "/usr" filesystem. This installation technique requires root privileges, and although anybody that knows the "root" password can use it, it is intended for repository distribution or for publication in new desktop LINUX distros.






Changes in LAC 8.61


Features in Version 8.61 are identical with features in Version 8.58 and in Version 8.59, but Version 8.61 is distributed as a precompiled AppImage, ready to execute on any of the leading, popular desktop LINUX distros with no need to compile. An Internet search for "AppImage" or "AppImages" will yield lots of information on this emerging de-facto standard for universal LINUX application distribution. Further details can be found in our forums here:

https://sourceforge.net/p/linuxaircombat/discussion/lacandappimages/







Changes in Lac08p66

This is a more comprehensive update than most. You will notice several areas of improvement.

It is installed in the user's private /home filesystem where it can be accessed only by the user that installs it. Root privileges are NOT required for installation.

Sound effects are improved. You will hear a small improvement in engine noise according to your throttle setting, and a big improvement in wind noise according to your airspeed.

Players that rely on mouse and keyboard controls (because they have not connected a joystick or console game controller) will notice increased realism in the management of their throttle controls (previously the keyboard throttle controls allowed throttle settings far, FAR beyond reality....)

"Bot" logic is improved somewhat. The bots are still somewhat stupid, but it's fair to say that they are now LESS stupid and that their stupid, repetitive maneuvers now look more realistic.

"BLAKE'S MISSION" has been rewritten and is now stable. Accordingly, the menus no longer advertise it as "BETA TEST". This is now our simplest mission, taking place in a new rocky grassland terrain, and limited to pure fighter versus fighter dogfighting with no ground gunners or tail gunners. Bombers (and other aircraft with tail gunners) are not allowed.

The flight model has been improved for all aircraft if the player uses the "SETUP OPTIONS" -> "GAME" -> "DIFFICULTY" buttons to set "difficulty" to "4" or higher (or if he edits the corresponding "difficulty" setting within his hidden ~home/.LAC/LacConfig.txt file). When thus configured for increased realism, the flight model feels considerably more respectable when flying any of LAC's aircraft at extremely slow speeds. Roll rates and elevator responsiveness diminish, and the overall feel gets increasingly "mushy" as airspeed diminishes, more-or-less as a real pilot might expect. Landings and takeoffs are correspondingly more realistic, and attempts to turn or loop at extremely low speeds now have a much more realistic "feel". However, once airspeed exceeds stall speed by 15% or more, all flight characteristics return to the well-established and comfortable norms that have been in place since LAC07r90, and any player that always wants to enjoy that relaxed realism can just diminish the value of "DIFFICULTY" through LAC's prominent "SETUP OPTIONS" -> "GAME" -> "DIFFICULTY" buttons. At extremely high speeds with "difficulty" set above "3", compressibility effects and gun lethality are now more realistic. Joystick-based throttle responsiveness is also improved.



Changes in Lac08p67

Version Lac08p67 is identical to version Lac08p66 except that it is installed in the global /usr filesystem for use by everybody on the same computer. This version is primarily intended for Repository distribution, but it can be used by anybody that can get the "root" password, which is needed during the install process.




Changes in Lac08p69

Version Lac08p69 is identical to version Lac08p66 except that it is distributed, without source code, according to the well-known "AppImage" norms, precompiled for compatibility with all of the leading, popular desktop LINUX distros with no need for compilation. Just download the single .AppImage file, mark it as executable, and run it!







Changes in Lac08p71

LAC no longer disconnects or changes any mumble connection settings at startup, because users rejoining ongoing flights were suffering cumbersome, unwanted disruption of ongoing mumble conversations every time they started or re-started LAC. Now LAC only changes existing mumble channel settings when explicitly asked to do so or when the user switches to a different online mission.

On the other hand, LAC now tries to connect mumble to the "root" channel of our Mumble server whenever a user commences any of the four offline, tutorial missions. This will help experienced, online LAC pilots to use voice coaching through mumble in order to tutor newcomers during their initial, experimental use of those tutorial missions.

The default aircraft has been changed from "P38L" to "P51D" because newcomers were having too much trouble managing the P38's speed brakes and flaps.

All four of the offline tutorial missions have been enhanced. Descriptive menu text has been updated. Outdated references to missiles and rockets have been eliminated. Some of the bot aircraft have been changed from bulky, heavy bombers to agile fighters because the bombers could not pull out of dives quickly enough to avoid frequent ground crashes. Audio narrations accompanying the four offline tutorial missions have also been updated and expanded, so players now get additional coaching and are urged to begin exploring the online, multi-player, server-based missions.

The acoustic volume of wind and engine noises has been adjusted downward a bit because some computers were suffering from distorted, overmodulated sounds from time to time.

We fixed minor bugs in the logic that plays noises when the player's aircraft is damaged. Now the player can more clearly hear damage noises when bullets collide with his aircraft, but the noises heard when suffering damage from a hard landig are less irritating.

LAC's menus are now more responsive to mouse movements because the menu buttons are not highlighted when the cursor hovers over them unless the LacConfig.txt configuration file is edited to change "MenuHighlighting" from "0" to "1". Some computers (especially those equipped with the most modern graphics adapters) need this simpler menu configuration to avoid clumsy delays when the mouse is moved among LAC's menus. Most people will find no need to change the default value of "0" for this new "MenuHighlighting" variable, but those that prefer the prior, more visually appealing behavior can change "MenuHighlighting" to "1" to regain the prior appearance.

Some of LAC's menu text has been slightly adjusted to more clearly describe available missions. (The missions themselves are unchanged.)







Changes in Lac08p73

The cockpit's 3-line, scrolling, "SystemMessagePanel" has been enhanced. This display has long been programmed to discard any new message that exactly duplicates the previous message. This helps to minimize clutter, and avoids scrolling prior messages beyond the 3-line limits before they can be read. However, that logic left pilots unaware when identical events repeated over and over again. For example, a message like "YOU DAMAGED PLAYER 02" might be received 10 times in rapid succession during combat, but the pilot would only see it once. The improved version now displays a counter to the left of the lowest of the three scrolling lines (containing the most recent displayed text representing the most recent event). That counter cycles upward each time a new message would exactly duplicate the current message. Now players can see, at a glance, when a series of identical events is in process.

The mission menus have been optimized for better performance and quicker response to mouse motion, because some players, equipped with certin modern display adapters, have continued to suffer from slow, cumbersome response when moving their mouse pointers within those menus. (This improvement is in addition to the related improvement associated with the new "MenuHighlighting" setting, implemented in version 8.71, that's available in the LacConfig.txt file.)

We also fixed a minor bug in LacControls.txt that was double-mapping the "P" keyboard key to both "WEP" and "PREVIOUS TARGET" by default. Now the default settings use the "E" key for War Emergency Power.





Changes in Lac08p77

We found and fixed bugs that were corrupting the ballistic flight paths of falling bombs and unguided rockets. Before this was fixed, bombs and rockets that were accurately aimed when released would turn off-course in response to pilot maneuvers even after ordnance release. Unless the player continued in a perfectly straight line after releasing bombs or rockets it was nearly impossible to accurately hit the desired target. Now players are free to maneuver after ordnance release without corrupting the ballistic flight paths of bombs or rockets in flight.

The logic and advisory/instructive text displayed when the Norden Bombsight is active has been updated with additional recommendations about ideal altitudes and speeds for bomb release. Level bombers are now able to hit opposing airfields with greater accuracy.

As a consequence of this new ballistic flight logic, bombs and rockets "fly" somewhat differently. Experienced players will need to adjust their use of these weapons accordingly. In particular, it is now easier to hit targets with rockets, but players will need to exercise additional care NOT to collide with rockets during the first two seconds after they are launched, because their rocket motors need about 1 second to ignite, and it is possible for the pilot to collide with them if he is moving rapidly and maneuvering agressively.

Unfortunately, as a consequence of these flight model changes, "Bots" are now a bit more stupid. They sometimes make sudden, wierd changes in their flight direction when flying at low altitudes. This problem does not seem to affect bots flying at medium or high altitudes. We do not know what has caused this little problem and we hope to fix it in some future version.

We also made very small adjustments to the flight models of the Grumman F6F "Hellcat", the Mitsubishi A6M2 "Zero", and the Lavochkin LA5 and LA7 fighters. (These were very minor adjustments that will not be noticed by most players.)




Changes in Lac08p79 (V 8.79, from Jul2022)

With help from "Talas", we implemented a frame-rate limiter that diminishes frame rates for those with computers that run LAC so fast that it disturbs the accuracy of flight dynamics and sometimes suffer from related, wierd visual effects. This will not affect most users at the time of this writing in July of 2022, but as new computers become increasingly more powerful it will help to stabilize and normalize LAC's performance.

I tuned up the flight models of the FW-190 and F4u with very slight adjustments to better match their performance with historic and anecdotal records of the actual aircraft. The adjustments were very small and may not be noticed by most players.

I diminished take-off acceleration of all aircraft slightly, resulting in a small increase in realism. (Aircraft still accelerate too quickly during their takeoff run, but now the error is a little smaller.)

This version is distributed with full source code and it is installed in the global /usr filesystem like most linux applications.




Changes in Lac08p81

Version 8.81 exactly duplicates the features of Version 8.79 except that it is precompiled and packaged into an "AppImage" with all required libraries and other prerequisites, according to the well-known AppImage conventions. Accordingly, there is no need to compile it, and the source code is not provided in the download. Just download the single file, mark it executable, and run it. Further details about LAC and AppImages are available in our forums here:

https://sourceforge.net/p/linuxaircombat/discussion/lacandappimages/






Changes in Lac08p83

Version 8.83 derives directly from version 8.79 (described as Lac08p79 above). We fixed a bug in the throttle management for players using the keyboard keys "[" and "]" to decrease and increase throttle (players without a hardware throttle of the sort commonly found in joysticks and USB Game Controllers). The bug had prevented players from diminishing their throttles all the way to zero when landed, causing their aircraft to constantly roll slowly forward, eventually falling over the cliffs beyond the end of the runway.

We also fixed bugs that had failed to properly adjust the acoustic volume of the engines as WEP was activated and de-activated.

Finally, we increased the RollRate of the Tempest because historic records indicate it could roll quite nicely. It is now easier and quicker to maneuver.

Users with version 8.79 will have little reason to upgrade to this version 8.83 unless they are using keyboard controls for throttle (lacking a hardware throttle of the sort in common use with a joystick or USB console game controller) or if they like to fly the Hawker Tempest.

This version is distributed with full source code and it is installed in the global /usr filesystem like most linux applications.






Changes in Lac08p85

Version 8.85 derives directly from version 8.83 (described as Lac08p83 above). We enhanced the external view mode to give the player a much better view of his own aircraft. Immediately upon toggling the view mode into "External", the player will view his aircraft from "chase" mode, more-or-less as before. However, if he then activates "look left" or "look right", the origin point of his external view responds by circling around his aircraft to the left or to the right, from a reasonable distance, continuing to circle around his aircraft, while looking directly at it, for as long as he continues activating "look left" or "look right". Additional new view angles are also available if the player activates the "look down" or "look up" functions while in external mode. Accordingly, the player can now view his aircraft from any desired angle.

External view of P38
A sample of our new external view. For the first time it's now possible to view your own aircraft from almost any angle.

We also fixed a subtle bug in the logic that repairs damaged airfields. That logic accelerates repairs when nearby airspace is dominated by friendly players, and it decelerates repairs when nearby airspace is dominated by hostile players. The intent was that repair acceleration and deceleration would be affected ONLY by Sentient, online players. However, extensive online experience revealed that the near presence of friendly replay blokes was accelerating repairs, and the near presence of hostile replay blokes was decelerating those repairs. This made it too easy for replay blokes to prevail in the large, complex battles that have become commonplace in Realm01. With that bug fixed, it is now more practical for online players to destroy hostile airfields with sustained bombing, rocket, and strafing attacks, even if they are outnumbered by hostile replay blokes near the targetted airfields.

The speed brake of the Lockheed P38L "Lightning" was enhanced. Historic records reveal that activation of the P38L speed brake resulted in a noticeable uplift of the flight path, described as "raising the nose in flight". Now our P38L exhibits this behavior in response to its speed brake.

The engine power of the Russian IL2 "Sturmovik" was increased slightly, making it a little easier to lift it off the runway when fully loaded.

We enhanced conf.cpp so that the "16" bit of "NetworkMode" is now set by default, and consequently, a default configuration of LAC can now generate all of the most important audio status messages (generally those relating to selecting or localizing a target) with no need for the optional, external "espeak" text-to-voice application. The enhancements also expand the associated commentary text within the "LacConfig.txt" file to help users understand and configure the value of that bit within the "NetworkMode" variable. This change is more convenient for new users (who might not know anything about espeak yet). Users that install the well-known "espeak" text-to-speech helper application will now need to SUBTRACT "16" from the value of "NetworkMode" to inform LAC to seek and use espeak. Further information about LAC's use of espeak can be found in our forum HERE.







Changes in Lac08p87

This version derives directly from Lac08p85. As an odd-numbered release, it installs in the global /usr filesystem.

Gun and Cannon Lethality increased!

After extensive experience among LAC's online community, we are reaching a growing consensus that LAC's combat is not as deadly as the actual air combat described in available historic records from World War II. It has long been too rare for quick "ambush"-style encounters to bring down an opponent in LAC.

Accordingly, we re-balanced the durability and lethality settings for all of the aircraft.

We DOUBLED the lethality of all of the aircraft guns, and then we also cut the durability settings in half.

The two primary consequences of these two changes will be:

    1 of 2: After two opponents have both upgraded to this new system, guns will bring down opponents 4X faster (because both sets of guns will be twice as lethal and both involved aircraft will be twice as vulnerable).

    2 of 2: When only ONE of two opponents has upgraded to this new system, he will be able to bring his opponent down 2X faster (because his guns will be twice as lethal), but his opponent will also be able to bring him down 2X faster (because his durability will be only half as great).

This approach should result in fair, reasonable impact upon the LAC community as we all upgrade: Everybody has a nice incentive to upgrade, but it's still fair to those who have not yet upgraded.

Tracer Bullets improved

We also enhanced the visual appearance of tracer fire. Tracer bullets are now colored white instead of black, and the bullets in the bullet stream now look a lot smaller. Bugs in gun vibration logic are diminished and gun vibration is lessened, so tracer fire generally looks more stable.

We fixed some bugs in the artificial intelligence of bots. The bots are somewhat less stupid than before (still stupid, but not AS stupid). Bots no longer make magical, impossible leaps and lurches at low altitudes, and they no longer crash into the ground as frequently.





Changes in Lac08p89

This is an AppImage version ready for immediate execution on X86 hardware with any of the most popular desktop LINUX distros. No need to compile it. It includes all of the best features of all prior versions, resulting in exactly the same characteristics as version Lac08p87 (described above).





Changes in Lac08p94


Optimized Support for Valve's "Steam Deck" portable console gaming PC

Valve Steam Deck running LAC.
Valve Corporation's "Steam Deck" is the premier portable "Gaming Console" PC at this time. Big enough to draw even burly military veterans into computer gaming and built on top of Arch Linux, it has plenty of power to run Linux Air Combat. New AppImage version "8.94SD" was our first attempt to optimize LAC for easy use on the Steam Deck (and for other gaming environments whose primary flight controls are patterned after today's common "Console Game" controllers). Valve Steam Deck users: Note that this version 8.94SD cannot automatically manage the Steam Deck's  popular "FlatPack" version of "Mumble" for voice communication. For voice communication with other LAC players, those with this version of LAC must manage Mumble manually.

LAC missions can now be flown much more effectively without any access to a keyboard. This is of particular value to those using LAC on Valve's "Steam Deck" portable console gaming PC, since no keyboard is available during flight.

We found and fixed one bug that was corrupting throttle settings from the joysticks of console game controllers whose only axis handles always have a spring loaded return-to-center construction.

A new "Tap Menu" is available to players that use a console game controller instead of a conventional aircraft-oriented joystick. When those players tap the controller button designated for "Target Vocalize", a menu of 12 different commands enters the cockpit's 3-line, scrolling SystemMessage panel. The first displayed menu option is "Vocalize", and if the player doesn't tap that button again within 3 seconds, the Target Vocalize function is activated. However, if the player taps that button again before 3 seconds, the next menu item is displayed and IT will execute within 3 seconds. Any additional quick taps of that button will cycle through all 12 of those menu options, and the player can ensure that any of them is executed, at his choice, 3 seconds after he stops tapping and scrolling through the options. This is a workable substitute for a keyboard, and it grants easy access to several important functions that are not very time-critical in combat but that are otherwise inaccessible without a keyboard.

Bigger RADAR icons and Target Reticles: Players with poor eyesight, those playing in sunlight or where room lighting makes visibility difficult, or those using very small displays (like the Steam Deck) can configure LAC to display bigger, bolder RADAR icons and Target Reticles to improve visibility. This is done by setting the "128" bit of "NetworkMode" according to LAC's longstanding norms. The explanatory text introducing "NetworkMode" within the LacConfig.txt file has been updated to help new users with this.

Default Keyboard, Joystick, and Console Game Controller command mapping has been optimized for diverse build platforms. Of course, it is still easy for users to modify the control mapping according to their personal wishes by exercising LAC's menus or by editing the LacControls configuration file within the hidden ~home.LAC folder, but the default values now automatically adjust for the Steam Deck or for a standard keyboard when the software is compiled for each such platform.

We fixed a bug in the keyboard mapping for "Fire Secondary Weapon". The default key for this is now the "Right Alt" key, and there is no longer any need to edit the LacControls.txt file to configure this.

Source Code Unification: This version unifies all of the source code and features for all of the previously distinct target platforms on which Linux Air Combat has become popular. This will accelerate development and distribution of new versions and support for additional specialized platforms in the future. Accordingly, hereafter we will use this source code and its derivatives as the basis for all future public distributions of:


As a consequence of this source code re-organization, unless the "AppImage" version is in use, it will always hereafter be ESSENTIAL that LAC's regular executable program is located in the global /usr filesystem at /usr/bin/. For example, with this version, it will generally be "/usr/bin/Lac08p94" or "/usr/bin/lac".

That requirement for location at /usr/bin is new. About six months ago we began recommending that change, but developers have known that they could still execute from their own /home filesystems without bothering to install the result. That has changed. Developers will now need to copy their test versions into /usr/bin before they can exercise their improvements or modifications.

This will affect LAC's version numbering. In the past we had reserved odd-numbered versions for AppImages and for versions of LAC that were intended for installation in the global /usr filesystem. We had reserved even-numbered versions for installation in the /home filesystem. It's been about six months since we published an even-numbered version, since those /home installations were deprecated.

Now that all versions are unified, we are no longer skipping even-numbered distribution names. (This version 8.94 is the first such example, since "94" is an even number.)

Hereafter we may use slight modifications to the filenames of LAC's published executables to indicate any intended specialization according to hardware architecture. For example:

"Lac08p94-x86_64.AppImage" indicates a binary executable AppImage formatted for compatibility with all popular Linux Distros using industry-standard 64-bit x86 processor architecture.

"Lac08p94SD-x86_64.AppImage" indicates an executable AppImage compiled specifically for the 64-bit x86 processor architecture and controls of Valve's "Steam Deck" console gaming computer.

"Lac08p94Pi" indicates an executable compiled for Raspberry Pi on the Raspbian operating system.

We simplified the P38's handling of speed brakes. In this version, the P38's nose no longer pitches up when speed brakes are active, because it's too hard for Steam Deck players (or anybody flying with a console game controller instead of an aircraft-oriented joystick) to normalize it afterward, since they lack any buttons for elevator trim.




Changes in Lac894SD.AppImage

Version Lac894SD-x86_64 is identical with version Lac08p94 but it is packaged as an AppImage and its default configuration maps all flight controls for optimal use with Valve's "Steam Deck" portable console gaming PC.

Steam Deck controls mapped for LAC.
Default control mapping for Linux Air Combat on the Steam Deck. The right analog joystick handles elevator and aileron surfaces for primary flight control. The left analog joystick handles throttle and rudder. The D-PAD controls view directions Left, Right, Forward, and Back for the player's left hand, and the left trigger, just in front of the resulting "Look FWD" button, invokes "Look Up". The right trigger (not shown) activates primary machine guns and/or cannons.  Other single-mode and multi-mode controls work as illustrated. The user can issue sequential taps thru the right joystick's hidden click button to display and activate a new "Tap Menu" as described in the description for Lac08p94 above. When configured this way, players need NEVER touch their keyboard in flight.





Changes in Lac08p95

Version Lac08p95 derives directly from Version Lac08p94 and includes all of its features (including those of the "SD" version used on the SteamDeck).  Most of the changes are oriented toward optimizing LAC's use on the Valve "Steam Deck" console gaming PC as a consequence of five "Steam Deck Improvements" as follows:

         " I HAVE NO KEYBOARD. "
   " I ONLY SEND YES/NO, & SOME PROGRAMMED MSGS. "
   (if a member of the RedTeam)
" I CANT XMIT MUMBLE VOICE ON BLUE CHANNEL. "
   (if a member of the BlueTeam) " I CANT XMIT MUMBLE VOICE ON RED CHANNEL. "

          Immediately after switching Mumble to the Mission Channel, the following Morse Code Radio text message is automatically broadcast to all players:

           " TO HEAR ME ON MISSION CHANNEL, PLS HIT F11. "

          Immediately after switching Mumble to the TeamCast Channel, the following Morse Code Radio text message is automatically broadcast to all players:

           " SWITCHING MUMBLE TO MY TEAMCAST CHAN... "

Note that none of the "Steam Deck" changes will have value to players that have a conventional keyboard. Unless you are using the Valve Steam Deck or otherwise prefer to control flight with a console-style USB game controller without a handy keyboard, you will have no need for those improvements.

We also fixed some bugs in the mission-ending conditions for the online, multi-player, server-based missions. Because it is so difficult for players flying all alone to achieve victory in any of these missions, very very few people have ever experienced these bugs, and unless you are participating online in cooperation with others it is unlikely that you will benefit from these fixes.

We eliminated the need for players to tune to their appropriate TeamCast channel before querying their Forward Observer for the status of the selected enemy airfield. Now the player can successfully query his Forward Observer whenever he has designated an enemy airfield as his current target.




Changes in Lac09p01

This version adds:

We also fixed a bug in all of the online, server-based, multi-player missions that was leaving the RADAR antenna floating in space after its airbase was destroyed. Now when an airbase is destroyed, the associated RADAR antenna falls to the ground in a heap of rubble as it should.







Changes in Lac09p14

This version adds:

Further improvements in the behavior of off-line "bot"aircraft in all of the missions. Bots now fly more smoothly, with fewer ubrupt, un-natural-looking manoevers, and with a greater variety of tactical actions. They don't crash into the ground as frequently, and their mix of automated manoevers is now expanded with more horizontal turns in addition to vertical ones.

The "FIGHTERS TUTORIAL" mission has been cleaned up and enhanced. For example, the displayed tutorial text has been trimmed down, and we fixed a bug in that mission that was preventing damage when the player's aircraft collided with another. Now collisions in the FIGHTERS TUTORIAL mission result in violent, appropriate damage or destruction, as in the more sophisticated, online, server-based, multi-player missions. With these mission-specific improvements and the general improvement in the automated flight of bots, the "FIGHTERS TUTORIAL" mission is now an appropriate and challenging introduction to LAC. The online, multi-player, server-based missions are still a lot more fun and more interesting than the tutorials, but the gap is now not so wide.

NOTE: WE FOUND A TACTICALLY SERIOUS BUG IN THIS VERSION 9.14: AIR-TO-GROUND ROCKETS DO NOT WORK PROPERLY IN ANY OF THE ONLINE MISSIONS IF OTHER ONLINE PLAYERS OR REPLAY BLOKES ARE ACTIVE. Somehow this bug escaped the attention of our beta testers, probably because those air-to-ground rockets DO work properly in the offline missions and even in the online missions if the player is the only network entity participating.









Changes in Lac09p15

This version fixes the bug that prevented proper use of air-to-ground rockets in the online missions of the prior version.








Changes in Lac09p32

Recently the LAC community has suffered from a perplexing incompatibility when some desktop LINUX distros are updated with the latest patches and upgrades. As of this writing on 31Jul2023 we have experienced this problem on recent versions of Manjaro and Linux MINT systems.

The symptoms render LAC's menus useless. Although all of the menu items are displayed properly, clicking on displayed menu items never has any effect. Even when using keyboard keys to navigate LAC's menus, operators are still unable to activate any of the displayed menu items.

It has always been possible to edit LAC's "LacConfig.txt" file instead of clicking on menu items to configure most of LAC's options. In fact, the only obvious things that COULDN'T be configured this way are (1) selection of a mission and (2) designating one of the three possible spawn points thereof.

With this version 9.32, we enhanced LAC's "LacConfig.txt" logic to designate a "DefaultMission" and a "DefaultSpawnLocation". Following the established pattern for variables managed through LacConfig.txt, this is done by editing the file with a simple text editor, searching for "DefaultMission", and entering a small integer value (besides zero, acceptable values range from 8 to 32). When DefaultMission is set non-zero, LAC immediately activates the associated mission without ever demanding input to any menus. For users willing to edit the LacConfig.txt configuration file, this enhancement allows users complete control over LAC's myriad options even if their menu systems never respond to the usual mouse clicks or keyboard selection techniques.

To help new users learn about this change, several paragraphs of related, informational text are now displayed adjacent affected menus.

The explanatory text within the LacConfig.txt file has been expanded with extensive documentation of the new "DefaultMission" variable and comprehensively lists all of the acceptable values, making it easy for new users to designate any desired mission.

When "DefaultMission" is set to a value representing one of LAC's missions, LAC quickly and automatically cycles through all of the menus and automatically launches the designated mission. (If the user needs more time to read the mission menu before it is automatically closed to launch the mission, he can postpone its closure by keeping his mouse pointer in motion. The mission commences after six seconds without mouse motion.)

When "DefaultMission" is set to zero, all of the features of this new version 9.32 are identical with the previously published version 9.15.











Changes in Lac09p33

AppImage Version 9.33 derives directly from Version 9.32 (described above). There are just two differences:

1 of 2: This is a precompiled "AppImage" version, compatible with industry-standard "X86" hardware on all popular desktop Linux distros, with no need to compile or  to  install any prerequisite library components. You can learn more about LAC AppImages from our  forums  here:

https://sourceforge.net/p/linuxaircombat/discussion/lacandappimages/

2 of 2: Some of the instructive new prompting text was expanded for clarity, and users that configure a DefaultMission are better able to spend more time viewing mission menus before they automatically expire.








Changes in Lac09p35

When LAC is invoked from a bash shell, users can now specify additional details from the command line. To help new users learn how to construct an appropriate and useful command line, all of the new command line options are displayed to the user in response to any command that launches LAC but includes any parameters that LAC cannot understand. For example, if the user enters a command line like this:

lac helpme

....Then the following enhanced messages are now displayed in addition to the old ones:


   Usage: Lac [-h] [-m] [-nMissionNumber] [-tTEAM] [-v] [-dLEVEL]

   -h: Display this help screen and quit

   -m: Request Mouse control instead of joystick.

   -nMissionNumber: Set DefaultMission for automatic activation, bypassing menus,
     where MissionNumber is one of:
       Tutorial 1 (Getting Started with the Basics)    8
       Tutorial 2 (Ground Attack Basics)              12
       Tutorial 3 (Fighter Tactics)                   10
       Tutorial 4 (Free Flight with no opposition)    31
       Network H2H: (Two Players only)                32
       Network Battle 01                              20
       Network Battle 02                              21
       Network Battle 03                              23
       Hyrum's Mission                                24
       Blake's Mission                                25
       Peabody's Mission                              26
       Net Mission 07                                 27
       Net Mission 08                                 28
       Net Mission 09                                 29
       Net Mission 10                                 30

   -tTEAM: Configure Team, where TEAM = r or b (red or blue).

   -v: Display version string and quit

   -dLEVEL: Set debug LEVEL to 0=silent... 4= show Network-related logs... 5=log all

As you can see, users can now designate a DefaultMission and their desired team affiliation from the command line. For example, to play on the BlueTeam in Network Battle03, the command line would be:

   lac -tb -n23

When "DefaultNetwork" is set to the default value of zero and menus are used according to longstanding LAC practice, the features of this version are identical with Lac09p15.









Changes in Lac09p36

This version derives directly from Lac09p35 (described immediately above) and adds command-line support for designating the DefaultAircraft. Accordingly, by appending as many as three arguments to the command line invoking LAC, the user can now designate any combination of:

   DefaultMission
   DefaultAircraft
   Team Affiliation.

If the user needs help understanding the command line arguments, he can issue a command like this:

   lac -help

Whereupon he sees the following text displayed:

======= BEGIN COMMAND LINE HELP TEXT =======

Usage: Lac [-h] [-m] [-nMissionNumber] [-pPlaneNumber] [-tTEAM] [-v] [-dLEVEL]

-h: Display this help screen and quit

-m: Request Mouse control instead of joystick.

-nMissionNumber: Set DefaultMission for automatic activation, bypassing menus,
  where MissionNumber is one of:
    Tutorial 1 (Getting Started with the Basics)    8
    Tutorial 2 (Ground Attack Basics)              12
    Tutorial 3 (Fighter Tactics)                   10
    Tutorial 4 (Free Flight with no opposition)    31
    Network H2H: (Two Players only)                32
    Network Battle 01                              20
    Network Battle 02                              21
    Network Battle 03                              23
    Hyrum's Mission                                24
    Blake's Mission                                25
    Peabody's Mission                              26
    Net Mission 07                                 27
    Net Mission 08                                 28
    Net Mission 09                                 29
    Net Mission 10                                 30

-pPlaneNumber: Configure default airplane, where PlaneNumber is one of:

Whimsical      jet   Hawk:            201        Fiat           G55   Centauro:        202
Messerschmidt  ME109 Bf109            203        Curtis         P40   Warhawk          204
Hawker               Hurricane        205        Nakajima       KI43  Oscar            206
Supermarine:         Spitfire         207        Polykarpov     I-16  Horsefly:        208
Junkers        JU87  Stuka:           209        Mitsubishi     A6M2   Zero:           210
Chance Vought  F4U   Corsair:         211        Grumman        F6F   Hellcat:         212
Lockheed       P38   Lightning:       213        Republic       P47   Thunderbolt:     214
North American P51   Mustang:         215        Boeing         B17   Flying Fortress: 216
Focke-Wulf     FW190 Butcherbird:     217        Yakolev              YAK9:            218
Nakajima       N1K1  Shiden:          219        Consolidated   B24   Liberator:       220
Bell           P39   Airacobra:       221        Mitsubishi     G4M   Betty:           222
North American B25   Mitchell:        223        Martin         B26   Marauder:        224
Grumman        F4F   Wildcat:         225        Lavochkin      LA5   Fantail:         226
Lavochkin      LA7   Fin:             227        Ilyushin       IL2   Sturmovik:       228
Machi          C.202 Folgore:         229        Avro                 Lancaster:       230
De Haviland    DH.98 MosquitoB:       231        Hawker               Typhoon:         232
Yakovlev             Yak1:            233        Boeing         B29   Superfortress:   234
Dewoitine            D.320:           235        Curtiss        SB2C  Helldiver:       236
Grumman        TBF   Avenger:         237        Messerschmidt  ME163 Komet:           238
Hawker               Tempest:         239        Aichi          D3A   Val:             240
Nakajima       B5N   Kate:            241        Douglas        SBD5  Dauntless:       242
Messerschmidt  ME110 Zerstorer:       243        Dornier        DO17:                  244
Heinkel        HE111:                 245        Junkers        JU88:                  246
Nakajima       KI84  Hayate:          247        Kawasaki       KI61  Hien:            248
Generic        Fighter Generic01:     249        Mitsubishi     A6M5  Zero:            250
Supermarine    MK5   Spitfire:        251        North American P51B  Mustang:         252
Republic       P47B  Thunderbolt:     253        Messerschmidt  ME109F:                254
Lockheed       P38F  Lightning:       255

-tTEAM: Configure Team, where TEAM = r or b (red or blue).

-v: Display version string and quit

-dLEVEL: Set debug LEVEL to 0=silent... 4= show Network-related logs... 5=log all


 For help configuring joystick and keyboard,
 we recommend avoiding full-screen mode so you
 can see status messages, and running at debug level 4.
 Status messages in your main window will then show
 the value of keypresses and joystick buttons as they
 are detected during the game. Use those values as you
 edit the file named LacControls.txt which you will
 find in your home folder's .LAC directory. Edit that
 file with a simple text editor. Retain the general
 format of the file while changing the numeric values
 associated with keyboard key commands or joystick button
 commands. This will allow you to associate any keyboard
 key or any joystick button with any supported flight function.

===== END COMMAND LINE HELP TEXT =====


As you can see, the help text is comprehensive, and users now enjoy great flexibility launching LAC from the command line with minimal need to use menus or to edit the LacConfig.txt configuration file in advance. This is especially useful in situations where LAC's menus are rendered useless due to unknown incompatibilties in recently upgraded desktop LINUX distros.

Now the user can designate DefaultAircraft, DefaultMission, and Team affiliation from the command line. For example, to fly a Grumman F6F "Hellcat" for the BlueTeam in Network Mission 03, the user could issue commands like any of the following:

   lac -p212 -tb -n23
   lac -tb -p212 -n23
   lac -n23 -p212 -tb
   lac -p212 -n23 -tb

The player can issue more than one command line argument, and the order in which those arguments are issued generally does not matter. In all of those command lines, the "-n23" argument refers to Network Battle 03, and the "-p212" argument refers to the Grumman F6F Hellcat, as described in the helpful text that the user can see whenever he invokes lac with any command line argument that LAC does not understand, like:

   lac -help

When "DefaultMission" is set to the default value of zero and menus are used according to longstanding LAC practice, the features of this version are identical with Lac09p15.











Changes in Lac09p37

This version derives directly from Lac09p36.

We fixed a bug that was corrupting flight input for players lacking a joystick or console game controller and that must rely on their mouse pointer to control elevators and aileron as primary flight controls. Now players that use their mouse pointer for primary flight control can enjoy a MUCH MUCH better flight experience.

(That bug appeared back in Lac09p13 and has been present, with certain variations, in at least some of our missions all the way through Lac09p36). None of our beta testers reported the bug because they are all using joysticks.)








LAC Server Updated to Version 90

In August of 2023 we updated the LAC Server to version 90, which allowed us to publish a dynamic new web page, updated every 60 seconds, with a list naming all of the current online players. Now it is much easier to determine whether any "Sentient" human players are participating, and to find them in the mission(s) they are using.

CLICK HERE to examine this powerful new feature.

Here's a snippet showing a typical bit from that new web page, arranged as a list of player names that were active between a series of prominent timestamps:
Realm = all. Timestamp:   Mon Aug 21 14:19:02 UTC 2023
 Pilot REPLAY07 is Player # 7 in Realm = 1, NETWORK BATTLE 02
Realm = all. Timestamp: Mon Aug 21 14:20:01 UTC 2023
 Pilot REPLAY01 is Player # 1 in Realm = 1, NETWORK BATTLE 02
Pilot REPLAY07 is Player # 7 in Realm = 1, NETWORK BATTLE 02
Pilot REPLAY07 is Player # 7 in Realm = 1, NETWORK BATTLE 03
Pilot GARFIELD is Player # 9 in Realm = 1, NETWORK BATTLE 01
Pilot REPLAY07 is Player # 7 in Realm = 1, NETWORK BATTLE 02
Pilot POLK is Player # 4 in Realm = 1, NETWORK BATTLE 01
Pilot REPLAY03 is Player # 3 in Realm = 1, NETWORK BATTLE 02
Pilot GARFIELD is Player # 9 in Realm = 1, NETWORK BATTLE 01
Pilot REPLAY07 is Player # 7 in Realm = 1, NETWORK BATTLE 02
Realm = all. Timestamp: Mon Aug 21 14:21:01 UTC 2023
Realm = all. Timestamp: Mon Aug 21 14:22:01 UTC 2023
 Pilot REPLAY07 is Player # 7 in Realm = 1, NETWORK BATTLE 02
Pilot POLK is Player # 4 in Realm = 1, NETWORK BATTLE 01
Pilot REPLAY07 is Player # 7 in Realm = 1, NETWORK BATTLE 02
Pilot GARFIELD is Player # 9 in Realm = 1, NETWORK BATTLE 01
Pilot REPLAY07 is Player # 7 in Realm = 1, NETWORK BATTLE 02
Pilot REPLAY07 is Player # 7 in Realm = 1, NETWORK BATTLE 03
Pilot REPLAY01 is Player # 1 in Realm = 1, NETWORK BATTLE 02
Pilot POLK is Player # 4 in Realm = 1, NETWORK BATTLE 01
As you can see from that report, two players, named "Polk" and "Garfield" were active in Realm 1's "Network Battle 01". All of the other players were "Replay Blokes" populating "Network Battle 02" and "Network Battle 03".









Changes in Lac09p44

We fixed a bug that was making it difficult for users with fast, powerful computers to exit LAC when the "DefaultMission" mode was active. Now LAC exits immediately and easily from DefaultMission mode as soon as the player presses the "ESC" key.

LAC now handles aircraft on the runway in a much more realistic and satisfying manner: Network peers that are nearby on runways no longer suffer from frequent visible "jitter", the landed player can use rudder to turn left or right much better, and landings come to a much more gradual, more realistic stop with a more realistic "runout".

Users can now enable or disable optional "segmentation fault" protection by setting or clearing the "256 bit" of "NetworkMode" within the LacConfig.txt file. This "Segmentation fault" protection logic is normally ON, but most systems don't need it and disabling it can improve framerate and general visual smoothness. Disable it by setting the "256" bit.

Users can now also enable or disable the optional "frame-rate limiter" by setting or clearing the "512 bit" of "NetworkMode" within the LacConfig.txt file. This frame-rate limiter is needed only by very fast computers, whose display hardware allows very very very high framerates, causing disturbing visual anomalies. Users that don't need the frame-rate limiter may see an improvement in framerate and in general visual smoothness. Disable it by setting the "512" bit.









Changes in Lac09p45

Further improvement of LAC's handling of aircraft on runways and otherwise moving around on the ground. Landing runouts are extended a bit more. Flaps are auto-retracted after landing and after ground speed dissipates.

The "help" text displayed on the command console in response to erroneous LAC command-line arguments are now further enhanced to include instruction on how to disable the new "DefaultMission" mode and return LAC's behavior to the legacy mode that relies on displayed menus in order to select missions, aircraft, and team affiliation.

The "help" text within the LacConfig.txt file is similarly enhanced.











Changes in Lac09p46

LAC's flight model is slightly improved for all aircraft. We added a slight "burble" or "flutter" at the onset of accelerated stalls. Accordingly, when the player exerts a strong turn and suffers heavy "g" forces, the aircraft begins to bounce and "flutter" realistically, and the player sees the results visually. The effect is subtle but improves the overall feeling of violence experienced by real pilots in combat.









Changes in Lac09p47

Further improvement in LAC's handling of aircraft moving around on the ground. When traveling over sloping or bumpy ground, the player's airplane now bounces and rolls accordingly.








Changes in Lac09p48

LAC's command line parser has been made much more comprehensive. Now the user can use command line arguments to specify everything of any importance that users have been configuring from LAC's menu buttons. As a consequence, whenever LAC's menu logic is incompatible with a user's hardware or software, there is a reasonable option to completely bypass LAC's menus by providing command line arguments. Although it is still possible to configure everything by editing the LacConfig.txt file, only the most unusual situations will hereafter demand that approach. If the user enters "lac -help" on the command line, LAC provides comprehensive instruction for use of all command line arguments. Here is what that comprehensive instruction looks like:

========== BEGIN EXAMPLE OF LAC'S HELP INSTRUCTION ===========
  Usage: lac [-aAUDIOLEVEL] [-bBACKGROUNDMUSIC] [-cCONFIGOPTIONS] [-dDEBUGLEVEL] [-eEFFECTSONOFF] [-fFOGDISTANCE] [-h] [-lLIGHTINGDYNAMIC] [-m] [-nMISSIONNUMBER] [-pPLANENUMBER] [-qQUALITY] [-sSCREENFULL]  [-tTEAM] [-v] [-xHORIZONTALRESOLUTION] [-yVERTICALRESOLUTION]
  -aAUDIOLEVEL: Set audio level for sound effects, where AUDIOLEVEL is from 0 to 100 (percent).
  -bBACKGROUNDMUSIC: Set background music level, where BACKGROUNDMUSIC is from 0 to 100 (percent).
  -cCONFIGOPTIONS: Set bit-coded configuration options (also known as NetworkMode. Read LacConfig.txt for more details).
  -dDEBUGLEVEL: Set debug level from 0 to 5, where 0=silent, 1= min, 2=low, 3=default, 4=log network details, 5=log all.
  -eEFFECTSONOFF: Enable visual Special Effects by setting EFFECTSONOFF to 1,
   or Disable visual Special Effects with 0. (Disabling may improve framerate.)
  -fFOGDISTANCE: Designate Fog Distance, or the distance that can be seen through
   atmospheric mist or fog. Set FOGDISTANCE between 30 and 230. Higher values look
   better but lower numbers yield smoother operation and better frame rates.
  -h: Display this help screen and quit
  -lLIGHTINGDYNAMIC: Set LIGHTINGDYNAMIC to 1 to enable dynamic lighting, or
    0 to disable dynamic lighting (default = disabled).
  -m: Request Mouse control instead of joystick.
  -nMISSIONNUMBER: Set DefaultMission for automatic activation, bypassing menus,
    where MISSIONNUMBER is one of:
      None (Disable DefaultMission and use Menus)     0
      Tutorial 1 (Getting Started with the Basics)    8
      Tutorial 2 (Ground Attack Basics)              12
      Tutorial 3 (Fighter Tactics)                   10
      Tutorial 4 (Free Flight with no opposition)    31
      Network H2H: (Two Players only)                32
      Network Battle 01                              20
      Network Battle 02                              21
      Network Battle 03                              23
      Hyrum's Mission                                24
      Blake's Mission                                25
      Peabody's Mission                              26
      Net Mission 07                                 27
      Net Mission 08                                 28
      Net Mission 09                                 29
      Net Mission 10                                 30
  -pPLANENUMBER: Configure default airplane, where PLANENUMBER is one of:
    Whimsical      jet   Hawk:            201        Fiat           G55   Centauro:        202
    Messerschmidt  ME109 Bf109:           203        Curtis         P40   Warhawk:         204
    Hawker               Hurricane:       205        Nakajima       KI43  Oscar:           206
    Supermarine          Spitfire:        207        Polykarpov     I-16  Horsefly:        208
    Junkers        JU87  Stuka:           209        Mitsubishi     A6M2  Zero:            210
    Chance Vought  F4U   Corsair:         211        Grumman        F6F   Hellcat:         212
    Lockheed       P38   Lightning:       213        Republic       P47   Thunderbolt:     214
    North American P51   Mustang:         215        Boeing         B17   Flying Fortress: 216
    Focke-Wulf     FW190 Butcherbird:     217        Yakolev        YAK9:                  218
    Nakajima       N1K1  Shiden:          219        Consolidated   B24   Liberator:       220
    Bell           P39   Airacobra:       221        Mitsubishi     G4M   Betty:           222
    North American B25   Mitchell:        223        Martin         B26   Marauder:        224
    Grumman        F4F   Wildcat:         225        Lavochkin      LA5   Fantail:         226
    Lavochkin      LA7   Fin:             227        Ilyushin       IL2   Sturmovik:       228
    Machi          C.202 Folgore:         229        Avro                 Lancaster:       230
    De Haviland    DH.98 MosquitoB:       231        Hawker               Typhoon:         232
    Yakovlev       Yak1:                  233        Boeing         B29   Superfortress:   234
    Dewoitine      D.320:                 235        Curtiss        SB2C  Helldiver:       236
    Grumman        TBF   Avenger:         237        Messerschmidt  ME163 Komet:           238
    Hawker               Tempest:         239        Aichi          D3A   Val:             240
    Nakajima       B5N   Kate:            241        Douglas        SBD5  Dauntless:       242
    Messerschmidt  ME110 Zerstorer:       243        Dornier        DO17:                  244
    Heinkel        HE111:                 245        Junkers        JU88:                  246
    Nakajima       KI84  Hayate:          247        Kawasaki       KI61  Hien:            248
    Generic        Fighter:               249        Mitsubishi     A6M5  Zero:            250
    Supermarine    MK5   Spitfire:        251        North American P51B  Mustang:         252
    Republic       P47B  Thunderbolt:     253        Messerschmidt  ME109F:                254
    Lockheed       P38F  Lightning:       255
  -qQUALITY: Configure video detail quality from 0 to 4, where 0 is lowest and 4 is highest.
  -sSCREENFULL: Activate or de-active FullScreen Mode. SCREENFUL = 1 or 0 (Fullscreen or NOT Fullscreen).
    (Do not activate fullscreen unless you are confident that both X and Y resolution are compatible
    with your display and display adapter hardware.)
  -tTEAM: Configure Team, where TEAM = r or b (red or blue).
  -v: Display version string and quit
  -xHORIZONTALRESOLUTION: Set horizontal resolution. Recommended HORIZONTALRESOLUTION ranges from 640 to 1920.
  -yVERTICALRESOLUTION: Set vertical resolution. Recommended VERTICALRESOLUTION ranges from 240 to 1080.


   For help configuring joystick and keyboard, we recommend launching LAC from a bash shell
   and avoiding full-screen mode, with resolution smaller than your bash shell, so you can
   see LAC's resulting debug/log messages while running LAC at the default debug level (3).
   Status messages in your main window will then show the value of keypresses and joystick
   buttons as they are detected. Use those values as you edit the file named LacControls.txt
   which you will find in your home folder's hidden .LAC directory. Edit that file with a
   simple text editor. Retain the general format of the file while changing the numeric
   values associated with keyboard key commands or joystick button commands. This will
   allow you to associate any keyboard key or joystick button with any supported flight function.

   Here are a few sample command lines. The first just launches LAC
   as previously configured. The next two examples just change the
   player's default plane before launching LAC. The next two examples
   just change the player's team affiliation to blue or red before
   launching LAC. The next two examples force LAC to bypass all menus
   and automatically execute a designated or Default mission before
   launching LAC. The next example disables the Default mission logic
   and reactivates LAC's normal menus before launching LAC. The next
   two examples illustrate how you can change several different
   configuration options with a single command before launching LAC.
   The last example configures LAC video to 1280 x 720 fullscreen.


   lac
   lac -p213
   lac -p215
   lac -tb
   lac -tr
   lac -n23
   lac -n21
   lac -n0
   lac -n23 -p219 -tb
   lac -n25 -p214 -tr
   lac -x1280 -y720 -s1
========== END EXAMPLE OF LAC'S HELP INSTRUCTION ===========

As you can see, the user is comprehensively instructed in command-line configuration of pretty much anything he might ever need.

As with all recent versions, this version remains interoperable with all published versions of Linux Air Combat since 7.92 when flown in any of the three online, "classic" missions.









Announcing the Linux Air Combat Menu Launcher
Version 07, Sep2023

In late Sep2023 we developed a new companion program, named "LacMenuLauncher", that will accompany Linux Air Combat hereafter. Here is a description, taken directly from its own "help" facility:

This is the Linux Air Combat Menu Launcher.

It is needed by people whose desktop LINUX systems
are incompatible with LAC's built-in menus.

It expects to find a copy of Linux Air Combat
(version 9.48 or later) installed according to the
usual pattern, with its resources at /usr/share/lac
and its executable at /usr/bin/lac.

This program displays simple, text-based menus
that are similar to LAC's built-in menus and allows
you to specify all of the same details to configure
the way LAC works on your hardware and to designate
your choice of aircraft, mission, and team.

As you make those choices, this program gradually
builds up a command line matching your choices,
according to the command line arguments described
when you invoke lac from the command line with the
-help argument.

It is commonplace to make several passes through the
menus, gradually building up your command line, with
one or more options to be applied when you run LAC.

As the new command line is built, it is displayed for
examination. When you are happy with it, you can use
main menu item f to execute it. LAC will immediately
start up, configured according to your choices.

When you finish your LAC session, you are returned back
to this LAC Menu Launcher, which you can continue to use
to manage LAC after the same manner that others use
LAC's built-in menus.

Note that LAC remembers your configuration. Once set
up to your liking, you can re-launch it with a command
line that simply designates:   lac  



As you can see from the above description, the new "LacMenuLauncher" is a sofware utility that essentially duplicates LAC's internal menus. As a small, simple, text-based, external program relying only on foundational tools that have always been at the core of LINUX, it does not suffer from the mysterious incompatibilities that have sometimes rendered LAC's legacy menus useless.

Here is what LacMenuLauncher's main menu looks like:

Linux Air Combat Menu Launcher


Here is the command line at present:

==================================================
lac
==================================================


MAIN MENU:

a    HELP (WHAT IS THIS MENU LAUNCHER?)
b    CHOOSE YOUR AIRCRAFT
c    CHOOSE A MISSION AND TEAM
d    ONLINE DOCUMENTATION
e    SETUP OPTIONS
f    EXECUTE LAC FROM THE COMMAND LINE (WITH THE OPTIONS SHOWN ABOVE)
g    RESET COMMAND LINE (ERASE ALL OPTIONS)
h    EXIT



Designate your choice from a, b, c, d, e, f, g, or h:

As you can see, the functionality is similar to the familiar menus that have long been offered by Linux Air Combat. Anybody having trouble activating any of those internal menu facilities will be able to use the LacMenuLauncher instead.

You will probably need to compile this LacMenuLauncher program from source code. Fortunately this is VERY easy because there is only one source code file, named "main.c", and there are no external dependencies not found in ordinary desktop LAC distros. Accordingly, to compile and run it from a bash shell, just follow these five simple steps:

1- cd to the directory containing the source code.

2- Issue the following command:

    cc main.c

3- Verify that it produced an executable named "a.out".

4- Rename a.out to "LacMenuLauncher" with this command:

   mv a.out LacMenuLauncher

5- Execute LacMenuLauncher by typing its name, preceded by "./" according to longstanding LINUX/UNIX norms:

   ./LacMenuLauncher


We just published a new YouTube PlayList with detailed instructions on downloading, installing, and configuring the new version of LAC with this new LacMenuLauncher, including step-by-step instructions for the way we integrated both into the menus of our modern desktop LINUX distro for easy activation. Here's the link:

https://www.youtube.com/watch?v=H03frBW1YjQ&list=PL1IYes9MY6lIw1rq19ewc5siwHg8u8NX3








Changes in Lac09p49


We added support for 2 more command-line arguments. Now, in addition to all of the other things that could be configured from the command line, users can also configure:

   -rREALM: Realm (From 0 to 31).

   -iINITIALPOINT: Mission starting point, where INITIALPOINT = 1, 2, or 3 (for Near, Farther Out, or Even Farther Out, respectively).

No other changes were made. Accordingly, if you are not using the new "LacMenuLauncher" utility or otherwise using command-line options to configure LAC's details, you have no reason to update to this release 9.49.

As with all recent versions, this version remains interoperable with all published versions of Linux Air Combat since 7.92 when flown in any of the three online, "classic" missions.

On the other hand, this new version of LAC supports the latest functions of LacMenuLauncher version 11, with its comprehensive, alternative set of menu tools. If LAC's built-in, legacy, "GUI" menus don't work well on your desktop LINUX platform, you should update LAC to this version 9.49 or later, and you will then be able to enjoy all of the new features of LacMenuLauncher version 11 or later. (After integrating the latest versions of LacMenuLauncher into the desktop LINUX menus, several of our alpha testers have found that they PREFER this new menu approach over LAC's built-in legacy menus.)

If you want to experiment with LAC's new LacMenuLauncher, you might find the following YouTube PlayList helpful:

   https://www.youtube.com/watch?v=H03frBW1YjQ&list=PL1IYes9MY6lIw1rq19ewc5siwHg8u8NX3

That PlayList sequences 11 short video clips to illustrate exactly how we downloaded, installed, configured, and installed a recent, beta-test version of LAC and LacMenuLauncher on a recent, typical version of desktop LINUX. Commencing with the 7th of those 11 video clips, you will learn all about the LacMenuLauncher, including detailed instruction for integrating it into your desktop LINUX menus.








Changes in LacMenuLauncher11

LacMenuLauncher Version 11 takes advantage of two new command-line enhancements first made available in LAC version 9.49, making it possible to configure the desired realm and mission starting point. Consequently, it is now possible to use the alternative, text-based menus of LacMenuLauncher to completely bypass LAC's legacy GUI menus.

Concurrently with release of this LacMenuLauncher11, we enhanced 54 little-used LAC web pages, each describing one of the 54 aircraft supported by LAC. We expect those 54 pages to get a lot more use now, because when LacMenuLauncher invokes the user's firefox web browser to display one of them from its "CHOOSE YOUR AIRCRAFT" menu, each enhanced page now shows a clear, rendered picture of the associated airplane alongside a tabular summary of its flight characteristics. YouTube documentary video clips about the illustrated airplane are also prominent. Prominent links on all 54 of those pages lead to "NEXT" and "PREVIOUS" airplanes among the 54 available.

Accordingly, it is now as easy and as enjoyable for LacMenuLauncher users to browse among all 54 of LAC's aircraft as it has heretofore been for those accessing LAC's legacy, "GUI" menus. It's almost like visiting a warbirds museum, studying the details of all of the planes, picking a favorite, and then hopping inside and taking it for a flight!


Even if you DON'T install the LacMenuLauncher, you might enjoy exploring that group of 54 short new web pages. It's a great way to explore LAC's aircraft. Here's the link:

   http://askmisterwizard.com/2019/LinuxAirCombat/Planes/01.htm













Changes in Lac09p51

The "BOTS" are back!

Back in version 9.37 we had to "dumb down" our bots to fix a bug that prevented proper use of the mouse for primary flight control. Accordingly, several LAC versions of summer 2023 suffered with bots that were less intelligent and less fun.

With this version 9.51 we have restored the bots to the higher intelligence they demonstrated for a few months in spring of 2023, WITHOUT triggering the old bug that caused problems for people relying on their "mouse" for primary flight control.

Consequently, all of our offline missions are more fun. You'll especially see the difference in "OFFLINE TUTORIAL 3: FIGHTERS" and in the "NETWORK H2H (2 PLAYERS)" missions.

Although the bots are also more intelligent in all ten of our more sophisticated, 10-player, server-based missions, you won't notice the difference very much when you fly among Sentient Players or among Replay Blokes, since their human intelligence easily dominates those situations.

As with all recent versions, this 9.51 release remains interoperable with all published versions of Linux Air Combat since 7.92 when flown in any of the three online, "classic" missions.









Changes in Lac09p54

"Bots" now shoot back!

In all of our offline missions and in any of our server-based, multiplayer missions when no Sentient peer or Replay Bloke has connected (or when LAC is configured to function without a connection to a server), LAC's bots now take shots at the player.

Although bots still fly erratically sometimes, about 99% of the time their flight behavior is credible, and they take shots at and often claim damage against the player when a reasonable firing solution results from the current, complex "bot dance". The result is more fun than any of the offline missions LAC has ever offered since abandoning the old, arcade-style flight model from gl-117.

The cockpit's compass tape (displayed across the top of the windscreen) is improved too. Whenever graphic quality is set to "4" or "5" (the two highest settings), numeric indicators are displayed below the compass tape to help the player understand the working of his compass with greater realism. When headed directly North, he sees "000". When headed directly West, he sees "090". When headed directly South, he sees "180". When headed directly East, he sees "270". Halfway between each of those compass headings, the player sees "045", "135", "225", and "315", exactly as one should expect. 

As with all recent versions, this 9.54 release remains interoperable with all published versions of Linux Air Combat since 7.92 when flown in any of the three online, "classic" missions.

Here is a YouTube video clip demonstrating this version during an alpha test flight:




Changes in Lac09p55

Improved sound effects.

Wind noise is now louder and better adapts to changes in airspeed, significantly increasing the player's situation awareness in combat.

During accelerated stalls due to extremely violent maneuvers, at or near the onset of blackout, the player now hears a subtle "flutter" or "buffet" sound as the formerly smooth slipstream over wings and other flight surfaces begins to break down into swirls and eddies.  This too helps to increase the player's situation awareness in combat.

As with all recent versions, this 9.55 release remains interoperable with all published versions of Linux Air Combat since 7.92 when flown in any of the three online, "classic" missions.

UPDATE 24NOV2023: WE JUST DISCOVERED A PROBLEM WITH THE TWO APPIMAGE VERSIONS OF THIS BETA TEST SOFTWARE. BOTH LACK THE PROPERLY UPDATED SOUND FILES NAMED "chaff1.wav" and "WindNoise.wav" and accordingly, THE NEW SOUND EFFECTS ASSOCIATED WITH ACCELERATED STALLS DO NOT SOUND THE WAY THEY SHOULD. IN FACT, THEY SOUND SILLY. SORRY ABOUT THAT! THE TWO PROBLEMATIC APPIMAGES WERE:

Lac955Beta-x86_64.AppImage (As published 22Nov2023) and
Lac955SteamDeckBeta-x86_64.AppImage (As published 23Nov2023).

The Source Code archive is correct, so if you want to hear those new sound effects as intended, you should compile from this published version:

Lac09p55Beta.tar.gz (As published 22Nov2023)

We are traveling outside our lab and cannot fix this until we return from our road trip. At that point we will update this ChangeLog with detailed instructions for replacing the two faulty AppImages with better ones.


UPDATE 04DEC2023: WE HAVE FIXED the Lac955Beta-x86_64.AppImage. The little bug described above is gone, and it is now available for downloading according to the usual pattern. (The SteamDeck AppImage should be fixed and available for download within 24 hours.)

Here's a YouTube video clip illustrating the effect:

That clip's primary emphasis is on the improved behavior of LAC's bots. But the improved sound effects are also featured.











Changes in LacMenuLauncher12

LacMenuLauncher Version 12 derives directly from Version 11. Due to changes in the AskMisterWizard.com web server, it was necessary to change all of the "https://AskMisterWizard.com" references to simpler "http://AskMisterWizard.com" references. Since 15Dec2023 if you try to access any of the AskMisterWizard.com web pages with https, most browsers will refuse to grant you access.

We hope we can soon restore the AskMisterWizard.com web site with https security, but until we take that step, you will find this version 12 of the LacMenuLauncher more compatible.

We also added a new main menu item: "LAUNCH MUMBLE". As a consequence of this new version, this "LAUNCH MUMBLE" command is activated through main menu item "g". (Previously, main menu item "g" had launched the firefox web browser and displayed the main page of LAC's online documentation. Now that online documentation is available through main menu item "h".) The new main menu now looks like this:


   Linux Air Combat Menu Launcher


   Here is the command line at present:

   ==================================================
   lac
   ==================================================

   MAIN MENU:

   a   HELP (WHAT IS THIS MENU LAUNCHER?)
   b   SETUP OPTIONS
   c   CHOOSE YOUR AIRCRAFT
   d   MISSION OPTIONS
   e   RUN LAC BY EXECUTING COMMAND LINE WITH OPTIONS SHOWN ABOVE
   f   RESET COMMAND LINE (ERASE ALL OPTIONS)
   g   LAUNCH MUMBLE (IT'S GOOD TO DO THIS ONCE BEFORE LAUNCHING LAC.)
   h   ONLINE DOCUMENTATION

   i   EXIT



The new "LAUNCH MUMBLE" command makes it easier for the player to ensure that mumble is running before LAC. On some platforms, if mumble is not running prior to launching LAC, mumble steals the keyboard from LAC so the player can't issue any keyboard commands in flight. When that happens, the player's only way to regain use of his keyboard is to crash his aircraft and wait for LAC to exit. By issuing this new main menu item "g" to launch mumble prior to using main menu item "e" to launch LAC, the player can always avoid this problem.






Changes in Lac09p61

All of the changes in this version 9.61 are purely cosmetic. None of the flight, tactical, strategic, network, sound, or mission characteristics have been changed. Two areas of cosmetics have been changed as follows:

WW2 Cockpit instruments
Note the expanded cockpit panel with four additional round instruments. These new "WW2-style" cockpit instruments can now be displayed as a run-time option, instead of LAC's standard, "glass cockpit" instrument style..

1 of 2: You can now use the "1024 bit" of "NetworkMode" (available by editing your hidden LacConfig.txt file according to the usual pattern) to designate whether LAC will display cockpit instruments in the long-established "glass cockpit" mode or in a new, more graphically intense, more historically accurate "WW2" mode. If the 1024 bit is NOT set, cockpit graphics are unchanged since version 9.55, and the glass cockput mode is used. If the 1024 bit is set, the more graphically intense "WW2 mode" is used.

2 of 2: RADAR icons are changed. Airfields are now shown with a prominent diamond shape, and strategic bombers are now shown with a triangle.

Here are two YouTube video clips illustrating these changes:

 




Changes in Lac09p62

We cleaned up and simplified the Makefile. Now it is more compatible with evolving industry practice.

We cleaned up the logic that invokes the user's web browser to display web pages related to LAC training, aircraft, and missions. Now it tries much harder to use the preferred browser designated by the user in the "PreferredBrowser" of the LacConfig.txt file, even if the user designates a browser of unknown type. If the user does NOT designate a PreferredBrowser, LAC no longer defaults to "firefox". Instead, it now defaults to "xdg-open" which, as a consequence of evolving industry norms, will always invoke the default web browser in use by the user's current operating system.

We cleaned up the logic that has been displaying the following little block of prompting text accompanying LAC's main menu:

       IF LAC'S MENUS DON'T RESPOND TO
       MOUSE CLICKS, YOU CAN USE OUR OPTIONAL,
       EXTERNAL MENUS INSTEAD. DOWNLOAD THE
       LACMENULAUNCHER UTILITY, WHICH IS ALWAYS
       AVAILABLE FROM OUR OFFICIAL DOWNLOAD SITES.
       YOU WON'T EVER NEED LAC'S INTERNAL MENUS
       AFTER YOU TAKE THAT SIMPLE STEP.
       LEARN MORE WITH AN INTERNET SEARCH
       FOR:   LINUX AIR COMBAT DOCUMENTATION
       (EXIT WITH ESCAPE KEY.)

Now that text is no longer displayed after the user clicks into any of the main menu items (and no longer clutters subsequent menus).

We fixed a bug that had improperly positioned the RedTeam RADAR reflector in Hyrum's Mission, and in the "BETA TEST" missions.

We slightly diminished the violence of the burbling and shaking associated with accelerated stalls.