Jump to content

[LE] vanilla player home question


Recommended Posts

After buying the house when you open the door for the first time you get a message. I simply can't find what triggers that message. A triggerbox with on enter? A script on the door? A script on the key?

There must be something that triggers it the first time and never again but I can't find it in the CK.

Link to comment
Share on other sites

It's a bit of a blind hunt in the quest tab, I'll admit, not easy to figure out which quest does what in the CK... Becoming Thane and buying houses are named "Favor" followed by a number. "Favor253" for instance is making you Thane of Whiterun and letting you buy Breezehome, giving you the key to access it and enabling Lydia and her guestroom's furniture.

 

That will trigger the "HousePurchase" quest - and if you take a look at that one, you'll find that "WhiterunDoor" for instance is a ReferenceAlias there, with a script attached to it that completes Breezehome's purchase "onActivate(...)". So to answer your question, yeah, that's a script, not attached to the door itself, but to its ReferenceAlias in the related quest. And the message you receive when you first enter Breezehome is the "SetObjectiveDisplayed" in the fragment script in Quest stage 10.

 

It all sounds a bit intimidating at first trying to understand how quests are built but there are lots of great tutorials available - try watching Darkfox127's youTube series - he's here on the Nexus and his videos are really great to help you get more familiar with how the game works and how to mod it.

 

But if you're thinking of creating a custom house, you really don't need quests for that...

 

Good luck! :)

Link to comment
Share on other sites

Thank you. I'm still trying to figure out quests. I did the creationkit.com Bendu tutorial. Still don't understand why you would want aliases for a run once quest that only uses custom items. I can see it for reused quests that repeat with different items to fetch for example but not for single use quests. No one really explains why you would bother. Also, so many tutorials seem to be all the same starting with dialog. Wish there were more 2 stage quest tutorials. Started when you pick up something, read something, enter somewhere. End stage when you do something else like open, enter, buy whatever. Just more simple examples about moving stages along and displaying the messages. Dialog can wait until later to learn. Need more baby step tutorials.

Link to comment
Share on other sites

I'll look at those videos. Another question. Is there any reason not to advance quest stages outside of the quest itself. For example having a triggerbox with a script that uses properties to set objectives completed and displayed and not use any script fragments at all? I really hate the quest system and anything that can bypass any part of it without creating problems will be welcome. You are stuck with it if you have dialog I know but I've been avoiding dialog in favor of notes as much as possible.

 

I have watched the quest starting scene video several times. It's actually in my favorites list. I've also watched a bunch of Darkfox127 videos. They are very helpful but I can't find any quest tutorials from him.

Link to comment
Share on other sites

Well the thing is you need script fragments are the easiest way to advance quest stages - of course, you can also advance stages by using the "SetStage" function when some object is activated, like read a book for instance, by attaching a simple script to a custom book, like:

Quest Property MyQuest Auto

AutoState Unread
	Event onRead()
		If MyQuest.GetStage() == 10
			MyQuest.SetStage(20)
			GoToState(Done)
		EndIf
	EndEvent
EndState

State Done
EndState

But doing it this way may return false on occasions - take a look at the discussion tab of that CK page about that: https://www.creationkit.com/index.php?title=SetCurrentStageID_-_Quest. Can't say if it's reliable or not to try and advance a quest this way, personally I've never done it and woudn't try it (quests are buggy enough as it is ;))

 

Other than dialogues, forcing actors to do do something, creating scenes, making sure the player does things in the proper order, collects everything, kills the boss, etc., the main advantage of quest is they stay in your logs so you can keep track of your progress, know where it starts and when you're finished. If you're 100% sure you don't need any of that, you could always try to script objectReferences to get your quest progressing. But you may find out it's going to be a little bit more complex than you expected, if only to make sure that your quest progresses as expected and your objects, triggerboxes or activators don't get activated several times.

 

I've done this in one of my mods which is a playerhouse (Clearsky Hideout) - hundreds of objects to activate in there which trigger or enable other stuff in series: objects to build, hidden room or containers to discover, mysteries to solve, etc... Heck, even finding the key was a puzzle!.. It ended up being so complicated building it that I had to write a "walkthrough" which even I use now when I play it years later!.. It probably would have been less fun using quests, but it undoubtedly would have been easier to script. The only reason I could do without any quest at all is it did not matter in which order you advanced, I did not need dialogues or scenes, there was no boss and it was obvious when you had reached your goal.

 

But then again, I never tried to create a quest AND avoid fragments.

Link to comment
Share on other sites

Quest *fragments* aren't something I like to deal with either, but *quests themselves* are an extraordinarily powerful and flexible resource. An awful lot of things are best accomplished via scripting either on a quest or a referencealias. This is because, amongst other things, the same object can be in multiple aliases simultaneously, which means multiple mods can modify the same resource with them. The alias-fill tool is the best way of finding something and exposing it for scripting. Aliases are handy for designing even non-generic quests because you can set up the logic and relations of each thing in the quest without needing to care about *what specifically* is in them, so that if for example you decide to swap your questgiver from Jarl Balgruuf to Kodlak Whitemane, or whatever, all you need to do is swap the alias instead of every single reference to them throughout your code/dialogue.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...