Jump to content

Dynaheir Question


PooBraiNPlay

Recommended Posts

You have completed all of the content - for the entire game! Dy's romance end cutscene actually takes place after the point where EasyTutu/Tutu is completely over. At that point, you can svae 9thus getting all your XP from the final battle) and move the savegame over to your SoA/ToB install, load up a new game, and import your character intact into the BG2 content.

No, I can't. That is what I am saying. I am unable to transfer to BG2 for some reason. The cut scene sits there and does nothing. I could not even get out of the game. I had to reduce it and close it once it was minimized. I never was able to transfer and I had to start BG2 with a new PC

 

If you are still standing around, Tutu is completed (you have to be playing Tutu, or the cutscene wouldn't play at all) - there should have been a DisplayStringHead that says

 

"You have been abducted! Your story continues in Baldur's Gate II, Shadows of Amn. Import your character from your final save into BG2."

I think I got that. There were actually two strings that overrode one another and I could not make out either one.

 

We should probably borrow the code form Xan et al and put a big "end of game" screen that displays, blocking out the whole screen, to make it really obvious.

So am I the only one who had the cut scene problem then? My party was standing there with Gorion's body in the background and as I said, I had to minimize just to close out the game.

Link to comment

In testing, and on my own game, the cutscene runs and then the game end credits/drop back to the loading savegames screen ran. On one test, a person with a Tutu v4 install (I think, if I remember correctly) the end credits ran, but then the game came back, with everyone just standig around. The DisplayStingHead ran, and then to exit was juust like a regualr savegame procedure.

 

The good news is that the cutscene makes a save immediately before running, so you get one better than the folks wo don't have the romance. The final save made by the Dy cutscene reflects what you have done clobbering Sarevok, while usual final saves happen before Sarevok's death.

 

If you never dropped out of cutscene mode, then something must have interrupted that sequence.

 

If anyone else has this problem, please report it, so we can begin to troubleshoot it (often this kind of thing requires triangulation on several installs.

Link to comment

I've got a different Dynaheir question. I played the romance fairly far through once, and got to the point of the attempted kidnapping. The only bump in the road was that I got to Drizzt in Chapter 4 and didn't get the dialogue options I expected. That was dealt with and solved in another thread, and everything went fine after that.

 

I started a new game, though, when I realized my PC wasn't exactly the character I had in mind. So, under the same install, I started a new game, and began the Dynaheir romance again. Everything was going as before, but I made sure to get to Drizzt earlier. Then the lovetalks just stopped. Other banters continued but no lovetalks. I initially believed I was just being impatient so I just kept playing. I finished many of the quests within the city of Baldur's Gate, then did Werewolf Island, the Ice Island, and much of Durlag's Tower. No lovetalks. So I went reading through this thread and figured out how to check where in the lovetalk sequence I was. When I entered CLUAConsole:GetGlobal("X#DYLoveTalk","GLOBAL"), I got back that we were on LoveTalk 30!

 

Now, I'm pretty sure the last lovetalk I actually experienced was around LT15 (the one about the ribbons). I even chose the same ribbon as my first game. I don't know how things got messed up, but now I want to try to fix it. I entered CLUAConsole:SetGlobal("X#DYLoveTalk","GLOBAL",16), and got that lovetalk and now I'm set on LT17.

 

My problem is that I'm now pretty late in the game with most of the maps explored. Is there a way to speed up the romance timers?

Link to comment

The LT variables (generally) go at 2X the rate of the LTs (1 sets it up, +1 closes and sets up for the next one, so 1->2 opens/closes LT1, 3->4 opens/closes LT2, etc.)

 

Actually, there is a pretty easy way of speeding up the romance timers in this particular project directly, without installing/deinstalling. It won't work for most mods, but we have put the romance scripted timers onto GTIMES.IDS.

 

If you are used to using NI, open up GTIMES.IDS and manually edit; if you are not, then follow this:

  1. Go to your override folder, and copy the file GTIMES.IDS to a backup location.
  2. Open the file GTIMES.IDS in notepad or another editor, NOT MS Word.
  3. Find the line "1800 DYROM_TIMER" (the value will be different, based on what you installed as a Romance timer.
  4. Change that value to what you want. The time is RT, so 1800 = 30 minutes real time, 900 = 15 minutes real time, 450 = 7.5 minutes real time, etc.
  5. Remember that some LTs will not trigger without special conditions, so if you are stalled, check them, too (rest at an Inn for Dancing with Dynaheor, for example).
  6. When you are at the level you want, re-edit the GTIMES.IDS back to normal, or simply drop the original one into the overide, restoring the original.

I do have that Dynaheir fix in the works; will advise when I have a new internal (expect a couple of weeks, though, as RL is pushing hard right now).

Link to comment

cmorgan,

 

You are a wizard! I'm going to try this right now.

 

One thing I didn't understand, though. In your first paragraph, you say "The LT variables (generally) go at 2X the rate of the LTs (1 sets it up, +1 closes and sets up for the next one, so 1->2 opens/closes LT1, 3->4 opens/closes LT2, etc.)"

 

So what does this mean? Was I actually on about LoveTalk15 if the response to CLUAConsole:GetGlobal("X#DYLoveTalk","GLOBAL") was 30?

 

EDIT: okay, I've checked my older savegames, I see that the variable of 30 *does* mean I was on LT15. So the problem wasn't exactly what I thought it was (though I'm still going to have to do the fix you've provided).

 

But what then was the problem? Why am I not moving to LT16? I've checked the romance guide and the quest walkthrough, and I'm not finding any particular conditions with that LT. It hit my earlier game at Firewine Bridge, so I'm going to head over there, though seems likely to be too specific a condition.

 

EDIT AGAIN: I went all over the map, I slept at different times and different places, I used several different flirt options with Dynaheir, no luck. So I CLUAConsoled the LoveTalk to 31, which prompted LT16. Doing that prompted the next part of Dynaheir's quest, reset my DynaheirRomanceActive to 2, and seems to have things moving again. Reading through Dynaheir's romance guide again, I see that there is a list of conditions that mentions every LT *except* LT16. That's the one I was stuck on. So I suspect that I simply wasn't fulfilling the conditions to trigger it, and that I had somehow done so in my previous game.

 

I've now used NearInfinity to edit the GTIMES.IDS (after backing it up, of course), and hopefully things will be moving along again.

 

Thanks!

Link to comment

As far as I can see (and assuming it worked in your first game :) ) the problem was a script being interrupted from setting the variable. Actually, a dialogue ending getting interrupted in some way as to not *advance* the variable.

 

Setta does her bit, and at the conclusion of the dialogue all the stuff that is set in the dialogue wraps up. Once in awhile, something [WARNING: WILD SPECULATION> (unknown - could be anything from active virus protection to too rapidly moving the party and getting something that interrupts stuff) ] leaves the variable "hanging". Setta's final bit of dialogue was supposed to set the thing on to 31:

 

CHAIN IF WEIGHT #-2 ~%BGT_VAR% Global("X#DYLoveTalk","GLOBAL",30) ~ THEN X#SETTA X#DYRO14

@999

DO ~RealSetGlobalTimer("X#DYLoveTalkTime","GLOBAL",DYROM_TIMER)SetGlobal("X#DYLoveTalk","GLOBAL",31)~

== ~X#SETTA~ IF ~InParty("khalid") InMyArea("khalid") !StateCheck("khalid",CD_STATE_NOTVALID) InParty("jaheira") InMyArea("jaheira") !StateCheck("jaheira",CD_STATE_NOTVALID)~ THEN @1000

== ~%JAHEIRA_JOINED%~ IF ~InParty("khalid") InMyArea("khalid") !StateCheck("khalid",CD_STATE_NOTVALID) InParty("jaheira") InMyArea("jaheira") !StateCheck("jaheira",CD_STATE_NOTVALID)~ THEN @1001

== ~%KHALID_JOINED%~ IF ~InParty("khalid") InMyArea("khalid") !StateCheck("khalid",CD_STATE_NOTVALID) InParty("jaheira") InMyArea("jaheira") !StateCheck("jaheira",CD_STATE_NOTVALID)~ THEN @1002

== ~%JAHEIRA_JOINED%~ IF ~InParty("khalid") InMyArea("khalid") !StateCheck("khalid",CD_STATE_NOTVALID) InParty("jaheira") InMyArea("jaheira") !StateCheck("jaheira",CD_STATE_NOTVALID)~ THEN @1003

== ~%KHALID_JOINED%~ IF ~InParty("khalid") InMyArea("khalid") !StateCheck("khalid",CD_STATE_NOTVALID) InParty("jaheira") InMyArea("jaheira") !StateCheck("jaheira",CD_STATE_NOTVALID)~ THEN @1004

== ~%JAHEIRA_JOINED%~ IF ~InParty("khalid") InMyArea("khalid") !StateCheck("khalid",CD_STATE_NOTVALID) InParty("jaheira") InMyArea("jaheira") !StateCheck("jaheira",CD_STATE_NOTVALID)~ THEN @1005 DO ~GiveGoldForce(-1)~

== ~%CORAN_JOINED%~ IF ~InParty("coran") InParty("safana")~ THEN @1006

== ~%SAFANA_JOINED%~ IF ~InParty("coran") InParty("safana")~ THEN @1007

== ~%CORAN_JOINED%~ IF ~InParty("coran") InParty("safana")~ THEN @1008

== ~%SAFANA_JOINED%~ IF ~InParty("coran") InParty("safana")~ THEN @1009 DO ~GiveGoldForce(-1)~

== ~%SKIE_JOINED%~ IF ~InParty("skie") InMyArea("skie") !StateCheck("skie",CD_STATE_NOTVALID) InParty("eldoth") InMyArea("eldoth") !StateCheck("eldoth",CD_STATE_NOTVALID)~ THEN @1010

== ~%ELDOTH_JOINED%~ IF ~InParty("skie") InMyArea("skie") !StateCheck("skie",CD_STATE_NOTVALID) InParty("eldoth") InMyArea("eldoth") !StateCheck("eldoth",CD_STATE_NOTVALID)~ THEN @1011

== ~%GARRICK_JOINED%~ IF ~InParty("skie") InMyArea("skie") !StateCheck("skie",CD_STATE_NOTVALID) InParty("eldoth") InMyArea("eldoth") !StateCheck("eldoth",CD_STATE_NOTVALID) InParty("garrick") InMyArea("garrick") !StateCheck("garrick",CD_STATE_NOTVALID)~ THEN @1012

== ~%SKIE_JOINED%~ IF ~InParty("skie") InMyArea("skie") !StateCheck("skie",CD_STATE_NOTVALID) InParty("eldoth") InMyArea("eldoth") !StateCheck("eldoth",CD_STATE_NOTVALID)~ THEN @1013

== ~%ELDOTH_JOINED%~ IF ~InParty("skie") InMyArea("skie") !StateCheck("skie",CD_STATE_NOTVALID) InParty("eldoth") InMyArea("eldoth") !StateCheck("eldoth",CD_STATE_NOTVALID)~ THEN @1014

== ~%SKIE_JOINED%~ IF ~InParty("skie") InMyArea("skie") !StateCheck("skie",CD_STATE_NOTVALID) InParty("eldoth") InMyArea("eldoth") !StateCheck("eldoth",CD_STATE_NOTVALID)~ THEN @1015

== ~%ELDOTH_JOINED%~ IF ~InParty("skie") InMyArea("skie") !StateCheck("skie",CD_STATE_NOTVALID) InParty("eldoth") InMyArea("eldoth") !StateCheck("eldoth",CD_STATE_NOTVALID)~ THEN @1016

== ~X#SETTA~ IF ~InParty("skie") InMyArea("skie") !StateCheck("skie",CD_STATE_NOTVALID) InParty("eldoth") InMyArea("eldoth") !StateCheck("eldoth",CD_STATE_NOTVALID)~ THEN @1017

== ~%ELDOTH_JOINED%~ IF ~InParty("skie") InMyArea("skie") !StateCheck("skie",CD_STATE_NOTVALID) InParty("eldoth") InMyArea("eldoth") !StateCheck("eldoth",CD_STATE_NOTVALID)~ THEN @1018

= @1019

== ~%SKIE_JOINED%~ IF ~InParty("skie") InMyArea("skie") !StateCheck("skie",CD_STATE_NOTVALID) InParty("eldoth") InMyArea("eldoth") !StateCheck("eldoth",CD_STATE_NOTVALID)~ THEN @1020

== ~%MINSC_JOINED%~ IF ~InParty("minsc") InMyArea("minsc") !StateCheck("minsc",CD_STATE_NOTVALID)~ THEN @1021

== ~%DYNAHEIR_JOINED%~ IF ~InParty("minsc") InMyArea("minsc") !StateCheck("minsc",CD_STATE_NOTVALID)~ THEN @1022

== ~%MINSC_JOINED%~ IF ~InParty("minsc") InMyArea("minsc") !StateCheck("minsc",CD_STATE_NOTVALID)~ THEN @1023

== ~%DYNAHEIR_JOINED%~ IF ~InParty("minsc") InMyArea("minsc") !StateCheck("minsc",CD_STATE_NOTVALID)~ THEN @1024

== ~%MINSC_JOINED%~ IF ~InParty("minsc") InMyArea("minsc") !StateCheck("minsc",CD_STATE_NOTVALID)~ THEN @1025

END

IF ~InParty("minsc") InMyArea("minsc") !StateCheck("minsc",CD_STATE_NOTVALID)~ THEN EXTERN ~%DYNAHEIR_JOINED%~ DYRO14.1M

IF ~!InParty("minsc")~ THEN EXTERN ~%DYNAHEIR_JOINED%~ DYRO14.1

 

and in this particular game, it didn't.

 

Folks have not run into this in testing, but it might be wise for us to look carefully at the RealSetGlobalTimer calls, and their order - we know from Jastey's investigations that some things operate as "blocker" commands, but we aren't sure under what conditions. So perhaps reversing the order throughout the project to SG/RSGT order is better or less likely to cause a problem; but this is wild guesswork on my end. While it works in testing as is, it always comes back to "testing =/= real world". But probably, something just interrupted the natural flow for a sec on your game (otherwise, it would fail consistently :) )

 

P.S. - if it does fail consistently on your install, please let me know - I want to track it down and kill it if it is a repeatable bug!

Link to comment

Oh yeah! Hah! I guess I just thought of her as the ribbon lady.

 

You know, in my current game Setta caught my party as I was on a long march from the north end of the Baldur's Gate bridge to the south end (completing the Umberlee's Priestess quest), and I had been watching the area map overview during the march. (When I'm going through safe areas, I sometimes just watch the little green dots marking my characters' positions move across the screen.) When the dialogue started, it pulled me to the regular screen, and then the ribbon dialogue took place. The characters were somewhat spread across a fair distance from one another when that happened. I was a little surprised when the dialogue happened there, because I had not thought that the area would be considered "city."

 

I wonder if any of that had anything to do with it? Hrm.

 

At any rate, the romance now appears to be progressing correctly, and the speeded-up timer has been great, given that I've just got Durlag's Tower and a few remaining quests within Baldur's Gate before I really move on to the Candlekeep chapter.

 

Thanks for everything!

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...