Difference between revisions of "Input Configurations"

From Shield Cat Wiki
Jump to navigation Jump to search
Line 107: Line 107:
 
Please note that ANY connected controller set up to receive vibration will vibrate. If you find this undesirable, you can either disable vibration on that controller, or simply disconnect it from your computer.
 
Please note that ANY connected controller set up to receive vibration will vibrate. If you find this undesirable, you can either disable vibration on that controller, or simply disconnect it from your computer.
  
Each controller configuration has its own section. They're like this:
+
Each controller configuration has its own section. This is an example of an XBOX Controller configuration, followed by a PS4 Controller configuration (on Windows)
 
   [none_XInput STANDARD GAMEPAD]
 
   [none_XInput STANDARD GAMEPAD]
 +
  gp_vibration_allowed="100"
 +
  gp_rstick_right="ability_wheel"
 +
  gp_rstick_left="ability_wheel"
 +
  gp_rstick_down="ability_wheel"
 +
  gp_rstick_up="ability_wheel"
 +
  gp_lstick_right="dir_right"
 +
  gp_lstick_left="dir_left"
 +
  gp_lstick_down="dir_down"
 +
  gp_lstick_up="dir_up"
 +
  gp_dpad_left="dir_left"
 +
  gp_dpad_bottom="dir_down"
 +
  gp_dpad_right="dir_right"
 +
  gp_dpad_up="dir_up"
 +
  gp_r3="not_mapped"
 +
  gp_l3="not_mapped"
 +
  gp_minus="map_screen"
 +
  gp_plus="pause"
 +
  gp_shoulder_r2="ability_bumper_l"
 +
  gp_shoulder_r1="ability_bumper_r"
 +
  gp_shoulder_l2="ability_bumper_r"
 +
  gp_shoulder_l1="ability_bumper_l"
 +
  gp_face_up="throw_toggle"
 +
  gp_face_left="attack_toggle"
 +
  gp_face_right="attack,cancel"
 
   gp_face_bottom="attack,ok,talk"
 
   gp_face_bottom="attack,ok,talk"
   ...
+
   [4c05cc09000000000000504944564944_Sony DualShock 4]
   ...
+
  gp_vibration_allowed="100"
   [7e050720000000000000504944564944_Wireless Gamepad]
+
  gp_rstick_right="ability_wheel"
   gp_b0="attack,ok,talk"
+
  gp_rstick_left="ability_wheel"
  ...
+
  gp_rstick_down="ability_wheel"
  ...
+
  gp_rstick_up="ability_wheel"
 +
  gp_lstick_right="dir_right"
 +
  gp_lstick_left="dir_left"
 +
  gp_lstick_down="dir_down"
 +
  gp_lstick_up="dir_up"
 +
  gp_dpad_left="dir_left"
 +
  gp_dpad_bottom="dir_down"
 +
  gp_dpad_right="dir_right"
 +
  gp_dpad_up="dir_up"
 +
  gp_r3="not_mapped"
 +
  gp_l3="not_mapped"
 +
  gp_minus="map_screen"
 +
  gp_plus="pause"
 +
  gp_shoulder_r2="ability_bumper_l"
 +
  gp_shoulder_r1="ability_bumper_r"
 +
  gp_shoulder_l2="ability_bumper_r"
 +
  gp_shoulder_l1="ability_bumper_l"
 +
  gp_face_up="throw_toggle"
 +
   gp_face_left="attack_toggle"
 +
   gp_face_right="attack,cancel"
 +
   gp_face_bottom="attack,ok,talk"
 +
 
 +
 
 +
The format for each controller section is <code>GUID_Description</code>. There will be a long number if it is a DirectInput device (which is the GUID) or it will say "none_" if there is no GUID.
  
The format is GUID_Description. There will be a long number if it is a DirectInput device (which is the GUID) or it will say "none_" if there is no GUID.
+
Remember that keys do not have do be in any specific order, they can just be in the sections below their controllers.
  
 
=== XInput Strings ===
 
=== XInput Strings ===

Revision as of 03:49, 11 September 2019

In Shield Cat, it is possible to set whatever kind of actions you like to whatever kind of buttons/keyboard controls you like. To facilitate this, there are two files: gamepads.ini, and keyboard.ini

