Difference between revisions of "Pikmin key parameters"
Minty Meeo (talk | contribs) m (I forgot one aesthetic detail) |
m |
||
Line 1: | Line 1: | ||
− | <code>key.bin</code> is a general parameter file located in <code> | + | <code>key.bin</code> is a general parameter file located in <code>/dataDir/parms/</code>. It is responsible for the mapping of inputs from controller port 1 to actions performable by Olimar. |
==Contents== | ==Contents== | ||
Line 5: | Line 5: | ||
! Offset || Descriptor || Value || Purpose | ! Offset || Descriptor || Value || Purpose | ||
|- | |- | ||
− | | <code>0x00</code> || {{tt|投げ |Throwing }} || <code>0x00001000</code> || Throw | + | | <code>0x00</code> || {{tt|投げ |Throwing }} || <code>0x00001000</code> || Throw Pikmin / Punch |
|- | |- | ||
| <code>0x04</code> || {{tt|集合カーソル |Collective cursor }} || <code>0x00002000</code> || Whistle | | <code>0x04</code> || {{tt|集合カーソル |Collective cursor }} || <code>0x00002000</code> || Whistle | ||
|- | |- | ||
− | | <code>0x08</code> || {{tt|抜き | | + | | <code>0x08</code> || {{tt|抜き |Without }} || <code>0x00001000</code> || Flavor text (ship parts and checking ship status) |
|- | |- | ||
− | | <code>0x0C</code> || {{tt|アタック | | + | | <code>0x0C</code> || {{tt|アタック |Attack }} || <code>0x00001000</code> || {{unsure|Deprecated punch trigger?}} |
|- | |- | ||
− | | <code>0x10</code> || {{tt|解散 |Dissolution }} || <code>0x00004000</code> || Dismiss | + | | <code>0x10</code> || {{tt|解散 |Dissolution }} || <code>0x00004000</code> || Dismiss Pikmin |
|- | |- | ||
− | | <code>0x14</code> || {{tt|メニュー | | + | | <code>0x14</code> || {{tt|メニュー |Menu }} || <code>0x00008000</code> || {{unsure|Deprecated radar screen trigger?}} |
|- | |- | ||
|} | |} | ||
− | |||
==Values for detecting controller input== | ==Values for detecting controller input== | ||
Line 57: | Line 56: | ||
| <code>0x00004000</code> || '''X''' button | | <code>0x00004000</code> || '''X''' button | ||
|- | |- | ||
− | | <code>0x00008000</code> || {{tt|'''Y''' button| | + | | <code>0x00008000</code> || {{tt|'''Y''' button|Difficult to use in practice}} |
|- | |- | ||
| <code>0x00010000</code> || '''Z''' trigger | | <code>0x00010000</code> || '''Z''' trigger | ||
Line 92: | Line 91: | ||
|- | |- | ||
|} | |} | ||
− | |||
− | |||
==Notes== | ==Notes== | ||
− | Adding hexadecimal values together causes multiple buttons to be usable for a single action (i.e. <code>0x00016000</code> will make the B button, X button, and Z trigger all cause the same action). This suggests that the translation of controller input to in-game actions is done with [ | + | Adding hexadecimal values together causes multiple buttons to be usable for a single action (i.e. <code>0x00016000</code> will make the B button, X button, and Z trigger all cause the same action). This suggests that the translation of controller input to in-game actions is done with [[wikipedia:Mask (computing)|bitwise operator masking]]. |
The values in the table above match the [[Pikmin_memory_addresses#Misc|values found at <code>0x80495d18</code>]] when controller input is given. | The values in the table above match the [[Pikmin_memory_addresses#Misc|values found at <code>0x80495d18</code>]] when controller input is given. | ||
− | Parameter <code>0x08</code> only functions when set to the same button as parameter <code>0x00</code> | + | Parameter <code>0x08</code> only functions when set to the same button as parameter <code>0x00</code>. |
This file does not control: | This file does not control: | ||
Line 111: | Line 108: | ||
* Pausing the game (Start button) | * Pausing the game (Start button) | ||
* Laying down (D-Pad) | * Laying down (D-Pad) | ||
− | |||
[[Category:Pikmin]] | [[Category:Pikmin]] | ||
[[Category:Parameters]] | [[Category:Parameters]] | ||
{{Credits|Minty_Meeo}} | {{Credits|Minty_Meeo}} |
Revision as of 14:11, 14 July 2018
key.bin
is a general parameter file located in /dataDir/parms/
. It is responsible for the mapping of inputs from controller port 1 to actions performable by Olimar.
Contents
Offset | Descriptor | Value | Purpose |
---|---|---|---|
0x00 |
投げ | 0x00001000 |
Throw Pikmin / Punch |
0x04 |
集合カーソル | 0x00002000 |
Whistle |
0x08 |
抜き | 0x00001000 |
Flavor text (ship parts and checking ship status) |
0x0C |
アタック | 0x00001000 |
Deprecated punch trigger?[unsure] |
0x10 |
解散 | 0x00004000 |
Dismiss Pikmin |
0x14 |
メニュー | 0x00008000 |
Deprecated radar screen trigger?[unsure] |
Values for detecting controller input
The following are the values used to detect of individual controller inputs. Boxes left empty are invalid controller inputs
Value | Controller Input |
---|---|
0x00000000 |
Nothing |
0x00000001 |
C-Stick left |
0x00000002 |
C-Stick right |
0x00000004 |
C-Stick up |
0x00000008 |
C-stick down |
0x00000010 |
|
0x00000020 |
|
0x00000040 |
|
0x00000080 |
|
0x00000100 |
D-Pad left |
0x00000200 |
D-Pad right |
0x00000400 |
D-Pad up |
0x00000800 |
D-Pad down |
0x00001000 |
A button |
0x00002000 |
B button |
0x00004000 |
X button |
0x00008000 |
Y button |
0x00010000 |
Z trigger |
0x00020000 |
L trigger |
0x00040000 |
R trigger |
0x00080000 |
Control Stick up |
0x00100000 |
Control Stick right |
0x00200000 |
Control Stick down |
0x00400000 |
Control Stick left |
0x00800000 |
|
0x01000000 |
START button |
0x02000000 |
|
0x04000000 |
|
0x08000000 |
|
0x10000000 |
|
0x20000000 |
|
0x40000000 |
|
0x80000000 |
Notes
Adding hexadecimal values together causes multiple buttons to be usable for a single action (i.e. 0x00016000
will make the B button, X button, and Z trigger all cause the same action). This suggests that the translation of controller input to in-game actions is done with bitwise operator masking.
The values in the table above match the values found at 0x80495d18
when controller input is given.
Parameter 0x08
only functions when set to the same button as parameter 0x00
.
This file does not control:
- Any menu navigation whatsoever
- The radar screen (Y Button)
- Moving Olimar (Control Stick)
- Swarming pikmin (C-Stick)
- Camera controls (L, R, and Z triggers)
- Interacting with Onion nor SS Dolphin spotlights (A button)
- Pausing the game (Start button)
- Laying down (D-Pad)