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

Working on v0.8

User avatar
Kallen
NOOB
NOOB
Posts: 3
Joined: Sun 2020.02.09, 14:42
Honor: 0
Points: 4.30

Re: Working on v0.8

Postby Kallen » Mon 2020.02.10, 03:03

KAMIKADzE wrote:
Not exactly sure to which installation instructions you're referring to. As for the Launcher installation guide, there's no such thing as it is as simple as downloading installer and installing it wherever you want. Installing English patch has nothing to do with "BSS to XML" button, which is a part of making English patch, not installing it. It seems like you've overly-confused yourself, what exactly you're trying to achieve?
And all of those questions are also completely separate from your initial one. That problem doesn't involve you doing anything wrong, but rather some program acting suspiciously.
Most likely I can help you with all of your problems, but I need to know what do you want in order to help you.


I am trying to install the English patch on Japanese client. And i got this link from Discord - viewtopic.php?t=1172 - so in this link, it says that i need the launcher to install the english patch. And it guides me here - viewtopic.php?p=2611#p2611 - So I have the patch installed, that is very easy bust starting point 3 from the instructions I get in to trouble.

User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Blood Mage
Blood Mage
Posts: 3683
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:

Re: Working on v0.8

Postby KAMIKADzE » Mon 2020.02.10, 06:48

Kallen wrote:I am trying to install the English patch on Japanese client. And i got this link from Discord - viewtopic.php?t=1172 - so in this link, it says that i need the launcher to install the english patch. And it guides me here - viewtopic.php?p=2611#p2611 - So I have the patch installed, that is very easy bust starting point 3 from the instructions I get in to trouble.

Got it. Basically you were doing everything correct, except the last part - you're following instructions on "How to use new features?", which were added 2017.09.16 (that's the stuff for people that create patches) instead of following instructions on how to install patch.
Step-by-step instructions on how to install/uninstall that patch surprisingly can be found in the main post of that patch =D were you got the patch itself (e.g.: your first link, click on the "+ Installation guide" to display it). Instructions are written in very simple and straight-forward way and shouldn't cause any confusions on your side, but in case you'll somehow encounter problems or misunderstand something (be it now or in the future) - post your questions in the relevant thread.



User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Blood Mage
Blood Mage
Posts: 3683
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:

Re: Working on v0.8

Postby KAMIKADzE » Mon 2020.03.09, 14:52

Updated the development version.

  • Changes:
    • BDO Map.
      I've locked it for now, as I don't plan to continue working on it any time soon, just to prevent unnecessary questions.
  • New:
    • BDO Patcher - Update tab.
      For now it has only 1 functionality, but it will be expanded in the future, more on that later.
      • EU/NA Server
        • Get Loc Files - Downloads latest EU/NA loc files. You will be able to find downloaded files in "...\Launcher\BDO\RAW\EU_NA\Loc" folder.

