q2-9-Mis

After a quest claim has been cleared by a review, the thread will be moved here. Discussion is still allowed.

Moderator: Lead Developers

User avatar
theviking
Developer Emeritus
Posts: 2145
Joined: Mon Jan 08, 2007 2:49 pm
Location: Alphen aan den Rijn, the Netherlands

q2-9-Mis

Post by theviking »

Claim type: Quest
Claim ID: TR_q2-9-Mis (#1840)
Faction: Misc
Parent claim: TR_2-2-Tel (#65)
Claimed by: MMMowSkwoz
Status: Approved (Progress: 100%)
Local map: 2-2 fishing village
Location: 1:(4167, -163):0
Files: TR_q2-9-Mis_MMMowSkwoz_1.esp; TR_q2-9-Mis_MMMowSkwoz_2.esp; TR_q2-9-Mis_MMMowSkwoz_3.esp; TR_q2-9-Mis_MMMowSkwoz_4.esp; TR_q2-9-Mis_MMMowSkwoz_5.esp

---

Adurin-Ouaka's misc quests. I would like two misc. quests for this village probably involving shipwrecks. (Just a wild stab in the dark)
Interiors: 25
Reviews: more then 250!
Quest Reviews: 3
NPC claims: 2

Currently looking for quest designers.
User avatar
immortal_pigs
Developer
Posts: 582
Joined: Thu May 15, 2008 2:45 pm
Location: Utrecht

Post by immortal_pigs »

Okay, this doesn't necessarily take place IN Adurin-Ouaka, but it does take place nearby. And it's a misc. quest idea so I suppose it should be alright?

North of Adurin-Ouaka there's a Dwemer Ruin high in the mountains. There's a big bridge that leads from a sealed entrance towards a nearby camp (see picture, the camp is on the at the left part of the ruin). Even when you pull a lever the entrance remains sealed. The camp is inhabited by three Orcs who are related to eachother.

The backstory roughly goes like this: There once lived two large of families of Orcs in a Dwemer Ruin. One day, one Orc left home. Years later the Dwemer Ruin was attacked by a large force of bandits led by an Imperial. The Orc was with him. He helped the Imperial and his bandits slaughter his own family and all the other Orcs. Only three Orcs were able to escape, but they got shut out and have no way to escape from where they currently are.

The quest should have two basic routes;
Route 1: You help the three Orcs exact revenge to reclaim the Ruin.

Route 2: You help the Imperial finish his deed by killing the last three remaining Orcs together with the Rogue Orc.

Either way I suppose the PC could be rewarded with a sum of gold and some information. The information being the fact that there's a secret Armory hidden within the Dwemer Ruin. The PC will be told where the entrance is.


Well that's basically the rough idea, both sides could easily be given more detail.
User avatar
theviking
Developer Emeritus
Posts: 2145
Joined: Mon Jan 08, 2007 2:49 pm
Location: Alphen aan den Rijn, the Netherlands

Post by theviking »

Two orcish families that inhabit the dwemer ruin is unlikely, so you need to change the background. This claim is ment for two quests which are related to Adurin-Ouaka, which is hard to do with your quest. I'll open up a claim for wilderness quests soon and this one is a good candidate for those quests. I'll paste it to that claim then.
Interiors: 25
Reviews: more then 250!
Quest Reviews: 3
NPC claims: 2

Currently looking for quest designers.
User avatar
gro-Dhal
Lead Developer
Posts: 985
Joined: Sun Nov 05, 2006 4:32 pm
Location: A charter'd street

Post by gro-Dhal »

Flin Galore!

In Andalas Tradehouse you meet Merro Galvix, an Imperial (needs to be created). Recognising you as a fellow non-local, he confides in you that he's an agent of the EEC who was sent to find a ship that sank in the area. He found the wreck just offshore from Adurin-Ouaka, but it's cargo of Flin bound for the lord of Tel Mothrivra was missing and he thinks someone in the village has it. The locals have grown suspicious of him hanging around and won't talk to him, so he asks you to investigate. He can't report back before recovering at least six bottles of Flin and finding out who took them.

Nobody in the village will discuss the matter with you directly, and get defensive if they feel they're being questioned. However they may casually mention that Dreynis Teran has been drunk a lot lately, more so than usual. If you visit Dreynis you'll find him inebriated, and if he has a high enough disposition he'll suggest you become drinking buddies. The best person to buy booze from, he says, is his friend Vilyn Avani. He seems to have an endless supply.

If you confront Vilyn at this point he will deny everything point blank, and say you have no evidence beyond a drunk's ramblings. At this point you should get a journal entry suggesting he must stash the liquor somewhere else, and you should keep an eye on him.

Around midnight Vilyn should appear at his front door and walk/sneak to a point at the water's edge NW of the village, linger there a while then go home. If you investigate you'll find a couple of barrels of Flin half-buried and hidden behind some rocks- they should be hard to spot unless you're actively looking for them. If you confront Vilyn at this point he'll be angry, but he won't attack you.

Finally you can report back to Galvix, who will take six bottles and allow you to keep whatever else was in those barrels, plus a small cash reward (100g or so). If you just give him six bottles but don't tell him who was responsible you get nothing but his thanks. If you stumble upon the barrels before the quest is played out, or if you happen to have six Flin bottles to hand anyway, you get no reward (because the latter circumstance is unlikely, and in the first two cases you'll have helped yourself to whatever else was in the stash anyway).
User avatar
theviking
Developer Emeritus
Posts: 2145
Joined: Mon Jan 08, 2007 2:49 pm
Location: Alphen aan den Rijn, the Netherlands

Post by theviking »

Nice quest, Gro-Dhal! It fits with the village and creates some cool Fargoth flash-backs.
Interiors: 25
Reviews: more then 250!
Quest Reviews: 3
NPC claims: 2

Currently looking for quest designers.
User avatar
immortal_pigs
Developer
Posts: 582
Joined: Thu May 15, 2008 2:45 pm
Location: Utrecht

Post by immortal_pigs »

gro-Dahl, I hope the Imperial can be made a Dunmer, since dialogue in Adurin-Ouaka reflects the fact that it is an all-Dunmer village. Of course, that can be changed if absolutely necessary.

Here's a quest idea:

In AO there's a villager named Mithas Vemyn. In dialogue he will mention that he was once a promising Telvanni Oathman and met or setlled down with the love of his life, Nileno Dralara, in AO. Nileno then left Mithas, leaving only a note saying that she might come back, or something like that. Mithas has been waiting there for her ever since. So the quest would obviously be 'find out what happened to Nileno Dralara'.

The backstory will be something like this: Nileno was just a commoner living in AO. Mithas came to AO as Oathman and met Nileno. He gave up on his Telvanni 'carreer' and stayed with Nileno for 'x' years. Nileno however, got into contact with some cult of Boethiah. Eventually she leaves Mithas to go travel with the cult. For years she does cultist stuff for Boethiah, until a Temple raid kills the majority of its members.

Nileno doesn't believe Mithas would still be waiting for her, so she goes to Almalexia where she currently still lives as a beggar.

The quest can only start by talking to Mithas. If the PC were by chance to come across Nileno, nothing would happen. Mithas will not ask you to go looking for Nileno, but if the PC wants to he can. This is more or less a passive quest, since the PC won't get a material reward [Mithas is poor].
The PC will have absolutely no idea as to where she can find Nileno. The only way to find her would be by luck, by scouring every city in search for her, or by opening the CS to find out were she is.

Once you tell Nileno that Mithas is still waiting for her, she'll want you to escort her to AO. Once you're there your journal will update and you'll be happy about yourself for doing such a great deed.

You can also, before they're united, tell Mithas that Nileno is dead. He will believe you. The next time you return to Adurin Ouaka, Mithas will be gone. You will find him dead in his shack with a couple of bittergreen pettals lying around.
User avatar
Bloodthirsty Crustacean
Developer Emeritus
Posts: 3869
Joined: Fri Feb 02, 2007 7:30 pm
Location: Elsewhere

Post by Bloodthirsty Crustacean »

immortal_pigs wrote:gro-Dahl, I hope the Imperial can be made a Dunmer, since dialogue in Adurin-Ouaka reflects the fact that it is an all-Dunmer village. Of course, that can be changed if absolutely necessary.
Per GD's plan, it remains an all-Dunmer village - that guy's just an outlander staying by.
a man builds a city
with
Banks and Cathedrals
a man melts the sand so he
can see the world outside


"They destroyed Morrowind? Fiddlesticks! Now we're going to have to rebuild it again!"
User avatar
theviking
Developer Emeritus
Posts: 2145
Joined: Mon Jan 08, 2007 2:49 pm
Location: Alphen aan den Rijn, the Netherlands

Post by theviking »

Might I suggest that Nileno instead lives as a beggar in Helnim or Tel Muthada. Then we could make this quest in the map2 misc quest phase already. An original quest idea, by the way, and I have the idea it would be very rewarding (even without a big reward) Together with the shipwreck quest I believe that makes two quests for Adurin-Ouaka, doesn't it?
Interiors: 25
Reviews: more then 250!
Quest Reviews: 3
NPC claims: 2

Currently looking for quest designers.
User avatar
immortal_pigs
Developer
Posts: 582
Joined: Thu May 15, 2008 2:45 pm
Location: Utrecht

Post by immortal_pigs »

Both Helnim and Tel Muthada are relatively close to AO. I'd prefer it if Nileno were to be located somewhere far away and in a big city. But I guess the quest would still work if she were to be placed in Helnim. As long as she isn't too easy to find.
User avatar
theviking
Developer Emeritus
Posts: 2145
Joined: Mon Jan 08, 2007 2:49 pm
Location: Alphen aan den Rijn, the Netherlands

Post by theviking »

I'll summarise the quests for this claim and will give other modders some timre to react:

Flin Galore!

In Andalas Tradehouse you meet Merro Galvix, an Imperial (needs to be created). Recognising you as a fellow non-local, he confides in you that he's an agent of the EEC who was sent to find a ship that sank in the area. He found the wreck just offshore from Adurin-Ouaka, but it's cargo of Flin bound for the lord of Tel Mothrivra was missing and he thinks someone in the village has it. The locals have grown suspicious of him hanging around and won't talk to him, so he asks you to investigate. He can't report back before recovering at least six bottles of Flin and finding out who took them.

Nobody in the village will discuss the matter with you directly, and get defensive if they feel they're being questioned. However they may casually mention that Dreynis Teran has been drunk a lot lately, more so than usual. If you visit Dreynis you'll find him inebriated, and if he has a high enough disposition he'll suggest you become drinking buddies. The best person to buy booze from, he says, is his friend Vilyn Avani. He seems to have an endless supply.

If you confront Vilyn at this point he will deny everything point blank, and say you have no evidence beyond a drunk's ramblings. At this point you should get a journal entry suggesting he must stash the liquor somewhere else, and you should keep an eye on him.

Around midnight Vilyn should appear at his front door and walk/sneak to a point at the water's edge NW of the village, linger there a while then go home. If you investigate you'll find a couple of barrels of Flin half-buried and hidden behind some rocks- they should be hard to spot unless you're actively looking for them. If you confront Vilyn at this point he'll be angry, but he won't attack you.

Finally you can report back to Galvix, who will take six bottles and allow you to keep whatever else was in those barrels, plus a small cash reward (100g or so). If you just give him six bottles but don't tell him who was responsible you get nothing but his thanks. If you stumble upon the barrels before the quest is played out, or if you happen to have six Flin bottles to hand anyway, you get no reward (because the latter circumstance is unlikely, and in the first two cases you'll have helped yourself to whatever else was in the stash anyway).

