Difference between revisions of "Pikmin 2 instructions"

From Pikmin Technical Knowledge Base
Jump to navigation Jump to search
 
(22 intermediate revisions by 6 users not shown)
Line 1: Line 1:
Helpful instructions for editing and handling ''Pikmin 2'''s files. This guide assumes you have some basic knowledge on navigating folders, opening files, using the command line, etc.  
+
Helpful instructions for editing and handling ''Pikmin 2'''s files. This guide assumes you have some basic knowledge on navigating folders, opening files, using commands, etc.
 
See [[General instructions#Obtaining a game's files|obtaining a game's files]] if you are unsure on how to do so.
 
See [[General instructions#Obtaining a game's files|obtaining a game's files]] if you are unsure on how to do so.
  
==Editing==
+
You can view and edit a lot of the game's files. You can read them without any worry, but if you want to change them and have those changes apply in-game, see [[General instructions#Saving changes|saving changes]] in [[general instructions]].
You can view and edit a lot of the game's files. You can read them without any worry, but if you want to change them and have those changes apply in-game, see [[General instructions#Saving changes]].
+
{{todo|Instructions for how to edit music.}}
{{todo|Sound files.}}
 
  
===Text files===
+
==Tools and files==
To read and edit a plain text file (<code>.txt</code>), you can use any text editor, like Notepad, although [https://notepad-plus-plus.org/download/ Notepad++] is highly recommended. If the type of file you're editing has any comment (text written in English or Japanese that comes after a #), then it's safe to say that any text that comes after a # will be ignored.
 
  
===SZS files===
+
Here are some prominent files that come up when modding.
SZS files (<code>.szs</code>) are a bit like zip files. If you want to read a SZS file's contents, you need to unpack it, and if you want to make changes to the contents, you need to repack it after you're done.
+
.SZS: Archive files similar to .ZIP or .RAR archive files. SZS files are RARC archives compressed with Yaz0 compression.
 +
.ARC: Archive files similar to .ZIP or .RAR archive files. ARC files are RARC archives not compressed with Yaz0 compression.
 +
.TXT: Generic plaintext files. Use Notepad++ to preserve the Shift-JIS encoding.
 +
.BMD: Proprietary 3D model files.
 +
.BMS: Sequenced audio files, similar to MIDI but more advanced. [https://pikmintkb.com/wiki/Pikmin_2_BMS_file_list List]
 +
.CND: Files that control how various sequences in a BMD file are randomly chained together in a complex system. Used for cave music.
 +
[https://pikmintkb.com/wiki/Pikmin_2_CND_file_list List]
 +
.AST: Streamed audio files. [https://pikmintkb.com/wiki/AST_file_list List]
 +
.AW: Soundbank files.
 +
.BMG: Used to store in-game text strings.
 +
.BLO: UI screen data.
 +
.BTI: Textures.
 +
.BTK: Animated textures.
 +
.STB: Cutscene data.
 +
.THP: Prerendered videos (GC/Wii)
 +
.WEBM: Prerendered videos (Switch)
 +
.JPC: Particle effect container. [https://pikmintkb.com/wiki/JPC_particles List]
 +
.JPA: Particle effect.
 +
.BCA: Full animation data.
 +
.BCK: Keyframed animation data.
  
====Windows====
+
Here are some prominent tools:  
To unpack an SZS file on Windows, use [https://www.romhacking.net/utilities/1024/ Lunaboy's RARC Tools]. Unpacking is done through <code>ArcExtract.exe</code> by drag and dropping your szs file onto it. A folder containing the SZS files' contents will then be created in the directory that the SZS was in, and now you can modify it!
 
  
To repack an SZS file, you will need to continue using Lunaboy's RARC Tools in addition to [https://egaddsworkshop.com/forums/showthread.php?tid=27 yaz0fast]. First, once you've modified the SZS' contents, drag the folder that <code>ArcExtract.exe</code> gave you onto <code>ArcPack.exe</code> and it will create an <code>.arc</code> file. Technically, you can rename the file extension to SZS right now and it will work, but following the next step instead will save space. Drag the newly created ARC file onto <code>yaz0fast.exe</code> and it will create an SZS file. Now rename it to the filename that the original SZS had (you need to do this if you chose to rename the file extension instead as well) and yous should be good to go!
+
[https://www.romhacking.net/utilities/1024/  Lunaboy's RARC Tools]- Used for extracting and converting RARC archives. For szs files, simply rename the converted file from file.arc to file.szs.
 +
[https://notepad-plus-plus.org/downloads/ Notepad++] - Used for editing text files, many of which need to preserve Shift-JIS encoding.
 +
[https://github.com/RenolY2/pikmin-tools/releases/download/v1.0.1.1/piktools-1.0.1.1.zip Gen & Route Editor] - Used for editing overworld generation and pikmin carrying routes.
 +
[https://github.com/Drought-Ender/Drought-Cave-Creator/archive/refs/tags/1.1.2.zip Drought's Cave Creator] - Used for creating and modifiying cave files, cave lighting, and cave unit definition files.
 +
[https://xayr.gay/tools/SoundModdingToolkit/6.3.3/PIKMIN2_SoundModdingToolkit_6.3.3_win64.zip Pikmin 2 Sound Modding Toolkit] - Used for modyfing sounds in the game.
 +
[https://xayr.gay/tools/jaimaker1/JAIMaker+JAISeqX1.5.9.zip JAIMaker] - Used for creating custom sequenced music as BMS files. Interactive music and cave music require additional hex editing.
 +
[https://github.com/XAYRGA/jatast JATAST] - Used for converting .wav files into .ast files for streamed music.
 +
[https://github.com/RenolY2/pikminBMG/archive/refs/tags/v0.7.4.zip pikminBMG] - Used for editing text in the game.
 +
[https://github.com/RenolY2/pyblo2-gui/releases/download/v0.7.0.1/blo-gui-editor-v0.7.0.1.zip pyblo2-gui] - Used for modyfing blo files.
 +
[https://github.com/MeltyPlayer/FinModelUtility/releases/download/v0.2/FinModelUtility.v0.2.zip FinModelUtility] - Used for converting BMD files to formats that can be imported into any 3D modeling software. Batch scripts can be found in Hocotate Hacker for simple conversion of single models.
 +
[https://github.com/RenolY2/SuperBMD/releases/download/v2.1.0/SuperBMD.zip SuperBMD] - Used for converting FBX and DAE files back to BMD.
 +
[https://github.com/riidefi/RiiStudio/releases/download/Alpha-5.11.1/RiiStudio_Windows.zip RiiStudio] - Used for BMD materials editing. (Pish don't kill me GUI is just easier for now)
 +
[https://github.com/RenolY2/obj2grid/archive/refs/tags/v0.8.zip obj2grid] - Used for converting between .OBJ 3D files and pikmin 2's collision formats.
 +
[https://github.com/LagoLunatic/GCFT/releases/tag/1.10.0 GameCube File Tools] - Used for modification of many GameCube/early Wii era formats, notably BTI files. It can also compress .arc archives to szs.
 +
Hex editor - needed for additional editing of other files such as .BIN binary files. An editor of choice is HxD: (https://mh-nexus.de/en/hxd/)
 +
More tools can be found in Hocotate Hacker if needed. Compiled builds for many of these tools are for Windows, but macOS and Linux users can compile many from source.
  
====Mac====
+
==Cave generation==
Unfortunately, Lunaboy's RARC Tools and yaz0fast cannot be used on Mac computers. Instead, you must use a different tool called [http://szs.wiimm.de/ Wiimms SZS Toolset]. First, install it using the instructions on the website. Unpacking and repacking is done through the command line. These tools can be used with Windows as well, but it is not practical. Under Windows, there are scripts you can create to make Wiimm's process of packing and repacking easier.
 
  
Anyway, the command to unpack a file is <code>wszst extract &lt;SZS file path&gt;</code>. This will create a folder with the same name as the SZS file, but ending in ".d". Inside this folder will be the contents of the SZS file, plus an additional data file, which is used by Wiimms SZS Toolset, so that it knows how to repack. To repack, use <code>wszst update &lt;SZS file path&gt;</code>.
+
You can make custom caves with Drought's Cave Creator. When adding more sublevels to any cave, you must remember to add more cave songs to the BgmList text file, located in <code>user/Totaka</code>. You will edit BgmList_(area).txt for areas, and ChallengeBgmList.txt for challenge mode.
  
=====Scripts=====
+
==Overworld generation==
If you for some reason want to use Wiimms SZS Toolset on Windows, you can create scripts to automatically unpack and repack a SZS file, so that you don't have to write commands all the time. Open a text editor, and type
 
<pre>wszst extract %1</pre>
 
Save it as <code>SZS extract.bat</code> on some folder you can remember. Create a new file with
 
<pre>wszst update %1</pre>
 
And save it as <code>SZS update.bat</code>.
 
  
After this, you can simply grab the SZS file you want and drag it onto the BAT file you need.
+
==Model replacement==
  
===BMD files===
+
==Custom sounds and music==
BMD files (<code>.bmd</code>) are 3D model files. If you simply want to view them, you can do so with [http://www.mediafire.com/?uy2nmmjmkmj BMDView2]. Editing them is a different matter.
 
 
 
If you want to make your own BMD, you will need three things: a) [https://www.autodesk.com/education/free-software/3ds-max 3ds Max 2015] (preferably the student version, as it's free), b) [https://github.com/Avatarus-one/MaxBMD MaxBMD], a bmd importer for 3ds Max, and c) [https://github.com/Sage-of-Mirrors/BMDCubed/releases BMDCubed], a custom BMD converter that can convert <code>.DAE</code> files made by 3ds Max into .bmds.
 
Once you have 3ds Max set up, you're going to want to install MaxBMD. It should come with an executable named <code>bmdview.exe</code>, which you should drop in C:\Autodesk\Autodesk_3ds_Max_2015_EFGJKS_Win_64bit_R2_wi_en-US. Once you've done that, all you have to do is open 3ds Max and drag MaxBMD's script onto its tool bar. Congratulations! You can now use MaxBMD.
 
There are multiple types of BMDs you can create now. For custom levels, check out [[Custom Models]]. For static objects such as treasures, follow the instructions on the Custom Models page but ignore any steps related to custom collision. Finally, for making custom models that have bones, watch [https://www.youtube.com/watch?v=pzUhokFHUrk this video tutorial]. All three of these model types will require you to use BMDCubed later, so keep it in a safe place!
 
 
 
If you just want to change the textures, you will need [https://github.com/blank63/j3dview/releases j3dview]. Open the bmd in j3dview and you can change the textures by replacing the vanilla ones with custom bti files (more on that later). To note is that a) Some textures will get a corrupted UV Map when replaced and b) j3dview is not compatible with custom BMDs or BMDs from ''Pikmin 2'' that contain bones or the like. That is, j3dview can edit the models for the first three areas and possibly the test levels & most treasures.
 
 
 
===BMG files===
 
BMG files (<code>.bmg</code>) contain the game's text strings. [https://www.youtube.com/watch?v=ve9cgdIQbSo Yoshi2's custom Pikmin 2 BMG Tool] is highly recommended for this, as it allows you to change any text without worrying about the character count. To use it, simply drag the BMG onto <code>packBMG.bat</code>, edit the outputted text file in Notepad++, make sure it's encoded in UTF-8, save, and drag the saved text file onto <code>packBMG.bat</code>. That's all you need to do! (Keep in mind that any version of Python 3 (newer = better) is needed for this tool to work.)
 
 
 
Any text editor can also edit these, but once again, [https://notepad-plus-plus.org/download/ Notepad++] is highly recommended. You can find the strings after you scroll past the initial control data. If you want to edit the strings using a text editor, remember to keep their length the same. i.e. You can replace "Floor" with "Level", but not with "Step" or "Sublevel".
 
 
 
===BTI files===
 
BTI files (<code>.bti</code>) are image files. You'll need [http://szs.wiimm.de/ Wiimms SZS Toolset] to view these. As with [[#SZS files|SZS files]], you convert a BTI to PNG with the command line, though you can make a script to skip the command line part. The command to convert a BTI file is <code>wimgt DECODE &lt;BTI file path&gt;</code>.
 
To save the converted PNG files back into a BTI format use the command <code>wimgt ENCODE <PNG file path></code>.
 
 
 
====Scripts====
 
As with [[#SZS files|SZS files]], you can write a script so that you don't have to write commands all the time. Open up a text editor, write
 
<pre>wimgt DECODE %1</pre>
 
And save it somewhere you can remember, with the name <code>BTI converter.bat</code>. Then, when you want to convert a BTI file into PNG, simply drag the BTI file onto the BAT file you created.
 
Now open a new file in the text editor and write <pre>wimgt ENCODE %1</pre> And save it with the name <code>BTI updater.bat</code> Now when you want to convert one of your PNG files back into BTI format, just drag the png onto this new BAT.
 
  
 
==Running your modified game==
 
==Running your modified game==

Latest revision as of 03:09, 21 September 2024

Helpful instructions for editing and handling Pikmin 2's files. This guide assumes you have some basic knowledge on navigating folders, opening files, using commands, etc. See obtaining a game's files if you are unsure on how to do so.

You can view and edit a lot of the game's files. You can read them without any worry, but if you want to change them and have those changes apply in-game, see saving changes in general instructions.

To do: Instructions for how to edit music.

Tools and files[edit]

Here are some prominent files that come up when modding.

.SZS: Archive files similar to .ZIP or .RAR archive files. SZS files are RARC archives compressed with Yaz0 compression.
.ARC: Archive files similar to .ZIP or .RAR archive files. ARC files are RARC archives not compressed with Yaz0 compression.
.TXT: Generic plaintext files. Use Notepad++ to preserve the Shift-JIS encoding.
.BMD: Proprietary 3D model files.
.BMS: Sequenced audio files, similar to MIDI but more advanced. List
.CND: Files that control how various sequences in a BMD file are randomly chained together in a complex system. Used for cave music. 
List
.AST: Streamed audio files. List
.AW: Soundbank files.
.BMG: Used to store in-game text strings.
.BLO: UI screen data.
.BTI: Textures.
.BTK: Animated textures.
.STB: Cutscene data.
.THP: Prerendered videos (GC/Wii)
.WEBM: Prerendered videos (Switch)
.JPC: Particle effect container. List
.JPA: Particle effect.
.BCA: Full animation data.
.BCK: Keyframed animation data.

Here are some prominent tools:

Lunaboy's RARC Tools- Used for extracting and converting RARC archives. For szs files, simply rename the converted file from file.arc to file.szs.
Notepad++ - Used for editing text files, many of which need to preserve Shift-JIS encoding.
Gen & Route Editor  - Used for editing overworld generation and pikmin carrying routes.
Drought's Cave Creator - Used for creating and modifiying cave files, cave lighting, and cave unit definition files.
Pikmin 2 Sound Modding Toolkit - Used for modyfing sounds in the game.
JAIMaker - Used for creating custom sequenced music as BMS files. Interactive music and cave music require additional hex editing.
JATAST - Used for converting .wav files into .ast files for streamed music.
pikminBMG - Used for editing text in the game.
pyblo2-gui - Used for modyfing blo files.
FinModelUtility - Used for converting BMD files to formats that can be imported into any 3D modeling software. Batch scripts can be found in Hocotate Hacker for simple conversion of single models.
SuperBMD - Used for converting FBX and DAE files back to BMD.
RiiStudio - Used for BMD materials editing. (Pish don't kill me GUI is just easier for now)
obj2grid - Used for converting between .OBJ 3D files and pikmin 2's collision formats.
GameCube File Tools - Used for modification of many GameCube/early Wii era formats, notably BTI files. It can also compress .arc archives to szs.
Hex editor - needed for additional editing of other files such as .BIN binary files. An editor of choice is HxD: (https://mh-nexus.de/en/hxd/)

More tools can be found in Hocotate Hacker if needed. Compiled builds for many of these tools are for Windows, but macOS and Linux users can compile many from source.

Cave generation[edit]

You can make custom caves with Drought's Cave Creator. When adding more sublevels to any cave, you must remember to add more cave songs to the BgmList text file, located in user/Totaka. You will edit BgmList_(area).txt for areas, and ChallengeBgmList.txt for challenge mode.

Overworld generation[edit]

Model replacement[edit]

Custom sounds and music[edit]

Running your modified game[edit]

See General instructions#Running a modified game.