This is more of an progress update, just wanted to post about what's going on and that Launcher isn't abandoned. Basically I was busy with life, and wasn't able to find a descent amount of time to sit down and implement anything. Today's update is exactly it - today's update =D but you might also find some traces of things I worked on since the previous update. The main problem is that whenever I get to work on anything that requires a descent amount of time I just don't have that much time within a short period, so I end up implementing some of it and then a long break follows, after which I have a choice to either start implementing something else or spend a good chunk of my free time to remind myself what I did previously...probably I'll focus on something now, but not yet sure on what exactly. Some of the things in development:
  • Twitch
    Only VOD Download is in development at the moment. UI is implemented, so is the whole process. It will use VOD number or VOD url. You'll be able to change which Twitch ClientID to use for all Twitch functionality.
    Basically it's done, I just need to add some more error handling, and things of that nature.
    It'll be possible to download all ".ts" files or as a single ".ts" file (along with that I'll add command to Launcher Console that will allow you to combine .ts files on your own).
    If you wonder why all of a sudden Twitch VOD? Well there was a site that used to generate ".ts" urls but it's dead now, and even then it was kind of a pain in one place to copypasta and download all of them. There are software solutions but all of them forcefully convert stream file format to /whatever (usually to mp4 using ffmpeg). I still have no idea why they're enforcing conversion. Launcher's VOD Download will get you RAW video, and then you'll be free to convert it to whichever format with whichever program (e.g.: Handbrake).
  • Razer
    Not sure yet if I'll make it separate from Launcher executable or not (at start it will probably be a part of Launcher).
    As of now I only plan to implement loading of existing profiles/lighting for both Synapse 2 & 3 devices.
  • BDO Patcher - Update tab.
    • JP Server
      Fully-featured updater for JP client. Downloading part is completed, still need to implement unpacking and error-checking.
      Parallel downloading of files (official only 1by1), verify files (like the official one), update without any login requirements (maybe pre-updating files will be possible, not sure when they upload files during maintenance, never checked).
  • Extensions
    Pretty close to the finishing line...but I forgot where I'm at =D
    Extensions tab in Launcher for all sort of extensions.
    Extensions for File Cryptor.
    Extensions for Net Monitor.
    Extensions for Scheduler (most likely released alongside Scheduler, although not certain about that).
    Etc.

    Extensions will be encapsulated in a separate runtime (at least that's how it's planned as of now), so if they'll crash and things like that - it won't affect Launcher's and other extensions functionality. There will be some rules to what extension is supposed to do (e.g.: for File Cryptor it should encrypt/decrypt file) but at the same time there is a possibility of malicious code execution, so you'll have to be cautious of who's extension you use. I thought about giving out some extension certifications or something like that, but if there will be a dozen of extension creators each updating their extension of descent complexity at least once a month - I already won't be able to keep up, but I'll think about some ways to make extensions more secure.
  • Some BDO-related things. BSS files, PAA, PAB, PAC, PAM, PAP...slowly working on everything and nothing at the same time (mostly when I have very little amount of time to spare for Launcher and don't want to jump on to things that I mentioned above^).



User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Blood Mage
Blood Mage
Posts: 3683
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:

Re: Working on v0.8

Postby KAMIKADzE » Wed 2020.03.25, 12:21

Just a quick notice - don't expect to see JP updater in BDO Patcher any time soon, even though it's almost complete I've stopped its development completely, since JP server is migrating and there will be changes to the way client is updated, so it's kind of pointless to work on it now. Initially I've started to work on this mainly because Pmang abandoned support of Windows 7 and their updater could stop working after scheduled date update, but I guess it's not of an issue now =D . Most likely I'll redo what's required after Pearl Abyss updater launch and will finish JP updater in BDO Patcher sometime after that happens, just to have a backup plan just in case + parallel download and all of those improvement over official updater.



User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Blood Mage
Blood Mage
Posts: 3683
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:

Re: Working on v0.8

Postby KAMIKADzE » Fri 2020.04.24, 08:44

Updated the development version.

  • Games info tab in Main window
    • Added JP(PA) indications for meta and its backup.
    • Changed JP -> JP(PGO), to make it easier to distinguish for new users.
    • Reshuffled positions to put JP and RU servers in same columns, other clients kept their positions.
  • BDO Patcher (Main window menu Tools)
    • Added JP(PA) server, with its related settings in Preferences => BDO Patcher settings. It was a copypasta from previous JP server for the most part. JP(PGO) will be left for legacy. JP(PA) is the new default server.
    • Update
      • JP(PGO) Server
        • Remove PGO Traces - delete leftovers from JP(PGO) client, which are not used by the new JP(PA) client. Can be useful only to those who installed JP(PA) updater on top of JP(PGO) client. After removal JP(PGO) client will no longer be auto-detected by Launcher (you'll still be able to manually point Launcher to it, if you'll need to use your client as JP(PGO) for /whatever reason), thus reducing the consumed RAM and preventing any misuses in BDO Patcher + it'll free a bit of drive space. Use it at your own discretion.
    • FEX
      • Updated default External FEX

        Code: Select all

        {
          "FEX": {
            "JP": {
              "JP Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_japan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_japan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "KR Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "EU/NA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_northamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_northamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "RU Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_russia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_russia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "TW Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_taiwan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_taiwan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SEA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southeastasia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southeastasia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "Crafting Notes": {
                "PackedFileName": "ui_data/ui_html/xml",
                "RAWDestinationFileName": "\\Crafting Notes",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              },
              "BinLoc": {
                "PackedFileName": "gamecommondata/binary",
                "RAWDestinationFileName": "\\BinLoc",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              }
            },
            "KR": {
              "JP Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_japan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_japan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "KR Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "EU/NA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_northamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_northamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "RU Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_russia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_russia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "TW Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_taiwan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_taiwan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SEA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southeastasia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southeastasia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "Crafting Notes": {
                "PackedFileName": "ui_data/ui_html/xml",
                "RAWDestinationFileName": "\\Crafting Notes",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              },
              "BinLoc": {
                "PackedFileName": "gamecommondata/binary",
                "RAWDestinationFileName": "\\BinLoc",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              }
            },
            "EUNA": {
              "JP Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_japan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_japan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "KR Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "EU/NA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_northamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_northamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "RU Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_russia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_russia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "TW Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_taiwan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_taiwan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SEA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southeastasia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southeastasia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "Crafting Notes": {
                "PackedFileName": "ui_data/ui_html/xml",
                "RAWDestinationFileName": "\\Crafting Notes",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              },
              "BinLoc": {
                "PackedFileName": "gamecommondata/binary",
                "RAWDestinationFileName": "\\BinLoc",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              }
            },
            "RU": {
              "JP Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_japan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_japan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "KR Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "EU/NA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_northamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_northamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "RU Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_russia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_russia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "TW Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_taiwan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_taiwan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SEA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southeastasia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southeastasia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "Crafting Notes": {
                "PackedFileName": "ui_data/ui_html/xml",
                "RAWDestinationFileName": "\\Crafting Notes",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              },
              "BinLoc": {
                "PackedFileName": "gamecommondata/binary",
                "RAWDestinationFileName": "\\BinLoc",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              }
            },
            "TW": {
              "JP Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_japan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_japan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "KR Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "EU/NA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_northamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_northamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "RU Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_russia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_russia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "TW Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_taiwan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_taiwan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SEA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southeastasia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southeastasia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "Crafting Notes": {
                "PackedFileName": "ui_data/ui_html/xml",
                "RAWDestinationFileName": "\\Crafting Notes",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              },
              "BinLoc": {
                "PackedFileName": "gamecommondata/binary",
                "RAWDestinationFileName": "\\BinLoc",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              }
            },
            "SA": {
              "JP Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_japan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_japan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "KR Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "EU/NA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_northamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_northamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "RU Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_russia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_russia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "TW Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_taiwan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_taiwan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SEA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southeastasia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southeastasia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "Crafting Notes": {
                "PackedFileName": "ui_data/ui_html/xml",
                "RAWDestinationFileName": "\\Crafting Notes",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              },
              "BinLoc": {
                "PackedFileName": "gamecommondata/binary",
                "RAWDestinationFileName": "\\BinLoc",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              }
            },
            "TR": {
              "JP Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_japan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_japan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "KR Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "EU/NA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_northamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_northamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "RU Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_russia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_russia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "TW Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_taiwan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_taiwan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SEA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southeastasia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southeastasia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "Crafting Notes": {
                "PackedFileName": "ui_data/ui_html/xml",
                "RAWDestinationFileName": "\\Crafting Notes",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              },
              "BinLoc": {
                "PackedFileName": "gamecommondata/binary",
                "RAWDestinationFileName": "\\BinLoc",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              }
            },
            "SEA": {
              "JP Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_japan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_japan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "KR Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "EU/NA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_northamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_northamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "RU Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_russia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_russia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "TW Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_taiwan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_taiwan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SEA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southeastasia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southeastasia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "Crafting Notes": {
                "PackedFileName": "ui_data/ui_html/xml",
                "RAWDestinationFileName": "\\Crafting Notes",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              },
              "BinLoc": {
                "PackedFileName": "gamecommondata/binary",
                "RAWDestinationFileName": "\\BinLoc",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              }
            },
            "TH": {
              "JP Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_japan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_japan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "KR Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "EU/NA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_northamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_northamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "RU Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_russia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_russia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "TW Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_taiwan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_taiwan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SEA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southeastasia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southeastasia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "Crafting Notes": {
                "PackedFileName": "ui_data/ui_html/xml",
                "RAWDestinationFileName": "\\Crafting Notes",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              },
              "BinLoc": {
                "PackedFileName": "gamecommondata/binary",
                "RAWDestinationFileName": "\\BinLoc",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              }
            },
            "RU2": {
              "JP Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_japan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_japan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "KR Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "EU/NA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_northamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_northamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "RU Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_russia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_russia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "TW Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_taiwan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_taiwan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SEA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southeastasia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southeastasia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "Crafting Notes": {
                "PackedFileName": "ui_data/ui_html/xml",
                "RAWDestinationFileName": "\\Crafting Notes",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              },
              "BinLoc": {
                "PackedFileName": "gamecommondata/binary",
                "RAWDestinationFileName": "\\BinLoc",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              }
            },
            "JP2": {
              "JP Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_japan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_japan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "KR Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "EU/NA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_northamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_northamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "RU Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_russia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_russia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "TW Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_taiwan.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_taiwan.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southamerica.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southamerica.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "SEA Watermark": {
                "PackedFileName": "ui_texture/new_ui_common_forlua/widget/watermark/screenshot_watermark01_southeastasia.dds",
                "RAWDestinationFileName": "\\ui_texture\\new_ui_common_forlua\\widget\\watermark\\screenshot_watermark01_southeastasia.dds",
                "SupportedStyles": "Force, Repack",
                "Action": "None"
              },
              "Crafting Notes": {
                "PackedFileName": "ui_data/ui_html/xml",
                "RAWDestinationFileName": "\\Crafting Notes",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              },
              "BinLoc": {
                "PackedFileName": "gamecommondata/binary",
                "RAWDestinationFileName": "\\BinLoc",
                "SupportedStyles": "Force, Repack",
                "Action": "StartsWith"
              }
            }
          },
          "Repack": {
            "JP": {
              "JPKCreate": {
                "RepackFiles": [
                  {
                    "PackedFileName": "ui_texture/new_ui_common_forlua/window/chatting/chatting_btn_01.dds",
                    "FileDestination": "\\ui_texture\\new_ui_common_forlua\\window\\chatting\\chatting_btn_01.dds",
                    "PazNumber": 99999,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "CreatePAZ"
                  },
                  {
                    "PackedFileName": "ui_texture/new_ui_common_forlua/window/chatting/chatting_btn_02.dds",
                    "FileDestination": "\\ui_texture\\new_ui_common_forlua\\window\\chatting\\chatting_btn_02.dds",
                    "PazNumber": 99999,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "CreatePAZ"
                  },
                  {
                    "PackedFileName": "ui_texture/new_ui_common_forlua/default/questmon.dds",
                    "FileDestination": "\\ui_texture\\new_ui_common_forlua\\default\\questmon.dds",
                    "PazNumber": 99999,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "CreatePAZ"
                  },
                  {
                    "PackedFileName": "ui_data/ui_html/xml/jp/string.xml",
                    "FileDestination": "\\ui_data\\ui_html\\xml\\jp\\string.xml",
                    "PazNumber": 99999,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "CreatePAZ"
                  }
                ]
              },
              "JPKAppend": {
                "RepackFiles": [
                  {
                    "PackedFileName": "ui_texture/new_ui_common_forlua/window/chatting/chatting_btn_01.dds",
                    "FileDestination": "\\ui_texture\\new_ui_common_forlua\\window\\chatting\\chatting_btn_01.dds",
                    "PazNumber": 0,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "AppendPAZ"
                  },
                  {
                    "PackedFileName": "ui_texture/new_ui_common_forlua/window/chatting/chatting_btn_02.dds",
                    "FileDestination": "\\ui_texture\\new_ui_common_forlua\\window\\chatting\\chatting_btn_02.dds",
                    "PazNumber": 0,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "AppendPAZ"
                  },
                  {
                    "PackedFileName": "ui_texture/new_ui_common_forlua/default/questmon.dds",
                    "FileDestination": "\\ui_texture\\new_ui_common_forlua\\default\\questmon.dds",
                    "PazNumber": 0,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "AppendPAZ"
                  },
                  {
                    "PackedFileName": "ui_data/ui_html/xml/jp/string.xml",
                    "FileDestination": "\\ui_data\\ui_html\\xml\\jp\\string.xml",
                    "PazNumber": 0,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "AppendPAZ"
                  }
                ]
              }
            },
            "JP2": {
              "JPKCreate": {
                "RepackFiles": [
                  {
                    "PackedFileName": "ui_texture/new_ui_common_forlua/window/chatting/chatting_btn_01.dds",
                    "FileDestination": "\\ui_texture\\new_ui_common_forlua\\window\\chatting\\chatting_btn_01.dds",
                    "PazNumber": 99999,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "CreatePAZ"
                  },
                  {
                    "PackedFileName": "ui_texture/new_ui_common_forlua/window/chatting/chatting_btn_02.dds",
                    "FileDestination": "\\ui_texture\\new_ui_common_forlua\\window\\chatting\\chatting_btn_02.dds",
                    "PazNumber": 99999,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "CreatePAZ"
                  },
                  {
                    "PackedFileName": "ui_texture/new_ui_common_forlua/default/questmon.dds",
                    "FileDestination": "\\ui_texture\\new_ui_common_forlua\\default\\questmon.dds",
                    "PazNumber": 99999,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "CreatePAZ"
                  },
                  {
                    "PackedFileName": "ui_data/ui_html/xml/jp/string.xml",
                    "FileDestination": "\\ui_data\\ui_html\\xml\\jp\\string.xml",
                    "PazNumber": 99999,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "CreatePAZ"
                  }
                ]
              },
              "JPKAppend": {
                "RepackFiles": [
                  {
                    "PackedFileName": "ui_texture/new_ui_common_forlua/window/chatting/chatting_btn_01.dds",
                    "FileDestination": "\\ui_texture\\new_ui_common_forlua\\window\\chatting\\chatting_btn_01.dds",
                    "PazNumber": 0,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "AppendPAZ"
                  },
                  {
                    "PackedFileName": "ui_texture/new_ui_common_forlua/window/chatting/chatting_btn_02.dds",
                    "FileDestination": "\\ui_texture\\new_ui_common_forlua\\window\\chatting\\chatting_btn_02.dds",
                    "PazNumber": 0,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "AppendPAZ"
                  },
                  {
                    "PackedFileName": "ui_texture/new_ui_common_forlua/default/questmon.dds",
                    "FileDestination": "\\ui_texture\\new_ui_common_forlua\\default\\questmon.dds",
                    "PazNumber": 0,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "AppendPAZ"
                  },
                  {
                    "PackedFileName": "ui_data/ui_html/xml/jp/string.xml",
                    "FileDestination": "\\ui_data\\ui_html\\xml\\jp\\string.xml",
                    "PazNumber": 0,
                    "Compressed": false,
                    "Action": "None",
                    "Style": "AppendPAZ"
                  }
                ]
              }
            }
          },
          "Encryption": {
            "JP": {
              "dbss": {
                "FilesEncryption": [
                  {
                    "PackedFileName": ".dbss",
                    "Action": "EndsWith",
                    "Encryption": "None"
                  }
                ]
              }
            },
            "KR": {
              "dbss": {
                "FilesEncryption": [
                  {
                    "PackedFileName": ".dbss",
                    "Action": "EndsWith",
                    "Encryption": "None"
                  }
                ]
              }
            },
            "EUNA": {
              "dbss": {
                "FilesEncryption": [
                  {
                    "PackedFileName": ".dbss",
                    "Action": "EndsWith",
                    "Encryption": "None"
                  }
                ]
              }
            },
            "RU": {
              "dbss": {
                "FilesEncryption": [
                  {
                    "PackedFileName": ".dbss",
                    "Action": "EndsWith",
                    "Encryption": "None"
                  }
                ]
              }
            },
            "TW": {
              "dbss": {
                "FilesEncryption": [
                  {
                    "PackedFileName": ".dbss",
                    "Action": "EndsWith",
                    "Encryption": "None"
                  }
                ]
              }
            },
            "SA": {
              "dbss": {
                "FilesEncryption": [
                  {
                    "PackedFileName": ".dbss",
                    "Action": "EndsWith",
                    "Encryption": "None"
                  }
                ]
              }
            },
            "TR": {
              "dbss": {
                "FilesEncryption": [
                  {
                    "PackedFileName": ".dbss",
                    "Action": "EndsWith",
                    "Encryption": "None"
                  }
                ]
              }
            },
            "SEA": {
              "dbss": {
                "FilesEncryption": [
                  {
                    "PackedFileName": ".dbss",
                    "Action": "EndsWith",
                    "Encryption": "None"
                  }
                ]
              }
            },
            "TH": {
              "dbss": {
                "FilesEncryption": [
                  {
                    "PackedFileName": ".dbss",
                    "Action": "EndsWith",
                    "Encryption": "None"
                  }
                ]
              }
            },
            "RU2": {
              "dbss": {
                "FilesEncryption": [
                  {
                    "PackedFileName": ".dbss",
                    "Action": "EndsWith",
                    "Encryption": "None"
                  }
                ]
              }
            },
            "JP2": {
              "dbss": {
                "FilesEncryption": [
                  {
                    "PackedFileName": ".dbss",
                    "Action": "EndsWith",
                    "Encryption": "None"
                  }
                ]
              }
            }
          }
        }
    • Minor changes and improvement.



