I searched this forum and was surprised not to find an answer to my question. So I will start a new topic.
In short, I want to replace the fixed reward the player receives for completing one of the Bounty Quests with a leveled reward, drawn from one of the vanilla "QuestReward" leveled lists.
To that end, I created a custom version of BQScript, which is as follows:
Spoiler
,
Scriptname _RS07_BQScript extends Quest Conditional{Script on BQ quests, has common properties and functions.}Keyword Property BQActiveQuest AutoLeveledItem Property RewardItem AutoLocationAlias Property Alias_Location AutoLocationAlias Property Hold Autofunction RewardPlayer() Game.GetPlayer().AddItem(RewardItem, 1, false)EndFunctionfunction PlayerChangedLocation() if getStage() < 10 if Game.GetPlayer().IsInLocation(Alias_Location.GetLocation()) == False; debug.trace(self + " player is no longer in location and hasn't picked up quest, so shutting down quest so it can happen elsewhere.") Hold.GetLocation().setKeywordData(BQActiveQuest, 0) stop() EndIf EndIfEndFunction,
The script compiles alright, and I am even able to select "LvlQuestReward01Small" (for example) from the drop-down list on the properties page. When I test things out in-game, however, the player does not receive any reward at all, even though Proventus (for example) says his "You've done us a fine service...Here is your reward." speech.
In case it matters, I am testing this by way of "coc riverwood" from the main menu screen, getting a bounty quest from Orgnar, "coc"-ing to the bandit cell, using "killall" to complete the objective, then "coc whiterundragonsreach" to get to Proventus and claim the reward.
Any ideas what's wrong?
Thanks in advance for your help!