Shackled by Love (anyone against this title?)

In AO there's a villager named Mithas Vemyn. In dialogue he will mention that he was once a promising Telvanni Oathman and met or setlled down with the love of his life, Nileno Dralara, in AO. Nileno then left Mithas, leaving only a note saying that she might come back, or something like that. Mithas has been waiting there for her ever since. So the quest would obviously be 'find out what happened to Nileno Dralara'.

The backstory will be something like this: Nileno was just a commoner living in AO. Mithas came to AO as Oathman and met Nileno. He gave up on his Telvanni 'carreer' and stayed with Nileno for 'x' years. Nileno however, got into contact with some cult of Boethiah. Eventually she leaves Mithas to go travel with the cult. For years she does cultist stuff for Boethiah, until a Temple raid kills the majority of its members.

Nileno doesn't believe Mithas would still be waiting for her, so she goes to Helnim where she currently still lives as a beggar somewhere in a back-alley.

The quest can only start by talking to Mithas. If the PC were by chance to come across Nileno, nothing would happen. Mithas will not ask you to go looking for Nileno, but if the PC wants to he can. This is more or less a passive quest, since the PC won't get a material reward [Mithas is poor].
The PC will have absolutely no idea as to where she can find Nileno. The only way to find her would be by luck, by scouring every city in search for her, or by opening the CS to find out were she is.