User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Blood Mage
Blood Mage
Posts: 3683
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:

Re: Working on v0.8

Postby KAMIKADzE » Sun 2020.04.26, 09:15

So I've finally looked into how the new JP updater/client works. Let's firstly take a look on the phases:
  • Starting game Launcher/Updater
  • Launcher/Updater checks its version. If the version is not up to date - it'll start updating itself.
  • Launcher/Updater checks loc file version. If the version is not up to date - it'll redownload the loc file. Note: it does not verify the integrity of the loc file, so Auto-Patcher is not required for patching loc file.
  • Launcher/Updater checks client version and compares it to the meta version. If the version is not up to date - it'll start downloading all patches starting from current meta+1 up to the latest version and then patch them 1 by 1 in order. Note: once again it does not verify the integrity of any files.
  • Starting the game makes Launcher/Updater to quickly recheck version once again, just in case.
  • Protection is verified and started. It'll update itself if needed.
  • Game's exe file is verified and started.
  • Game loads everything it needs to RAM.
  • You see the starting screen.
  • After you press "Start" button in the game it'll verify the integrity of meta file loaded into the RAM. <- this is the main problem.
All verifications are done using hash stored on the Pearl Abyss' server.
Loc file and Paz files are never being verified in this whole process, so they can be patched freely, but since meta is checked after the game start (from RAM) it complicates things a little bit, as meta contains all pointers to files stored in Paz files, that means that even if technically you can repack Paz file, in order for that to work with unpatched meta - all patched files should be of the same size as originals and patched with InsertPAZ (which by the way I never got around to finishing =D ) method, otherwise the game will be broken.

