Airio LFS Tracker User's Manual (v. 2.0)
Contents
Developed originally for AirAttack LFS servers the Airio
(or Air I/O) tracker tries to implement the best and most useful features
of other LFS server tools like VCOM and LFSLapper, extend
the possibilities even further, and also offer new ideas and principles.
This User Manual was created to give people the most complete description
of the tracker possibilities and options from customization and racing perspective.
The system is designed to be as much understandable by itself as possible.
Still, some numbers may be a bit confusing, at least for newcomers, just
as some of the options. It is therefore worth the time to read this manual
– it will give you a clear advantage and it will point you at things and
features you may otherwise misunderstand or miss completely.
Airio is an InSim application designed to connect to a LFS server,
track the events and enrich user's experience while playing the great LFS
online racing simulator. From user's perspective it does particularly the
following:
- Records user split, sector, and lap times and shows various statistics
and comparisons.
- Protects user from others by applying various filters – bad language,
bad driving, etc.
- Offers complete customization, allowing individual users to turn
on/off any info.
- Provides the basic selections using a graphical interface with clickable
buttons.
- Depending on supplied files it may communicate with everyone in
his own language.
We will look at all these features in detail in the following sections.
Airio is very complex application and it is still growing in this respect
almost every day. It gives many possibilities to players as well as to server
administrators. Here we have some more things it is doing for users. Note
though, that the following list is not complete, it is just to give you
some idea what may be happening:
- Supports import/export of LFS Lapper PB data.
- Tracks all messages including the system ones, which are processed.
- Watches closely every car, constantly checking speed, position,
travelled distance etc.
- Records just about every gaming aspect and action of every player.
- May manage race restart and race end voting, allowing restart e.g.
only in lap 1, not later.
- May automatically restart the races with countdown.
- May automatically rotate tracks according to specified scheme.
- Processes autocross info and stores statistics by layout names.
- Shows pit work to be done and total pit stop time.
- Displays acceleration data (time and distance to reach certain speed).
- May provide more info on blue flags to players.
- Shows welcome messages/info as buttons according to admin requirements.
- May periodically or after connecting output other messages into
chat area.
- May provide custom start ordering.
Some basic "user" principles of Airio follow:
- Don't force on people messages and data they don't want to see.
- Let people choose how the selected information should be displayed.
- Allow free renaming, keep all stats based on LFS registered username.
- Keep all people's settings, so that they do not have to select them
repeatedly.
- Use the same stats on multiple servers, allow updates on any one.
This in effect means that every user is free to choose what data interest
him and if he wants to see (some of) them as text lines in chat or as buttons.
The selected settings are part of his profile that is saved (together with
other various statistics) and applied again when that user reconnects. Airio
remembers personal settings (including the selected language) of all people.
Also, everyone can make the system completely silent from his perspective,
or be virtually flooded with data and info in various forms.
As a user you should realize that everyone may use different settings.
If you make a nice split time and see it reported among chat lines, it does
not mean everyone else connected sees it as well. So you may smile to show
your happiness, but people that have good times reporting turned off will
not understand the cause of your smile.
One running instance of Airio may be connected to multiple LFS servers
at the same time (on AirAttack it currently controls 6 servers at once,
2 of them remote). All the servers use common statistics, meaning any change
in player's data on one server (renaming, improving) is immediately seen
on all the remaining servers. From players perspective it does not matter
to which specific server of the group they connect, because the personal
settings and other data are the same on all.
Every Airio server feature is configurable and these settings are applied
indirectly on users. At a minimum a feature may be turned on and off, but
most of them offer other settings as well. What you'll find mentioned here
are the default values that were proved as good during a long testing on
the AirAttack LFS servers.
You need to be aware though that on different sites substantially different
settings may be used – some would create stricter environment e.g. by using
very tight lagging filter or highly limited race rejoins, some will have
most filters turned off. Basically, you'll need to learn by trial and error
what you may and may not do on certain servers. Server admins have several
options how to communicate some special arrangements to users – they may
use e.g. Server Notes, Server FAQ or Server Rules, which are items constantly
accessible to every user, or various text lines displayed in chat or graphically
after connecting or periodically. That means you should read welcome messages
and other available info as well.
Enough about basic principles from user's perspective, let's look at
customization and available commands now, because these two items are the
closest to every racer.
After connecting every user is welcome to the server and instructed to
type !help or just ! to see basic Airio commands. The simple
help system shortly describes usable commands that are in detail presented
in the following sections. The user may also be presented with graphical
screen allowing customization. This screen may be called at any time by
pressing Shift+i (maybe twice, if other buttons are already displayed),
which is standard LFS shortcut for displaying and hiding server buttons.
I will not present here look of the mentioned screen, so that this document
remains text-only. Most of the items are clickable and then they do some
action – change a setting or display new info. Try for example clicking
on the group labels, there is a simple help text associated with them. Also
note that the selections are permanently saved only if you close the screen
by clicking on OK. Pressing Shift+i makes the settings only temporary and
if you then leave the server, they will not be stored. Lets look now at
the meaning of the available settings.
By default Airio is supplied only with original language file containing
English version of all user messages including the screen items (button
text). It is easy to create new language versions, if there are people willing
to give their time and knowledge and translate the almost 300 shorter and
longer user messages. (On AirAttack servers there are currently 13 complete
language versions available.)
If there are more language files available, they appear in the first
line of the customization screen. Select a language of your choice by simple
clicking on its abbreviation and immediately the button interface and all
other messages will change for you. Airio will from now on talk to you in
your mother tongue, and it will remember your selection for the future.
Below the language line (or lines, if more than 12 languages are available)
there is a group of buttons turning on (yellow text) or off (grey text)
types of messages you want to receive or ignore.
- Kick and Spectate reasons are short messages explaining
why someone was kicked or spectated by Airio. If you don't care about
other people's troubles, turn these messages off. Note that you will
know someone was actually kicked, because that action is accompanied
by a LFS generated message that Airio cannot control.
- If you turn off Typed commands, you will not see Airio commands
used by other people (see below). Airio hides all its commands, but
it may replicate for you what other people do on the server, how they
use Airio features. Note that your commands will still be visible to
anyone who has this setting turned on (default).
- Race best values will show to you best split/sector/lap values
achieved by anyone during one race. These data are zeroed on every race
start. Good/great times show remarkable split/sector/lap times
achieved any time during a race or practice/qualification. Times considered
as good/great/top are set by administrators and by default they are
within 2/1/0.5 percent of the respective split/sector time of the current
World Record (WR).
- Travelled distances, when turned on, will show you on each
split (if using buttons for info) or on each lap end (if info goes to
chat) exact total travelled distances in kilometres or miles, depending
on another setting. Airio is constantly calculating these data from
car positions, it is not using approximate lap length or similar weak
measurement. There are three values shown, representing distance in
current lap (or its part), distance in current race and distance travelled
in current session (that is one connection to server). You may use the
distance data e.g. in search for the shortest path.
- Splits/sectors provide you with basic timing info. On each
split (including lap finish) Airio can display to you your current split
time (equal to the big number shown by LFS itself), compare it to some
previous best time, sector time, again with comparison to previous best,
plus some additional data like speed at split or total race time. While
the data are very important and interesting, they may be overwhelming
at first. You'll find more detailed explanation in section describing
times and comparison base below.
- General info buttons shows or hides additional information
like pit stop length or date the connecting people last raced on this
server (or group of servers). LFSW data controls display of LFSW
personal best (PB) time messages, if this Airio feature is used. When
someone connects, his table of best times is downloaded from LFS World
site and time achieved on the current track is displayed. You'll see
the LFSW time valid for the car you are currently using, if the connecting
player ever used it. LFSW personal data are also updated when someone
improves his time while racing on the server.
- Race/series points will give to you info about points gained
by the winner on race start and when people finish then you'll see their
points (and yours) for current race and running series (groups of races,
by default 5). Points may be also given for other achievements like
improving LFSW time.
- Button interface, if turned on, will show all lists comprising
of several lines approximately in the middle of the screen as buttons.
The data will stay displayed until you click on them or press Shift+i.
Also timing info (splits and sectors) and travelled distances are shown
in buttons in this case. If button interface is turned off, all commands
output and timing info goes into chat window, where it would eventually
scroll out of view.
- By using Own data you may see only your own good/great split/sector
times and points while having these messages turned off when concerning
other people. This setting also turns on/off your acceleration and drifting
scores data. Race speed allows any player to turn off best race
speed message, which some people find of little value.
Split/sector times (see below for detailed explanation) can be compared
to personal best (PB – best splits and sectors recorded on this server),
Session Best (SB – best split/sector times during this one connection),
LFSW Best (LB – best split/sector times achieved previously on any server),
or World Record (WB). You choose the comparison base in the configuration
screen simply by clicking on appropriate buttons; the change is applied
immediately and stored into your profile.
If you change comparison base, your split and sector times will be compared
to different values. Comparing times to WR would mean for most people seeing
huge negative values in time differences. But for other people and on some
tracks this option may really be useful. Comparing to personal LFSW record
may give meaningless timing data if you are doing first laps in that particular
track/car combo or if your LFSW stats are not available for some other reason
(hidden, the feature not enabled).
Each user may choose to see distance (and speed) in kilometres or miles
(per hour). Again, just click on appropriate option and you'll see the units
you are used to. This setting is applied everywhere speed or distance appears
– in race highest speed message, in speed overview etc. The only exception
is output of !loca command (see below), giving car location in meters
only (LFS map units) and not yards.
Split/sector times are one of the very basic yet least understood features
of Airio. That's why there is this section devoted to detailed explanation
of the displayed numbers' meaning.
As already mentioned, on every track split and lap finish players get
personal time data describing their current performance and comparing it
to past values. Format of the relevant message printed into chat is a bit
cryptic because it tries to present all the useful values in a very limited
space. If button interface is turned on, then the buttons at the top of
the screen show the same data (with a few distinctions mentioned below).
The printed values have this meaning:
S split compare: currentSplit (+/–bestSplitDiff) | currentSector (+/–bestSectorDiff) > possibleLap
Example:
S1P: 0:35.46 (-0.02) | 0:35.46 (+0.16) > 1:08.94
This means that the values are valid for split/sector 1 and that the
times are compared to best recorded lap (PB – for more see above). Measured
current split time is 35.46 which is 0.02 seconds faster than split time
on player's best recorded lap. Current sector time is also 35.46 (because
split 1 always equals sector 1, but on subsequent splits/sectors it will
show different value) and this time is 0.16 seconds slower than player's
best ever recorded time in this sector. The total lap time will be 1:08.94
if the player goes through the remaining sectors exactly with the best times
he ever did there in this particular track/car combination. It is a possible
lap time.
Lap time message has similar format:
S split compare: currentSplit (+/–bestSplitDiff) | currentSector (+/–bestSectorDiff) | totalTime
Example:
S2L: 1:09.27 (+0.34) | 0:33.81 (+0.33) | 2:26.66
Finish represents here split/sector 2 (this example comes from the short
BL2 track). Times are now compared to LFSW best (LB). Split 2 (which is
lap in this case) time is 1:09.27, 0.34 slower that player's best lap stored
on LFS World. Sector 2 time (between split 1 and finish) is 0:33.81 which
is 0.33 slower than player's sector 2 time achieved while making his official
personal record. Total race time at the end of this lap is 2:26.66.
Colour codes used allow you to see in one glance how you are doing. As
in other places in Airio, times in green mean you are doing better, improving
your times, generally gaining. Red colour in differences means you are slower
than you were, basically losing.
If buttons are used (which is default), the data and colour codes are
the same, only first button shows also current lap number (as e.g. L3) and
there is one more button on the right saying speed at the split in kmph
or mph, as you choose. The speed at a split point is very interesting, because
it hints on how good you can be in the upcoming sector.
Times are probably the most important of all statistical data stored
for individual players. To be really aware of what your personal best and
theoretical best times mean, you should read on.
Let's start by first simple fact: To be included in server stats in
some track/car combination you have to achieve some reasonable time.
The required value is configurable and by default represents 110 percent
of the current WR. Once you make a better lap time Airio will no more inform
you what time is needed, but will show your current place. Note that your
preferences are being stored right from your first visit to the server (or
group of servers managed by one Airio instance), it is just that you'll
be added as a new item to stats of your current track/car combination and
will start to appear in the listings there.
And here we have second simple fact: All lap timing data are stored
only on successful lap finish. Only full laps are added to your stats
and only full lap data are further processed. If you make a fabulous sector
time, but then crash heavily and pit or spectate, that data will not appear
in your stats, your TB will not improve.
There's one more important principle you should be aware of, if you really
want to make a sense of the splitting time data: Airio stores your best
split and sector times, but the splits pertain to your best lap ever
recorded on the server and make a group, while sector times are separate
and individual. What does it mean?
The splits Airio shows in your stats (!pb command, also !sb
output) are the times you did on your best lap ever. These are your real
personal best data. If you later improve in split 1 and split 2, but 3rd
sector is poor and lap time is not improved, split times remain unchanged.
If you make a new PB, it may actually contain a bit worse 1st or 2nd split
than your previous PB in case you gained all the missing time in 3rd sector.
Splits thus always show your real times on your real best lap.
On the other hand sectors are updated individually. If you improve in
a sector and then somehow finish that lap, the new sector time will be stored
in your stats, whatever the lap time. Sectors always show how you best did
them as separate units. Summing stored best sector times gives you theoretical
best (TB) also shown in your stats (and !tb command output). It just
says how fast you'd be if you could do all your best sectors in one lap.
Well, after this explanation I hope you'll understand why there may be
different time differences shown on split 1 despite the fact that split
1 time = sector 1 time. Just to be sure: Split time is compared to your
split 1 time in your best lap, while sector time is compared to your best
sector 1 ever, and these times may (and often will) be different.
Users require data from Airio by using special commands. These are typed
into the message box (displayed by pressing T) as normal messages
to other players, but always starting with ! (exclamation mark) and
conforming to preset and required formats. All messages starting with
! are hidden from other players and replicated for them in chat only
if they have this feature turned on (default). Everyone may decide he does
not want to be spammed in this way and hide other people's commands. Also
all limad/admin commands are always hidden as well as commands typed from
connection 0, which is the dedicated server.
Worth noting is one more basic Airio assumption concerning commands:
If you do not specify some of the optional parameters, your own values
will be used. If there's a car like an optional parameter and you skip
it in the command, your current car type will be used. You should also know
that after connecting to server, before you really join a race at least
once, Airio assigns you a default car, as defined for the current track
or server by admins. That default car will be used until you join a race,
then it will be switched to the real car you are in. If there's a player's
name as optional parameter and you skip it, your own name will be used.
This all makes entering commands easier, as you'll see below.
The user commands are separated into 2 categories, mainly for display
purposes. These are called Basic and Advanced commands below, but you may
consider as basic some commands from 2nd group and vice versa. There is
a short help available on every user command. You may use it to refresh
your memory in case you forget exact format of calling for some info. Typing
!help1 (or !h1 or just !) shows you the first group
of commands. Typing !help2 (or !h2 or just !!) then
reveals the second group of commands.
Also many commands offer alternative or shorter forms. If this is the
case the different forms do exactly the same thing. List of basic commands
with descriptions follows. But first one simple command:
!ver
Info command without parameters showing currently running Airio tracker
version, but not only that. Other lines output into chat area or shown as
buttons (according to player's preferences) display local and global Airio
stats. You'll find there short name of the running instance (or total running
instances), how many servers are managed locally or globally, and how many
of these servers are active (with people connected). Output also shows number
of connections to local Airio instance and globally, and number of players
(joined in a race). The data are updated once a minute and for the global
stats feature to work admins must not expressedly disable reporting usage
data.
Alternative versions: !info.
First group of commands shows server statistics in different forms.
!sb [car] [from]
Shows ordered list (max 10 items at a time in chat lines or 20 items
with button interface active) of server best recorded laps for current track.
If car code (like xfg or fbm) is not specified, user's
current car type is used. If from is not specified, list starts from
the top (i.e. place 1, best recorded lap on server). If both car
and place are entered, they must be in correct order. The simplest
command !sb shows server best laps recorded for the car you are currently
in. If you change your car, the list will show different names/values. Some
more examples of using the command:
- !sb – shows SB (server best) list for your current car, starting
from place 1.
- !sb xrg – shows SB list for specified car regardless of the
car you currently use (or that was assigned to you).
- !sb 21 – shows SB list valid for your current car, starting
at place 21.
- !sb fbm 490 – shows FBM SB list from position 490 or 10 last
places it server records less player's lap times.
- !sb 100 xrg – ERROR, car code must be first, then place.
In the output you'll find track, car, and total number of entries of
the specified combination of 1st line. Then follows position, best lap time,
nickname (freely changeable by users), username (registered, cannot be changed)
and split times on individual lines. Just try it, it should make sense.
Alternative versions: !top.
!tb [car] [from]
This command displays theoretical best laps the server recorded for current
track. Theoretical best laps are calculated as a sum of best sector times
ever made by a player (see above for the complete explanation of times and
stats storing). Parameters have the same meaning as with !sb command
and basically only different sorting algorithm is used. Also output is very
similar, but instead of split times sector times are shown for each player.
Alternative versions: !tsb, !ttop.
!pb [car] [name]
This command displays player's personal statistics for current track.
If car code is not specified, player's current car type is used.
If name is not specified, player's name is substituted. The name
entered can also be partial and in that case the first match is shown. You
may use nickname or username here. If both car and name (partial
or full) are entered, they must be in correct order. In its simplest
!pb form the command gives your statistics for your current car.
- !pb – displays your stats concerning your current car.
- !pb fbm – shows your FBM statistics on current track.
- !pb unnamed driver – shows current car statistics of "unnamed
driver".
- !pb xrg unnamed driver – shows XRG statistics of "unnamed
driver".
- !pb unnamed driver fbm – ERROR, car code must be first, then
name.
First line of output shows player's current nickname and his username
in parenthesis. The username is very important, because all stats are based
on usernames. Players may rename freely and as much as they want. While
their LFS registered username stays the same, all the stats go with them.
Second line says what track and car the statistics are for, and how many
laps the user did on this server.
Third line entitled PB shows the player's best lap time and date/time
it was recorded. Fourth line also beginning with PB displays statistics
regarding the best lap, specifically sector times (3 on BL1 track with 2
splits) and in parenthesis the appropriate split times. On BL2 with one
split this parenthesis are empty because no new value can be shown there.
On BL1 with 2 splits you'll find 2nd split time there. 1st split is the
same as sector 1, split 3 is the same as lap time. A track with 3 splits
will show four sector times and two split times (2nd and 3rd) in parenthesis.
Last info on this line is current position in server stats and total number
of entries.
Fifth line starting with TB shows theoretical best lap time. It is the
sum of best sector times ever reached as they are presented on the next
line. Here you can also see the last time (UCT) the player finished a lap
and is an indication of when the player was last seen racing. Sixth line
shows best sector times ever and theoretical split time(s) in parenthesis.
This line again ends with position in TB list.
Next line shows gained total and championship points on the current track
and current standings, if the player has these data available. Points are
stored on track level, meaning they are the same for all cars on one track.
Championship points are erased in specified intervals, by default once a
week. (For more info on points see below.)
Then follow data about best lap time achieved during two definable intervals
(called total and championship). Very interesting may be info about best
race time, again total and during championship. All these show also player's
current position in that particular area of gathered data. Note there may
also be other personal stats displayed in FULL version, like gained podiums
(in races and in series) or current rank (with points remaining to gain
higher rank).
Alternative versions: !stats, !spb, !tpb.
!near [car]
This command may take one parameter, the car name that you are interested
in. If car is not specified your current car is used. The command
simply shows people around you in server best list of your current (or specified)
car. Five people (or ten if buttons are used) with a bit better best lap
and four (or nine) with a bit worse best lap time are shown in a list of
!sb command format.
- !near – displays your position in server best laps list of
your current car.
- !near fbm – shows your position in FBM statistics on current
track.
Alternative versions: !nr.
!pi [name]
This is personal information command, sort of complete Airio data on
one person. If name is not specified, the command is naturally used on you.
It shows current nickname and username, last race (finished lap) date and
time (UTC), total laps done and total points scored in all track/car combinations.
Then follow all track/car combos with PB data stored on server and points
gained. This list may be quite lengthy in case of players that have S2 licence
and are using different cars on many tracks.
Here are the commands displaying current race statistics. These stats
are recorded for every racing player and displayed for every connected user
– if someone disconnects, his racing data are erased/lost. Race restart
means gathering/displaying new data, deleting the old ones. All time values
are in seconds and the value shown in parenthesis is difference comparing
to best time.
!split [number]
Shows sorted list of best race times in specified split. If no split
number is entered, then last split is shown representing best lap times,
together will all intermediate splits. In that case you see best sorted
lap times, similar to output in results table shown by LFS itself.
- !split – displays race best laps including appropriate split
times in these laps. These are race real laps.
- !split 2 – shows sorted best splits 2 times, regardless of
cars used.
Alternative versions: !sp, !rlap, !rl, !race.split.
!sector [number]
Uses the same format as !split but shows best times in specified
sector (area between two consecutive splits). If no sector number is used,
the output shows sum of best sector times representing best theoretical
lap in a race, together with individual sectors.
- !sector – displays race best theoretical laps including appropriate
sector times. These are race theoretical laps.
- !sector 2 – shows sorted best sector 2 times, regardless
of cars used.
Alternative versions: !sc, !tlap, !tl, !race.sector.
!speed
This command sorts and outputs best speed measured in the race for individual
players. Output is in kilometres per hour or miles per hour and the meaning
of individual elements should be clear. Race speed can be measured at a
specified place (called speedtrap) or on all places on the track, it is
a matter of Airio configuration.
Alternative versions: !sd, !race.speed.
!pt[r|s]
If a point scoring system is used, this command shows points scored in
the last finished race (r switch) or in the running series (s
switch). Points may be different for defined car categories and they may
be limited by the number of racers on start, so that winner of race of 1
gets only 1 point and not full 10, for example. Races are from points perspective
grouped into short series (by default races are grouped by 5). This is again
admin-configurable value, just like the point system itself. Once new series
start, the old points are erased.
While race statistics are temporary, deleted after every race (or Airio
restart, because they are held only in memory), there are other data kept
persistently in users' profiles.
!pt[c|t] [car] [from]
Airio stores two more levels of points called championship (c
switch) and total (t switch). Championship points are erased when
a specified number of days expires (by default it is 7 days, a week). Total
points may also by time-limited (e.g. for 1 year), but by default they get
accumulated forever. If no car is specified, the points are summarized
for all cars on this track. If no place to start from is specified
in the command, then the listing starts from the top, position 1. To find
out your current position in championship or total points use the !pb
command, which summarizes all your personal values.
- !pts – shows race series points (see previous command versions).
- !ptt – shows sorted total gained points on this track and
all cars from top place.
- !ptc 25 – shows sorted championship points starting from
position 25.
- !ptt xrg – shows total points on this track gained using
XRG.
- !ptc fbm 100 – shows championship points on this track gained
using FBM from place 100.
Alternative version for championship: !champ. Alternative version
for total: !total.
!bt[l|r|d] [car] [from]
Here !bt stands for Best Total and it shows best times achieved
during a period called suggestively total. When l switch is
used, best total lap times are shown, which may be identical to !sb
listing. The listing starts with track (and car) code(s), so that you know
what the values mean. If you use r switch, you get very interesting
value of total best race times. These times are stored only if there is
a race for specific configurable number of laps. Shorter or longer races
are ignored.
Using the d switch gives you drifting points. They are accumulated
only if admin turns on the appropriate option in Airio configuration. In
all cases you may specify car type you are interested in. If no car
type is entered, your current car is used with l and r switches,
drift scores are summarized.
- !btl fbm – shows total best lap times in FBM, starting from
top position.
- !btr 25 – shows sorted total best race times in any car from
place 25.
- !btd – shows summarized and sorted drifting scores on this
track starting from place 1.
Alternative version for lap times: !laps. Alternative version
for race times: !races. Alternative version for drift scores:
!drifts.
!bc[l|r|d] [car] [from]
Here !bc stands for Best Championship, but otherwise the command
usage and output is almost the same like in the previous case.
- !bcl – shows championship best lap times (usually for the
last 7 days) in your current car.
Alternative version for lap times: !lap. Alternative version
for race times: !race. Alternative version for drift scores:
!drift.
Note the rather better understandable alternative versions of !lap(s)
and !race(s) for champ/total lap/race times and !drift(s)
for champ/total drifting scores.
Every user have also other group of commands available, some showing
different kinds of statistics and some allowing personal customization.
But let's start again with a command outside of any of the following categories.
!rep text
This command allows users to send some report, comment, suggestion, basically
any kind of info to server admins. The entered text is together with username
of the sender and time stored in Airio folder and it is a responsibility
of the admins to read the file and act accordingly. Depending on the specific
server group your comments may be processed immediately, with some delay,
or never. Message entered is always hidden from other people, because the
!rep command is not replicated.
The first category of advanced commands presents information from LFS
World. Data necessary for these commands are automatically downloaded via
Web interface, if Airio is properly configured and players themselves allow
to display their data. The same information is available by /w commands
but the following are more user friendly:
!wr [car] [track]
This command shows world record in any car on any track. If only !wr
is entered, the world record valid for current track and your current car
is displayed. Users can also specify car (like XRT or BF1) and/or track
(like AS3 or WE1R) in any order. Output shows track, car, best recorded
time and username of the WR holder. Included are split and sector times
of the best lap. It will be yet mentioned that WR table is by default updated
every hour, but admins may change this behaviour and disable automatic update.
It is not therefore guaranteed you'll always get the latest data by this
command.
- !wr – WR on current track in your current car.
- !wr xfg – WR on current track in XFG.
- !wr fbm bl1 – WR on BL1 with FBM.
- !wr bl1 fbm – same as above.
!pr [car] [name]
This command also uses LFSW – it displays downloaded personal best data
of connected players. If only !pr without parameters is used, your
current car and nickname is used. Users can see their LFSW PBs in any other
car on the current track. They can also display PBs and global statistics
of other currently connected players. In that case the name is partial
or full nickname or username. If both car and name are used,
the parameters must be in correct order.
Listing shows current nickname and username, track and car of the LFSW
PB and laps made the moment the player connected to server. These data are
downloaded only after connection and in case the record is improved, so
the displayed number of laps may not be exact. The best time itself and
date/time it was made are the core information here together with appropriate
split and sector times.
- !pr – your personal global LFSW (not sever-specific) record
on current track in your current car.
- !pr someone – personal record of "someone" on current track
in your current car.
- !pr fbm someone – personal record of "someone" on current
track in FBM.
- !pr someone fbm – ERROR, incorrect parameters order.
!time [s|w] [car]
Use this command to see best LFSW or server times of all other currently
connected players. The command lists players' time of your car type (or
the specified type) regardless of the car which they currently use. The
list ignores players with impossibly low times (more than one percent better
than WR – very probably achieved by cutting, hacking or using strange layouts).
In the output there is the rank, recorded PB time, nickname, username
(in parenthesis) and difference to best currently connected player. Using
this command gives you quick overview of abilities of other players – it
is not necessary to apply !pr or !pb to individual players,
but you can use these commands for seeing LFSW/server details about a notable
player.
If neither s nor w switch is used, you get combined times,
the lower one is shown in the listing. Note that this lower time should
always be LFSW PB time, but if such is not available the server best time
of that person is shown instead. This makes the !time list more complete.
Alternative versions for combined times: !tm. Alternative versions
for server times: !times, !tms. Alternative versions for
LFSW times: !timew, !tmw.
!good [car]
Airio allows people to see notable split/sector/lap times achieved by
players. These times are defined by default as 2 percent (good time), 1
percent (great time) and 0.5 percent (top time) above the current world
record in the car the player is using. Airio dynamically calculates the
proper values from current WR splits/sectors. It is also downloading latest
complete WR table every hour, so any changes in the table are reflected
in the system pretty soon.
Percentages above WR times are configurable by admins. The advantage
is that one set of three values can be used on any track/car combination,
correct notable times will always be reported and updated. It is also possible
to set absolute good/great/top lap time. If this is the case, then Airio
calculates good splits and sectors using WR data only as a time-distribution
base. Split and sector times are again calculated automatically to ensure
their proper relation.
Because the calculations are complex, split/sector times are not (usually)
some nicely rounded or whole numbers. The !good command will show
you exactly what split/sector/lap times are under current settings considered
as notable and into which level they belong. If you cannot get good time
report on some split, but you feel it is impossible to be faster there,
first make sure you have good times reporting turned on (see the customization
section), then check what real time is required for the message.
Alternative versions: !gd, !great, !gt.
!track
This simple command will show the current track data – short name, full
name, and WR of the car you currently have. Also it shows how many races
were finished on this server since last track load and if there is a track
rotation scheme running you can see how many races remain until next track
is loaded.
Alternative versions: !tr.
!target [m:s.f]
You may enter target lap time in minutes, seconds and
fractions of seconds and see what split/sector time may get you there
in your current car on current track. The shown split/sector times are distributed
according to current WR. Also shown is comparison of the target values with
split/sector times of your LFSW personal best (if available), server PB
and server TB times. Thus you can see in which sectors you are losing time,
where substantial improvement is still possible. If no target time is specified,
the lap time necessary for entry into server statistics (usually 110 percent
of WR) is assumed.
Alternative versions: !tg.
Another group of commands allows for extended personal customization.
As you should know already, every player has options to customize language,
displayed messages, select comparison base, etc. There are commands available
for choosing custom settings by typing, not by using the graphical interface.
!lang [en|cz|...]
Allows direct language selection; you can do the same thing in graphical
interface (after pressing Shift+i). The command without parameter shows
all available languages. As a parameter one of the available languages must
be supplied. The language change is immediately applied, confirmation of
the command is shown in the newly active language. This command must be
used for changing the language the (dedicated) server/host is receiving
messages in.
Alternative versions: !lg.
!show +|–[KSCBEGDTFPIWNM]
Turns on and off system messages. The chars generally correspond to button
names: K = kick reasons, S= spectate reasons, C = replicate commands, B
= race best values, E = race best speed, G = good/great times, D = travelled
distances, T = split times, F = soft splits, P = points, I = general infos,
W = LFSW data, N = button interface, M = own (my) data. Nothing complicated
here, a few examples may help though:
- !show – displays currently active settings.
- !show –sd+w – turns off displaying spectate reasons and distances,
turns on displaying LFSW data.
Note that this command represents the only way to configure what messages
the server/host receives, because dedicated hosts do not have graphical
capabilities. It may be also handy for defining two different customizing
settings, storing them as hot keys (binds) in LFS and using them e.g. for
practice/race.
Alternative versions: !sh.
!comp [sb|pb|lb|wb]
This command selects the base used for time comparisons in splits and
lap race information. You may select the same setting using the GUI.
PB represents the default selection meaning personal best
recorded on the server (as shown in !pb). Split and lap times are
then compared to saved personal best with immediate update in case the times
are improved. SB means session (not server) best times.
On each connect the comparison values are empty – they get filled and improved
gradually during the racing session. LB means LFSW
best (as shown in !pr) and it is a mode when your split/sector times
are compared to values you reached sometimes before, on any existing server.
For this to give reasonable data your online stats must be available, downloaded
by Airio. WB means world best (as shown in !wr)
and ensures comparing split and sector times to fixed values of current
world record. This setting is suitable only for racers that are good enough
to bear the comparison.
- !comp – shows current split time comparison base.
- !comp lb – changes the comparison mode to LFSW PB.
Alternative versions: !cp.
!clsb
This command complements the previous one. It allows players to clear
all session best data (e.g. before some special race) for comparisons in
hard and soft splits (see below) and is equivalent to reconnecting, if SB
is selected as comparison base. In case anything else is used, this command
has no visible effect (except on soft splits).
Alternative versions: !cs.
Below are info commands showing distance or location.
!dist [on|off]
Prints current exact travelled distance in this lap, this race and this
session. Alternatively you may use the command for turning on/off distance
display, but there are better options for this (GUI and the general !show
command). Values are in km or miles according to personal selection. This
command is useful if you do not have distance display turned on, but suddenly
want to know the covered distance. Airio is constantly measuring your car
position and calculates travelled distance with 1 meter precision.
Alternative versions: !dt.
!loca
Again, this is a position-showing command, but this time it displays
your car coordinates in X, Y, Z positioning system in meters. You may probably
use it for calculating distance between two points or for seeing the height
difference between lowest and highest point on a track. Basically, it is
just an interesting info with limited value for users. Admins would need
this command when defining restricted zones.
Alternative versions: !lc.
!node
This is a helper command showing your current track node, LFS internal
code describing your car position on track. This information is necessary
for setting custom soft splits as supported by FULL Airio version. Otherwise
it is pretty useless for an average user.
Alternative versions: !nd.
To keep the server in a reasonable state even when no admin observing
things is around the Airio does many checks, some of them very advanced
or unique. These additional checks record players' behaviour and do some
protective actions based on the gathered data – warning, spectating, kicking
or even banning people automatically. As you see below there is actually
quite a few filters running (all of which can be optionally turned off or
configured differently). These filters impose some restrictions on players
but at the same time ensure cleaner and better racing experience for those
who are really interested.
First category of filters takes care of text appearing in game. They
check nicknames and user messages.
Nicknames
Certain nicknames are forbidden and players using them are immediately
kicked. By default all names containing "name" (like unnamed or
noname or even named) are forbidden, but list of disallowed
names (or their parts) may be updated at any time. This filter is applied
to newly connecting and also renaming players. Nickname checks are not applied
to admins and limited admins (limads). Admins may e.g. define their team
tag as a prohibited nickname, and on that server group only limads and admins
may then use it, other people with nickname containing the team tag are
kicked.
Cursing
Every sent message may pass through cursing filter discovering bad
words. Items in the filter are fully configurable, and e.g. on AirAttack
it contains many words in several languages. If some vulgar word is found
the player sending the message is by default warned once. On next usage
of any bad word that player is kicked from server. This filter tries to
discover even well hidden but to other players obvious curses and it may
sometimes misfire, warning or kicking a player by misinterpreting what was
said (unlucky combination of words). But these cases are rare and there
are means available to solve them. Cursing filter is also applied to player
names, both after connecting and when renaming. If the filter finds a match,
immediate kick follows. Cursing is also checked on numberplate text once
player joins the race because that is a place seen by other people. When
the filter fires after numberplate text check the player is spectated with
a warning, by default twice. On third attempt to enter the race with bad
words on his car he is kicked from the server for bad setup.
Flooding
If one player sends too many messages in short time he is considered
as flooding the server with text and kicked. Flooding filter is by
default set up so that it allows one player to send three messages in 8
seconds. After 3rd message in quick succession player receives a warning.
If Airio sees more messages sent in the allocated time, it kicks the player.
Flooding filter also captures some system events reported by LFS engine
like blocking and unblocking messages (by "–" key). These are counted into
the player's statistics and may cause his kick from the server in case he
misuses the command for text flooding.
Doubled names
If this filter is active, people cannot take nickname already used
by some other driver, nor can they use nickname equal to any existing username
stored in stats. It may protect player identities, at least from other people
perspective, because racers are unique to Airio by their usernames (registered)
and nickname really does not matter (it is freely changeable). On the other
hand this filter may fire too often for widely used non-unique nicknames
just as Tom, Nick or John – that's why it is disabled by default.
Once player's nickname passes the curse filter he may try to join the
race. But this will not be as easy as usual.
Car Options
These are in fact three separate filters, but they have one common function
– allowing only players with decent car options to join race. Airio
does some basic car options checks. It is possible to define prohibited
tyres (by default Normal tyres on Rally are prohibited) and also
number of passengers (by default backseat passengers are not allowed,
only a co-driver). Airio also does not allow players to use AIs. If any
of the set conditions is not met, player is spectated right after leaving
the pits (joining race). He sees a message explaining the reason for this
action with instructions how to proceed. If someone fails to improve the
car setup on third attempt to join the race he/she is kicked from server
for bad setup.
Car Setup
Any server may also define additional car setup requirements.
With this filter you can e.g. disallow using automatic gears or ABS/TC which
are new setup options in patch Z2. Admins may define options prohibited
but also options required or enforced. Player not conforming to this filter
requirements is spectated with lists of prohibited and required options
so that he may correct his car setup. As usually, 3rd attempt to join race
with incompatible car setup results is a kick under default settings. Checked
options: AG – automatic gears, BH – brake help, ABS
– anti-blocking system, TC – traction control.
Actual joining
To prevent players from constant pitting and leaving the pits only to
pit or spectate (or be spectated by Airio) again in a short while players
may have limited number or allowed race joins. The remaining count
is always displayed after leaving the pits and once it reaches zero the
player cannot return to race. By default players can rejoin race three times,
then they must wait for the current race end. If they try to join the race
anyway after they used their last possible rejoin, they are spectated. On
third attempt to enter the closed race they are kicked from the server.
But the kicked player cannot rejoin the race even after connecting back
to server, Airio still knows this man has used up available rejoins. This
filter counts every race join and it does not matter if the cause of rejoin
was earlier speeding, idling, wrong way driving, lagging or direct pitting/spectating.
After successful joining it is time to race. Airio again adds some filters
allowing for smoother movement on the track during and after the race.
Speeding
Speeding in the pitlane during the race is prohibited.
If a player gets stop and go penalty for speeding, he is spectated and forced
to join the race again (see the joining filter above).
Idling
Unmoving, stationary cars on track are dangerous and are spectated
automatically. When a car does not move during a race for 20 seconds,
the player receives warning. This is repeated after 5 seconds, requiring
the car to move in the right direction. After 30 seconds of no movement
or very slow one or in the wrong direction that player is spectated. The
idling filter does not use speed in its calculations, but change of car
position on track. Only car moving at reasonable speed in the right direction
is seen as not idling on track. Once a car moves in the right direction
after idling warning, it is not immediately considered as OK. Rather its
previously accumulated "idling seconds" are slowly decreasing. In case the
car stops moving shortly after warning it gets spectated much sooner.
Wrong way driving
Airio by default prohibits all wrong way driving, both in race
and after race. If a car is seen as moving in the wrong direction during
a race for five seconds, it is spectated with a warning (if not kicked/spectated
by LFS engine earlier). After race this time of allowed wrong way driving
is prolonged to 10 seconds to allow for some stunts but also to keep the
track clear for hotlapping/practicing players. This filter also gradually
discounts "wrong way moves" and if a player moves forward for just a short
while and then returns to wrong way driving, he is spectated much sooner.
Lagging
Lagging players (with bad connection) spoil the races and cause serious
troubles/crashes. Airio is by default tracking all cars during a race and
gathering lagging data; for this it uses server data to get objective
results. Lagging players are reported by the server and if 5 of their car
position packets are missing in succession, they get one "lagging point".
In case 10 packets are missing, two "bad" points are added, 3 for 20 packets
(2 seconds) etc. Once the count reaches six in one race, the player is warned.
As soon as the number reaches 12, the player is spectated with a message
asking him to improve the Internet connection. Naturally, the mentioned
values are fully configurable by admins, so the filter may be both stricter,
more lenient, or even disabled.
Restricted zones
There may be defined restricted zones even in demo server configuration
using Airio. Such zones may be used to prevent players from cutting the
track (last turn on BL2) or even from crashing other players by cutting
some turns at high speed (the right angle turn after the long straight on
BL1). The restricted zones are defined as circles and any car found inside
that circle is by default immediately spectated with appropriate message.
Besides text, joining, and racing filters there are four more taking
care of additional things.
Inactivity
For every player Airio checks the last time he finished a lap.
If the time span from last finished lap is larger than 30 minutes (default
value), that player is kicked for inactivity (after receiving two warnings
in 20th and 25th minute). This filter helps to keep server open for players
that really want to do some racing and is intended primarily for demo configurations
with very limited number of connections/slots.
Hacking
Airio tracks split and sector times of all players. It compares achieved
results with "possible" values calculated from current world record data
(updated every hour). If an impossible split/sector time is found
("impossible" here means significantly better than the corresponding WR
time), it is reported as a (speed) hack and the player is immediately kicked
for security.
Crashing
Players may be spectated for security after achieving impossible speed
in any part of the track. This happens mostly after bad crashes, but it
may also be due to speed hacking. Airio may also check spinning of every
car on track and spectate for too high spin value. Both these filters
may be run only during race to allow for some post-race stunt actions.
Locking
Server may be locked and in that case players with insufficient
PB time (stored in LFSW, on server or on both) are not allowed to join the
race. They are asked twice to leave the server, on third attempt the server
itself helps them out. Time required to join a race is fully configurable
as percentage over current WR. Please do realize that if LFSW times are
enabled and used, the player may make better PB time on any running server
in the world with the required track/car combo and once they have the necessary
time, they may return and join the race. It means all existing servers may
be used as qualifying ones, but admins may also offer for practicing their
own server running without time lock. If that second server (practicing,
without time lock) is managed by the same Airio instance, all improvements
(just as all the custom settings) are propagated immediately.
Overall
All forced spectatings and kickings (see above) are summed
and once they reach a certain number in a session or in a day, they are
"upgraded" and turned into higher-grade penalty. By default 5th spectating
during one session is turned into a kick for bad driving. Also by
default 5 kicks from server in one day are converted into a ban for bad
behaviour. The mentioned numbers and ban length are configurable.
That's it, you've reached the end of Airio User's Manual. I hope you
learned something new and interesting. If you still do not understand some
feature, contact me through LFS Forum and I'll try to make the document
better. Do the same if you spot some errors, factual or syntactic. After
all, English is not my mother tongue, so I'll be glad for any corrections.
Meanwhile, read on in detail what is this InSim application about in
the Admin Manual. The other option is to see
what FULL Airio version brings to users by reading
Full Version Manual.
© EQ Worry, 2010
|