Airio LFS Tracker
Change Log for Old Versions

Airio Home Overview Downloads Changelog
User Manual Admin Manual Full Manual Airio FAQ
Airio Servers Live for Speed LFS Forum Donations

Change Log

These items shown only quite old changes to Airio. Newer updates and upcoming features can be found on a separate page.

Airio 2.2.9 (2009-07-08)

  • Added QualifyMsg item into Airio.srv.txt file allowing to define lines to appear in chat area on each qualification start.
  • All the text-defining items in SRV file now support multiple translations using "||XX" (where XX is a supported language) as a separator. Specifically, the user/limad/admin welcome messages can be localized, big and small welcome buttons, timed messages, race/qualification restart message and buttons, and in FULL also info(s), rule(s) and event(s) definitions.
  • FULL: Implemented custom banning system to give much better control over banning to admins and also additional info to drivers. If the system is activated using new BanUsingAirio item in CFG file, then the !ban command adds items into Airio.ban.txt file, stating who is banned, when, for how long, by whom and optionally with reason for the ban. Also other online bans are captured, cleared and converted into Airio custom bans. The !unban command removes items from the ban file. For each new connection the ban list is checked, and if the person is listed, he is kicked from server with a message stating when the ban ends and original reason of the ban, if specified.
  • FULL: New !lban (or just !lb) lists to admins/limads current bans including among other things nicknames and remaining days, sorted from most recent to oldest.
  • FULL: Ranks resp. licences, if defined, now start at default value "None", so that in !pi resp. !pb people can see what they need to get (how many points or what time improvement) to the lowest defined rank resp. licence.
  • FREE: The EnableUnban item of limad actions in CFG file is now supported even in this compile. This item allows limads not only to unban, but also ban for any length and list current bans (in FULL, if the system is active).
  • New item GetHotlaps in CFG file specifies if also uploaded hotlaps and not just online records should be downloaded for everyone. In that case split/sector values of the best lap are used and shown as LFSW PB and used in server time lock.
  • Updated admin !state command, which now always shows basic state of all servers and details the current or required one.
  • Added one more customization using multipurpose general/race info button. General information include last raced message and server state changes, such as going to another track or (de)activating time lock. Race information cover pit stops, using custom cars and race restart or end countdown. Depending on other server settings each driver can now have up to 29 customizable items available. Wow.
  • If only best/good sectors (and not splits) are shown to someone, then also sector 1 (equal to split 1) is displayed to him.
  • Anyone may have optionally server best times (PBs) of other people displayed when the drivers connect and improve. The same is true for LFSW times. Neither server nor LFSW times are shown on Airio (re)connect to prevent spamming.
  • Improved race joining checks so that irrepairable conditions (such as licence/rank/time lock) are checked first, then the conditions that the driver may repair (text/tyres/passengers/handicaps)

Configuration: Airio.cfg.txt – added BanUsingAirio, GetHotlaps. Airio.tcd.txt – none. Airio.srv.txt – added QualifyMsg. Commands – added !lban.

Airio 2.2.8 (2009-07-03)

  • Updated the GUI and personalization options by using multi-purpose buttons. Clicking on some buttons will switch certain optionally displayed items between several options, such as race best split and sector times, only split times, only sector times, or none. There are five new options: best splits/sectors, good splits/sectors, server PBs, licences (FULL only) and safety ratings (FULL only).
  • Optimized personal settings (Shift+i) display. Changing options by clicking now results in redrawing only the necessary buttons and not the whole screen (performance fix).
  • Removed GlobalStats option from Airio.cfg.txt file, sending local and receiving global stats is always active now, because the communication overhead is negligible and data gathered and displayed on the servers page (and in !ver) are useful.
  • Added ScriptInstance and ScriptPeriod options to Airio.cfg.txt file. This may be used e.g. for periodic update of Airio stats in some Web server database. Script output (returned data) is ignored.
  • Added CheckSkin item into Airio.srv.txt file. If active, skins cannot contain prohibited names. This is good for protecting your team skin, which only members (limads level 0 and above) can use.
  • In !results (!rs) command output the total race times are compared to the previous finished driver, not to the winner. Also multiple car categories are now shown correctly (bug fix).
  • Updated the !speed command output. If used without parameter it shows summary of speeds in all defined points (splits by default), sorted by average speed from these points. With number parameter sorted speeds at that point (split) are shown.
  • Corrected items used to read server rules/FAQ/notes (text bug fix). Also these buttons now have common background.
  • The server rules, server FAQ and server notes buttons are now localizable. In TextFAQs, TextNotes, and TextRules items in CFG file it is possible to define several language versions using "||XX" separator, where XX is one of the user selectable languages. Users with this language will see only the appropriate portion, to others the first portion is shown.
  • The "last raced on" message is again shown with every new connection, it is part of personalizable general info messages. On the other hand, there's no "welcome to" message, because other means for welcoming people are available.
  • To be seen as using custom car the intake and mass used may be also higher than those specified and not just exactly equal. Combined with other items in TCD file custom cars may be a bit different for each track.
  • FULL: For best climber points the lowest driver's position in any track split during race is used, not just split 1 of lap 1.
  • FULL: Calling admins using IRC (by !admin command or by talking to host) now requires some text to be passed.
  • FULL: Moved the custom commands definition from CFG to SRV file, so that the same custom command may work a bit differently on every server, if that is necessary.
  • Updated the Aegio InSim library to process without error strings of any length (rare bug fix).
  • If '$' is used as a starting character of Airio commands (instead of '!') in configuration files (SET files, custom and scheduled command items), the instruction is processed directly, without sending to server and capturing it again. This allows to use very long $cfg strings (e.g. defining track rotation) that would be otherwise cut and incomplete.
  • When MSG and SET files are updated from Airio root folder, backups of the existing files in subfolders are created with timestamp in their name. This allows to rename the files back to get previous version in case of wrong update.

