Jump to content

Photo

Quest log and issues


  • Please log in to reply
13 replies to this topic

#1
Envy123

Envy123

    Fluffy Alligator named Frog

    • Valenwood Islands
    • Elsweyr Pellitine
    • Black Marsh
  • 564 posts

The main questline is complete. Now, what needs to be done is really extensive testing to make sure I didn't miss anything.Changes:

Spoiler
Current issues:
Spoiler


Edited by Envy123, 03 January 2014 - 08:29 PM.


#2
Leonardo

Leonardo

    Reborn Old Timer

    • Valenwood Islands Beta Tester
  • 3,797 posts

-Currently, a book in the treasure chest is a TR book. We need some new books.

Although it isn't specifically about Valenwood books, but any threads in this GHF forum might give you a hint and you can always ask either Jac or Stuporstar (both of them are good writers and members on BSF) if they're up to it.



#3
AndalayBay

AndalayBay

    #ffc0db Wildebeest under #0000ff Flying Shoes

    • Unofficial Morrowind Patch
    • Dark Brotherhood Chronicles
    • Black Marsh
    • Wild Nuts
    • The Brotherhood of Old
    • TES3Gecko
    • Better Cities
    • Collective
    ▼▲
  • 12,093 posts
  • Location: Ontario, Canada

Envy asked me to have a look at why the Town Crier isn't cooperating.

 

Well you've got the first quest stage set to 10, which means that as soon as you start the quest, it will be at stage 10. However the condition on the Crier's greeting is:

 

Getstage VIMQ01 < 10.00

 

That's not going to work too well. :D Insert a new stage with Index = 0 and you should be good. It might also be nice to set the fame/infamy check for something like 5 so that the player has done a bit of adventuring before this kicks in. In fact his find package is set to only find the player when their fame or infamy is greater than 20, so I would remove the conditions from his greeting. 20 is a little high. I suggest 10 or 15. I would also mark the Must Complete and Skip Fallout Behavior flags on his find package and perhaps Always Run.

 

General comments:


    [*]don't set quests to Start Game Enabled unless necessary. It looks like the main quest line is meant to be linear, so start the next quest in the series from the final stage result script. Have a look at the DBC main quest line for the process for this (quests with ID's of DBCMQxx).
    [*]you might need a master control quest. In DBC, the quest called DBCAwakening is our master control quest. Have a look at the quest script and you'll see how we use it to control the entire flow of the mod.
    [*]it looks like the second quest is meant to have several parts. If so, you'll need a control quest for it. A good example of this is the quest for joining the Mages Guild in the base game. You need recommendations from each city, so there is one control quest and separate quests for each city. The Collecting the Keys quest in DBC is another example.
    [*]if VI requires OBSE, then please consider adding support for Oblivion XP, It only requires that you check if the player has Oblivion XP loaded and then award some points in the quest result script. Once again, you can look at DBC for examples of this. I can also provide  you some guidelines on how many points to award.
    [*]don't just rely on the Complete Quest flag to stop a quest - it doesn't. A quest will keep running until you issue a stop quest. If you don't need a quest to keep running after it is complete, then issue a StopQuest command in the final quest stage result script. Once again, see DBC for examples. Some quests do need to keep running after they are complete - this is how you get NPC's to make some comment after you've completed the quest, but if you don't need this, then save resources and stop the quest.
    [/list]

    Black Marsh also has examples of all of the above, but you won't be able to check those scripts until we release the alpha.

     

    Scripting comments:


      [*]scripts should only have one GameMode block
      [*]don't overuse DoOnce variables. Make use of GetStage and SetStage to negate their use.
      [*]don't forget that quest scripts run repeatedly so use DoOnce variables, or quest stages to prevent actions from being performed repeatedly.
      [/list]
Madam, you have between your legs an instrument capable of giving pleasure to thousands, and all you can do is scratch it!
-- Attributed to Thomas Beecham in reference to the performance of a female cello soloist

#4
Envy123

Envy123

    Fluffy Alligator named Frog

    • Valenwood Islands
    • Elsweyr Pellitine
    • Black Marsh
  • 564 posts

