@Tetri: Working with AIWhisperer lately and have a few questions.
View attachment 1510129
Hey mate!
- to share my settings, is it only settings.ini that needs to be shared?
there are 2 types of settings.ini files saved with Aiwhips.
The global settings are saved in the assettocorsa\apps\lua\aiwhisperer, with the app itself. It's important to save it before updating the app for a new version, cause that's definitly something i'd forget about and your settings file would be overwritten by mine. I suggest saving it somewhere and bring it back after an update.
The track settings are saved in the \content\tracks\whatevertrack you're using, including layouts\data.
Same where the ai_hints.ini are saved for the particular track/layout.
In example, for the WSC layout of the Monza 1966 track :
If you would share the settings for a specific track, this is the file.
In my opinion, since i'm working on everything AI, like the fastlane.ai and the ai_hints.ini, this is a perfect spot as you would share the ai and data folders anyway, allowing you to share everything at once. AI whisp non-users would get that settings.ini file as well, the game would ignore it, no impact for non users.
As for the Global settings : AIWhisp is supposed to load all settings at start :
tracks settings first =>apply , if not existing fallback to
global settings => apply if not existing fallback to
Default settings (the ones AC would charge anyway).
Note that the prevent brakemistakes (default 1.0) and AIgrip (default 1.2) are locked at my values at start to make sure everyone is one the same page. i've seen - rare - cases or cars having ai.ini settings with aigrip at 1.5, and i prefered to have 0 brake mistakes while setting up the app to eliminate false negatives results while tweaking, where i would think the app values made the AI crash while a brakemistake was triggered randomly by the game.
- Question: does saving settings as Track Specific have any influence on the settings previously saved as Global Settings? (and vice versa?) Or can I count on them remaining the same unless I intentionally overwrite?
Both are different, and saved in different places.
You save a car to global settings when you think you have the perfect combo of values and want them to be used everywhere. Aiwhisp will load them at start when no track settings can be found, ie working on a new track.
Exemple : you run Kunos GT40 vs Ferrari 330 at Stardust; You already made track settings for the Gt40 but only global ones for the Ferrari. The app would load track settings for Gt40 and global ones for Ferrari.
I am changing a few things atm for the saving system, so i'd suggest always saving all cars to track settings once you have a nice combo. Obviously to prevent an update overwriting your hard work, and be sure you would find those settings in the future.
Considering the considerable amount of changes incoming for next versions and their highly "AlpHaTesTINgGuiNEaPig" behavior, it's not off the table that you would rather use the version you currently have instead of the next update, so having those track settings secured would allow you to go back to a previous version and find your settings all clean and ready to run.
- Question: Do I need to "Reload" Global settings each time I start a session? Can I reload global settings and then reload track specific settings after to pick up the cars that do have track specific settings (and leaving the others with the Global settings)?
Depends on the version you're using. Normally they should be loaded at start, but i would check and make sure they are. Usually it's easy to check by clicking right button on the main values tab, and see if the sliders at start are at default or edited value.
To make it simple to grasp, at start AI whisp would load tracksettings>globalsettings>default. So, if you have track settings saved for a car, it would be loaded instead of global settings.
I'll have a look and make sure everything goes smoothly on the matter for the next update (Automatically load track then global settings at start, which should be the normal behavior). I can't remember having issues with the track settings file anyway, as they were always properly loaded at start, but i'll give it a double check.
- Another! Could we have separate settings.ini files for each of different car sets? Nice if we could just pick a carset from a list (or it auto selects the carset based on what it sees)
I think i misunderstand the question : you have a car tab that saves settings for a dedicated car type. You mean having different sets of settings you could pick up from for the same car type? or something else, sorry, i'm missing the point completely here😂
- Suggestions! Can you get AIWhisperer to auto-select the tab for the focused car? (optionally?) Can you have the tabs go down onto a second row so all tabs are wider and readable? (Tabs get mighty small with lotsa cars)
hehe yeah that was discussed this month! This is being implemented. i'm guessing you are playing with 20 different WSC60 cars and the tabs are absolutly unreadable. So far my trick is to click on each tab until the "focused car" warning goes off, but i agree, it needs UI improvments. The only downside is that, using replays, you sometime need
- What do you think about transferring some of the found data back into the code for the car?
Nope! The modder might have intended the car to behave that way for his particular tracks. In my opinion, i would not let my app (or any app for the matter) to modify original files from a car. I'm also going for the torque/power LUTs and other acd files in the next batches, and the app can intercept and modify them on the fly, without touching anything in the original file.
That also makes sense looking forward for the AI apps that could be developped by others, and where AIWhisp would become obsolete. Better have your cars files untouched and ready for online, as AIwhisp already does.
-And are some of those settings ineffective or counter-effective when a real human is driving the car? Like steering gain (when the user is driving the same car as the ai)? Or do all the settings only affect ai drivers (and only when AIWHisperer is running)?
The car#0 (player's car) is unaffected by the changes when a human is driving it. I think on the version currently available it's not even affected by the main values changes, but i have to check on that since i updated this specifically for another user.
Anyway, the changes are strictly when AI is running, and only if the app is running 🙂
-So far I'm only working with two variables (mostly, sometimes the closer racing slider), brake hint and turn in (which seems to be corner-radius also) and am getting very good results. I'm staying away from adjusting grip and such (almost) and am finding no need to use them. Civilized ai racing! Apparently if all cars arrive at the corner and turn in correctly there's very little collision action, and even tidy two-wide through the turns! Still the occasional bumper bumped but I also use Stretched Grid keeping things clean. Two wide through the first chicane at Monza! Stoked, I am.
The side by side behavior and a few other little tweaks helps a lot. basically it tells the AI car to use slightly modified inputs reading from the fastlane when 2 wide. I also think it does a good job - most of the time. Glad you noticed!
The elasticaution, sadly on my end, was way too tricky to use, especially on custom fastlanes where the braking points are super precise. It works fine on "gentle" fastlanes, where everything was way too safe anyway in the first place.
I'm implementing other solutions (see below for the straigh lines ie).
If you wanna have a go at the next version that pushes the AI with gaspedal inputs and positioning, just ask in DM, i need testers anyway.
- Another thing, it seems that it's even better if the ai cars don't each have ai_default setups. Or at least they aren't necessary.
Ah! That's something that needs to be investigated. It is not related to AIwhisp.
I noticed there's a Race Engineer starting in the AC logs at startup and saw that the gear setups were... Almost properly chosen and applied to AI? There must have been a CSP change in the last versions, but i couldn't pinpoint it.
I never had much luck with the ai_default setup anyway, so that was very welcome.
I suppose ideally I'd drive all the cars and get good setups for them, then review/replace the track ai lines, and Then do the AIWhisperin' but NOT. Gettin closer to racing, not caught in a fixin-things loop.
At the moment i'm more about exploring all possibilities and let the user try to find its way with them. Pretty much no automation, just a bunch of sliders. I'm pretty sure it's the best way. Although most of my users would just drop it at first sigh - can't blame them-, the ones that actually dig a little into it can really improve their offline experience.
For example, i saved on almost all my cars these Zone1 modifiers :
Then, using AIHINTSReader, apply Zone1 to all straights acceleration zones :
I cannot stress this enough, only for ACCELERATION ZONES, so the Zone1 should def stops before braking zones, but anyway, with this simple mod, you have AI blasting on straights without slowing down if there's a car slower at front.
It also works at corner exits where an AI would not fully blast the gaspedal if there's someone at front, but there a little bit of try and error for those cases.
(Maybe we need to set up an AIWhisperer team to mow through all cars & tracks?)
Let's see where it goes! I'm in contact with other AI tweakers and they have different visions and ways, can't tell who's gonna come with an ultimate fix for AI.
Anyway, in my opinion, sharing AI whisperer settings for tracks can't harm if it makes the experience better.