From f8ac63860b83d5941a49c0a0522d07b460ef420d Mon Sep 17 00:00:00 2001 From: Kode-Z <162533196+Kode-Z@users.noreply.github.com> Date: Sat, 30 Mar 2024 11:22:56 +0000 Subject: [PATCH] Added controls for DOOM II (Classic), and amended Doom 1993 & Perfect Dark. (#327) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Update perfect-dark.json Added stick functionality to the left bumper button, as this button opens up the weapon wheel in game. * Update doom-1993.json Added the “X” button to the top right, as this is required for toggling add ons in the main menu. * Create 2078926688.json Added controls for DOOM II (Classic) * Create doom-II-classic.json Added touch controls for DOOM II (Classic) * Rename doom-II-classic.json to doom-ii-classic.json --- touch-layouts/2078926688.json | 7 + touch-layouts/layouts/doom-1993.json | 4 + touch-layouts/layouts/doom-ii-classic.json | 157 +++++++++++++++++++++ touch-layouts/layouts/perfect-dark.json | 33 ++++- 4 files changed, 199 insertions(+), 2 deletions(-) create mode 100644 touch-layouts/2078926688.json create mode 100644 touch-layouts/layouts/doom-ii-classic.json diff --git a/touch-layouts/2078926688.json b/touch-layouts/2078926688.json new file mode 100644 index 0000000..97d2afc --- /dev/null +++ b/touch-layouts/2078926688.json @@ -0,0 +1,7 @@ +{ + "name": "DOOM II (Classic)", + "default_layout": "custom", + "layouts": [ + "doom-ii-classic" + ] +} diff --git a/touch-layouts/layouts/doom-1993.json b/touch-layouts/layouts/doom-1993.json index d43ed74..42230e9 100644 --- a/touch-layouts/layouts/doom-1993.json +++ b/touch-layouts/layouts/doom-1993.json @@ -134,6 +134,10 @@ { "type": "button", "action": "gamepadB" + }, + { + "type": "button", + "action": "gamepadX" } ] }, diff --git a/touch-layouts/layouts/doom-ii-classic.json b/touch-layouts/layouts/doom-ii-classic.json new file mode 100644 index 0000000..359162d --- /dev/null +++ b/touch-layouts/layouts/doom-ii-classic.json @@ -0,0 +1,157 @@ +{ + "schema_version": 1, + "layouts": { + "custom": { + "name": "custom", + "content": { + "left": { + "inner": [ + { + "type": "joystick", + "expand": true, + "axis": { + "input": "axisXY", + "output": "leftJoystick", + "deadzone": { + "threshold": 0.05, + "radial": true + } + } + } + ], + "outer": [ + { + "type": "button", + "action": "rightBumper" + }, + null, + [ + { + "type": "directionalPad", + "interaction": { + "activationType": "exclusive" + }, + "scale": 1.2 + } + ], + null, + null, + null, + { + "type": "button", + "action": "leftBumper" + } + ] + }, + "right": { + "inner": [ + { + "type": "touchpad", + "axis": { + "input": "axisXY", + "output": "rightJoystick", + "sensitivity": 2.5 + }, + "styles": { + "default": { + "faceImage": { + "type": "icon", + "value": "aim" + } + } + } + } + ], + "outer": [ + null, + null, + { + "type": "button", + "action": "leftTrigger", + "toggle": true, + "styles": { + "default": { + "faceImage": { + "type": "icon", + "value": "walk" + } + } + } + }, + null, + { + "type": "button", + "action": "gamepadA", + "styles": { + "default": { + "faceImage": { + "type": "icon", + "value": "interact" + } + } + } + }, + [ + { + "type": "touchpad", + "axis": { + "input": "axisXY", + "output": "rightJoystick", + "sensitivity": 2.5 + }, + "action": "rightTrigger", + "renderAsButton": true, + "styles": { + "default": { + "faceImage": { + "type": "icon", + "value": "fire" + } + } + } + } + ] + ] + }, + "upper": { + "right": [ + { + "type": "button", + "action": "menu" + }, + { + "type": "button", + "action": "gamepadY", + "styles": { + "default": { + "faceImage": { + "type": "icon", + "value": "map" + } + } + } + }, + { + "type": "button", + "action": "gamepadB" + }, + { + "type": "button", + "action": "gamepadX" + } + ] + }, + "sensors": [ + { + "type": "gyroscope", + "axis": { + "input": "axisXY", + "output": "rightJoystick", + "sensitivity": 1 + } + } + ] + } + } + } +} diff --git a/touch-layouts/layouts/perfect-dark.json b/touch-layouts/layouts/perfect-dark.json index c97927a..412fced 100644 --- a/touch-layouts/layouts/perfect-dark.json +++ b/touch-layouts/layouts/perfect-dark.json @@ -53,8 +53,37 @@ "action": "rightBumper" }, { - "type": "button", - "action": "leftBumper" + "type": "joystick", + "axis": { + "input": "axisXY", + "output": "rightJoystick", + "deadzone": { + "threshold": 0, + "radial": true + } + }, + "action": "leftBumper", + "styles": { + "default": { + "outline": { + "indicator": { + "type": "color", + "value": "#ffffff" + }, + "stroke": { + "type": "solid", + "color": "#ffffff" + }, + "opacity": 0.5 + }, + "knob": { + "faceImage": { + "type": "icon", + "value": "leftBumper" + } + } + } + } }, null, [