Configuration: Airio.cfg.txt – added ScriptInstance, ScriptPeriod; removed CustomCommands, GlobalStats. Airio.tcd.txt – none. Airio.srv.txt – added CustomCommands, CheckSkin. Commands – none.

Airio 2.2.7 (2009-06-19)

  • FREE: Enabled drift board functionality in this Airio compile. If drifting scores are allowed in server settings and the driver chooses to display the drift board, he'll get live data about current drift (angle, time, speed, points).
  • Improved drift board display. When a drift ends, total covered angle and average speed is shown instead of last values.
  • Extended !clr admin command. Entering !clrb car will double all time data for that car in statistics, virtually deleting the PBs/TBs for everyone. Useful if some base restriction was applied and old best times are not reachable, but other race statistics (points, podiums) need to be preserved.
  • Added "driving points" very similar to "playing points". Driving points are global, shown as part of !pi command output or as a list by new !ptd command. All driving points may be cleared by !clrd admin command.
  • New items StorePointsPlaying and StorePointsDriving in Airio.srv.txt file specify if global points of the two kinds are stored from a certain server. If you run a race series on some server, activate driving points just for the occasion or only on this server, otherwise and elsewhere do not store them. Anyone can then type !ptd and see his standing in series.
  • FULL: Implemented support for custom commands using new CustomCommands item in Airio.cfg.txt file. Admins may now name/define series of any LFS/Airio instructions with one optional parameter specified. All custom commands also set a limad level from which they are available and optional short description.
  • FULL: New !custcom or just !cc command displays custom commands defined and available to the current player.
  • FULL: Implemented scheduled commands using new ScheduledCommands item in Airio.srv.txt file. Series of LFS/Airio commands may be scheduled using "month day hour minute second" notation where any number can be replaced by '*' to denote every (the closest) value. Alternative notation "w weekday hour minute second" may be used to schedule weekly commands (date independent).
  • FULL: Accompanying item UseScheduledUTC in Airio.srv.txt file selects between world universal and Airio local time.
  • Updated the !/cars command so that defined car categories (such as TBO or GTR) and ALL may be used.
  • Updated !results command output which now shows also track and best real and theoretical lap of each driver in the race.
  • Additional RaceRejoin item in Airio.srv.txt file allows to set percentage of race (for laps or minutes/hours) after which rejoining the race is not possible. Joining filter must be active for this protection to function.
  • FULL: Updated the Twitterizer external library. Reported Twitter events are now race start, race finish, and server(s) state.

Configuration: Airio.cfg.txt – added CustomCommands. Airio.srv.txt – added StorePointsPlaying, StorePointsDriving, ScheduledCommands, UseScheduledUTC, RaceRejoin. Commands – added !ptd, !clrd, !clrb, !cc.

Airio 2.2.6 (2009-06-14)

  • New !results or just !rs command shows a table of last finished race results. Items are sorted by car categories and positions. Besides nickname and car type also time/lap differences and points from the race and in the series are shown.
  • Enriched !ver command output for server admins, showing total connection uptime, packets read/written, and kilobytes read/written since the connection was established. They may be interesting data usable e.g. for calculating Airio bandwidth requirements or generally seeing how intense is the communication between certain LFS server and Airio.
  • Corrected local area display in !ver command in case the running instance had no name (bug fix).
  • Improved internal Aegio InSim library to use in button display instructions just bytes that are needed. This limits the amount of data being sent to LFS server (performance bug fix).
  • Limited the number of packets sent to server on race start. Too many instructions and great lags caused by connecting people could result in communication errors and Airio disconnects on heavily loaded servers (attempted rare trouble fix).
  • Added connection option QuickReconTries into Airio.cfg.txt file. If higher than zero, it specifies number of quick reconnect attempts. This may help to solve troubles with occasional Airio disconnects on heavily loaded or remotely controlled servers caused by huge lags/timeouts. It will try to preserve internal connection state, making the reconnect process transparent. Note however that because of messages discontinuity I do not currently consider this feature completely safe to use.
  • Pings for checking connection to server are not used anymore. Instead Airio is sending a keep-alive packet every five seconds which takes the role of a good check of connection between Airio and the LFS server.
  • If multiple timed messages are defined, only one is always shown, the one with highest number (and longest set period).
  • To further decrease the number of files in Airio root folder the Server/Airio settings files Airio.set.?.txt are now moved into separate directory, set. These files may contain any Server/Airio commands to be used by !si limad/admin command.
  • Added new StoreAll option into Airio.cfg.txt file. If set to true, top-level driver's data (username, nickname, options, playing points, safety rating) are stored for everyone that ever connected. If false (default), there's no record of a driver in stats until he does sufficient PB in at least one track/car combination.
  • Completely removed support for old configuration files kept since 2.1.9 ( and are basically merged into Airio.cfg.txt, while is in effect renamed to Airio.tcd.txt). If upgrading configuration files to 2.1.9 and newer it is suggested to use new default files and copy into them custom-defined items from old files.
  • Added new option IncludeFile to Airio.cfg.txt and Airio.srv.txt files. Contents of the specified file will be virtually pasted at the place of this key. This allows you to split CFG and SRV data into several files, if you'd prefer that arrangement (e.g. to keep items you do not use out the way). Multiple and recursive file includes are supported.
  • FULL: Added basic Twitter support through two new configuration items in Airio.cfg.txt file: TwitterUser and TwitterPass. If valid (registered) values are used you may see some server events using the follower service. Currently connects, disconnects, race starts, and race finishes are reported.
  • FULL: Changed external ZIP library to Ionic DotNetZip. This one is simpler to use and also it creates valid ZIP files, which is, I dare say, a rather major advantage.
  • FULL: Instead of custom compiles external licence files are used, called Airio.lic, and required by the full versions.
  • Renamed ExportLapperTime in Airio.cfg.txt file to ExportStatsTime, old name will also work.
  • FULL: Added UploadAirioData item into Airio.cfg.txt file allowing regular compression and upload of Airio STA files to a defined FTP server for further processing e.g. for PB data display on a Web page.
  • Reports about disallowed car setup options (such as Auto Gears or ABS/TC) are more verbose and localizable now.

