Aller au contenu

Photo

NPCs standing in chairs


  • Veuillez vous connecter pour répondre
4 réponses à ce sujet

#1
sea-

sea-
  • Members
  • 264 messages
I've been running into a problem on and off regarding ambient animations and, specifically, NPCs who I've set to sit in chairs.  Namely, sometimes they seem to simply not do it when the player enters a new area, for no reason that I've been able to figure out.

It looks more or less like this:

Image IPB

The problem seems to be extremely inconsistent and isn't the result of any mods as far as I know.  Sometimes it happens, sometimes it doesn't.  I do use area lists, which could be one of the culprits, but I'm still not certain.  And yes, I'm quite certain I haven't changed anything. As far as I know, it doesn't affect any other ambient animations, just the chair-sitting, and even then only about 50% of the time.

Modifié par sea-, 12 février 2012 - 08:03 .


#2
Sunjammer

Sunjammer
  • Members
  • 926 messages
A couple of quick questions:
* What ambient settings (state and pattern) are you using for these NPC?
* Are the NPCs doing anything else other than just sitting, for example, drinking
* If you around for a few seconds do they eventually sit down or do the remain standing forever?

#3
sea-

sea-
  • Members
  • 264 messages
Thanks for the reply!

All the NPCs are using the ambient animation presets 38 and 44, sitting_chair and chair_hand_table. I have their AMBIENT_SYSTEM_STATE set to 2 in all cases. And no, the NPCs remain standing indefinitely and continue to do so once I leave and return to the area.

The strangest part is that this applies to different locations - in this very same test play-through, without editing anything, other NPCs were sitting in their chairs just fine even though they were using the exact same ambient setup.  It also isn't consistent across multiple play-throughs - it simply happens on a more or less random basis.

I've noticed that in most cases, upon entering an area, you can actually see the NPCs transition very quickly from standing to sitting as the ambient system initiates.   I'm not sure if this is a limitation of the ambient system or a bug present in the base Dragon Age game, or what, but it seems like the ambient system isn't being called or applied properly in these cases.  I suppose I could try using a script to make everyone sit down, but that seems time-consuming and kind of a hacky work-around to a problem that probably shouldn't exist anyway.

Modifié par sea-, 13 février 2012 - 04:36 .


#4
Sunjammer

Sunjammer
  • Members
  • 926 messages
I would test setting your AMBIENT_SYSTEM_STATE = 15 and see if that improves things. Also since they are standing in the chairs I assume that means you have PHYSICS_DISABLED = 1.

As for the transition the ambient system is based on distance from the player: if the player is greater than 50m from a creature it's ambient behaviour is turned off. You can however force it on using by adding 10 to your AMBIENT_SYSTEM_STATE. However this means that it never turns off so while that area/arealist is loaded those NPCs will be constantly using the system.

Modifié par Sunjammer, 13 février 2012 - 08:28 .


#5
sea-

sea-
  • Members
  • 264 messages
The NPCs have physics enabled, actually.

Come to think of it, some of my areas are in area lists, including this one, and those waypoints could definitely be 50 meters away. Maybe there's a chance that the ambient system is starting and isn't including those NPCs, even on the area transition? It seems strange to me, as you don't get this problem in say, large outdoor areas, but I'll give it a test.

Also, can you clarify what AMBIENT_SYSTEM_STATE = 15 does? I can't find any documentation on the official Wiki about it.

EDIT: It seems at least for now that setting AMBIENT_SYSTEM_STATE to 15 works.  I'll have to test more to confirm, but I don't get the "NPCs switching into their animations as soon as the player comes in" problem.  Curiously, BioWare also used 19 in a few places, which is also undocumented.  No big deal, if it works it works, but I'm curious as to what exactly it does differently, at least if anyone's figured it out.

Thanks for the help!

Modifié par sea-, 14 février 2012 - 01:15 .