That's not going to work too well. :D Insert a new stage with Index = 0 and you should be good. It might also be nice to set the fame/infamy check for something like 5 so that the player has done a bit of adventuring before this kicks in. In fact his find package is set to only find the player when their fame or infamy is greater than 20, so I would remove the conditions from his greeting. 20 is a little high. I suggest 10 or 15. I would also mark the Must Complete and Skip Fallout Behavior flags on his find package and perhaps Always Run.

 

Thanks, I'll try it and let you know how it goes :D

 

don't set quests to Start Game Enabled unless necessary. It looks like the main quest line is meant to be linear, so start the next quest in the series from the final stage result script. Have a look at the DBC main quest line for the process for this (quests with ID's of DBCMQxx).

 

Oh thank you! Never thought of that. :)

 

it looks like the second quest is meant to have several parts. If so, you'll need a control quest for it. A good example of this is the quest for joining the Mages Guild in the base game. You need recommendations from each city, so there is one control quest and separate quests for each city. The Collecting the Keys quest in DBC is another example.

 

Actually, the second quest onwards branches out to three separate quests - one for each side. e.g. the second quest has

Spoiler
How best to do this? The general premise of the quests are similar but the three men all have different intentions.

 

if VI requires OBSE, then please consider adding support for Oblivion XP, It only requires that you check if the player has Oblivion XP loaded and then award some points in the quest result script. Once again, you can look at DBC for examples of this. I can also provide  you some guidelines on how many points to award.

 

I'd love to do that! :)

Though I don't know how the XP thing does work.

 

don't just rely on the Complete Quest flag to stop a quest - it doesn't. A quest will keep running until you issue a stop quest. If you don't need a quest to keep running after it is complete, then issue a StopQuest command in the final quest stage result script. Once again, see DBC for examples. Some quests do need to keep running after they are complete - this is how you get NPC's to make some comment after you've completed the quest, but if you don't need this, then save resources and stop the quest.

 

Thanks - I don't think the NPCs would want to mention the first quest so I'll do StopQuest :)

And thank you for the scripting tips, much appreciated. Coming from Morrowind, the scripting language is so similar but the quest system is entirely different.



#5
AndalayBay

AndalayBay

    #ffc0db Wildebeest under #0000ff Flying Shoes

    • Unofficial Morrowind Patch
    • Dark Brotherhood Chronicles
    • Black Marsh
    • Wild Nuts
    • The Brotherhood of Old
    • TES3Gecko
    • Better Cities
    • Collective
    ▼▲
  • 12,093 posts
  • Location: Ontario, Canada

 

it looks like the second quest is meant to have several parts. If so, you'll need a control quest for it. A good example of this is the quest for joining the Mages Guild in the base game. You need recommendations from each city, so there is one control quest and separate quests for each city. The Collecting the Keys quest in DBC is another example.

 Actually, the second quest onwards branches out to three separate quests - one for each side. e.g. the second quest has
Spoiler
How best to do this? The general premise of the quests are similar but the three men all have different intentions.

 

Spoiler
 

 

if VI requires OBSE, then please consider adding support for Oblivion XP, It only requires that you check if the player has Oblivion XP loaded and then award some points in the quest result script. Once again, you can look at DBC for examples of this. I can also provide  you some guidelines on how many points to award.

 I'd love to do that! :)Though I don't know how the XP thing does work.

 

Just add the following code to the quest completion result script:

 

  if (isModLoaded "Oblivion XP.esp")    runScriptLine "set ObXPMain.interOpGainedXPMessage to sv_Construct %qCompleted Mystery of the Watcher%q"    runScriptLine "set ObXPMain.interOpGainedXP to 50"  endif

 

You have to customize the name of the quest, which is the part between the %q's, and the number of points to award, which is 50 in the above example. I give some pointers on how many points to award in this thread.


Madam, you have between your legs an instrument capable of giving pleasure to thousands, and all you can do is scratch it!
-- Attributed to Thomas Beecham in reference to the performance of a female cello soloist

#6
Envy123

Envy123

    Fluffy Alligator named Frog

    • Valenwood Islands
    • Elsweyr Pellitine
    • Black Marsh
  • 564 posts

it looks like the second quest is meant to have several parts. If so, you'll need a control quest for it. A good example of this is the quest for joining the Mages Guild in the base game. You need recommendations from each city, so there is one control quest and separate quests for each city. The Collecting the Keys quest in DBC is another example.

