Skip to content

[MOD] DLC Builder for Enhanced Edition v2.x games

2

Comments

  • argent77argent77 Member Posts: 3,431
    @StefanO The error could have been triggered by a missing file existence check. Can you replace "DlcBuilder/lib/dlc.tph" with the file attached to this post and try again?
  • StefanOStefanO Member Posts: 346
    Sure.

    With the new dlc.tph the build completes without errors.

  • StefanOStefanO Member Posts: 346
    Does (or will) DLC builder work with EET?
  • argent77argent77 Member Posts: 3,431
    EET is officially supported by the DLC Builder. It should theoretically also work with PST:EE. However, the game check doesn't include it yet (because of missing WeiDU support).

    Btw, I would strongly recommend to use the latest development version of DLC Builder. It contains many new features, including an improved detection of mod-added BIFF files.
    Grammarsalad
  • StefanOStefanO Member Posts: 346
    Great news.
  • StefanOStefanO Member Posts: 346
    argent77 said:

    @StefanO The error could have been triggered by a missing file existence check. Can you replace "DlcBuilder/lib/dlc.tph" with the file attached to this post and try again?

    Is this fix included in the latest development version?
  • argent77argent77 Member Posts: 3,431
    StefanO said:

    argent77 said:

    @StefanO The error could have been triggered by a missing file existence check. Can you replace "DlcBuilder/lib/dlc.tph" with the file attached to this post and try again?

    Is this fix included in the latest development version?
    Yes.
  • StefanOStefanO Member Posts: 346
    I'm toying around with an EET installation and the DlcBuilder. Installing the DlcBuilder on an otherwise unmodded EET generates three DLC files (total size 3 GB), that can be used with an unmodded bg2ee elsewhere. EET installation made easy. Very Cool.

    Are there any known drawbacks or limitations?
  • The user and all related content has been deleted.
  • argent77argent77 Member Posts: 3,431
    There shouldn't be any real drawbacks except that DLC'ed games can't be modded further very easily. You would have to "merge" the DLCs with the main game before installing more mods. (Not sure if modmerge is capable of merging more than just the official SoD DLC.)
  • StefanOStefanO Member Posts: 346
    With the latest MacOS High Sierra (released on monday) Dlcbuilder failed at the end:

    Scanning the drive: 5 folders, 22 files, 103993209 bytes (100 MiB) Creating archive: workshop/RandomPartyDominic-01.mod Items to compress: 27 Files read from disk: 22 Archive size: 103996181 bytes (100 MiB) Everything is Ok fatal error: still in list runtime stack: runtime.throw(0x11818b) /usr/local/go/src/runtime/panic.go:491 +0x83 fp=0xbffff950 sp=0xbffff938 MHeap_AllocSpanLocked(0x1264e0, 0x1, 0x0) /usr/local/go/src/runtime/mheap.c:349 +0x282 fp=0xbffff970 sp=0xbffff950 mheap_alloc(0x1264e0, 0x1, 0xb, 0x0, 0x0) /usr/local/go/src/runtime/mheap.c:190 +0xec fp=0xbffff984 sp=0xbffff970 runtime.MHeap_Alloc(0x1264e0, 0x1, 0xb, 0x100, 0xd062) /usr/local/go/src/runtime/mheap.c:240 +0x54 fp=0xbffff9a4 sp=0xbffff984 MCentral_Grow(0x12a9d4, 0x0) /usr/local/go/src/runtime/mcentral.c:197 +0x65 fp=0xbffff9dc sp=0xbffff9a4 runtime.MCentral_CacheSpan(0x12a9d4, 0x0) /usr/local/go/src/runtime/mcentral.c:85 +0x11c fp=0xbffffa00 sp=0xbffff9dc runtime.MCache_Refill(0x144000, 0xb, 0x0) /usr/local/go/src/runtime/mcache.c:90 +0x77 fp=0xbffffa14 sp=0xbffffa00 runtime.mcacheRefill_m() /usr/local/go/src/runtime/malloc.c:368 +0x42 fp=0xbffffa24 sp=0xbffffa14 runtime.onM(0xda828) /usr/local/go/src/runtime/asm_386.s:282 +0x70 fp=0xbffffa28 sp=0xbffffa24 runtime.mallocgc(0xa0, 0xb1060, 0x0, 0x11c0a0) /usr/local/go/src/runtime/malloc.go:178 +0x688 fp=0xbffffa80 sp=0xbffffa28 runtime.newobject(0xb1060, 0x100000) /usr/local/go/src/runtime/malloc.go:353 +0x42 fp=0xbffffa94 sp=0xbffffa80 runtime.newG(0x144000) /usr/local/go/src/runtime/proc.go:233 +0x22 fp=0xbffffaa0 sp=0xbffffa94 allocg(0x11bfa0) /usr/local/go/src/runtime/proc.c:925 +0x1b fp=0xbffffaa8 sp=0xbffffaa0 runtime.malg(0x8000, 0x11c0a0) /usr/local/go/src/runtime/proc.c:2106 +0x1b fp=0xbffffac0 sp=0xbffffaa8 runtime.mpreinit(0x11c2c0) /usr/local/go/src/runtime/os_darwin.c:137 +0x23 fp=0xbffffacc sp=0xbffffac0 mcommoninit(0x11c2c0) /usr/local/go/src/runtime/proc.c:201 +0xb2 fp=0xbffffae8 sp=0xbffffacc runtime.schedinit() /usr/local/go/src/runtime/proc.c:138 +0x46 fp=0xbffffb00 sp=0xbffffae8 runtime.rt0_go(0xbffffb90, 0xbffffb58, 0x203427, 0x1000, 0x0, 0x2, 0xbffffb90, 0xbffffb9c, 0xbffffbf4, 0xbffffb7c, ...) /usr/local/go/src/runtime/asm_386.s:100 +0xed fp=0xbffffb04 sp=0xbffffb00 Cleaning up temporary data... Creating 1 directory Copying 1 file ... Creating 1 directory Creating 1 directory Creating 1 directory Creating 1 directory SUCCESSFULLY INSTALLED Build DLC archive -> Install DLC as *.mod in "workshop" folder (recommended) Press ENTER to exit.

    The error messages are generated by the centralfix tool.

    (Why is centralfix called on OSX at all?). Anyway, the problem was solved after recompiling centralfix on High Sierra. The new binary is attached to this post.




  • The user and all related content has been deleted.
  • argent77argent77 Member Posts: 3,431
    StefanO said:

    (Why is centralfix called on OSX at all?). Anyway, the problem was solved after recompiling centralfix on High Sierra. The new binary is attached to this post.

    Thanks for the new binary.

    Centralfix was primarily just a precaution to ensure having a working DLC file. The included 7-zip binary should already create compatible archives by its own, but I could only test it effectively on Windows.

    I can disable centralfix temporarily in the next beta (and keep it that way when nobody complains).

    Anyone have any idea whether and how this can work with the iOS version of the game?

    I have no experience with the games on iOS, but judging from this post it should be possible to install DLCs by simply packing them into zip files with .(bg1|bg2|iwd)data extension. The bigger problem is probably how to export the original TLK file from iOS in the first place, so that it can be updated by mods.
    _Luke_
  • argent77argent77 Member Posts: 3,431
    I have updated the mod to version 4.0-beta4. Download link in first post has been updated.

    Notable changes are:
    - WeiDU updated to v242
    - Removed centralfix pass from DLC generation since 7zip should already create compatible archives

    Please let me know how it works.
  • StefanOStefanO Member Posts: 346
    Works for me.

    Thanks for the quick response.
    argent77
  • _Luke__Luke_ Member, Mobile Tester Posts: 1,535
    edited September 2017

    Anyone have any idea whether and how this can work with the iOS version of the game?

    I tried the following without success :( ..... I installed on my Mac the following mods (BG2:EE): LeUI and 4 custom sound sets with subtitles. Then I used the DlcBuilder:
    1. I selected option number 2: it created a dlc folder containing a zip file with my mod setup. After that, I applied the standard procedure: I zipped the folder (dlc.zip), renamed it to dlc.bg2data and opened in BG2:EE (iOS version) -> the file is not used by the game.
    2. I selected option number 3: it created a zip file (I chose the name "test", so test.zip) containing my mod setup. After that, I applied the standard procedure: I renamed it to test.bg2data and opened in BG2:EE (iOS version) -> the file is not used by the game
    3. I selected option number 3: it created a zip file (I chose the name "test", so test.zip) containing my mod setup. After that, I applied the standard procedure: I renamed it to test.bg2data and opened in BG2:EE (iOS version) -> the file is not used by the game.
    Am I doing something wrong? Or is it just impossible because of the issues during the exportation of the TLK file from iOS?
  • [Deleted User][Deleted User] Posts: 0
    edited September 2017
    The user and all related content has been deleted.
  • argent77argent77 Member Posts: 3,431
    edited September 2017

    Removing CentralFix seems like it might be a mistake. Scott Brooks originally described CentralFix as a way to get the iOS game to recognize dialog.tlk. Sound sets exist in the same place IIRC - inside /lang - so if CentralFix was/is necessary for dialog.tlk to be modified, then maybe it's also necessary for sound sets to be modified. Just a guess.

    Not sure about this. From what I see centralfix attempts to normalize the central directory of a zip file. Afaik, 7-zip (with the parameters used by DLC Builder) does the same.

    If you want to make sure, you can run centralfix manually after the dlc archive has been created:
    ./centralfix dlc_archive.zip
    If it prints something like "Local headers match central directory", then the dlc file is already compatible with the game.

    The official word on adding files to the iOS game is that /lang is not one of the folders we can deposit files stuff into. We can rename .zip archives to .bg2data,* .bg2override, .bg2portraits, etc., but NOT to .bg2lang. Beamdog specifically said not to put subfolded hierarchies in these .zip files, the app will not handle them correctly.
    That restriction shouldn't really apply to our situation since .bg2data file should only contain a single DLC file. The DLC file itself is handled by the game as long as it can be found in one of the supported DLC folders.
  • StefanOStefanO Member Posts: 346
    If you use a DLC on MacOS the dialog.tlk file in the lang/en folder isn't changed at all. Same on Windows.

    Perhaps the same is true for IOS?
  • The user and all related content has been deleted.
  • _Luke__Luke_ Member, Mobile Tester Posts: 1,535
    It would be nice if you @argent77 could borrow an iOS device from a friend (or buy one) in order to do some testing..... I mean, you know lots of things about modding, so maybe you can figure out how to mod the iOS version of the game.....
  • argent77argent77 Member Posts: 3,431
    The issue here is more about iOS internals and what options the games are providing to access game resources.

    An article from the devs regarding how to mod games on mobile devices would be a great help. ( @JuliusBorisov That might be a good idea for a Beamblog. )
    StefanOtbone1JuliusBorisov_Luke_
  • JuliusBorisovJuliusBorisov Member, Administrator, Moderator, Developer Posts: 22,714
    Apple doesn't like modifiable apps, so while the idea of such an article is indeed good, it's not feasible, unfortunately.
  • PaulaMigratePaulaMigrate Member Posts: 1,201
    A question on usage:
    I intend to create a DLC from an EET game. The game contains additional movie files in the BG2EE part.
    BG2EE/movies/something.wbm
    What do I need to put into the *working* folder in order to jave those files included into the DLC?
  • StefanOStefanO Member Posts: 346
    When you "install" the mod you will be asked where to store the DLC archive. Your installation isn't changed by the "install".
  • argent77argent77 Member Posts: 3,431

    A question on usage:
    I intend to create a DLC from an EET game. The game contains additional movie files in the BG2EE part.
    BG2EE/movies/something.wbm
    What do I need to put into the *working* folder in order to jave those files included into the DLC?

    DlcBuilder should detect everything that is installed by regular WeiDU commands. Only stuff installed by batch files, etc. (that bypasses WeiDU's backup logs) has to be listed in a text file, so DlcBuilder knows about it (see more details and examples in the readme). There shouldn't exist many mods anymore that do platform-specific stuff like this.
  • PaulaMigratePaulaMigrate Member Posts: 1,201
    argent77 said:

    A question on usage:
    I intend to create a DLC from an EET game. The game contains additional movie files in the BG2EE part.
    BG2EE/movies/something.wbm
    What do I need to put into the *working* folder in order to jave those files included into the DLC?

    DlcBuilder should detect everything that is installed by regular WeiDU commands. Only stuff installed by batch files, etc. (that bypasses WeiDU's backup logs) has to be listed in a text file, so DlcBuilder knows about it (see more details and examples in the readme). There shouldn't exist many mods anymore that do platform-specific stuff like this.
    Sorry, stupid question. For EET everything is in BG2EE directory anyway.
  • The user and all related content has been deleted.
    _Luke_
  • MirandelMirandel Member Posts: 526
    If mod can handle medals - you deserve two for that wonder of the mods already! Big THANK YOU on behalf of all ... I do not know how we are called - weak souls constantly changing mod layouts :)
    But seriously, thank you!
  • StefanOStefanO Member Posts: 346
    I'm using DlcBuilder 4.0-beta4 on the latest BG2EE patch 2.5.16.4

    There is no problem building the DLC. No error messages at all. But using the DLC on another system doesn't work anymore. For instance the mod NPC portraits aren't shown. Maybe there are other problems too.

    If I copy the override folder (and the dialog.tlk) to the second systems manually, everything looks fine.

    This problem is new. The former 2.5 patch didn't had this problem.
Sign In or Register to comment.