CogAndStar's Showcase

4 posts / 0 new
Last post
CogAndStar's picture
CogAndStar
Quest Developer
Joined:
2022-08-28 19:08
Last seen:
9 months 3 weeks ago

Howdy! I've been lurking a while, and decided to try my hand at a showcase. I made a quest titled A Dangerous Delivery. It starts in Seyda Neen; talk to Valgus Cnisius on the upper floor of Arrille's Tradehouse. It also involves a visit to Balmora and an encounter along the road to Hla Oad. Thanks in advance to whoever reviews it!

 

AttachmentSizeDate
Binary Data cog-quest-showcase-a-dangerous-delivery.ESP21.46 KB2022-08-28 19:48
Mortimer's picture
Mortimer
Senior DeveloperQuest Reviewer
Joined:
2016-06-10 21:48
Last seen:
7 hours 22 min ago

Hey there,

Great work with the dialogue and journals. The quest is well written and uses standard tes3 language, and that's 80% of the work right there.

There are a few issues that I'd like to see fixed:

1. All NPCs need scripts. The T_ScNPC_MW_Map0 script you probably saw is the one used for npcs. If they shouldn't have generic dialogue, they get the nolore version

2. Your custom NPC scripts should be TR_m0_npcname, the naming format you used is for generic scripts

3. Your latest rumor is unfiltered and will appear on any npc in any cell regardless of quest state

4. "delivery a package" response for Darvala can be chosen infinitely for infinite gold

5. Muriel's response to "a better offer" after quest completion is still "I won't give you the offer unless you get the package"

6. Finding the body should be an OnActivate and not a proximity trigger (good job with that, though)

7. If you complete the quest (deliver to balmora) without asking Valgus about the other courier, his response is "I already told you about the other courier"

The way you would normally handle concurrent subplots like this is with a separate journal index that has the exact same name (not id, so e.g. TR_m0_SN_DangerDelivery2, quest name A Dangerous Delivery). Then you can track progress in that separately and all the entries will all be grouped together.

8. Because you added the 'agree or not agree' journal indices to help valgus deal with muriel, the killing murial journal index (ondeath) doesn't trigger in her script, as its locked to 80 and both of those options set the journal to 83 and 87.

9. Add short T_Local_NPC as a variable to your scripts (see other T_SCNPC_MW scripts)

10. Try to rotate your NPCs such that it looks a bit more natural. Darvala in particular just faces the wall by default

11. When you agree to let Muriel leave, just give her a g5 greeting with Goodbye in the results box like "I'll be leaving immediately, thank you for sparing me" or whatever so that you can't keep asking her about the courier and the weather or whatever

 

Issues I won't make you fix

-You shouldn't put Q in the NPC name, but putting q in the misc item name isn't a bad idea. (changing this would be a huge hassle at this point)

-Be careful copy/pasting things with apostrophes, it puts weirdly spaced apostrophes instead of regular ones

CogAndStar's picture
CogAndStar
Quest Developer
Joined:
2022-08-28 19:08
Last seen:
9 months 3 weeks ago

thanks for the feedback! here's an updated version.

AttachmentSizeDate
Binary Data cog-quest-showcase-a-dangerous-delivery.ESP23.51 KB2022-08-30 18:01
Mortimer's picture
Mortimer
Senior DeveloperQuest Reviewer
Joined:
2016-06-10 21:48
Last seen:
7 hours 22 min ago

Great job!

Overall this is almost exactly what I expect out of a showcase, this was awesome.

a few minor things i'd note (don't fix these as you already passed, but for the future)

-latest rumors (and any generic entry) needs a condition "notlocal T_Local_NoLore == 0" set as well. for a nolore npc you need to make sure all of the variables from the generic script are declared in your custom script (yours was missing the T_local_NoLore, specifically)

-all new topics should have addtopic "topic" in the results box to make sure it appears in the list (Somehow I didn't catch this the first time)

-try to keep your journal indexes in sequential order (low at the top, finished at the bottom), and keep your topic entries with low journal/start quest at the bottom, and finished entries at the top. this is 50% organizational and 50% taking advantage of how morrowind dialogue works

-for scripts you want your 'script is done' return statement to be at the very top

e.g. for adruzan's script you would have:

begin

if control == 1, return

if control != 1 etc script logic

if TR_map != 0

end

 

recommended for promotion