The online racing simulator
AIRIO - Advanced LFS Tracker
(2372 posts, started )
The server selects the mode automagically depending on: what cars/tracks are available and the number of slots.

Inside Airio you can change the cars with the command !cars, e.g. !cars XFG+XRG, if you want to make that change permanent you'll have to edit Airio.cfg.tc.txt, there you can select both the default cars or on a per-track basis, so they are automatically changed as soon as the track changes (e.g. because of rotation, or because the players have voted End Race)
Quote from NightShift :The server selects the mode automagically depending on: what cars/tracks are available and the number of slots.

Inside Airio you can change the cars with the command !cars, e.g. !cars XFG+XRG, if you want to make that change permanent you'll have to edit Airio.cfg.tc.txt, there you can select both the default cars or on a per-track basis, so they are automatically changed as soon as the track changes (e.g. because of rotation, or because the players have voted End Race)

at the mo i have 20 slots XFG+XRG on bl1..... but i want it s2? do i have to reduce the slots?

i'ver sorted to car thing.... but still only displays on s1 ??
Quote from John Hilton :i'ver sorted to car thing.... but still only displays on s1 ??

As long as you make available combos which are S1 (e.g. XFG+XRG on BL1 but more than 15 slots*) the server will still be S1. Don't be too concerned about it, that only means that S1 licensed players can join.

If you forced the server to S2 those players could not join anymore, it does not make sense. That's why Scawen changed the way the server mode works.

PS: [*] if the server was set for XFG+XRG @BL1 but <=15 slots the mode would be automatically changed to "Demo"
are ok i understand now thx for the info guys
Quote from John Hilton :at the mo i have 20 slots XFG+XRG on bl1..... but i want it s2? do i have to reduce the slots?

i'ver sorted to car thing.... but still only displays on s1 ??

No your server mode is S1 because you are not using S2 tracks or cars. If you want that you server mode will be S2 then add to it some s2 cars or change track.But there is no difrence betwen S2 and S1 server only that S1 drivers cant join S2 server.That all
Hi EQ Worry. I was thinking that would be nice a !disable or !noshow command ( alias of !show –KSCBEGDTFPIWNM ) What do you think?

Cheers
Quote from BriZz :Hi EQ Worry. I was thinking that would be nice a !disable or !noshow command ( alias of !show –KSCBEGDTFPIWNM ) What do you think?

I added mine to CTRL+F7 and CTRL=F8 macro keys so its easy to disable and enable.

Mr Worry, are Race and Spectatings set differently as if I use !show -KSCBEGDTFPIWNM ontrack its still shows everything when I spectate and visa versa.

Nice feature would be !ShowQual, !ShowRace, !ShowSpec so we can setup 3 seperate shows dependant on what session we are in. Then all settings are saved so no need to adjust all the time for each session.
Another weird thing I stumbled upon
Attached images
lfs_00000123.png
Hi people, sorry, I've been sort of away for a few days, and I see there has accumulated some issues. I'll try to take them as they appeared earlier:

Quote from NightShift :Airio would spectate players with reason bad tyres (Road_Normal), despite having set ProhibitedTyres=None both in the global and the track section of Airio.cfg.tc.txt.

Sorry, I still have to check on this, see if it does what you say and then provide a solution. Please bear with me until 2.1.7 is out...

Quote from vicbel :I had some tracks rotating and it was working fine. Then I wanted to leave one track for our team to train for an event so I deleted the track rotation string from the file and did !rld ... did not work ... I had to do !aini for it to work. Is that normal?

Might be a little ommission in the code, like when the new rotation string is empty, it is not updated. Again, I'll chek this out...

Quote from vicbel :Why can;t I find this in the manual ... Must have missed it ... where is it?

Well, my bad, obviously. The docs are for version 2.0, we have 2.1 available. There's some things missing in the manual, sorry for this. I'm barely able to update the application (see above) and updating docs, well... I suggest you read the change log, you'll find there all new things mentioned/explained that are not included in the manual.