Actually, the second quest onwards branches out to three separate quests - one for each side. e.g. the second quest has
Spoiler
How best to do this? The general premise of the quests are similar but the three men all have different intentions.
Spoiler

if VI requires OBSE, then please consider adding support for Oblivion XP, It only requires that you check if the player has Oblivion XP loaded and then award some points in the quest result script. Once again, you can look at DBC for examples of this. I can also provide you some guidelines on how many points to award.

I'd love to do that! :)Though I don't know how the XP thing does work.
Just add the following code to the quest completion result script:
if (isModLoaded "Oblivion XP.esp")    runScriptLine "set ObXPMain.interOpGainedXPMessage to sv_Construct %qCompleted Mystery of the Watcher%q"    runScriptLine "set ObXPMain.interOpGainedXP to 50"  endif
You have to customize the name of the quest, which is the part between the %q's, and the number of points to award, which is 50 in the above example. I give some pointers on how many points to award in this thread.
Thank you :)I actually meant three different questgivers in the questline and you only choose one to report to.

#7
AndalayBay

AndalayBay

    #ffc0db Wildebeest under #0000ff Flying Shoes

    • Unofficial Morrowind Patch
    • Dark Brotherhood Chronicles
    • Black Marsh
    • Wild Nuts
    • The Brotherhood of Old
    • TES3Gecko
    • Better Cities
    • Collective
    ▼▲
  • 12,093 posts
  • Location: Ontario, Canada

Same idea. Still one quest with multiple branches.


Madam, you have between your legs an instrument capable of giving pleasure to thousands, and all you can do is scratch it!
-- Attributed to Thomas Beecham in reference to the performance of a female cello soloist

#8
Envy123

Envy123

    Fluffy Alligator named Frog

    • Valenwood Islands
    • Elsweyr Pellitine
    • Black Marsh
  • 564 posts

Same idea. Still one quest with multiple branches.

Thank you :)I've done most of the second quest so this will be better :D

#9
Envy123

Envy123

    Fluffy Alligator named Frog

    • Valenwood Islands
    • Elsweyr Pellitine
    • Black Marsh
  • 564 posts

Main post updated. :)



#10
Envy123

Envy123

    Fluffy Alligator named Frog

    • Valenwood Islands
    • Elsweyr Pellitine
    • Black Marsh
  • 564 posts

The questline is all done. Just needs extensive testing. I've put in all the Oblivion XP scripts.


Edited by Envy123, 03 January 2014 - 06:58 PM.


#11
Leonardo

Leonardo

    Reborn Old Timer

    • Valenwood Islands Beta Tester
  • 3,797 posts

-Path-gridding in the small island cave makes actors behave all funny. And Volus won't open the door despite him having the key.-NPCs on the isles, when they find the player via an AI package, go to the player and then run away. And they won't escort the player despite the path grids.

How about the player *order* NPC to interact with the world by open the door just like what you can do in Skyrim instead of being scripted (via AI package?).



#12
Envy123

Envy123

    Fluffy Alligator named Frog

    • Valenwood Islands
    • Elsweyr Pellitine
    • Black Marsh
  • 564 posts

 

-Path-gridding in the small island cave makes actors behave all funny. And Volus won't open the door despite him having the key.-NPCs on the isles, when they find the player via an AI package, go to the player and then run away. And they won't escort the player despite the path grids.

How about the player *order* NPC to interact with the world by open the door just like what you can do in Skyrim instead of being scripted (via AI package?).

 

 

The NPC opens the door if it's unlocked so I don't know why he doesn't unlock the door. Path-gridding is not really my forte.



#13
AndalayBay

AndalayBay

    #ffc0db Wildebeest under #0000ff Flying Shoes

    • Unofficial Morrowind Patch
    • Dark Brotherhood Chronicles
    • Black Marsh
    • Wild Nuts
    • The Brotherhood of Old
    • TES3Gecko
    • Better Cities
    • Collective
    ▼▲
  • 12,093 posts
  • Location: Ontario, Canada

 

 

-Path-gridding in the small island cave makes actors behave all funny. And Volus won't open the door despite him having the key.-NPCs on the isles, when they find the player via an AI package, go to the player and then run away. And they won't escort the player despite the path grids.

