Difference between revisions of "JPC file"

From Pikmin Technical Knowledge Base
Jump to navigation Jump to search
Line 588: Line 588:
 
|-
 
|-
 
|  0107|| Yellow Onion || Onyon_Container_Yellow
 
|  0107|| Yellow Onion || Onyon_Container_Yellow
 +
|-
 +
|  0108|| Titan Dweevil || Enemy_BigTreasure_TOootaElec_1
 +
|-
 +
|  0109|| Titan Dweevil || Enemy_BigTreasure_TOootaElec_2
 +
|-
 +
|  010a|| Titan Dweevil || Enemy_BigTreasure_TOootaElec_3
 +
|-
 +
|  010b|| Titan Dweevil || Enemy_BigTreasure_TOootaElecLeg
 +
|-
 +
|  010c|| Titan Dweevil || Enemy_BigTreasure_TOootaFire_1
 +
|-
 +
|  010d|| Titan Dweevil || Enemy_BigTreasure_TOootaFire_2
 +
|-
 +
|  010e|| Titan Dweevil || Enemy_BigTreasure_TOootaFire_3
 +
|-
 +
|  010f|| Titan Dweevil || Enemy_BigTreasure_TOootaFire_4
 +
|-
 +
|  0110|| Titan Dweevil || Enemy_BigTreasure_TOootaFire_5
 +
|-
 +
|  0111|| Titan Dweevil || Enemy_BigTreasure_TOootaFoot_1
 +
|-
 +
|  0112|| Titan Dweevil || Enemy_BigTreasure_TOootaFoot_2
 +
|-
 +
|  0113|| Titan Dweevil || Enemy_BigTreasure_TOootaGas_1
 +
|-
 +
|  0114|| Titan Dweevil || Enemy_BigTreasure_TOootaGas_2
 +
|-
 +
|  0115|| Titan Dweevil || Enemy_BigTreasure_TOootaWalk_1
 +
|-
 +
|  0116|| Titan Dweevil || Enemy_BigTreasure_TOootaWalk_2
 +
|-
 +
|  0117|| Titan Dweevil || Enemy_BigTreasure_TOootaWbomb_1
 +
|-
 +
|  0118|| Titan Dweevil || Enemy_BigTreasure_TOootaWbomb_2
 +
|-
 +
|  0119|| Titan Dweevil || Enemy_BigTreasure_TOootaWbomb_3
 +
|-
 +
|  011a|| Titan Dweevil || Enemy_BigTreasure_TOootaWbomb_4
 +
|-
 +
|  011b|| Titan Dweevil || Enemy_BigTreasure_TOootaWbHit_1
 +
|-
 +
|  011c|| Titan Dweevil || Enemy_BigTreasure_TOootaWbHit_2
 +
|-
 +
|  011d|| Titan Dweevil || Enemy_BigTreasure_TOootaWbHit_3
 +
|-
 +
|  011e|| Titan Dweevil || Enemy_BigTreasure_TOootaWbHit_4
 +
|-
 +
|  011f|| Titan Dweevil || Enemy_BigTreasure_TOootaWbShot_1
 +
|-
 +
|  0120|| Titan Dweevil || Enemy_BigTreasure_TOootaWbShot_2
 +
|-
 +
|  0121|| - || -
 
|-
 
|-
 
| - || - ||  
 
| - || - ||  

Revision as of 00:20, 1 July 2021

Editor's note: The information on this page was gathered from eff2d_world_map.jpc and game.jpc. This page is not finished.

JPC files represent an indexed collection of JPA files, and contain information on particle systems and store BTI images.

File header

Data type Description
0x0 (8 char) String, JPAC2-10.
0x8 (uint16) Number of BEM1 headers, total number of defined emitters.
0xA (uint16) Number of BTI format textures (TEX1).
0xC (uint32) Total size of data excluding the TEX1 sections.

Before the BEM1 section, every particle emitter starts off with 8 bytes of data:

Data type Description
0x0 (uint16) Identifier.
0x2 (uint16) Unknown - Always set to 5.[unsure]
0x4 (uint8) Unknown - Crash handler mentions something about JPAWorkData.[unsure]
0x5 (uint8) Unknown - Crash handler mentions JPAKeyBlock? Related to alpha? when changed to something else.[unsure]

BEM1

Data type Description
0x0 (4 char) String, BEM1.
0x4 (uint32) Value is always 0x7C since the data size of this section is static (124 bytes).
0x8 (uint16) Unknown - Doesn't seem to do anything. Changing doesn't crash.[unsure]
0xA (uint8) Purpose unknown.[unsure] Can be set from 0-7. Crashes resulted when set to 7. Crash handler mentions JPADyanmicBlocks? Setting numbers higher than 7 will wrap around to represent 0-7.
0xB (uint8) Bit flags. Upper 4 bits not used? Going right to left the 1st bit doesn't seem to do anything noticeable. 2nd seems to turn off particle cap. 3rd seems to determine if the particle system should fire continuously or once. 4th makes the particles parented to the emitter.[unsure]
0x10 (float) Scale X, these scale values may be used for the shape that particles can spawn within.
0x14 (float) Scale Y.
0x18 (float) Scale Z.
0x1C (float) Emitter's X offset from origin.
0x20 (float) Emitter's Y offset from origin.
0x24 (float) Emitter's Z offset from origin.

Game.JPC Particle List

ID Description Internal name
0000 Flies from Doodlebug Enemy_Fart_TBabyFly_ver01
0001 Fart from Doodlebug Enemy_Fart_TBabaHe_1
0002 - Enemy_Fart_TBabaHe_2
0003 - Enemy_Baby_TBabyBecha
0004 - Enemy_Baby_TBabyBorn
0005 - Item_Barrel_TBarrelDead_1
0006 - Item_Barrel_TBarrelDead_2
0007 - Item_Barrel_TBarrelDead_3
0008 - Enemy_Bomb_TBombrockABCD_1
0009 - Enemy_Bomb_TBombrockABCD_2
000a - Enemy_Bomb_TBombrockABCD_3
000b - Enemy_Bomb_TBombrockABCD_4
000c - Enemy_Bomb_TBombrockEFGH_1
000d - Enemy_Bomb_TBombrockEFGH_2
000e - Enemy_Bomb_TBombrockEFGH_3
000f - Enemy_Bomb_TBombrockEFGH_4
0010 - Piki_TBridgeAttack
0011 - Item_Bridge_TBridgeSet
0012 - Enemy_BombSarai_TBsaraiDead_1
0013 - Enemy_BombSarai_TBsaraiDead_2
0014 - Enemy_BombSarai_TBsaraiSupli
0015 - Enemy_ImoMushi_TChouDown_1
0016 - Enemy_ImoMushi_TChouDown_2
0017 - Enemy_ImoMushi_TChouDown_3
0018 - Enemy_ShijimiChou_TChouHit
0019 - Cursor1
001a - Cursor2
001b - Cursor3
001c - Enemy_DamaGumo_TDamaDeadBomb
001d - Enemy_DamaGumo_TDamaDeadElecA
001e - Enemy_DamaGumo_TDamaDeadElecB
001f - Enemy_DamaGumo_TDamaDeadHahenA
0020 - Enemy_DamaGumo_TDamaDeadHahenB
0021 - Enemy_DamaGumo_TDamaDeadHahenC1
0022 - Enemy_DamaGumo_TDamaDeadHahenC2
0023 - Enemy_DamaGumo_TDamaFootw
0024 - Enemy_DamaGumo_TDamaFoot_1
0025 - Enemy_DamaGumo_TDamaFoot_2
0026 - Enemy_DamaGumo_TDamaHahen
0027 - Enemy_DamaGumo_TDamaSmoke
0028 - Enemy_DamaGumo_TDamaWalkw_1
0029 - Enemy_DamaGumo_TDamaWalkw_2
002a - Enemy_DamaGumo_TDamaWalkw_3
002b - Enemy_DamaGumo_TDamaWalk_1
002c - Enemy_DamaGumo_TDamaWalk_2
002d - Enemy_ElecHiba_TDenkiHiba_1
002e - Enemy_ElecHiba_TDenkiHiba_2
002f - Enemy_ElecHiba_TDenkiHiba_3
0030 - Enemy_ElecHiba_TDenkiPole_1
0031 - Enemy_ElecHiba_TDenkiPole_2
0032 - Enemy_ElecHiba_TDenkipoleSign
0033 - Enemy_ElecBug_TDnkmsHoudenA
0034 - Enemy_ElecBug_TDnkmsHoudenB
0035 - Enemy_ElecBug_TDnkmsThunderA
0036 - Enemy_ElecBug_TDnkmsThunderB
0037 - Item_DownFloor_TDownf1On
0038 - Item_DownFloor_TDownf1Updown
0039 - Item_DownFloor_TDownf1WOn
003a - Item_DownFloor_TDownf1WUpdown
003b - Item_DownFloor_TDownf2On
003c - Item_DownFloor_TDownf2Updown
003d - Item_DownFloor_TDownf2WOn
003e - Item_DownFloor_TDownf2WUpdown
003f - Item_DownFloor_TDownf3On Unknown[unsure]
0040 - Item_DownFloor_TDownf3Updown
0041 - Item_DownFloor_TDownf3WOn
0042 - Item_DownFloor_TDownf3WUpdown
0043 - Navi_TDopingSmoke_1
0044 - Navi_TDopingSmoke_2
0045 - Navi_TDopingSmoke_3
0046 - Item_ElecGate_TEgateA
0047 - Item_ElecGate_TEgateBC_1
0048 - Item_ElecGate_TEgateBC_2
0049 - Enemy_Egg_TEggdown
004a - Enemy_TEnemyBombM_1
004b - Enemy_TEnemyBombM_2
004c - Enemy_TEnemyBombM_3
004d - Enemy_TEnemyBombM_4
004e - Enemy_TEnemyBombS_1
004f - Enemy_TEnemyBombS_2
0050 - Enemy_TEnemyBombS_3
0051 - Enemy_TEnemyBombS_4
0052 - Enemy_TEnemyDead
0053 - Enemy_TEnemyDownSmoke
0054 - Enemy_TEnemyDownWat_1
0055 - Enemy_TEnemyDownWat_2
0056 - Enemy_TEnemyDownWat_3
0057 - Enemy_TEnemyHamonM
0058 - Enemy_TEnemyHamonMInd
0059 - Enemy_TEnemyWalkSmokeS
005a - Enemy_TEnemyWalkSmokeM
005b - TForestSakura
005c - Enemy_Frog_TFrogDive_1
005d - Enemy_Frog_TFrogDive_2
005e - Enemy_Frog_TFrogDive_3
005f - Enemy_Frog_TFrogDive_4
0060 - Enemy_Frog_TFrogLanddrop_1
0061 - Enemy_Frog_TFrogLanddrop_2
0062 - Enemy_Frog_TFrogPota
0063 - Pellet_TFruitsDownP_1
0064 - Pellet_TFruitsDownP_2
0065 - Pellet_TFruitsDownR_1
0066 - Pellet_TFruitsDownR_2
0067 - Cursor_TFueactBiriBase_1
0068 - Cursor_TFueactBiriBase_2
0069 - TFueactCircle
006a - Cursor4
006b - Enemy_FueFuki_TFuebugOnpa
006c - Enemy_Mar_TFusenAirhit_1
006d - Enemy_Mar_TFusenAirhit_2
006e - Enemy_Mar_TFusenAir_1
006f - Enemy_Mar_TFusenAir_2
0070 - Enemy_Mar_TFusenAir_3
0071 - Enemy_Mar_TFusenDead_1
0072 - Enemy_Mar_TFusenDead_2
0073 - Enemy_Mar_TFusenSui
0074 - Enemy_GasHiba_TGasuHiba_1
0075 - Enemy_GasHiba_TGasuHiba_2
0076 - Piki_TGate1Attack_1
0077 - Piki_TGate1Attack_2
0078 - Item_Gate_TGate1Down_1
0079 - Item_Gate_TGate1Down_2
007a - Piki_TGate2Attack_1
007b - Piki_TGate2Attack_2
007c - Item_Gate_TGate2Down_1
007d - Item_Gate_TGate2Down_2
007e - Piki_TPkS_Gate3Attack
007f - Item_BigFountain_TGeyserAct_1
0080 - Item_BigFountain_TGeyserAct_2
0081 - Item_BigFountain_TGeyserAct_3
0082 - Item_BigFountain_TGeyserSet_1
0083 - Item_BigFountain_TGeyserSet_2
0084 Unknown[unsure] Unknown[unsure]
0085 Unknown[unsure] Unknown[unsure]
0086 Unknown[unsure] Unknown[unsure]
0087 Unknown[unsure] Unknown[unsure]
0088 Unknown[unsure] Unknown[unsure]
0089 Unknown[unsure] Unknown[unsure]
008a Unknown[unsure] Unknown[unsure]
008b - Enemy_ChappyBase_THanachoN
008c - Enemy_ChappyBase_THanachoY
008d - Enemy_Houdai_THdamaHit1_1
008e - Enemy_Houdai_THdamaHit1_2
008f - Enemy_Houdai_THdamaHit1_3
0090 - Enemy_Houdai_THdamaHit1_4
0091 - Enemy_Houdai_THdamaHit2W_1
0092 - Enemy_Houdai_THdamaHit2W_2
0093 - Enemy_Houdai_THdamaHit2W_3
0094 - Enemy_Houdai_THdamaHit2_1
0095 - Enemy_Houdai_THdamaHit2_2
0096 - Enemy_Houdai_THdamaHit2_3
0097 - Enemy_Houdai_THdamaHit3_1
0098 - Enemy_Houdai_THdamaHit3_2
0099 - Enemy_Houdai_THdamaHit3_3
009a - Enemy_Houdai_THdamaHit3_4
009b - Enemy_Houdai_THdamaShell
009c - Enemy_Houdai_THdamaShootA
009f - Enemy_Houdai_THamaShoot_1
009e - Enemy_Houdai_THamaShoot_2
009f - Enemy_Houdai_THdamaSight
00a0 - Enemy_SnakeCrow_THabiAphd_dive
00a1 - Enemy_SnakeCrow_THabiAphd_dive_2
00a2 - Enemy_SnakeCrow_THabiAphd_dive_3
00a3 - Enemy_SnakeCrow_THabiAphd_dive_4
00a4 - Enemy_SnakeCrow_THebiDead_1
00a5 - Enemy_SnakeCrow_THebiDead_2
00a6 - Enemy_SnakeCrow_THebiDead_3
00a7 - Enemy_SnakeCrow_THebiDead_4
00a8 - Enemy_SnakeCrow_THebiDeadHane_ver01
00a9 - Enemy_SnakeCrow_THebiRot
00aa - Enemy_SnakeCrow_THebiWait
00ab - Enemy_Hiba_THibaFire_1
00ac - Enemy_Hiba_THibaFire_2
00ad - Enemy_Hiba_THibaFire_3
00ae - Enemy_Hiba_THibaFire_4
00af - Item_Hole_WarpZone_1
00b0 - Item_Hole_WarpZone_2
00b1 - Item_Hole_WarpZone_3
00b2 - Item_Hole_WarpZone_4
00b3 - Honey_THoneydownB
00b4 - Honey_THoneydownR
00b5 - Honey_THoneydownY
00b6 - Enemy_Imomushi_TImoEat_1
00b7 - Enemy_ImoMushi_TImoEat_2
00b8 - Enemy_Imomushi_TImoSmoke
00b9 - Enemy_Jigumo_TJgmAttack_1
00ba - Enemy_Jigumo_TJgmAttack_2
00bb - Enemy_Jigumo_TJgmAttackW_1
00bc - Enemy_Jigumo_TJgmAttackW_2
00bd - Enemy_Jigumo_TJgmAttackW_3
00be - Enemy_Jigumo_TJgmBack
00bf - Enemy_Jigumo_TJgmBackW_1
00c0 - Enemy_Jigumo_TJgmBackW_2
00c1 - Enemy_Jigumo_TJgmBubble
00c2 - Enemy_Kabuto_TKabutoAttack
00c3 - Enemy_Kogane_TKoganeDive_1
00c4 - Enemy_Kogane_TKoganeDive_2
00c5 - Enemy_Kogane_TKoganeHit_1
00c6 - Enemy_Kogane_TKoganeHit_2
00c7 - Item_Rock_TKouhai1_1
00c8 - Item_Rock_TKouhai1_2
00c9 - Item_Rock_TKouhai2_1
00ca - Item_Rock_TKouhai2_2
00cb - Item_Rock_TKouhai3_1
00cc - Item_Rock_TKouhai3_2
00cd - Item_Rock_TkKouhaiDamage
00ce Unknown[unsure] Unknown[unsure]
00cf Unknown[unsure] Unknown[unsure]
00d0 - Enemy_Rock_TKouhaiFuku_1
00d1 - Enemy_Rock_TKouhaiFuku_2
00d2 - Enemy_OniKurage_TKurageBomb_1
00d3 - Enemy_OniKurage_TKurageBomb_2
00d4 - Enemy_OniKurage_TKurageDeadrun
00d5 - Enemy_OniKurage_TKurageEye
00d6 - Enemy_OniKurage_TKurageFlick
00d7 - Enemy_OniKurage_TKurageGepu
00d8 - Enemy_OniKurage_TKurageHire_1
00d9 - Enemy_OniKurage_TKurageHire_2
00da - Enemy_OniKurage_TKurageHire_3
00db - Enemy_OniKurage_TKurageKira
00dc - Enemy_OniKurage_TKurageSui_1
00dd - Enemy_OniKurage_TKurageSui_2
00de Olimar/Louie Light Navi_TOrimaLight_loozy_1
00df Olimar/Louie Light Navi_TOrimaLightAct_loozy_1
00e0 Olimar/Louie Light Navi_TOrimaLightAct_loozy_2
00e1 Olimar/Louie Light Navi_TOrimaLight_loozy_2
00e2 - Enemy_Kurage_TNewKurageBomb_1
00e3 - Enemy_Kurage_TNewKurageBomb_2
00e4 - Enemy_Kurage_TNewkurageDeadrun
00e5 - Enemy_Kurage_TNewkurageEye
00e6 - Enemy_Kurage_TNewkurageFlick
00e7 - Enemy_Kurage_TNewkuragHire_1
00e8 - Enemy_Kurage_TNewkuragHire_2
00e9 - Enemy_Kurage_TNewkuragHire_3
00ea - Enemy_Kurage_TNewkuragKira
00eb - Enemy_Kurage_TNewkurageSui_1
00ec - Enemy_Kurage_TNewkurageSui_2
00ed - Enemy_BigFoot_TOdamaDeadHahenA
00ee - Enemy_BigFoot_TOdamaDeadHahenB
00ef - Enemy_BigFoot_TOdamaDeadHahenC1
00f0 - Enemy_BigFoot_TOdamaDeadHahenC2
00f1 - Enemy_BigFoot_TOdamaFoot_1
00f2 - Enemy_BigFoot_TOdamaFur1
00f3 - Enemy_BigFoot_TOdamaFur2
00f4 - Enemy_BigFoot_TOdamaHahen
00f5 - Enemy_BigFoot_TOdamaWalk_1
00f6 - Enemy_BigFoot_TOdamaWalk_2
00f7 Unknown[unsure] Unknown[unsure]
00f8 Blue Onion Onyon_ContainerAct_blue_1
00f9 Blue Onion Onyon_ContainerAct_blue_2
00fa Red Onion Onyon_ContainerAct_red_1
00fb Red Onion Onyon_ContainerAct_red_2
00fc Yellow Onion Onyon_ContainerAct_yellow_1
00fd Yellow Onion Onyon_ContainerAct_yellow_2
00fe - Onyon_TOnyonEatAB_1
00ff - Onyon_TOnyonEatAB_2
0100 - Onyon_TOnyonEatC
0101 - Onyon_TOnyonLay_1
0102 - Onyon_TOnyonLay_2
0103 - Onyon_TOnyonPuffKira
0104 - Onyon_TOnyonPuffPuff
0105 Blue Onion Onyon_Container_Blue
0106 Red Onion Onyon_Container_Red
0107 Yellow Onion Onyon_Container_Yellow
0108 Titan Dweevil Enemy_BigTreasure_TOootaElec_1
0109 Titan Dweevil Enemy_BigTreasure_TOootaElec_2
010a Titan Dweevil Enemy_BigTreasure_TOootaElec_3
010b Titan Dweevil Enemy_BigTreasure_TOootaElecLeg
010c Titan Dweevil Enemy_BigTreasure_TOootaFire_1
010d Titan Dweevil Enemy_BigTreasure_TOootaFire_2
010e Titan Dweevil Enemy_BigTreasure_TOootaFire_3
010f Titan Dweevil Enemy_BigTreasure_TOootaFire_4
0110 Titan Dweevil Enemy_BigTreasure_TOootaFire_5
0111 Titan Dweevil Enemy_BigTreasure_TOootaFoot_1
0112 Titan Dweevil Enemy_BigTreasure_TOootaFoot_2
0113 Titan Dweevil Enemy_BigTreasure_TOootaGas_1
0114 Titan Dweevil Enemy_BigTreasure_TOootaGas_2
0115 Titan Dweevil Enemy_BigTreasure_TOootaWalk_1
0116 Titan Dweevil Enemy_BigTreasure_TOootaWalk_2
0117 Titan Dweevil Enemy_BigTreasure_TOootaWbomb_1
0118 Titan Dweevil Enemy_BigTreasure_TOootaWbomb_2
0119 Titan Dweevil Enemy_BigTreasure_TOootaWbomb_3
011a Titan Dweevil Enemy_BigTreasure_TOootaWbomb_4
011b Titan Dweevil Enemy_BigTreasure_TOootaWbHit_1
011c Titan Dweevil Enemy_BigTreasure_TOootaWbHit_2
011d Titan Dweevil Enemy_BigTreasure_TOootaWbHit_3
011e Titan Dweevil Enemy_BigTreasure_TOootaWbHit_4
011f Titan Dweevil Enemy_BigTreasure_TOootaWbShot_1
0120 Titan Dweevil Enemy_BigTreasure_TOootaWbShot_2
0121 - -
- -
- -
- -
- -
- -
0153 Purple Pikmin ghost Piki_TPkS_Dead_purple
0154 Blue Pikmin ghost Piki_TPkS_Dead_blue
0155 Red Pikmin ghost Piki_TPkS_Dead_red
0156 White Pikmin ghost Piki_TPkS_Dead_white
0157 Yellow Pikmin ghost Piki_TPkS_Dead_yellow
- -
- -
0169 Purple Pikmin idle halo Piki_TPkToeKourin_purple
016A Blue Pikmin idle halo Piki_TPkToeKourin_blue
016B Red Pikmin idle halo Piki_TPkToeKourin_red
016C White Pikmin idle halo Piki_TPkToeKourin_white
016D Yellow Pikmin idle halo Piki_TPkToeKourin_yellow
- -
- -
01E0 Ranging Bloyster blue tail glow
01E1 Ranging Bloyster...
01E2 Ranging Bloyster red tail glow
01E3 Ranging Bloyster...
- -
0281 Green (Bulbmin) idle halo Piki_TPkToeKourin_green
- -
- -