Jump to content
Sign in to follow this  
aVENGER_(RR)

[IWD1:TotLM] - Alignment() trigger issues

Recommended Posts

It seems that scripts containing the Alignment() trigger won't compile properly neither with Near Infinity nor with WeiDU in IWD1:TotLM. I found an old post by Blucher which clarifies the issue and offers a fix.

 

In IWD' date=' any Alignment(O:Object*,I:Alignment*Align) checks cause the .baf compiler to choke. This is because IWD lacks an "alignment.ids" file. It has an "align.ids" and an "alignmen.ids" file. This is not a WeiDU error, it's an error in the .ids files. Solution: rename align/alignmen.ids to "alignment.ids" or change the "trigger.ids" entry.[/quote']

 

It might be useful to note this in the IESDP. For reference, the fix can be implemented as follows:

 

// Fix the Alignment() entry in TRIGGER.IDS

ACTION_IF GAME_IS totlm BEGIN
 COPY_EXISTING ~trigger.ids~ ~override~
   REPLACE_TEXTUALLY EXACT_MATCH ~Alignment(O:Object*,I:Alignment*Alignment)~ ~Alignment(O:Object*,I:Alignment*Align)~
 BUT_ONLY_IF_IT_CHANGES
END

Edited by aVENGER_(RR)

Share this post


Link to post

On a side note, it seems that the Class() trigger in TotLM doesn't work with these:

 

202 MAGE_ALL
203 FIGHTER_ALL
204 CLERIC_ALL
205 THIEF_ALL
206 BARD_ALL
207 PALADIN_ALL
208 DRUID_ALL
209 RANGER_ALL

 

I can't get this simple script block to work on a single-class cleric partymember:

 

IF
Class(Myself,CLERIC_ALL)
THEN
RESPONSE #100
	FloatMessage(Myself,820) // Cleric
END

Share this post


Link to post

The reason (class)_ALL doesn't work is there are no kits in IWD1. Hard lesson I learned from BG1 Tweaks.

Share this post


Link to post

The reason (class)_ALL doesn't work is there are no kits in IWD1.

 

 

It should still be applicable for multi-classes i.e. FIGHTER_ALL should catch FIGHTER, FIGHTER_MAGE, FIGHTER_CLERIC, FIGHTER_MAGE_CLERIC, FIGHTER_MAGE_THIEF, FIGHTER_DRUID and FIGHTER_THIEF as it does in BG2.

 

However, that doesn't work. Even though the (class)_ALL entries are properly listed in TotLM's CLASS.IDS the Class() trigger won't recognize them for some reason.

Share this post


Link to post

Yeah, known.

 

BIS went their own route with the *Ex() triggers (you'd almost always just use ClassEx() in an IWD game), and they never bothered using the symbols for alignment (it should work if you use the numeric values, like they often did).

Edited by devSin

Share this post


Link to post

It is better to change trigger.ids Filenames must follow the 8.3 convention for the game to be able to use them, and you may want to use the trigger in dialogs too!

Share this post


Link to post
Guest
You are commenting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×