New FFB tweak: clean FFB (disables ABS post-processing effect for cars with custom physics, enabled by dfault);
VR tweaks: hidden option to shift controllers position and rotation, for better compatibility with edge cases (look for [CONTROLLERS_INTEGRATION] SHIFT_… in vr_tweaks.ini);
Live reload for gameplay.ini’s USE_MPH, PIT_INDICATOR/ONLY_IN_PITLINE, GUI/ALLOW_OVERLAPPING_FORMS;
CSP logging rewritten to be more efficient, compact and informative;
New altered logging experiment:
AC logging is handled by CSP as well;
Also, if enabled, both CSP and AC logging will be done in background, without blocking;
Also, adds a limit to AC log, just in case;
New menu:
Session countdown and wait time timers;
Session info updated, new window with server info including CSP tweaks;
Custom popup for a welcome message (unless popup is disabled in chat settings);
Setup items with Y below -2 are hidden;
Support for extra items in Gears tab;
A case where left and right setup items are overlapped is handled better, adjusting labels and hints;
Pressing gas pedal to start the race is working;
Setup in pits works properly, mirroring original behavior;
Checking if ABS is active has been fixed (regression in 0.2.8);
Vanilla ABS with TORQUE_MODE_EX=2 is even smoother, just in case;
Torque reaction with welded/spool diff cars fixed;
Issue with tyres raycasting without extended physics hitting walls above the car is fixed;
Modifiers handling improved, fixing compatibility with Steam Deck;
Issue with data_manifest.ini causing some bindings to not show up at all fixed;
Occasional crash during loading with large tracks caused by ODE misconfiguration fixed;
Delay optional stuff option no longer allows for Grass FX to skip two frames in a row (should fix that disappeared grass report, hopefully);
Windscreen FX: extra reflections for exterior views option has been fixed;
Low beams and high beams flashing online fixed;
Rain FX: wet skidmark particles fade faster;
Rain FX racing line: drying applies faster on semi-wet surfaces, puddle spreading added in 0.2.8 is a bit more short-lived;
Braking torque clamping applies to torque affecting the hub as well, preventing issues with cars using huge handbrake torque and such;
New menu, drivers tooltips: support for imperial units (if set in AC settings);
The feature of main menu teleporting the player back to pits if race is online and main menu is opened 5 seconds or less before the start now works with new menu or any menu replacement;
Wet flags and tents are darker;
Stars texture sampling fixed, solving issues with aliasing, performance and weird lines;
When DirectX reports HDR as unavailable, CSP now goes and checks HDR setting in Windows as a fallback (turns out, DirectX is not very reliable at all when it comes to this);
Walking Out is compatible with Gamepad FX again;
Original welcome popup message blocks IMGUI mouse input;
Excluding meshes from interior masking with [REFLECTIONS_FX] MASK_CUBEMAP_SKIP=… fixed;
Tyres FX: default value of FLEX_PROFILE_MULT changed from 1 to safer 0.8 (it was 0.45 before 0.2.8, but ideally it should’ve been 1), fixing some small clipping issues with some cars;
Mask pass with desaturated smGlass shader fixed;
Case-independent filtering (<?I> prefix) is working (how long was it broken for?); this also fixes few CSP defaults: not setting wind for fences and such, even if they use ksGrass/ksTree, using meshes with asphalt and similar in them as defaults for heating mask (as long as shader is ksMultilayer_fresnel_nm), finding out balloon track models, occluding interior refraction in rain drops of the windscreen with displays and LEDs;
New keyword: property for filtering nodes, meshes and materials: with keyword:abc+def any meshes that have abc or def in names or material names will match (case-independent);
Car lights: RELATIVE_TO supports CSP filters ({…} stuff, still loads a single node though), also CSP now should be able to handle the case where RELATIVE_TO node is missing in active LOD;
Functions for raycast got an option for backface culling (default, disable or invert);
New physics.preventAIFromRetiring() function to stop AIs from retiring;
New fields ac.getSim().windowSize, ac.getUI().useImperialUnits;
New physics.addTrackSurface() function for creating new track physics surfaces live (not so good at the moment, lags a lot because of Embree rebuild; old __tmp_addPhysicsMesh thing has been removed);
A few more new icons;
physics.RigidBody() moved to an on-demand loading module, docs improved;
New ac.onOpenMainMenu() for custom main menus to react to Setup in pits shortcut and similar things;
Scene API: new :getIndices() method for meshes.
New ui.itemUnderline() function;
New ac.exportLapTimesToCSV() for Lua apps doing the same thing as the print button in the original menu;
A rare crash with Scene API meshes removal causing animated wipers to crash on reload fixed.