Author Topic: Bug in WeiDU.exe v213 on trying to extract AR0204.tis? Or just my chitin.key .  (Read 2715 times)

Offline Jarno Mikkola

  • The Imp.
  • Planewalker
  • *****
  • Posts: 184
  • Gender: Male
    • website jocuri
It might be just my chitin.key, so could someone of you check out what this gives you:
Code: [Select]
BACKUP ~blah/backup~
AUTHOR ~blah~

BEGIN ~blah~

COPY_EXISTING ~AR0204.TIS~ ~blah/1~
Cause mine gives this $.:
Quote
WeiDU v 21300 Log

 C:\Unbiftest\BGII - SoA\setup-Unbif.exe
[./CHITIN.KEY] loaded, 590551 bytes
[./CHITIN.KEY] 182 BIFFs, 41793 resources
[dialog.tlk] loaded, 8694864 bytes
[dialog.tlk] 74125 string entries
[./Autorun.ini] loaded, 1452 bytes
[./baldur.ini] loaded, 3527 bytes
Possible HD/CD Path: [C:\Unbiftest\BGII - SoA\]
Possible HD/CD Path: [C:\Unbiftest\BGII - SoA\CD1\]
Possible HD/CD Path: [C:\Unbiftest\BGII - SoA\CD2\]
Possible HD/CD Path: [C:\Unbiftest\BGII - SoA\CD2\]
Possible HD/CD Path: [C:\Unbiftest\BGII - SoA\CD3\]
Possible HD/CD Path: [C:\Unbiftest\BGII - SoA\CD4\]
Possible HD/CD Path: [C:\Unbiftest\BGII - SoA\CD5\]
[./Keymap.ini] loaded, 5615 bytes
[./Mplaynow.ini] loaded, 230 bytes
[C:\Unbiftest\BGII - SoA\setup-Unbif.exe] Using scripting style "BG2"
[dialog.tlk] claims to be writeable.
[dialog.tlk] claims to be a regular file.

Install Component [Unbiffing of the BGII, v0.01]?
nstall, or [N]ot Install or [Q]uit?
Installing [Unbiffing of the BGII, v0.01]
Copying 1 file ...
BIFF may be in hard-drive CD-path [C:\Unbiftest\BGII - SoA\CD5\/DATA/AREA020A.BIF]
BIFF may be in hard-drive CD-path [C:\Unbiftest\BGII - SoA\CD4\/DATA/AREA020A.BIF]
BIFF may be in hard-drive CD-path [C:\Unbiftest\BGII - SoA\CD3\/DATA/AREA020A.BIF]
[C:\Unbiftest\BGII - SoA\CD3\/DATA/AREA020A.BIF] 21066943 bytes (compressed), 90 files, 4 tilesets
ERROR: BIFF [C:\Unbiftest\BGII - SoA\CD3\/DATA/AREA020A.BIF]: unable to extract tileset 1

ERROR locating resource for 'COPY'
Resource [AR0204.TIS] not found in KEY file:
   [./chitin.key]
Stopping installation because of error.

ERROR Installing [Unbiffing of the BGII, v0.01], rolling back to previous state
[Unbif/backup/0/UNSETSTR.0] SET_STRING uninstall info not found
Will uninstall   0 files for [UNBIF/SETUP-UNBIF.TP2] component 0.
Uninstalled      0 files for [UNBIF/SETUP-UNBIF.TP2] component 0.
ERROR: Failure("resource [AR0204.TIS] not found for 'COPY'")
PLEASE email the file SETUP-UNBIF.DEBUG to Jarno Mikkola

Install Component [Unbiffing of the BGII, v0.01]?
nstall, or [N]ot Install or [Q]uit? Saving This Log:

NOT INSTALLED DUE TO ERRORS Unbiffing of the BGII, v0.01

      WeiDU Timings
