Airio LFS Tracker
Change Log / To Be Done
Change Log
Here we have an overview of all changes in increasing Airio versions.
You may see what was updated/added/solved since your last update and e.g.
transfer the new configuration items into existing files. Unless such items
are mentioned it is sufficient to overwrite just Airio.exe (executable)
and Airio.pdb (debug info) files.
Airio 2.5.0 (under development)
- Added SpecFalseStart to the SRV file. If true, people
jumping race start will be always spectated, not just penalized.
Also added PitFalseStart allowing to send people with false
race start to the pitlane.
- Improved waved yellow flag so that it is not raised as often
inapropriatelly (when two different parts of track are close).
- FULL: Extended list bans command (!lb) by an optional
filter string starting with *.
- Changed a bit the "last raced" message optionally displayed for
every new connection. Instead of date and time it contains date and
elapsed days since last racing in parenthesis, such as (3.8),
which seems to be more usable information.
- Added SpinCheckOnlyOnTrack and
SpeedCheckOnlyOnTrack to the SRV file. If set to true, the
excessive speed and spin (crash) checks are run only when the
crashing car is on the proper racing path, not when crashing
elsewhere.
- FULL: Improved several aspects of the site/track voting feature.
There's no initial track rotation now, which was causing troubles.
There are information texts not to join race while voting runs. If
someone violates the voting sequence by joining race and restarting,
he is kicked for bad behavior, race end is called again and new
voting starts. Also corrected rotation entering when on an
"external" track.
- PROS: Added support for online display of clean (good) AIRW
laps. New !cls (clean laps) command shows
AIRW good laps in a fashion very similar to !sb (server
best) display. New !cl command has a
format very similar to !pr (personal record)and shows
detailed data of certaind driver's good lap in particular combo.
Both commands support only current track and if required clean laps
data are not available the user is advised to join the track with
the particular car first.
- To limit external communication and to speed up data gathering
the downloaded personal data (from LFSW and AIRW) are stored for one
hour for each user, and if the user reconnects during the time these
local versions are applied. Because of numerous security disconnects
this may/should reduce external communication to around 50% of the
previous level.
- People with limited ban rights (by default limads level 2) can
also ban using the recently disconnected list, both manually (using
!ban) and graphically (using !rn in FULL version).
- PROS: List of current Airio bans (shown by !lb) is
displayed also to limads with limited ban rights (level 2 by
default).
Configuration: Airio.cfg.txt
– None. Airio.tcd.txt – None. Airio.srv.txt
– Added SpecFalseStart, PitFalseStart, SpinCheckOnlyOnTrack,
SpeedCheckOnlyOnTrack. Commands
– Added !cl, !cls.
Airio 2.4.9 (2010-08-22)
- The initial safety rating settings were moved to the CFG file,
where they logically belong, because these rating items should be
instance-wide and not server-specific. It concerns the following
items: StartRate, ExperienceRate,
RateStability, RateWarning, and RateLimit.
These items will be ignored in SRV file and if they do not exist in
the CFG file, Airio defaults will apply to everyone. Weight values
of specific actions remain in SRV file and may be adjusted for
individual servers.
- Added RateDailyDecrease to CFG file. The small negative
value is relatively applied to everyone who was not racing for the
day at any of the connected servers. Inactive people will not stay
at the top of the !safe list indefinitely now.
- Implemented advanced acceleration check as an additional measure
for fighting cheaters. The check is run together with speed check (CheckSpeed
must be true in SRV file) and it uses two values specified using new
AllowedAccel item(s) in TCD file, configurable for each
track/car individually. The first integer sets minimum speed in kmph
– acceleration is measured only above the speed. The second integer
number sets allowed speed increase in three
seconds, again in kmph. Anyone with higher speed increase detected
is spectated for security. When defining the 3 second speed increase
a certain safety margin is necessary, because speed reported by
server for individual cars is not an exact and perfectly reliable
factor.
- Added SiteList (with 7 two-letter codes) and
SiteName (with 7 full names) items to the CFG file, naming all
available track sites. Change here will be necessary only when new
site(s) are added to LFS (uhm).
- Added RotateMinutes to SRV file. It works limilarly to
RotateRaces, but instead of races finished elapsed minutes
since last track load/change are used. Note that just like the
number of races the elapsed minutes are compared only on race
finish. If there is no race, there will be no race end with
following track rotation called.
- FULL: Added a RotateRandom and RotateEnter to
the SRV file. If already on track that is part of rotation string,
the first item will simply choose next track randomly, not in the
sequence specified by rotation string. All tracks are equal in this
respect, so even the current track can be again chosen. All settings
specified in rotation for the track string are applied. Similarly,
the 2nd item will randomly choose one of the rotated tracks in case
the current track is not part of rotation string. By default both
are false – rotation is predictable and there is no rotation if some
unrotated track is currently loaded.
- FULL: Added RotateVote to the SRV file. Despite the
simple true or false setting this is in fact the most important feature of the version, hopefully
appreciated by many LFS users. If track rotation string is defined
and race end is called (by voting to end race or automatically) and
this item is true (default), the rotation string is analyzed,
included sites and tracks read. Then a menu appears allowing all
connected people to vote for the next track to switch to. First site
(AS, BL, etc.) must be chosen and then specific track on the site.
All people have equal votes, they may vote for each site/track only
once, but they may also vote for more sites/tracks at the same time
(left-click) and remove their earlier votes (right-click). Both
votings run for 15 seconds with countdown, current votes are
displayed to everyone, and at the end the site/track with most votes
is selected and loaded (with all applicable settings in the rotation
string). In case of equal votes one of the most required items is
selected randomly. In case of no votes the selection is simply
cancelled. uhm, do you like democracy?
- Moved AllowedSectrTime and AllowedSplitTime
from SRV file to the TCD, where they logically belong. Current
values in the SRV file will be ignored. Using TCD it is possible to
set higher under-WR ratios e.g. for the oval.
Configuration: Airio.cfg.txt
– Added StartRate, ExperienceRate,
RateStability, RateWarning, RateLimit (from
SRV file), added RateDailyDecrease. Airio.tcd.txt – Added
AllowedAccel, SiteList, SiteName, AllowedSectrTime, AllowedSplitTime (from SRV file). Airio.srv.txt
– Removed StartRate, ExperienceRate,
RateStability, RateWarning, RateLimit (to
CFG file), added RotateMinutes, RotateRandom, RotateEnter,
RotateVote, removed AllowedSectrTime,
AllowedSplitTime (to TCD file). Commands
– None.
Airio 2.4.8 (2010-08-06)
- PROS: Added correct race join check to be sure only valid data
are sent and applied to AIRW. In case race join routine end in error
for some reason, no subsequent timing data are sent.
- FULL: Improved server log handling, if activated using
LogServer and LFSPath in SRV file. During daily backup
the server logs are copied into lfs folder under Airio and
zipped for possible later inspection. Also IP address capturing
works much better now and will not fail in correct assignment even
when there are people connecting in quick succession.
- Added new !cat command showing number of cars currently
on track in every supported or defined category. It may be used for
a quick review of cars usage e.g. on multiclass racing servers.
- FULL: Extended server locking options. The manual or automatic
(depending on server time and number of connections) server lock
(activated or checked using !lk admin command) may be used
to limit race joining by rank, licence, rating, experience and/or
lap time. There are new LockByRank, LockByLicence,
LockByRating, LockByExperience, and
LockByLapTime items in the SRV file. Activating any of the
first for means the specific condition will apply only when the
server is locked, not at other times.
- Added several other parameters that can be used in custom texts
(welcome messages, spectate info) and that will be replaced in
runtime by actual data. In FREE version currently these parameters
are supported: {NickName}, {UserName},
{CurrTime}, {CurrDate}, {CurrTimeUTC}, {CurrDateUTC}, {CurrTrack}, {CurrCar}, {CurrCategory}, {ServerName}.
In FULL version these are added:
{LimadStatus}, {CurrRateValue}, {CurrRateText},
{CurrRankValue}, {CurrRankText},
{CurrLiceValue}, {CurrLiceText}, {CurrExpeValue}, {CurrExpeText}.
The parameters always refer to the current player, to whom the
message is being shown. Example: BadRating=^6Your rating :
^3{CurrRateText} ^7({CurrRateValue}%)
Configuration: Airio.cfg.txt
– None. Airio.tcd.txt – None. Airio.srv.txt
– Added LockByRank, LockByLicence,
LockByRating, LockByExperience, LockByLapTime. Commands
– Added !cat.
Airio 2.4.7 (2010-07-25)
- FULL: Added ShowWavedBlueFlag to the SRV file. If set
to true, users will see special WAVED BLUE FLAG message in case
there are more lapping cars approaching from behind. Also added
ShowWavedYellowFlag that would show special WAVED YELLOW FLAG
message in case the car causing yellow flag is reasonably close in
front and also on the standard race path. Additionally
WavedYellowGap sets in seconds the time gap of cars potentially
affected by the waved yellow flag.
- FULL: Added ClosePitAtRaceStart and
ClosePitAtLap1Finish to the SRV file. The items disable joins
in the race early stages, either for full 1st lap or from last split
of the first lap. The pitlane opens when the first split of the
second lap is reached. Additional ClosePitMinDrivers in the
same file allows to leave the pitlane open in case there's not
enough cars on track. Also added BadRejoin to the SRV file
to better explain the spectate cause.
- The !rls command, which is reloading stats of all
currently connected people, possibly after major data manipulation,
also updates good, maximum (to enter stats) and minimum (to be
kicked) split/sector/lap times of people on track.
Configuration: Airio.cfg.txt
– None. Airio.tcd.txt – None. Airio.srv.txt
– Added ShowWavedBlueFlag,
ShowWavedYellowFlag,
WavedYellowGap, ClosePitAtRaceStart,
ClosePitAtLap1Finish, BadRejoin. Commands
– None.
Airio 2.4.6 (2010-07-14)
- Added LogDebugs to the CFG file, allowing to turn
on/off Airio debugging messages. These are used for completely new
features, watching temporarily some parameters (e.g. speed in
braking zones), and older things exhibiting rare errors with as yet
unknown cause. Also new admin command !deb will start
printing debug messages among chat lines.
- Corrected a very unpleasant bug in manual track change handling
resulting sometimes in incorrect car type stored in stats and sent
to AIRW database. PROS: The AIRW site will be accepting data only
from Airio 2.4.6 or newer (when available).
- When somebody has blocked messages, Airio will not display to
him commands entered/used by other people. This state persists until
the messages are unblocked or the user types something (except
commands).
- When one car type is used in !sb (and its variants !top
and !near) or !tb command, the
current WR lap time is also shown in the output title row.
Furthermore current valid world record (both in standard and
supported custom cars) is shown as a separate entry (or entries,
when multiple cars are listed).
- The StoreAll item in CFG file was replaced by
StoreAllFor specifying in days for how long to keep basic (top
level) data of users without any PB stored in stats. By default this
info is kept for 30 days for everyone finishing at least one lap or causing at
least one safety rating update.
- Added an admin/statistics command to carry out SQL operations on
the database, !sql or !dbc. When SELECT command is
used the output will show the total number of rows and columns
returned plus first six column headers and first nineteen rows. When
other SQL commands are used, such as UPDATE, only the total number
of affected records is returned.
- Improved import to the SQLite database by !dbi and
export from it by !dbe so that this does not block other
processing.
Configuration: Airio.cfg.txt
– Added LogDebugs,
StoreAllFor, removed StoreAll. Airio.tcd.txt – None. Airio.srv.txt
– None. Commands
– Added
!dbc, !sql, !deb. Note:
SQLite is NOT YET the primary source of all Airio statistics. If you
carry out e.g. data delete operation using SQLite and want to apply
the changes to Airio statistics, database export is necessary, using
!dbe. Then, if there were users connected at the export
time, their statistics may need to be reloaded using !rls.
Airio 2.4.5 (2010-06-28)
- FREE: SQLite support is now available
in all Airio versions. Extended the SQLite
database by two more tables (one for possible future use) and
corrected some queries. Update to the new structure and import of
all existing data is automatic. Also !rld will now respond
to changes made in the UseSQLite item, opening (importing)
or closing the database as needed.
- The SQLite database file Airio.db3 is now part
of daily backup. In the FREE version it is stored in log
directory with date and .txt file extension, in the
FULL version it is part of daily ZIP backup (with optional upload to
a FTP server).
- As another step towards complete SQLite database support,
export command is available, !dbe. While !dbi
imports hash table (textual files) statistics into the database,
!dbe does the opposite, exporting data from database into the
internal hash tables. That means it is now possible to do changes to
the database externally (using some management client, SQL commands)
and then apply !dbe, updating all internal tables with the
new data. The export takes just a few seconds.
- New !rls command can be used to reload all currently
connected peoples' statistics from internal tables. This may be
required especially after using the above explained new data export
command, !dbe. Both commands require Airio admin status and
also rights to manipulate with the statistics (see EnableStats
in CFG file).
- Updated and double checked all data saving events to make this
important function more reliable.
- Added RestartOnTrackChange into the SRV file, allowing
to automatically restart race starting after track change from the
lobby (race end screen). Correct grid sorting e.g. by car speed can
thus be achieved.
Configuration: Airio.cfg.txt
– None. Airio.tcd.txt – None. Airio.srv.txt – Added
RestartOnTrackChange. Commands
– Added
!dbe, !rls. Note: When
using (experimenting with) SQLite, please make frequent backups,
because the functionality is still being developed.
Airio 2.4.4 (2010-06-26)
- Corrected a very serious stats bug making
version 2.4.3 basically unusable. Very sorry for overlooking this.
- Moved RaceLaps item from SRV file to TCD file, where it
logically belongs. This value sets the number of standard race laps
for which total race time will be stored in stats optionally
recalled by !race or !races commands.
- Improved saving of personal best stats by internally limiting
the updated items. This should make sure that impossible and incorrect PB
and TB times cannot appear in the statistics.
- FULL: Implemented a new crashing check allowing to limit maximum
allowed speeds in certain track areas defined by node numbers. Any
car seen with higher than he set speed is immediately (well, within
LFS possibilities) spectated with "high speed" as the reason.
- FULL: The maximum speed check data are specified in the
Airio.tcd.txt file using new MaxSpeedNodes item.
Allowed speed in first lap, subsequent laps and starting and
finishing nodes are specified, defining the area where speed is
checked. Any number of such areas can be specified in any track/car
combo. See the TCD file for more info.
- FULL: The actual speed limit check is turned on using new
CheckMaximumSpeed item in Airio.srv.txt file
on individual servers. Bu default this item is set to false,
meaning the allowed speed check is not carried out.
- FULL: As an extension of the above mentioned speed check by
nodes also speed check in custom-defined polygonal areas is now
available. In the TCD file it can be created using
MaxSpeedPolygons item for individual track/car combos. Actual
run of this check is also determined using CheckMaximumSpeed
in SRV file. See the TCD file for more info.
- New RestartOnTrackChange in the SRV file can be used to
quickly restart first race after track change to e.g. make sure the
new grid is properly sorted by car type speeds.
Configuration: Airio.cfg.txt
– None. Airio.tcd.txt – Added RaceLaps, MaxSpeedNodes,
MaxSpeedPolygons. Airio.srv.txt – Added
CheckMaximumSpeed, removed RaceLaps, RaceTime. Commands
– None.
Airio 2.4.3 (2010-06-23)
- PROS: Substantially improved AIRW support on the server side.
Clean hotlaps in standard cars are stored only if within two
percents of the current best lap time. The same is valid for world
records in custom (restricted) cars. Furthermore all the data are
now available online at
stats.airio.eu, using simple links, navigation and selection.
- PROS: The AIRW site newly supports also GT3 cars: XR3 (XRR
+ 34% air restriction) FZ3 (FZR,
28%), FX3 (FXR, 32%).
- FULL: Also LFSEI support is improved on server. The data are now
stored in a database, meaning the table at
stats.airio.eu is no
longer just temporary. Only people with LFSEI higher than 100 are
stored. Also nicknames sent along with requests to calculate LFSEI
are used in AIRW tables.
- FULL: Added basic SQLite
database support. On first Airio start after update the existing stats are
saved into Airio.db3 file, if it does not exist
already in Airio folder.
While Airio runs the file is constantly updated and always contains
the latest data. This file can be used for much easier data
extraction e.g. on Web sites supporting SQLite. The tables and
columns in the SQLite database exactly correspond to the structure
of textual Airio
statistical files.
- FULL: Use of SQLite has two conditions: 1) New UseSQLite
item in CFG file must be set to true (by default it is set
to false). 2) SQLite support
must be available via installed native libraries. You can download
libraries for Windows (one DLL file) and Linux (one SO file)
here – look for
precompiled binaries without TCL bindings. If SQLite support is not
available, it will fail with an error once and then will be disabled
until next Airio restart.
- FULL: There are two options to synchronize SQLite database with
Airio internal data tables, in case e.g. SQLite support was disabled
for a time: 1) Stop Airio, delete the database file, start Airio. 2)
Use !dbi stats-manipulation
command, which will drop existing tables and create/populate new
ones. The import is optimized and fast (a few seconds at most).
- Added LogStats item to CFG file to optionally log
all saves and loads of statistical data, separately from other
events. Also added DaysKeepStats saying in days for how
long peoples' stats should be kept. By default stats are never
erased, but you may set this value e.g. to 365 or 500 days to
automatically erase all inactive people. Newly also once a day all
stored lap times are compared to current WR and removed if too high
to enforce the MaxTime setting.
- FREE: Added HideHidden option to SRV file. If a server
managed by Airio is hidden or not connected to LFS master server
this item may be used to hide the server also on
Airio servers page. By default all
servers are shown.
- Added RaceRestrictedZones item into the SRV file. If
set to true (default), the restricted zones are applied only during
race. These zones are defined in TCD file and can cover popular
crashing corners, because they immediately send cars to spectate. To
define anti-cutting areas use limited zones, also set up in the
Airio.tcd.txt file.
- All pages on the www.airio.eu site (this one) have been renamed,
converted to ASP.NET, and assigned new style.
- Corrected some smaller bugs in applying safety rating changes
and keeping personal preferences of people not yet stored in the
stats. Also made some commands more resistant to incorrect supplied
parameters and communication lags.
- FULL: Updated !wrs and !bls commands so that
they accept multiple cars/categories to list world records and best
laps.
Configuration: Airio.cfg.txt
–
Added UseSQLite, LogStats, DaysKeepStats. Airio.tcd.txt – None. Airio.srv.txt –
Added HideHidden, RaceRestrictedZones. Commands
– Added
!dbi. Note: If SQLite
support proves to be useful and reliable, it may after adjustments become the
primary storage format.
Airio 2.4.2 (2010-05-25)
- PROS: Improved clean AIRW lap check for supported custom cars
hotlap saving. The path check is not as strict and allows for some
small lags, but newly cars in vicinity are checked and if too near
for two long, hotlap is invalidated. Also two new cars are
supported, UFB (UFR, 45%) and FBX (FBM, 20%). For
testing also FJR (FO8, 20%, 70kg) is available.
- PROS: Extended the AIRW support by storing also best online
clean laps (no cutting or drafting) in standard cars (no air
restriction). For now only one best online clean lap in each
possible combo is stored and reported, but extension is possible.
- PROS: Added !bl command to display best online lap in the
same fashion WRs are displayed. Also improved !wr output so
that it is clear when real (achieved online, stored at AIRW) and
recalculated WRs are displayed.
- PROS: Added two new overview commands, !wrs showing (all
or filtered) offline world records from LFSW and online world
records (custom cars) from AIRW, and !bls showing all current
best laps (standard cars) from AIRW.
Note: Only FULL/PROS version is released, there are no
changes in the FREE version, so there is no Airio FREE 2.4.2
Configuration: Airio.cfg.txt
–
None. Airio.tcd.txt – None. Airio.srv.txt – None. Commands
– Added
!bl,
!bls, !wrs.
Airio 2.4.1 (2010-05-22)
- Made smaller corrections and adaptations to quite a few of the existing features.
Optimized internal WR table handling.
- The !pr command shows only online records. Added !hl
command to show uploaded hotlap of any car on current track.
- FULL: Added !hls command showing optionally all or filtered
(by track/car) hotlaps including WR comparison.
- PROS: Implemented features similar to LFSW, but supporting
certain popular custom (restricted) cars. If a custom car is
recognized, data of each lap are sent to airio.eu and stored in a
database. Every lap time goes to a table of personal best,
improvements are reported on server as coming from Airio World, AIRW.
Absolutely clean laps (only within paths defined by LFS developers,
sometimes adjusted a bit) also go to hotlaps table, where the best
times represent current valid WR lap times. These tables are also
sent back to Airio with data included in WR table, personal bests,
and personal hotlaps. At present five custom restricted car types are
supported: XR2 (XRR with at least 24% air restriction), FZ2 (FZR,
20%), FX2 (FXR, 23%), XFX (XFG, 20%), XRX (XRG, 20%). The last two
cars are intended primarily for demo people. These additional data are not
currently used in LFSEI calculations, they may be included later, if
the feature is working reliably. However the data are available
using standard commands such as !prs or !hls (only
clean laps). The system allows for easy restriction definition
update at the server side. PROS version server admins, if you need
another car type (UFB), let me know please.
- It is now possible to specify in more detail what joining check
will be ignored for certain limad levels. AllowJoining
controls only repeated joining, while AllowRegister ignores
registration requirements and AllowLock could ignore time
lock. FULL: Similar items are available for advanced joining checks:
AllowLicence, AllowRank, AllowSafety, and
AllowExperience.
- FULL: If online driver's stats are available, the country of
origin, converted from full name to 2-letter code, is displayed in
the !pl output, using light blue colour. Yellow country code
comes from domain name (as derived from captured address), while white
colour represents personal language selection. All three codes could
give an idea about someone's nationality.
- FULL: Renamed some potentially confusing items in TCD file:
LicenceRanksText to RankPointsText, LicenceRanksPoints to
RankPointsValue, LicenceRatesLevels to SafetyRatesValue,
LicenceRatesText to SafetyRatesText.
Configuration: Airio.cfg.txt –
Added AllowRegister, AllowLock, AllowLicence,
AllowRank, AllowSafety, AllowExperience.
Airio.tcd.txt – Created alternates RankPointsText,
RankPointsValue, SafetyRatesValue, SafetyRatesText. Airio.srv.txt – None. Commands
– Added
!hl,
!hls.
Airio 2.4.0 (2010-04-16)
- FULL: Fixed some minor bugs and nuisances in the initial release.
Extended !pr command by WR+x% comparison. [2.3.9b]
- FULL: Improved average lap time usability by a personal option to
show on each lap finish in chat current and total average frame lap
and time needed to get new average best. This info is hidden by default,
but it can be turned on using a new button in !opt screen. The
option could also be configured by !show command using Av
switch. SetAverageInfo in SRV file is used to enable/disable
the display on 1st or every connect. [2.3.9c]
- Added OffPathWeight and GoodLapWeight to SRV file
allowing to fine-tune safety rating changes using more events. Both
apply only in race and one appearance off the track in race is allowed
(e.g. when joining late or entering pits). [2.3.9d]
- FULL: Updated LFSEI calculation a bit, both on client (Airio) and
server (airio.eu) side. Excluded "Class" from !ex. Known experience
indexes are now stored in personal stats in case tab-separated STA files
are used. Last known index is recalled on connect and is used in case
updated index cannot be received. Also new !exs command is available,
listing all known and stored (on this Airio instance) LFS Experience
Indexes. This LFSEI value can also appear in !pi output. [2.3.9e]
- The basic !pl command is now always accessible and AllowPlayers
in CFG file is used only to show/hide admin/limad status. Implemented
new !pls command showing extended player data as numbers – specifically
points, ratings, and lap times of all currently connected people. FULL:
Also experience is shown. Implemented new !plx command showing
extended player data as strings – specifically ranks, ratings, licences,
and experiences of all currently connected people. [2.3.9f]
- Added TP (total points) as another custom grid sorting parameter
to be used in GridPriMethod and/or GridSecMethod in SRV
file. The value is also shown in !grid output. [2.3.9g]
- AEGIO: Corrected completely wrong Unicode strings obtained in the
rare cases when conversion from LFS byte codes fails due to not quite
compatible code pages. [0.8.7]
Configuration: Airio.cfg.txt –
None. Airio.tcd.txt – None. Airio.srv.txt – added
SetAverageInfo,
OffPathWeight, GoodLapWeight. Commands – Added
!exs, !pls, !plx.
Airio 2.3.9 (2010-04-06)
- Fixed relatively simple but potentially highly unpleasant bugs in
countdown display, !pi command output, access to WRs file, and
possible erased personal preferences. [2.3.8c]
- Corrected tabs in !rt output, added {ServerName} as
a parameter to be used in custom texts, improved "intelligence" of dynamic
virtual tabulators. [2.3.8d]
- Extended !tg command by an option to compare lap times to
WR, possibly raised by specified percentage. This is done by specifying
4 as the 2nd parameter and % * 100 over WR as the third. It means
!tg 4 200 will compare your split/sector/lap times to current
WR+2%. in FULL and PROS this value can be used as timing comparison
base.
- FULL: Current % over WR is optionally displayed to driver on each
LFSW improvement (good info for !ex improvements).
- Changed definition of button clutch so that it is not auto
clutch and not axis clutch. [2.3.8e]
- Client layouts now get general name NONE instead of using empty
track name leading to various errors. To keep timing data and points
for specific layouts, the layouts must be stored on server and loaded
from the server (see !ax*). [2.3.8f]
- Corrected tabulated output of unusually long continuous lists, which
will be split into pages now. [2.3.8g]
- FULL: The !tg command now also shows target time comparison
to current WR. [2.3.8h]
- FULL: New ExperienceRate item in SRV file allows to set initial
safety rating (when a new player connects for the 1st time) based on
overall LFS Experience Index. This may allow LFS veterans to drive faster
cars on multiclass servers initially, but their rating will still go
up or down just like for everyone else. Initial rating is now also reported
(e.g. when LFSEI is known or when the driver enters track for the first
time).
Configuration: Airio.cfg.txt –
None. Airio.tcd.txt – None. Airio.srv.txt – added ExperienceRate.
Commands – None.
Airio 2.3.8 (2010-03-28)
- Added point display commands to show only registered drivers:
!rptt or !rtotal, !rptc or !rchamp, !rptp
or !rplay, and !rptd or !rdrive. All show the same
data as their versions without r, but limited to registered people.
[2.3.7b]
- PROS: Updated dynacaps to better handle unusual states (such as
no PB for the car type stored in stats). Changed the former !dc
command to more general !hc (handicaps). Admins can use !hc
car command to reset dynacaps to base values as defined in TCD file
(or to remove them).
- PROS: Implemented safety handicaps (a.k.a. safecaps) allowing to
penalize drivers for bad driving (as shown by the safety rating) using
handicaps. SafetyIntake and SafetyMass in TCD file can
set descending handicaps for ascending safety rating, while SafecapsManage
in SRV file actually turns on/off the safecaps system. The updated
!hc command shows applicable handicaps of all currently connected
people, while !hcs displays dynacap and safecap "source" values
(possible additions or reductions and ratings per restrictions). Safecaps
can be used together with dynacaps, in that case sum value is used.
The systems can also be combined with custom cars, but only when using
different handicap categories, e.g. intake restriction to define custom
cars and additional mass to be changed by dynacaps and/or safecaps.
[2.3.7c]
- DisableLimadJoining in SRV file can be used to disable free
limad joining on certain servers (see AllowJoining in CFG file).
They would need to comply with time, rank, licence, rating, or experience
requirements just like other drivers.
- Updated the !show command allowing manual setup of personal
preferences. Two letters are now required/displayed for each setting.
The following values are supported: Kk (kick reasons), Sc
(spec reasons), Bt (timing buttons), Ou (output buttons),
Bl (best laps), Bs (best splits), Bc (best sectors),
Gl (good laps), Gs (good splits), Gc (good sectors),
Ph (race path), Dt (distance), Tm (timing data),
St (soft splits), Pg (race progress), Ex (experience),
Sn (stunts), Sr (server times), Lf (lfsw times),
Pt (points), Rk (ranks), Lc (licences), Sf
(safety), If (general info), Rc (race info), Ow
(own data),
Pr (private data), Km (kmph/miles), Sd (own speed),
Bd (best speed), Cm (commands), Ac (acceleration),
Pb (pitboard), Pi (pit info), Db (drift board),
Di (drift info), Ds (single drift), Dl (lap drifts).
[2.3.7d]
- FULL: Updated LFS Experience Index display in chat for newly connected,
so that it is shorter and usually fits on one line.
- Added 38 new items into the SRV file allowing to change default
personal setting on 1st or every connect. All the items start with
Set word and shortly describe the data influenced. Also they
are grouped as they appear in the !opt screen. [2.3.7e]
- Substantially improved output display of many commands using virtual
tabulators that vertically align individual items. While it is visually
appealing there is a performance penalty – many more buttons must be
sent to clients resulting in slightly slower output display. If the
new formatting proves too demanding (leading to lost connections), it
can be turned off for the whole Airio instance using new TabulateOutput
item in CFG file. Tabulation can also be used in configuration files
under items outputting data to the small buttons in the middle of the
screen. Simply enter \t where a tabulator should appear. The
virtual tabulators always dynamically adjust to the complete sent data
and thus are very versatile. [2.3.7f]
- FULL: Added a command to show all limads defined on current server,
!srvlim. The command is currently available to everyone, but
for standard users limad levels are hidden. The command is first of
many future commands showing (and maybe also changing) server status,
such as filters states or settings. Output is graphical only (not to
chat lines). [2.3.7g]
- PROS: BufferIntake and BufferMass in SRV file can
be used to ignore small handicap changes and let cars stay on track.
Such small changes or handicap decreases are only reported in chat which
prevents massive forced spectates. [2.3.7h]
Configuration: Airio.cfg.txt –
added TabulateOutput. Airio.tcd.txt – added SafetyIntake,
SafetyMass. Airio.srv.txt – added SafecapsManage,
DisableLimadJoining, 38 first/every connect items, BufferIntake,
BufferMass. Commands – added r versions
of all points commands, !hc, !hcs, !srvlim, updated
!show.
Airio 2.3.7 (2010-03-20)
- Server lock was extended by controller type – it is now possible
to limit usage of certain controller types (e.g. keyboards). The check
is turned on/off using CheckControls, the individual prohibited
control types can be selected by setting to true ControlsMouseDisallow,
ControlsWheelDisallow, ControlsKBStabilizedDisallow, and/or
ControlsKBUnstabilizedDisallow items. Also ControlsSkipTime
is available to skip controls check for people with sufficient PB (server)
or PR (LFSW) lap time. All the mentioned new items are in SRV file,
in locking filter section. Also BadPlayerControls can be used
to set custom text displayed in big button(s) after spectating, allowing
to communicate more info. [2.3.6b]
- 33rd field of track/car statistics now contains date/time of last
update of the particular combo to facilitate faster import into a database.
This value is also shown in !pb output instead of last connect
time which remains in !pi. [2.3.6c]
- FULL: Updated car takeover routine so that e.g. rank/licence checks
are applied also to drivers taking over car from someone else. It is
also possible to disable car takeover using ProhibitCarTakeover
in SRV file (driver is simply spectated).
- FULL: VoteRateDifference in SRV file may be used to kick
people starting vote against sufficiently higher rated people.
- PROS: Finally (!) finished implementation of dynamic handicaps (a.k.a.
dynacaps) which is a system giving e.g. to race winner additional mass
to carry in the next race while making slower people lighter. The dynacap
system is car-based, meaning XFG will require the same handicaps regardless
of track. It is suitable e.g. for certain champ series, maybe applicable
also to everyday racing. The whole point is to make racing field more
competitive. The system is turned on per server by DynacapsManage
item in SRV file. People are then checked on race join and spectated
for insufficient handicap if necessary – additional spectate reason
text may be defined using BadHandicap also in SRV file.
- PROS: On race finish intake air and/or additional mass is adjusted
according to DynamicIntake and DynamicMass items in TCD
file, based on final position in the race (per car category). If update
is necessary the driver is immediately spectated, new values are shown,
and car setup update is required before joining again (higher handicaps
are allowed but not recommended). The two mentioned TCD items set base
handicap level (used initially), maximum change up (to more restricted)
from the base, maximum change down, and actual change values per race
finish position.
- PROS: When dynacap system is active new !dc command shows
required and current dynamic handicaps of all connected drivers, sorted
from most to least handicapped. Good for quick check of the current
dynacap state. [2.3.6d]
- FULL: Corrected smaller issues with !tr display data and
average lap calculation during qualification or practice. [2.3.6f]
- Improved multiclass racing info – current position in respective
category is shown in timing buttons on each split and also in pitboard
panel/info on every lap finish. Also race progress buttons show previous/following
driver in the same category. For multiclass racing best split/sector
race data are kept separately for each group and shown only to drivers
with a car from that group. Also best lap points are given separately
in each category and shown only to people belonging to that category.
- To change car type while spectating, without actually joining in
that car, !car type can be used. This can be used to "watch"
best times and laps of other car category on multiclass servers, because
the data shown depend on your current class.
- Updated optional blue flag info to include car type of the driver
being obstructed. On multiclass servers IgnoreMultiBlue in SRV
file may be used to completely ignore blue flags caused (usually just
temporarily) by cars of different class/category.
- Using SetupButtonAllow and SetupButtonForce in SRV
file it is possible to prohibit or require usage of button clutch. Driver
is seen as using button clutch when he does not have shifter and at
the same time he doesn't have automatic clutch. [2.3.6h]
- NoYellowNodes item in TCD file, which must always be under
some track and optionally even under car type, allows to specify areas
(as start to end node) where caused yellow flags will be ignored and
not turned into safety rating decrease. This is important to solve a
LFS yellow flag bug on certain tracks such as BL1R or AS3R (to be defined
yet). To assist in discovering the areas where yellow flags are shown
Airio system log now contains data about nodes where the flag was shown
and withdrawn, just as nodes where the flag was used to decrease rating
or (newly) ignored. [2.3.6i]
- SpecWeight, KickWeight, and BanWeight items
in SRV file may be used to decrease safety rating on each important
forced spectating, kick, and ban (all of them manual or automatic).
Taking the wrong route and driving into a restricted area in race are
also seen as forced spectate actions and thus penalized (by default).
Configuration: Airio.cfg.txt –
none. Airio.tcd.txt – added DynamicIntake, DynamicMass,
NoYellowNodes. Airio.srv.txt – added CheckControls,
ControlsMouseDisallow, ControlsKBStabilizedDisallow,
ControlsKBUnstabilizedDisallow, BadPlayerControls, ControlsWheelDisallow,
ProhibitCarTakeover, VoteRateDifference, DynacapsManage,
BadHandicap, IgnoreMultiBlue, SetupButtonAllow,
SetupButtonForce, SpecWeight, KickWeight, BanWeight.
Commands – added !dc, updated !car.
Airio 2.3.6 (2010-02-07)
- Added raw username and Unicode nickname of all drivers into Airio.sta.un.txt
statistics file, but only if tabs are used as item separators (not line
breaks). Unicode nicknames stored there make it much easier to display
the data on a Web page.
- Corrected bugs in !pi and best server lap display. Corrected
and optimized raw and Unicode nickname handling. Removed additional
internal arithmetic overflow check for now. Debugged !track command
which would not recognize reversed tracks to switch to. Debugged car
concatenations in rank/licence specific requirements (car groups are
allowed now).
- Instance and server scripts called at regular intervals or on race
start now run asynchronously not to block other things. Statistics are
cleaned when saved into STA files – unused and unnecessary or lost records
are removed. Updated !part and !join commands so that
the connection files can be disabled and enabled regardless of server
state. Parting is now also possible from the current server, but the
number still needs to be specified.
- The !reload or !rld command now supports two optional
parameters. The first one specifies the server whose data are to be
reloaded from SRV configuration files. Second optional parameter says
what version number of server-specific file is used. The numbering follows
the rules applied also to SET files called by !si command. That
means you can have not only Airio.srv.txt file (applied to all
servers) and Airio.srv.1.txt (with items applied only to server
#1), but newly also e.g. Airio.srv.1.2.txt file with another
version of server #1 specific items. To reload data only for server
1 while using 2nd version of the setup you can use !rld 1 2.
Common configuration files are skipped in this case, only Airio.srv.txt
and Airio.srv.1.2.txt files are read and their items applied.
Reload without parameters performs complete configuration reset.
- FULL: Added optional "lucky jumper point(s)" given at the end of
1st lap to the driver who advanced by most places from race start to
split 1. PointsJump in SRV file says how many points to give
and JumpPlaces sets minimal required jump.
- Temporary Airio log is now called log.txt (and not Airio.log).
This may solve some troubles with remote opening of the file.
- FULL: Completely removed Twitter support incl. the external library.
The service imposes so many limitations that no reasonable info about
races or servers can be communicated this way.
- Renamed the current FULL version to PROS (all features, great for
larger teams), added new and cheaper FULL version (only a few PROS features
missing [custom banning system, private/server messages, custom/scheduled
commands], limited number of servers, perfect for smaller teams), the
FREE version remains the same except number of connected servers is
again limited to four (and in future maybe just to two, but I'm not
sure yet).
- Additional StoreTotalPoints and StoreChampPoints in
SRV file can be used to easily turn off standard points counting of
the two kinds. Use this e.g. during an event when the points should
go only into playing or driving category and not into total and championship
points. The items can also be used to temporarily suspend the championship
(or even the total) points.
- FULL: New items RankByPlaying and RankByDriving in
SRV file allow to optionally use points for playing or points for driving
(or sum of both) as the base of ranks (instead of total points) on particular
server. This allows to use the combination of up to four rank bases
on different servers under one Airio instance.
- FULL: Added new total/champ statistical item, average lap time of
several continuous laps. Number of laps can be specified using AverageLaps
track/car specific item in Airio.tcd.txt file. If value greater
than zero is used consecutive lap times are kept and in case of an improvement
new average lap time value is stored. Champ standings may be called
by !avg (!bca) command, total standings are available
using !avgs (!bta) command. Tracks and cars and #
(or me) may be specified. The average total/champ lap time appears
including current positions also in !pb output. Average lap times
of currently connected people (including optional car specification)
will be displayed by a variant of !tm command, specifically
!tma.
- FULL: LicenceByAverage in SRV file can be used to base licences
on average (and not single) lap time (see above). This option may provide
more reliable licensing excluding "lucky laps", because several good
laps in succession are required.
- FULL: Newly online statistics of each driver are downloaded from
LFSW to be used in "LFS experience" calculations (see below). Also hotlap
tables are always downloaded (in FREE optionally). PB and OS data are
refreshed every 20 minutes.
- FULL: Implemented LFS Experience Index (LFSEI) calculation
using LFSW PB, HL, and OS data. From laps in different combos, total
driven distance, podiums plus finished races, and lap times (both online
and uploaded) compared to WR single value is calculated expressing driver's
overall LFS online experience. The value does not depend on used track/car
and is updated during LFSW refreshes.
- FULL: The LFS experience (see above) is shown by !ex command.
It shows values of five categories, the letters used have the following
meaning: T: tracks index, C: cars index, D: driven
distance index, R: races finished index, H: hotlap times
index. The overall value ranges from 0 to approx. 1000 – drivers above
400 or 500 can be seen as truly experienced.
- FULL: Using ExperienceRequired and ExperienceSpecific
in SRV file overall or car-specific indexes may be set on individual
server(s). BadExperience may contain additional text shown on
spectating. If only experience requirement is set but no rank or licence
conditions, people with insufficient LFSEI would be spectated or kicked.
However in case some rank and/or licence requirements are defined, the
index is used only as an optional value allowing experienced people
to be excluded from rank/licence checks. This whole scheme can be uniform
or it can depend on car type selected. If applicable, the optional LFSEI
values are shown to the spectated drivers both in chat and in big buttons.
- PROS: IPBanLength in CFG files implements simple banning
by IP address. If custom Airio banning system and server log reading
is active it allows to block banned IP for specified number of minutes.
People connecting from such IP are kicked with a message stating when
they can try connecting again. Due to inherent limitations please use
this setting reasonably.
- PROS: ServerLogName in SRV file can be used to set custom
LFS server log file name used e.g. for IP address and LFS commands capturing.
If multiple servers run from one directory, each log must have unique
filename defined.
- AdditionalToSerie in SRV file specifies if serie (limited
group of races) should include also additional points (good laps, best
lap, jumper, climber, stunts, improvements). By default only race result
points are used in series.
- FULL: UseAlternatePoints in SRV file will redirect total
and champ points used on this server to an alternate field in stats.
This in effect allows to separate total/champ points per server, but
only one primary and one alternate position is available.
- New best server lap time is now always shown in chat, only optionally
(using ShowServerBest) as a big RC message.
- FULL: Removed HideAllCommands option from SRV file. People
are always free to show or hide typed commands.
- Merged some GUI buttons into multifunctional ones to save space.
Created a new button to turn on/off display of stunt actions (shown
by default) and LFS Experience Indexes (hidden by default) in the FULL
version.
- The LimitedZones items in TCD file can now contain optional
4th parameter specifying penalty to be applied on entering the zone.
Lap made through limited zone is always invalidated, penalty makes sure
there can be no advantage in shortcutting.
Configuration: Airio.cfg.txt –
added IPBanLength. Airio.tcd.txt – added AverageLaps.
Airio.srv.txt – added PointsJump, JumpPlaces,
StoreTotalPoints, StoreChampPoints, RankByPlaying,
RankByDriving, LicenceByAverage, ServerLogName,
ExperienceRequired, ExperienceSpecific, BadExperience,
AdditionalToSerie, UseAlternatePoints, removed HideAllCommands.
Commands – added !avg, !avgs, !tma, !ex,
!exr.
Airio 2.3.5 (2009-12-24)
- Changed "unnamed" and "login" default names handling based on Scawen's
request. These two are now always part of new WName (wrong name)
item in CFG file, are allowed to stay on server, but spectated on every
race join. Also new is BadName item in SRV file allowing customization
of additional text shown in big buttons on screen after this spectate.
- New SmallLogo item in SRV file allows customizing (or removing)
the default "Airio Powered" text above server logo.
- ShowServerBest allows to display to everyone an RC message
with new server best lap time in a certain car.
- When custom start grid and multiple car categories are used, a new
item GridBySpeed in SRV file can be used to always put faster
car types forward (e.g. GTRs in front of GT2s). The relative speed of
categories may be defined/updated using CarSpeeds in TCD file.
In each speed category further sorting rules apply (e.g. by session
time or last race position).
- Added the option to use current combo points of each driver in custom
grid sorting. GridPriMethod and GridSecMethod in SRV file
now accept also CP as input (other options are RR,
ST, PB). The points are also shown in !grid command
output.
- FULL: If driver IP address capturing is active (by specifying path
to server directory), the data are converted into domains and shown
in !players output (such as CZ, UK or COM) instead of selected
language. In case of new drivers the domain is used to make initial
language selection from the available localizations.
- Updated the !target command. Typing !tg 1 or !tg
good will show split and sector times necessary for achieving a
"good" lap time by driver's current car on current track. !tg 2
(great) and !tg 3 (top) may also be used. In FULL
version these commands will create a new time comparison base selectable
by using Target in personal preferences (or by !cp tg).
- All important forced spectates are now checked to be sure server
did not ignore the command, as may happen sometimes. The command may
be reissued up to three times. The same safety check is done on all
/kick commands as well.
- Implemented advanced check for entering track from pitlane. If cars
are approaching that are one or more laps ahead, the driver trying to
join race from pits sees a message not to enter the track now. Only
when such cars pass he's allowed to continue. New TrackReturnGap
item in SRV file defines in seconds how far ahead the joining car must
be to be allowed to return to track. TrackReturnPenalty says
what penalty is applied for bad return to track (spectate, send back
to pitlane, drive-through, etc.). CheckPath filter must be active (meaning
also the PTH files must be available) for this feature to work.
- Added support for import of Lapper's PB.elp export file, version
1. The !import command will look for this file first and if found
in Airio directory it will read it and convert to Airio stats. If the
file is not found, the older PB.txt is used for import.
- New item HostRate in CON file allows to set update rate of
car data (speed, location) per second used for connection to this server.
Values of 1, 2, 5, 10 and 20 are supported with 10 updates per second
being the default (corresponding to 100 ms).
- Cars rotating faster than 270 degrees per second in race are reported
in the system log as crashing using "CRASH - Spin". Also corrected drifting
calculations which could fail under certain circumstances. Updated
!time command which now shows lap times of all people in the
cars they currently use. Ranks and ratings are shown also on layouts.
- Output of !rks and !rts is now reversed, with highest
ranks/ratings on top. Corrected !pi output in which some lines
could be doubled. Corrected !ver output showing wrong connections/players
count or hiding that info completely.
- FULL: Stunt height after race is measured above road level, not
absolutely, meaning PTH files are required for stunts now.
Aegio .NET InSim library and Servers page updates:
- Seriously updated both TCP and UDP sending and receiving key procedures
to a much simpler, more efficient, and more reliable (hopefully) form.
The UDP communication was very buggy until now, which was discovered
only when creating a new client-side tool, Aonio, relying heavily on
connectionless datagram data (UDP).
- Rewritten strings handling, conversion tables are not used anymore,
complete conversion of LFS encodings to Unicode and back (wow!) is supported
now, meaning Airio localization is not limited to European languages
anymore. Support of certain code pages is required on the operating
system, but tests show it works both on Windows and in Linux (through
Mono).
- Added support for the latest OutGauge data (Z25+).
- Corrected raw and Unicode string handling, full server names will
be displayed now and there should also be valid links available even
when Japanese and other non-standard characters are used. This also
applies to usernames – LFSW data are correctly retrieved even for people
with strange usernames.
- Updated lfs:// links allowing direct and simple connect to
any of the servers by just one click on the server name.
Configuration: Airio.cfg.txt –
added WName. Airio.tcd.txt – added CarSpeeds.
Airio.srv.txt – added BadName, SmallLogo, ShowServerBest,
GridBySpeed, TrackReturnGap, TrackReturnPenalty.
Airio.con.txt – added HostRate. Commands
– none.
Airio 2.3.4 (2009-09-14)
- Using Limad0 – Limad5 items in SRV file(s) it is now
possible to define limited and virtual admins for individual servers
in case you need that separation. Server-level settings always have
precedence over CFG-level entries.
- FULL: New LimadDesc item in CFG file allows to rename limad
levels to something meaningful. The description is displayed in !players
command output and is also available as {LimadStatus} variable
to be used in custom text and commands.
- Extended start grid ordering by server personal best lap time option,
PB. Added GridQualMethod to SRV file allowing to change grid
ordering after qualification based on session or server personal best.
Accompanying GridQualCount and GridQualReverse items set
how many drivers are influenced and if they are reversed for special
types of racing.
- ClearSessionOnQual and ClearSessionOnSpec in SRV file
can be used to enforce qualification realism by disallowing spectates
from anywhere else than pitlane. Drivers need to enter pitlane and then
spectate, or their session lap time is lost and they are moved to the
back of the race start grid (if sorting by session time after qualification
is used, see above).
- FULL: Enhanced the !sall (spectate all) command. For example
!sa 32 will spectate all people and allow only 32 with best session
time to join. The rest must wait for 15 seconds if there are some free
spots remaining. This is good for giving preference to people with best
(e.g. qualification) times over those who just happen to be on track
during race restart.
- SecondsCountdown in SRV file sets length of countdown display
before automatic restart or race end. Updated !re and !end
commands can take one integer parameter (in seconds) launching the countdown
and later restarting or ending race.
- FULL: Added two new driver overview commands. The !pbs [tracks+cars]
[name] displays all (or selected) server lap times of a driver.
Data shown include track, car, PB, difference to WR in %, TB, difference
to PB, number of laps, date the PB was made and how many days in past
it was. Very similar !prs command summarizes LFSW data of a connected
driver. Both commands could be handy on a server with time-lock because
you can see what cars are actually available to you, if any.
- Changed RegisteredUsers (allowing to specify usernames for
some event) to RName in SRV file. Only these people will be shown
in !rsb, !rtb, and exported to Lapper's PB.txt file using
new !rexp command. Also registered users can use any nickname
and skin name.
- New LimitToRegistered item in SRV files limits server use
only to people specified in RName (see above). Another item in
SRV, UnregisteredCanSpec, defines whether unregistered people
can stay on the server or if they are kicked immediately. Textual
NotRegistered item can be used to display additional info (3 lines)
in buttons to spectated unregistered people.
- Forced spectate after finish is accompanied by (optional) explaining
message. Also total race time is shown together with difference to previous
best race time (in layout racing) and the last lap/split data stay on
screen for review.
- Added WebDescription item into CFG file allowing to set additional
text displayed in the instance field on Airio servers page (e.g. team
Web address). Also added WebDescription into SRV file providing
additional server description (e.g. settings).
- Data for Airio servers page are now sent using POST to overcome
GET limit (2 KB) when using very long descriptions.
- Changing car type erases not only current session data, but also
last race position used for grid sorting (omission fix).
- Help screens are for limads/admins continuous, with the Previous
and Following buttons listing through all seven outputs.
- Time lock can be applied only in race using new LockOnlyRace
item in SRV file. Between races and in qualification/practice anyone
can join if true is used, but people with insufficient time must wait
with joining to race end.
- Updated !wr command so that it works also with custom cars.
Such split/sector/lap times are shown as VRs (virtual recs).
- FULL: ResetPenalty1 in SRV file accepts also SE as
parameter meaning direct spectate for any car reset in race. If allowed
in server settings, car reset can be then used only in practice and
qualification.
- Corrected the reported bugs (nickname display, daily log name,
!pb output in champ area, pitlane penalties, too short DT, penalty
for bad pit entry, custom commands, idling on autocross tracks, applying
time adjustments).
Configuration: Airio.cfg.txt –
added WebDescription, LimadDesc. Airio.tcd.txt
– none. Airio.srv.txt - added GridQualMethod, GridQualCount,
GridQualReverse, ClearSessionOnQual, ClearSessionOnSpec,
SecondsCountdown, LimitToRegistered, UnregisteredCanSpec,
NotRegistered, WebDescription, LockOnlyRace,
Limad0 – Limad5. Commands – added !pbs,
!prs, !rexp.
Airio 2.3.3 (2009-08-19)
- Added BName item into CFG file allowing to specify permanently
banned usernames. It is better to use this list instead of Airio FULL
(temporary) ban system/list. To have all perma-banned names in an external
file use IncludeFile directive.
- Created two more personalization items, one selecting if best speed
is show (in button selecting also own speeds), the other allowing to
see when the car is leaving defined racing path and coming back (combined
with acceleration display).
- Added !opt command to call personal options, the same configuration
GUI shown by Shift+i. Unfortunately many drivers still do not
realize they can select message types and other items to show and hide,
maybe this command will be useful, being less obscure than a keyboard
shortcut. Its alternative is !myconfig used for similar purpose
by LFS Lapper.
- Added a few variables that can be used in all textual items or server/user
(see below) custom commands, specifically: {NickName}, {UserName},
{CurrTime}, {CurrDate}, {CurrTrack}, and {Parameter}
passed to a custom command.
- FULL: Implemented support for user commands, executed on behalf
of the current user (while server commands execute in the server context)
using UserCommand in SRV file. Any combination of Airio (not
LFS) commands can be defined.
- FULL: To be able to show something to users via user commands four
new non-replicated (not shown) items were created: !linechat(s)
(!lch, sends one chat line), !multichat(s) (!mch,
sends several chat lines), !showsmall(s) (!ssm, displays
small buttons), !showbig(s) (!sbg, displays big buttons).
In the passed text ++ is used as line/button separator and 's' at the
command end means it is sent to all connections. Localization is fully
supported as !now example shows:
UserCommand=now Shows current time ||CZ Ukazuje aktuální čas
> -1 > !lch ^7Current date and time : ||CZ
^7Současné datum a čas : ||+ ^3 {CurrDate} {CurrTime}
- FULL: Driver receiving messages or buttons in custom commands may
be set using special !selectplayer (!slp) command. Earlier
displayed buttons can be hidden, optionally with specified delay by
!hidesmall(s) (!hsm) or !hidebig(s) (!hbg).
Here is an example of custom limad 2 or higher !warn [driver]
command showing big warning to someone for 10 seconds:
UserCommand=warn Warns a driver > 2 > !slp {Parameter} ; !sbg
^7{NickName}^7, you get a serious warning! ++ ^3Next time you are banned...
; !hbg 10
- FREE: Removed limit put on the number of connected servers (formerly
four). All Airio compiles can now be connected to any number of LFS
servers, but if more than 4 are required it is necessary to adjust
NumServers item in the CFG file.
- Separated button/chatline output into two categories, timing (split/sector
data, distances, race progress) and command (output of !sb,
!pl and many others). This makes it possible to have no additional
buttons while racing (with timing data optionally shown in chat) and
at the same time use buttons for commands, because they can display
much more info.
- Improved custom speedtraps (up to 4 on each track, by default installed
into split points, but fully configurable using TCD file) by adding
speed comparison. Drivers with subscribed Race Speed data will see in
chat on each speedtrap their current speed, difference to own session
best speed (one connection, green means improvement, red the opposite)
and difference to total race best speed at the track point. Good for
comparing turn output speeds or maximum speeds on straights.
- Added MaxSectorTime into SRV file optionally setting what
time drivers have to pass next split. If the allotted time expires the
driver is spectated for bad (slow) driving.
- Added SpecAfterFinish into SRV file that can be used to keep
the track clear e.g. in autocross races. Also updated autocross support
by storing best race times (incl. penalties) and supporting idling checks.
- Added NearGap and NearCars into SRV file. The 1st
defines in seconds what does "near" mean, the 2nd then how many cars
must be near you for certain checks to run. Currently the following
checks are affected: lagging, spinning, causing yellow flag. Under default
settings no one is spectated/penalized if there's no car 5 seconds distant
or closer.
- The !re(start), !end and !qu(alify) commands
now run check to see if the action was really carried out by the server
- LFS commands are sometimes ignored, if there's a huge lag. The commands
are sent 5 times in 5s intervals before giving up.
- Enabled to disallow or require automatic clutch and shifter. The
following new items in SRV file are used: SetupClutchAllow,
SetupShiftAllow, SetupClutchForce, SetupShiftForce.
- Added UseRoundCountdown into CFG file for admins that simply
do not like the round race restart/end countdown display.
- FULL: Added RotateTracksFull into SRV file allowing the use
of any group of Airio/LFS commands in track rotation scheme.
- FULL: New UsePitLaps in SRV file allows to define pit windows
(together with obligatory pit work) in laps and not minutes.
- Added PitExitPenalty into Airio.srv.txt file to define
penalty for bad pit exit in race: 45 and SG are always applied, 30 and
DT only if there is no other penalty pending. Other options are SE and
PL, spectating and sending to pitlane respectively.
- Renamed LastPitNode to PitExitNode in Airio.tcd.txt
file. Added PitEntryNode into the same file. Added CheckPitEntry
and PitEntryPenalty to SRV file. These last three items can together
be used to penalize bad pitlane entry, but only in race.
- Corrected optional display of "dirty" lap when PB is not saved due
to failed path check. Path check is also skipped in case the driver
is lagging, because otherwise it leads to many incorrect and frustrating
(my own experience) dirty laps.
- RacePathDelay in SRV files specifies in tenths of a second
for how long must a car be outside the racing path to be seen as driving
improperly. This helps to fight slight lagging issues when the server
calculates/shows car position incorrectly.
- Corrected display of total race time longer than one hour. In that
case only hours, minutes and seconds are shown. Also corrected minor
textual errors in default MSG files. If race points are defined then
on start only really used cars are shown.
- Added functionality similar to !near to all listing commands.
If special character # or special word me is used instead
of position, the list will show people around you in the selected category.
Example: !safe # will show people around you in safety ratings,
!total xfg # will show total points got in XFG with you in the
middle. Affected commands are !sb (gives the same output as
!near), !tb, !total, !champ, !play,
!drive, !safe, !laps(s), !race(s), !pod(s),
!serie(s), and !drift(s).
- Enhanced several total/champ data commands to accept combined car
types and also custom car categories. They are the following: !total,
!champ, !laps(s), !race(s), !pod(s),
!serie(s), and !drift(s). This means that e.g. !race tbo
will show weekly best race times on current track in any TBO car (with
car type also stated).
- Corrected very wrong handling of AI spectating when combined with
other spectate reasons (serious bug fix). Corrected repeated display
of other entry info buttons when clicking OK after being spectated.
Corrected wrong handling of drive-through penalty clearing by admins
(bug fix). Corrected some clean lap resets. Corrected rotation string
synching. Improved grid clearing in track rotations. Fixed other small
display things.
- Updated display on the servers page (using
tool-tips) by state flags (Servers field), server version and
country (Tracks), current/maximum users and total server lag
(Users), and all allowed cars (Cars). Also clicking on
cars will display standard LFSW live race progress info.
Configuration: Airio.cfg.txt –
added UseRoundCountdown, BName. Airio.tcd.txt –
added PitEntryNode. Airio.srv.txt - added PitExitPenalty,
CheckPitEntry, PitEntryPenalty, RacePathDelay,
UserCommand, RotateTracksFull, SetupClutchAllow,
SetupShiftAllow, SetupClutchForce, SetupShiftForce,
NearGap, NearCars, MaxSectorTime, SpecAfterFinish.
Commands – added !opt.
Airio 2.3.2 (2009-07-29)
- Implemented optional best single drift and best lap drifts messages
using a new GUI button with four states. Added Private data option
under Own data button, governing display of yellow flags caused,
reasons for invalid laps, and reasons for no points. Each Airio user
currently has 36 options to customize the application output and behaviour.
- Added support for PTH files defining proper racing path. Accompanied
by point-in-polygon routines this allows to perform additional advanced
car position checks, e.g. ignoring PB times achieved by cutting (without
defining limited zones).
- Added OffPath item into Airio.tcd.txt file stating
in whole meters how far outside the proper racing path a car can be
while still considered as driving properly. This parameter in effect
widens the standard LFS HLVC path to allow for some cutting.
- Added CheckRacePath item into Airio.srv.txt file.
If true, personal best sector/split/lap times will be saved only from
"clean" lap, in which the car was never seen outside racing path, as
defined by PTH file and OffPath parameter.
- Added OffTrackIdling and OffTrackDriving items into
Airio.srv.txt file optionally allowing idling or wrong way driving
when outside of the proper (widened) racing path.
- Added LastPitNode to TCD file stating where pitlane really
ends. Added CheckPitExit item to SRV file. Together with proper
path definition these items can be used to enforce (partially) pit exit
lines. Cutting pitlane exit results in spectate.
- To check for race path borders turn on the race path check and turn
on also all messages (e.g. by !noisy). Airio will report when
your car leaves the track and enters it back which allows for some
OffPath and LastPitNode fine-tuning.
- Corrected !axi (list layouts) output, which was cut short.
Added !axs command to save currently loaded layout to server.
- The !lock or just !lk command is now with informational
output available to normal users to see what time they need.
- The !track or just !tr command output is now optionally
graphical (in buttons). It also includes additional track data calculated
from PTH file: Exact track length (optimal line), min and max track
width, height difference.
- 14 common spectate reasons on race join are now also shown as big
buttons, not only in chat lines. Hopefully people will see/read those
and take appropriate corrective actions. All these explanations can
be accompanied by localizable custom text using 14 new items in SRV
file (all starting with Bad). This makes it possible to define
e.g. advice about how to overcome currently applied time lock (maybe
by making good lap elsewhere online or by uploading a hot lap offline).
- FULL: Added options to display driver information and
unban driver to the Act limad/admin button where appropriate.
Available options are now more selective based on current limad rights.
The button is displayed also beside the ban list.
- Fixed incorrect layout handling in rotations and elsewhere (bug
fix), corrected also speed reported in layouts.
- Implemented !grid or just !gr command to show expected
grid on next race restart, if custom sorting is used. Note that actual
grid positions depend on drivers on track when the restart really occurs,
because only cars on track are sorted.
- Added new !rsb (!topqual) and !rtb (!ttopqual)
showing server best real/theoretical lap times of drivers registered
for some event. The usernames are taken from new RegisteredUsers
item in SRV file.
- FULL: Added {N} parameter to custom commands, always replaced
by current player nickname.
- Fixed a LFS bug allowing cars on BL2 to complete drive-through by
cheating.
Configuration: Airio.cfg.txt –
none. Airio.tcd.txt – added OffPath, LastPitNode.
Airio.srv.txt – added CheckRacePath, CheckPitExit,
OffTrackIdling, OffTrackDriving, BadPlate, BadSkin,
BadTyres, BadPassengers, BadHandicaps, BadCarSetup,
BadPlayerSetup, BadCarType, BadJoin, BadLock,
BadCamera, BadLicence, BadRank, BadRating,
RegisteredUsers. Commands – added !axs, !grid,
!rsb, !rtb.
Airio 2.3.1 (2009-07-19)
- Implemented Previous and Following buttons enabling
everyone to easily move through all kinds of lists spanning over several
pages, generated e.g. by !sb, !ptt, and many other commands
including admin/limad ones. This very handy and user-friendly addition
for easy listing is finally available.
- FULL: The !players and !recent lists now show to limads
Kick, Ban, and Act buttons according to their available rights. By simple
clicking it is possible to ban (optionally for specific length and with
some reason), kick and spectate/pit/penalize drivers. Good for server
management, making !ban and other typed commands obsolete. Action
confirmation is required.
- Extended the output of !recent command showing now 24 latest
disconnects with reasons and time elapsed.
- Added AllowRecent to CFG file setting the limad level from
which data about disconnects are available (–1 = everyone).
- Implemented limad/admin !cv command to manually cancel approaching/running
race restart/end vote.
- Fixed a situation when everyone would be kicked for bad name if
empty PName in CFG file is used. Done several smaller fixes and
corrections.
Configuration: Airio.cfg.txt –
added AllowRecent. Airio.tcd.txt – none. Airio.srv.txt
– none. Commands – added !cv.
Airio 2.3.0 (2009-07-14)
- Separated Airio additional checks into two categories, Basic and
Advanced. They can be turned on/off as groups using the extended
!ch[a|b] [on|off] command(s). Basic checks: CarSetup (gears,
brakes), DriverSetup (ABS, TC), Tyres, AIs, Passengers, CarTypes
(prohibited), Limited zones, Restrictions (handicaps), Lock (lap time),
Ranks, Licences, Ratings. Advanced checks: Name (prohibited),
Name (doubled), Cursing, Text (numberplate), Skin (name), Flooding,
Speed(impossible), Spin, Time (impossible), Speeding (pit lane), Restricted
zones, Idling, Driving (wrong way), Lagging, Blue flag, Camera (view),
Address (doubled IP), Join (limited count). Advanced checks cannot run
without basic checks.
- Allowed nickname filtering in all the global statistical commands
such as !sb, !ptt, !ptd, !bcr, !bcl
and others. Filter applied to nicknames is defined after '*'. Examples:
!sb tbo *[AA] shows PBs in TBO cars of only AA team members,
!ptp *R2R™ will show playing points only of people with nickname
containing the specified case sensitive string. Online !help
lists all the commands supporting filtering.
- Implemented !verb [1-3] command to allow anyone to temporarily
change the amount of Airio messages received. Specifying 1 (or
using !silent) suspends almost all messages and additional features.
Good for an event. Specifying 3 (or using !noisy) results
in receiving almost all messages. Good for testing. Value 2 (or
!custom) returns standard state, when only chosen messages are
seen. The !silent and !noisy commands are switching between
specific and standard mode.
- Updated GUI so that the above explained three verbosity states may
be also selected by clicking on Messages button.
- Added DefaultVerbosity and StandardVerbosity into
Airio.srv.txt file allowing to set level of messages shown to
new drivers and to everyone else just connected. In both cases drivers
are free to change all personal settings.
- Added two new personal settings allowing to select only best/good
lap and not splits or sectors. The Best times and Good times buttons
now have five "positions", going in cycle.
- Updated the limited admin (limad) system. In FREE version Limad0
is now fully configurable, not limited only to prohibited names usage.
This possibility is defined by new AllowName item in CFG file.
Also a new item Limad4 was created in CFG file, defining virtual
admins that can have all Airio admin (and limad, of course) commands
available, but that do not use or know server password (they are not
server admins). In FULL the virtual admin level may be defined using
IsAdmin key, in FREE version the value is always 4. FULL also
supports Limad5 that may have even more rights than regular admins,
but it always requires server password, or the level is dropped by one
grade.
- Now also admin and not only limad commands (!ahelp) are separated
into categories assignable to high limad levels. EnableStats
allows manipulating with statistics, EnableConfig allows to change/restore
configuration, EnableCommun makes FTP/IRC commands available,
and EnableQuit allows to stop/restart Airio. As a security measure
all these categories also require admin rights (real or virtual).
- Added RaceTime into SRV file to accompany RaceLaps.
Both items set minimal race length for storing the total race time into
!race(s) output.
- Moved CheckName, CheckDouble and MinNameLength
from SRV to Airio.cfg.txt file, where these items logically belong.
- Added EnableBanFull into CFG file, renamed EnableBan
to EnableBanLimited. Limited ban allows to ban only online drivers
and only for default ban time, while full ban has no limitations.
- Added AllowPlayers and AllowReport items into CFG
file. They can be used to allow everyone to see other peoples' status
(limad/admin, basic car setup) using the !players (!pl)
command, and to disable sending reports via the !rep command.
- FULL: Added VoteDynamic and VoteLevel to SRV file,
allowing dynamic management of drivers' kick/ban voting based on the
"power" (sum of levels) of connected limads/admins.
- Replaced shown drifting points by drift info stating covered angle,
average speed, length and resulting points. Personal setting selecting
this option is under Drift board/info button.
- FULL: Added pit info shown on each lap finish. First line shows
lap, position and all split (sector) times for review. Second line shows
gaps to players in front and behind with their names. This is turned
on/off using Bit board/info settings button.
- Corrected/updated other smaller things (blue flags, limited zones,
optimized checks, stats cleaning, stats storing, better defaults, improved
joining sequence, GUI reordering).
- FULL: Fixed a small but unpleasant bug in the custom banning system
(bug fix).
Configuration: Airio.cfg.txt –
added CheckName, CheckDouble, MinNameLength,
EnableBanFull, AllowName, IsAdmin, EnableStats,
EnableConfig, EnableCommun, EnableQuit, AllowPlayers,
AllowReport. Airio.tcd.txt – none. Airio.srv.txt
– removed CheckName, CheckDouble, MinNameLength,
added DefaultVerbosity, StandardVerbosity, RaceTime.
Commands – extended !ch[a|b] [on|off], !verb [1-3]
(!silent, !noisy, !custom).
Airio 2.2.9 (and older versions)
To Be Done
These things are planned to be included in future Airio releases. They
are listed approximately in the order I plan to add them, determined by
usability and compatibility with the current design.
Priority requests
- PROS: Create custom voting system.
- Update button IDs so that they're used in a better way.
- FULL: Make command to call external script and show response in
chat or buttons.
- FULL: Add endurance racing support (ignoring disconnects).
- PROS: Allow down/up load of (zipped) stats for the Autio web stats.
- FULL: Display data about voting drivers, keep voting stats.
- FULL: Maybe store warn, spec/pit, kick, and ban statistics.
- Allow setting of max. ban length for all limad levels and force
the value.
- Add messages/buttons to show on 1st and subsequent race joins.
Near future
- FULL: Create joker lap zones + additional info.
- FULL: Allow track/car voting for rotation.
- Add options to prohibit drifting. Check for bump-drafting.
- Optionally display "crash warning" message to approaching cars in
race (with time and distance).
- Show results table and race summary.
- Add time-based track rotations.
- Allow special drivers' labels (additional text).
- FULL: Support team definitions and display of combined points (race,
event, series).
- FULL: Improve private messages, allow messages between servers,
definable static groups.
- FULL: Add event sign-ups/display/management.
- FULL: Convert soft splits measuring to MCI count.
Maybe one day
- Add multiple welcome/info screens using Prev/Next.
- Add support for MSN.
InSim requests
Here are some things that would be cool to have available as InSim info,
because certain Airio improvements would then be possible. But these need
to be implemented or corrected by LFS developers.
Posted
- Move TC info from car [only IS_NPL] to player data [IS_NPL, IS_PFL,
etc.], announce change on track (such as with AG).
- Support longer messages to connections/players (at least 96 bytes).
- Support (at least) a new bit saying if car is damaged (for pit work),
make eng. damage available.
- Allow sending "hidden" info to InSim apps on clients (such as
/i is used for server info).
- Include avg. tyre and clutch temperature in OutGauge data, make
oil/eng. temperatures work.
- Also include active Crtl+Shift combination into (local) OutGauge
data for multipurpose buttons.
- Create a LFS command for cancelling running kick/ban votes.
Not posted
- Report engine damage, allow resetting the damage on leaving pits
(anti-cheat for endurance races).
© EQ Worry, 2010
|