Jump to content
The simFlight Network Forums

Lua dynamic friction


Recommended Posts

Hello,

.

I just set the dynamic friction lua file for fsuipc. Everything works good but I would like to modify the ground friction default setting with the dynamic friction file (with text edit). How can I do that? which values I have to modify? I would like that the plane goes more slowly on the taxiway. I'm using the AXE A320/321;

 

I show you what I see on the dynamic friction file, thanks in advance for your answer.

 

 

-- This sets frictions according to recommendations by Johan Dees, early December 2012
 
-- Modded by Bob Scott to restrict wheel and brake reduced rolling friction effects to taxi speeds
-- in order to preserve FDE-driven TOLD performance (on hard-surfaces only)
 
ipc.RestoreFriction()
 
-- The original FSX values are shown in the comment at the end of each code line
 
ipc.SetFriction(WHEEL, CONCRETE, ROLLING, DRY, 0.030) --0.050
ipc.SetFriction(WHEEL, GRASS, ROLLING, DRY, 0.060) --0.080
ipc.SetFriction(WHEEL, GRASS_BUMPY, ROLLING, DRY, 0.070) --0.090
ipc.SetFriction(WHEEL, ASPHALT, ROLLING, DRY, 0.025) --0.050
ipc.SetFriction(WHEEL, SHORT_GRASS, ROLLING, DRY, 0.050) --0.060
ipc.SetFriction(WHEEL, LONG_GRASS, ROLLING, DRY, 0.060) --0.090
ipc.SetFriction(WHEEL, DIRT, ROLLING, DRY, 0.050) --0.060
ipc.SetFriction(WHEEL, GRAVEL, ROLLING, DRY, 0.060) --0.080
ipc.SetFriction(WHEEL, BITUMINUS, ROLLING, DRY, 0.030) --0.050
ipc.SetFriction(WHEEL, MACADAM, ROLLING, DRY, 0.030) --0.050
ipc.SetFriction(WHEEL, TARMAC, ROLLING, DRY, 0.030) --0.050
 
ipc.SetFriction(WHEEL, CONCRETE, SLIDING, DRY, 1.000) --0.640
ipc.SetFriction(WHEEL, GRASS, SLIDING, DRY, 0.800) --0.640
ipc.SetFriction(WHEEL, GRASS_BUMPY, SLIDING, DRY, 0.800) --0.640
ipc.SetFriction(WHEEL, ASPHALT, SLIDING, DRY, 0.950) --0.640
ipc.SetFriction(WHEEL, SHORT_GRASS, SLIDING, DRY, 0.800) --0.640
ipc.SetFriction(WHEEL, LONG_GRASS, SLIDING, DRY, 0.800) --0.640
ipc.SetFriction(WHEEL, DIRT, SLIDING, DRY, 0.800) --0.640
ipc.SetFriction(WHEEL, GRAVEL, SLIDING, DRY, 0.800) --0.640
ipc.SetFriction(WHEEL, BITUMINUS, SLIDING, DRY, 1.000) --0.640
ipc.SetFriction(WHEEL, MACADAM, SLIDING, DRY, 0.950) --0.550
ipc.SetFriction(WHEEL, TARMAC, SLIDING, DRY, 1.000) --0.640
 
ipc.SetFriction(BRAKE, CONCRETE, ROLLING, DRY, 0.900) --0.700
ipc.SetFriction(BRAKE, GRASS, ROLLING, DRY, 0.700) --0.500
ipc.SetFriction(BRAKE, GRASS_BUMPY, ROLLING, DRY, 0.650) --0.400
ipc.SetFriction(BRAKE, ASPHALT, ROLLING, DRY, 0.900) --0.700
ipc.SetFriction(BRAKE, SHORT_GRASS, ROLLING, DRY, 0.650) --0.500
ipc.SetFriction(BRAKE, LONG_GRASS, ROLLING, DRY, 0.650) --0.500
ipc.SetFriction(BRAKE, GRAVEL, ROLLING, DRY, 0.650) --0.500
ipc.SetFriction(BRAKE, BITUMINUS, ROLLING, DRY, 0.900) --0.700
ipc.SetFriction(BRAKE, MACADAM, ROLLING, DRY, 0.900) --0.700
ipc.SetFriction(BRAKE, TARMAC, ROLLING, DRY, 0.900) --0.700
 
 
--restore friction/braking to default when above taxi speed to preserve FDE performance fidelity
 
taxi_spd = 30 --changeover threshold in knots groundspeed
cur_status = 1
while 1 do
 
GS_ipc = ipc.readSD(0x2B4)
GS = GS_ipc / 65536.0 * 1.94384 --groundspeed in knots
if GS < taxi_spd
  then 
    slow = 1
  else 
    slow = 0
end
 
if cur_status ~= slow   -- threshold was crossed
  then
    cur_status = slow
    if slow
      then
        ipc.SetFriction(WHEEL, CONCRETE, ROLLING, DRY, 0.025)
        ipc.SetFriction(WHEEL, ASPHALT, ROLLING, DRY, 0.030)
        ipc.SetFriction(WHEEL, BITUMINUS, ROLLING, DRY, 0.030)
        ipc.SetFriction(WHEEL, MACADAM, ROLLING, DRY, 0.030)
        ipc.SetFriction(WHEEL, TARMAC, ROLLING, DRY, 0.030)
        ipc.SetFriction(BRAKE, CONCRETE, ROLLING, DRY, 0.900)
        ipc.SetFriction(BRAKE, ASPHALT, ROLLING, DRY, 0.900)
        ipc.SetFriction(BRAKE, BITUMINUS, ROLLING, DRY, 0.900)
        ipc.SetFriction(BRAKE, MACADAM, ROLLING, DRY, 0.900)
        ipc.SetFriction(BRAKE, TARMAC, ROLLING, DRY, 0.900)
      else --restore to defaults when above taxi spd
        ipc.SetFriction(WHEEL, CONCRETE, ROLLING, DRY, 0.050)
        ipc.SetFriction(WHEEL, ASPHALT, ROLLING, DRY, 0.050)
        ipc.SetFriction(WHEEL, BITUMINUS, ROLLING, DRY, 0.050)
        ipc.SetFriction(WHEEL, MACADAM, ROLLING, DRY, 0.050)
        ipc.SetFriction(WHEEL, TARMAC, ROLLING, DRY, 0.050)
        ipc.SetFriction(BRAKE, CONCRETE, ROLLING, DRY, 0.700)
        ipc.SetFriction(BRAKE, ASPHALT, ROLLING, DRY, 0.700)
        ipc.SetFriction(BRAKE, BITUMINUS, ROLLING, DRY, 0.700)
        ipc.SetFriction(BRAKE, MACADAM, ROLLING, DRY, 0.700)
        ipc.SetFriction(BRAKE, TARMAC, ROLLING, DRY, 0.700)
    end
end
 
 
ipc.sleep(999)
end --loop indefinitely
 
regards 
christopher M
Link to comment
Share on other sites

The easiest thing to try is to change the changeover speed first, change the speed (red) in the line below to 20 or 25 and see if that helps.

 

taxi_spd = 30 --changeover threshold in knots groundspeed

I tried it but it does not change the plane accelerate in the same way.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. Guidelines Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.