It is important to note that, when changing these files, the entries can be in any order, and the game may rearrange the order randomly. Do not worry about making the ini files neat!

When assigning keys or gamepad values, the format goes as follows:

For keys: T="pause"
For Gamepads: gp_plus="pause"

The key or gamepad button will be on the left, while the action will be on the right in quotation marks. Below I have detailed all the game's actions, as well as all the possible keys and gamepad values you can use.

Game Actions

Everything you can do in the game is considered an "action." Such actions can be "attack" "move left" etc. They are detailed below.

Action String Description
attack Pressing makes Lance spin. Holding will cause Lance to prepare a throw/ability, and releasing will cause Lance to throw the item or use the ability.
pause Pauses the game
talk Talk to NPCs, investigate signs and other objects.
ok Accept button for menus, dialogue boxes, etc. When held, speeds up text in dialogue boxes.
cancel Cancel button for menus, dialogues, etc. Pressing this will skip ahead in a dialogue.
map_screen Opens up the map
throw_toggle Otherwise known as Auto Ability. Press once and Lance will prepare to use an ability. Pressing again will cause Lance to use the ability. If you press "attack" while throw_toggle is on, Lance will use the ability, and throw_toggle will be cancelled.
attack_toggle Otherwise known as Auto Spin. Press once and Lance will begin to spin, automatically picking up speed. Press again and Lance will begin to slow down. Pressing attack or throw_toggle will cancel out attack_toggle
dir_right

dir_up_right

dir_up

dir_up_left

dir_left

dir_down_left

dir_down

dir_down_right