Once you tell Nileno that Mithas is still waiting for her, she'll want you to escort her to AO. Once you're there your journal will update and you'll be happy about yourself for doing such a great deed.

You can also, before they're united, tell Mithas that Nileno is dead. He will believe you. The next time you return to Adurin Ouaka, Mithas will be gone. You will find him dead in his shack with a couple of bittergreen pettals lying around.
Interiors: 25
Reviews: more then 250!
Quest Reviews: 3
NPC claims: 2

Currently looking for quest designers.
User avatar
theviking
Developer Emeritus
Posts: 2145
Joined: Mon Jan 08, 2007 2:49 pm
Location: Alphen aan den Rijn, the Netherlands

Post by theviking »

Claim designed.
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

This quest sounds pretty interesting. What else is needed before it gets released to Unclaimed?

If I could make a suggestion, in the Shackled by Love quest, if Nileno is really far away (in another city?) escorting her back to Adurin-Ouaka could be a real hassle. Since she's supposed to be a beggar, how about if she had become lame and couldn't walk far any more so you need to convince (or pay) a wizard to teleport her back? You could even work in a condition like the player can teleport her if their intelligence is high enough and they know both mark and recall.

I'd be quite interested in working on this, but if it won't be released for a while, I'm happy to take the Mosslog quest instead.
User avatar
theviking
Developer Emeritus
Posts: 2145
Joined: Mon Jan 08, 2007 2:49 pm
Location: Alphen aan den Rijn, the Netherlands

Post by theviking »

It is designed and all, but we just need to wait until we have a master file of map2. Then we can work with that file. I don't know how long that will take (probably not that long) but if I see Faalen's recommendation you will be done quick with the mosslog quest and then you can claim one of these two.
Interiors: 25
Reviews: more then 250!
Quest Reviews: 3
NPC claims: 2

Currently looking for quest designers.
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

Claiming. I've actually already been working on this and have written most of the dialogue for Flin Galore.

Had a quick wander around AO just now on the new release (yay!), and I'm thinking I may need to modify some of Dreynis Teran's existing dialogue to make him more of a drunk. Would that be ok?

Also, like I mentioned in the Quest plan for map2 thread, I thought Flin Galore could fit in nicely with the EEC quests. With my current dialogue plans, I've got it so you can do it either as an EEC quest (where someone sends you to help Merro Galvix) or just by randomly meeting him.

Thoughts?
User avatar
Bloodthirsty Crustacean
Developer Emeritus
Posts: 3869
Joined: Fri Feb 02, 2007 7:30 pm
Location: Elsewhere

Post by Bloodthirsty Crustacean »

