Working on v0.8

User avatar
jicsmart
Wisp
Wisp
Posts: 22
Joined: Thu 2016.07.07, 17:54
Honor: 6
Points: 559.20
Medals: 2

Re: Working on v0.8

Postby jicsmart » Tue 2018.02.06, 00:46

*THUMBUP*
Sorry,I didn't read about that.... :(
as you said :
This "New" format I designed specifically for a fast operations between set of tables or single tables with structures similar to what BDO uses.
You can use something like WinMerge to compare results quickly.

Thank you,I get it now. (just curious about merge speed compare to an old method.)

Ps. afaik no problem here. =D (screenshot for show no sign of problem)

User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Infernal
Infernal
Posts: 2413
Joined: Thu 1998.01.01, 00:00
Honor: 3090
Points: 2423439254.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 » Thu 2018.02.22, 07:13

This is a notice for all users of custom BDO Patcher schemes. The next update to dev version will bring a few changes to it:
  • Data v1:
    • Added "ExcludeFromMerge" to Actions. Allows to exclude specified values from being merged. Example:

      Code: Select all

       "WorldmapMonster": {
            "Keys": {
              "IndexKey": "^IndexKey"
            },
            "Values": {
              "MonsterName": "~MonsterName",
              "RegionName": "~RegionName",
              "Desc": "~Desc"
            },
            "Actions": {
              "AllowNullKeys": false,
              "ExcludeFromMerge": {
                "~MonsterName": true,
                "~RegionName": true
              }
            }
          }

      This will result in a merge of "~Desc" values only. In order to allow merge specify <"~RegionName": false> or don't mention it at all.
      By default <"ExcludeFromMerge": {}> will be empty.
  • Data v2:
    • Added "ExcludeFromMerge" to Actions. Allows to exclude specified values from being merged. Example:

      Code: Select all

          "Values": [
            "Original",
            "Translation",
            "Region"
          ],
          "Actions": {
            "0": {
              "AllowNullKeys": false,
              "ExcludeFromMerge": {
                "Original": true,
                "Region": true
              }
            }
          }

      This will result in a merge of "Translation" values only. In order to allow merge specify <"Region": false> or don't mention it at all.
    • Added special Actions table name - empty name "". Example:

      Code: Select all

          "Values": [
            "Original",
            "Translation",
            "Region"
          ],
          "Actions": {
            "": {
              "AllowNullKeys": false,
              "ExcludeFromMerge": {
                "Original": true,
                "Region": true
              }
            }
          }

      Empty table name means that specified actions will be applied to all tables. Those actions will be overridden by actions specified for a certain table. For example, with the addition of:

      Code: Select all

      "Actions": {
            "0": {
              "AllowNullKeys": false,
              "ExcludeFromMerge": {
                "Original": false,
                "Region": false
              }
            }
          }

      it will result in a merge of all values in table 0, but every other table will merge "Translation" values only.

I'm surprised that no one has asked for it =D
On a side note - the work on Repack is still in progress, more on that can be found there.



User avatar
LithStud
Creator
Creator
Knight
Knight
Posts: 200
Joined: Thu 2017.06.22, 16:35
Honor: 13
Points: 1374.00
BDO: Tamer
Gender: Male
: BDO RU Translator
Medals: 1

Re: Working on v0.8

Postby LithStud » Thu 2018.02.22, 16:09

hmmm i didnt even know i can do these =D to be fair still a bit confused where those schemes goes =D

User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Infernal
Infernal
Posts: 2413
Joined: Thu 1998.01.01, 00:00
Honor: 3090
Points: 2423439254.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 » Thu 2018.02.22, 17:23

LithStud wrote:hmmm i didnt even know i can do these =D to be fair still a bit confused where those schemes goes =D

THERE is a short explanation of schemes. The default scheme is basically what I use =D

There is a whole another level of control over merge with projects, which I can never find time to fix =D to the point that projects are so outdated...buzarini used a part of those features (specifically - omitting the merge of value cells with RU text in them) when projects were broken =D there was no data v2 =D maybe I'll move some of that functionality to advanced tab, after I'm done with repack, before trying to fix projects *JOKINGLY*



User avatar
LithStud
Creator
Creator
Knight
Knight
Posts: 200
Joined: Thu 2017.06.22, 16:35
Honor: 13
Points: 1374.00
BDO: Tamer
Gender: Male
: BDO RU Translator
Medals: 1

Re: Working on v0.8

Postby LithStud » Thu 2018.02.22, 23:51

well i guess i just gonna stick with my own coded tools + you launcher to do the heavy lifting of conversion and merging in changes =D

User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Infernal
Infernal
Posts: 2413
Joined: Thu 1998.01.01, 00:00
Honor: 3090
Points: 2423439254.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 2018.03.04, 22:59