Airio 2.2.5 (2009-05-24)

  • FULL: Added the possibility to define highest race climber point(s). New items PointsClimb and ClimbPlaces in Airio.srv.txt file define how many points is given (at next race start) and how many positions is at least required to climb. Position at finish is compared to driver's position in split 1 on lap 1, not at race start. That's because position changes from start to split 1 are often results of pure chance or reckless driving, while later position advances better express driving skills.
  • Added commands to show best drift scores in one race: longest single drift (!dfs), best lap drifts (!dfl) and highest race drifts (!dfr). These commands accompany existing !dfc and !dft commands showing best championship and total drifts.
  • Start/qualify button display time is now dynamic. Base value is 6 seconds, raised by one second for every 3 drivers on the start grid, reaching max. 10 seconds in demo and 16 seconds in full S2 grid.
  • When using track rotation countdown to calling race end and track change appears, very similar to race restart countdown.
  • Also the /end command is checked to be accepted by LFS server (just as /restart command is checked). If it is ignored for some reason (big lag of a connecting player being the primary one), it is repeatedly reissued every 5 seconds.
  • Updated the underlying Aegio InSim library so that it passes to Airio additional info about connection errors or connection and string handling warnings. This will help debugging on the library level using Airio system log.
  • Corrected some penalty commands that could occasionally fail due to unnecessary nickname string conversion (bug fix).
  • Corrected error caused by rating when using bad names (bug fix).
  • Corrected reordering that was applied if 1st race after qualification was restarted, now qualification order should still be valid (bug fix).
  • FULL: Corrected pit windows and pit work required which were shown also on qualification and practice start (bug fix).
  • FULL: Changes of pitlane status (when using pit windows/work) are now shown also as Race Control messages (big text), because messages output to chat area only can be easily overlooked or completely blocked.
  • Updated some output to system log (using usernames instead of nicknames, changing order of certain operations).
  • Attempted another approach to solve a rare LFS bug appearing when people are joining race and updating controls at the same time – incorrect ID data are reported via InSim in that case. Until LFS developers address the issue all drivers joining and updating at the same time are spectated and required to join again, without updating controls.

Airio 2.2.4 (2009-05-19)

  • FREE: Enabled !rank and !rate commands supported earlier only in FULL version. First one shows total points of connected drivers, the second their current safety ratings, both lists are sorted from best to worse. Together with !time command they give drivers' overview in all three major categories (ranking/licensing/rating) Airio currently supports.
  • The following commands showing connected drivers' data now accept an integer parameter specifying from which position the output list should be displayed: !session (session lap times), !time (server/LFSW lap times), !rank (total points), !rate (safety ratings), !lice (track/car licences, FULL only). This parameter is useful if more than 24 people are connected.
  • Updated speedtraps handling so that they are installed into track splits if SpeedtrapNode in TCD file has empty value (by default now, older configurations use –1 meaning global speed measuring). Having speed measuring in splits is good because anyone can then compare those with his own (rightmost button at the screen top). It is still possible though to install up to four speedtraps at any place or use global speed measuring.
  • FULL: Added pit windows definitions. Using new PitWindows item in Airio.srv.txt file it is possible to specify in (race) minutes when pitlane opens and closes. Several pitstops may be required this way and only the ones done while the pitlane is open are counted.
  • FULL: Accompanying PitTyres and PitRefuels items may be used to set how many complete tyre changes and car refuels are required in a race. Drivers are informed about required number of pitstops and pitwork. People with insufficient count of pitstops or pitwork are given drive-through penalty on their last race split which in effect disqualifies them.
  • FULL: Implemented race join limiting by safety rating. RatingRequired and RatingSpecific items in Airio.srv.txt may be used to specify general or car-dependant safety rating required to join a race. This may be used for creating tiered servers or allowing more powerful cars on one server only to reasonably good/seasoned drivers.
  • FULL: Renamed LicenceTimesRequired to LicenceRequired, LicenceTimesSpecific to LicenceSpecific, LicenceRanksRequired to RankRequired and LicenceRanksSpecific to RankSpecific in Airio.srv.txt. Old keys may still be used, but the new ones are more obvious.