MMMowSkwoz wrote:Claiming. I've actually already been working on this and have written most of the dialogue for Flin Galore.
Just so you know, that's slightly cheeky. ;) You're supposed to claim it first (or at least say you're working on it), so that there are no issues if, say, I'd claimed these quests before you.

Anyway, with such a small department, it's not really an issue, and I wasn't in a rush to claim this anyway, but it is good to follow protocol.

Regardless, I look forwards to working on Map 2 quests with you, Meeshka. It's great to have such enthusiasm again. :)

To your questions - your quest, you play it how you want. Feel free to edit dialogue as much as you need, as long as it doesn't break character with the NPCers vision (if they clearly had one). Making a character be drunk for quest purposes is totally legit (as long as their dialogue doesn't indicate they're a teetotaller, etc.).
a man builds a city
with
Banks and Cathedrals
a man melts the sand so he
can see the world outside


"They destroyed Morrowind? Fiddlesticks! Now we're going to have to rebuild it again!"
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

Eeek, sorry. I was just thinking about it and starting jotting down some notes, which ended up turning into a full blown dialogue tree.. :? I'll make sure to tell you guys in future.

Oh, and is what Andres said correct? Are we waiting for the next release before we quest it up?
MaMeeshkaMowSkwoz - choose your syllables
User avatar
Bloodthirsty Crustacean
Developer Emeritus
Posts: 3869
Joined: Fri Feb 02, 2007 7:30 pm
Location: Elsewhere

Post by Bloodthirsty Crustacean »

No. For some reason he thought we didn't have an .esm. We most certainly do. :)

Questing is full steam ahead!
a man builds a city
with
Banks and Cathedrals
a man melts the sand so he
can see the world outside


"They destroyed Morrowind? Fiddlesticks! Now we're going to have to rebuild it again!"
User avatar
Andres Indoril
Senior Developer
Posts: 1459
Joined: Fri Jan 13, 2006 9:01 pm
Location: Lost.... Somewhere?
Contact:

Post by Andres Indoril »

Really?
Awesome to hear that. So it is certain that there are no naughty naughties doing map 2 too kinkeh for questing?
Excellent...
[url=http://andresindoril.blogspot.com/][img]http://i45.photobucket.com/albums/f94/Andres_Indoril/siggyleft.jpg[/img][/url][url=http://www.youtube.com/user/AndresIndoril][img]http://i45.photobucket.com/albums/f94/Andres_Indoril/siggyright.jpg[/img][/url]
"You guys are no fun, I'll start my own TR with dead children and toy guars!" -Why
User avatar
theviking
Developer Emeritus
Posts: 2145
Joined: Mon Jan 08, 2007 2:49 pm
Location: Alphen aan den Rijn, the Netherlands

Post by theviking »

Granting, happy modding since you started already. But your other claim has a higher priority, please don't forget that one.
User avatar
Bloodthirsty Crustacean
Developer Emeritus
Posts: 3869
Joined: Fri Feb 02, 2007 7:30 pm
Location: Elsewhere

Post by Bloodthirsty Crustacean »

I'm pretty sure MowSkwoz has finished Mudlap. He's just waiting for testing/review.
a man builds a city
with
Banks and Cathedrals
a man melts the sand so he
can see the world outside


"They destroyed Morrowind? Fiddlesticks! Now we're going to have to rebuild it again!"
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

Yep, Mudlap and t'Mosslog is done. If you want me to change/improve anything, just say the word.
MaMeeshkaMowSkwoz - choose your syllables
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

Naming convention questions:

What's the convention for naming global variables?

I'm creating Merro Galvix for the Flin Galore quest, but I'm hoping to use him again for some additional EEC quests. Should I ID him as TR_m2_q_9_AO_Merro_Galvix or just Tr_m2_Merro_Galvix, since he may not be exclusive to this quest?
MaMeeshkaMowSkwoz - choose your syllables
User avatar
Bloodthirsty Crustacean
Developer Emeritus
Posts: 3869
Joined: Fri Feb 02, 2007 7:30 pm
Location: Elsewhere

Post by Bloodthirsty Crustacean »

For globals, check what I did for the ones used in Temple quests. Take that, and then stick a _[qnumber]_ in at some point.

For the NPC, there's no problem with just calling him (but just him) TR_m2_Merro...

Also, I think if you went for full on name, it should just be "TR_m2_q_9_Merro" (without the AO)
a man builds a city
with
Banks and Cathedrals
a man melts the sand so he
can see the world outside


"They destroyed Morrowind? Fiddlesticks! Now we're going to have to rebuild it again!"
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

Bumping it up to 20%. I finally had some free time today so I did the big ol' script for making our thief sneak around. It's now working smoothly and all the dialogue for Flin Galore has been written, so it's well on the way.

Just keeping y'all updated.
MaMeeshkaMowSkwoz - choose your syllables
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

...And as soon as I say it's working smoothly, I find an error.

Ok, I'm at a loss here and would appreciate any ideas. Basically, all the sneaking around works fine, but I'm having problems with the section where Vilyn Avani confronts the player if he catches them following him. I want it to be:

If the player is within 1000 game units, and has line of sight to Vilyn, and is detected (i.e. not successfully sneaking), then Vilyn approaches the player and greets them. The issue is that whatever I do, I can't get Vilyn to approach the player - he just stops dead and won't move.

Here are the scripts. The first is the global script, the second is the local script on Vilyn Avani. I'm fairly sure the issue is with the distcheck block in the local script (if you don't feel like reading it all... :) ).

Code: Select all

begin TR_m2_q_9_FlinGaloreGlobal

;This is the global script activated twice during the Flin Galore! quest.
;The first activation makes Vilyn Avani sneak around at night
;The second activation moves Merro Galvix to Helnim Hall

Float timer     		;general timer
Short vilynvar		;0=normal, 1=stop script, -1 or -2 =don't execute script
Short delay			;handles a one time delay
Short trackday		;records the game day

if ( vilynvar == 1 )								;This stops the script when necessary
	StopScript "TR_m2_q_9_FlinGaloreGlobal"
	Return
elseif ( vilynvar == -1 )								;If Vilyn has completed a loop
	if ( GetJournalIndex "TR_m2_AO_FlinGalore" >= 70 )	;if the player has found the Flin
		Set vilynvar to 1											;toggle to stop the script
		return
	elseif ( GameHour > 20 )										;otherwise wait until after 8pm
		if ( trackday != Day )										;(on the next day if the previous run happened before midnight)
			Set vilynvar to 0										;and let Vilyn go for a walk again
		endif
	endif
endif


;this is what happens the second time this script is run - it moves Merro back to the EEC HQ in Helnim
;if ( GetJournalIndex "TR_m2_AO_FlinGalore" >= 80 )
;	if ( "TR_m2_Merro_Galvix"->GetDistance "player" >= 5000 )
;		"TR_m2_Merro_Galvix"->PositionCell, 11765, 4548, 12942, 217, "Helnim, Helnim Hall: East Empire Company Headquarters"
;		Set vilynvar to 1
;		Return
;	else
;		Return
;	endif
;endif


;the rest of the script is what happens the first time the script is run
;it handles Vilyn Avani's sneaking about

;don't run in menu mode
if ( MenuMode )
	return
endif

;we don't want vilyn disappearing whilst the player is in the shack
if ( GetPCCell "Adurin-Ouaka, Vilyn Avani's Shack" )
	return
endif