How about the player *order* NPC to interact with the world by open the door just like what you can do in Skyrim instead of being scripted (via AI package?).

 

 

The NPC opens the door if it's unlocked so I don't know why he doesn't unlock the door. Path-gridding is not really my forte.

 

 

Path-gridding is pretty straightforward. What problems are you having with it? Here's the wiki page on the different options.  Here's a tutorial that explains how to do it. Here's another one that's easier to read. Skip down to the section on path-gridding. One thing about path grids: don't overdo them. The part in that first tutorial I link in which the author says the nodes are safe points for the NPC to stand on is not true. Yes, the NPC will walk along a path grid in the line you have set up, so if you have a corridor with only a single row of nodes, NPC's won't be able to get by one another. But they can deviate from a path grid slightly, so you don't need a node right on top of a chair marker, for example.

 

I also noticed you gave up on getting the town crier working. If you're having problems like that, remove all the AI packages and just have him stand there. Go up to him and click on him and see if his greeting works then. If it does, then there is something wrong with your AI packages. If not, then there is something wrong with the greeting. Simplify things while debugging so that you can narrow down the cause.

 

It's also very important to have a save from before you entered the worldspace or the cell. Once Oblivion has loaded the state of the cell, you will have to wait for the cell to reset before truly judging the behaviour of AI packages and other things that are dependent on the state. At this point, I would do a clean save without VI loaded and do your testing from a save with the mod newly loaded. If your NPC's still won't unlock doors then, then post up a screenshot of your AI packages and the scene with path grids enabled (in the CS). Also show a screenshot of the lock (that has the name of the key) and the NPC's inventory. :) You can post those in the quests forum if you want to discuss those issues privately.


Madam, you have between your legs an instrument capable of giving pleasure to thousands, and all you can do is scratch it!
-- Attributed to Thomas Beecham in reference to the performance of a female cello soloist

#14
Envy123

Envy123

    Fluffy Alligator named Frog

    • Valenwood Islands
    • Elsweyr Pellitine
    • Black Marsh
  • 564 posts

 

 

 

-Path-gridding in the small island cave makes actors behave all funny. And Volus won't open the door despite him having the key.-NPCs on the isles, when they find the player via an AI package, go to the player and then run away. And they won't escort the player despite the path grids.

How about the player *order* NPC to interact with the world by open the door just like what you can do in Skyrim instead of being scripted (via AI package?).

 

 

The NPC opens the door if it's unlocked so I don't know why he doesn't unlock the door. Path-gridding is not really my forte.

 

 

Path-gridding is pretty straightforward. What problems are you having with it? Here's the wiki page on the different options.  Here's a tutorial that explains how to do it. Here's another one that's easier to read. Skip down to the section on path-gridding. One thing about path grids: don't overdo them. The part in that first tutorial I link in which the author says the nodes are safe points for the NPC to stand on is not true. Yes, the NPC will walk along a path grid in the line you have set up, so if you have a corridor with only a single row of nodes, NPC's won't be able to get by one another. But they can deviate from a path grid slightly, so you don't need a node right on top of a chair marker, for example.

 

I also noticed you gave up on getting the town crier working. If you're having problems like that, remove all the AI packages and just have him stand there. Go up to him and click on him and see if his greeting works then. If it does, then there is something wrong with your AI packages. If not, then there is something wrong with the greeting. Simplify things while debugging so that you can narrow down the cause.

 

It's also very important to have a save from before you entered the worldspace or the cell. Once Oblivion has loaded the state of the cell, you will have to wait for the cell to reset before truly judging the behaviour of AI packages and other things that are dependent on the state. At this point, I would do a clean save without VI loaded and do your testing from a save with the mod newly loaded. If your NPC's still won't unlock doors then, then post up a screenshot of your AI packages and the scene with path grids enabled (in the CS). Also show a screenshot of the lock (that has the name of the key) and the NPC's inventory. :) You can post those in the quests forum if you want to discuss those issues privately.

 

 

His greeting never worked in the first place. But other greetings do work. Very strange indeed. :shrug:

I've removed the fame/infamy requirement and added a few more responses if the player is not well known enough.

 

I do test it with a save where I didn't enter the VI worldspace. I have provided details with quest IDs in the private forum. :)






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users