Airio 2.2.3 (2009-05-17)

  • New UseTabSeparated item in Airio.cfg.txt file switches STA files output format between line-separated (used originally) and tab-separated (may be better for PHP handling) items in records. Format for reading is determined automatically, meaning you may freely change the format from one to another.
  • Implemented extensible safety rating calculation. Percentages range in theory from 0 to 100 with higher values given to better drivers. Basic parameters StartRate, RateStability in Airio.srv.txt file define general rating system behaviour. The higher the rating value the lower increases are possible and vice versa.
  • Various events may increase or decrease the value, each with configurable weight. Currently every caused yellow flag in race lowers the rating, configurable by FlagWeight, and FlagDelay values in Airio.srv.txt file. Finished laps on the other hand raise the rating according to LapWeight setting.
  • ChatWeight specifies rating decrease on using bad language and flooding. RaceWeight may be used to raise rating on each race finished with sufficient number of laps (set by LapsPoints).
  • Optionally RateWarning and RateLimit values may be defined in Airio.srv.txt file. Going below the first will display warnings about possible ban, going below the second bans the driver for bad driving. His rating is raised a bit so that once the ban expires he can improve his safety rating.
  • Drivers may see their current safety rating in !pi command output and there is also !safe command available showing server cleanest drivers.
  • FULL: Safety rating percentage ranges may be converted into custom text shown on each new connection and also on any rating change. The definitions are specified using new LicenceRatesText and LicenceRatesLevels items in Airio.tcd.txt file.
  • FULL: The !rates command may be used to show defined ranges and descriptions while !rate will show safety ratings of all currently connected drivers. This is very similar to !ranks (!lices) and !rank (!lice) commands.
  • On every connect and rename a filter is run making sure two names different only by empty characters are not used. Equality results in a kick for the new name. This filter cannot be turned off but checks doubled names only among the currently connected drivers, not in the whole database of drivers.
  • Corrected handling of automatic race restarts after qualifications (bug fix).
  • Corrected inability to kick/ban some usernames using Airio (LFS inconsistency fix).
  • Corrected default and custom cars handling (rare bug fix).

Airio 2.2.2 (2009-05-05)

  • Updated the !pb (personal best) and !pi (personal info) output. While PB is always related to the current track and certain car of a chosen driver (or yourself in your current car, if no car/name is specified), PI shows stats summing all track/car combinations of a certain driver.
  • The !pb command shows the following: Actual PB and TB times, laps, dates, licence (in FULL), points, lap time, race time, race podiums (FULL only), serie podiums (FULL only), drifting scores. Most items are shown on total and also on championship (week by default) level incl. current positions. It is a lot of stats data related to one track/car combination.
  • The !pi command shows the following: Laps, points, rank (in FULL), race podiums (FULL only), series podiums (FULL only), drifting scores, playing points, list of track/car combos. These values are again separated into total/champ items, all accompanied by current positions. These PI data are sums of all track/car combos stored in one Airio instance.
  • FULL: LicenceTimesSpecific in SRV file may now contain several required licences for one car type which are applied using logical OR. This means one fulfilled requirement is sufficient. For example LicenceTimesSpecific=XRG|3 XRG|4,XRX allows to join with XRG either if the driver holds 3rd licence level with that car or 4th licence level with XRX (custom restricted XRG). The last definition is shown as the requirement and it should be the one that is possible/easiest to achieve.
  • Driver preferences (from Shift+i screen) are permanently saved only when the driver enters stats by achieving a reasonable time in any track/car combo. This helps to keep clean the STA files.
  • Race (!ptr) and serie (!pts) points now include all points gained during one race or groups of races (e.g. for good/best lap).
  • Series (groups of races) are now evaluated also on every entry into race end screen (e.g. during track rotation).
  • New item EndWait in Airio.srv.txt file specifies how long to wait before calling the /end command after race end in rotation schemes. This value should allow everyone to finish the final lap and by default is set to 120 seconds.
  • Custom start grid is not applied to the one race starting after qualification; in such case always the qualification results are used. This makes it possible to use short qualification e.g. after every track change simply by specifying qualification length higher than 0 minutes (using /qual command).
  • FULL: Allowed to specify a custom lap time as a target value for split/sector comparisons. To use this feature drivers set required target value for their current track/car combo using !target command, e.g. !tg 1:14.50 on BL1+FBM. The value is stored in their profile for future use and necessary split/sector times using WR distribution are displayed (just as before). Drivers under the FULL version now have the additional option to open their personal settings screen by pressing Shift+i and select Target as the comparison value. Split/sector time comparisons then indicate where the driver needs to improve.
  • FULL: Improved race progress and pitboard data display, obsolete values are not shown anymore.
  • Improved custom cars handling in track rotation and !/cars command. Not only are the cars converted into standard types but also prohibited cars are adjusted so that racing only in the specified car types (standard and custom) is possible.
  • Improved track rotation so that one track may be used repeatedly (omission fix).
  • Added MinNameLength configuration item into Airio.srv.txt file. It is part of CheckName filter and allows to kick drivers with too short (or even empty) nickname.

