Author Topic: I_C_T vs I_C_T2 revisited.  (Read 8928 times)

Offline cmorgan

  • Planewalker
  • *****
  • Posts: 1424
  • Gender: Male
  • Searcher of Bugs
Re: I_C_T vs I_C_T2 revisited.
« Reply #25 on: September 15, 2007, 08:44:19 AM »
But if we were to recode to I_T_C4,
the code

I_C_T4 ~%tutu_var%DYNAHE~ 10 X#AjantisDynaheir
== ~%AJANTIS_JOINED%~  IF ~InParty("ajantis") InMyArea("ajantis") !StateCheck("ajantis",CD_STATE_NOTVALID)~
THEN @21 DO ~LeaveParty() SetLeavePartyDialogFile() ChangeAIScript("",DEFAULT) Enemy() SetGlobal("X#AjantisRomanceActive","GLOBAL",3)~
== ~%KIVAN_JOINED%~ IF ~InParty("kivan") InMyArea("kivan") !StateCheck("kivan",CD_STATE_NOTVALID)~
THEN @33
DO ~ActionOverride("kivan",LeaveParty()) ActionOverride("kivan",Enemy())~
END

would NOT work, as 1. actions are left with the original speaker, but 2. the interjections themselves introduce new transitional actions

so the code would be
Code: [Select]
/* Dynaheir hostile leave if attacked */
I_C_T4 ~%tutu_var%DYNAHE~ 10 X#AjantisDynaheir

== ~%AJANTIS_JOINED%~ IF ~valid~ THEN @21 DO ~
ActionOverride("ajantis",LeaveParty())
ActionOverride("ajantis",SetLeavePartyDialogFile())
 ActionOverride("ajantis",ChangeAIScript("",DEFAULT))
ActionOverride("ajantis",Enemy())
SetGlobal("X#AjantisRomanceActive","GLOBAL",3)~

== ~%KIVAN_JOINED%~ IF ~valid~ THEN @33 DO ~
ActionOverride("kivan",LeaveParty())
ActionOverride("kivan",SetLeavePartyDialogFile())
ActionOverride("kivan",ChangeAIScript("",DEFAULT))
ActionOverride("kivan",Enemy())~
END

as long as all actions added in the interjection that are speaker-specific are turned into ActionOverrides (thus being kicked out of the regular processing order and assigned to their actor directly).

Or would this be a simple I_C_T? The original state has only one potential transition. We are adding transitional actions in the first case which need to carry to specific actors. In the second case, we are taking that out of play by use of ActionOverride. By my figuring, that means that simple  I_C_T1 could be used, as no actor-specific actions are added.

Offline the bigg

  • The Avatar of Fighter / Thieves
  • Planewalker
  • *****
  • Posts: 3804
  • Gender: Male
Re: I_C_T vs I_C_T2 revisited.
« Reply #26 on: September 15, 2007, 09:13:21 AM »
I am at the point of not understanding what you're trying to ask. The safe-safe answer looks to be using I_C_T3 with callbacks and no ActionOverride().

I_C_T2/4 leave the action from the transitions in the state you're interjecting in with the original speaker, in-interjection actions are left where they are.

In that case, I_C_T1/3 (without callback) are a no-no, because the original dialogue has a talker-specific line.
Also, I_C_T1/2 are no because otherwise Kivan won't talk if Ajantis wasn't in the party.
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 cmorgan

  • Planewalker
  • *****
  • Posts: 1424
  • Gender: Male
  • Searcher of Bugs
Re: I_C_T vs I_C_T2 revisited.
« Reply #27 on: September 15, 2007, 09:18:49 AM »
I_C_T2/4  in-interjection actions are left where they are.
 That was the last key - I think I understand now!

Offline jastey

  • Global Moderator
  • Planewalker
  • *****
  • Posts: 1524
  • Gender: Female
Re: I_C_T vs I_C_T2 revisited.
« Reply #28 on: September 15, 2007, 01:54:51 PM »
Wait a minute . what is I_C_T3 and I_C_T4?

Did I understand it right that 3 "works" like 1 in the meaning of where the actions are put; and 4 like 2, but with I_C_T4, something like this

I_C_T4 ~%tutu_var%DYNAHE~ 10 X#AjantisDynaheir
== ~%AJANTIS_JOINED%~  IF ~InParty("ajantis") InMyArea("ajantis") !StateCheck("ajantis",CD_STATE_NOTVALID)~
THEN @21 DO ~LeaveParty() SetLeavePartyDialogFile() ChangeAIScript("",DEFAULT) Enemy() SetGlobal("X#AjantisRomanceActive","GLOBAL",3)~
== ~%KIVAN_JOINED%~ IF ~InParty("kivan") InMyArea("kivan") !StateCheck("kivan",CD_STATE_NOTVALID)~
THEN @33
DO ~ActionOverride("kivan",LeaveParty()) ActionOverride("kivan",Enemy())~
END

would actually work, in the sense that (all NPC could talk even if the ones in front) Kivan could speak his line even if Ajantis isn't interjecting?

Offline the bigg

  • The Avatar of Fighter / Thieves
  • Planewalker
  • *****
  • Posts: 3804
  • Gender: Male
Re: I_C_T vs I_C_T2 revisited.
« Reply #29 on: September 15, 2007, 07:39:24 PM »
Jas: yeah, exactly.
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 jastey

  • Global Moderator
  • Planewalker
  • *****
  • Posts: 1524
  • Gender: Female
Re: I_C_T vs I_C_T2 revisited.
« Reply #30 on: September 16, 2007, 01:31:36 AM »
Cool. 8)

 

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