The online racing simulator
AIRIO - Advanced LFS Tracker
(2374 posts, started )
I can't seem to get the !delete command to work, to delete a players stats. If I type !delete fzr <player> nothing happens.
Quote from o000o :!clrc isn't working for me in 2.3.4 , it worked fine in 2.3.1 after setting myself as Limad5, I've also set it in the srv file but still not working

Quote from arco :I can't seem to get the !delete command to work, to delete a players stats. If I type !delete fzr <player> nothing happens.

Both things have very probably a common cause. Current default Airio files allow any operations on stats (such as !clr or !del) only to limads level 5. The catch here is, and I would need maybe to change the default settings, you cannot use super-admin (limad 5) in FREE version, such setting is turned to limad 4.

So you need to use lower level to be able to change stats. Open CFG file, find EnableStats items and set it to =4. Type !rld and the above mentioned operations should work for you. To protect stats, it may be good to change the setting back to 5 later.
Thx EQ Worry I did look through all the files for something like EnableStats but couldn't find it, all done and working fine now.

Once again thanks for Airio
Quote from EQ Worry :You could be actually very right, I'll check what happens in case there are numerous breaks in server connection, maybe some listening/sending threads are not closed properly but new ones are started...

TCPSendDelay was set to 5, I've changed it to 10.
Also QuickReconTries is set to 3, don't know if it's better to try with other value as well

Thanks a lot, I'll PM you a log file with errors, check it if you have time
Hi, I have a question. Is it possible to configure for Airio so it would control whether TC is on or not? For ex. if its on, then Airio wouldn't let people to join?
Quote from andRo. :Hi, I have a question. Is it possible to configure for Airio so it would control whether TC is on or not? For ex. if its on, then Airio wouldn't let people to join?

Look in Airio.srv.txt for
CheckSetup=true
SetupTcAllow=false

you can temporarily test by joining server by joining with admin PW and type:
!cfg CheckSetup=true
!cfg SetupTcAllow=false

spaces and caps must be correct....


Edit: tested it, didn't seem to work correctly. may be a bug.
Maybe EQ can look into it.....

@ Worry. tried a few combinations of settings....does not seem to be working properly.
if CheckSetup=true:
if SetupTcForce=true, result=spectate whether TC is on or off
if SetupTcAllow=true, and SetupTcForce=true, result=spectate TC on or off
if SetupTcForce=false, and SetupTcAllow=false, result=allowed join TC on or off.....this should be the combo to spectate for TC on correct?
Quote from andRo. :Is it possible to configure for Airio so it would control whether TC is on or not? For ex. if its on, then Airio wouldn't let people to join?

Hi! If you return by several pages in this thread, you'll find the settings discussed, because it unfortunately includes a serious issue that's not possible to resolve with the currently available data. Anyway, I'll repeat the problem below to save you the time of looking for more info...

Quote from z-ro 8 :Edit: tested it, didn't seem to work correctly. may be a bug. Maybe EQ can look into it...

Hm, I just did some tests and it worked for me as expected. You correctly say that CheckSetup must be set to true, or car/driver setting are not checked. Default SetupTcAllow=true then says TC is allowed and default SetupTcForce=false does not force the use of TC. Here's the possible combinations:

1) SetupTcAllow=true, SetupTcForce=false : Anyone can join with TC on or off.

2) SetupTcAllow=false, SetupTcForce=false : TC is not allowed, when joining with TC you are spectated.

3) SetupTcAllow=true, SetupTcForce=true : TC is required, when joining without TC you are spectated.

4) SetupTcAllow=false, SetupTcForce=true : This setting does not make sense, because you prohibit TC by one command and force it by other. DO NOT USE, cars will always be spectated.

I checked the code and did experiments with all combinations, it worked as it should for me. HOWEVER there's an important point seriously limiting the use of all the above TC settings. The problem is the check is possible only when joining track. Unfortunately LFS does not report TC state changes once the car is on track.

The problem is TC is part of car setup, not like e.g. auto gears, which are part of player setup. If someone turns on/off automatic gears on track, the change is reported and thus e.g. a policy of no automatic gears can always be enforced. If someone changes TC status once on track, Airio has no way to know.

