Hydraulics

Everything about modding.
Post Reply
User avatar
Tunari
Site Admin
Posts: 45
Joined: Fri May 19, 2023 11:47 am
Location: Finngolia
IQ rating: 89
iRating: 2545

Hydraulics

Post by Tunari »

Hydraulic suspension is a necessity in any self-respecting lowrider's loadout and practically the only way to have fun in a parking lot, while you're waiting for your friends to join.

Prerequisites:
  • A car
  • Basic knowledge of AC dynamic controller inis
  • Extension physics
  • Basic knowledge of suspension setup
Hydraulic suspensions work by extending a rod connected to the suspension control arm. While that rod is not a spring, its effect is similar, it adds stiffness to the suspension. So in AC, we will be using a setup controller to adjust the suspension spring strength.

Step 0. Enable extension physics.
car.ini header extended-2.

Step 1. Controller inis.
There are a few things that must be changed, depending on what you want to achieve. By default, car suspension travel range may be too short to achieve any jumping, and in some cases, the suspension might sit high by default, making the hydraulic-action feel more like busted-up bag suspension. But first, let's set up the suspension controllers.

You will need to create 4 controller .ini files. They can be named whatever you like, but I use hydros_xx.ini or cont_xx_spring.ini (ie. hydros_lf.ini, OR cont_lf_spring.ini).

There are a few parameters that must be adjusted in particular to your car:

INPUT: The suspension will be controlled by the EXTRA_x inputs. Depending on how many you have available, you may want to just use one, which would achieve a simple air-ride type thing, or you can use 4 inputs for each corner.

UP_LIMIT, DOWN_LIMIT:
DOWN_LIMIT is the spring rate when the suspension is sitting. Get this from your suspensions.ini, however divide it by 1000. (ie. 60000nm spring would be 60)
UP_LIMIT is the spring rate, at which the spring will be extending, aka the strength of your hydraulic. Do not make this too high as you may overpower your bumpstops, after which your suspension will do an Assetto Corsa. :idea:

Below is the controller file.

Code: Select all

[CONTROLLER_0]
COMBINATOR=ADD
INPUT=LIGHT_EXTRA_B ;make sure to change the letter to correspond to what input you want
LUT=(| 0=1 | 1=500 |)
FILTER=0.00000000000000001
UP_LIMIT=200
DOWN_LIMIT=1
You should now have 4 controller inis.

Step 2. Setup.ini items.
Now we must add 4 new setup items, for each corner of the suspension. If these items already exist for your car, just simply add the EXT_CONTROLLER line to the bottom of each item.
Make sure to change the controller name to correspond to the corner. :idea:

Code: Select all

[SPRING_RATE_LF]
SHOW_CLICKS=0
TAB=SUSPENSIONS
NAME=Wheel rate LF
MIN=1
MAX=200
STEP=10
POS_X=0
POS_Y=1
HELP=HELP_LF_WHEELRATE
EXT_CONTROLLER=hydros_lf.ini ;name of your controller ini.
Now you should go in game, and see something happen when you press though the EXTRA inputs.
airbags.gif
airbags.gif (4.5 MiB) Viewed 6050 times
That was anti-climatic. :roll: My mates bagged MK4 Golf rips more impressive jumps than that!

Step 3. Increasing travel range. Also called "how I stopped worrying about driving and started BALLIN".
Now, there are a lot of things that can go wrong in this step and unfortunately I do not have the patience to go through all of them, so there will be a brief troubleshoot section at the end.
Note: if you don't know what you are doing, there is a high chance that you will completely fuck up the driving dynamics of your car. If that is not a concern, then everything is fine.

Firstly, disable PACKERS by putting PACKER_RANGE to 0 on both front and rear suspension. Depending on the suspension setup, packers restrict travel range and they are not needed right now.
Secondly, this will depend on your car, but in most cases, increase BUMPSTOP_DN. This will move the lower bumpstop further down, allowing the wheel to travel down more. On my car, the default is 0.12, I will up it to 0.24
Then we want to make sure, that the suspension can actually reach all the way down to the lower bumpstop, so increase the ROD_LENGTH to be AT LEAST equal to BUMPSTOP_DN. (Also make sure, that a setup item is not overriding this in setup.ini)
Now let's check the fruits of our labor in game.
donked-out.jpg
donked-out.jpg (175.88 KiB) Viewed 6050 times
Well the car's all donked out but I'm not seeing any lowriding action. This is because the default suspension setup in the controller inis is too stiff, combined with the increased ROD_LENGTH will cause the suspension to be too stiff.
Solution: go into the controller inis and change the default spring strength (DOWN_LIMIT) to be less. I went from 101 to 20. After adjusting your default suspension setup a nod, everything should work.
hydros.gif
hydros.gif (6.4 MiB) Viewed 6050 times
BLING. :ideacool:

Troubleshooting:
This is cool but now my car drives like ass.
You softened the springs, so soften the dampers. Use "Car engineer" debug app for help.

Car is struggling to jump.
Increase the jump spring rate. Adjust dampers. Additionally, AC may struggle with car physics when the car is stationary.

Left/Right suspension are not moving independently.
Disable antiroll-bars. You can also implement a setup controller to disable/enable ARBs when hydraulics are active. :ugeek:

Wheels flip around sideways and break.
Reduce travel range. Problem is caused by the wishbones flipping the hub around itself.

Wheels get excessive toe/break under steering.
Reduce travel range, caused by steering arm position.

Rear suspension lifts excessively under throttle.
A side-effect of suspension anti-squat. Steal the rear geometry from a simpler car.
Image
Image
Image
Image
Image
ImageImage
ImageImageImage
Post Reply