# # Xpress Elite Made by Alexandre Rodrigues Lopes [http://alexcrafter.blogspot.com/](http://alexcrafter.blogspot.com/) version 1.0, 2020 ![screenshot](screenshot.jpg) # # Intro Hello mates! This autohotkey script creates a handy virtual keyboard with shortcuts for the game Elite Dangerous. It was made with the purpose of reducing the need of so many keyboard buttons, when playing with mouse+keyboard. It also adds macros for pip management, and smart cycle for weapon groups. (Instead of cycling, you just need to press a specific weapon group, and the script will auto-cycle to it). # # Install Just store the folder anywhere and run the script. You need Autohotkey installed for it to work. Currently, it opens the quick-acess menu when pressing the mouse key 4 (on gaming mouses). But you can change it anytime. ("xpress_macros.txt" file) # # Extras The script also runs an optional window spy, that shows a tiny game window whenever you are outside of the game. (On long travels, you can have a visual check of the game progress while watching youtube videos or doing anything else). To quickly return to the game, a 4th mouse button was assigned (for those mouses with extra buttons) You can change this button to anything else. To use the weapon group auto-cycle feature, you have to fisrt cycle your weapons to group 1, then press the button S (last one on the set). It will open an input window for you to set how many weapon groups you have on your ship. After that, the auto-feature will do the work for you. # # Customizing spy window If you don't want the spy window, go to the script "xpress-elite.ahk", and change the line 44 from "Run, elite-window.ahk" to ";Run, elite-window.ahk" (the ; character will turn the code into a comment section) # # Customizing buttons The file "xpress_vars.txt" has all the buttons listed. If you want to change one, just follow this rule: "KeyboardArr["button id"] :={xid:"action id", px:"position x", py:"position y", w:"width", h:"height", xtip:"tooltip text"}" Ex: "KeyboardArr["eng1"] :={xid:"eng100", px:20, py:10, w:40, h:40, xtip:"Engine to 100%"}" You can add as many buttons as you like, but I advise to change the background image accordingly "\images\keyboard1.png" To delete buttons, it's better to add the ";" character to the line instead of deleting it. (In case you want to backtrack) # # Customizing actions The file "xpress_actions.txt" has all the actions listed. Actions are referenced by the "button xid". format: ;-------------------------- ;action comment case "action id": (Check the button xid on the line 44 of this help file) GuiKeyboard_hide(3) (Don't change this, it hides the virtual keyboard before sending keys. Works awkwardly otherwise.) ED_KeyMod("modifiers","key to send","speed") (this is a slow key with modifier) ED_KeyModFast("modifiers","key to send","speed") (this is a fast key with modifier) ED_keyMacro(["key1","key2","key3","key4",...],"speed") (this is a slow macro to send several keys in sequence) ED_keyMacroFast(["key1","key2","key3","key4",...],"speed") (this is a fast macro to send several keys in sequence) Slow and Fast modes change the way a button is pressed. In slow modes, there's a time difference between a button is pressed down and released. In fast modes, the button is simply clicked. Some commands inside the game work better with one or the other, so, you have to test it. "speed", is the time between presses. It's also an important factor to test inside the game, specially in slow modes. return ;-------------------------- Ex: ;-------------------------- ;mode composition scan case "xbodies": GuiKeyboard_hide(3) ED_keyMacroFast(["Backspace","RButton"],30) return ;-------------------------- this line runs when the button with "xbodies" xid is pressed. It sends the press of "Backspace", and then "RButton", in sequence. ;-------------------------- ;panel 1 case "panel1": GuiKeyboard_hide(3) ED_KeyMod("","1",50) return ;-------------------------- This line is for the button with xid="panel1". It presses the key "1" with 50 milisecs delay. Note: adjusting the in-game control buttons with the script actions is needed for the script to work properly, so make sure your keyboard buttons match. # # Customizing script quick access The file "xpress_macros.txt" controls the access to the script. The virtual keyboard is currently assigned to show/hide on the press of "XButton1" key. That's the 4th mouse button, for gaming mouses. But you can change it to anything else. Just check the keyboard/mouse codes online: https://www.autohotkey.com/docs/KeyList.htm # # Keys used from Elite Dangerous You can change them to your own in the file "xpress_actions.txt" Command Key bind ------------------- ------------------ engine to 100 Numpad4 engine to 75 Numpad3 engine to 50 Numpad2 engine to 25 Numpad1 engine to 0 Numpad0 engine to -25 Numpad5 engine to -50 Numpad6 engine to -75 Numpad7 engine to -100 Numpad8 pips to shields left pips to engine up pips to guns right pip reset down panel 1 - nav 1 panel 2 - coms 2 panel 3 - interface 3 panel 4 - systems 4 change mode \ FSSS Ctrl+s Detailed body scan Right Mouse Button/Backspace hardpoints h landing gear l cargo hatch home lights NumpadMult night mode NumpadDiv Silent Mode NumpadSub cycle weapons Tab chaff c Heat sink v high jump j low jump k set nav point NumapdAdd galaxy map m system map n pilot view LCtrl 3rd cam view RCtrl free camera Numpad0 gui hide/show LCtrl Snapshot F10