When trying to solve the issue I went into really weird solutions, like asking for player and car data periodically, but unfortunately even this did not work, always TC state when joining track was reported, not current TC state.

I'd call it a LFS inconsistency bug, TC should fall into the same category as auto gears and then we'll have no troubles. But as it is now, TC is stored and can be checked only on race join, later changes are not visible to server/Airio.

Quote from o000o :Thx EQ Worry I did look through all the files for something like EnableStats but couldn't find it, all done and working fine now. Once again thanks for Airio

Great! And thanks as well.

Quote from RocksGt :TCPSendDelay was set to 5, I've changed it to 10.
Also QuickReconTries is set to 3, don't know if it's better to try with other value as well

OK, please also use the latest available FREE version, which is 2.3.4a. The QuickReconTries is a complicated matter. Please set it to 1 for now. But I know there may be problems with this setting, quick reconnect after forced disconnect may sometimes fail badly, leading to very weird Airio state. Mostly it works OK, but when there's really unfortunate sequence of events, it has a tendency to fail. I'll try to watch closer what's going on there, but it is a state that's nearly impossible to recreate and watch closely...
Okay, thanks for the info.
yes i tried #2, but di not get spectated. even left server and rejoined without PW, same result.

not sure why this is not working properly. now that i think of it, i had same situation when attempting to exclude Abs.

Airio would not spectate for having ABS on unless i had cfg SetupAbsForce=true, and even then i could not join with or without ABS on.......
Hm, I just checked the filter with following settings: SetupAbsAllow=false, SetupAbsForce=false and I was correctly spectated when using ABS, allowed to join without ABS...
Quote from EQ Worry :Hm, I just checked the filter with following settings: SetupAbsAllow=false, SetupAbsForce=false and I was correctly spectated when using ABS, allowed to join without ABS...

hmm, something must be wrong with my file then, just tried exactly that and got nothing......grrr
How i add "Good lap" sector things and "Good sector 23.98" tyhings, could you help amateur?
@Villez0r: As far as I know this should be activated by default

@EQ Worry:

I have some questions: Does a "BName" or an entry in Airio.ban.txt have priority over a LimadX ? I mean if someone is listed as "BName" or is banned with the normal Airio ban and also is listed as Limad. Can he connect or or will Airio refuse the connection?

How does it work with a Super Admin (Limad5 with Admin pass) ??

How does the championship thing work? I would like to do practice 24/7 at my server. I also should be possible to collect experience points to be able to drive faster cars later. But 3 times a week I would like to do about 5 or 6 sprint races in a row and the points of these sprint races should be counted as a championship. So at the end of the week I would calculate the result of all 3 sprint championships to have a winner. Better of course would be if it would be possible that Airio would calculate the points of all 3 championships...

How can I activate and end such a "championship" automatically at a special time? I could start it with a scheduled command, but I cannot end it with a scheduled command, because I would never know when it will be finished... Also how can I see the results of the championship?

Thanks
:iagree:

1. Last release= Airio 2.3.4 (2009-09-14)
- I'm getting the NO-SCHTUFF-TO-TEST Syndrome again !

2. JustForFunRacing have a good idea there, apart for the championship side it can be made simply by starting multiple instance of servers with different class requirement. You then put bigger cars on those servers. Resulting with UNUSED servers because most cant join in or server is empty=no interest to join, see Aleajecta servers, sadly only FBM class E server always have people on it).

I guess JustForFunRacing want something allowing racers who come often to server and make pts to get/try faster cars. But then those ones will get all the PTS for the race wins tith those new better cars.
You can put a turnaround with intake limitations on new choices... but then you will have a really long list of information to give on server login and enforce limitations...I see lots of ''xxx spectated for...'' coming. hehehe
EDITED: See CustomCars item in Airio.tcd.txt, need FULL 2.1.9 +

But this is really a good start idea, you race often on server x, you get more choices of car to race with... all with restrictions that give almost same performance results but better tyres options and aero dynamic / handling.

Having cars available based on server rank (made by pts on server) would be a must if it's possible.
EDITED: Sounds like ''LicenceRanksSpecific in Airio.srv.txt'' , need FULL version 2.1.9 +

I second this request...

We (guys who tests it on there servers) will then have to find a way to tweek cars so they can all race together without puting first ones too far beyond.

