u2020bullet Posted October 10, 2014 Share Posted October 10, 2014 So i started making a simple house mod for myself located next to a road leading to whiterun. I will be posting my questions in this thread.So far i have the exterior of the house (bare skeleton with no clutter or anything else, basically just a shack), i've started work on the interior, and so far so good, done about 90% of the rooms (bare skeleton, no clutter or anything else in yet). And i don't wish to just be able to enter the house and do my thing, i wanted to put a quest into it and then it came to me, i have no idea how to make the house look different before and after the quest. Here's what it should be: Before and during the quest: Cluttered messy and all around a pigsty.After the quest and acquisition of the house: Neat, clean, well lit and everything else that goes with a new house. Now, i'm assuming i'll have to make a copy of the interior and make both versions by hand, the messy one and the clean one, but how do i get the dirty one to change to the clean one after the quest is completed? Link to comment Share on other sites More sharing options...
Mattiewagg Posted October 10, 2014 Share Posted October 10, 2014 Nope, not at I'll. I will be doing a tutorial on this soon, but this is what you need to do: Have your quest. In the completion stage of your quest, you'll want to disable all the dirty objects. I'm not sure what sort of handle you have on scripting, so I'll point you to the CK Wiki scripting tutorials and introduction. Your ending quest stage script would have an ObjectReference array (I'll use properties because it's simpler, though slightly less efficient, but again - don't know your scripting experience): Object1.Disable() Object2.Disable() Object3.Disable() Object4.Disable() Object5.Disable() Object6.Disable() Object7.Disable() Object8.Disable() You'd go on with how many objects you need to disable, making sure to create and fill ObjectReference properties for each of those objects. This is the much more efficient way to do it with arrays: ;assuming an array called DirtyObjects Int iIndex = DirtyObjects.Length While iIndex iIndex -= 1 DirtyObjects[iIndex].Disable() EndWhile Link to comment Share on other sites More sharing options...
mlee3141 Posted October 10, 2014 Share Posted October 10, 2014 Will this work for all/ much more objects? Say, I wanted to enable an entire city... Link to comment Share on other sites More sharing options...
Mattiewagg Posted October 10, 2014 Share Posted October 10, 2014 Yes. It just means a LOT of properties/things in an array. However, there may be a way to enable a block of things without so many properties but it's not a method I know. Link to comment Share on other sites More sharing options...
mrpdean Posted October 10, 2014 Share Posted October 10, 2014 Just create 2 xmarkers in your house. 1 for clean objects and the other for dirty objects. Then set the "enable parent" of each object to the appropriate xmarker. That way you only have to enable/disable the 2 xmarkers and all of their associated object will get enabled/disabled automatically. This also makes it much easier to work in the ck because you can select, for example, the dirty xmarker and press CTRL+1 to hide all of the dirty objects that are linked to it so your only seeing the clean object. Etc. Link to comment Share on other sites More sharing options...
Mattiewagg Posted October 10, 2014 Share Posted October 10, 2014 Just create 2 xmarkers in your house. 1 for clean objects and the other for dirty objects. Then set the "enable parent" of each object to the appropriate xmarker. That way you only have to enable/disable the 2 xmarkers and all of their associated object will get enabled/disabled automatically. This also makes it much easier to work in the ck because you can select, for example, the dirty xmarker and press CTRL+1 to hide all of the dirty objects that are linked to it so your only seeing the clean object. Etc.:facepalm: Completely forgot about this. I was wondering why it would be so difficult. So you use mrpdean's suggestion and then disable the marker. There's also a way to mass set enable parents, though I can't remember it off the top of my head. Link to comment Share on other sites More sharing options...
Thicketford Posted October 10, 2014 Share Posted October 10, 2014 (edited) ...This also makes it much easier to work in the ck because you can select, for example, the dirty xmarker and press CTRL+1 to hide all of the dirty objects that are linked to it so your only seeing the clean object. Etc.Thank you for this tip, I had no idea you could do that. Edited October 10, 2014 by Thicketford Link to comment Share on other sites More sharing options...
u2020bullet Posted October 10, 2014 Author Share Posted October 10, 2014 Just create 2 xmarkers in your house. 1 for clean objects and the other for dirty objects. Then set the "enable parent" of each object to the appropriate xmarker. That way you only have to enable/disable the 2 xmarkers and all of their associated object will get enabled/disabled automatically. This also makes it much easier to work in the ck because you can select, for example, the dirty xmarker and press CTRL+1 to hide all of the dirty objects that are linked to it so your only seeing the clean object. Etc. :facepalm: Completely forgot about this. I was wondering why it would be so difficult. So you use mrpdean's suggestion and then disable the marker. There's also a way to mass set enable parents, though I can't remember it off the top of my head. Yeuap, completely forgot about that method since my fallout modding days, but i did it with lights and light switches, i guess instead of a switch i could use a quest stage as the trigger and just shut off the parent object (dirty) and enable the other parent object (clean). Thanks everyone, you've been a big help and i will probably continue using this thread for further questions. :) Link to comment Share on other sites More sharing options...
u2020bullet Posted October 10, 2014 Author Share Posted October 10, 2014 Got another question. I made my custom container, but how do i make it spawn random (and leveled) loot when the cell loads for the first time (i have already set it not to respawn, but do wish to be able to find some items initially)? Link to comment Share on other sites More sharing options...
Recommended Posts