Keyboard Detect
Use our included Keyboard detect to identify which key and how long (milliseconds) it was pushed for. This is then used to modify your script. Our scripts use AutoHotKey key syntax to define the actions.
If you want advanced features to control your simulator then our SimuCheck ToolSet PRO is for you:
CSV script managing: Instead of creating your scripts in a programming language we
allow you to
create all your scripts in a CSV file. This makes it easier to create and manage your scripts.
CSV Switching: Keep separate CSVs for your different simulators and switch between
them easily
Profile Switching: All the scripts you add to your CSV are available from a
dropdown to allow you to
easily switch to a new profile without closing and opening a different script. After you switch to a
new profile
you will see all active key sequeneces.
Includes an ALL group so you can assign commands to all profiles within a spreadsheet which helps to
save time by grouping commands you always keep the same compared to other commands that are profile
dependant.
Recent Key Sequences: Easily view which key sequences were recently activated
directly on the screen
and without external programs.
Joystick Status:
Quickly view all the joysticks that are attached to your computer and which axis/buttons are active.
Modify your script and click RELOAD to use the new changes.
Download from Patreon with a SimuCheck:::Software subscription
To download ToolSet PRO you require an annual subscription. You can cancel
anytime and any software you download during your active/paid subscription you can keep and use
forever. You are also supporting me to continue to develop new ways to enhance our simulators :)
After you download the the ZIP file, extract to any directory you wish and you will see the
following files. Read below what they all do
Our ToolSet Core is Open-Source (LGPL) which is a great balance between freedom and community. Download it from Github.com/undoLogic/SimuCheckToolSet. If you are interesting to join our community and help us program or anything else please contact us, we would love the help !
Use our SimuCheck ToolSet to increase your immersion into your simulator.
Our ToolSet allows to interface your joysticks and mouse into specific commands that control your
Simulator.
We are currently ALPHA. Test out and please provide feedback so you can help us get to BETA that
much sooner !
If you want to support our growing community please sign-up for our Patreon SimuCheck:::Software
subscription. This will give you access to SimuCheck
ToolSet PRO, which
offers advanced features: CSV script managing, Profile Switching and Recent Key Sequences.
Please support us on Patreon for less then a cup of coffee a month
Use our included Keyboard detect to identify which key and how long (milliseconds) it was pushed for. This is then used to modify your script. Our scripts use AutoHotKey key syntax to define the actions.
Create your own scripts by using our API to add the features you need for your simulator. Visual Studio Code allows to display syntax highlighting for AutoHotKey, so it makes creating scripts a breeze
An intuitive GUI runs your scripts as well as displays all the connected joysticks on your computer. Easily identify the Joystick axis / buttons which you want to assign to a command that will control your simulator.
Follow these steps to install SimuCheckToolSet on your computer
Download and install AutoHotKey
Download our SimuCheck Library from https://github.com/undoLogic/SimuCheckToolSet
UnZip the files to any directory you wish on your computer.
Any script you make needs to include the SimuCheckToolSet library like this "#Include SimuCheckToolSet_Lib.ahk" - Check out our template and modify that file to get started
Simply right-click and choose 'run script'
A GUI will appear, after 'loading' goes away -> Change the dropdown to 'Online' and click submit
It is now active and any joystick commands you specified in the LOOP are now active !
Click "Joy+" and "Joy-" to navigate through all the joysticks that are installed on your computer. Then adjust the axis' or push buttons and you will see which are activated on the gui application. You can then modify your script with the changes.
If you make changes to the script while you are testing you can click reload to restart the script and use the changes.
You can change the dropdown back to offline if you want to pause the system and now run keyboard / mouse commands
Simply EXTEND your script to use our LGPL library and get up and running quickly and efficiently.
Add the following keyboard commands into your script below
https://www.autohotkey.com/docs/KeyList.htm#keyboard
Map your mouse buttons to a key sequence. When you (for example) push the middle mouse it will run the key sequence. You can also use the Rbutton / Lbutton NOTE: Ensure in your spreadsheet you disable auto spelling corrections as if MButton will cause issues since different then Mbutton. I will fix this in a future release.
Profile
Name
Joy#
Axis/Btn
Command
KeysDown
KeysUp
TeesValley-Shunter
Climb up
MButton
MousePushKeysReleaseOtherKeys
{e down}{Sleep 200}{e up}
{f down}{Sleep 200}{f up}
In our example above when the middle mouse button is pushed
the 'keysDown' key sequence will be run, when the middle mouse button is released the 'keysUp' key sequence will be run.
This is especially effective for mapping the e key, so in train simulator you can climb up on the train with the middle mouse button.
When pushing a button a series of keystrokes or mouse gestures will be fired and when you release the button another series of keystrokes will be fired. This works great to perform an action while your finger is pushing and then return to normal after you release your finger.
BtnPushReleaseOther(6, 5, "{F4 down}{Sleep 64}{F4 up}{Sleep 50}", "{F4 down}{Sleep
125}{F4 up}{Sleep 50}")
Profile
Name
Joy#
Axis/Btn
Command
KeysDown
KeysUp
Class43
Show HUD
6
5
BtnPushKeysReleaseOtherKeys
{F4 down}{Sleep 64}{F4 up}{Sleep 50}
{F4 down}{Sleep 125}{F4 up}{Sleep 50}
Profile
Name
Joy#
Axis/Btn
Command
KeysDown
KeysUp
Class43
Shift view
6
5
BtnPushReleaseOther
{RButton down}{Sleep 50}{Mouse 0/-50}{Sleep 50}{RButton up}
{RButton down}{Sleep 50}{Mouse 0/50}{Sleep 50}{RButton up}
In our example above when Joystick 6 btn 5 is pusheed the heads up display will appear.
It will continue to appear as long as you keep pushing your button. As soon as you release
the button the heads up display will disappear.
Using an analog axis a key you specify will be pushed and held at the top or the bottom of the axis until you slide away. This is especially useful for horns when you slide and keep it sounding until you slide away from an extremity. ToolSet PRO only: You are also able to add a key sequence (keysDown / keyDownAlt) allowing to control notches. If you push up / down a single notch will be run.
AxisPushHoldKeyTopOrBottom(3, JoyX, "{Space down}", "{Space up}", "{b down}", "{b up}")
Profile
Name
Joy#
Axis/Btn
Command
KeysDown
KeysUp
Notches
KeysDownAlt
KeysUpAlt
Class43
Horn
3
JoyX
AxisPushHoldKeyTopOrBottom
{Space down}
{Space up}
{e down}{Sleep 100}{e up}{f down}
{f up}
In our example above when Joystick 3 axis JoyX is moved to the bottom (100 percent) the space
bar
will be pushed as long as you leave the axis at the bottom. When you slide back to the middle
the space bar
will be released. If you slide the Joystick 3 axis JoyX to the top (0 percent) it will push the
b key
and hold it down as long as you keep the joystick at the top. When you slide back to the middle
it will release the b key.
You can omit the top of the bottom so that you can leave the slider at the top and only slide to
the bottom to activate the horn.
When pushing a button a series of keystrokes will be fired and when you release the button
another series of keystrokes will be fired.
This works great to perform an action while your finger is pushing and then return to normal
after you release your finger.
This only affects keystrokes and does NOT target mouse commands. If you prefer to incorporate mouse commands use "BtnPushReleaseOther" instead.
BtnPushKeysReleaseOtherKeys(6, 5, "{F4 down}{Sleep 64}{F4 up}{Sleep 50}", "{F4 down}{Sleep
125}{F4 up}{Sleep 50}")
Profile
Name
Joy#
Axis/Btn
Command
KeysDown
KeysUp
Class43
Show HUD
6
5
BtnPushKeysReleaseOtherKeys
{F4 down}{Sleep 64}{F4 up}{Sleep 50}
{F4 down}{Sleep 125}{F4 up}{Sleep 50}
In our example above when Joystick 6 btn 5 is pusheed the heads up display will appear.
It will continue to appear as long as you keep pushing your button. As soon as you release
the button the heads up display will disappear.
As you slide an axis on your joystick a series of keystrokes is pushed for each notch. This is useful for throttle or brakes and allows to use your joystick axis to control without the game supporting joysticks.
AxisToKeysNotches(6, "JoyZ", 13, "{a down}{Sleep 94}{a up}{Sleep 100}", "{d down}{Sleep 94}{d
up}{Sleep 100}")
Profile
Name
Joy#
Axis/Btn
Command
KeysDown
KeysUp
Notches
Class166
Throttle
6
JoyZ
AxisToKeysNotches
{a down}{Sleep 94}{a up}{Sleep 100}
{a down}{Sleep 94}{a up}{Sleep 100}
10
In our example above when Joystick 6 axis JoyZ is slide up or down a series of keystrokes is
pushed at each notch.
If you use 10 notches it means each new 10 percent of the joystick the series of keystrokes will
be pushed.
i.e. when you joystick moves from 5 percent to 11 percent the KeysDown will be fired once.
If you slide from 31 percent to 9 percent the KeysDown will be fired 3 times.
If you push a button the mouse will be moved a specific amount while the right button is being pressed.
This allows to move your viewpoint down a specific amount while you hold the button down
and when you release it will move back to the same place you started from.
If you prefer to not use the right mouse button while moving use "BtnPushReleaseOther" as this commnad gives much more flexibility with mouse commands
BtnPushMouse(6, 14, -200, 0, 200, 0)
Profile
Name
Joy#
Axis/Btn
Command
KeysDown
KeysUp
Notches
KeysDownAlt
KeysUpAlt
MouseX
MouseY
MouseReleaseX
MouseReleaseY
Class166
Look left (out window)
6
14
BtnPushMouse
-200
0
200
0
This will move the view to the left (to look out the window) when you push the button down on
joystick 6 #14.
negative on the X-axis will move to the Left on your screen.
When you release the button it will move your view back to where you started. It is simply
adding
the same amount which was removed on the first call.
Fix standard issues
SOLUTION: Close the Keyboard detect program.
DESC: The keyboard detect is not compatible with the mouse commands.
This can cause issues where you push a key to move the mouse and instead of it moving a little
bit it
will move at a great amount. Ensure after you have programmed and are ready to start your
simulator experience you close the keyboard detect program.
SOLUTION: Open your script / program as admininstrator. Right click before you open the program
and choose "run as administrator"
DESC: Some games / applications have security so only when you are running as administrator
will it accept the key commands.