Jump to content

Quest Giver not taking quest item or giving reward?


Recommended Posts

I'm reworking and updating my mod that hasn't been working for over 4 years (oops) and I've run into a problem. Everything works fine, except the very ending of the quest. The player returns to the quest giver and ends the quest. However, the quest item is stuck in the player's inventory and the monetary reward is never given. I have the script code entered correctly according to the Creation Kit wiki, but it doesn't work at all.



Is there something blatantly obvious that I'm just entirely missing?


Link to comment
Share on other sites

I'd need to see the script and know just where you are doing it. It's a bit different if you do it in a stage papyrus fragment from if you do it in a dialogue papyrus end/start fragment.

 

This is doing it in a stage fragment..

 

 

 

Alias_Player.GetReference().RemoveItem(Gold01,8000,False,Alias_TempleChest.GetReference())
Alias_Maramal.GetReference().Removeitem(Alias_Key.GetReference(),1,False,Alias_Player.GetReference())
Alias_Maramal.GetReference().Removeitem(Alias_Deeds.GetReference(),1,False,Alias_Player.GetReference())
Debug.Notification("8000 septims removed")
Debug.Notification("Mill View key added")
Debug.Notification("Mill View Deeds Added")

 

 

Note that before writing this fragment you need to declare any properties that are not quest aliases at the foot of the main quest script. In this case MiscObject Property Gold01 auto. Should have been Gold001, so it didn't auto-fill... doh!

 

This is doing it in a dialogue fragment...

 

 

Alias_Player.GetReference().RemoveItem(Alias_SlaveBook.GetReference(),1,False,Alias_Athrilor.GetReference())

 

Note that you need to declare even alias properties in the fragment before this will compile.

 

;BEGIN FRAGMENT CODE - Do not edit anything between this and the end comment
;NEXT FRAGMENT INDEX 1
Scriptname MBRV_TIF__BookGiven Extends TopicInfo Hidden

;BEGIN FRAGMENT Fragment_0
Function Fragment_0(ObjectReference akSpeakerRef)
Actor akSpeaker = akSpeakerRef as Actor
;BEGIN CODE
Alias_Player.GetReference().RemoveItem(Alias_SlaveBook.GetReference(),1,False,Alias_Athrilor.GetReference())
;END CODE
EndFunction
;END FRAGMENT

;END FRAGMENT CODE - Do not edit anything between this and the begin comment
ReferenceAlias Property Alias_Player Auto
ReferenceAlias Property Alias_Athrilor Auto
ReferenceAlias Property Alias_SlaveBook Auto

 

 

Does that help?

Link to comment
Share on other sites

  • Recently Browsing   0 members

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