As of now only 3 ways of properly patching the game (apart of loc file) come to my mind, and all of them are pretty edgy:
  • Spoof the meta hash, by replacing the net packets.
  • Patch meta in game's memory.
  • Replace meta hash in game's memory? No idea if even possible.
All of that^ should definitely trigger the protection. If you have any other ideas - feel free to suggest them.

P.S. I think that I'll probably go down the 1st route, albeit in a bit different path and will look at where that'll lead me. Basically I want to make game asking Launcher for the hash instead of PA server. When? As always - no idea, depends on my free time =D



User avatar
Margo
Acolyte
Acolyte
Posts: 46
Joined: Thu 2016.10.06, 09:43
Honor: 5
Points: 164.60
BDO: Tamer
: Tester
Medals: 1

Re: Working on v0.8

Postby Margo » Mon 2020.04.27, 05:03

I have removed my previous post, thank you for clarifications *THUMBUP*

User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Blood Mage
Blood Mage
Posts: 3683
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:

Re: Working on v0.8

Postby KAMIKADzE » Mon 2020.04.27, 05:06

Margo » Mon 2020.04.27, 05:03 wrote:I have removed my previous post, thank you for clarifications *THUMBUP*

Noticed that and removed my explanation as well. Next time just use PM, if you don't want to drag conversations like that publicly, and np.