Quote from John Hilton :just like to say i've used started using airio its great thx

Cool!

Quote from Cobalt_RUS :Thanks for great lapper. p.s. check your paypal

Quote from Gai-Luron :Euh you want to say Tracker :huepfenic
:ices_rofl Because, there is no money on my Paypal Gai-Luron

MUHAHAHA. Thank you, Cobalt. And so true, Gai-Luron.

Quote from BriZz :I was thinking that would be nice a !disable or !noshow command ( alias of !show –KSCBEGDTFPIWNM ) What do you think?

Well, yes, I plan to add such a command, called !silent I think. It will temporarily for you turn off all Airio messages. Temporarily meaning the new settings are not stored in your profile, by issuing the same command again you may return to the previous setting, or something like that. Also I received a request to allow turning off Airio messages at the server level, say by an admin who specifyies there'll be no good/best split/lap messages for anyone. But that would require extending the current framework a bit, adding new options.

Quote from Andy King :Nice feature would be !ShowQual, !ShowRace, !ShowSpec so we can setup 3 seperate shows dependant on what session we are in. Then all settings are saved so no need to adjust all the time for each session.

OMG, storing three separate settings, ufuf... I guess making hot keys (binds) for the three modes is a better solution. With the advantage that it will work for you on any "Airio Powered" server.

Quote from NightShift :Another weird thing I stumbled upon

Well, actually, I'm glad to say this is a feature. (If someone did not see the image, race length was set to 60 minutes, but LFS shows the race is for 30 hours.) The problem is race length in LFS can be set at 48 hours maximum. And that seemed too short to me, if Airio was just converting hours to minutes (and adding one lap). So if a value higher than 48 is entered, the value sent to LFS is halved, meaning 60 Airio minutes changes to 30 LFS hours. This way timed races for up to 96 minutes are possible.

OK, thanks for posting questions here and thanks for answering them as well. I'll try to solve the above mentioned (supposed :tilt issues soon, but my real work is pressing me hard. I'll try to check at least the tyres and rotation things tomorrow...
Quote from EQ Worry :Well, actually, I'm glad to say this is a feature.

And I bet it is useful in the configuration file, but online it would be cleaner to have different commands for different purposes. JMO of course

BTW have you noticed anything in that 'shot that you may actually be interested into?
When do the variables changed with the !cfg command take effect? immediately? after /end? in the next race? I need to know this to create a script to change some vars before each champ race, for example the points, during practice there are no points available but during the valid race there so I wonder if I can set the points table var via the !cfg command just before the race. There are a few other vars to change before the race and then once it is over in order to change them back to the original values is a !rld enough?
Well I tried and it does not seem to work. I created the script below and ran it from lfs ... all the lfs commands were succesful, the Airio commands were not. any thoughts? what am I missing?


/end
/cars XFR+UFR
/hours 1
/qual 20
/mustpit yes
/midrace no
/canreset no
/say !cfg RotateTracks=
/say !cfg CancelEndRace=true
/say !cfg CancelRestart=true
/say !cfg CancelQualify=true
/say !cfg PointSystem=10,8,6,5,4,3,2,1
/say !cfg PointsBest=1
/say !cfg LapsPoints=80
/say !cfg SpecFromPits=true
/say !cfg IdlingTime=10

Ehmmm... I'm not sure what /say means, but if you simply delete it and leave only the !cfg commands there, it should work for you... (EDIT: Well, your "script" works for me even as it is, that is if I put it into a SET file, see below.)

EDIT 1 - To elaborate a bit:

If you put the above commands (and any other LFS / or Airio !) into a file named e.g. Airio.set.1.1.txt, you may call it by typing !si 1 on server 1. If you type !si 2 on server 1, Airio will look for a file named Airio.set.1.2.txt and execute the commands found there. The two numbers in the file name are server number (just like in the CON filename) and server setup version. You may use any number of setup versions you need. If you type just !si (which stands for Server Init), Airio.set.1.txt file will be used, usually containing some default settings as you specify. Well, I hope my explanation makes sense.

