jfkenny30 Posted March 24, 2008 Share Posted March 24, 2008 I've written a new content mod quest and it just needs a little polishing before it's finished. I am having difficulty in ascertaining as to why I am receiving no nice brown message boxes when my quest begins and is updated via topic based result scripts. When I start my Quest via meeting and discussing a topic with my Main Actor I get white text at the top of the screen saying something along the lines "New Quest added to Journal : To catch a thief!" When I use console to start it myself I get the much lauded browny beige box which gives you the option to set as active quest or continue. Furthermore, I only get the white text across the screen saying something like "Your Journal has been updated" when I move to a new stage within the quest as a result of topic based result script progression. Where I have scripted quest stage advancements involving deaths of actors, arrival at markers and picking up items and the like I have received the aforementioned box giving the details of the log entry. This doesn't happen to the existing Oblivion mods that use topics as quest stage advancements. Any thoughts? Link to comment Share on other sites More sharing options...
wizardmirth Posted March 24, 2008 Share Posted March 24, 2008 This is normal because techincally the dialogue is still running when the stage is updated by it. One way to get the journal to pop after dialogue sets it up is to have the quest script bump it. This means you can have one stage for the dialogue update and another follow-up stage for GameMode to set in the quest script when the if block you'll make is proven true. Just remove the journal text from the dialogue setstage and add it to the new quest script setstage. A better way is simply to use a quest variable to be set by the dialogue so that you don't create a lot of excess stages. Link to comment Share on other sites More sharing options...
jfkenny30 Posted March 24, 2008 Author Share Posted March 24, 2008 This is normal because techincally the dialogue is still running when the stage is updated by it. One way to get the journal to pop after dialogue sets it up is to have the quest script bump it. This means you can have one stage for the dialogue update and another follow-up stage for GameMode to set in the quest script when the if block you'll make is proven true. Just remove the journal text from the dialogue setstage and add it to the new quest script setstage. A better way is simply to use a quest variable to be set by the dialogue so that you don't create a lot of excess stages. Thanks for the reply but it has left me with a new problem....implementing what you just said! I wouldn't really know how to go about adding something like that into my main quest script. If you could help me out a little with doing that I would be very grateful once more. Thanks J Link to comment Share on other sites More sharing options...
wizardmirth Posted March 24, 2008 Share Posted March 24, 2008 First declare the variable then add the if statement to your quest script. The variable name can be anything you like as well as the quest stage numbers.ScriptName MyUniqueQuestScriptName short stagebump Begin GameMode if stagebump == 1 setstage MyUniqueQuestName to 10 set stagebump to 2 endif EndNotice how I set the "stagebump" variable to 2 at the end of the if statement. This is because Quest Scripts run once every frame and if you do not do this then the script will constantly run any true statements. This way the statement is only true once. Next, in the result script of your dialogue you would addset MyUniqueQuestName.bumpstage to 1You just need to make sure that this specific dialogue result can only be accessed once which you can secure in a number of different ways, the most obvious being to check the "Say Once" box. Another way would be to use certain conditions in dialogue. Also worthy of note is that you will get the journal pop-up here because the result is being run in "Game Mode" which means that anything in this sort of block is only checked when the character is not in any menus or, say, dialogue. :thumbsup: Link to comment Share on other sites More sharing options...
jfkenny30 Posted March 24, 2008 Author Share Posted March 24, 2008 Sir, you are indeed a genius. Many thanks, I had implemented some variable stuff for other things like checking if characters are dead, letters have been read etc etc but didn't think to use this for such an application. You live and learn. Once again, many thanks. J Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.