Jump to content

[LE] Meshes / Nifscope help :c


Recommended Posts

Hey, im trying to make new script :D

That allow player to grow trees and other plants more realistic :P

 

Here is Vid: ( https://www.youtube.com/watch?v=jI-v1q212MI ) *[skip to 1:20]*

 

 

but i have few problems xD

 

1) As you can see on Video my tree is floating... but stump is OK

:: im not good with 3D Models and idk why tree is floating :c... any help with this floating tree to make it "lay" on ground ? xD

 

2) I want to create Tree Logs but so i tried to use Static object ( Pine Log ) but when i drop it from my inventory its floating too xD

b) also is there any option to scale nif objects in Nifscope ? xD

 

3) My only option is "PlaceAtMe" or is there any other option to switch textures / meshes?

:: i want my tree to grow but when tree is too big it will chage to dead tree and after dead tree he will fall and new tree will grow :D

i know how to do it with placeatme but maybe i can switch meshes somehow ? :c... or textures????

 

 

 

Help pls :c...

Link to comment
Share on other sites

1) You could use "SetPosition" after :

self.placeAtMe(MyTree)

MyTree.SetPosition(0.0, 0.0, 0.0)




Or


self.placeAtMe(MyTree)

MyTree.MoveTo(xMarker) < with option to set the position and angle.






2) - For an object to not float when drop from inventory, it needs to be a "misc object" so that it can use Havoc and drop to the ground.

In the "misc objects" select an object > edit > give it an ID > and change the model to your model, just choose an object that is similar in size, close as possible to correctly inheritance the HAVOC.


- There is an option to scale objects in NifSkope, but it won't scale the collision of the object, for this you need 3d Studio Max.

In NifSkope, in render window, right click the mesh and select > transform > edit or scale vertices > scale. (select and transform each part of the mesh, if it has more than one part)

- You can only move the mesh's collison position in NifSkope.




3) You can do an animated texture in NifSkope and use the CK "playanim01" & "playanim02" combine with "register for update". Just like the Skyrim "magic tablet" works.

But this needs a bounch of work and testing to get it right.


* You could also take a look at the "BYOHPlanterSoil" activator that Heartfire DLC uses for growing plants to grow your own trees, i know how to use the activator but i don't know how it works (edit it for something like this, never done it, but i think it could be done, worth looking into it).


Edited by maxarturo
Link to comment
Share on other sites

just choose an object that as similar in size as possible to correctly inheritance the HAVOC.

 

But how? xD

I load NifObject to NifScope but can't find any Havoc option :c...

 

Image:

 

 

attachicon.gif BB.png

 

 

In CK... Tobi...

In the "misc objects" select an object > edit > give it an ID > and change the model to your model.

 

You can add Havoc to a mesh in NifSkope and add it as "misc object" to CK, but since you are not familiar with this kind of programs it won't be easy to write down all the steps that this needs.

And if is not done correctly you will end up with game CTD every time you load your mod or CTD when you try to go to the cell where your problematic mesh will be.

Edited by maxarturo
Link to comment
Share on other sites

  • 2 weeks later...
Change textures without changing the mesh.
I was thinking about this because i might need to do something like this too, well not with trees but for a static "touch screen panel"...... Dwemer PC !?!?!?!?.....
I haven't tested it or reach that point of the mod to make it yet, This is just the base and rough idea for my actual script.
And i don't know if i'll actually make it, cause what i have in mind requires toooooo....... much....... work........
This is the general idea :
1) Create two texture set in CK, or how many you might need.
2) Create your GlobalVariable.

GlobalVariable Property UpdateGlobal Auto
{Global is set to 1 upon loading the game for the script to change texture when this is activated}
 
Int Property CurrentTexture = 1 Auto Hidden
 
ObjectReference Property StaticTextureChange Auto
{The static - mesh to changed the textureset}
 
String Property NodeName Auto
{The mesh's node name to change}
 
TextureSet Property TexSet_01 Auto
{First texture set in the cycle}
 
TextureSet Property TexSet_02 Auto
{Second texture set in the cycle}
 
TextureSet Property TexSet_03 Auto
{Third texture set in the cycle}
 
 
Event OnCellLoad()
         TexturesOnLoad()
EndEvent
 
 
Event OnActivate(ObjectReference akActionRef)
         If UpdateGlobal.GetValue() == 0
           If CurrentTexture == 1
                 NetImmerse.SetNodeTextureSet(StaticTextureChange, NodeName, TexSet_02, True)
                 CurrentTexture = 2
       ElseIf CurrentTexture == 2
                 NetImmerse.SetNodeTextureSet(StaticTextureChange, NodeName, TexSet_03, True)
                 CurrentTexture = 3
       ElseIf CurrentTexture == 3
                 NetImmerse.SetNodeTextureSet(StaticTextureChange, NodeName, TexSet_04, True)
                 CurrentTexture = 1
        EndIf
         Else
                 TexturesOnLoad()
        EndIf
EndEvent
 
 
Function TexturesOnLoad()
           If CurrentTexture == 1
              NetImmerse.SetNodeTextureSet(StaticTextureChange, NodeName, TexSet_01, True)
       ElseIf CurrentTexture == 2
              NetImmerse.SetNodeTextureSet(StaticTextureChange, NodeName, TexSet_02, True)
       ElseIf CurrentTexture == 3
              NetImmerse.SetNodeTextureSet(StaticTextureChange, NodeName, TexSet_03, True)
       EndIf
EndFunction

 

PS : I don't know if it'll work, but is a simple script that should do the job just fine.

Edited by maxarturo
Link to comment
Share on other sites

  • Recently Browsing   0 members

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