Your Ad could be here.
Donate to support DoTA forum and Launcher development.

[Guide] Making your first patch using Launcher v0.8b2

User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Blood Mage
Blood Mage
Posts: 3689
Joined: Thu 1998.01.01, 00:00
Honor: 3102
Points: 2423438202.90
BDO: Blader
Cabal: BL
Vindictus: Lann
C9: Blade Dancer
Gender: Male
Karma: 神風
: Assassin Black Star Winged Devotion Dedication Heavy 1st 20 HR BDO JP Volunteer BDO KR Translator BDO JP Translator BDO RU Translator Black Spirit inside Black Spirit's Partner
Medals: 17
Contact:

[Guide] Making your first patch using Launcher v0.8b2

Postby KAMIKADzE » Mon 2023.06.19, 23:47

In this guide I'll try to cover the basics of making your very own simple language patch for PC server (excluding KR; you can make the patches for KR, but it's significantly more complicated to do so, this guide is aimed for beginners).
Simplest patch can be made without Launcher (only for some servers), but this guide is not about that, so we have the requirements: You need to download and install Launcher. This guide is written with Launcher v0.8b2 in mind, some things might change in the future versions, but it's preferable to download the latest available version regardless. You also need 1 updated BDO client.
In this guide we will be looking at JP client, as an example, so please use common sense and adjust the guiding points to your client.

Now that you have all of the required software, let's take a look at what patch can look like (you can download the latest version of my patch to serve as a visual example, as of time of writing this post, but do note that in the future this patch might be changed to the project instead):
  • loc file. "languagedata_jp.loc" (located in "_Adv" folder).
    This is the main file of a language patch (except for KR client, KR uses bss and dbss instead). It contains the text for items, NPCs, quests, some parts of the UI, and even errors. For most people this will be good enough, and is fairly easy to work with, so it'll be our main focus in this guide.
  • meta and PAZ files. "pad00000.meta" and "PAD?????.PAZ" (located in "_Adv" folder).
    These files contain additional text files (e.g.: crafting notes, original KR text, etc.), images (UI elements and "pretty styled texts" in the game), sounds (voice audio files), etc., in other words - things not included in loc file.
  • ttf file. "pearl.ttf" (located in "prestringtable\font" folder).
    Font used by the game. Obviously it'll change only the appearance of not pre-rendered text.
    Some official fonts don't have a full set of unicode characters, so it can be used not only to stylize text in your game, but also to enable XYZ language for your patch users.
