Jump to content

HouseFox

Members
  • Posts

    4
  • Joined

  • Last visited

Reputation

20 Excellent

Contact Methods

  • Skype
    HouseFoxx
  1. Thank you very much for your support! Amazing how many views this has gotten in one day! There are a few threads floating around about configuring other more standard controllers to work with KSP, but I really found nothing for my DS4, so I decided to assist others making the same endeavor because the DS4 really is a different beast than most controllers in terms of configuration. Hopefully I can keep this thread updated with changes I make because to my standards, this is still an unfinished project. On that note, I do need help with a few things I can't quite wrap my head around, such as: -I would like to find a way to make multi-button bindings in KSP to improve controller functionality. -Having the camera control (which is absent in the current setup) to be the default use for the track pad would be nice, preferably with a method to switch back to cursor mode easily for those fiddly UI buttons (especially in modded KSP). -I tried for a long time to get the throttle controls on the triggers, but KSP likes triggers to act like buttons for now, as well as the problem of having throttle up and throttle down being on the same axis.
  2. Though this may not technically be my first post- I've been a long-time lurker and even longer time player (started in 0.8 I think). Mission objectives are as follows: 1. make funnies 2. help the Kerbal kind (of the forums at least- the others tend to have uncontrollable PTSD which I cannot confirm nor deny the cause of) 3. entertain people with my various wastes of time in KSP Btw, if you happen to have a spare Dualshock 4 controller and a usb cable lying around and want to use it for KSP, I may be able to help you provided I have the spare time.
  3. Hello KSP forums! Today I bring you about 6 hours of work- that is- the configuration files for a nearly-seamless Kerbal Space Program using a Dualshock 4 (PS4) Controller! YAY! v1.0 I guess.. (please read the whole thing BEFORE doing anything) ~~Introduction~~ Configuring a Dualshock 4 for use in a PC game that only just barely supports controllers is a real pain, so I've taken the liberty of carefully crafting the InputMapper profile (KSP.xml) as well as the KSP settings (settings.cfg) to take away the guesswork on establishing a baseline setup for using the DS4 in KSP with the InputMapper program. The benefits of using a DS4 for KSP should be clear- using the trackpad as a mouse and the control sticks for more precise control of your craft is just great! Please feel absolutly free to post your modifications to either file, I'm posting this code under creative commons open-source style- hack away! ~~Installation~~ [mind the directions above the sections of code to get the required files] 1. Buy, install, and run Kerbal Space Program (32-bit version) at least once. 2. Acquire a Dualshock 4 controller along with the appropriate USB cable to allow PC connection. 3. Download, install, and run InputMapper (link below) at least once. 4. Make sure your DS4 works on your setup. 5. Navigate to C:\Users\~yourprofile~\AppData\Roaming\InputMapper\Profiles ("~yourprofile~" will be your windows profile name). 6. Drag and drop KSP.xml from the InputMapper Profile folder into the aforementioned Profiles folder of your InputMapper directory. 7. Navigate to your KSP install root directory. 8. Replace the stock settings.cfg file in your KSP directory with the settings.cfg file in the KSP Controls folder. 9. Plug in your DS4. 10. Run InputMapper and switch the profile to KSP. (easy enough to set InputMapper to switch to the KSP profile when it's launched) 11. Run KSP. (I have the graphical settings maxed @ 1920x1080 so before doing so you may need to run Launcher.exe from the KSP install folder and tweak the graphical settings) 12. Check if everything works fine, then- 13. Go directly to space! (or stay in the atmosphere, both are fine) ~~Notes On The Controls~~ - I edited a hidden control that allows you to switch the UI Mode between Docking and Staging using the left and right analog stick buttons. - Messing with the axis controls in the settings menu of KSP is not recommended aside from sensitivity changes (IE DON'T CHANGE THE BINDINGS FROM THE MENU IN GAME), messing with the sensitivity is fine though. - If you MUST change the axis bindings, edit the settings.cfg file in notepad to make sure the modeMask lines don't change, as that provides isolation between your Docking and Staging control modes. - Feel free to change any of the primary button controls, as I only used the secondary bindings for the controller, the primaries are the default KSP settings with one tweak so that me the camera controls don't also control your camera. - Editing the InputMapper profile is perfectly fine if you don't touch the bindings on the first tab. - I would recommend backing up these files first if you are going to make any changes. - Although this is a very comprehensive configuration, I would still recommend that you use a mouse+keyboard for menus and ship assembly, and you'll have to use at least a mouse for camera controls. ~~Summary of Controls~~ Left Trigger - Toggle RCS Right Trigger - Toggle SAS Left Shoulder Button - Hold SAS Right Shoulder Button - Stage D-pad Up - Linear Throttle Increase D-pad Down - Linear Throttle Decrease and apple Brakes D-pad Left - Throttle Full Cut D-pad Right - Throttle Maximum Share Button - IVA Switch Trackpad Movement - Curcor Movement Trackpad Tap - Left Mouse Button Trackpad Scroll - Scroll Wheel (Swipe up or down with 2 fingers) Trackpad Button - Orbital View Switch Options Button - Menu Triangle Button - Time Warp Faster Circle Button - Landing Gear X Button - Camera Mode Switch Square Button - Time Warp Slower Right Analog Up - [staging Mode]- Pitch Down [Docking Mode]- Translate Down Right Analog Down - [staging Mode]- Pitch Up [Docking Mode]- Translate Up Right Analog Left - [staging Mode]- Yaw Left [Docking Mode]- Translate Left Right Analog Right - [staging Mode]- Yaw Right [Docking Mode]- Trandlate Right Right Analog Button - Switch To Staging Mode Playstation Button - Toggle Lights Left Analog Up - [Docking Mode]- Translate Forward Left Analog Down - [Docking Mode]- Translate Backward Left Analog Left - [staging Mode]- Roll Left Left Analog Right - [staging Mode]- Roll Right Left Analog Button - Switch to Docking Mode I don't even remember the specific controls for kerbals, but the D-pad moves them and I loosely used modified translation controls for the EVA pack among some other miscellaneous controls. On that note, be careful EVA-ing Kerbals because I know the board/ let go controls overlap the time warp controls, but it's survivable. ~~Important Links~~ - InputMapper - https://inputmapper.com/ - Kerbal Space Program - https://kerbalspaceprogram.com/en/ - Xbox 360 driver for w8.1 - http://support.xbox.com/en-US/xbox-360/accessories/connect-wired-controller-computer (needed for InputMapper to correctly emulate the Xbox 360 controller in windows) settings.cfg in plaintext (just copy+paste into a notepad document, and then rename it "settings.cfg") // KSP Game Settings SETTINGS_FILE_VERSION = 1.0.0 TUTORIALS_EDITOR_ENABLE = False TUTORIALS_FLIGHT_ENABLE = False VAB_USE_CLICK_PLACE = True VAB_USE_ANGLE_SNAP = False VAB_ANGLE_SNAP_INCLUDE_VERTICAL = False VAB_CAMERA_ORBIT_SENS = 0.04 VAB_CAMERA_ZOOM_SENS = 0.1 FLT_CAMERA_ORBIT_SENS = 0.04 FLT_CAMERA_ZOOM_SENS = 0.5 FLT_CAMERA_WOBBLE = 0.1 FLT_CAMERA_CHASE_SHARPNESS = 1.5 FLT_CAMERA_CHASE_USEVELOCITYVECTOR = True FLT_VESSEL_LABELS = True SPACENAV_CAMERA_SENS_ROT = 30 SPACENAV_CAMERA_SENS_LIN = 20 SPACENAV_CAMERA_SHARPNESS_LIN = 8 SPACENAV_CAMERA_SHARPNESS_ROT = 10 CAMERA_FX_EXTERNAL = 0.8137396 CAMERA_FX_INTERNAL = 1 SIMULATE_IN_BACKGROUND = True PHYSICS_FRAME_DT_LIMIT = 0.04 MAX_VESSELS_BUDGET = -1 CONIC_PATCH_DRAW_MODE = 3 CONIC_PATCH_LIMIT = 3 SHOW_PWARP_WARNING = False EVA_ROTATE_ON_MOVE = True SPACENAV_FLIGHT_SENS_ROT = 5 SPACENAV_FLIGHT_SENS_LIN = 1 KERBIN_TIME = True CALL_HOME = False DONT_SEND_IP = False SEND_PROGRESS_DATA = True CHECK_FOR_UPDATES = True VERBOSE_DEBUG_LOG = False SHOW_CONSOLE_ON_ERROR = False AUTOSAVE_INTERVAL = 300 AUTOSAVE_SHORT_INTERVAL = 30 SHOW_SPACE_CENTER_CREW = True UI_SIZE = 768 UI_OPACITY = 1 SHIP_VOLUME = 0.5 AMBIENCE_VOLUME = 0.3768498 MUSIC_VOLUME = 0 UI_VOLUME = 0.5 VOICE_VOLUME = 0.5 SOUND_NORMALIZER_ENABLED = True SOUND_NORMALIZER_THRESHOLD = 1 SOUND_NORMALIZER_RESPONSIVENESS = 16 SOUND_NORMALIZER_SKIPSAMPLES = 0 SCREEN_RESOLUTION_WIDTH = 1920 SCREEN_RESOLUTION_HEIGHT = 1080 FULLSCREEN = True QUALITY_PRESET = 5 ANTI_ALIASING = 8 TEXTURE_QUALITY = 0 SYNC_VBL = 0 LIGHT_QUALITY = 64 SHADOWS_QUALITY = 64 FRAMERATE_LIMIT = 60 FALLBACK_PART_SHADERS = False PLANET_FORCE_SHADER_MODEL_2_0 = False PLANET_SCATTER = True PLANET_SCATTER_FACTOR = 1 AERO_FX_QUALITY = 3 SURFACE_FX = True EDGE_HIGHLIGHTING_PPFX = True SCREENSHOT_SUPERSIZE = 0 INPUT_KEYBOARD_SENSIVITITY = 2 dontShowLauncher = False TRACKIR_ENABLED = False INPUT_DEVICES { Wireless Controller = 1 Controller (XBOX 360 For. = 0 } PITCH_DOWN { primary = W secondary = None group = 0 modeMask = 5 modeMaskSec = 7 } PITCH_UP { primary = S secondary = None group = 0 modeMask = 5 modeMaskSec = 7 } YAW_LEFT { primary = A secondary = None group = 0 modeMask = 5 modeMaskSec = -1 } YAW_RIGHT { primary = D secondary = None group = 0 modeMask = 5 modeMaskSec = -1 } ROLL_LEFT { primary = Q secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } ROLL_RIGHT { primary = E secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } THROTTLE_UP { primary = LeftShift secondary = UpArrow group = 0 modeMask = 1 modeMaskSec = 7 } THROTTLE_DOWN { primary = LeftControl secondary = DownArrow group = 0 modeMask = 1 modeMaskSec = 7 } SAS_HOLD { primary = F secondary = Joystick2Button4 group = 0 modeMask = -1 modeMaskSec = 7 } SAS_TOGGLE { primary = T secondary = Joystick2Button7 group = 0 modeMask = -1 modeMaskSec = 7 } LAUNCH_STAGES { primary = Space secondary = Joystick2Button5 group = 0 modeMask = 1 modeMaskSec = 7 } Docking_toggleRotLin { primary = Space secondary = None group = 0 modeMask = 6 modeMaskSec = 7 } CAMERA_MODE { primary = C secondary = Joystick2Button8 group = 0 modeMask = -1 modeMaskSec = -1 } CAMERA_NEXT { primary = V secondary = Joystick2Button1 group = 0 modeMask = -1 modeMaskSec = -1 } PAUSE { primary = Escape secondary = Joystick2Button9 group = 0 modeMask = -1 modeMaskSec = -1 } PRECISION_CTRL { primary = CapsLock secondary = None group = 0 modeMask = -1 modeMaskSec = 7 } ZOOM_IN { primary = KeypadPlus secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } ZOOM_OUT { primary = KeypadMinus secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } SCROLL_VIEW_UP { primary = PageUp secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } SCROLL_VIEW_DOWN { primary = PageDown secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } SCROLL_ICONS_UP { primary = Home secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } SCROLL_ICONS_DOWN { primary = End secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CAMERA_ORBIT_UP { primary = None secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CAMERA_ORBIT_DOWN { primary = None secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CAMERA_ORBIT_LEFT { primary = None secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CAMERA_ORBIT_RIGHT { primary = None secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CAMERA_RESET { primary = Backspace secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } TIME_WARP_INCREASE { primary = Period secondary = Joystick2Button3 group = 0 modeMask = -1 modeMaskSec = -1 } TIME_WARP_DECREASE { primary = Comma secondary = Joystick2Button0 group = 0 modeMask = -1 modeMaskSec = -1 } MAP_VIEW_TOGGLE { primary = M secondary = Joystick2Button13 group = 0 modeMask = -1 modeMaskSec = -1 } UIMODE_STAGING { primary = Joystick2Button11 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } UIMODE_DOCKING { primary = Joystick2Button10 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } TRANSLATE_DOWN { primary = I secondary = None group = 0 modeMask = -1 modeMaskSec = 2 } TRANSLATE_UP { primary = K secondary = None group = 0 modeMask = -1 modeMaskSec = 2 } TRANSLATE_LEFT { primary = J secondary = None group = 0 modeMask = -1 modeMaskSec = 2 } TRANSLATE_RIGHT { primary = L secondary = None group = 0 modeMask = -1 modeMaskSec = 2 } TRANSLATE_FWD { primary = H secondary = None group = 0 modeMask = -1 modeMaskSec = 6 } TRANSLATE_BACK { primary = N secondary = None group = 0 modeMask = -1 modeMaskSec = 6 } RCS_TOGGLE { primary = R secondary = Joystick2Button6 group = 0 modeMask = -1 modeMaskSec = 7 } FOCUS_NEXT_VESSEL { primary = RightBracket secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } FOCUS_PREV_VESSEL { primary = LeftBracket secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } TOGGLE_UI { primary = F2 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } TOGGLE_STATUS_SCREEN { primary = F3 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } TAKE_SCREENSHOT { primary = F1 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } TOGGLE_LABELS { primary = F4 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } TOGGLE_TEMP_GAUGES { primary = F10 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } TOGGLE_TEMP_OVERLAY { primary = F11 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } TOGGLE_FLIGHT_FORCES { primary = F12 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } QUICKSAVE { primary = F5 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } QUICKLOAD { primary = F9 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } THROTTLE_CUTOFF { primary = X secondary = LeftArrow group = 0 modeMask = -1 modeMaskSec = 7 } THROTTLE_FULL { primary = Z secondary = RightArrow group = 0 modeMask = -1 modeMaskSec = 7 } LANDING_GEAR { primary = G secondary = Joystick2Button2 group = 0 modeMask = -1 modeMaskSec = 7 } HEADLIGHT_TOGGLE { primary = U secondary = Joystick2Button12 group = 0 modeMask = -1 modeMaskSec = 7 } BRAKES { primary = B secondary = DownArrow group = 0 modeMask = -1 modeMaskSec = 1 } TOGGLE_SPACENAV_FLIGHT_CONTROL { primary = ScrollLock secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } TOGGLE_SPACENAV_ROLL_LOCK { primary = None secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } WHEEL_STEER_LEFT { primary = A secondary = None group = 0 modeMask = 5 modeMaskSec = -1 } WHEEL_STEER_RIGHT { primary = D secondary = None group = 0 modeMask = 5 modeMaskSec = -1 } WHEEL_THROTTLE_DOWN { primary = S secondary = None group = 0 modeMask = 5 modeMaskSec = -1 } WHEEL_THROTTLE_UP { primary = W secondary = None group = 0 modeMask = 5 modeMaskSec = -1 } EVA_forward { primary = W secondary = UpArrow group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_back { primary = S secondary = DownArrow group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_left { primary = A secondary = Joystick2Button4 group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_right { primary = D secondary = Joystick2Button5 group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_yaw_left { primary = Q secondary = LeftArrow group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_yaw_right { primary = E secondary = RightArrow group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_Pack_forward { primary = W secondary = UpArrow group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_Pack_back { primary = S secondary = DownArrow group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_Pack_left { primary = A secondary = None group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_Pack_right { primary = D secondary = None group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_Pack_up { primary = LeftShift secondary = None group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_Pack_down { primary = LeftControl secondary = None group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_Jump { primary = Space secondary = Joystick2Button3 group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_Run { primary = LeftShift secondary = Joystick2Button2 group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_ToggleMovementMode { primary = LeftAlt secondary = Joystick2Button10 group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_TogglePack { primary = R secondary = Joystick2Button11 group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_Use { primary = F secondary = Joystick2Button1 group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_Board { primary = B secondary = Joystick2Button0 group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_Orient { primary = Space secondary = Joystick2Button8 group = 268435456 modeMask = -1 modeMaskSec = -1 } EVA_Lights { primary = L secondary = Joystick2Button12 group = 268435456 modeMask = -1 modeMaskSec = -1 } Editor_pitchUp { primary = S secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_pitchDown { primary = W secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_yawLeft { primary = A secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_yawRight { primary = D secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_rollLeft { primary = Q secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_rollRight { primary = E secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_resetRotation { primary = Space secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_modePlace { primary = Alpha1 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_modeOffset { primary = Alpha2 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_modeRotate { primary = Alpha3 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_modeRoot { primary = Alpha4 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_coordSystem { primary = F secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_toggleSymMethod { primary = R secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_toggleSymMode { primary = X secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_toggleAngleSnap { primary = C secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } Editor_fineTweak { primary = LeftShift secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } AXIS_PITCH { PRIMARY { name = Controller (XBOX 360 For. axis = 4 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 1 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 1 } } AXIS_ROLL { PRIMARY { name = Controller (XBOX 360 For. axis = 0 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 1 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 1 } } AXIS_YAW { PRIMARY { name = Controller (XBOX 360 For. axis = 3 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 1 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 1 } } AXIS_THROTTLE { PRIMARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 7 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 7 } } AXIS_THROTTLE_INC { PRIMARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 7 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 7 } } AXIS_CAMERA_HDG { PRIMARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } } AXIS_CAMERA_PITCH { PRIMARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } } AXIS_TRANSLATE_X { PRIMARY { name = Controller (XBOX 360 For. axis = 3 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 2 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 2 } } AXIS_TRANSLATE_Y { PRIMARY { name = Controller (XBOX 360 For. axis = 4 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 2 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 2 } } AXIS_TRANSLATE_Z { PRIMARY { name = Controller (XBOX 360 For. axis = 1 inv = True sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 2 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 2 } } AXIS_WHEEL_STEER { PRIMARY { name = Controller (XBOX 360 For. axis = 3 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 2 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } } AXIS_WHEEL_THROTTLE { PRIMARY { name = Controller (XBOX 360 For. axis = 1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = 2 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } } axis_EVA_translate_x { PRIMARY { name = Controller (XBOX 360 For. axis = 3 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } } axis_EVA_translate_y { PRIMARY { name = Controller (XBOX 360 For. axis = 4 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } } axis_EVA_translate_z { PRIMARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } } axis_EVA_pitch { PRIMARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } } axis_EVA_yaw { PRIMARY { name = Controller (XBOX 360 For. axis = 0 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } } axis_EVA_roll { PRIMARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } } AXIS_MOUSEWHEEL { PRIMARY { name = Mouse ScrollWheel axis = -1 inv = False sensitivity = 1 deadzone = 0 scale = 0.4002998 group = 0 modeMask = -1 } SECONDARY { name = None axis = -1 inv = False sensitivity = 1 deadzone = 0.05 scale = 1 group = 0 modeMask = -1 } } MODIFIER_KEY { primary = LeftAlt secondary = RightAlt group = 0 modeMask = -1 modeMaskSec = -1 } AbortActionGroup { primary = Backspace secondary = None group = 0 modeMask = -1 modeMaskSec = 7 } CustomActionGroup1 { primary = Alpha1 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CustomActionGroup2 { primary = Alpha2 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CustomActionGroup3 { primary = Alpha3 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CustomActionGroup4 { primary = Alpha4 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CustomActionGroup5 { primary = Alpha5 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CustomActionGroup6 { primary = Alpha6 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CustomActionGroup7 { primary = Alpha7 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CustomActionGroup8 { primary = Alpha8 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CustomActionGroup9 { primary = Alpha9 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } CustomActionGroup10 { primary = Alpha0 secondary = None group = 0 modeMask = -1 modeMaskSec = -1 } TRACKIR { activeFlight = True activeIVA = True activeEVA = True activeMap = True activeKSC = True activeTrackingStation = True activeEditors = True LinX { upperClamp = 1 lowerClamp = -1 factor = 0.0001 } LinY { upperClamp = 1 lowerClamp = -1 factor = 0.0001 } LinZ { upperClamp = 1 lowerClamp = -1 factor = 0.0001 } Pitch { upperClamp = 1 lowerClamp = -1 factor = 0.0001 } Yaw { upperClamp = 1 lowerClamp = -1 factor = 0.0001 } Roll { upperClamp = 1 lowerClamp = -1 factor = 0.0001 } } TERRAIN { preset = High version = 1.0.0 PRESET { name = Low PLANET { name = Kerbin minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = KerbinOcean minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Mun minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Minmus minDistance = 4 minSubdivision = 1 maxSubdivision = 5 } PLANET { name = Bop minDistance = 4 minSubdivision = 1 maxSubdivision = 5 } PLANET { name = Duna minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Eve minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = EveOcean minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Gilly minDistance = 4 minSubdivision = 1 maxSubdivision = 5 } PLANET { name = Ike minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Laythe minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = LaytheOcean minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Moho minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Tylo minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Vall minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Dres minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Pol minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Eeloo minDistance = 4 minSubdivision = 1 maxSubdivision = 6 } } PRESET { name = Default PLANET { name = Kerbin minDistance = 6 minSubdivision = 1 maxSubdivision = 9 } PLANET { name = KerbinOcean minDistance = 6 minSubdivision = 1 maxSubdivision = 7 } PLANET { name = Mun minDistance = 6 minSubdivision = 1 maxSubdivision = 8 } PLANET { name = Minmus minDistance = 6 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Bop minDistance = 6 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Duna minDistance = 6 minSubdivision = 1 maxSubdivision = 8 } PLANET { name = Eve minDistance = 6 minSubdivision = 1 maxSubdivision = 9 } PLANET { name = EveOcean minDistance = 6 minSubdivision = 1 maxSubdivision = 7 } PLANET { name = Gilly minDistance = 6 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Ike minDistance = 6 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Laythe minDistance = 6 minSubdivision = 1 maxSubdivision = 9 } PLANET { name = LaytheOcean minDistance = 6 minSubdivision = 1 maxSubdivision = 7 } PLANET { name = Moho minDistance = 6 minSubdivision = 1 maxSubdivision = 8 } PLANET { name = Tylo minDistance = 6 minSubdivision = 1 maxSubdivision = 8 } PLANET { name = Vall minDistance = 6 minSubdivision = 1 maxSubdivision = 8 } PLANET { name = Dres minDistance = 6 minSubdivision = 1 maxSubdivision = 8 } PLANET { name = Pol minDistance = 6 minSubdivision = 1 maxSubdivision = 8 } PLANET { name = Eeloo minDistance = 6 minSubdivision = 1 maxSubdivision = 8 } } PRESET { name = High PLANET { name = Kerbin minDistance = 8 minSubdivision = 1 maxSubdivision = 10 } PLANET { name = KerbinOcean minDistance = 8 minSubdivision = 1 maxSubdivision = 7 } PLANET { name = Mun minDistance = 8 minSubdivision = 1 maxSubdivision = 9 } PLANET { name = Minmus minDistance = 8 minSubdivision = 1 maxSubdivision = 7 } PLANET { name = Bop minDistance = 8 minSubdivision = 1 maxSubdivision = 6 } PLANET { name = Duna minDistance = 8 minSubdivision = 1 maxSubdivision = 9 } PLANET { name = Eve minDistance = 8 minSubdivision = 1 maxSubdivision = 10 } PLANET { name = EveOcean minDistance = 8 minSubdivision = 1 maxSubdivision = 7 } PLANET { name = Gilly minDistance = 8 minSubdivision = 1 maxSubdivision = 7 } PLANET { name = Ike minDistance = 8 minSubdivision = 1 maxSubdivision = 7 } PLANET { name = Laythe minDistance = 8 minSubdivision = 1 maxSubdivision = 10 } PLANET { name = LaytheOcean minDistance = 8 minSubdivision = 1 maxSubdivision = 7 } PLANET { name = Moho minDistance = 8 minSubdivision = 1 maxSubdivision = 9 } PLANET { name = Tylo minDistance = 8 minSubdivision = 1 maxSubdivision = 9 } PLANET { name = Vall minDistance = 8 minSubdivision = 1 maxSubdivision = 9 } PLANET { name = Dres minDistance = 8 minSubdivision = 1 maxSubdivision = 9 } PLANET { name = Pol minDistance = 8 minSubdivision = 1 maxSubdivision = 9 } PLANET { name = Eeloo minDistance = 8 minSubdivision = 1 maxSubdivision = 9 } } } InputMapper profile in plaintext, just copy it into a notepad document named "KSP.xml" and drop it in your appdata folder of InputMapper <Profile> <LightBar> <Discharging> <ColorA>{255,255,255}</ColorA> <ColorB>{59,59,59}</ColorB> <Mode>Battery</Mode> </Discharging> <Charging> <ColorA>{0,255,0}</ColorA> <ColorB>{0,131,0}</ColorB> <Mode>Battery</Mode> </Charging> <Charged> <ColorA>{0,255,0}</ColorA> <ColorB>{0,136,0}</ColorB> <Mode>Flash</Mode> </Charged> <Active>True</Active> </LightBar> <Mouse> <TouchpadEnabled>True</TouchpadEnabled> <ButtonForRightClick>True</ButtonForRightClick> <MovementSensitivity>39</MovementSensitivity> <ScrollSpeed>7</ScrollSpeed> <DoubleClickSpeed>59</DoubleClickSpeed> <SwipeSensitivity>0</SwipeSensitivity> </Mouse> <AxisTuning> <LeftStick> <Curve>0</Curve> <Deadzone>0</Deadzone> <Sensitivity>1</Sensitivity> <Offset>0</Offset> <DeadzoneType>Radial_Hard</DeadzoneType> </LeftStick> <RightStick> <Curve>0</Curve> <Deadzone>0</Deadzone> <Sensitivity>1</Sensitivity> <Offset>0</Offset> <DeadzoneType>Radial_Hard</DeadzoneType> </RightStick> <LeftTrigger> <Curve>0</Curve> <Deadzone>0</Deadzone> <Sensitivity>1</Sensitivity> </LeftTrigger> <RightTrigger> <Curve>0</Curve> <Deadzone>0</Deadzone> <Sensitivity>1</Sensitivity> </RightTrigger> <GyroX> <Reverse>False</Reverse> <Center>1</Center> <Sensitivity>1</Sensitivity> </GyroX> <GyroY> <Reverse>False</Reverse> <Center>1</Center> <Sensitivity>1</Sensitivity> </GyroY> <GyroZ> <Reverse>False</Reverse> <Center>1</Center> <Sensitivity>1</Sensitivity> </GyroZ> <AccelX> <Reverse>False</Reverse> <Sensitivity>1</Sensitivity> </AccelX> <AccelY> <Reverse>False</Reverse> <Sensitivity>1</Sensitivity> </AccelY> <AccelZ> <Reverse>False</Reverse> <Sensitivity>1</Sensitivity> </AccelZ> </AxisTuning> <General> <FlushHIDQueue>False</FlushHIDQueue> <IdleDisconnectTimout>0</IdleDisconnectTimout> <RumbleBoost>100</RumbleBoost> <MixRumble>True</MixRumble> <EnableXInputMapping>True</EnableXInputMapping> </General> <Mappings> <SixAxis> <GyroX>None</GyroX> <GyroY>None</GyroY> <GyroZ>None</GyroZ> <AccelX>None</AccelX> <AccelY>None</AccelY> <AccelZ>None</AccelZ> <JitterCompensation>90</JitterCompensation> </SixAxis> <Controls> <DpadUp ActionType="Keyboard" FunctionType="None">38</DpadUp> <DpadDown ActionType="Keyboard" FunctionType="None">40</DpadDown> <DpadLeft ActionType="Keyboard" FunctionType="None">37</DpadLeft> <DpadRight ActionType="Keyboard" FunctionType="None">39</DpadRight> </Controls> <Macros> </Macros> </Mappings> <ApplicationBindings> <Application>D:\Games\Steam\steamapps\common\Kerbal Space Program\KSP.exe</Application> </ApplicationBindings> </Profile> Enjoy! Sorry if this isn't exactly an Add-On, but I felt it belongs here.
×
×
  • Create New...