Jump to content

Gonna need some help with the mod i'm making


u2020bullet

Recommended Posts

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

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

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

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

...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 by Thicketford
Link to comment
Share on other sites

 

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

  • Recently Browsing   0 members

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