Jump to content

CK: Getting a quest alias for a guard in Dragonsreach


DocClox

Recommended Posts

Posted

Anyone tried this? It's proving unexpectedly troublesome.

 

What I want to do is slow the player down one time when they enter Dragonsreach. I have a scene setting up, just out of eye line, and I'd like to distract the player for a second or two. So I hit on the idea of having the guard by the door force greet the player and tell them to go and have a look at the thing they were probably going to look at anyway. Adds a little dramatic tension and buys a couple of seconds for everything to animate.

 

But can I get one? Can I hell! Event keeping it brutally simple like "Is a guard and in the same cell as Balgruuf's throne" don't work. I mean, it does, but the first match it pulls is Legate Quentin Crispus, who is disabled, but fills the slot anyway. The second one is the guard commander.

 

I think part of the trouble is that the guard refs seem to be all set up outside until you actually enter the hall, so looking for a ref inside the place fails.

 

I also tried kicking off a SM quest when the player enters. That works, but by the time the thing kicks in player is already where I don't want him to be yet. So that's not really an option either.

 

I suppose if all else fails, I can always create my own guard clone, teleport him in for this one line, and then zap him back out again. But then I have the civil war to worry about...

Posted

Try adding conditions:

GetDisabled == 0

GetVoiceType Formlist GuardVoiceTypes. 

 

Think another problem is that since you want to fill the alias before the space is loaded you won't be able to get the guard closest the door. Or at least I don't know a way off hand of getting the reference closest to another reference. 

 

You could always just create a guard specifically for the job. Place him there 'Initially disabled'. Player enters trigger area - Guard.Enable(). Start quest. Fill alias with guard. etc. 

Posted

I tried GetDisabled == 0. Oddly enough it doesn't help with Quentin Crisp, so I assume he's enabled and gets disabled when the cell loads. I can specifically exclude him, I suppose.

 

The voice types is a good idea. I hadn't thought of that at all.

10 minutes ago, Monoman1 said:

Think another problem is that since you want to fill the alias before the space is loaded you won't be able to get the guard closest the door. Or at least I don't know a way off hand of getting the reference closest to another reference. 

 

Yeah. I'd settle for getting all the guards, and giving them all the same package. Then if the player comes up through the dungeons, or hops off Ohdaving onto the great porch, it still works. The trouble is, there aren't any guards to find. Out of the whole cell, the only guard aliases that fill are Quentin and Cmmdr. Carius.

 

 

12 minutes ago, Monoman1 said:

You could always just create a guard specifically for the job. Place him there 'Initially disabled'. Player enters trigger area - Guard.Enable(). Start quest. Fill alias with guard. etc. 

 

I am tending that way, I must admit. Only trouble is, do I dress him in whiterun livery or as one of the Sons?

 

I don't suppose you know a good way to tell who owns the hold?

 

Posted
1 hour ago, DocClox said:

I am tending that way, I must admit. Only trouble is, do I dress him in whiterun livery or as one of the Sons? 

Uh. Good question. 

As a shot in the dark maybe VignarGrayMane.GetFactionRank(JobJarlFaction) >= 0 ?

His jobJarlFaction rank is -1 starting off according to the CK

I think the game does move him into the faction when Whiterun is taken over. But you'd have to double-check. 

Posted
5 minutes ago, DocClox said:

I don't suppose you know a good way to tell who owns the hold?

The imperial/stormcloak camps are all linked to a single reference for each hold.  Go click on something at a camp and get the ID, follow that back to an enable object.

Posted
32 minutes ago, Monoman1 said:

I think the game does move him into the faction when Whiterun is taken over. But you'd have to double-check. 

 

I suppose I could find the Jarl the same way the Bounty Quests do: start from the hold location and then use the Jarl LocRefType to find the actor who is currently Jarl. Then test to see which they are. Or what faction perhaps

 

[edit]

 

Interestingly, Balgruuf has -1 for his jobJarlFaction  rank as well, at least in the editor. Something must set it.

 

That said, I think I might get the Jarl in an alias, and then test for GovSons or GovImperial. There's a GovRuling faction that's 0 for Balgruuf at the start, and -1 for Vignar, so that might be another way to do it.

 

 

31 minutes ago, Seijin8 said:

Go click on something at a camp and get the ID, follow that back to an enable object.

 

And then see if that object is enabled or not? Nice, but I;d worry about post war issues where the camps are still kicking about. There's the siege apparatus, but that just tells me if the battle is being fought.

Posted
1 hour ago, DocClox said:

Interestingly, Balgruuf has -1 for his jobJarlFaction  rank as well, at least in the editor. Something must set it.

Hunh.

Yea you're spot on. 

And I just checked in game there. New-ish game. Haven't touched the CW quests yet and he's still -1 jobJarlFaction. 

I thought the CW script might move him in OnInit() but apparently not!

Posted

Perfect!

 

image.png

 

Got the Jarl, checked the Jarl faction, and then teleported in a guard from a warehouse cell. No bother at all! :)

Archived

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

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...