If there is something already done like this, please send me a link.

This can make LFS to be a bit more like other video games, having cars to unlock over time and pts. Sounds fun to me... it give the casual racers a goal to reach if they can obtain podiums.

Combination of rank+licence class=car x unlocked would be great too !

Even !safe rank... you dont drive clean enough ?
Then you dont have access to XXR cars till say safe=90%

Wow, dynamic car choice options could make major difference for LFS servers... :static:

Let us know if you can do something like this. :munching_

Have a nice month !
dumb question about custom cars (and custom classes)...

can they have more than 3 characters? trying to make a car class for the cars in GTAL, but having to call the class GTL is slightly misleading.

thanks
Call it GT2?
Is it (or can it be) possible when utilizing SpecAfterFinish in Qualifying mode to alter the amount of laps allowed before a driver gets spectated?
As of right now it is one outlap and one hotlap. I would like to be able to make it two hotlaps.
Also have you given any thought to my PM regarding Lap Record notification?
Thanks again for all your hard work.
Quote from bunder9999 :dumb question about custom cars (and custom classes)...
can they have more than 3 characters?
thanks

No
Hi EQ!

We have the last version running and it seems that the new error handling works fine!

I'm checking the logs and now when we get Packet Write errors (System.IO.IOException), the thread is killed. But I can't see if it does the same when we get System.Net.Sockets.SocketException.

Some extracts of the log files for you to see


Thread aborting for System.IO.IOException:
09.10.13 11:55:32 #1 Packet write error...
09.10.13 11:55:32 #1 AEGIO ERROR : System.IO.IOException
Unable to write data to the transport connection: An existing connection was forcibly closed by the remote host.
at System.Net.Sockets.NetworkStream.Write(Byte[] buffer, Int32 offset, Int32 size)
at LiveForSpeed.InSim.Aegio.Connection.PacketWrite(Byte[] pack) in c:\Development Files\LFS_Airio2\Aegio\InSimConnection.cs:line 287
09.10.13 11:55:32 #1 AEGIO ERROR : Packet not written
4 3 0 0
09.10.13 11:55:32 #1 Reconnect attempt : 1
09.10.13 11:55:33 #1 Packet write error...
09.10.13 11:55:33 #1 AEGIO ERROR : System.IO.IOException
Unable to write data to the transport connection: An existing connection was forcibly closed by the remote host.
at System.Net.Sockets.NetworkStream.Write(Byte[] buffer, Int32 offset, Int32 size)
at LiveForSpeed.InSim.Aegio.Connection.PacketWrite(Byte[] pack) in c:\Development Files\LFS_Airio2\Aegio\InSimConnection.cs:line 287
09.10.13 11:55:33 #1 AEGIO ERROR : Packet not written
4 3 0 0
09.10.13 11:55:33 #1 AEGIO ERROR : System.Threading.ThreadAbortException
Thread was being aborted.
at System.Threading.Thread.SleepInternal(Int32 millisecondsTimeout)
at LiveForSpeed.InSim.Aegio.Connection.ListenTCP() in c:\Development Files\LFS_Airio2\Aegio\InSimListener.cs:line 14
09.10.13 11:55:33 #1 Disconnected from : MecaHost LFSSpain #1
09.10.13 11:55:33 #1 Closed connection...
09.10.13 11:56:04 #1 Nulling instance...