Today a post about upcoming Repack features.
On a previous week I managed to add and test a repack style that creates additional PAZ file. It works perfectly fine, and is backwards-extractable, but for some reason JP client refuses to load it, I still have no idea why (maybe there's some hardcoded value in the client, that indicates paz files count or something like that). Also I expanded JP auto-patcher with the possibility of auto-patching repacked meta and paz files.
On this week I haven't done anything until today. Today I managed to modify previously added repack style to fit it into FEX and previously created UI. Also added repack style that appends existing PAZ file, but I still have to test it.

Here's a look on the Repack style in External FEX:

Code: Select all

"Repack": {
    "JP": {
      "TEST1": {
        "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"
          }
        ]
      },
      "TEST2": {
        "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"
          }
        ]
      }
    }
  }

  • Repack - indicates Repack section of FEX.
  • JP - server name.
  • TEST1 - /whatever name that will appear in advanced tab, and will be used via Projects, so make sure that all of those are unique.
  • RepackFiles - a list of files that will be used in this repacking.
  • PackedFileName - destination used by the game client.
  • FileDestination - actual path to the file that will be repacked. Relative path will use related server Repack folder (e.g. Launcher\BDO\Repack\JP). Absolute path can be specified as well (e.g. "C:\\ui_texture\\new_ui_common_forlua\\default\\questmon.dds").
  • PazNumber - number of the paz file to which file will be repacked. It can be anything from 1 to 99999. Negative numbers will result in "1". Numbers higher than 99999 will result in "99999". There's also a special number - 0, which will result in a paz file number that currently contains specified PackedFileName.
  • Compressed - if the file should be compressed. As of now compression isn't implemented, so it should be set to false.
    • True - compress. Unimplemented.
    • False - do not compress.
  • Action - will allow to repack multiple files, similarly to FEX. As of now there's only 1 action:
    • None - Performs actions with a single file specified in PackedFileName/FileDestination.
  • Style - Repack style.
    • CreatePAZ - Create a new paz file with specified paz number and files. If such paz file already exists - a backup will be made and file will be overwritten.
    • AppendPAZ - Append specified paz file with specified files. Original files will remain in paz file. Backup will be made.
    • InsertPAZ - Insert a specified files in a specified paz file. Overwrites original files. Backup will be made. Unimplemented.

Most likely I'll update the development version after the tests with AppendPAZ.
As of now files with size smaller than 1KB (1024 bytes) are not supported. Probably I'll add support for those before the update.
Implementation is currently very RAM-hungry, and will be optimized only after it'll all work as expected, so be aware of that (repacking whole client in a one go isn't advised).
It doesn't matter if you bunch all files under one checkmark or multiple, all of the checked files will be sorted into 3 categories (CreatePAZ/AppendPAZ/InsertPAZ) and will be executed in a following manner:
  1. CreatePAZ #1-99999
  2. InsertPAZ #1-99999
  3. AppendPAZ #1-99999

And before I wrap this post up - various changes (improvements) were applied to the way BDO Patcher interacts with meta file. If you'll have any troubles with the related functionality (e.g. if it works in v0.7b20, but doesn't in development version) - let me know.

That's probably everything that I wanted to mention. InsertPAZ should be treated similarly to AppendPAZ by the game client, so if there will be problems with AppendPAZ - I'll focus on solving those before I'll dive into the hassle with InsertPAZ.



User avatar
wh000wh000
NOOB
NOOB
Posts: 1
Joined: Tue 2018.03.06, 04:04
Honor: 0
Points: 2.10

Re: Working on v0.8

Postby wh000wh000 » Tue 2018.03.06, 04:08

hi kami,goodjob~, hope to donate this project to better understand bss related information, how should I donate it? Also hope to get in touch with you.

User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Infernal
Infernal
Posts: 2413
Joined: Thu 1998.01.01, 00:00
Honor: 3090
Points: 2423439254.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 » Tue 2018.03.06, 04:55

wh000wh000 wrote:hi kami,goodjob~, hope to donate this project to better understand bss related information, how should I donate it? Also hope to get in touch with you.

Regarding donation - read my reply to your PM.

Regarding contacts - I've removed your email from your post, in case you didn't intend to display it publicly. Also I don't use Skype =D
Best way to find me is to PM here on the forum, also there's a link in the forum header to our Discord channel, you can also PM me there, or mention me in the channel in order to summon me =D I'll get back to you as soon as possible.

Regarding bss files - BDO Patcher currently works only with stringtable. I have in plans to go through all of them to add appropriate schemes in order to support them, but as of now I'm working on the repack features (in case it wasn't obvious from the posts above).

P.S. If there are some specific bss files you're interested in - post a list of their names here, I'll start with those when I'll move to bss schemes. Also feel free to ask your questions regarding bss files not only in PMs but in this thread as well.



User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Infernal
Infernal
Posts: 2413
Joined: Thu 1998.01.01, 00:00
Honor: 3090
Points: 2423439254.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 » Tue 2018.03.06, 17:44

Unplanned update of the development version to address KR changes (original KR meta should be no longer detected as modified).

It also features all of the improvements mentioned in this thread after the last update.
I haven't tested AppendPAZ yet, so I do not recommend to use it.
Repack is currently implemented for JP client only, I haven't copypasted it for the other servers yet.
Be aware that JP auto-patcher update is not finalized yet and should be used for repack auto-patching with caution (make manual backups of the affected files). Single loc-file auto-patching should not be affected.

P.S. I've tried AppendPAZ and it worked as expected + JP client accepts files repacked with AppendPAZ (this means that InsertPAZ will work for JP as well).
I'll clone repacking for the other servers once I'll be done with InsertPAZ, support for file sizes smaller than 1KB and improvements of JP auto-patcher.



User avatar
KAMIKADzE
KAMIKADzE
KAMIKADzE
Infernal
Infernal
Posts: 2413
Joined: Thu 1998.01.01, 00:00
Honor: 3090
Points: 2423439254.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 2018.03.10, 21:49

Updated development version.

Added support for repack file sizes smaller than 1KB.

Improved JP auto-patcher and reworked its UI. Now you can select what you want to repack/restore (Loc/Meta/Paz). Works perfectly fine with appended paz files, but won't work with the additionally created paz files (still thinking about a good way to work with it, might end up adding some sort of informational file for auto-patcher).

I've cloned repacking for the other servers, but I haven't added InsertPAZ yet, so be aware of that.




Return to “Launcher”

Who is online

Users browsing this forum: No registered users and 1 guest