Difference between revisions of "Pikmin boss parameters"
Minty Meeo (talk | contribs) (Finished Global Parameters Table.) |
Minty Meeo (talk | contribs) (Rewrote intro paragraph for new discoveries, added some known parameters to the table, and plugged my videos on boss parameter modification.) |
||
Line 3: | Line 3: | ||
{{todo|Write a proper intro paragraph lol.}} | {{todo|Write a proper intro paragraph lol.}} | ||
'''THIS PAGE IS A MASSIVE, MASSIVE WORK IN PROGRESS.''' Not only is the formatting incomplete, but the research I have done is minimal so far. | '''THIS PAGE IS A MASSIVE, MASSIVE WORK IN PROGRESS.''' Not only is the formatting incomplete, but the research I have done is minimal so far. | ||
− | |||
− | |||
− | |||
− | |||
− | + | Pikmin 1 stores its extremely lightly documented parameters for bosses in <code>root\dataDir\archives\bosses.arc</code>. In this '''ARC''' file is the entirety of the <code>root\dataDir\bosses</code> directory. Reference the files here for simplicity. | |
+ | |||
+ | In the final release, boss parameters are read from excerpts of <code>..\archives\bosses.arc</code>. In the [https://tcrf.net/Pikmin/Windows_Executable Windows x86 Debugger], boss parameters are read from <code>..\bosses\*\parms.bin</code> files. | ||
+ | |||
+ | Boss parameters in Pikmin 1 are fairly similar to those in Pikmin 2. Both have identical '''sXX''' / '''sXXX''' parameters, the '''bXX''', '''cXX''', '''dXX''', and '''pXX''' parameters in Pikmin 1 are likely analogues to the '''fpXX''' parameters in Pikmin 2, and the same goes for the '''iXX''' parameters in Pikmin 1 and the '''ipXX''' parameters in Pikmin 2. | ||
+ | |||
+ | Both parameter systems follow a global/local parameter system. In the case of the Pikmin 1 parameters, there are three sections, each terminated with <code>0xFFFFFFFF</code>. | ||
+ | |||
+ | '''Section 1)''' Contains the "global global" parameters. These parameters are all over the engine. Olimar also uses these parameters. They are the '''sXX''' parameters. | ||
+ | |||
+ | '''Section 2)''' Contains the global parameters. These parameters are shared among every boss, except for '''i10'''. They are the '''bXX''', '''cXX''', '''dXX''', '''pXX''', and '''iXX''' parameters. | ||
+ | |||
+ | '''Section 3)''' Contains the local parameters. These parameters are different for every boss, include lots of different labels, and are yet to be explored. Not every boss has this section | ||
+ | |||
+ | All values stored in the four bytes following a parameter label are I-EEE 754 Floating Point Numbers (32-bit floats). I currently have a theory that '''iXX''' are, in fact, integers, though have done no testing to back this up. | ||
+ | |||
+ | The best way to modify boss parameters currently is through the [https://tcrf.net/Pikmin/Windows_Executable Windows x86 Debugger], though it ''is'' possible to modify them for the final game as well. I have done so, [https://www.youtube.com/watch?v=iXJFQKinoBM and you can watch it here]. | ||
__TOC__ | __TOC__ | ||
Line 18: | Line 30: | ||
! Label || Description || core || king || kingback || kogane || kumo || mizu || nucleus || pom || slime || snake | ! Label || Description || core || king || kingback || kogane || kumo || mizu || nucleus || pom || slime || snake | ||
|- | |- | ||
− | | s00 || | + | | s00 || friction(not used) || 1.0 || 0.0 || 1.0 || 1.0 || 1.0 || 1.0 || 1.0 || 1.0 || 0.0 || 1.0 |
|- | |- | ||
− | | s01 || | + | | s01 || wallReflection || 0.5 || 1.0 || 0.5 || 0.5 || 0.5 || 0.5 || 0.5 || 0.5 || 0.0 || 0.5 |
|- | |- | ||
− | | s02 || | + | | s02 || faceDirAdjust || 0.0 || 0.0 || 0.0 || 0.0 || 0.0 || 0.0 || 0.0 || 0.0 || 0.0 || 0.0 |
|- | |- | ||
− | | s03 || | + | | s03 || Acceleration time || 1.0 || 0.1 || 1.0 || 0.1 || 1.0 || 1.0 || 1.0 || 1.0 || 0.1 || 0.3 |
|- | |- | ||
| s04 || Bounciness || 0.3 || 1.0 || 0.3 || 0.3 || 0.0 || 0.3 || 0.3 || 0.3 || 0.0 || 150.0 | | s04 || Bounciness || 0.3 || 1.0 || 0.3 || 0.3 || 0.0 || 0.3 || 0.3 || 0.3 || 0.0 || 150.0 | ||
Line 371: | Line 383: | ||
| i92 || Unknown || <code>00 00 00 00</code> || || | | i92 || Unknown || <code>00 00 00 00</code> || || | ||
|} | |} | ||
+ | |||
+ | ==Videos== | ||
+ | [https://www.youtube.com/watch?v=QseKQ7yslvU <nowiki>[HEX HACK] Beady Long Legs Out of Arena</nowiki>] | ||
+ | |||
+ | [https://www.youtube.com/watch?v=oXCZ-FXxsrg <nowiki>[HEX HACK] Emperor Bulblax Out of Arena</nowiki>] | ||
+ | |||
+ | [https://www.youtube.com/watch?v=TTItRTsr2Iw <nowiki>Pikmin 1 Bosses with 0 HP (Part 1)</nowiki>] | ||
+ | |||
+ | [https://www.youtube.com/watch?v=iXJFQKinoBM <nowiki>[HEX HACK] BLL OoA on Dolphin/console</nowiki>] | ||
[[Category:Pikmin]] | [[Category:Pikmin]] | ||
[[Category:Parameters]] | [[Category:Parameters]] |
Revision as of 16:36, 28 February 2018
To do: Finish researching Global Parameters.
To do: Create proper Local Parameter Tables.
To do: Write a proper intro paragraph lol.
THIS PAGE IS A MASSIVE, MASSIVE WORK IN PROGRESS. Not only is the formatting incomplete, but the research I have done is minimal so far.
Pikmin 1 stores its extremely lightly documented parameters for bosses in root\dataDir\archives\bosses.arc
. In this ARC file is the entirety of the root\dataDir\bosses
directory. Reference the files here for simplicity.
In the final release, boss parameters are read from excerpts of ..\archives\bosses.arc
. In the Windows x86 Debugger, boss parameters are read from ..\bosses\*\parms.bin
files.
Boss parameters in Pikmin 1 are fairly similar to those in Pikmin 2. Both have identical sXX / sXXX parameters, the bXX, cXX, dXX, and pXX parameters in Pikmin 1 are likely analogues to the fpXX parameters in Pikmin 2, and the same goes for the iXX parameters in Pikmin 1 and the ipXX parameters in Pikmin 2.
Both parameter systems follow a global/local parameter system. In the case of the Pikmin 1 parameters, there are three sections, each terminated with 0xFFFFFFFF
.
Section 1) Contains the "global global" parameters. These parameters are all over the engine. Olimar also uses these parameters. They are the sXX parameters.
Section 2) Contains the global parameters. These parameters are shared among every boss, except for i10. They are the bXX, cXX, dXX, pXX, and iXX parameters.
Section 3) Contains the local parameters. These parameters are different for every boss, include lots of different labels, and are yet to be explored. Not every boss has this section
All values stored in the four bytes following a parameter label are I-EEE 754 Floating Point Numbers (32-bit floats). I currently have a theory that iXX are, in fact, integers, though have done no testing to back this up.
The best way to modify boss parameters currently is through the Windows x86 Debugger, though it is possible to modify them for the final game as well. I have done so, and you can watch it here.
Contents
Global Parameters
Note: Some i** parameters are actually very small values that round to 0.0
Label | Description | core | king | kingback | kogane | kumo | mizu | nucleus | pom | slime | snake |
---|---|---|---|---|---|---|---|---|---|---|---|
s00 | friction(not used) | 1.0 | 0.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 0.0 | 1.0 |
s01 | wallReflection | 0.5 | 1.0 | 0.5 | 0.5 | 0.5 | 0.5 | 0.5 | 0.5 | 0.0 | 0.5 |
s02 | faceDirAdjust | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 |
s03 | Acceleration time | 1.0 | 0.1 | 1.0 | 0.1 | 1.0 | 1.0 | 1.0 | 1.0 | 0.1 | 0.3 |
s04 | Bounciness | 0.3 | 1.0 | 0.3 | 0.3 | 0.0 | 0.3 | 0.3 | 0.3 | 0.0 | 150.0 |
b00 | Territory Radius | 0.0 | 200.0 | 0.0 | 0.0 | 200.0 | 100.0 | 0.0 | 0.0 | 350.0 | 150.0 |
b01 | 0.0 | 175.0 | 0.0 | 0.0 | 150.0 | 0.0 | 0.0 | 0.0 | 250.0 | 80.0 | |
b02 | Seeking Radius | 0.0 | 400.0 | 0.0 | 500.0 | 400.0 | 0.0 | 0.0 | 500.0 | 500.0 | 250.0 |
b03 | Private Radius (Maybe) | 0.0 | 180.0 | 0.0 | 0.0 | 360.0 | 0.0 | 0.0 | 0.0 | 360.0 | 180.0 |
b10 | Health Points | 50000.0 | 30000.0 | 1000.0 | 50000.0 | 5000.0 | 50000.0 | 50000.0 | 50000.0 | 30000.0 | 25000.0 |
b13 | (Related to AI Seeking?) | 0.0 | 10.0 | 0.0 | 0.0 | 1.0 | 0.0 | 0.0 | 0.0 | 1.0 | 30.0 |
b11 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | |
b14 | 0.0 | 1.5 | 1.0 | 0.0 | 1.0 | 0.0 | 0.5 | 0.0 | 0.0 | 7.5 | |
b12 | 0.0 | 2.0 | 1.0 | 0.0 | 0.3 | 0.0 | 10.0 | 0.0 | 0.0 | 1.0 | |
c00 | 5000.0 | 5000.0 | 0.0 | 5000.0 | 312.5 | 0.0 | 5000.0 | 0.0 | 5000.0 | 5000.0 | |
c01 | 20.0 | 0.0 | 0.0 | 30.0 | 30.0 | 0.0 | 20.0 | 0.0 | -30.0 | 30.0 | |
d00 | 0.0 | 1.0 | 0.0 | 1.0 | 0.5 | 0.0 | 0.0 | 0.0 | 1.0 | 1.0 | |
d01 | 500.0 | 100.0 | 0.0 | 0.0 | 100.0 | 0.0 | 500.0 | 0.0 | 500.0 | 100.0 | |
d02 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 10.0 | 0.0 | |
p00 | Rendering Sphere Radius | 200.0 | 200.0 | 60.0 | 40.0 | 250.0 | 10.0 | 200.0 | 60.0 | 150.0 | 175.0 |
p01 | Rendering Sphere Y-Offset | 25.0 | 80.0 | 0.0 | 10.0 | 100.0 | 0.0 | 25.0 | 20.0 | 25.0 | 50.0 |
i10 | 0.0 | 0.0 | N/A | 0.0 | 0.0 | N/A | 0.0 | 0.0 | 0.0 | 0.0 | |
i00 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | |
i01 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | |
i02 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | |
i03 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | |
i04 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | |
i05 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | |
i06 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | |
i90 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 |
Local Parameters
Goolix yellow nucleus (core)
Emperor Bulblax front (king)
Label | Description | Value | Vanilla | Modified |
---|---|---|---|---|
o00 | Unknown | 00 00 00 01 |
||
o01 | Unknown | 00 00 00 01 |
||
o02 | Unknown | 00 00 00 01 |
||
p00 | Unknown | 00 00 00 01 |
||
p01 | Unknown | 00 00 00 01 |
||
p04 | Unknown | 00 00 00 01 |
||
p02 | Unknown | 00 00 00 01 |
||
p03 | Unknown | 00 00 00 01 |
||
p10 | Unknown | 00 00 00 01 |
||
q10 | Unknown | 00 00 00 01 |
||
r00 | Unknown | 00 00 00 01 |
||
r01 | Unknown | 00 00 00 01 |
||
s00 | Unknown | 00 00 00 01 |
||
s10 | Unknown | 00 00 00 01 |
||
s20 | Unknown | 00 00 00 01 |
||
s21 | Unknown | 00 00 00 01 |
||
s23 | Unknown | 00 00 00 01 |
||
s30 | Unknown | 00 00 00 01 |
||
s31 | Unknown | 00 00 00 01 |
||
s32 | Unknown | 00 00 00 01 |
||
s40 | Unknown | 00 00 00 01 |
||
s41 | Unknown | 00 00 00 01 |
||
t00 | Unknown | 00 00 00 01 |
||
t01 | Unknown | 00 00 00 01 |
||
t02 | Unknown | 00 00 00 01 |
||
t03 | Unknown | 00 00 00 01 |
||
t10 | Unknown | 00 00 00 01 |
||
t11 | Unknown | 00 00 00 01 |
||
t12 | Unknown | 00 00 00 01 |
||
i00 | Unknown | 00 00 00 01 |
||
i10 | Unknown | 00 00 00 01 |
||
i11 | Unknown | 00 00 00 01 |
||
i12 | Unknown | 00 00 00 01 |
||
i13 | Unknown | 00 00 00 01 |
||
i14 | Unknown | 00 00 00 01 |
||
i20 | Unknown | 00 00 00 01 |
||
i21 | Unknown | 00 00 00 01 |
||
i22 | Unknown | 00 00 00 01 |
||
i23 | Unknown | 00 00 00 01 |
||
i24 | Unknown | 00 00 00 01 |
||
i30 | Unknown | 00 00 00 01 |
||
i40 | Unknown | 00 00 00 01 |
Emperor Bulblax back (kingback)
Iridescent Flint Beetle (kogane)
Label | Description | Value | Vanilla | Modified |
---|---|---|---|---|
o00 | Unknown | 41 F0 00 00 |
||
o01 | Unknown | 40 C0 00 00 |
||
o02 | Unknown | 40 C0 00 00 |
||
p00 | Unknown | 43 7A 00 00 |
||
p10 | Unknown | 41 20 00 00 |
||
p50 | Unknown | 41 F0 00 00 |
||
p51 | Unknown | 42 C8 00 00 |
||
p52 | Unknown | 42 C8 00 00 |
||
p53 | Unknown | 43 48 00 00 |
||
t00 | Unknown | 41 A0 00 00 |
||
t01 | Unknown | 41 F0 00 00 |
||
t10 | Unknown | 3F 00 00 00 |
||
t11 | Unknown | 40 40 00 00 |
||
t50 | Unknown | 3F C0 00 00 |
||
s00 | Unknown | 3F 80 00 00 |
Beady Long Legs (kumo)
Label | Description | Value | Vanilla | Modified |
---|---|---|---|---|
p10 | Unknown | 3F C0 00 00 |
||
p11 | Unknown | 3D E7 6C 8B |
||
p12 | Unknown | 3E BD 70 A4 |
||
p13 | Unknown | 40 E0 00 00 |
||
p14 | Unknown | 3D CC CC CD |
||
p15 | Unknown | 41 20 00 00 |
||
p20 | Unknown | 42 F0 00 00 |
||
p21 | Unknown | 42 70 00 00 |
||
p22 | Unknown | 42 34 00 00 |
||
p23 | Unknown | 40 80 00 00 |
||
p24 | Unknown | 42 48 00 00 |
||
p30 | Unknown | 42 96 00 00 |
||
p31 | Unknown | 42 C8 00 00 |
||
p32 | Unknown | 42 C8 00 00 |
||
p33 | Unknown | 42 FA 00 00 |
||
p34 | Unknown | 3F 33 33 33 |
||
p35 | Unknown | 3F 99 99 9A |
||
p40 | Unknown | 3F E6 66 66 |
||
p50 | Unknown | 41 C8 00 00 |
||
p51 | Unknown | 41 A0 00 00 |
||
p52 | Unknown | 43 48 00 00 |
||
p53 | Unknown | 3E 99 99 9A |
||
p54 | Unknown | 42 C8 00 00 |
||
p55 | Unknown | 00 00 00 00 |
||
p56 | Unknown | 3E 19 99 9A |
||
p57 | Unknown | 40 00 00 00 |
||
p60 | Unknown | 3E 19 99 9A |
||
p61 | Unknown | 3F 73 33 33 |
||
p62 | Unknown | 41 F0 00 00 |
||
p63 | Unknown | 3C 23 D7 0A |
||
p70 | Unknown | 41 F0 00 00 |
||
p71 | Unknown | 40 00 00 00 |
||
p72 | Unknown | 3F 80 00 00 |
||
p73 | Unknown | 3F 00 00 00 |
||
p74 | Unknown | 3F 66 66 66 |
||
p75 | Unknown | 3F CC CC CD |
||
c00 | Unknown | 43 34 00 00 |
||
c01 | Unknown | 3D 4C CC CD |
||
t00 | Unknown | 40 BC CC CD |
||
s00 | Unknown | 40 C0 00 00 |
||
s01 | Unknown | 3D CC CC CD |
||
s02 | Unknown | 3D CC CC CD |
||
s10 | Unknown | 42 C8 00 00 |
||
s11 | Unknown | 42 C8 00 00 |
||
s30 | Unknown | 41 F0 00 00 |
||
s31 | Unknown | 3F 00 00 00 |
||
s32 | Unknown | 3F 40 00 00 |
||
i00 | Unknown | 00 00 00 01 |
||
i01 | Unknown | 00 00 00 02 |
||
i02 | Unknown | 00 00 00 02 |
||
i03 | Unknown | 00 00 00 04 |
||
i10 | Unknown | 00 00 00 01 |
||
i20 | Unknown | 00 00 00 01 |
Geyser (mizu)
Goolix blue nucleus (nucleus)
Candypop Bud (pom)
Label | Description | Value | Vanilla | Modified |
---|---|---|---|---|
s00 | Unknown | 3E 19 99 9A |
||
s01 | Unknown | 3F 00 00 00 |
||
s02 | Unknown | 3E 19 99 9A |
||
p00 | Unknown | 41 F0 00 00 |
||
p10 | Unknown | 43 87 00 00 |
||
i00 | Unknown | 00 00 00 0A |
||
i10 | Unknown | 00 00 00 05 |
||
i11 | Unknown | 00 00 00 05 |
||
i20 | Unknown | 00 00 00 00 |
||
i90 | Unknown | 00 00 00 00 |
||
i91 | Unknown | 00 00 00 01 |
||
i92 | Unknown | 00 00 00 00 |
Videos
[HEX HACK] Beady Long Legs Out of Arena
[HEX HACK] Emperor Bulblax Out of Arena