Flight stick as 18 speed H-Shifter - Advanced Input Configuration

Post Reply
lithodora
Posts: 1
Joined: 30 Mar 2020 22:23

Flight stick as 18 speed H-Shifter - Advanced Input Configuration

#1 Post by lithodora » 30 Mar 2020 23:24

After a few hours of trying to use mapping software and other stuff that didn't work for me I have successfully mapped a Saitek AV8R-01 flight stick by following the directions on the wiki here: https://modding.scssoft.com/wiki/Docume ... m_hardware

How do I set it so that it stays in the gear I set instead of shifting to neutral when I let go?
I realized the issue after I finished. The logic makes sense. It normally would stay in gear. Perhaps a button press to go to neutral? Is there a better way to do it?

It was not clear from the documentation if the edited file would need to have all the lines renumbered if any are added.
I did not define any constants or add any new lines, but modified existing ones to create 6 gears with 2 toggles to create the 18 speed shifter:

Code: Select all

 config_lines[396]: "mix gearsel1on `semantical.gearsel1on?0`"
 config_lines[397]: "mix gearsel1off `semantical.gearsel1off?0`"
 config_lines[398]: "mix gearsel1tgl `di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.b1 | semantical.gearsel1tgl?0`"
 config_lines[399]: "mix gearsel2on `semantical.gearsel2on?0`"
 config_lines[400]: "mix gearsel2off `semantical.gearsel2off?0`"
 config_lines[401]: "mix gearsel2tgl `di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.b3 | semantical.gearsel2tgl?0`"
 config_lines[402]: "mix gear1 `'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.b2?0 | semantical.gear1?0`"
 config_lines[403]: "mix gear2 `di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.y * -1 & (di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.x * -1) | semantical.gear2?0`"
 config_lines[404]: "mix gear3 `di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.y & (di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.x * -1) | semantical.gear3?0`"
 config_lines[405]: "mix gear4 `di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.y * -1 & !((di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.x * -1)|(di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.x)) | semantical.gear4?0`"
 config_lines[406]: "mix gear5 `di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.y & !((di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.x * -1)|(di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.x)) | semantical.gear5?0`"
 config_lines[407]: "mix gear6 `di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.y * -1 & (di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.x) | semantical.gear6?0`"
 config_lines[408]: "mix gear7 `di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.y & (di8.'{8B9CE190-B60B-11E8-8001-444553540000}|{046106A3-0000-0000-0000-504944564944}'.x) | semantical.gear7?0`"
EDIT:

Figured it out.

A) Adding new lines at the bottom is fine so I can alias the device and shorten my code
B)

Code: Select all

 config_lines[403]: "mix gear2 `(gear2 & !gear1 & !gear3 & !gear4 & !gear5 & !gear6 & !gear7 & !gearsel1tgl & !joy2.b1?0) | (gte(normalize(abs(joy2.x),0),0.6) & gte(normalize(abs(joy2.y),0),0.5) & !sign(joy2.x) & !sign(joy2.y)) | semantical.gear2?0`"
 config_lines[404]: "mix gear3 `(gear3 & !gear1 & !gear2 & !gear4 & !gear5 & !gear6 & !gear7 & !gearsel1tgl & !joy2.b1?0) | (gte(normalize(abs(joy2.x),0),0.6) & gte(normalize(joy2.y,0),0.5) & !sign(joy2.x)) | semantical.gear3?0`"
 config_lines[405]: "mix gear4 `(gear4 & !gear1 & !gear2 & !gear3 & !gear5 & !gear6 & !gear7 & !gearsel1tgl & !joy2.b1?0) | (gte(0.1,normalize(abs(joy2.x),0)) & gte(normalize(abs(joy2.y),0),0.9) & !sign(joy2.y)) | semantical.gear4?0`"
 config_lines[406]: "mix gear5 `(gear5 & !gear1 & !gear2 & !gear3 & !gear4 & !gear6 & !gear7 & !gearsel1tgl & !joy2.b1?0) | (gte(0.1,normalize(abs(joy2.x),0)) & gte(normalize(joy2.y,0),0.9)) | semantical.gear5?0`"
 config_lines[407]: "mix gear6 `(gear6 & !gear1 & !gear2 & !gear3 & !gear4 & !gear5 & !gear7 & !gearsel1tgl & !joy2.b1?0) | (gte(normalize(joy2.x,0),0.6) & gte(normalize(abs(joy2.y),0),0.5) & !sign(joy2.y)) | semantical.gear6?0`"
 config_lines[408]: "mix gear7 `(gear7 & !gear1 & !gear2 & !gear3 & !gear4 & !gear5 & !gear6 & !gearsel1tgl & !joy2.b1?0) | (!gear1 & gte(normalize(joy2.x,0),0.6) & gte(normalize(joy2.y,0),0.5)) | semantical.gear7?0`"
Post Reply

Return to “Technical Problems”

Who is online

Users browsing this forum: No registered users and 3 guests