EDIT 2 - To answer a question:

Quote from vicbel :When do the variables changed with the !cfg command take effect? ... in order to change them back to the original values is a !rld enough?

Yes, changes done using !cfg command are immediatelly in effect. The values are changed in memory only using !cfg, meaning when you type !rld, standard defined values from the config files are again used. So yes, !rld will return you to the default state, again immediatelly. See EDIT 1 for some ideas how to have several server/Airio configurations readily available.
Quote from NightShift :I may have found a bug in Airio 2.1.6. Airio would spectate players with reason bad tyres (Road_Normal), despite having set ProhibitedTyres=None both in the global and the track section of Airio.cfg.tc.txt. ...

Hmmm, I've been trying to recreate the problem, but it works as expected here. Would you care to send me the Airio.cfg.tc.txt file for a quick review?

I currently do not see how the reported behaviour could ocurr, but maybe you have the Track=BL2 commented out? Anyway seeing the file would help a lot.

Quote from vicbel :I had some tracks rotating and it was working fine. Then I wanted to leave one track for our team to train for an event so I deleted the track rotation string from the file and did !rld ... did not work ... I had to do !aini for it to work. Is that normal?

Well, as I expected, there was a little bug in the code causing empty values for track rotation strings to be ignored. I removed that additional line and I will upload an updated 2.1.6 version in a few minutes. To solve the issue, just replace EXE and PDB files...
Excellent!! I'll give the set files a try.

On the question about when the variables tale effect with !cfg commands, I have my doubts, maybe I am doing something wrong. I was running a race and wanted to change the SpecFromPits variable to false so I entered !cfg SpecFromPits=false, but the server kept spectating people telepitting while qualifying.

Thouhgts?
The command looks OK and if you got in response "Configuration item was accepted," then it really was. Looking at the source code I'm pretty confident there is no bug there.

Question is how would you tell the difference between pitting and pitting with forced spectating, because both would look the same (I think) during qualification - you'll just see car setup screen. Maybe, maybe there'll be Join button instead of OK button, but I'm not sure about this.

PS: How did you run the script earlier, if you were not using SET files?
Quote from EQ Worry :
Maybe, maybe there'll be Join button instead of OK button, but I'm not sure about this.

That is exactly the case, Join instead of OK.

Quote from EQ Worry :
PS: How did you run the script earlier, if you were not using SET files?

I made an LFS script (.lfs file locally in the data/scripts directory) and ran it entering /run scriptname in the chat window.
Well, I tried the !cfg SpecFromPits=true or false and both worked nicely for me. My guess would be you did not enter the item correctly, maybe you used something like !cfg SpecFromPit=true (missing s). But then Airio reports "Unrecognized configuration item..." and does nothing. So make sure you see in yellow "Configuration item accepted..." after any !cfg change.

I also tried the scripts the way you mention. Surprisingly, the script (.lfs file) with /say works when stored n server and run from there. If stored/run locally, it sends to ouput only the 1st !cfg command, ignores the rest. Well, I think this is not Airio trouble, it is somewhere in LFS scripts handling, I can't do anything about it. Anyway, I suggest using the SET files. Airio will go through those line by line, sending to output (as host) only the lines starting with / or !.
Quote from EQ Worry :I currently do not see how the reported behaviour could ocurr

Do you think an error in the TrksList directive could lead to such an error? I spotted one yesterday and fixed it, but I still have to check whether it works as expected or not.

BTW during translation I encountered a problem with several strings which are followed by a variable. E.g.

To be in server stats you need a lap time of: x:yy:zz