As you can tell, from the text above^, making the patch can get quite complicated, but don't worry, today we will focus primarily on the simple stuff.
With all of that^ said, let's begin our step by step guide on how to make simple language patch for JP server:
  1. Start Launcher.
    Just make sure that in "Games info => BDO tab" 1st dot for JP(PA) is lime (green), orange, yellow or blue. 3rd dot should be lime (green). Read THAT in order to understand what it all means and what to do if colors are not the ones that I specified.
  2. In Launcher's menu press "Tools => BDO Patcher".
    This is our patch-making and patch-auto-patching tool. At this point we actually start making the patch.
  3. Now we will get official EU/NA loc file.
    Select "EU/NA(PA)" as a Server. Press on "Update" tab. Press "Get Loc Files" button to download the latest EU/NA loc files (if you have a firewall then make sure that you allow Launcher to download it, or you can get it from EU/NA client directly, if you have it). When it's done you'll be able to find EU/NA loc files in "...\Launcher\BDO\RAW\EU_NA2\Loc" folder. Since we're making English patch our focus is the "languagedata_en.loc" file, but you can do the same thing with any other officially available language - just rename it to "languagedata_jp.loc" and you have the simplest English patch on your hands, with that said - we will be making a slightly more complicated patch, so you don't need to rename it (copy it to your /whatever working folder or leave it in this nested folder, it's up to you how to setup your workflow).
  4. Merging official EU/NA and official JP loc files.
    From now, until the end of this guide, we will need to switch to the Advanced tab, so press on "Advanced" tab and select "JP(PA)" as a Server, while you're at that also select "JP" in "Adv patching S" of Advanced tab.
    Now why do we want to merge EU/NA loc and JP loc? Each client can have its own server-specific text (the simplest example is XYZ event, exclusive for your server), of course EU/NA loc file doesn't contain all of the relevant text, that text missing in your patch will appear in game, usually, in Korean language provided by the devs, that might or might not be relevant and of course it won't be fixed by the official translation team in case it's not, also it goes in the other way as well - EU/NA contains text that is not needed for your client. Merging takes original file (in our case JP) and writes all of the relevant text from translation file (in our case EN) into its translation column, all of the remained missing text will appear in the game in original language (in our case JP), except for those that are missing from JP translation itself (those will be in Korean *BUNNY*, unless you'll add them yourself).
    Now that you know what merging does, let's also take a look on merging settings, before we're going to merge. Launcher gives you an option to merge in several different ways, in menu press "Preferences => BDO Patcher settings" and scroll to the bottom, where you'll see "Merging" and "Merging parallelization degree" settings, and while it's not exactly correct to put it in such way - the basic explanation is this: you can merge slowly, with the least required amount of resources (CPU cycles and RAM) or so fast, that your PC might not be able to handle it and will hang, so basically most of you should settle somewhere in between, for merging it goes from Strict => MKTS, for parallelization from 0 => X.
    In Advanced tab you can merge only the XML files, so we will need to convert both of our loc files to XML format. Press "LOC to BSS" button and select your "languagedata_jp.loc" file. In "BSS" section select "languagedata" as a BSS Converter scheme and "XML" as a format. Press "BSS ->" button and select "languagedata_jp.bss" file. Now convert "languagedata_en.loc" to XML via the same steps. Press "Load Base" button and select "languagedata_jp.xml" file, then press "Load Translation" and select "languagedata_en.xml" file, then press "Merge Data v3" button. The result of your merge can be found in "...\Launcher\BDO\out" folder in a form of 2 files: "languagedata_jp.xml" - your merged languagedata, and "languagedata_jp v3.txt" that will conveniently show you the things that remained in original language (in our case Japanese).
  5. Tweaking and improving translation. You can skip this step if you're not interested.
    At this stage you can modify and improve the resulted translation file. You can use any 3rd party software to do that. You can also convert this XML (any XML editor) file to TXT (Windows Notepad or other text editor) or XLSM (Excel) via the respective buttons in BDO Patcher's Advanced tab. Use /whatever you prefer. Your translation is in the "Translation" column of each table. Don't mess up with Index and Key columns, unless you know what you do. Before merging you can also convert your XML files to Data v2 format via "??? menu => Convert => Data v3 XML -> Data v2 XML" and then merge, resulting in a Data v2 XML, which will have a side-by-side view of original and translation text. Basically you do with it what you want to do, in the end you need to convert it back to the Data v3 XML format, before we proceed.
  6. Convert back to loc format.
    Press "-> BSS" button and select your merged/edited "languagedata_jp.xml" file. Press "BSS to LOC" button and select the resulted "languagedata_jp.bss" file. Now you have a proper simple English patch.
  7. Patching meta and PAZ files.
    We are not going to do it in this guide, but if you want to learn how to do it then read about Getting RAW files (you'll need to either edit the original extracted files, or if you want to, for example, get the respective ones from EU/NA - you'll need that client as well). You need to know what to extract and how to edit it. If you have no idea where to start you can extract everything or get the available files list by pressing "Get files list" button in the "FEX tab" (list can be found in "...\Launcher\BDO\out" folder). Few examples on what you can look at:
    • gamecommondata/binary - Korean text (BinLoc in RAW section)
    • ui_texture - UI stuff
    • ui_data/ui_html/xml - Crafting notes (Crafting Notes in RAW section)
    • sound - Audio files, including voice
    After you're done with all the editing you'll need to Repack (Advanced tab) the files. At this moment I recommend to repack using "InsertPAZ" style, "Keep" the Checksum and "Mimic" the Paz and MetaChecksum. This will all sound complicated to you, and it actually is, hence the reason why we are not doing it in this guide.
  8. Patching the game.
    Some clients allow you to patch the game manually and won't complain, but others (like JP in our case) will redownload the loc file, this is where Auto-Patcher comes in. If your client doesn't complain then you can manually replace the respective files in its folder. For Auto-Patching place your patch files in "_Adv" folder inside the game client's folder. Read JP v2.9+ Installation guide on how to use Auto-Patcher.
Once you'll setup your workflow it won't take long to adapt one of the official translations to your client, but if you'll want to translate on your own...that's where the actual challenge starts... *OnionHero*



Return to "BDO Patcher"

Who is online

Users browsing this forum: No registered users and 7 guests

Your Ad could be here.
Donate to support DoTA forum and Launcher development.