niston Posted June 21, 2019 Author Share Posted June 21, 2019 Alright, I added support for Navcuts to the DoorController. You can has an array of NavcutDefinitions now, and decide when the individual Navcuts should be enabled: Struct NavcutDefinition ObjectReference PrimitiveRef Bool EnabledWhileOpen Bool EnabledWhileClosed Bool EnabledWhileTransitioning EndStruct The DoorController will enable/disable them Navcuts accordingly, whenever it changes state. Further testing on the lock revealed that: * Settlers don't fall to their deaths, they'll just take a swim* Some of em will inevitably end up in the water, no matter what* But they'll eventually find their way back, out of the water and up the stairs* Once a Navcut is enabled, they will generally not try to cross it* ...unless they were already walking towards whatever, before the Navcut was enabled* But it doesn't matter as the opening gates' railings cross their path and prevent 'em from falling off the edge* They won't jump off an opening gate if they're already wandering on it, but just stand in place (its logical if you look at the navmesh of the place)* They don't seem to like passing over the north gate - even tho there is navmesh in place, I've not seen any settler walk over the north gate so far Link to comment Share on other sites More sharing options...
niston Posted June 22, 2019 Author Share Posted June 22, 2019 @DieFem I had a look into terrain collision, but I can't get it to work either. I set up a collision layer to collide with L_GROUND and L_TERRAIN, ticked "Sensor" and "Trigger Volume" and set it's name to L_GROUNDCOL. I then put a trigger and set the collision layer of the trigger to L_GROUNDCOL. I had the trigger both SetPosition and TranslateTo into terrain, but OnTriggerEnter never gets fired. I would have expected it to work based on the settings, but no dice. Also, it doesn't work if set to collide with L_WATER either. After reading some Havok documentation, this seem like a bug to me. But maybe Beth just filters everything that can't provide an ObjectReference from raising the OnTrigger* events. Link to comment Share on other sites More sharing options...
DieFeM Posted June 22, 2019 Share Posted June 22, 2019 Yeah, that's the same that happens to me, I deduce that only the objects that have a reference will trigger the OnTriggerEnter event, I can stop my boat if it collides with a bucket for example... So the only solution I see for it is placing trigger boxes wherever I want to detect terrain, objects that belongs to precombines and map borders, so I think I could use my boat only in a certain area or a custom worldspace, because I don't want to put trigger boxes all over the Commonwealth... Link to comment Share on other sites More sharing options...
niston Posted June 22, 2019 Author Share Posted June 22, 2019 You know, I find it next to unbelievable that there are no provisions for detecting terrain collision in a scripting environment specifically made for a game :smile: Maybe something (marker perhaps) could be spawned, moved along with the boat and then checked for LOS? Theoretically, if that something is inside terrain, there would be no LOS. But that might not work fast enough, if it does at all. Link to comment Share on other sites More sharing options...
niston Posted June 23, 2019 Author Share Posted June 23, 2019 I added sound, buttons and blinkenlights: https://www.nexusmods.com/fallout4/videos/9747 Link to comment Share on other sites More sharing options...
Recommended Posts