Make Lance go in different directions, choose different items on menus, pick between options in question boxes, etc. (Please note that analog movement is not possible in this game.
ability_bumper_l Changes to the previous ability in your available abilities.
ability_bumper_r Changes to the next ability from your list of abilities.
ability_wheel Opens up a wheel-style menu with your available abilities on it. Using one of the directions will pick an ability.
ability1

ability2

ability3

ability4

ability5

ability6

ability7

ability8

Direct shortcuts to Lance's various abilities.

When assigning abilities to a key or gamepad button, you can combine them. For instance, if you want the "Q" key to make Lance attack, talk, and press ok, then you can do the following:

Q="attack,talk,ok"

IMPORTANT: You MUST put all action keywords in lower case, or the game will not read them!

gamepad.ini

The following details various strings and what they represent on a gamepad. Please note that there are different values for XInput and DirectInput devices, and using one set of values on the other may result in unpredictable results.

The game will attempt to automatically map actions to the controller, but some controllers will have to be mapped manually. The game will let you know if this is the case.

In additon to these, you can set the vibration like this:

gp_vibration_allowed=100

It is a value between 0 and 100, where 0 is no vibration, and 100 is full.

Please note that ANY connected controller set up to receive vibration will vibrate. If you find this undesirable, you can either disable vibration on that controller, or simply disconnect it from your computer.

Each controller configuration has its own section. This is an example of an XBOX Controller configuration, followed by a PS4 Controller configuration (on Windows)

 [none_XInput STANDARD GAMEPAD]
 gp_vibration_allowed="100"
 gp_rstick_right="ability_wheel"
 gp_rstick_left="ability_wheel"
 gp_rstick_down="ability_wheel"
 gp_rstick_up="ability_wheel"
 gp_lstick_right="dir_right"
 gp_lstick_left="dir_left"
 gp_lstick_down="dir_down"
 gp_lstick_up="dir_up"
 gp_dpad_left="dir_left"
 gp_dpad_bottom="dir_down"
 gp_dpad_right="dir_right"
 gp_dpad_up="dir_up"
 gp_r3="not_mapped"
 gp_l3="not_mapped"
 gp_minus="map_screen"
 gp_plus="pause"
 gp_shoulder_r2="ability_bumper_l"
 gp_shoulder_r1="ability_bumper_r"
 gp_shoulder_l2="ability_bumper_r"
 gp_shoulder_l1="ability_bumper_l"
 gp_face_up="throw_toggle"
 gp_face_left="attack_toggle"
 gp_face_right="attack,cancel"
 gp_face_bottom="attack,ok,talk"
 [4c05cc09000000000000504944564944_Sony DualShock 4]
 gp_vibration_allowed="100"
 gp_rstick_right="ability_wheel"
 gp_rstick_left="ability_wheel"
 gp_rstick_down="ability_wheel"
 gp_rstick_up="ability_wheel"
 gp_lstick_right="dir_right"
 gp_lstick_left="dir_left"
 gp_lstick_down="dir_down"
 gp_lstick_up="dir_up"
 gp_dpad_left="dir_left"
 gp_dpad_bottom="dir_down"
 gp_dpad_right="dir_right"
 gp_dpad_up="dir_up"
 gp_r3="not_mapped"
 gp_l3="not_mapped"
 gp_minus="map_screen"
 gp_plus="pause"
 gp_shoulder_r2="ability_bumper_l"
 gp_shoulder_r1="ability_bumper_r"
 gp_shoulder_l2="ability_bumper_r"
 gp_shoulder_l1="ability_bumper_l"
 gp_face_up="throw_toggle"
 gp_face_left="attack_toggle"
 gp_face_right="attack,cancel"
 gp_face_bottom="attack,ok,talk"


The format for each controller section is GUID_Description. There will be a long number if it is a DirectInput device (which is the GUID) or it will say "none_" if there is no GUID.

Remember that keys do not have do be in any specific order, they can just be in the sections below their controllers.

XInput Strings

The following is a table of strings to be used only with XINPUT devices, such as XBOX Controllers.

You can try to use them with DirectInput devices, but the results are unknown.

XInput String Description
gp_face_bottom The bottom button on the face of the controller. On XBOX Controllers, it is the Green A button. On PS,

it is the cross. On Switch, it is the B button.

gp_face_right The right button on the face of the controller. On XBOX Controllers, it is the Red B button. On PS, it is the circle. On Switch, it is the A button.
gp_face_left The left button on the face of the controller. On XBOX Controllers, it is the Blue X button. On PS, it is the square. On Switch, it is the Y button.

I'll format the rest of these later. _______________________________________________________________________________

 gp_face_top         - The top button on the face of the controller.
                       On XBOX Controllers, it is the Yellow Y button. On PS, 
                       it is the triangle. On Switch, it is the X button.

_______________________________________________________________________________

 gp_shoulder_l1      - The front left bumper button on the controller.
                       On XBOX Controllers, it is the LB button. On PS, it
                       is L1. On Switch, it is L.

_______________________________________________________________________________

 gp_shoulder_l2      - The rear left bumper trigger on the controller.
                       On XBOX Controllers, it is the LT button. On PS, it
                       is L2. On Switch, it is ZL.

_______________________________________________________________________________

 gp_shoulder_r1      - The front right bumper button on the controller.
                       On XBOX Controllers, it is the RB button. On PS, it
                       is R1. On Switch, it is R.

_______________________________________________________________________________

 gp_shoulder_r2      - The rear right bumper trigger on the controller.
                       On XBOX Controllers, it is the RT button. On PS, it
                       is R2. On Switch, it is ZR.

_______________________________________________________________________________

 gp_plus             - The start button on an XBOX controller, Options on the
                       PS4 controller, and Plus on the Switch controller.

_______________________________________________________________________________

 gp_minus            - The back button on an XBOX controller, Touchpad button 
                       on the PS4 controller, and Minus on Switch.

_______________________________________________________________________________

 gp_l3               - The button when you press the left analog stick.

_______________________________________________________________________________

 gp_r3               - The button when you press the right analog stick.

_______________________________________________________________________________

 gp_dpad_up          - The directional pad on the controller.
 gp_dpad_right
 gp_dpad_bottom
 gp_dpad_left      

_______________________________________________________________________________

 gp_lstick_up        - The left analog stick. Please note that the game only
 gp_lstick_down        supports 8 movement directions, so precise movement is
 gp_lstick_left        not possible with the analog stick.
 gp_lstick_right     

_______________________________________________________________________________

 gp_rstick_up        - The right analog stick.
 gp_rstick_down
 gp_rstick_left
 gp_rstick_right