Jump to content

[LE] Problem using brawl in quest


Grallergreen

Recommended Posts

I've tried searching this thread, and other sites in general, for a solution to this and I've hit a wall. I'm trying to make a quest where you brawl an npc and on completion you get some gold and the quest moves to the next stage. I'm able to start the brawl, however at the end of it, there are no more dialogue options, the quest does not advance, and the character does not receive any gold.

 

The dialogue that starts the brawl has the fragment:

 

pFDS.Brawl(akSpeaker)

 

and the topic for the next branch has:

 

Game.GetPlayer().AddItem(Gold001, 300)

GetOwningQuest().SetStage(20)

DGIntimidateQuest.SetStage(100)

 

with DGIntimidateQuest and Gold001 in properties for the fragment. It also has conditions set to check both quest stages and the identity of the npc.

 

I've been at this a couple days, so if anyone has any advice, I'd really appreciate it.

Link to comment
Share on other sites

Have you attempted to find a quest in the game that performs functions after a brawl? Like someone become a follower or getting a payment? That should show you how to advance your quest after the completion of the fight.

Thanks for the response. I've looked at favor017 and dgintimidate to see how they interact. The only thing that I see different in what I'm doing is that the response after the brawl is handled by dgintimidate. I'm nervous about adding to a vanilla quest, so I'm hoping that isn't the problem. To give a little more information on the problem, after he's knocked down, the npc won't open any dialogue, and just keeps saying "You're tougher than you look" etc., and a number of surrounding npcs act as though we're brawling. That is, they keep running away from me.

Link to comment
Share on other sites

Look at the ReferenceAliases in the Quest tab and any scripts they may have attached to them. You will also need to look at the Dialogue and see if the stage is triggered there. Your answer is in those quests. You could also use an OnCombatStateChanged script on the person who the player is fighting. However I recommend you run it down in the quest and see how they do it.

Edited by Masterofnet
Link to comment
Share on other sites

Look at the ReferenceAliases in the Quest tab and any scripts they may have attached to them. You will also need to look at the Dialogue and see if the stage is triggered there. Your answer is in those quests. You could also use an OnCombateStateChanged script on the person who the player is fighting. However I recommend you run it down in the quest and see how they do it.

I'm not seeing what I'm missing, but I'm pretty new to this. I'll probably try to recreate the brawl quest when I have a minute. For now, intimidation will have to suffice.

Link to comment
Share on other sites

So I've looked in the alias used by dgintimidate, I've tried out the packages I saw there, tried adding a few factions, but nothing I try lets me complete the brawl. I even tried looking at another mod that uses brawling, to see what they were doing that I wasn't. I have no idea what I'm missing. If anyone has successfully used brawling in a mod, I would appreciate any tips.

Link to comment
Share on other sites

Did you look at the Aliases of the quest? Did you look at the scripts on them? The NPC you are brawling with specifically.

 

What would packages or factions have to do with you setting a stage of your quest after the brawl?

 

If that fails "You could use an OnCombatStateChanged script on the NPC who the player is fighting."

Link to comment
Share on other sites

I am looking right at the script on the alias. You can see it plain as day.

 

Scriptname DGIntimidateAliasScript extends ReferenceAlias

 

 

Event OnEnterBleedout()
GetOwningQuest().SetStage(15)
; Debug.Trace("Opponent entering bleedout.")
GetActorReference().EvaluatePackage() ; to make sure the forcegreet happens
EndEvent
Link to comment
Share on other sites

 

I am looking right at the script on the alias. You can see it plain as day.

 

Scriptname DGIntimidateAliasScript extends ReferenceAlias

 

 

Event OnEnterBleedout()
GetOwningQuest().SetStage(15)
; Debug.Trace("Opponent entering bleedout.")
GetActorReference().EvaluatePackage() ; to make sure the forcegreet happens
EndEvent

 

Yes, I saw that and tried attaching that script to the npc, but it didn't solve the problem. I was thinking that the packages might help since one had to do with the forcegreet. I'm still learning how this all works, so I apologize if I'm a little slow picking things up.

 

I've gotten it to work by adding the onenterbleedout to the character and setting it to advance the brawl to 200 and my quest to the next stage. It isn't ideal, I have to approach him after the fight to talk, but it's working. Thanks for the help.

Link to comment
Share on other sites

  • Recently Browsing   0 members

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