1. Do not share user accounts! Any account that is shared by another person will be blocked and closed. This means: we will close not only the account that is shared, but also the main account of the user who uses another person's account. We have the ability to detect account sharing, so please do not try to cheat the system. This action will take place on 04/18/2023. Read all forum rules.
    Dismiss Notice
  2. For downloading SimTools plugins you need a Download Package. Get it with virtual coins that you receive for forum activity or Buy Download Package - We have a zero Spam tolerance so read our forum rules first.

    Buy Now a Download Plan!
  3. Do not try to cheat our system and do not post an unnecessary amount of useless posts only to earn credits here. We have a zero spam tolerance policy and this will cause a ban of your user account. Otherwise we wish you a pleasant stay here! Read the forum rules
  4. We have a few rules which you need to read and accept before posting anything here! Following these rules will keep the forum clean and your stay pleasant. Do not follow these rules can lead to permanent exclusion from this website: Read the forum rules.
    Are you a company? Read our company rules
value1

Digital Combat Simulator – DCS Plugin 2.0.0.0

Digital Combat Simulator – DCS Plugin

  1. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,159
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    148,640Coins
    Ratings:
    +10,910 / 54 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    My pleasure, though more importantly I am relieved that you did not inadvertently damage a Vive base station.
  2. Soma888

    Soma888 New Member

    Joined:
    Jun 25, 2018
    Messages:
    22
    Location:
    Australia
    Balance:
    149Coins
    Ratings:
    +1 / 1 / -0
    My Motion Simulator:
    3DOF
    Hi,
    I have just bought a dofreality 3dof system and I’m using DCS and try to make it run smoothly. Has what you are talking about been implemented into the latest version of SimTools that you can download? It’s going to be good to not have that jerkiness when trying to do a roll. Looking forward to using SimTools more.

    Thanks
  3. Adrianstealth

    Adrianstealth Active Member

    Joined:
    Nov 18, 2010
    Messages:
    158
    Occupation:
    director
    Location:
    england
    Balance:
    328Coins
    Ratings:
    +37 / 0 / -0
    My Motion Simulator:
    SCN6, 4DOF
    Upgrading pc soon so will be able to use DCS again

    Previously simtools with this plug-in wouldn’t work with the spitfire

    Is this still the case ??

    Ps all other aircraft was ok
  4. Soma888

    Soma888 New Member

    Joined:
    Jun 25, 2018
    Messages:
    22
    Location:
    Australia
    Balance:
    149Coins
    Ratings:
    +1 / 1 / -0
    My Motion Simulator:
    3DOF
    When replacing ‘roll’ In SimTools with Extra 1 and Extra 2(?) to smooth out the roll, besides the axis assignments where else do you need to update? Do I need to change anything in Export.lau or the plug-in?

    Thanks
  5. Happy Cat

    Happy Cat New Member

    Joined:
    May 4, 2018
    Messages:
    18
    Location:
    Russia
    Balance:
    304Coins
    Ratings:
    +8 / 0 / -0
    My Motion Simulator:
    2DOF
    Tell me how can I use extra 2 in dcs?

    [​IMG]
  6. Moe Colontonio

    Moe Colontonio Member Gold Contributor

    Joined:
    Dec 9, 2017
    Messages:
    122
    Location:
    New Jersey USA
    Balance:
    782Coins
    Ratings:
    +30 / 1 / -0
    My Motion Simulator:
    3DOF
    I was never able to get Extra 1 or 2 to work. I'm still trying to figure out how to get YAW working! Someone mentioned using Heave, but for me, HEAVE tilts the rig forward/back? I found a solution to get rid of the "flip" when rolling, I'll try to find it and post it here.
  7. Moe Colontonio

    Moe Colontonio Member Gold Contributor

    Joined:
    Dec 9, 2017
    Messages:
    122
    Location:
    New Jersey USA
    Balance:
    782Coins
    Ratings:
    +30 / 1 / -0
    My Motion Simulator:
    3DOF
  8. Happy Cat

    Happy Cat New Member

    Joined:
    May 4, 2018
    Messages:
    18
    Location:
    Russia
    Balance:
    304Coins
    Ratings:
    +8 / 0 / -0
    My Motion Simulator:
    2DOF
  9. Moe Colontonio

    Moe Colontonio Member Gold Contributor

    Joined:
    Dec 9, 2017
    Messages:
    122
    Location:
    New Jersey USA
    Balance:
    782Coins
    Ratings:
    +30 / 1 / -0
    My Motion Simulator:
    3DOF
    Excellent, now if someone could help me get yaw to work?!!!
  10. Happy Cat

    Happy Cat New Member

    Joined:
    May 4, 2018
    Messages:
    18
    Location:
    Russia
    Balance:
    304Coins
    Ratings:
    +8 / 0 / -0
    My Motion Simulator:
    2DOF
    I think in DCS not is used yaw. Give it a try sway.
  11. hugso

    hugso Active Member

    Joined:
    Sep 17, 2013
    Messages:
    140
    Location:
    Glos UK
    Balance:
    611Coins
    Ratings:
    +51 / 1 / -0
    My Motion Simulator:
    Arduino, Motion platform, 4DOF
    Finally got round to installing latest DCS world and all working well with my 5 dof rig. I really really really would like to use airspeed. Any chance this could be added to the plugin?
  12. Historiker

    Historiker Dramamine Adict Gold Contributor

    Joined:
    Dec 16, 2010
    Messages:
    2,161
    Occupation:
    Retired
    Location:
    Michigan USA
    Balance:
    9,201Coins
    Ratings:
    +2,164 / 19 / -1
    My Motion Simulator:
    3DOF, DC motor, Arduino, Motion platform, 6DOF
    @hugso , which planes are you flying in DCS with Simtools? Some people are reporting that the newest planes (F/A-18c and Yak-52) are not functional with the plugin.
  13. hugso

    hugso Active Member

    Joined:
    Sep 17, 2013
    Messages:
    140
    Location:
    Glos UK
    Balance:
    611Coins
    Ratings:
    +51 / 1 / -0
    My Motion Simulator:
    Arduino, Motion platform, 4DOF
    I have only flown the Spitfire so far. Works fine flying round Normandy. Needed a lot of tweaking when I swapped over from Cliffs of Dover. Pitch Roll and Sway all OK with minor adjustments in Tuning Center. Heave is a bit strange - a sudden leap of one g on take-off. Surge is how I would expect on the ground, but goes bonkers in flight - massive surges when zooming up and down and with changes in engine power. If I disconnect surge in flight things are pretty good. (It would be great if we had airspeed available with the plugin, I would not have to do this manually.)
    • Informative Informative x 2
  14. gianlu320

    gianlu320 Member

    Joined:
    Feb 9, 2018
    Messages:
    76
    Location:
    Crawley
    Balance:
    542Coins
    Ratings:
    +17 / 0 / -0
    I also have problems with surge in flight
    On the ground it's fine but inflight keeps my platform always pitched up when i accelerate and the problem is that i can't feel enough pitch in this way.
    How do you disconnect or deactivate surge in flight?
    Is there a way to make this happen via the export.lua?
    Thanks
  15. RiftFlyer

    RiftFlyer Active Member Gold Contributor

    Joined:
    Apr 15, 2014
    Messages:
    198
    Balance:
    1,711Coins
    Ratings:
    +121 / 0 / -0
    My Motion Simulator:
    DC motor
    Yes you can do it with a simple if statement and your altitude agl.
    • Informative Informative x 1
  16. BrassEm

    BrassEm G-Seat + SFX100 Builder Gold Contributor

    Joined:
    Apr 15, 2015
    Messages:
    130
    Location:
    NE of YMML
    Balance:
    1,066Coins
    Ratings:
    +49 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor, 4DOF
    @gianlu320,
    I've used altitude to scale certain outputs in the AfterNextFrame section of the export.lua Adjust your export.lua as required. (Make a backup first!!!!)
    To get aircraft datums;
    local altRad = LoGetAltitudeAboveGroundLevel()
    local TAS = LoGetTrueAirSpeed() -- (args - 0, results - 1 (m/s))
    local accel = LoGetAccelerationUnits() -- (args - 0, results - 1 (g)) The g-Force.

    Where the variable "surge" is output to GameEngine I believe;
    local surge = accel.x -- Surge

    Then add values in as needed;

    if altRad <= 2.5 then
    surge = surge -- this statement not really needed but for following logic
    else
    surge = surge*0.1 -- Reduces surge by 1/10th when aircraft above 2.5AGL
    end
    • Informative Informative x 2
  17. gianlu320

    gianlu320 Member

    Joined:
    Feb 9, 2018
    Messages:
    76
    Location:
    Crawley
    Balance:
    542Coins
    Ratings:
    +17 / 0 / -0
    @BrassEm
    Thanks a lot for trying to help...
    I'm a total noob in this thing, I've tried what you suggested but it doesn't work as expected.
    I still get full surge inflight as before and I loose also the reduction on the other forces when on ground.
    I'll copy paste what I modified in my export.lua

    AfterNextFrame=function(self)

    local altRad = LoGetAltitudeAboveGroundLevel()
    local TAS = LoGetTrueAirSpeed() -- (args - 0, results - 1 (m/s))
    local pitch, roll, yaw = LoGetADIPitchBankYaw()
    local accel = LoGetAccelerationUnits() -- (args - 0, results - 1 (g)) The g-Force.
    local surge = accel.x -- Surge



    -- reduce forces on ground
    -- if altRad < 3 then
    -- accel.y = accel.y * 0.25
    -- accel.z = accel.z * 0.25
    -- surge = surge
    -- else
    -- surge = surge * 0.1 -- Reduces surge by 1/10 when aircraft above 3AGL
    -- end



    What did I get wrong?
    thanks for the help
  18. BrassEm

    BrassEm G-Seat + SFX100 Builder Gold Contributor

    Joined:
    Apr 15, 2015
    Messages:
    130
    Location:
    NE of YMML
    Balance:
    1,066Coins
    Ratings:
    +49 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor, 4DOF
    @gianlu320
    My bad, I've been looking at my own export.lua for too long. Not seeing all of your export.lua I am assuming a few things. It would be good if you could post your full export.lua. But...

    -- reduce forces on ground
    if altRad < 3 then
    accel.y = accel.y * 0.25 --<Reduces Heave to a 1/4 of its value while on the ground (Less than 3m/3ft)
    accel.z = accel.z * 0.25 --<Reduces Sway to a 1/4 of its value while on the ground (Less than 3m/3ft)
    accel.x= accel.x -- Surge remains the same
    else
    accel.x = accel.x* 0.1 -- Reduces surge by 1/10 when aircraft above 3AGL
    end

    EDIT: Apologies. The original code won't work as it is ignored by the lua interpreter because of the preceeding "--"'s. I've removed them to make it work as intended.
    • Informative Informative x 1
    Last edited: Oct 16, 2018
  19. gianlu320

    gianlu320 Member

    Joined:
    Feb 9, 2018
    Messages:
    76
    Location:
    Crawley
    Balance:
    542Coins
    Ratings:
    +17 / 0 / -0
    @BrassEm
    Thanks a lot for your answer
    I'll copy paste my export.lua as it is now without any of the changes you suggested.
    I just want to mention that this export.lua was not done by me ,it was done by steve2112 and was posted in his building thread.
    The link to his building thread and to his export.lua can be found in this page, page 15 of this thread, post287.
    I just wanted to give credit to him before going any further.
    So this is the export.lua I'm currently using and it works very well apart from the surge inflight that is a bit to much and it impedes my pitch...

    AfterNextFrame=function(self)

    local altRad = LoGetAltitudeAboveGroundLevel()
    local pitch, roll, yaw = LoGetADIPitchBankYaw()
    local accel = LoGetAccelerationUnits()

    -- convert to degrees to make the math easier
    pitch = pitch * 57.295779;
    roll = roll * 57.295779;

    --dbg_file:write(string.format( "p=%.1f r=%.1f ", pitch, roll))

    -- STEVE reduce roll by when pitch > 45deg
    if pitch > 45 then
    local multiplier = 1- (pitch-45)/30
    if multiplier < 0 then
    multiplier = 0;
    end
    roll = roll*multiplier
    --dbg_file:write(string.format("PITCH>45: p=%.1f r=%.1f m=%.3f ", pitch, roll, multiplier))
    end

    -- STEVE returns roll back to zero as it passes +/- 90 degrees to avoiding the -179 to 179 flip that occurs in a full roll
    if roll > 90 then
    roll = 180 - roll
    --dbg_file:write(string.format("ROLL>90: p=%.1f r=%.1f ", pitch, roll))
    elseif roll < -90 then
    roll = -(180 + roll)
    --dbg_file:write(string.format("ROLL<-90: p=%.1f r=%.1f ", pitch, roll))
    end

    --dbg_file:write(string.format("\n"))

    -- reduce forces on ground
    -- if altRad < 3 then
    -- accel.x = accel.x * 0.25
    -- accel.y = accel.y * 0.25
    -- accel.z = accel.z * 0.25
    -- end

    my_send = socket.protect(function()
    if c then
    -- socket.try(c1:send(string.format("%.3f; %.3f; %.3f; %.3f; %.3f; %.3f;\n", pitch*1000.0, bank*1000.0, yaw*1000.0, accel.x*1000.0, accel.y*1000.0, accel.z*1000.0)))
    socket.try(c:send(string.format("%.4f; %.4f; %.4f; %.4f; %.4f; %.4f;\n", pitch/57.295779, roll/57.295779, yaw, accel.x, accel.y, accel.z)))

    end
    end)
    my_send()

    end,

    ---------------------------------------------------------------------------------------------------------------------------------------------------------------
    So what do you think?
    Should I just modify it as you suggested in your previous post?
    Like this?

    -- reduce forces on ground
    -- if altRad < 3 then
    -- accel.y = accel.y * 0.25 --<Reduces Heave to a 1/4 of its value while on the ground (Less than 3m/3ft)
    -- accel.z = accel.z * 0.25 --<Reduces Sway to a 1/4 of its value while on the ground (Less than 3m/3ft)
    -- accel.x= accel.x -- Surge remains the same
    -- else
    -- accel.x = accel.x* 0.1 -- Reduces surge by 1/10 when aircraft above 3AGL
    -- end

    ---------------------------------------------------------------------------------------------------------------------------------------------------------------
    Also the first time you answered me you wrote me this...

    AfterNextFrame=function(self)

    local TAS = LoGetTrueAirSpeed() -- (args - 0, results - 1 (m/s))
    local accel = LoGetAccelerationUnits() -- (args - 0, results - 1 (g)) The g-Force.

    Do I need those lines as well?
    Sorry for the many questions and really thank you for looking in to this and hopefully it can be useful for others as well
  20. BrassEm

    BrassEm G-Seat + SFX100 Builder Gold Contributor

    Joined:
    Apr 15, 2015
    Messages:
    130
    Location:
    NE of YMML
    Balance:
    1,066Coins
    Ratings:
    +49 / 0 / -0
    My Motion Simulator:
    DC motor, AC motor, 4DOF
    @gianlu320,

    No problems. I hope I am not confusing things too much as I goofed with the last code post. Working from the bottom up;

    local accel = LoGetAccelerationUnits() -- (args - 0, results - 1 (g)) The g-Force.
    Steve's .lua already has this in so leave it as is. It assigns the g values obtained by the LoGetAccelerationUnits() funtion to the variable "accel".

    local TAS = LoGetTrueAirSpeed() -- (args - 0, results - 1 (m/s))
    I threw this statement in for reference as I use the TAS value in calculations to scale how much force is felt depending on airspeed where needed. Up to you if you want to add this in for your calculations. I can elaborate further if it will help.

    You mention that the statements below work okay on the ground but not in the air. These statements have a preceeding "--" in front of them which tells the .lua processing to ignore anything after that in that line. So they dont have any effect unless you remove the "--"'s. This part of the code needs to be modified for the in air effects. I left them (the --'s) in when I cut and pasted for the previous post. They have preceding "--"'s so it wasn't going to work anyways as it was being ignored. Sorry about that. Now for the "working" code this time...

    WAS...
    -- reduce forces on ground
    -- if altRad < 3 then
    -- accel.x = accel.x * 0.25
    -- accel.y = accel.y * 0.25
    -- accel.z = accel.z * 0.25
    -- end

    REPLACED WITH...
    -- reduce surge in the air
    if altRad > 3 then
    accel.x = accel.x * 0.5
    end

    The 0.5 scale factor value will reduce the Surge accel.x variable by half. In the previous example I've used 0.1 scale factor or one tenth. Unfortunately you will need to experiment until you find the value that works best for your setup.

    Let us know how you go. I am also curious to what the MIN/MAX values in GAME ENGINE is for Surge.
    • Informative Informative x 1