No clues about thread handling on System.Net.Sockets.SocketException
09.10.14 03:09:04 #1 AEGIO ERROR : System.Net.Sockets.SocketException
No connection could be made because the target machine actively refused it 82.159.210.39:29988
at System.Net.Sockets.TcpClient..ctor(String hostname, Int32 port)
at LiveForSpeed.InSim.Aegio.Connection.ConnectionOpen(String hostName, Int32 hostPort, String adminPass, String insimName, Char prefixChar, Boolean hostLocal, Boolean keepColours, Boolean sendNodeLap, Boolean sendMultiCar, UInt16 updateInterval, UInt16 udpPort) in c:\Development Files\LFS_Airio2\Aegio\InSimConnection.cs:line 99
09.10.14 03:09:04 #2 Starting new instance...
09.10.14 03:09:04 #2 Reading server configuration...
09.10.14 03:09:04 #2 Opening connection to 82.159.210.39:29989
09.10.14 03:09:05 #2 Retrying connection...
09.10.14 03:09:06 Received LFSW WR data...
09.10.14 03:09:07 #2 Retrying connection...
09.10.14 03:09:09 #2 Connection failed...
09.10.14 03:09:09 #2 AEGIO ERROR : System.Net.Sockets.SocketException
No connection could be made because the target machine actively refused it 82.159.210.39:29989
at System.Net.Sockets.TcpClient..ctor(String hostname, Int32 port)
at LiveForSpeed.InSim.Aegio.Connection.ConnectionOpen(String hostName, Int32 hostPort, String adminPass, String insimName, Char prefixChar, Boolean hostLocal, Boolean keepColours, Boolean sendNodeLap, Boolean sendMultiCar, UInt16 updateInterval, UInt16 udpPort) in c:\Development Files\LFS_Airio2\Aegio\InSimConnection.cs:line 99
09.10.14 03:09:09 Entering main loop...
09.10.14 03:10:09 #1 Nulling instance...
09.10.14 03:10:09 #2 Nulling instance...
09.10.14 03:13:09 Writing Lapper PB data...
09.10.14 03:14:09 #1 Restarting instance...

Any new stuff coming ?

Or anything that need to be tested ?
need some help please
** Bizarrely this started working properly. I read through all the manuals ready to attack it... but it worked without changing anything from the lat changes I made... weird but very happy ***



Hi,

Before I start I have read and absorbed as much of the readme's etc as I can, but I am not getting the results I expect.

I am a little confused over what to set the actual dedicated server settings to compared to Ario.

