Good Idea for this tracker, it's seem's very good. but i have two questions
1) Why do you have two version with one limited?
2) Why don't you release source? (Easy to retreive in C#)
I think you have a good reason for not release sources, but for the LFS community it's very interesting to have access to this file. Not to copy it, it's many year i release source for Lapper and only one person copy it. This is an old story and it is solved.
Continue your good job. Most programmer's make insim app for LFS, better is
Hello Master. First let me tell you that your Lapper was a great source of inspiration for me. It is almost one year when I started to add new code to Lapper to support things we on the AirAttack considered as necessary - bad language, bad tyres (in rally), sector timing info, etc. For a time we ran "LFS Lapper by Gai-Luron modified for AirAttack by EQ Worry".
But then new ideas were coming in and it was not possible anymore just to add some makeshift code into your application. So I started experimenting with LFSLib by Arne Claasen, trying to make it work and slowly a completely new application was emerging. I was processing more and more InSim events, creating more and more variables for different purposes, you know how it goes.
The application got its name in time, Airio, and I was working on it very hard - add new code, test it, put it online, see what bugs there are, and run the whole circle again with something new. I started to use external configuration files, came with "live" update idea, then user messages localization possibility, large graphical interface to make it user-friendly, and such. Latest substantial change was moving the whole application into my own InSim library (Christmas time well [?] spent) called Aegio (contained inside Airio), so that now I have complete code under my control.
Currently Airio cotains over 500 thousands characters of source code, you may also add to this number 150 thousands characters of the Aegio InSim library. It is huge. Sorry for this introduction, I hope it helps me to answer your two questions:
As I said several times already, I've spent large amount of time developing the application. I was neglecting my real work in an unbelievable fashion for almost the whole of 2008. Naturally I've directly lost lots of money I could earn doing something else.
Still, I'm offering most of my work to the LFS community in the FREE version. Its limitations comparing to FULL version are not substantial (connecting "only" four servers at once), there is just a few advanced user features missing (soft splits, race progress), and some admin stuff (remore FTP, IRC).
With all this I hope to get some money. I realize this may be a touchy subject, but I need to feed myself and my family, that's clear. I'm pretty sure I'll never get back all I invested. Still I hope there'll be enough people in the LFS community (both admins and racers) that would like Airio and that may donate a few dollars, euros, or pounds to support further Airio development. It takes lots of time to add new things. FREE compile is for anyone to use, I'm just asking people to seriously consider some donation if they like the application and intend to keep it or require some updates.
The FULL version is currently running only on AirAttack servers. It exists as a small incentive to see what else can be done. It is not available for free, but as I say in the docs anyone can get it for "sufficient donation".
Natural question: "What is a sufficient donation?" Airio is a server tool. One copy is used by many people, and also by several servers at the same time, everyone should realize that. Would you consider getting the FULL version for 5 or 10 euros? Good. Convince 19 other people from your team to donate the same amount and you'll have it on all your servers immediatelly.
All in all, 90 percent of Airio is free for anyone (with optional donation). If you want something better or special, then it may not be for free, simply because there's too much effort in the development.
I do not plan to release the source code. One reason is contained in my answer to question 1 - I do not offer some portions of the code for free, so I may not make it available.
The other reason is that I'd like to have it under control. I'm not sure how many people would actually burry themself in the source code, coming with new ideas and implementing them for their servers, creating custom versions. For now I prefer this: Give me your ideas, I'll try to implement them as options, then make them available. This reason is close to why LFS developers do not create track/car editors.
The last reason is that I consider myself a lousy programmer. Experienced eye may probably see in the code many areas that could be improved, generalized, refactored, optimized. I'm not going to give people reason to laugh at me.
Thanks, I'll try. Anyone should realize though that he himself may help to make the application better and keep the development going on. FYI: Donations for continued Airio development received up to date - total of 55 dolars... Note that I'm not money-hungry, but you should not make me die of starvation.
Thank's for your answer, i know now yours reasons.
PS: I'am not a master , if you take a look at Lapper source, you can see that is so dirty code. it's my first object and c# application ( i work on a new version of Lapper with, in part, code a little cleaned ). your code seem more clean and most oriented object, good! continue in this way
Maybe LFSlapper code is not the cleanest, still it is very inspirational. And besides you created other cool apps such as LFSstats. I like that one a lot.
Airio 2.0.8 adds new personal settings options, such as turning on/off acceleration data and drifting points. Anyone can also display drifting board with data about current/last drift: Angle, speed, time, points. Drifting score calculation has again changed, the previous was giving way too many points for long drifts. Note that for the acceleration/drifting buttons to be available these two features must be turned on in server settings by an admin. In default state these measurements are turned off, not available to racers.
Hi and thanks for trying out the tool! It is programmed in C#, and it has EXE file, so I don't think it is a script. I'd prefer to call it an application or program, but of course it really does not matter.
Saved memory comparing to what, if I may ask?
Hm, strange, it works OK for me here. To define such restriction you add into Airio.cfg.tc.txt (track/car dada) the following:
Track= Car=MRT IntakeRestriction=40
The empty track name is important, because then the restriction applies to all tracks. But you may also define specific track. Two other conditions must be met for the handicaps filter to actually run. You need to have in Airio.fil.txt (filters definitions) the following:
That is a default state. Also generally Airio checks must be active. You may turn them on by this command:
But again, that is a default state. When I have these settings and try to join with MRT, I'm spectated with these info messages:
MRT - Required intake restriction : 40
[AA] EQ Worry : SPECTATED FOR BAD CAR SETUP
Good... I'm always glad to hear something really works. :nurse:
I would think one instance of Airio would actually require a bit more memory than one instance of Lapper. But of course you may use that one instance for controlling up to 4 servers in FREE version, with memory demands raising only slightly with each connected server.
As I wrote already, LFSlapper was a great inspiration for me, both in ideas and some coding principles. But then more and more new principles and new ideas were implemented and Airio got bigger an bigger. Some people may like scripting support of Lapper though.
Also note that calling the FREE version a "limited" thing is a bit of an overstatement. Yes, there are some advanced things unavailable, but all the core functionality is there. I'd say at least 90 percent of the code is for free. You won't find there only user things such as soft splits and private/server messages, admins may like FTP and IRC communication in the FULL version.
Sure thing. You may try to catch me on #Airio channel at Dalnet IRC servers. I'm also available on ICQ and MSN...
yes, i dont want to talk dirt about LFSlapper. it suits some people, and as stated was the foundation of this amasing Program. i hope its stated more clearly that i didn`t dislike lapper, i just choose this tracker for my servers since its "better" for me.
PM is sent, and u can reply when u stop spinning after reading it.
It looks like the RestartBtn config option applies to both a restart race, and a qualify session. I would like it to only apply for race restarts, any maybe add another option for qualify if possible - QualifyBtn.
I'm also wondering if it's possible to save the log files in their own sub directory?
Good point, it is now implemented and will be available in 2.0.9 when it is released.
At present I do not plan to create any subfolders in Airio folder. I may change my view though, because the number of files there can go up once you manage several servers and have several language versions available. There could be folders like CFG, SRV, MGS, STA and LOG... I'll think about it.
Yes, please do. Especially the log files build up rather fast, and should be in their own sub dirs. I'm thinking something like logs\2009\01\Airio.log.2009.01.30.txt - where 01 stands for january. Would make it a whole lot easier.
Another thing, I think I might have found a bug. The welcome message Airio sends when a player connects seems to be limited in text length, so that if the server name is too long it cuts off text at the end. When I join our server it says:
In fact I consider that too specific, it may not suite many admins. Much easier is to have separate flat folder for logs, where admins may create their own directories or zip the files into groups or whatever...
Well, in fact that is not a bug, it is a LFS limitation. Messages sent to connections or players, such as this one, ale limited to 64 bytes. I was trying hard to make all the messages as short as reasonably possible (and the translators struggle all the time with this), but when you have long name and the server has long name, such character cutting may happen.
I guess we have to live with that for now. If sometime in the future LFS devs will allow to send to connections longer messages (say 128 bytes), I'll update the internal library...
Well thought Id say this is awesome.
Me and a few friend have formed an 'informal' team of sorts and enjoy racing one our small server. THis software lets us track each others PB's, points, etc and is fairly detailed while being easy to setup/use.
After a small hiccup (which the dev found/fixed really quick) we got it up and running nicely!
Players are spectated (by default) for high speed in pits during race, not after race to allow for some stunt actions and fooling around the pits generally. There is a setting available defining whether to spectate for speeding in pits during the race.
Hmmm, I never thought it would be possible to make better lap time by ignoring speed limits in pits. But OK, I'll look for a solution. Maybe the easiest is to add a new setting allowing admins to always spectate for speeding in pits, during race and after as well...
1) Custom limited zones definitions (even in demo configuration) that do not spectate players (as restricted zones do), but invalidate (ignore) the lap time. They are good if you want your PB lists without cutting times, yet want to allow players to cut some corners occasionally.
2) Separate big messages for race and qualification start.
3) Possibility to always spectate people for fast driving in pits, not only in race (turned on by default).
Wow, does it? To say the truth I've never seen Airio crash, at least not in the last 6 months or so. All errors should be captured, handled, recorded so that I may look for causes and correct it. Would you care to send me the LOG file? Use eqworry(at)airio.eu. Thanks! Hm, there were really not as many changes, certainly no major ones...
09.02.11 19:34:17 AIR ERROR: Requested value 'NONE' was not found.
at System.Enum.Parse(Type enumType, String value, Boolean ignoreCase)
at LiveForSpeed.InSim.Airio.Airio.ReadTrackCarConfig() in c:\Development Files\LFS_Airio2\TrackCar.cs:line 268
at LiveForSpeed.InSim.Airio.Airio.Main() in c:\Development Files\LFS_Airio2\Main.cs:line 131
I don't know what setting I set incorrectly, if you can tell me something I'd appreciate it
Hi and thanks for this nice bug report! Please for now change in Airio.cfg.tc.txt file all settings ProhibitedTyres=None to ProhibitedTyres=No_Change, then it should work as expected, no tyres would be prohibited. I'll add the NONE value definition in the next update.