User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Blood Mage
Blood Mage
Posts: 3683
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:

Re: Working on v0.8

Postby KAMIKADzE » Fri 2020.05.01, 06:24

Updated the development version.

  • Games info tab in Main window
    • Renewed JP(PA) indications.
      Reworked displayed Loc file info, added patcher info and server info. For more detailed information visit the updated Indication of BDO Meta post.
      You can use new server indications to know if there are any updates before starting the game patcher (might be useful for those who don't keep copies of unofficial patches, etc.). I also plan to add an option to check those for users without JP client.
  • Checksum (Main window menu Tools)
    Finally unlocked for use. This tool can be used to identify file/text and its integrity. It allows you to make sure that whichever file/text you received from someone was not tampered with by 3rd party. For example from now on I'll be posting checksum info of Launcher's installation file, by using Checksum tool you will be able to verify that this installation file was not modified by file hosting company and/or whomever else (if for example you received it from friend, to save the cost of your limited bandwidth) + it was not broken by network packets loss, sun activity, EMP and whatnot. Hashing algorithms can also be used for one-way encryption of passwords, albeit not intended in this implementation (no salt input present at the moment, but I might add that in the future).
    • Menu.
      Copypasta from other tools. Has standard window and key binding settings.
    • File/Text
      You can either select a file ("Select" button) in File tab or write/paste some text in Text tab, for which you want to calculate checksum.
    • Algorithm
      Here you can select algorithms to be used in calculation. All checked algorithms will be calculated and their results displayed in output box. The more algorithms - the more strong and secure the result, but the longer time it will be calculated.
      More algorithms will be added in the future + it will be possible to add extra algorithms with upcoming extensions.
    • Calculate button
      After you're done with selecting file/inputting text and selecting algorithms - press Calculate button to calculate checksum.
    • Results
      Result of calculation will be displayed in the bottom-left part of the window. It'll display a file path or part of text (for File/Text respectively) for which checksum is displayed and in the text box the checksum itself.
      Checksum is always the same for the same file/text.
  • Minor changes and improvement.



User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Blood Mage
Blood Mage
Posts: 3683
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:

Re: Working on v0.8

Postby KAMIKADzE » Sat 2020.05.09, 04:21

Updated the development version.

  • AOTP (Main window menu Tools)
    Authentication One Time Password. Opened for testing and only that, I do NOT recommend to use it for anything remotely important at the moment, I mean...technically at its current state it has the same level of protection as most OTP clients on the market =D but I plan to add few protection layers on top (memory protection of secrets, multi-layered encryption of storage, etc.), basically it'll be on top of security chart after I'll be done with it, but for now use it only for testing, or on a different machine, than the one you enter the password on. Now back to explanation...what exactly is this thing? It generates One Time Passwords using open standards (currently supports only 6238, which is a main industry standard and used by most things that have OTP, like Black Desert).
    How to test? Open AOTP, then in menu click on "File -> Generate Test OTP File", this will generate formatted example for you to play with ("Launcher\test.otp"; we'll take a look at it a bit later), close AOTP window and open it again to have a view on what it does. "test.otp" file can be opened with any text editor to make changes. Do note that this whole procedure was designed purely for testing, in finished AOTP it won't be possible to edit saved file in text editor, and current test.otp will be unusable.
    Now when you have both AOTP window and test.otp file opened, let's take a look on what you can edit in test.otp file:
    • "Test name #1" - Name of the AOTP. You can name it however you want, but names should be unique (e.g.: "Test name #2", "Test name #3", etc.).
    • MyType - Type of AOTP. As I've mentioned it previously, currently only 1 type is available - "OTP6238".
    • Secret - Unique secret key. This is always provided to you by the company that uses OTP6238, be it in a form of text or QR Code (just another way to represent that text). As of now AOTP supports only text input, so you'll have to use 3rd party software to read QR Code, if only that was provided.
    • Duration - Time, in seconds, for which OTP is valid. Standard is 30 seconds, so if timing was not specified - use 30.
    • Digits - Amount of OTP digits. It can be set from 1 to 9 (Launcher will auto-correct higher and lower numbers). Recommended standard is 6 - 8, so there is no standard standard, but 6 is used by most OTP clients. Obviously the more digits - the more secure. Below 5 is terrible.
    • DisplayOTP - true/false.
      true - display OTP. Means that you'll be able to visually see OTP codes on your screen.
      false - do not display OTP. You'll see "***" instead of OTP codes. Can be useful if you think/know that someone can spy/look at your monitor, be it using software or physically.
    • CopyToClipboardOnClick - true/false.
      true - copy OTP code to your clipboard, when you click on it. You can then paste it wherever you need it. Do note that it'll NOT be auto-cleared, so make sure to copy something else, after you'll be done with pasting it, just to remove it from clipboard (I'll add a separate button for that in the future).
      false - do nothing, when you click on OTP code. Not recommended to combine this with turned off DisplayOTP.
    • AutoCopyToClipboard - true/false.
      true - automatically copy OTP code to your clipboard, each time this OTP is refreshed. Totally not recommended, but may be used for super ease of use, just don't put true on multiple, as Launcher will not magically know which one you need at the moment.
      false - do nothing. Recommended.
    In AOTP window itself you'll see 4 columns:
    • Name - name you've given to that AOTP.
    • OTP - current OTP Code.
    • Time Left - time left until OTP code becomes invalid.
      As of now Time Left is refreshed with a period of 0.5 sec, to reduce strain on your hardware, so you might see some hiccups, but in the future it'll be configurable, and you'll be able to either increase or decrease it to your liking.
    • Next OTP - next OTP Code. In case you'll see those 5 remained seconds (or how much is not enough for you to input that code wherever you need it) - don't waste them, just copypasta or start inputting the next OTP code, which will be valid in 5 seconds ;) .
    Layout and everything else is a subject to change, so don't get overly-used to how things work/look now. Feel free to leave your feedback or suggestions, but for now I'm mainly interested if everything works fine on different machines.
    If you would like to test it, but don't know how, as you have all your OTPs set up with another OTP client - simply search for it on the web, most likely it has those "Secrets" (and Secret is the only thing you really need) stored in plain format. For example one of the popular ones - google authenticator stores all your secrets in "/data/data/com.google.android.apps.authenticator2/databases/databases", an SQLite 3 database, and you can view it even as simple text file.
    For BDO JP correct settings will be Type: OTP6238, Duration: 30, Digits: 6, the rest is up to you.
    Once again - I do NOT recommend to use it for anything important, especially banks and things of that nature. Even after I'll add all of the protection layers - there will always be holes if an attacker has direct access to your PC, so a good practice will always be to use OTP client on another device, than the one you use to input OTP.
  • BDO Patcher (Main window menu Tools)
    • Minor improvements.
  • Download Manager (Main window tab)
    You might notice some traces of the upcoming Download Manager, both in main window and Launcher settings. Don't bother changing those settings, they won't save.
    Download Manager is basically ready, to an extent...except its UI =D
    First release of Download Manager will probably include its basic functionality - add/view/delete/pause/resume download, etc. Initially it was developed mainly with Launcher itself in mind, but why not add this simple functionality to it as well, moreover it will be a good testing ground. Later, after that, I plan to move already existing downloads to it slowly, hence the reason why I decided to infuse it into the main window, instead of adding a separate one, as all of the Launcher's parts will be using it as a central download place, where you'll be able to limit Launcher's download speed, for it to not bother you. There will be a lot of reworks required to meet that standard, so it might take some time~~~ For a simple example: "Get Loc Files" in Update tab of EU/NA server - you'll be able to pause or cancel it, you'll also be able to limit its speed and it'll retain its post-download unpacking task, even if you'll decide to pause it, turn off your computer and then later on resume it all, that is if the file on the server is still there and still the same of course.

Other than that I'm also thinking about adding Shai music <-> midi converter =D
As usual - no ETA for anything and everything mentioned above^
P.S. Oh, and almost forgot - Profiles incoming. Not exactly sure how it'll turn out, but to make proper protection for AOTP I'll need some sort of user input (Password), this made me thinking that it's about time to. What I plan so far is:
  • Username
  • Password
  • 2nd Password? Not sure.
  • Icon
Launcher will store encrypted data that contains Usernames (profile names), and that's it, passwords will never be stored, so you'll have to remember those, as they'll not be recoverable (you have plenty of time to come up with one =D ). Create/Login. Profile will store data such as AOTP configurations. Not sure if there's any point in moving overall settings to profiles, it's not like multiple people will be using Launcher on the same PC and more like 1 person will use multiple profiles to split important data. Anyway, at the current state it's all mostly just plans, but feel free to give your suggestions.




Return to "Launcher"

Who is online

Users browsing this forum: No registered users and 6 guests

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