I know there is a wealth of txt in the files but I still have issues (I know, see a shrink :nod.

Anyhow...

Say I want to set up BL2, FE5 and FE6 with cars limited to rally types, track rotation between each with 3 laps for first, 4 laps for second and 5 laps for third track.

Whatever I do doesn't seem to work.

I have the basics set-up but it seems that the server cfg overrides anything I setup in Ario (yes I have passwords etc done) and my tracks do not rotate or limit cars with the rotate section of ario...

Car choices, tracks and lap count always seem to depend on the server cfg not ario

Any examples of what to do say for just two cars and a couple of tracks would be good (not asking for complete configs just a few real examples...

Cheers

Mell
Hi i need help

it is possible with AIRIO

to had 15 mins races? 30 mins, 45 mins?

its just that the normal command only accetpt: 1 hour

it is possible to do with Airio?

wich command will do that?

Regards
Hi people, sorry for all the unanswered questions and ideas. I needed to take a few weeks off, do some real work for real money. However, I plan to add new things to Airio or improve old ones or debug the code. As you can see from the changelog page, some smaller yet maybe usable new things appered already and will be available in 2.3.5. I have new features in mind, but they are all quite complicated, maybe code cleaning (such as renumbering all buttons) will be necessary, and this is tedious and error-prone. Anyway, here are my comments to past posts:

Quote from JustForFunRacing :I have some questions: Does a "BName" or an entry in Airio.ban.txt have priority over a LimadX ? I mean if someone is listed as "BName" or is banned with the normal Airio ban and also is listed as Limad. Can he connect or or will Airio refuse the connection?

Airio standard bans (in FULL version) and permanent bans (using BName) are ignored for limads level EnableBanLimited (formerly EnableBan) and above, as set in CFG file.

Quote from JustForFunRacing :I would like to do practice 24/7 at my server. I also should be possible to collect experience points to be able to drive faster cars later. But 3 times a week I would like to do about 5 or 6 sprint races in a row and the points of these sprint races should be counted as a championship.

I'd suggest using for this the special points for "driving" (!ptd) and for "playing" (!ptp). These will accumulate all points, but only if that server uses StorePointsPlaying=true resp. StorePointsDriving=true. So, you may have both these set to false on all servers by default and change it temporarily only on one server for the special occassion. Once the even closes, you use false again. If true, all points from any track/car combination are accumulated into these numbers. The total points are also shown (with position) in !pi output.

Quote from JustForFunRacing :How can I activate and end such a "championship" automatically at a special time? I could start it with a scheduled command, but I cannot end it with a scheduled command, because I would never know when it will be finished... Also how can I see the results of the championship?

Well, you can send !cfg StorePointsPlaying=true at a special time (in FULL version), but it is not possible to say that this should be active say for just 6 races. If you do not know when the champ races finish, then I'm afraid the only option to turn off playing/driving points is to do this manually (e.g. by !rld).

Quote from Zalex :I guess JustForFunRacing want something allowing racers who come often to server and make pts to get/try faster cars. But then those ones will get all the PTS for the race wins tith those new better cars.

FULL version of Airio allows to limit higher car types using rank (points) and licence (lap time) and safety rating. Faster cars may be assigned categories with each one evaluated separately - there may be one winner of TBO category and one winner of GTI category in the same race. I believe this works quite well on the LR server. Also limiting car types by safety level should work though I did not test it for some time now. This means you may have GT2/GTR combined server with GTR cars available only if you have reasonable safety rank (and optionally certain rank, and optionally certain licence).

Quote from bunder9999 :dumb question about custom cars (and custom classes)... can they have more than 3 characters?

Currently all custom cars and categories can have only exactly 3 characters. This limitation makes parsing easier and is in accordance with principles used in LFS. Still, Airio code may be adjusted to allow longer names/codes, there's nothing preventing this.

Quote from z-ro 8 :Is it (or can it be) possible when utilizing SpecAfterFinish in Qualifying mode to alter the amount of laps allowed before a driver gets spectated? As of right now it is one outlap and one hotlap. I would like to be able to make it two hotlaps.

Hm, that's interesting. The SpecAfterFinish is intended primarily for layout hotlapping (such as is used on Cone Challenge). I'd need to see more closely how it could be used in qualifying mode.

Quote from RocksGt :We have the last version running and it seems that the new error handling works fine! I'm checking the logs and now when we get Packet Write errors (System.IO.IOException), the thread is killed. But I can't see if it does the same when we get System.Net.Sockets.SocketException.

Good about the run! When Airio is used locally it should really run without losing connection. Still, I'm not sure how it could ever cause crash to the whole server, regardless of how many times if loses connection. If you'll have any more troubles, let me know.

Quote from Drifters Only :someone's advertising your product on LFSdatabase ...

Thanks for info, I've seen it in the past, but I don't think it something bad?

Quote from Zalex :Any new stuff coming? Or anything that need to be tested ?

Well, as I wrote above, just one or two smaller things currently. However soon I'd like to add things that will be very hard to test thoroughly. E.g. universal pitlights (showing RED sometimes when entering track from pitlane and spectating people for ignoring this) should kick in only under special circumstances which are hard to create. For this it is best to let Airio run on some popular server, watch closely and see if there was any false warning/alarm). But this feature, while no doubt useful, is not as easy to implement... Still, some detection rutines are almost ready, I'd like to enter basic testing phase soon.

Quote from Mell1234 :Say I want to set up BL2, FE5 and FE6 with cars limited to rally types, track rotation between each with 3 laps for first, 4 laps for second and 5 laps for third track. Whatever I do doesn't seem to work. Any examples of what to do say for just two cars and a couple of tracks would be good (not asking for complete configs just a few real examples...

Track rotation is quite old feature and I believe it works reliably. There's no magic in setting it up, you'll just use 2 items in appropriate SRV file. Here's an example:

RotateRaces=5
RotateTracks=BL2|3|XFG+XRG > FE5|4|TBO > FE6|5|RAC+LX4

If you're on any of the tracks in rotation, then every 5 races the track will automatically move to the next one, changing lap count and car types as specified.

Quote from Neto_r :it is possible with AIRIO to had 15 mins races? 30 mins, 45 mins? wich command will do that?

Yes, Airio can use the race length setting in hours and change it into minutes. (Note that the race length will in LFS [F12] still show as hours, which may cause some confusion.) To use racing for 15 minutes plus one lap use !len -15 command. Acceptable values are from 1 to 96. Note the negative value indicating minutes. Positive values represent laps.

Important: If you use !len with negative number (to race for minutes) and then want to return to races for laps, use !len again, this time with positive value, required lap count. Using /laps= will leave racing for minutes active in Airio, which you do no want.

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