Jump to content

DOWNLOAD MODS

Are you looking for something shiny for your load order? We have many exclusive mods and resources you won't find anywhere else. Start your search now...

LEARN MODDING

Ready to try your hand at making your own mod creations? Visit the Enclave, the original ES/FO modding school, and learn the tricks of the trade from veteran modders...

JOIN THE ALLIANCE

Membership is free and registering unlocks image galleries, project hosting, live chat, unlimited downloads, & more...

Oblivion: Corpses placed outdoors in CS fall through ground in game


syscrusher
 Share

Recommended Posts

Silly question:

 

I have a scene in which I need to place some NPC corpses in an outdoor cell. I place them in the CS, holding them a bit above the ground and then running Havok simulation to rag doll them onto the terrain. When visiting them in the game, they are sometimes in the correct location, and sometimes partially sticking into the ground, and other times entirely underground and out of sight.

 

Is there any way to prevent this?

 

Thanks for any suggestions!

Link to comment
Share on other sites

Well, I suppose that you are aware of this, but in case you don´t...I place the corpses ABOVE ground and press "F" to level them, never had problems with that. If movable objects are placed "partially sticked", they usually sink into the underground. 

Edited by Leodoidao
Link to comment
Share on other sites

Well, I suppose that you are aware of this, but in case you don´t...I place the corpses ABOVE ground and press "F" to level them, never had problems with that. If movable objects are placed "partially sticked", they usually sink into the underground. 

 

That's how I originally placed them, and they sank, so I tried doing that and then the Havok simulation mode. Maybe I'll try it again with just the F and see if it helps.

 

The other thing I had considered is, since they are initially disabled and only get enabled at a quest stage, maybe place them slightly above ground and *not* level them with F or Havok sim -- let the game engine do it at cell load time. I was afraid that might have them hanging in mid-air, though. Worth a try, maybe.

Link to comment
Share on other sites

I tried settling them with "F" in the CS, with and without running Havok simulation afterward. I even tried leaving the a bit off the ground before they are enabled. No joy, for any of the above configurations.

 

On every test run, some of them are okay and others go through the ground. I think I'm just going to write this off as an insoluble problem.

Link to comment
Share on other sites

  • 5 months later...

Believe it or not, I am still working on this, but this past weekend I learned a lot more about the nature of the problem.

 

The corpses are not falling through the ground. The problem is with the enable() function called on their enable parent. There are a bunch of static objects (some battle debris) plus some fires plus the corpses all sharing a single enable parent.

 

When I call enable() on the parent, everything enables correctly except the corpses. Some of them will enable, others will not, and it seems entirely random as to which. I can repeat identical test runs from clean game startup and brand-new (each time!) characters, and get different results with every run.

 

I tried removing the corpses from the enable parent and making an enable() call on each one, and was able to observe this same behavior at the individual level. That is:

 

corpse1.enable

corpse2.enable

corpse3.enable

....

corpseN.enable

 

called from a script works on most of them but randomly ignores some of them.

 

Stepping into an interior cell and then back out to this exterior will usually cause all the corpses to appear, whether I enabled them individually or from an enable parent.

 

I have Runtime RefID loaded, so I am able to test with console commands like corpse5.enable and corpse5.disable. What I find in that mode is that I am able to show any given corpse 100% of the time with a call to disable followed by a call to enable.

 

If I do the enable from the console, the corpses sometimes do not Havok settle until grabbed by the player, even though I had run Havok simulations on each in the CS. They're close to ground but not exactly on it.

 

Conclusion: The enable() calls are actually working fine, but the game engine isn't noticing it needs to render these objects on the next frame.

 

Workaround: I'm testing a workaround of having these NPCs enabled *alive*, but with no AI defined so they just stand still, then doing an immediate kill() call from the script right after enable(). This seems to work acceptably. The player doesn't see this because my quest logic guarantees that this sequence happens when the player is far away from the cell.

Edited by syscrusher
  • Upvote 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...