OUTER_INNER_PATCH                0.000
unmarshal compressed BIFF        0.000
READ_*                           0.000
load TLK                         0.000
Parsing TP2 files                0.000
DEFINE_PATCH_MACRO               0.000
DEFINE_ACTION_MACRO              0.000
parsing .log files               0.000
INCLUDE                          0.000
process_patch2                   0.000
DEFINE_PATCH_FUNCTION            0.000
eval_pe                          0.000
tp2 uninstall                    0.008
loading files                    0.036
Parsing TPA files                0.045
unmarshal KEY                    0.045
unmarshal TLK                    0.105
COPY                             0.320
stuff not covered elsewhere     10.853
TOTAL                           11.412
If the 'blah' is replaced by 'unbif' and other things. :P

I noticed this when I tried to originally do this:
Code: [Select]
COPY_EXISTING_REGEXP GLOB ~.*~ ~Unbif/1~ For this.

Offline the bigg

  • The Avatar of Fighter / Thieves
  • Moderator
  • Planewalker
  • *****
  • Posts: 3804
  • Gender: Male
The file is over the 16M size limit, hence cannot be handled by COPY_EXISTING. Either way, you shouldn't need to delete the bifs of static files (tis, wav, mve...), you should only dump & remove the biffs containing dynamic files (itm, cre...).
Author or Co-Author: WeiDU (http://j.mp/bLtjOn) - Widescreen (http://j.mp/aKAiqG) - Generalized Biffing (http://j.mp/aVgw3U) - Refinements (http://j.mp/bLHoCc) - TB#Tweaks (http://j.mp/ba02Eg) - IWD2Tweaks (http://j.mp/98OFYY) - TB#Characters (http://j.mp/ak8J55) - Traify Tool (http://j.mp/g1Ry9A) - Some mods that I won't mention in public
Maintainer: Semi-Multi Clerics (http://j.mp/9UeIwB) - Nalia Mod (http://j.mp/dng9l0) - Nvidia Fix (http://j.mp/aRWjjg)
Code dumps: Detect custom secondary types (http://j.mp/hVzzXG) - Stutter Investigator (http://j.mp/gdtBn8)

If possible, send diffs, translations and other contributions using Git (http://j.mp/aBZFrq).

Offline Jarno Mikkola

  • The Imp.
  • Planewalker
  • *****
  • Posts: 184
  • Gender: Male
    • website jocuri
So it's just the Imps own fault... :-[ :'(

So is there an easy way to avoid copying the too large files within the COPY_EXISTING_REGEXP GLOB ~code~ other than not including them into the code... like an excusion marker for the regexp or some such? Cause the readme doesn't include an excusion marker. The excusion marker would help me so much...
« Last Edit: January 25, 2010, 03:14:31 AM by Jarno Mikkola »

Offline the bigg

  • The Avatar of Fighter / Thieves
  • Moderator
  • Planewalker
  • *****
  • Posts: 3804
  • Gender: Male
No exclusion*, but you can whitelist the files you want to copy instead:

COPY_EXISTING_REGEXP ~$.*\.\(itm\|spl\|cre\|...\)^~

*: technically, you can unroll the regexes if you have enough patience, but you can't do the straight exclusion like Ruby's regexes. Not (tis or wav) results in
~%.*\.\([^tw]\|t[^i]\|w[^a]\|ti[^s]\|wa[^v]\|tis.\|wav.\).*^~

Also, if you only want to empty the bifs you should not use the GLOB (without the GLOB, a file that is in the override but not in the biffs is ignored).

Finally, keep in mind copying all the bams fails with some stack overflow.
Author or Co-Author: WeiDU (http://j.mp/bLtjOn) - Widescreen (http://j.mp/aKAiqG) - Generalized Biffing (http://j.mp/aVgw3U) - Refinements (http://j.mp/bLHoCc) - TB#Tweaks (http://j.mp/ba02Eg) - IWD2Tweaks (http://j.mp/98OFYY) - TB#Characters (http://j.mp/ak8J55) - Traify Tool (http://j.mp/g1Ry9A) - Some mods that I won't mention in public
Maintainer: Semi-Multi Clerics (http://j.mp/9UeIwB) - Nalia Mod (http://j.mp/dng9l0) - Nvidia Fix (http://j.mp/aRWjjg)
Code dumps: Detect custom secondary types (http://j.mp/hVzzXG) - Stutter Investigator (http://j.mp/gdtBn8)

If possible, send diffs, translations and other contributions using Git (http://j.mp/aBZFrq).

Offline Miloch

  • Barbarian
  • Planewalker
  • *****
  • Posts: 1032
  • Gender: Male
If you're trying to get that cunning with regexp, why use it at all? It sucks in OCaml anyway, even apart from being slow as molasses.
Code: [Select]
ACTION_FOR_EACH file IN ~laundry~ ~list~ ~of~ ~files~ BEGIN
  ACTION_IF FILE_EXISTS_IN_GAME BEGIN
    ACTION_IF SOURCE_SIZE < 16000000 AND SOURCE_SIZE > 0 BEGIN
      COPY_EXISTING ~file~ ~wherever~
        ...
      END
    END
  END
END

Offline the bigg

  • The Avatar of Fighter / Thieves
  • Moderator
  • Planewalker
  • *****
  • Posts: 3804
  • Gender: Male
Not really.
Author or Co-Author: WeiDU (http://j.mp/bLtjOn) - Widescreen (http://j.mp/aKAiqG) - Generalized Biffing (http://j.mp/aVgw3U) - Refinements (http://j.mp/bLHoCc) - TB#Tweaks (http://j.mp/ba02Eg) - IWD2Tweaks (http://j.mp/98OFYY) - TB#Characters (http://j.mp/ak8J55) - Traify Tool (http://j.mp/g1Ry9A) - Some mods that I won't mention in public
Maintainer: Semi-Multi Clerics (http://j.mp/9UeIwB) - Nalia Mod (http://j.mp/dng9l0) - Nvidia Fix (http://j.mp/aRWjjg)
Code dumps: Detect custom secondary types (http://j.mp/hVzzXG) - Stutter Investigator (http://j.mp/gdtBn8)

If possible, send diffs, translations and other contributions using Git (http://j.mp/aBZFrq).

Offline aVENGER

  • Planewalker
  • *****
  • Posts: 143
Code: [Select]
ACTION_IF SOURCE_SIZE < 16000000 AND SOURCE_SIZE > 0 BEGIN
      COPY_EXISTING ~file~ ~wherever~

I'm pretty sure that wouldn't work since the %SOURCE_SIZE% variable is set by the COPY command.

Offline Miloch

  • Barbarian
  • Planewalker
  • *****
  • Posts: 1032
  • Gender: Male
I'm pretty sure that wouldn't work since the %SOURCE_SIZE% variable is set by the COPY command.
Yes, well...
Code: [Select]
ACTION_FOR_EACH file IN ~laundry~ ~list~ ~of~ ~files~ BEGIN
  ACTION_IF FILE_EXISTS_IN_GAME ~%file%~ BEGIN
    COPY_EXISTING ~%file%~ ~wherever~
      PATCH_IF SOURCE_SIZE < 16000000 AND SOURCE_SIZE > 0 BEGIN
        ...
      END
    END
  END
END
And yes, regexp does indeed suck on any sort of megamod install... try timing using it vs. not using it. More often than not, you don't absolutely need to use it.

Edit: I see how that SOURCE_SIZE check might still fail if COPY_EXISTING can't handle the file in the first place (why it has to bomb on large files, I don't know). But you don't need it at all if you pass only the possible files that *can* be copied in the first laundry list, regardless of whether they exist on any particular install or not, which the FILE_EXISTS check will handle. And I've put like 8000 or so files in such a list and stil ended up being faster than regexp.
« Last Edit: January 26, 2010, 06:23:16 AM by Miloch »

 

With Quick-Reply you can write a post when viewing a topic without loading a new page. You can still use bulletin board code and smileys as you would in a normal post.

Warning: this topic has not been posted in for at least 120 days.
Unless you're sure you want to reply, please consider starting a new topic.

Name: Email:
Verification:
Type the letters shown in the picture
Listen to the letters / Request another image
Type the letters shown in the picture:
What color is grass?:
What is the seventh word in this sentence?:
What is five minus two (use the full word)?: