Goto page Previous  1, 2
Author Message
Theo
Developer Emeritus
16 Dec 2004

Location: PRAGUE

One slight suggestion. I do not think a quest for fetching a generic items can be implemented well to make sense. If you are a slave in such a position will you accept only 5 standard healing potions instead of, say 3 quality and chitin armor instead of glass? This cries "implementation limitation!" like nothing else, as there is no in game rationale for this.
What if the slave would still have the bracelets and would only ask you to find a key and unlock them. For that you would have to steal it from the plantation. This is more logical solution and also more exciting than fetching a random junk from the nearest armorer.



tr_m2_ep_free_v2.jpg
 Description:

Download
 Filename:  tr_m2_ep_free_v2.jpg
 Filesize:  261.41 KB
 Downloaded:  171 Time(s)


_________________
THEO
Post Fri Apr 04, 2014 2:43 pm Send private message             Reply with quote                   up  
rot
Lead Developer
21 Oct 2012



Grant!


re: dialogue,
the technical correctness of the writing isn't a problem imo as that's relatively easy to fix; what's important is what it says and how it flows, and that mostly carries across languages. eg does it make sense for the character to be saying this in that situation? Does it sound artificial or like something the character would *naturally* say?
for instance, I recall a weak point of the previous iteration of this was the slaver sending you to the tower in a "go talk to X" quest fashion. Similarly, getting directions from ?Pedivur?(tower) to the mage sounds tricky. Again feel free to change locations if you find a better one, this mage's current cave is so far away it might be hard to work with



Agree about the chitin armour being a silly limitation; one COULD script things so as to allow giving him any type of light armour (start script from resultbox, check lowest in inventory, return Choices from the script, remove from script) though it wouldn't allow enchanted ones unless all listed.
Also wouldn't take mod content into account but that is by convention not a concern, same as self-made potions -> slave asking for health potions is still an option if you wish, allowing fitting amounts of any combination of standard types is easy.


Reg flowchart:

- You don't need to deal with the slaver being killed before accepting the quest from them. The initial rumour prolly shouldn't give a journal entry either, but if it does it should be a 'Finished' one, so no need to give another journal entry to close the log if the PC kills the slaver before actually taking the quest. (having a last Finished journal entry that simply finishes/cancels everything if you kill the slaver is still good)

- relatedly, to keep things simple, you can keep the mage and slave Disabled before the quest is started/mentioned by the slaver (otherwise need to provide an alternate start/path to the quest if you find them first)

- reporting failure: I'd rather not have fail-timers on quests unless it's for very specific reasons, because 99% of quests that are otherwise still supposed to have a general sense of urgency aren't and shouldn't be timed.

- reporting to the questgiver on failure (slave dead) is optional. It's also possible for the slave to die while you're escorting it, so generic wording ("is dead", not "I killed...") is better

- would the PC still have the option to report the location after refusing to help the slave with a key? or is that what "timer" refers to? perhaps showing the slave running out of the cave on his own is enough to plug that case.
Post Sat Apr 05, 2014 11:16 am Send private message             Reply with quote                   up  
Theo
Developer Emeritus
16 Dec 2004

Location: PRAGUE

I am still more in favor of having the slave ask for a key from the bracelet, if it is fine with the original design.

Not that I would mind the extra work put into an armor/potion script, but the result should matter somehow, like that the slave was in some fight after being released where the equipment of the slave could decide the outcome, but I do not want to go that crazy on this simple misc. quest.

This mechanic should be better implemented in a quest, where it makes more sense and player gets to see the result of his decision.

The option with a slave ties things more closely, as a player has to return to the plantation and steal there, rather than go shopping for specific items.

_________________
THEO
Post Sat Apr 05, 2014 11:33 am Send private message             Reply with quote                   up  
Theo
Developer Emeritus
16 Dec 2004

Location: PRAGUE

OK, so I have finished a dialog, which is in an enclosed spreadsheet for easier dialog/language/lore review. I have also simplified the quest flowchart, which I also enclose for easier orientation in the file.

Once this is approved I will implement it in CS. Meanwhile I will be working on scripts and interior/exterior adjustments.

These include:

- The only interior in the directions mentioned in the quest idea is a harru cave. Currently an abandoned bandit cave that has been taken over by a necromancer and an argonian thief.
I have:

a) Put a scripted rock in front of the entrance to the cave that disappears at the stage 30 of the quest.
b) Replaced the argonian with a khajiit slave and slightly modified the mage.
c) Replaced the undead in the tomb with scripted skeletons. They should be passive and non-hostile unless player starts a combat with the mage for some reason. Then he will have to fight his way back on the surface past strategically placed skeleton archers and mages.



tr_m2_ep_free_v2.jpg
 Description:
Flowchart

Download
 Filename:  tr_m2_ep_free_v2.jpg
 Filesize:  174.31 KB
 Downloaded:  163 Time(s)


TR_m2_q_A8_5.xls
 Description:
Dialog

Download
 Filename:  TR_m2_q_A8_5.xls
 Filesize:  40.5 KB
 Downloaded:  151 Time(s)


_________________
THEO
Post Wed Apr 09, 2014 11:18 am Send private message             Reply with quote                   up  
rot
Lead Developer
21 Oct 2012



a) I'd rather see the default/quest NPCs and creatures disabled and enabled according to quest states, than the exterior entrance being blocked by a rock (for many reasons - if the player has already explored that area without looking at the map they could have a VERY hard time figuring out the cave entrance has 'appeared' there; entrance would still be displayed on the minimap even when blocked; doorblocks don't really fit the open-world model without rather special reasons; etc.)
If the whole interior itself has to be retailored for the new occupants then it shouldn't be too hard to make the quest work both ways (eg even when finding them first)

b),c) - just a reminder that you can't replace or delete objects from an .esp file (since you're working based on TR_Mainland.esp, not TR_Mainland.esm - there are things you can't do on an ESP from another ESP); if something needs to be moved or deleted -> merge instructions


Gave your dialogue file a quick look; seems mostly fine, as in it will need grammar/conjugation... fixes here and there but little rephrasing, though I find the mage's dialogue a bit awkward in places ("How nice of you to ask so kindly!"...; the magic effects discussions with him and Pedivur sound gameplayish... don't think his being a Dunmer buying fire resist potions would be especially stressed as the reason why she'd suspect him)

- should never use "gp" (gold, coins, drakes... are all fine)
- topic "unlock Shamirrs bracers" -> "unlock Shamirr's bracers" (could also use "go free"; also if there are any other slaves @that farm, the key might need to work for them too?)
- in case you copy-paste dialogue from the xls file, many entries have words beginning with caps in the middle of sentences, I assume due to line breaks
Post Wed Apr 09, 2014 12:21 pm Send private message             Reply with quote                   up  
Theo
Developer Emeritus
16 Dec 2004

Location: PRAGUE

Ad a) That is probably a valid point, but exploring an empty cave only to find later that it has been a home for a mage for some time and he has not just been at home is also weird, but I guess this is more standard implementation so I will go with that.

b),c) I will keep that in mind.

_________________
THEO
Post Wed Apr 09, 2014 12:44 pm Send private message             Reply with quote                   up  
rot
Lead Developer
21 Oct 2012



re:a), having the mage & slave be non-hostile and present in the cave by default (even if the quest wasn't started) would be fine if you're willing to adapt for it:

- either uncondition all dialogue with the mage & slave so that all the options can be accessed with or without the quest, making sure dialogue still makes sense (slave mentions the farm when asking for help so you'd know where to escort him, mage mentions they plucked the slave from elsewhere on their own, etc.), and then tweaking or adding alternative finish/'start' entries to the quest giver at the farm

- or, when not sent by the farm questgiver, let the NPCs have only default dialogue - though it'd probably make sense for the slave to ask you to get the key if you've killed the mage, and it'd still need alternative entries from the questgiver if you've already found/killed them
Post Wed Apr 09, 2014 4:06 pm Send private message             Reply with quote                   up  
Theo
Developer Emeritus
16 Dec 2004

Location: PRAGUE

Well, that would mean redesigning the quest quite a lot so this time I think I will just go with the lazy solution and disable them in the inappropriate stages as you suggested. After all it is only temporary hideout for both of them.

Moreover this, I think, is quite a standard solution. Introducing more alternatives to the quest, I believe, would only be worthwhile if there were some alternative endings or payoffs for different paths.

_________________
THEO
Post Wed Apr 09, 2014 4:50 pm Send private message             Reply with quote                   up  
Theo
Developer Emeritus
16 Dec 2004

Location: PRAGUE

The quest should be done now, but I had (and will not have anytime soon) time to test it even once. It may not even be playable at this stage. If it is so, I will revisit it later in game.
_________________
THEO
Post Fri May 02, 2014 8:17 pm Send private message             Reply with quote                   up  
Theo
Developer Emeritus
16 Dec 2004

Location: PRAGUE

Ok, it is clearly a while since I wrote my last TES script. Could someone more knowledgable please take a look at those and tell me why thei compile in CS, but in the game they trhow "missing right eval" error?

Code:
Begin TR_m2_q_A8_5_Undead

if ( GetJournalIndex TR_m2_A8_5_FreeAtLast  < 30 )   
   if (GetDisabled == 0 )
      Disable
   endif
endif

if ( GetJournalIndex TR_m2_A8_5_FreeAtLast  == 30 )   
   if (GetDisabled == 1 )
      Enable
   endif
endif

if ( GetFight < 50 )
   if ( GetJournalIndex TR_m2_A8_5_FreeAtLast == 60 )
      SetFight 80
   endif
   if ( OnPCHitMe == 1 )
      SetFight 60
   endif
endif

if (GetHealth > 0)
   if ( GetJournalIndex TR_m2_A8_5_FreeAtLast == 130 )
      SetHealth -5
   endif
endif

end


Code:
Begin TR_m2_q_A8_5_Dras_Varethi
if ( GetJournalIndex TR_m2_A8_5_FreeAtLast  < 30 )   
   if ( GetDisabled == 0 )
      Disable
   endif
endif

if ( GetJournalIndex TR_m2_A8_5_FreeAtLast  == 30 )   
   if ( GetDisabled == 1 )
      Enable
   endif
   if ( GetDistance Player < 1024)
      ForceGreeting
   endif
endif

if (GetFight <100)
   if ( GetJournalIndex TR_m2_A8_5_FreeAtLast == 60 )
      SetFight 100
      StartCombat Player
   endif
   if ( OnPCHitMe == 1)
      SetFight 100
      StartCombat Player
   endif
endif

if ( OnDeath == 1)
   if ( GetJournalIndex TR_m2_A8_5_FreeAtLast < 70 )
      Journal TR_m2_A8_5_FreeAtLast 70
   endif
endif

if ( GetJournalIndex TR_m2_A8_5_FreeAtLast == 45 )
   SetHealth -5
   Journal TR_m2_A8_5_FreeAtLast 130
endif

if ( GetJournalIndex TR_m2_A8_5_FreeAtLast == 55 )
   SetHealth -5
   Journal TR_m2_A8_5_FreeAtLast 130
endif

if ( GetJournalIndex TR_m2_A8_5_FreeAtLast == 65 )
   SetHealth -5
   Journal TR_m2_A8_5_FreeAtLast 130
endif

if ( GetJournalIndex TR_m2_A8_5_FreeAtLast == 75 )
   SetHealth -5
   Journal TR_m2_A8_5_FreeAtLast 130
endif

end

_________________
THEO
Post Sun May 04, 2014 9:05 am Send private message             Reply with quote                   up  
rot
Lead Developer
21 Oct 2012



OnPCHitMe needs to be declared as short variable.

Unrelated: use of spaces before/after parentheses, commas... has to be consistent within the same line, something like
Code:
if (GetDisabled == 0 )     ;----> ( GetDisabled == 0 )

Code:
if ( OnPCHitMe == 1)     ;----> ( OnPCHitMe == 1 )

that seems to work most of the time might still rarely cause issues

(why the OnPCHitMe blocks in the first place? unless they have 0 fight by default, or are already using the OnPCHitMe detection for another purpose, attacking them will automatically trigger combat through the game AI)
Post Sun May 04, 2014 3:30 pm Send private message             Reply with quote                   up  
Theo
Developer Emeritus
16 Dec 2004

Location: PRAGUE

Thank you rot, I will try that out.
EDIT: It worked and so here it is. Still not completely bugfree, but testable version.

_________________
THEO
Post Sun May 04, 2014 7:08 pm Send private message             Reply with quote                   up  
Theo
Developer Emeritus
16 Dec 2004

Location: PRAGUE

OK, here it is. Alpha testing completed ready for review.
_________________
THEO
Post Thu May 08, 2014 9:02 pm Send private message             Reply with quote                   up  
rot
Lead Developer
21 Oct 2012



Tried playing your file, crashes due to .esm dependency :< we work on the internal version ESP, which is also why

Quote:
you can't replace or delete objects from an .esp file (since you're working based on TR_Mainland.esp, not TR_Mainland.esm - there are things you can't do on an ESP from another ESP); if something needs to be moved or deleted -> merge instructions



(plugins for the internal version don't display any dependency, they're just created with TR_Mainland.esp loaded but not 'Active' - and have to always be opened with it manually loaded along, else data gets lost when saved)

I've tried dryremoving the dependency with wrye mash,
hopefully nothing has been lost or unlinked, could you check to make sure?
also did you edit any exterior cells aside from Erethan Plantation? (CS automatically dirties some ext cells close to this quest, so can't tell at a glance)



TR_q2-16-Mis_Theo_3.esp
 Description:

Download
 Filename:  TR_q2-16-Mis_Theo_3.esp
 Filesize:  60.97 KB
 Downloaded:  130 Time(s)

Post Fri May 09, 2014 12:19 am Send private message             Reply with quote                   up  
Theo
Developer Emeritus
16 Dec 2004

Location: PRAGUE

I have checked the file and nothing is missing. All the unnamed cells can be removed.

The key locations are
"Erethan Plantation"
"Pedivur's Tower"
and
"Harru Cavern"

_________________
THEO
Post Fri May 09, 2014 7:11 pm Send private message             Reply with quote                   up  
rot
Lead Developer
21 Oct 2012



(really like that Shamirr blows himself up btw)

From only looking in the CS - haven't played it at all, so may not all be relevant and may have missed some:





llarys

- Greeting 5, journal state 125 defaults to "So have you found Shamirr yet?"

- standard procedure is to not block a quest forever if initially refused unless there's a specific reason for it;
here in particular having the choice between "No, thanks." and "Not right now." would let the player expect to be able to change their mind
(easy to add the choice again on Shamirr entry:"I am sure we will find it sooner or later even without your help." + checking Restart on journal state 10)

- not important but, Shamirr "I am starting to grow impatient. Any news about that cat?" could be one entry instead of 4
(by conditioning the "tell what happened" answers on journal states instead)

- Shamirr, "You did your part. Now let me do mine." conditioned as catch-all for journal>40 , looks like it's going to break the quest eg if journal = 50, 60 or 70.
should probably be positioned under those entries? ("I am starting to grow impatient. Any news about that cat?)

- Dras Varethi, "He lives in a Harru cave, I believe."...
should exclude journal=40 (so player doesn't pick that before telling Llarys about finding him)





pedivur

- Shamirr, "I already told you all that I had to say. I am not interested in this story any further. Period."
this entry from Pedivur could be obtained without having ever spoken to her (if Llarys killed... don't think the slave can be found without talking to her?) Could exclude those cases or use her controlQ local variable (exists by default in the NPC script) to make sure that isn't the case





wizard

- Shamirr, "Very well! After I turn your corpse into my minion, you will never see light of a day again!"
dunno whether it can cause trouble but resultbox "Journal TR_m2_A8_5_FreeAtLast 60" has two whitespaces

- Shamirr, "As I said, do with it whatever you want." should exclude journal=60

- Dras_Varet's Greeting 1: going with Choice 2 -> 1 -> 5 gives the "He belongs to Erethan Plantation" choice twice in a row, might or might not be weird &/or unintended

- Greeting 1, "What made you think I would do any deals with YOU?! I have only one proposal for you to consider -- Get lost from my cave or I will turn you into one of my undead minions. How does that sound to you?"
the answer that resultbox choice 6 ("Alright, alright! I am leaving.") leads to doesn't make sense

- Disposition requirement changes, can have weird results: you get the offer to buy at disposition 25 from greetings, but afterwards it gets blocked on topic Shamirr if under disp 50





slave

- Greeting 5, two of Shamirr's entries are for Choice=2 but you never get that option (choice is always 1,3,4) so they'll never appear; what were they supposed to be for?
"Dras Varethi promised to unlock Shamirrs bracers. Perhaps %PCName could talk to him. %PCName could also steal the key from Erethan plantation."
"Now that Dras Varethi is dead the only chance to unlock Shamirrs bracers is to get the key from Erethan plantation."

- Greeting 5 "Shamirr has no words for %PCName. Shamirr has to think about his plan so that masters did not capture Shamirr again."
should have a different (Goodbye?) entry for recaptured states 100 & 120

- Shamirr has default Slave dialogue eg. on topic "go free"; since it's preferrable to keep his class for generic dialogue conditioning, should probably add the option to free him from this topic as well if the PC has the key

- likewise topic "unlock Shamirr's bracers" should also have the standard vanilla result:
Set FreedSlavesCounter to FreedSlavesCounter + 1

- since there is now an Erethan slaves key, the other slaves there should probably be freeable too. How do we go about freeing slaves while they're still in a "civilian" situation? something about keeping their bracers on till they find an occasion to slip away and not drop them intead of default behaviour? or perhaps the slaves should say something about shamirr before/after the quest depending on results? so as not to trust the PC if captured him

- do TES slaves really use "messa" for master?






scripts:



didn't look at scripts much yet, but at a glance


- some have inconsistent spacing (which again might or might not cause trouble)
Code:
if (GetDistance Player < 1024 )


- TR_m2_q_A8_5_Midave_Larys shouldn't give a journal update ondeath if the quest wasn't started

- TR_m2_q_A8_5_Shamirr also has double whitespaces ( GetJournalIndex TR_m2_A8_5_FreeAtLast == 30 ),
probably not a problem but would still avoid it

- think good practice is to regroup ifblocks when possible eg

Code:
If ( GetJournalIndex TR_m2_A8_5_FreeAtLast < 30 )
...
endif

If ( GetJournalIndex TR_m2_A8_5_FreeAtLast  == 30 )
...
endif

If ( GetJournalIndex TR_m2_A8_5_FreeAtLast  == 50 )
...
endif


etc. becomes

Code:
If ( GetJournalIndex TR_m2_A8_5_FreeAtLast < 30 )
...
elseif ( GetJournalIndex TR_m2_A8_5_FreeAtLast  == 30 )
...
elseif ( GetJournalIndex TR_m2_A8_5_FreeAtLast  == 50 )
...
endif
Post Sat May 10, 2014 2:10 am Send private message             Reply with quote                   up  
Theo
Developer Emeritus
16 Dec 2004

Location: PRAGUE

Thanks rot, these are really good comments. I have fixed them and uploaded new file. Only some comments:

- The inconsistent and moody behaviour of the wizard is part of a way I wish to portray him, but I made the disposition requirements for selling the slave equal.

- The key is named "key from Shamirr's bracer" and unlocks his bracers only. But perhaps it should be turned to unversal key for Slaves in Erethan plantation and handled in a way you suggest.

- Would it be maybe reasonable to cancel the topic 'unlock Shamirr's bracers' and edit the topic 'go free' instead?

- Not sure about the messa.

- I was also continuing to playtest the quest and have noticed that the fact that Shamirr blows himself up results in bounty on Players (?) head. Perhaps putting a fire damage curse on him instead could be a workaround to that scripting bug?

_________________
THEO
Post Sat May 10, 2014 6:56 am Send private message             Reply with quote                   up  
rot
Lead Developer
21 Oct 2012



Theo wrote:

- Would it be maybe reasonable to cancel the topic 'unlock Shamirr's bracers' and edit the topic 'go free' instead?


If it still makes sense when used with the wizard; I think you needed 'unlock Shamirr's bracers' to ask him about it? Otherwise either redirecting to the chosen topic or using both are fine imo.


Theo wrote:

- I was also continuing to playtest the quest and have noticed that the fact that Shamirr blows himself up results in bounty on Players (?) head. Perhaps putting a fire damage curse on him instead could be a workaround to that scripting bug?


Ya I think that's a bug with death from damage spells cast by the AI, so it should work with a curse -(if not, can have a weak fire effect for show and manually kill him by script)
Post Sun May 11, 2014 1:58 am Send private message             Reply with quote                   up  
arvisrend
Lead Developer
04 Oct 2010

Location: substitutional world

Theo, please remove the dependency on TR_Mainland.esm and work with the TR_Mainland.esp active instead. Otherwise testing becomes a real pain.
Post Mon May 26, 2014 4:11 pm Send private message             Reply with quote                   up  
Theo
Developer Emeritus
16 Dec 2004

Location: PRAGUE

I have finished my work. I am uploading the independent file, you can test it with esp. If you will merge it with esp just remove all the non-quest related NPCs and monsters from Harru cavern.
_________________
THEO
Post Mon May 26, 2014 5:38 pm Send private message             Reply with quote                   up  
Theo
Developer Emeritus
16 Dec 2004

Location: PRAGUE

So is there any problem with the new file? Can this be moved to review_?
_________________
THEO
Post Fri Jun 06, 2014 8:19 am Send private message             Reply with quote                   up  
rot
Lead Developer
21 Oct 2012



(haven't been very diligent in sorting things between Claimed and Review, sorry)

Sending to review, hopefully there are no more viewing authorisation issues (and if so making Reviewing boards public for other categories might solve theirs too)
Post Sat Jun 07, 2014 3:10 pm Send private message             Reply with quote                   up  
rot
Lead Developer
21 Oct 2012



is on new browser
Post Thu Jan 12, 2017 8:03 pm Send private message             Reply with quote                   up  
Post new topic Reply to topic
 
Goto page Previous  1, 2
The content of this site is © by the Tamriel Rebuilt community. Morrowind, its expansions, and its content is © Bethesda Softworks.
Forums powered by phpBB © 2001, 2005 phpBB Group