Announcement

Collapse
No announcement yet.

Need help selectively deleting some actors.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Need help selectively deleting some actors.

    Ok so I have this pile of rocks that gets pushed apart by a radial force which clears a path for the player; however because physics is unpredictable, sometimes one or two rocks will remain that block the players way. I need to selectively delete these rocks that are in the path. I have tried using a stationary trigger, but because the rocks start off inside the trigger volume, unless they leave the trigger volume and re-enter, they won't set off a touched event again. I tried many variations of this for days and didn't find anything that works, so today I decided to try a moving trigger that sweeps along the path. However when the trigger is set to phys interpolating, it no longer detects touch events with kactors and kassets. This is really weird because I have another moving trigger that kills the player and it works just fine. Does any one know what options I need to set to detect kactors while the trigger is moving?


    This is really frustrating, all of these little optimizations in the engine leaves you with about 50 different options for each actor and then you have the exact same options repeated for the collision primitive, the kasset, the skeletal mesh etc. It's almost impossible to tell which ones are active in which case and which aren't. That combined with some options being legacy and not used anymore but are still visible.

    #2
    It's possible to use a "destroy" actor in Kismet with a delay few seconds after the rock fall OR disable collision.

    However, you facing a standard game dev issue of why games never use physics in situations that can adversely affect gameplay. In most cases such as this, the destruction is a baked out animation. It's almost always faked like this because physics yield a random result as in your problem.

    Comment


      #3
      I'm using the destroy actor node. The idea is that the trigger puts the rock that instigated the collision into an object variable and then that is sent to the destory actor node so that only the rocks that are blocking the way get destroyed. The trigger will detect the player if the proximity is set in kismet, but if it's set to kactor/kasset, it will not detect the rocks or other objects.

      I'm going to try using a moving blocking volume with rigid body collision.

      EDIT: Same deal with the blocking volume, only detects the player. Hmm must be some special property in the kactors.

      Screw it, I used the blocking volume to push the rocks out of the way before the player gets to it.

      Comment

      Working...
      X