Airio 2.2.1 (2009-04-20)

  • Check for "possible lap time" is now bound to CheckTime item in SRV file. If time-checking (meaning comparing driver's splits/sectors to current WR and kicking for substantially better values) is not active (default state), Airio will always save lap times (unless a limited zone was entered, making the lap time always invalid). This allows to use rough estimate values for time adjustments with custom cars, at least until more exact values may be calculated.
  • Server prohibited cars (allowing to limit car types e.g. to one custom car only) are applied to everyone incl. admins.
  • All limad/admin commands mimicking those found in LFS can be entered with / right after starting !, such as !/kick name. The slash must be used in some commands that have different meaning to Airio. These commands are !/track for changing the track (while !track shows track and rotation info), !/cars setting allowed car types (while !cars shows info about custom cars and car categories), and !/laps for changing lap count (while !laps shows total best lap times).
  • Added simple custom cars support to !/cars command and track rotation schemes. If a custom car is used there it is simply converted to standard LFS car required by /cars LFS command.
  • Completely removed the "last raced on" message as it was pure spam. Also LFSW data display is now by default hidden for new drivers.
  • Allowed to use car category names (such as STD or TBO) in StandardCars item in SRV file(s). Also category names (predefined or custom) may now be entered anywhere using uppercase or lowercase, just like car types (small bug fix).
  • Updated display of "standard car" and "custom car" on race join so that much less messages are shown (none if only standard cars are used).
  • FULL: Corrected podium places shown and stored in different car groups (bug fix).
  • FULL: Additional setting of LicenceTimesSpecific in SRV file allows to bind accessibility of higher car types to licences (lap times) in lower-grade cars incl. custom cars. Thus e.g. LicenceTimesSpecific=XRG|3,XFG would require 3rd licence level in XFG before the player may join with XRG.

Airio 2.2.0 (2009-04-16)

  • Added simple subfolders support to limit the number of files in Airio root directory. After !rld and in some other situations (such as at the day end or after download/upload) all files containing .msg. (localized user messages) will be moved into msg subfolder and read from there. Similarly all files with .log. (Airio logs, FREE version) or .zip (Airio complete backups, FULL version) will be moved into log subfolder. The folders are created and the files moved automatically on Airio upgrade.
  • Improved the sequence of licence/rank and other checks/information on race join so that the driver is not reported as joining when being spectated immediately afterwards for some reason (bad setup, bad options, etc.).
  • Added DefaultLanguage item into Airio.cfg.txt file. If an available user language (from language pack) is selected here, it is applied to all first-connecting drivers (who can naturally change the language at any time) and to the host system as well (meaning the messages on server console will be in this language).
  • Debugged the custom cars feature at several places. Solved (hopefully) issues such as applying incorrect time-lock values, calculating good/great split/sector/lap times using time adjustments in a wrong fashion, and also giving no points (sic) for final places in a race (serious bug fix). This all is solved now, but because the custom cars feature is very new there may still appear new inconsistencies. I'll be grateful for testing and reporting any found issues/requests.
  • Added ProhibitedCars key into Airio.srv.txt file allowing to limit usage of certain car types on individual servers. This enables admins to e.g. create one server for custom (limited) cars only and another for full (standard) cars only.
  • Added !cars command showing all defined custom cars and car categories (for use e.g. in !sb command). Important for new people who need to know how to use certain custom car or what categories are available. Note that this command has double meaning: When used without parameters it shows to anyone custom cars and categories. When used with parameter it is a limad (always hidden) command setting allowed car types via /cars= LFS option.
  • Updated the limad/admin !lock command. With car code entered it will now show not only time-lock status, but also lap time required to join in that car type. This works also for custom cars.
  • Corrected points for playing (shown by !ptp or !play) so that they include also series points now (small bug fix).
  • Corrected !ptp (!total) and !ptc (!champ) points display (bug fix). Updated the command so that by default it sums all points for all tracks and cars, but it is also possible to require any track, car, or combo points.
  • Added/updated !dft (!drifts) and !dfc (!drift) commands showing highest total or championship drift scores. Even in this case it is possible to require scores for only one track, car, or their combination.
  • FULL: Updated !btp (!podiums), !bcp (!podium), !bts (!series), and !bcs (!serie) commands so that by default they show data summarized for all tracks and cars but allow as well to see any track/car/combo data separately. These commands show best total/champ podium positions in races/series.
  • Updated !btr (!races), !bcr (!race), !btl (!laps) and !bcl (!lap) commands so that any track/car combination may be required. These commands show best total/champ times in races/laps (!btl output may be under certain conditions equal to !sb output).
  • Updated autocross stats file format ( It now contains all the same items as user/track/car file. This means points, drifts etc. are stored on autocross level as well. Note that autocross layouts are those with checkpoints defined. Format update is transparent.
  • FULL: Corrected (again) messages being sent to IRC, because commands output was ignored (bug fix).

Airio 2.1.9 (2009-04-13)

  • Sorry, one more change (hopefully last) to the number of basic configuration files. After careful analysis it is clear merging all CFG files into one was done in a rush. The problem is the track/car section (formerly format is not "flat", it is hierarchical, sequence of items there matters. To make this distinction clear this section was again separated into a new file, Airio.tcd.txt, where TCD stands for Track/Car Data. Previous arrangements remain functional, but obsolete.
  • Also all track/car definitions (such as supported codes, car groups and car categories) have been moved from CFG into the TCD file. To summarize: CFG file contains items logically common to the running instance, TCD has all track/car data (most of them hierarchical), and SRV file contains items definable at individual server level.
  • COOL: Implemented custom cars. Using CustomCars item in Airio.tcd.txt file it is possible to create new car types by restricting the existing ones. Entry such as CustomCars=FBB|FBM,20,0 creates a "Baby FBM" car, which is FBM with intake air restriction of 20 percent and added mass of 0 kg. Whenever a player joins with FBM with 20 percent restriction, he is reported as joining with FBB and this will be his virtual car. All stats will be stored separately for the FBB car and commands such as !sb fbb are perfectly valid. Once defined, the FBB car may be used anywhere standard cars are allowed.
  • Custom cars are bound to the originals via e.g. WR data and they may be further fine-tuned just as standard cars. For example to have reasonable good/great times reported (and to get into stats with restrictions) you would need to set TimeAdjustment for your custom car and maybe also directly specify GoodTimesAbs etc. This all is done in the TCD file.
  • Changed the TimeAdjustment units to allow finer tuning of the lap times of restricted/custom cars. Now percents * 100 by which lap/split/sector times will be raised is used (just like e.g. in relative good/great times). 550 thus means 5.5 percent raise. In many cases you'd need to find the correct time adjustment value by testing and experiments.
  • Added !car command showing car types currently used by connected people. Car type (standard or custom) is also shown the first time a driver joins race or when he changes car. Anyone may turn off these messages using General Info option.
  • Internal improvements to speed up starting/reloading the application and to apply WR updates more transparently.
  • FULL: Substantially updated the ranking system. Currently it uses total (any track/car) gained points only, but improvement to selectable base (total, track, car, combo) is possible/planned.
  • FULL: Ranking items have been moved from CFG into Airio.tcd.txt file and their names changed. RankFull is renamed to LicenceRanksText and RankPoints is renamed to LicenceRanksPoints, the contents are the same. RankShort key is not used anymore. The previous arrangement is NOT functional.
  • FULL: New item LicenceRanksRequired in Airio.srv.txt accepts a whole number saying what rank level is generally required to join a race there (zero meaning no rank limit).
  • FULL: LicenceRanksSpecific also in Airio.srv.txt allows to define different rank limits for specific (groups of) cars, if there are more available on the server. Similar item LicenceTimesSpecific may define licence limits for certain types of cars.
  • FULL: Updated and debugged licence/rank info shown in !pb output. Not only points necessary to reach the next rank level but also lap time improvement for next licence level is shown. Also output of !rank and !lice commands is updated and unified.

Airio 2.1.8 (2009-04-07)

  • Allowed (finally) to see combined car types list in !sb (or !top), !near, and !tb (or !ttop) commands. It is now possible to type e.g. !sb xfg+xrg and see combined list consisting of both car types.
  • To simplify calls for combined cars lists a new CarCategories item is created in Airio.cfg.txt file. This item contains by default definitions for STD, TBO, LRF, and GTR categories, but you may create any other name and combination you need. To see the combined list you just type e.g. !sb gtr or !nr tbo (in this case position in the car you have the best time with is shown).
  • If you want drivers on some server to always see some combined SB/TB lists, you may use a new StandardCars item in Airio.srv.txt file. If then someone types just !sb, the value of StandardCars is supplied as car type(s), not the driver's current car.
  • In track rotation scheme it is possible now to specify layout to load using TrackName_LayoutName notation, e.g. AU1_DriftGround. Note that Airio considers as true layouts only the ones containing checkpoints. For those the rotation will work as expected and separate stats will be stored.
  • Corrected a bug causing layout (autocross) data lost/overwritten on race restart leading e.g. to discontinuities and stats not being stored.
  • New KickForRemove item in Airio.srv.txt file allows to kick people without sufficient rights for removing others from the start grid on the race end screen. Removing others is a bad habit and this setting provides solution especially for servers using tracks rotation.
  • Even 4th sector time is now shown in !tb output on tracks with 3 split points and 4 sectors (small bug fix).
  • If Airio encounters communication error (connection broken or invalid packets received), it will not try to quickly reconnect without losing internal server state. Instead it will disconnect and connect back automatically within 5 minutes. The quick-reconnect feature led too often to some important events being missed resulting in strange Airio internal state (e.g. inexistent drivers being repeatedly kicked for inactivity). Note that you can prevent all communication errors by running Airio locally on the computer where also the LFS server(s) run.
  • All date/time data are now in STA files saved as Unix timestamps (whole seconds from 1970-01-01 00:00:00). The conversion of the format is completely transparent. The Unix format is a LFS standard, much better for use in PHP scripts.
  • FULL: Implemented lap time-based licensing. New items LicenceTimesAbs (always track/car specific), LicenceTimesRel (general percentages) and LicenceTimesText (might be general but also specific to certain combos) in track/car section of Airio.cfg.txt file allow to define lap times in "centiseconds" (i.e. milliseconds / 10) or percentage over WR and associated licence describing text. LicenceTimesRequired in Airio.srv.txt (individually definable for each server) accepts an integer (whole number) saying what time-based licence level is required to join a race (zero meaning no licence limit).
  • FULL: Licence data are optionally shown when the driver joins for the first time, when he changes car (or the track changes) and when he improves his lap time reaching a new licence level. Anyone is free to block licence messages by the same option by which ranks may be shown/hidden. Current licence and lap time required to reach next level are also displayed in personal stats shown by !pb.
  • FULL: New command !lice (or !lc) shows sorted licences of connected people in the cars they are currently using. Accompanying new command !lices (or !lcs) shows available licence levels with lap times required valid for your current car type. This is very similar to !rank and !ranks commands.
  • Because !lc is now used in conjunction with licences, the !loca command (showing your car location in LFS coordinates) uses a different shortcut – !lo.
  • FULL: Statistic files are zipped and optionally sent to a FTP server before championship data are erased, not the other way.
  • FULL: Ranks, as optionally shown after connecting or by !rank command and also used elsewhere, are now based on total points gained in any track/car combination.

Airio 2.1.7 (2009-03-28)

  • MAJOR: Substantial changes to the configuration files – merging of SRV and FIL files into Airio.srv.txt, merging CFG, CFG.NC, CFG.TC, and CFG.LC files into Airio.cfg.txt. Old arrangement would still function (at least for some time, until IncludeFile directive is supported), but this new one substantially reduces the number of external files, making it easier to find the related items.
  • Also the text lines from TXT.FQ, TXT.RL, and TXT.NT were moved into a new section of Airio.cfg.txt, with new items TextFAQs, TextNotes, and TextRules available. The old arrangement in NOT supported, the three formerly used TXT files are ignored. Any changes in FAQ/Notes/Rules buttons need to be updated by !rld, just like all other items.
  • Corrected a very bad behaviour of TimeAdjustment concerning good/great lap times (serious bug fix).
  • Updated !speed command. When used without number, it shows maximum speed regardless of speed trap.
  • Added a SetupSymWForce into Airio.srv.txt file (filters section) allowing to require symmetric wheels for all joining cars. Requiring this may mean less setup-dependent racing.
  • Extended blue flag info (incl. possible penalties) is now shown only in race, not in qualification or practice.
  • Corrected functionality of !axi command (bug fix).
  • Removed confirmation from !mgs and !msa (which is basically /msg sent to every server) limad commands, because the result is anyway clearly visible.
  • Crossing splits is newly seen as driving activity. Earlier the inactivity filter saw only finished laps as real racing.
  • Lowest reported best speed is now equivalent to 25 m/s.
  • The text "To see limad/admin commands type ..." is not shown anymore after connecting. There are other ways to communicate this if necessary – e.g. by defining messages for limads and admins.
  • FULL: Pit board and drift board, if active and used, are now hidden after pitting/spectating.
  • FULL: Added CheckCockpitExempt item into Airio.srv.txt file allowing to specify usernames (concatenated using '+') of drivers that are excluded from this check e.g. because of some sight disabilities. They are allowed to use any view.
  • FULL: In case there is a server message(s) waiting for the newly connected player, only the messages are displayed, not the large and small connect buttons. This prevents button overlapping.
  • FULL: Added !conn and !conns commands showing again the buttons (big and small) displayed usually on connecting to the server. It may be used if there was an incoming server message and these buttons were not displayed.
  • FULL: Corrected IRC support, because there were doubled Airio messages shown and also commands repeated twice. Not anymore.
  • FULL: Fixed a small bug when rank change was not reported right after receiving race points, but with some delay.

Airio 2.1.6 (2009-03-07)

  • Updated restart voting management. It seems patch Z10 is omitting some InSim voting data, making the previously used schemes behave incorrectly under certain conditions. New code will work both in Z10 and earlier Z-versions. Also doubled "Vote cancelled" messages will not be shown anymore.
  • Substantially improved speed trap handling. Each spot defined on a certain track is now handled separately, with its own number and optional best speed message. Drivers' best speed may be displayed by !speed num where num is particular speed trap number. Up to 4 speed traps may be defined for any track/car/both combination, including a global one by specifying node number as -1.
  • Made sure required car setup is observed also on track and the driver is spectated e.g. when pressing Shift+G with auto-gears prohibited (omission fix).
  • Added support for coloured messages using !msg and !rc commands. Also coloured Airio commands are now supported, they cannot be hidden though as the one starting with plain ! (exclamation).
  • FULL: Added CheckCockpit option into Airio.fil.txt file. If set to true, people switching the view from their car to Follow, TV Camera or Helicopter are always spectated. It may be too limiting, use it only when creating serious racing environment.
  • FULL: Added !msa command assignable to limads and sending /msg commands to all connected servers. The appropriate EnableMsa item specifying the required limad level is in file.
  • FULL: Added !rca command assignable to limads and sending set of /rc commands to all connected servers. The appropriate EnableRca item specifying the required limad level is in file.
  • FULL: The GlobalStats in Airio.cfg.txt file is ignored in this compile, local stats are always sent and global stats received. Instances using the FULL potential are shown in the servers table with lighter background colour and bold version number.
  • FULL: New item HideAllCommands in Airio.srv.txt file allows admins to hide all commands on individual servers (by overwriting the value in Airio.srv.?.txt files) or on all servers. Nobody will see any Airio commands then unless they start with $ or coloured !. Note that anyone may hide all commands even in the FREE version using a personal settings option.
  • FULL: Added more recovery means to transparently correct invalid soft split data.
  • FULL: Thanks to LFSW update it is possible to define several PubStat keys (of individual team members) in Airio.cfg.txt file that will be used in sequence and speed up data retrieval/display. Note to Victor: This does not raise the total number of requests for data, just speeds it up a bit when more are needed suddenly, e.g. after Airio restart.

Airio 2.1.5 (2009-03-04)

  • New item PenaltyBlue in Airio.srv.txt file allows to set penalty for ignoring blue flags. Possible values are SC for spectating the player and 30, 45, DT or SG for standard penalties.
  • Output of !ver command now includes server time. Note that it is the time of the computer where Airio runs. Also independent UTC time is shown.
  • Corrected usage of TimeAdjustment in file so that it affects also good/great split/sector times (bug fix).
  • Added !session or just !ss command showing session best lap times of currently connected people.
  • Improved custom start grid ordering by allowing to specify two different criteria. Check new items in Airio.srv.txt file, specifically GridPriMethod, GridPriReverse, GridSecMethod, and GridSecReverse. Also CustomGridCount was renamed to GridPriCount but the old entry will also function.
  • FULL: Changed !rules command into !info command, it still uses MsgInfo item(s) in Airio.srv.txt file.
  • FULL: Added !event, !events, !rule, !rules, and !infos commands showing text defined by new MsgEvent, MsgEvents, MsgRule, MsgRules, and MsgInfos items in Airio.srv.txt file. You can use these for any suitable additional information communicated to people, specifically for upcoming event and events in general, special rule or rules, information about server or track.
  • Allowed to specify alignment of text in the six above mentioned and other button-generating items such as ButtnMotd. The characters used are '<' for left-align (default), '>' for right-align and '|' for centred text.
  • The '+' character may now be used in text of messages/buttons without causing the line/button to end and a new one start. To create new line/button use the '+' as the first character in new item definition or type '++' combination in one item.
  • FULL: The !unban command will unban the name on all connected servers if BanOnAllServers is active.

Airio 2.1.4 (2009-03-03)

  • Fixed a bug causing incorrect application of some prohibited names.
  • Added server state and FULL version licence info into global statistics. Bold version number in the servers table means FULL compile is used. Hover mouse over that cell to see licence details. Hover mouse over server name to see its basic state.
  • In !pen commands limad levels of the one typing the command and the one targeted are no more compared.
  • FULL: Ensured that soft split data can recover from invalid values.
  • FULL: New item BanOnAllServers in Airio.cfg.txt file allows to propagate bans issued by Airio (automatically or using !ban command) to all connected servers.
  • FULL: New item CheckAddress in Airio.fil.txt file allows to kick players with doubled IP addresses. For this to function Airio must be connected locally with server logging (listening to server log changes) correctly configured and active.
  • FULL: New item ShowStunts in Airio.srv.txt may be used to disable stunt actions – best height, longest fast spinning.

Airio 2.1.3 (2009-02-22)

  • FREE: Allowed the option to partially reverse start grid based on last race results (see CustomGrid in Airio.srv.txt).
  • Added the possibility to define how many places are to be reversed (see CustomGridCount in Airio.srv.txt).
  • Improved the library connection/packet handling code to allow for quick reconnects without losing internal state.
  • Export to LFS Lapper's PB.txt file is now pure ASCII.
  • Current points for playing (!ptp) appear with position in !pb list.
  • Covered the possibility of connecting to a server in temp/abnormal state, such as without name or without any track loaded.
  • Corrected LFSW Data button function (small bug fix).
  • Added error handling code to timer/web events (inconsistency fix).
  • Added a check for automatic race restart covering lag troubles.

Airio 2.1.2 (2009-02-16)

  • Added a new item into file. Use TimeAdjustment to increase percents of WR required to enter server statistics in case high handicaps are used for some cars. The value is added to the MaxTime value in Airio.cfg.txt and may be track/car/both specific.
  • Confirmation of LFS commands issued by limads is now shown.
  • Implemented new points category plus accompanying commands. The !ptp command shows running points gained by playing on any managed server, any track, any car. Good for running some longer series on very different combos. The points get accumulated until admins manually delete them by typing !clrp. The data are stored in stats.

Airio 2.1.1

  • FULL: Improved Pit Board and Drift Board display arrangement, also automatic hiding of the boards is implemented.
  • Added new switches to the !show command for personal settings. The following are supported: KSC BGD TFO WPR IMN ZEA UVX. These are items left to right and top to bottom in Shift+i screen.
  • Corrected a bug not allowing to use DaysChamp=0 in Airio.cfg.txt.
  • Corrected track rotation – every race end rotates tracks now.
  • Corrected a small problem with !target command display.
  • Added the missing code to handle the !end command.

Airio 2.1.0

  • FREE: Enabled the !sini or !si server initialization even in free version. It is now possible to define / and ! commands to be sent.
  • Global stats are now supported only for 2.0.4 and newer versions.
  • Corrected a hidden track name bug in autocross handling.
  • FULL: Updated Drift Board display to show just the essential data.
  • FULL: Implemented Pit Board option to show essential race data on each lap end, similar to what is shown in reality: Current lap and position, lap time, name of the driver ahead and time difference, name of the driver behind and time difference (last known).

Airio 2.0.9

  • Implemented limited zones, not spectating players but invalidating their lap time. See LimitedZones item in file.
  • Separated large buttons shown on race and qualification start. See QualifyBtn item in Airio.srv.txt file.
  • Added an option to always spectate for speeding in pits, not only during race. This may prevent certain kinds of cheating. See item CheckSpeedingAlways in Airio.fil.txt file.
  • Drifting points are lower to keep them reasonable, just in units.
  • FULL: Moved the Drift Board display option to FULL version only.

Airio 2.0.8

  • Drift calculation was changed, it is now much less time-dependent.
  • GUI extended, 4 new buttons added allowing everyone to turn on/off acceleration messages (if active in server settings) and display drift points (again, if active).
  • One more button displays/hides drift board with drift angle, speed, time, and points, all data are updated live during a drift.
  • Last button will control pit board display with basic race data: lap, position, racer ahead, racer behind (to be yet implemented).
  • Corrected recognition of old STA files format (bug fix).

Airio 2.0.7

  • New !target or !tg command taking lap time as a parameter and showing required split/sector time distribution and comparisons.
  • New drifting score parameter, see DriftIdealAngle in Airio.srv.txt. Drifting score calculation is changed. Any ideas of ideal angle and other drifting parameters are welcome.

Airio 2.0.6

  • MAJOR: New configuration file allows to set what various limad levels can actually do and how they are protected.
  • Added limad commands simulating most of LFS server commands.
  • Limad commands help is split into three outputs (!l1, !l2, !l3) because it was too long.
  • Added a switch to the limad !ax command setting autocross laps.
  • It is now possible to define three timed messages sent at different intervals. See TimedMotd2, TimedTime2, etc. in Airio.srv.txt file.

Airio 2.0.5

  • Empty entries in file are now ignored (bug fix).
  • FULL: Added another stunt action – longest fast spinning after race.
  • FULL: Corrected a small bug in multi-join timer on race start.
  • FULL: Multi-join timer messages are now localizable.

Airio 2.0.4

  • More global data are being sent, overview of running instances and managed servers is available at
  • FREE: Minor update in log file renaming on server midnight.

Airio 2.0.3

  • Small updates in default personal settings and graphical output.
  • Commands using champ/total level data (such as !total or !drift) by default now summarize items from all cars on current track.
  • Fixed wrong output of !race(s) and !lap(s) commands.

Airio 2.0.2

  • Added server configuration allowing to spectate players driving under blue flag for defined period. See RepeatBlue item in Airio.srv,txt file.
  • Added an option to disable crash checks (speed and spinning) after race. See NoSpeedCheckAfterRace and NoSpinCheckAfterRace in Airio.fil.txt file.
  • Updated drifting score calculation to use (angle * speed * time).
  • FULL: Added limad level 3 (and admin) command(s) to list, load and clear autocross layouts using !ax [i|o|e].
  • FULL: Added possibility to reset server to its default state after some time of inactivity (no connections).
  • Small bug fixes, improvements.

Airio 2.0.1

  • STA files structure changed to reflect internal changes. Update to new structure is automatic.
  • Moved filter settings into separate file, Airio.fil.txt, to keep the server configuration file size reasonable. Old arrangement will also work.
  • Small bug fixes of the original release.

Airio 2.0.0 (2008-01-07)

  • Complete release after 9 months of intense development.
  • Comparing to 1.9 it changes some internal arrangements.
  • Comparing to 1.8 it uses its own full-featured InSim/OutSim library.

© EQ Worry, 2010