As soon as this string is translated, x:yy:zz disappears. Restoring the original string fixes the problem. Is there a length limit for such strings?
Quote from EQ Worry :Well, I tried the !cfg SpecFromPits=true or false and both worked nicely for me. My guess would be you did not enter the item correctly, maybe you used something like !cfg SpecFromPit=true (missing s). But then Airio reports "Unrecognized configuration item..." and does nothing. So make sure you see in yellow "Configuration item accepted..." after any !cfg change.

I also tried the scripts the way you mention. Surprisingly, the script (.lfs file) with /say works when stored n server and run from there. If stored/run locally, it sends to ouput only the 1st !cfg command, ignores the rest. Well, I think this is not Airio trouble, it is somewhere in LFS scripts handling, I can't do anything about it. Anyway, I suggest using the SET files. Airio will go through those line by line, sending to output (as host) only the lines starting with / or !.

EQ, thank you for looking into these. I agree setup files are the best way to handle this. I will try the SpecFromPits change again and let you know what I find.
Quote from NightShift :Do you think an error in the TrksList directive could lead to such an error? I spotted one yesterday and fixed it, but I still have to check whether it works as expected or not.

Yes, that may be the cause. If you had prohibited tyres defined for BL1, then followed definitions for BL2 but BL2 was not found in the TrksList as a supported track code, the track item would be ignored and all settings bellow would be still aplied to BL1. I believe that is exactly the behavior you experienced.

Quote from NightShift :BTW during translation I encountered a problem with several strings which are followed by a variable. E.g. To be in server stats you need a lap time of: x:yy:zz As soon as this string is translated, x:yy:zz disappears. Restoring the original string fixes the problem. Is there a length limit for such strings?

Yes, there is a severe limit concerning the length of these messages, 64 bytes is max, but this includes also colour changes (2 bytes for each) and language [char code] changes (the same). Messages longer than 64 bytes are cut. The solution is to use shortest messages possible, as I tried in the EN original and as I say to every translator:

When translating, try to use shorter messages than in the original, that is a safe approach. Try to be creative, get the meaning, not the exact words.
64 bytes in messages sent to specific driver/connection (as Airio does it to allow anyone to turn on/off message types selectively) is a LFS InSim limitation. This is extended to 128 bytes for local messages, but Airio can use this by principle only for messages sent to server console (and it does use it). If, one day, InSim specifications allow to send longer messages, I'll update the library and they will be supported. In fact, raising the length to 96 would be great, 128 would be cool.
You could replace the '+' char (and get rid of all the associated color changes) with a blank in MgsPointWin, and we'd end up with 4-8 more characters for multi-car classes. I have it fixed anyway, just a thought.

Look at this speedtrap I'm getting:

Best speed #1 (km/h) - NightShift 0.03 (Car@473)

it's AS3 on the starting grid and the car is still
I'll release 2.1.7 very soon, probably today, in several hours. Some of your ideas are implemented, you may already see the change log, but I'll explain later the major changes a bit more. Well, why not now, I have a few minutes:

The most substantial of the changes is merging of configuration files. I thought having several files with distinctly different items would be best, but obviously it was just highly confusing and intimidating to people, resulting in opening several files before finding the item needed.

Airio 2.1.7 has only 2 major configuration files, one CFG and one SRV.

1) The CFG file contains all items pertaining to the Airio instance that must be common to all servers, such as stats handling, external communication, limads and their rights, language filter definitions, and tracks/cars configuration. New here are also items allowing to set FAQ, Rules and Notes text lines (they were in 3 separate files, not supported anymore).

2) The SRV file contains settings that may be specific to individual servers, such as various messages, race starts, voting, points and a whole bunch of filters (car setup, joining, driving, locking). Just as before you may get server-specific settings by creating/using file like Airio.srv.?.txt, where ? is server number (the same as in Airio.con.?.txt file).

Well, I hope this will make changes easier to do. I also plan to add support for some folders to lower the number of files in the Airio root directory, but unfortunately due to the possibility of remote back-up and updating this is not as easy as it may seem.

AIRIO - Advanced LFS Tracker
(2372 posts, started )
FGED GREDG RDFGDR GSFDG