Author Topic: WeiDU issue?  (Read 976 times)

Offline CamDawg

  • Infidel
  • Planewalker
  • *****
  • Posts: 859
  • Dreaming of a red Xmas
    • The Gibberlings Three
WeiDU issue?
« on: December 31, 2010, 07:43:41 AM »
I'm trying to use the nifty new refactor commands with WeiDU v226 to make More Interjections more robust. The script one works dandy (OK, but it only actually modifies one script valyorb), but the dialogue one is having some issues. This:

Code: [Select]
COPY_EXISTING_REGEXP GLOB ~^.+\.dlg$~ ~override~
  DECOMPILE_DLG_TO_D
    REFACTOR_D_TRIGGER ~I[fs]ValidForPartyDialog\(ue\)?(\([^()]*\))~
                       ~InParty(\2) InMyArea(\2)~
  COMPILE_D_TO_DLG
  IF ~I[fs]ValidForPartyDialog\(ue\)?(\([^()]*\))~
  BUT_ONLY_IF_IT_CHANGES

..spits out some errors. This is all on a patched ToB game, both with and w/o the Fixpack (non-Fixpack will net you a quadrillion warnings but the WeiDU errors, AFAICT, are the same). I'm focusing on custom.dlg, because it's a nice, simple 2-state dialogue--if you want something more complex, it also chokes on cernd, cerndj, and crend25j.

Code: [Select]
[CUSTOM.DLG.DLG] loaded
[CUSTOM.DLG] created from [CUSTOM.DLG.DLG]

[] PARSE ERROR at line 1 column 0--1
Near Text:
Unfinished OR()

[]  ERROR at line 1 column 0--1
Near Text:
Parsing.Parse_error
ERROR: parsing []: Parsing.Parse_error

[CUSTOM.DLG]  ERROR at line 18 column 1-0
Near Text:
Parsing.Parse_error
ERROR: parsing [CUSTOM.DLG]: Parsing.Parse_error
WARNING: REFACTOR_D_TRIGGER CUSTOM.DLG failed (Parsing.Parse_error)
[CUSTOM.DLG] parsed
Adding CUSTOM.DLG to internal list of available DLGs
[CUSTOM.DLG.DLG] saved 2 states, 4 trans, 1 strig, 3 ttrig, 2 actions
Copied [CUSTOM.DLG] to [override/CUSTOM.DLG]

custom.dlg is copied but not updated. Now, the fun part is that if you run the same code with just a C_E, or a C_E_R GLOB targeting just custom.dlg, the patch will work fine. I've been experimenting with cutting down C_E_R GLOB to try and see if it's a matter of a previous decompile/compile interfering with custom.dlg:

The regex ~^cu.+\.dlg$~ examines 12 files, only updates custom.dlg (and does so correctly).

The regex ~^c.+\.dlg$~ examines 178 files, copes 17, has errors on 7 of them (cernd, cernd25j, cerndj, circg1, clone1, copgreet, and custom).

Any ideas?
The Gibberlings Three - Home of IE Mods

The BG2 Fixpack - All the fixes of Baldurdash, plus a few hundred more. Now available, with more fixes being added in every release.

Offline the bigg

  • The Avatar of Fighter / Thieves
  • Moderator
  • Planewalker
  • *****
  • Posts: 3804
  • Gender: Male
Re: WeiDU issue?
« Reply #1 on: December 31, 2010, 08:34:47 AM »
Cernd.d does have a unfinished OR() in my game:
Code: [Select]
IF ~~ THEN BEGIN 6
  SAY #7874
  IF ~!Class(Player1,DRUID_ALL)
OR(4)
!Class(Player1,RANGER_ALL)
!InParty("Jaheira")
!InParty("Minsc")
~ THEN EXTERN ~CERND~ 70
/* etc */

There was a bug causing REFACTOR_*_TRIGGER to incorrectly report "Unfinished OR()" on subsequent dialogue files. Fixed.
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 the bigg

  • The Avatar of Fighter / Thieves
  • Moderator
  • Planewalker
  • *****
  • Posts: 3804
  • Gender: Male
Re: WeiDU issue?
« Reply #2 on: December 31, 2010, 08:58:53 AM »
I'll also list other oddities that you might want to handle in the Fixpack:

Code: [Select]
WARNING: AERIEX.DLG is not a valid DLG file (too small)
WARNING: ARGH.DLG is not a valid DLG file (too small)
WARNING: BARG.DLG is not a valid DLG file (too small)
WARNING: MONKTU15.DLG is not a valid DLG file (too small)
WARNING: MONKTU16.DLG is not a valid DLG file (too small)
WARNING: MONKTU17.DLG is not a valid DLG file (too small)
WARNING: R2.DLG is not a valid DLG file (too small)
WARNING: R214.DLG is not a valid DLG file (too small)
WARNING: R3.DLG is not a valid DLG file (too small)
WARNING: R86.DLG is not a valid DLG file (too small)
WARNING: SARGET.DLG is not a valid DLG file (too small)
WARNING: SDDF.DLG is not a valid DLG file (too small)
WARNING: SSSS.DLG is not a valid DLG file (too small)
WARNING: VOLO2.DLG is not a valid DLG file (too small)
WARNING: ZZZX.DLG is not a valid DLG file (too small)

I didn't install the Super-happy modder pack because I heard rumors it causes compatibility problems (and isn't installed by the BWP for that reason).
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).

 

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)?: