@Raaagh: Could you post the line numbers of the repeated dialogue. I'll check on it when I get back home.
Code: {161}{Not so easy Gremag. My price is 200 gold pieces. Take it or leave it.}{}{8}{pc.skill_level_get(npc,skill_diplomacy) >= 5}{190}{pc.money_adj(+20000)} {163}{No. You give me 200. That fair I think.}{}{8}{pc.skill_level_get(npc,skill_diplomacy) >= 5}{190}{pc.money_adj(+20000)} Hmm. How that I reexamine the code, I see two dialog choices for -7 in the second field as well.
Aha, that's because they got the normal and dumb responses for lines {162} and {163} mixed up. I can now see why someone might not have got the option for 200G. That's because they used a dumb speaker. In essence swapping the Int criteria for the 2 aforementioned lines will result in: {161}{Not so easy Gremag. My price is 200 gold pieces. Take it or leave it.}{}{8}{pc.skill_level_get(npc,skill_diplomacy) >= 5}{190}{pc.money_adj(+20000)} {162}{OK. I?ll take 50 gold to keep quiet about this.}{}{8}{}{190}{pc.money_adj(+5000)} {163}{No. You give me 200. That fair I think.}{}{-7}{pc.skill_level_get(npc,skill_diplomacy) >= 5}{190}{pc.money_adj(+20000)} {164}{Ok. Me keep mouth shout for 50.}{}{-7}{}{190}{pc.money_adj(+5000)} instead of {161}{Not so easy Gremag. My price is 200 gold pieces. Take it or leave it.}{}{8}{pc.skill_level_get(npc,skill_diplomacy) >= 5}{190}{pc.money_adj(+20000)} {162}{OK. I?ll take 50 gold to keep quiet about this.}{}{-7}{}{190}{pc.money_adj(+5000)} {163}{No. You give me 200. That fair I think.}{}{8}{pc.skill_level_get(npc,skill_diplomacy) >= 5}{190}{pc.money_adj(+20000)} {164}{Ok. Me keep mouth shout for 50.}{}{-7}{}{190}{pc.money_adj(+5000)} Luckily your efforts on inspecting the code were more detailed. I only used a normal speaker in my field tests. Teaches me to be more thorough next time. Mystery solved. Thanks.
There were some problems with Lord Wizard Sargen's courier not saying the proper lines and just running off without giving you the cash (5000G or 10000G). So I looked at lines {2}-{5} hard and long. Looks pretty straightforward and I couldn't puzzle it out initially. {2}{I am @pcname@.}{}{8}{game.globals_flags[173] == 0}{10}{} {3}{Me is @pcname@}{}{-7}{game.globals_flags[173] == 0}{10}{} {4}{I am @pcname@.}{}{8}{game.globals_flags[173] == 1}{20}{} {5}{Me is @pcname@}{}{-7}{game.globals_flags[173] == 1}{20}{} Then it struck me that there is no such variable as: game.globals_flags[173] There's only game.global_flags[173]. Don't know how that extra "s" snuck in but hopefully after correcting it to: {2}{I am @pcname@.}{}{8}{game.global_flags[173] == 0}{10}{} {3}{Me is @pcname@}{}{-7}{game.global_flags[173] == 0}{10}{} {4}{I am @pcname@.}{}{8}{game.global_flags[173] == 1}{20}{} {5}{Me is @pcname@}{}{-7}{game.global_flags[173] == 1}{20}{} the dialogue should now work fine.
Hrm. I was looking at Hedrack's dlg file this morning, and, if I understand correctly how dlg files work, it should have started at {1}, but instead jumps to {20} when it produces the bug. Wierd.
Conversations can start at other line numbers if it is designated so in the .py file. Hedrack .py file is in the scr directory along with the rest of the .py files: py00174hedrack.py It's a pretty long .py file though. Have a look at criteria in the .py file which makes it skip to line {20} as well as criteria which allows it to go to line {1}. Hope that helps.
Okay, I seem to have found the problem. In the py file, for each condition to see which priest sent you down, it doesn't check to see whether or not the individual priests are dead. game.global_flags[105] is for Belsornig game.global_flags[107] is for Alrrem game.global_flags[104] seems to be for Romag by checking the san_dying in his .py And lastly, 106 seems to be the correct flag for Kelno What I don't get is why they have a condition check in Hendrak's py file for global_flags[144], which seems to be the escort flag. The dialog choices attached to this lead to hostile dialog commands with Hedrack. Odd.
Uhm... why should it check whether the priests are dead. From what I see some of the relevant lines in Hedrack's py file are: elif ( game.quests[54].state == qs_completed ) and ( not attachee.has_met(obj) ): obj.begin_dialog( attachee, 40 ) elif ( game.quests[51].state == qs_completed ) and ( not attachee.has_met(obj) ): obj.begin_dialog( attachee, 30 ) elif ( game.quests[45].state == qs_completed ) and ( not attachee.has_met(obj) ): obj.begin_dialog( attachee, 20 ) Romag starts at 20 Kelno starts at 30 Alrrem starts at 40 Belsornig does not accompany you. The lines that mention him are interspersed with the other options. Am I missing something here? If you could puzzle it out and suggest a correction that would be best. Otherwise I'll try to sort things out when I'm freer.
Well, the py file checks for the completion of each high priest's last quest only. So, if you finish their last quests, refuse to go down, and then kill the priest, it would produce wierd dialogs. Maybe I should've said that it doesn't check to see whether the priest is alive. ???
Ah, I get your point now. Agree that a criteria to check whether the priest in question is alive or not would reduce incoherent dialogue. However, I'm thinking that maybe a player could complete all 3 quests for a faction, refuse to go down to see Hedrack, leave the priest alive and then go down by himself to see Hedrack. That could also complicate matters. Maybe we need a separate escort flag for each priest along with the flag for completion of each high priest's last quest as full criteria. I wonder if we can set such a variable?
Bug : Guisarme not flagged properly in Blacksmith dialogue ? Official Patch 1 Co8 Patch (Blacksmith sells Mastercrafted goods) I think the Blacksmith's dialogue does not point to the correct object when creating a MW Guisarme. Or it's my install. The Blacksmith in Hommlet, when asked to produce a Guisarme (Martial Weapon), produces what looks more like a Greater Hand Axe or so... (haven't been able to find same item or icon). The problem is, I have another Guisarme : it's a long-poled weapon, with intricate barbed endings. Great work guys.
@Vercingetorix: Yes, it is an uncorrected bug since the Troika's first release of the game. Raaagh and I have already discussed it and the corrections for the relevant fields are posted here: http://www.co8.org/forum/showthread.php?s=&threadid=803 EDIT: Download some tools and you too can be part of the modding and debugging process. We really need more active people and the forums are much too quiet these days. <rubs his hands and waits expectantly>
Stupid Temple Argh, turns out it's more broken than first thought. Did the quest over again last night and this is what happened: Romag gives me Belsornig assassin quest and I tell him I already killed him. Romag brings me down to Hedrack and Hedrack gives me the hostile response. However, if I accept the assassin quest, exit the dialog, and re-enter, Hedrack gives me a peaceful dialog.??? edit: Another bug with Hedrack's dlg. Line 13 should have @pcname@, not %pcname% edit 2: I should clarify more. Romag is not even spawned next to me when I'm lead down to Hedrack. And I finished/killed all the other head priests and their quests.
All dialogue corrections have been passed to Tom Decker of Troika: http://www.ataricommunity.com/forums/showthread.php?s=&threadid=338843 Many thanks to Raaagh for your staunch support! I didn't get Romag to spawn either. Will look at that segment more closely. I wonder if it has anything to do with the 3rd quest not being properly recorded (killing Belsornig). I've already fixed that: 2)Romag's 3rd quest allows acknowledgement of killing Belsornig even if you had not done so. -there is no criteria in some of the lines that state Belsornig is already dead. The acknowledgement of quest completion is also missing from some lines. In 00119romag.dlg: Changed the following lines from: {409}{He is already dead!}{}{1}{game.global_flags[105] == 1}{510}{} {354}{Who this Big Sore Neck guy?}{}{-7}{}{420}{} {423}{I've already killed Besornig.}{}{8}{}{510}{} {424}{Me kill Big Sore Neck already.}{}{-7}{}{510}{} to: {409}{He is already dead!}{}{1}{game.global_flags[105] == 1}{510}{game.quests[45].state = qs_completed} {354}{Who this Big Sore Neck guy?}{}{-7}{game.quests[46].state == qs_unknown}{420}{} {423}{I've already killed Besornig.}{}{8}{game.global_flags[105] == 1}{510}{game.quests[45].state = qs_completed} {424}{Me kill Big Sore Neck already.}{}{-7}{game.global_flags[105] == 1}{510}{game.quests[45].state = qs_completed} but have not correlated it with Romag being missing when meeting Hedrack.
Hum. Has anyone gotten any of the high priests, except Belsornig, to spawn after the teleport? Because if none of the priests actually spawn, then there might be a problem with game.fade_out_and_teleport (or was it in?). Maybe I should load up an earlier save tonight and do only Romag's quests to see what happens. EDIT: Okay, I managed to finish only Romag's quests by killing the two underpriests and Belsornig (actually, killed just him and ran because I can't kill the Juggernaught with only three PCs at level 8). Romag took me to the greater temple, and as expected, he didn't spawn. Going to test later with Alreem and Kelno.