Is it possible to restrict car usage on one server to custom car.
I have defined UFB|UFR 45,0 and i want only this UFB car to be allowed on server. Currently i can use ufr with no restriction or ufb with restriction and have mixed race. If i put UFR restriction to INT.45% i lose UFB car group since they are same..
While it is not possible to store points separately for each server (because the statistics are the same on all connected servers to one Airio instance), you may turn off points on all servers and then activate them on just one of those. Thus you may have e.g. training server without points and racing server giving points for different things.
To have this arrangement open Airio.srv.txt file and set the following values as specified here:
This will in the FREE version in effect turn off point system on all connected servers. (Note three zeroes with PointsGood.) Then create/open Airio.srv.3.txt file (if server 3 should be the only one where points are scored) and put inside exactly the same four keys mentioned above, but with proper values, e.g.:
Well, yes, I think you understand this correctly but there's a little catch. I'll write the process down here to make it, hopefully, clearer:
1) In CFG file you define custom car as CustomCars=UFB|UFR,45,0. Now UFB = UFR with 45 percent intake restriction. (If you want more custom cars, put them all into the same CustomCars key, their definitions separated by space.) Now (say after !rld, note that Airio restart is never necassary) anyone who joins the race with UFR with intake restriction set exactly at 45 percent and zero added mass is reported as joining with UFB and for this virtual car all stats are stored, points calculated separately etc., just like it was a "real" different car type.
2) To limit races to UFB only you need to open TCD (track/car data) file and specify there a restriction of 45 percent on all UFRs is required. You'll need to put somewhere there the following items:
Line 1 says the following applies to all tracks. Line 2 limits the following definitions to UFR only (on all tracks). Lines 3 and 4 are obvious. Line 5 specifies the current car as UFB. Line 6 in effect says that UFB is 20 percent slower than full-fledged UFR. (I made up this value, you need to use something you get by comparing real possible UFR and UFB lap times.)
Note that the TimeAdjustment is really important, or you'll have big troubles getting into stats (maybe that will not be possible). Also with correct time adjustment value you'll see reasonable good/great split/lap times reported etc., all adjusted from full UFR to UFB.
3) So far so good, it seems you have limited all UFRs to UFBs, but here's the catch (or two, in fact, one small and one that may be substantial).
The smaller one is that when someone tries to join with UFR with higher than 45 percent restriction or added mass higher than zero, he can do that and his car will be reported as UFR, because it does not conform to UFB specifications. To correct this behavior an exact match of UFR restrictions would need to be required. I may do that by either changing two >= to two = or giving you another option allowing to require exact match. Both are easy to do, I'd prefer the 1st solution.
But here's the bigger problem that may be more complicated to solve. TCD file settings apply to all connected servers and it means that with the above TCD settings you cannot use UFR on any of the servers! And very probably that's not what you want. (I mean you want to have UFR available on some other server. ).
The big question for me is how to solve this. I see two ways:
a) Allow to specify in TCD file to what server number the settings apply in a similar way you may use Track= and Car= keys to select all or specific tracks/cars. There could be a Server= key that would enable you to use adjusted track/car settings different for each server. While this would give you the ultimate flexibility (and solve some other issues I'm not happy about), it would also mean adding one hierarchical level to the file and the code which, I fear, may lead to confusion and some hard-to-discover configuration troubles.
b) Create a new simple server configuration item called, say, ProhibitedCars. To limit a server to UFBs only you then just need to specify UFB (step 1), completely skip step 2 (no TCD changes necessary), and specify ProhibitedCars=UFR on the server where UFBs only should be allowed. This would in fact solve even the higher restriction/mass values, because such cars would be seen as UFRs and spectated with appropriate message.
Well, well. I hope the above explanation makes sense to you. I have to say solution b) looks much simpler to me, updated Airio with the possibility to allow only custom cars on some server may be ready within 5 minutes. Yes, I think I'll go that way.
The custom cars feature still requires some thinking and improving, I'll be glad for any suggestions. I'm planning to add a new command such as !cars that would show to anyone what custom cars are defined and what specifications they have, because currently you need to give that info to people using some of the textual items (e.g. messages on connect).
The thing is, we have one server SHDTeam UF-BR with restricted 45% UFR it this case named UFB (UFR Baby) and we want only restricted car to be allowed. Last night i tried and all UFR configurations were allowed but UFB statistic was only if you have specific restriction applied. Your solution will solve this problem an i can hardly wait for new version to arise.
1) Serious bug fixes concerning custom cars. If you want to use custom cars, 2.2.0 is a must. For one, there were no points to be given to custom cars, but also the times were not calculated correctly. This is all fixed now.
2) All MSG and LOG/ZIP files now go into separate directories. These are created and appropriate files moved there automatically. Removing localizations and old logs from the root directory can help you find your way in the config files.
3) Using a new config item it is possible to limit server(s) to standard or custom cars, as you see fit. Another config item sets default Airio language applied to the host (server console) and all new drivers.
4) New !cars command shows all defined custom cars and car categories (to be used e.g. in !sb).
5) Some commands showing points/drifts/podiums were adjusted. By default they show total stats, all tracks and cars summed, but people may require also specific track/car/combo data. Thus !ptt will show highest total points (with ranks in FULL version), while !ptt bl1 or !ptt xfg limits summed points to BL1 (all cars there) resp. XFG (all tracks here). To see specific combo type !ptt xfg+bl1 (car/track in any order, but joined with + without spaces). Also possible it is to use starting position to show such as !ptt fbm 21.
6) Autocross layouts are now saved with full data exactly matching those for standard tracks. That means points/drifts etc. are saved/recalled and included in total stats.
Well, I'm always unhappy if I have to do some changes to the basic structure of config files, such as creating a new one. That always means too much trouble for the users, for you. But I feel the current state of affairs (that is 3 primary config files) is reasonable from both logical and manageability points of views. About 8 external files were too many, 2 were too few.
Also I always hesitate before adding a new config option somewhere. I realize there's so many of them that finding the right one may be a problem. I'll try to make a sort of an index of options that would navigate you to the file and section you need.
But generally updates such as the one from 2.1.9 to 2.2.0 are not complicated. Basically you just overwrite EXE and PDB files and it is done. If there are new config items that you want to use, look them up in the default config files and copy them into your current configuration with appropriate values.
Do not forget that !rld is a miracle admin command allowing you to apply any changes in the config files without Airio restart. You need to stop and start Airio again only if doing EXE update (new version). I can't think of any other situation when this would be necessary.
Yes, I guess you're right, !ptp shows total points for playing gained on any connected server, any track, any car. This number is stored in Airio.sta.un.txt, about 4th number from the end of each user item and you may delete the count for everyone by !clrp (clear playing) to start new series or something.
EDIT: 7th field, right. But I think reading usernames, nicknames and PTP data from one file, storing them in some array and sorting that array by points is easy work for PHP, no database import necessary. But then again, I might be mistaken.
It's not a difficult but if same people have already done this i think that this work need to be shared, like u have shared your airio.
So now i'm working on script, when it is ready a send u if u want share here or in your web site.
Well, I think the question stands differently a bit. No, currently track/layour changes are based only on number of completed races. Tracks will also be rotated after every race end voting, but not after some time expired... But I had several requests for this, so...
Is it possible to make "too fast lap = kick" system in this? Because in [RSTO] series i dont want bumpdrafting to be allowed in FBM,FOX and BF1 so someone can tell me how (if) i can set up "kick" if player goes under WR on the server (or too much under WR)?
48.5x was fastest possible time i did with "Wild" yesterday on the FBM/Ky1r combo, but there is a chance i could put "kick" if the player goes way too under the time by insim?