🔠Custom font for Pokémon BDSP
Step-by-step instructions to create custom fonts for Pokémon BDSP
Last updated
Step-by-step instructions to create custom fonts for Pokémon BDSP
Last updated
Yuzu Emulator
A dumped copy of Pokemon Brilliant Diamond or Shining Pearl and its update
Choose a custom font (preferably in .otf format)
Unity Asset Studio Tool
Unity Asset Bundle Extractor Tool
FontLab Studio 7 (download crack version)
Join Team Luminescent on Discord
Use Unity Asset Studio to open BDSP's asset asset according to the path 0100000011D90000\romfs\StreamingAssets\AssetAssistant\Dpr\font\efigs_font
At the Asset List tab, notice the Type column, see which Asset has the Font format, right-click it and select Export selected assets to proceed with exporting the default font.
After successful export, we will have a Font named FOT-UDKakugoC80Pro-DB.otf, please rename it FOT-UDKakugoC80Pro-DB-old.otf for easy editing or replacement in the following steps.
Next we use Unity Asset Bundle Extractor (UABE) to export Dump of the default font. Open UABE, then select File => Open and select the Asset file containing the same font as the Asset Studio above 0100000011D90000\romfs\StreamingAssets\AssetAssistant\Dpr\font\efigs_font
In the Files and Components section, select efigs_font (Bundle) and continue to select CAB-9f12f79d9901f1393c5597ae0a304b67, now we will see a list of Assets on the Tab 1 side as shown below
Like Asset Studio, looking at the Type column we will see the Font format. Click to select it then click Export Dump button => Dump as text file to proceed to export the dump file of the font
After exporting dump successfully, we will have the file FOT_UDKakugoC80Pro_DB-CAB_9f12f79d9901f1393c5597ae0a304b67-4673090671967115572.txt proceed to rename it to FOT_UDKakugoC80Pro_DB-CAB_9f12f79d9901f1393c5597ae0a304b67-4673090671967115572-old.txt for easy identification in the following steps
After completing this step, we will have 2 files, FOT-UDKakugoC80Pro-DB-old.otf and FOT_UDKakugoC80Pro_DB-CAB_9f12f79d9901f1393c5597ae0a304b67-4673090671967115572-old.txt. Ready for the next step
Because the default font of BDSP contains many characters of many languages such as Chinese and Japanese. Many types of special characters or Kanji so we cannot completely relace a new font. You need have to use FontLab to edit the original font set. This will take quite a while, but it will not error the missing characters of the font.
To be able to edit the characters in the default font of BDSP. We need to use FontLab. Proceed to open FontLab Studio 7 => File => Open Fonts... => then we point the path to the place where the default font exported in the previous step is saved and open it
The result will be like the image below, a lot of characters are in the default font of BDSP that we need to replace.
Repeat the above step, but this time we will open the font we want to replace so that we can copy the characters. In this example I will use the font pokemon-dp-pro
Now you will see, FontLab will display 2 tabs of Font in very similar to Tabs on Google Chrome browser. Great because it will help people who are not familiar with font design can easily get used to it.
Now we will start replacing the letter A. At the Tab of the default font, double click on the letter A. Then we do the same with the letter A in the font to be replaced. When finished, we will have 2 Tabs like the gif below.
Next we go to the Tab of the custom A character. Use Ctrl+A and Ctrl+C to copy. Then go to Tab of the default character A and use Ctrl + V to paste. See the gif below to see the results.
Now we can use the key combination Ctrl+T to be able to drag and resize. Note: hold down the Shift key while holding the mouse to drag to help the font not be distorted
Now Double Click 1 residual root of the default character A. When the buttons of this character A are colored red. Press the Delete button to delete it. Similarly, delete all redundant elements until only the character we just replaced is okay. Going back to the Default Font Tab, we can see that we have successfully changed the character A like the gif image below
Repeat the above steps, we will replace all remaining characters. In this example I will only change a few characters for demo purposes.
Now we proceed to export the newly created font by selecting File => Export Font As... => Check the box OpenType PS (otf) => Choose folder... => Export, like the gif image below to proceed to export the font
After successful export, we have completed the font editing step
Open Unity Hub => New project => 3D Core => Change Project name => Change Localtion => Create project
Proceed to create a new Object in Unity, to use the Font we choose to create Object TextMeshPro. See the animation below
We proceed to drag and drop the font that has just been exported from FontLab into Unity. Then follow the steps below to create a new Asset for this font. I'm not good at Unity so if the tutorial is wrong, please leave a comment.
Now we will proceed to build the project that has just created the font asset. Select File => Build Settings => Build.
After getting the Build_Data folder as below, complete the step of creating Asset for the new font.
Same as step 1, we proceed to use UABE to open the resources.assets file from the Unity Project folder that we have just built. Then proceed to Export Dump font we just custom
Then we rename it FOT_UDKakugoC80Pro_DB-CAB_9f12f79d9901f1393c5597ae0a304b67-4673090671967115572-new.txt. Proceed to open 2 files old and new with Notepad++
We proceed to copy the content in the line 6 and line 10 of the Old file to the New file and save it. Rename the New file to be the same as the default file by removing the -new part
Finally, we use UABE to open the file efigs_font-decompressed, find the asset font as in step 1. Then click the Import Dump button => select the new Dump TXT file that we have just finished editing. Take a look at the gif below
After completing the above step, everything is done, now we just need to rename the efigs_font-decompressed-mod file to efigs_font and copy it to Yuzu's mods folder. That's it, proceed to open the game and check it out.