Jump to content

Nifscope and defining things as floors/walls


lgpmichael

Recommended Posts

Well, I'm a large way into the mod I am making, about 4 hours of completed gameplay so far out of the target of 16, and so far, hooray I have managed to make it without needing new models.

 

However... {:-)

 

I have a house that is tipped onto its side, no problem, but when the player enters the front door, and falls to the bottom (actually the far side) of the house, it doesnt seem to recognise the fall as finishing.

 

If the player lands on the floor, great, it changes from falling to standing, but when landing on the wall the player stays in fall mode, and so bobs around, can't walk properly, arms puffed out like an idiot, all that good stuff

 

So, I am expecting there is some difference in the NIF between floors and walls, that says 'this is a floor, it breaks falls'

 

I have looked in nifscope at the model in question (skhousemiddleint03.nif), and to be honest, I have no idea where this data may be stored. I have clicked around blindly, given that up as a bad job, and then looked for documentation, none of which seems to answer the question.

 

So, does anyone know of documentation that tells me, or (even better) an answer as to why the wall doesn't break the fall like the floor does, and how this can be fixed in (I expect) nifscope? I don't mind if it changes ALL walls in the nif to have the 'I am really a floor' property, the player won't exactly be spending long in the building.

 

Much appreciated!

Link to comment
Share on other sites

I don't really think the system works like that. I don't think there is anything in Nifskope that distinguishes walls from floors from ceilings etc. It is more a matter of how dense the collision on an object is and how well it prevents actors from passing through it. It is also important which direction is down in the game world. (There is no up or down on non-animated statics in Nifskope.)

 

So what I recommend that you try first, is take one of the vanilla Oblivion static objects with a name starting in "CollisionBox" and place this big yellow thing so that it clipping with and is on a plane with your wall. When the actor slides and falls to it, it will almost certainly stop him or her, and if it is at a suitably horizontal angle, your actor will stand instead of using a falling or swimming animation. If neither your wall or floor are at a suitably horizontal angle to stand on, I recommend that you place another collision box at a perfectly horizontal angle in the bottom of your "V" so that the actor can stand instead of getting hopelessly stuck, swimming, or using the falling animation. Otherwise, you might adjust the contents of your whole cell so that the angles work out better for standing on.

Link to comment
Share on other sites

Well, I'm a large way into the mod I am making, about 4 hours of completed gameplay so far out of the target of 16, and so far, hooray I have managed to make it without needing new models.

 

However... {:-)

 

I have a house that is tipped onto its side, no problem, but when the player enters the front door, and falls to the bottom (actually the far side) of the house, it doesnt seem to recognise the fall as finishing.

 

If the player lands on the floor, great, it changes from falling to standing, but when landing on the wall the player stays in fall mode, and so bobs around, can't walk properly, arms puffed out like an idiot, all that good stuff

 

So, I am expecting there is some difference in the NIF between floors and walls, that says 'this is a floor, it breaks falls'

 

I have looked in nifscope at the model in question (skhousemiddleint03.nif), and to be honest, I have no idea where this data may be stored. I have clicked around blindly, given that up as a bad job, and then looked for documentation, none of which seems to answer the question.

 

So, does anyone know of documentation that tells me, or (even better) an answer as to why the wall doesn't break the fall like the floor does, and how this can be fixed in (I expect) nifscope? I don't mind if it changes ALL walls in the nif to have the 'I am really a floor' property, the player won't exactly be spending long in the building.

 

Much appreciated!

 

If it's just one house you could ask someone in mod requests to tweak the model so that the wall has collision data. It'd take about 5 minutes in blender if it's only one room. =]

Link to comment
Share on other sites

I don't really think the system works like that. I don't think there is anything in Nifskope that distinguishes walls from floors from ceilings etc. It is more a matter of how dense the collision on an object is and how well it prevents actors from passing through it. It is also important which direction is down in the game world. (There is no up or down on non-animated statics in Nifskope.)

 

So what I recommend that you try first, is take one of the vanilla Oblivion static objects with a name starting in "CollisionBox" and place this big yellow thing so that it clipping with and is on a plane with your wall. When the actor slides and falls to it, it will almost certainly stop him or her, and if it is at a suitably horizontal angle, your actor will stand instead of using a falling or swimming animation. If neither your wall or floor are at a suitably horizontal angle to stand on, I recommend that you place another collision box at a perfectly horizontal angle in the bottom of your "V" so that the actor can stand instead of getting hopelessly stuck, swimming, or using the falling animation. Otherwise, you might adjust the contents of your whole cell so that the angles work out better for standing on.

 

Aha, thats useful to know. I had seen the collision boxes but didn't realise they were more than invisible walls, it didn't occur to me to check if they were things the player could walk on. Excellent. I can think of lots of nice uses for those now {:-)

 

They seem to have a pretty weird property, I expect an oblivion bug.

 

Initial scenario: Player enters door, appears about 10 feet up, falls, lands on the wall in fall mode.

With collision boxes: Player enters door, appears immediately on the wall (floor) which has the collision box. No fall happens, just, standing at the bottom, nowhere near the doors teleport point. The box is set to just millimeters above the wall, so shouldnt affect anything, you'd have thought.

So, when moving the collision box about -20 on the Z axis, so it is below the wall/floor everything works again.

 

The only way round it was to also add in a triggerbox above the fallpoint, have the collisionbox disabled, and then reenable it midfall. That worked exactly as it should have done. Of course then another triggerbox for re-disabling it later so a second entry can be done. Oi, what a mess. But at least it works now, thanks for the tip!

Link to comment
Share on other sites

 

If it's just one house you could ask someone in mod requests to tweak the model so that the wall has collision data. It'd take about 5 minutes in blender if it's only one room. =]

 

Yeah, but I was after a solution that would mean I can do it myself - as I will probably have to do this a few dozen or more times for some of the features I have planned for later in the mod. However the collisionbox solution seems to do the job, even if it seems to have quirks.

 

Besides, I like to know how to do the job, rather than just have to go running for help every five minutes {:-)

Link to comment
Share on other sites

  • Recently Browsing   0 members

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