;This block creates a delay of 15 seconds between the player leaving the shack and the script executing
;(so Vilyn doesn't leave the shack with the player, which would be slightly ridiculous)
if ( delay == 0 )
	Set Timer to ( Timer + GetSecondsPassed )		;count time
	if ( Timer > 15 )					;if 15sec passed
		Set Timer to 0					;reset timer
		Set delay to 1					;allow rest of script to execute
	else							;otherwise
		return						;prevent script from running
	endif
endif


;This makes Vilyn do his walk once each night
if ( vilynvar == 0 )
	if ( GameHour > 21 )																					;if it's after 9pm
		"TR_m2_Vilyn Avani"->PositionCell, 268051, -4871, 249, 331, "Adurin-Ouaka"		;trigger the walk by placing him outside
		Set trackday to Day																				;record the day (prevents him walking again if he gets back before midnight)
		Set vilynvar to -2																					;stop this block happening again
	elseif ( GameHour < 5 )																				;if it's before 5am
		"TR_m2_Vilyn Avani"->PositionCell, 268051, -4871, 249, 331, "Adurin-Ouaka"		;trigger the walk by placing him outside (no need to record the hour because it's after midnight)
		Set vilynvar to -2																					;stop this block happening again
       endif
endif

End

Code: Select all

Begin TR_m2_q_9_VilynScript

;this is the local script on vilyn Avani for the Flin Galore! quest.
;It handles Vilyn's movement and checking whether the player is caught following him

Short distcheck		;toggles checking whether player is caught peeking (0 = not caught, -1 = caught, more than 1 = checking)
Short trackmove 	;tracks the progress of movement
Float Timer_A		;timer for distcheck
Float Timer_B		;timer for trackmove
Float Timer_C		;timer for preventing Vilyn getting stuck (bug prevention)
short TR_Map
short control
short controlQ

;standard map2 npc clause
if ( TR_Map != 2 )
	Set TR_Map to 2
endif


;don't run in menu mode
if ( menumode )
	return
endif


;rest of the script only runs when Vilyn leaves his shack - this is triggered from the global script TR_m2_q_9_FlinGaloreGlobal
if ( GetPCCell "Adurin-Ouaka, Vilyn Avani's Shack" )
	return
endif

;this block delas with Vilyn checking to see if the player is following (checks every 2 seconds)
if ( distcheck == 1 )
	Set Timer_A to ( Timer_A + GetSecondsPassed )	;count seconds
	if ( Timer_A > 2 )											;if 2 seconds passed
		Set Timer_A to 0										;start counting again
		Set distcheck to 2										;check conditions
	endif
elseif ( distcheck == 2 )
	if ( GetDistance "player" < 1000 )						;player is close enough to be caught
		set distcheck to 3
	else
		set distcheck to 1										;player isn't close, start counting again
	endif
elseif ( distcheck == 3 )
	if ( GetDetected, player )									;player is detected
		Set distcheck to 4
	else
		set distcheck to 1										;player isn't detected, start counting again
	endif
elseif ( distcheck == 4 )
	if ( GetLOS, player )										;player can be seen
		Set distcheck to 5
	else
		Set distcheck to 1										;player can't be seen, start counting again
	endif
elseif ( distcheck == 5 )										;now Vilyn has caught the player
	if ( GetForceSneak )
		ClearForceSneak										;stop sneaking
	endif
	AiFollow, player, 0, 0, 0, 0								;walk towards the player
	Set distcheck to 6
elseif ( distcheck == 6 )										;wait for Vilyn to walk close enough
	if ( GetDistance, player < 300 )							;if near the player
		Set distcheck to 7
		ForceGreeting											;shout at player
		Return
	endif
elseif ( distcheck == 7 )
	Set distcheck to -1											;stop checking and remember player was caught
	Set trackmove to ( trackmove - 1 )						;give Vilyn his AITravel instructions again
endif


;this block deals with enabling and performing the movement
if ( trackmove == 0 )
	SetHello, 0										;don't greet the player
	AiTravel, 267825, -4577, 157				;walk down from platform
	Set trackmove to 1
elseif ( trackmove == 1 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 2
	endif
elseif ( trackmove == 2 )
	AiTravel, 267065, -4372, 157				;walk to village centre
	Set trackmove to 3
elseif ( trackmove == 3 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 4
	endif
elseif ( trackmove == 4 )
	Set Timer_B to ( Timer_B + GetSecondsPassed )		;wait for 2 seconds
	if ( Timer_B > 2 )
		Set Timer_B to 0
		Set trackmove to 5
	endif
elseif ( trackmove == 5 )
	AiTravel, 265782, -4628, 252				;walk towards field
	Set trackmove to 6
elseif ( trackmove == 6 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 7
	endif
elseif ( trackmove == 7 )
	AiTravel, 265491, -5202, 252				;walk behind Dreynis Teran's shack
	Set trackmove to 8
elseif ( trackmove == 8 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 9
	endif
elseif ( trackmove == 9 )
	Set Timer_B to ( Timer_B + GetSecondsPassed )		;wait for 3 seconds
	if ( Timer_B > 3 )
		Set Timer_B to 0
		Set trackmove to 10
	endif
elseif ( trackmove == 10 )
	ForceSneak										;start sneaking
	Set distcheck to 1								;start to check for player following
	AiTravel, 265928, -5393, 131				;go behind Dreynis's shack
	Set trackmove to 11
elseif ( trackmove == 11 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 12
	endif
elseif ( trackmove == 12 )
	AiTravel, 266126, -5746, 216				;go towards rocks
	Set trackmove to 13
elseif ( trackmove == 13 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 14
	endif
elseif ( trackmove == 14 )
	AiTravel, 267126, -5670, 216				;go past Andilo Vadryon's shack
	Set trackmove to 15
elseif ( trackmove == 15 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 16
		ClearForceSneak							;stop sneaking
	endif
elseif ( trackmove == 16 )
	Set Timer_B to ( Timer_B + GetSecondsPassed )		;wait for 3 seconds
	if ( Timer_B > 3 )
		Set Timer_B to 0
		Set trackmove to 17
	endif
elseif ( trackmove == 17 )
	if ( distcheck != -1 )							;if not caught by player
		ForceSneak									;start sneaking again
	endif
	AiTravel, 267874, -5766, 195				;go behind Vilyn's shack
	Set trackmove to 18
elseif ( trackmove == 18 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 19
	endif
elseif ( trackmove == 19 )
	AiTravel, 268659, -5380, 263				;go towards rocks
	Set trackmove to 20
elseif ( trackmove == 20 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 21
		ClearForceSneak							;stop sneaking
	endif
elseif ( trackmove == 21 )
	Set Timer_B to ( Timer_B + GetSecondsPassed )		;wait for 2 seconds
	if ( Timer_B > 2 )
		Set Timer_B to 0
;		MessageBox "He should split paths here."
		if ( distcheck == -1 )						;if caught by the player
			Set trackmove to 33					;head home
		else											;otherwise
			Set trackmove to 22					;head for the barrel
		endif
	endif

elseif ( trackmove == 22 )						;this section continues towards the hidden Flin

	if ( distcheck != -1 )							;if not caught by player
		ForceSneak									;start sneaking again (if not caught already)
	endif
	AiTravel, 269703, -5408, 308				;go towards treestump
	Set trackmove to 23
elseif ( trackmove == 23 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 24
	endif
elseif ( trackmove == 24 )
	AiTravel, 270356, -4885, 328				;go around rocks
	Set trackmove to 25
elseif ( trackmove == 25 )
	if ( GetAIPackageDone )						;wait for him to get there
;		MessageBox "He should split paths here."
		if ( distcheck == -1 )						;if caught by the player
			Set trackmove to 31					;head home
		else											;otherwise
			Set trackmove to 26					;keep heading for the barrel
		endif
	endif

elseif ( trackmove == 26 )						;this section continues towards the hidden Flin

	AiTravel, 270635, -4990, 328				;sneak to hidden barrel
	Set trackmove to 27
elseif ( trackmove == 27 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 28
	endif
elseif ( trackmove == 28 )
	Set Timer_B to ( Timer_B + GetSecondsPassed )		;wait for 8 seconds
	if ( Timer_B > 8 )
		Set Timer_B to 0
		Set trackmove to 31
	endif

elseif ( trackmove == 31 )						;from here is the return journey

	AiTravel, 269224, -4618, 272				;go back towards village
	Set trackmove to 32
elseif ( trackmove == 32 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 33
		Set distcheck to 0							;stops checking for player following
		if ( GetForceSneak )
			ClearForceSneak						;stop sneaking
		endif
	endif

elseif ( trackmove == 33 )						;this is the shortcut to the return journey

	AiTravel, 268656, -4671, 209				;go further towards village
	Set trackmove to 34
elseif ( trackmove == 34 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 35
	endif
elseif ( trackmove == 35 )
	AiTravel, 267799, -4531, 164				;walk back to platform outside shack
	Set trackmove to 36
elseif ( trackmove == 36 )
	if ( GetAIPackageDone )						;wait for him to get there
		Set trackmove to 37
	endif
elseif ( trackmove == 37 )
	AiTravel, 268046, -4893, 249				;walk to door
	Set trackmove to 38
elseif ( trackmove == 38 )
	if ( GetAIPackageDone )						;wait for him to get there
		SetHello, 30
		Set "TR_m2_q_9_FlinGaloreGlobal".vilynvar to -1								;note that loop is complete ( Global script then prevents repeat that night)
		Set trackmove to 0																		;reset trackmove
		Set Timer_A to 0
		Set Timer_B to 0																			;reset all the timers
		Set Timer_C to 0
		PositionCell, -438, -489, -111, 132, "Adurin-Ouaka, Vilyn Avani's Shack"		;go back into shack
	endif
endif

;This block prevents bugs with Vilyn getting stuck / forgetting where he should be going
if ( GetCurrentAIPackage <= 0 )								;if Vilyn is idle
	Set Timer_C to ( Timer_C + GetsecondsPassed )
	if ( Timer_C > 10 )											;for more than 10 seconds (should only happen if womething's gone wrong)
		Set trackmove to ( trackmove - 1 )					;give him his last AITravel orders again
		Set Timer_C to 0										;reset timer
	endif
else
	if ( Timer_C > 0 )											;if nothing's going wrong
		Set Timer_C to 0										;reset timer
	endif
endif

End
With these two scripts, if you go within 1000 units of Vilyn whilst distcheck=1 (i.e. when he is checking), he just freezes. Then if you approach him he force greets you. There is also a very narrow distance gap where he will approach you (if you're about 400 units away I think).

I'd love any ideas, because I'm stumped.
MaMeeshkaMowSkwoz - choose your syllables
User avatar
Faalen
Developer
Posts: 312
Joined: Wed Jun 18, 2008 5:22 am
Location: America's Dairyland

Post by Faalen »

The only issue I've picked out is that both GetDetected and GetLOS are extremely slow and unreliable functions. It's possible they're just not triggering when you expect them to, or not triggering at all. Toss some debug MessageBox lines under them to see if they're working. If they are, the game might be giving him multiple AI directions simultaneously and confusing him. Make sure he's not being actively told to travel when you want him to follow. I don't think he is, but it's hard for me to parse a script this big in my head.

Don't functions like MenuMode and GetAIPackageDone require a "true" value (like blahblah == 1) to be used? I've never seen them used as statements before. The game might be queuing his AI packages rather than giving them only when needed, which I suspect would override the follow package he's given.

(EDITED for clarification of my ideas.)
Q1-77-Tel current progress:
[url=http://tamriel-rebuilt.org/old_forum/viewtopic.php?p=266462#266462]Journals 100% done.[/url]
Practical implementation is now underway.
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

Hey Faalen, thanks for looking it over.

I tried it with a MessageBox at ( distcheck == 6 ) and it always triggers. I even did a ( GetCurrentAIPackage == 3 ) check and it triggered (3 is AIFollow ), so the AIFollow function is being called, just not working.

I think you're right about the multiple AI functions thing, but I can't figure out how to fix it. I tried adding returns after every distcheck result beyond 2 (so the bottom half of the script doesn't run at all for distcheck > 1) but the same problem still happened.


Oh, and the MenuMode and GetAIPackageDone thing: I only discovered this yesterday when checking through abot1's script fixes. It seems that if the function returns Boolean (i.e. only 0 or 1), then you can just write

if ( MenuMode )

for

if ( MenuMode == 1 )

I'm not sure it it's more efficient or not. I was really only trying it out on this script.
MaMeeshkaMowSkwoz - choose your syllables
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

WIP uploaded and bumped up to 30%. Flin Galore can now be played all the way through. I just need to clear up the remaining bugs. I'm still having the problem above though - I might have to simplify it to avoid that issue.

Can I make a request? I'd like to add in a 'little secret' entry that Dreynis Teran is pretty susceptible to drink (so I'd just make every other relevant entry slightly less likely to allow for the new one). I just want to pad out his character a little for the quest.
MaMeeshkaMowSkwoz - choose your syllables
User avatar
Bloodthirsty Crustacean
Developer Emeritus
Posts: 3869
Joined: Fri Feb 02, 2007 7:30 pm
Location: Elsewhere

Post by Bloodthirsty Crustacean »

You're free to do whatever you want, mate! As long as it's in-character and sensible, I'm sure we'd let you get away with pretty much anything. :)
a man builds a city
with
Banks and Cathedrals
a man melts the sand so he
can see the world outside


"They destroyed Morrowind? Fiddlesticks! Now we're going to have to rebuild it again!"
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

Another WIP uploaded. Flin Galore is now essentially copletely done. I couldn't solve the above problem, so I just simplified and cut it out. However, I found another problem:

When Vilyn Avani is moved outside his shack to walk/sneak around, he loses all his collision properties. You can walk right through him. As soon as he returns to his shack he's perfectly solid again. There's seems to be no reason why this is happening. I checked the Fargoth quest, and he is completely solid througout, so it's probably due to moving him between cells. The only vaguely related thing I could find was ridable-creatures losing collision, but the solution to that (disable + enable every frame) didn't work.

Has anyone ever heard of anything like this before? Any ideas?

Anyway, onto the second quest in this claim. I've got two possible approaches:

1) The Simple Way:
Just as in the description. You only get the quest from Mithas, only find Nileno in Helnim by chance, and then walk her home.

2) The More Complicated Way:
As above, only get the quest from Mithas, find Nileno by chance. However, when you find her she tells you she has become lame and is unable to walk. You have two options:
a) Return to Mithas and tell him where Nileno is. He will thank you and set off to find her. You can later find his body by the side of the road on the way to Helnim, where he has been robbed and killed.
b) Promise to find a mage to transport her back to Adurin-Ouaka. Asking around leads you to one (I'm thinking Ervul Dranoth), who offers to create a special scroll for you. He requires scrolls of mark, recall, something of Nileno's, and some money. Bringing these gives you a scroll which you then need to cast once in Adurin-Ouaka before bringing it to Nileno so she can transport herself. The reward is a reputation point.

I'm happy with either.
MaMeeshkaMowSkwoz - choose your syllables
User avatar
theviking
Developer Emeritus
Posts: 2145
Joined: Mon Jan 08, 2007 2:49 pm
Location: Alphen aan den Rijn, the Netherlands

Post by theviking »

I think I like the first one better; there are few "simple" quests, and handicapped people lately feature heavily in our quests. For example, Faalen's blind hermits, and the guy without tongue in Tel Mothrivra, etc. Good progress, MMMoSkwoz !
Interiors: 25
Reviews: more then 250!
Quest Reviews: 3
NPC claims: 2

Currently looking for quest designers.
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

Ok, the simple way it is. Hopefully it shouldn't take too long.
MaMeeshkaMowSkwoz - choose your syllables
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

I'm really busy right now with job applications/interviews and assignments, so things are slowing to a crawl, which is frustrating since both quests are almost finished. Hopefully I'll find a few hours to finish them off.

One thing: in Shackled by Love, Mithas Vemyn is supposed to be really poor, but his house has lots of valuable ingredients and gold in it (the table alone has over 700 gold worth of stuff on it). Do you want me to give the player a reward or just delete some of the stuff in his house?
MaMeeshkaMowSkwoz - choose your syllables
User avatar
immortal_pigs
Developer
Posts: 582
Joined: Thu May 15, 2008 2:45 pm
Location: Utrecht

Post by immortal_pigs »

I'd say just leave it; when I designed the quest I didn't notice it so I think most players wouldn't either.

However, I don't know the exact figures; if you were to compare the total value of his house's belongings to that of the other villagers, and his house is worth a lot more than perhaps change it. But I don't know if that is the case?

As far as I'm concerned, Mithas doesn't HAVE to be very poor. I don't see how it'd matter either way. But like I said above, if it really stands out than maybe you should make it part of the reward.
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

Another WIP uploaded. Everything has been completed and only one minor bug remains (Vilyn Avani's lack of collision properties).

Both quests are fairly short, so if anyone has a second it would be great to get some input.
MaMeeshkaMowSkwoz - choose your syllables
User avatar
Haplo
Lead Developer
Posts: 11651
Joined: Sat Aug 30, 2003 6:22 pm
Location: Celibacy

Post by Haplo »

Did you try recreating the NPC?
Forum Administrator & Data Files Manager

[06/19/2012 04:15AM] +Cat table stabbing is apparently a really popular sport in morrowind

[August 29, 2014 04:05PM] <+Katze> I am writing an IRC bot! :O
[August 29, 2014 04:25PM] *** Katze has quit IRC: Z-Lined
User avatar
Aeven
Lead Developer
Posts: 1964
Joined: Sun Aug 17, 2008 2:43 pm
Location: Groningen

Post by Aeven »

Another suggestion to regain collision would be to delete the NPC, save and close the CS, open the CS and add the NPC again.
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

I finally managed to solve it with a single disable and enable at the start of his journey (I'd only tried the recommended disable+enable every frame previously). I still have no idea why it happens though.

Hmm, I don't seem to be doing very well at forcing myself to work instead of mod..
MaMeeshkaMowSkwoz - choose your syllables
User avatar
Haplo
Lead Developer
Posts: 11651
Joined: Sat Aug 30, 2003 6:22 pm
Location: Celibacy

Post by Haplo »

Was the lack of collision the only bug?
Forum Administrator & Data Files Manager

[06/19/2012 04:15AM] +Cat table stabbing is apparently a really popular sport in morrowind

[August 29, 2014 04:05PM] <+Katze> I am writing an IRC bot! :O
[August 29, 2014 04:25PM] *** Katze has quit IRC: Z-Lined
MMMowSkwoz
Developer
Posts: 835
Joined: Mon Oct 27, 2008 11:18 pm
Location: London

Post by MMMowSkwoz »

Yep. There are still minor changes to be made once the EEC line has been done, but obviously I can't do that yet. If no-one has time to look at it pre-review, I'll give it a few last checks, clean it up, and put up the final version soon.
MaMeeshkaMowSkwoz - choose your syllables
Locked