Skip to content

[BUG] Cloakwood Mines Guard

KeithSKeithS Member Posts: 623
edited August 2012 in Fixed
Current Behaviour
Will repeatedly summon guards if you have spoken to him and refuse to surrender. On a minor note he also does nothing if you threaten his family.

Expected Behaviour
For him to turn hostile when you refuse to surrender so you are unable to repeatedly summon guards.

Files altered: iron10.dlg

Fixed in: v0626+

Originally found and fixed in: BG1Fixpack
http://forum.baldursgate.com/discussion/858
Post edited by Bhryaen on

Comments

  • BhryaenBhryaen Member Posts: 2,874
    edited August 2012
    I'm assuming this refers to the Guard at AR1801, X=250, y=1189...

    His dialogue presently goes this way now in BGEE:

    DIALOG1
    A1:- You're going to die, little guard.
    -> DIALOG1:B1-2
    A2:- We give up.
    [END] Guard says to wait until other guards arrive but goes Hostile
    A3:- We don't think so.
    [END] -> Resuming dialog reopens DIALOG1:A1-3

    B1:- Yessss, we would.
    [END] Guard goes Hostile
    B2:- No way, you've got a fate worst than death already.
    [END] Guard leaves area

    The BG1 way differs only in these:

    DIALOG1
    A1:- You're going to die, little guard.
    -> DIALOG1:B1-2
    A2:- We give up.
    [END] Guard says to wait, no guards ever show up -> Resuming dialog reopens DIALOG 1
    A3:- We don't think so.
    [END] -> Resuming dialog reopens DIALOG1:A1-3

    B1:- Yessss, we would.
    [END] -> Resuming dialog reopens DIALOG1:A1-3
    B2:- No way, you've got a fate worst than death already.
    [END] Guard leaves area

    I'd say Confirmed Fixed, but only in the sense that this was implemented.
    I think it's Confirmed Not Fixed in that it messed up a working vanilla dialog.

    For DIALOG1:A2, I believe it's not a matter of offering an XP exploit to players, particularly as no guards are actually summoned- at least in vBG1. I believe instead it was humor on the part of the original writers. You're told to just "wait there." So you first tense up thinking there will be guards showing, maybe from both directions in the mine shaft. They don't show up. You wait a bit more, now itching for the fight. None show. You wait longer. A miner says "Get me out of this hell hole!" while the ambient rumbling goes on... lol So you either kill him or move on. It's funny. Anyway that's how it's always come across to me since I first encountered it. I'd say leave it the original way.

    For DIALOG1:B1, I could accept that since you're clearly egging on a fight, but given his response to DIALOG1:B2 in which he thanks you for sparing his life or his response to DIALOG1:A1 which entails a plea about him having a wife and ten children, I could see him not forcing the battle himself. Instead despite your threat, he doesn't attack but just stands there, hoping you'll leave him alone. This is also why it makes more sense that he's not seriously asking you to wait for guards, just sort of saying all he could figure to say at that moment.

    Anyway those are my thoughts. The guards on Level 1 of the Cloakwood mines are clearly not supposed to be serious battle threats, so there's no reason to treat this guard as a real challenger. The other guard nearby who asks for advice about his limp "maypole" in his marital relations is a good indicator of this use of guards for comic relief, particularly after the harrowing Cloakwood journey and the impending mines descent...
    Post edited by Bhryaen on
  • BalquoBalquo Member, Developer Posts: 2,746
    edited July 2012
    The guard spawn was supposed to happen, it was just some bad code that prevented it. The only thing that was added from scratch was that he turns hostile.

    He turns hostile directly and that is a bit silly. He should wait until the spawned guards are in view at the very least as he does say "wait here". Can easily be done by adding "wait(3)" for example.
    CreateCreature("IRONGU",[140.1555]) 
    Wait(3)
    Enemy()
    Also all the dialogue that turns him to fight is an "evil" party situation so I doubt they care if he has 10 kids or not. But then I understand you are thinking about the guard and his reason for turning hostile... but still :P

    EDIT: @Bhryaen Now when I think about it, the guards are summoned in BG1 but it was possible to summon them continually. Turning him hostile prevented this exploit. The fact that it was not working for you in vBG1 is strange. They spawn a little south from his location. Try walking down a bit and see if the are there. As you can see from the code above the guards spawn at 140.1555
    Post edited by Balquo on
  • BhryaenBhryaen Member Posts: 2,874
    @Balquo
    Ahhh... I see the guards to the south now in vBG1. I'd clicked it several times, but apparently they spawn just out of visual range to the south and each new spawned cluster goes further south. Yeah- that's not only an exploit but also a mess one can create by accident since one can't know they're spawning until traveling south afterward. If they're going to spawn in they should then walk to the Guard's location immediately. Also hile waiting for them to show up, maybe there should be a new variable- SetGlobal("SurrenderedtoGuard","GLOBAL",1) or some such- which changes the IRON10.DLG so that if you say you surrender again, he just says, "Yeah, yeah," or "They're coming" without being able to trigger more.

    I still like the humor route better though. hehe Not sure why I got the impression that no guards came.
  • BalquoBalquo Member, Developer Posts: 2,746
    edited July 2012
    The problem is that when the guard sees the player his initiate script kicks in. So he could potentially follow the player to the other side of the map then when the guards are summoned they are summon at 140.1555 and you may never see them. A solution would be to initiate dialogue from a distance the moment the guard sees player.

    I agree that the summoned guards should move to the guards location. I thought they did already.. must check the script later.

    I still think he should turn hostile. Well at least after you attack the summoned guards.
  • BhryaenBhryaen Member Posts: 2,874
    @Balquo
    Yes, if the original intent of the encounter is to be preserved that guard should go hostile, but maybe not until he sees the other guards first arrive. He's essentially just telling the party to wait until his reinforcements arrive. You're also definitely right to make that DLG on-sight rather than let him follow.
  • BalquoBalquo Member, Developer Posts: 2,746
    edited July 2012
    @KeithS @Bhryaen So the bugs:
    * The guard would not turn hostile after Response 2 "We don't think so."
    * The summoned guards did not move to the guards location.

    The files are attached.

    In order to get this to work I had to give the summoned guards (irongu.cre) a script name: 'Irongu'

    I also created another Action under iron10.dlg with Enemy() that Response 2 can use.

    And to get the summoned guards to move to the guard location along with the guard waiting a bit before turning hostile I added:
    CreateCreature("IRONGU",[140.1555],9)
    ActionOverride("Irongu",MoveToPoint([290.1206]))
    CreateCreature("IRONGU",[141.1646],9)
    ActionOverride("Irongu",MoveToPoint([268.1242]))
    CreateCreature("IRONGU",[186.1729],9)
    ActionOverride("Irongu",MoveToPoint([243.1287]))
    Wait(4)
    Enemy()
    I also changed State Trigger 0 from True() to NumTimesTalkedTo(0) so you could not talk to the guard during the (Wait(4)) above.

    @Cuv was very helpful in helping me figure things out! Thanks!
  • KeithSKeithS Member Posts: 623
    okie
  • BalquoBalquo Member, Developer Posts: 2,746
    Not included in this build.
  • NathanNathan Member Posts: 1,007
    Verified, @KeithS has made the appropriate changes. Works internally, and this should be integrated in the next private beta build.
  • Avenger_teambgAvenger_teambg Member, Developer Posts: 5,862
    Confirmed fixed.
    irongu.cre got its scripting name (aka DV).
    Dialog got its upgrade...
    Tested in game too.
  • BhryaenBhryaen Member Posts: 2,874
    edited August 2012
    Confirmed Fixed:

    In-game test:
    DIALOG1:A1 -> B1 - Guard goes hostile.
    DIALOG1:A1 -> B2 - Guard leaves area
    DIALOG1:A2 - Guard stands there as a blue circle until reinforcements show up and close in on the party, then goes hostile
    DIALOG1:A3 - Guard goes hostile.
  • BalquoBalquo Member, Developer Posts: 2,746
    Still not completely happy with it but since the fact that hardly any players will say "We give up" I'm going to leave it alone.

    But yes, it works as intended.
  • BhryaenBhryaen Member Posts: 2,874
    @Balquo
    What did you wish instead?
  • BalquoBalquo Member, Developer Posts: 2,746
    If the player does not talk to him in his direct area then the players may never see the spawned guards and therefore his dialogue will make little sense. There are some solutions to this but probably not worth the hassle.

    Plus generally players do not lead random following NPCs across the map so I can't see it being a problem.
Sign In or Register to comment.