So, as in my earlier posts, I've had some obvious issues with Rigidbody components conflicting with various aspects of my game lately. This is mainly due to my footstep script requiring a Rigidbody with Gravity on attached to the player.

That caused an issue with any ORK camera that was fixed to a GameObject in a Camera Event and had the Look At and Follow settings turned on. It caused a rapid shaking of the camera. Turning off Look At/Follow solves that but of course detracts from the nice smooth camera movements and leaves em with static camera positions. Not a huge deal I guess.

Next, the Rigidbody caused the player to drop through the world during battle scenes. My workaround was to add a Change Fields node that turns on isKinematic in the Rigidbody before placing the player combatant and turns it back off after the battle ends.

Not ideal but it was working.

I updated to Unity 2017.2 the other day and last night noticed the player now drops through the world briefly when entering a Scene Changer as the scene loads. Again, turning off the Rigidbody or turning off its Gravity option stops this completely.

What might be a good solution short of doing away with the footstep script and rigidbody to get around this? Maybe adding a separate script attached to the trigger in the Scene Changers to turn the Rigidbody on/off?

Can Scene Changers be fully substituted with an actual ORK Event instead that handles everything manually and allows turning things on and off in the event?

I have another footstep solution but it relies on textures under foot rather than tags, so I'd prefer to keep my current solution for that but may have to change if there isn't a workaround.

  • If the only reason you're using the Rigidbody (gravity-enabled) is for your footstep sound script, then seriously consider using a different footstep script.

    I know you asked for a solution other than doing this, but seriously... when you need to resort to convoluted workarounds like these just to avoid having to use a different footstep script, you're opening yourself up to a lot of future problems.

    Are you using ORK's built-in character controller, or are you using a 3rd party controller?

    Also, Unity 2017.2 is very buggy and has been causing issues with a number of 3rd party assets. I suggest going back to 2017.1 or 5.6.4 for the time being.
  • I've tried a couple of other footstep solutions but they're texture-based rather than tag-based. My terrain is low poly, mostly vertex shaded, so this one works for terrain as well as tagged objects/props plus it has water enter/exit features that I haven't found in the few others I've been able to test.

    Right now I'm sticking with ORK's character controller but might try Ootii's solution. I've tried Opsive's but it was giving me some issues initially so I went back to ORK's.

    2017.2 has timeline audio additions that I'm using for waypoint cutscenes (and some 2D stuff in another game) which I why I went ahead and finally moved on.

    It's mostly an inconvenience for now rather than a screeching halt fortunately, so I'll just adapt and make do until some other method comes along.
  • edited November 2017
    I second Keldryn's opinion here - creating a lot of workarounds for the footstep script will only create more problems in the future. Additionally, having to set up everything in a special way requires a huge amount of time, especially when this'll become a larger project - e.g. setting up a scene changer vs setting up a game event for each scene change (and setting it up in the scene with an event interaction).

    I don't know your footstep script, but it might be best to either use a different one, or rework it to use a different approach, e.g. raycasting. Other footstep solutions can also be reworked to check for tags instead of checking a texture.
    Post edited by gamingislove on
    Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found.
    If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
  • FancyFerretStudios said: Right now I'm sticking with ORK's character controller but might try Ootii's solution. I've tried Opsive's but it was giving me some issues initially so I went back to ORK's.
    Are you doing turn-based battles? You mentioned falling through the ground in battle scenes, so I'm assuming that you're using turn-based (or active time).

    Opsive's controller isn't a great fit for turn-based games; it would work very well for out-of-combat exploration, but when you switch into turn-based combat mode and want to use animation sets for the particular type of weapon the character is using, you have to hook into its own weapon/inventory system (which is rather inflexible and was a big enough headache that I switched to ootii's controller).

    ootii's Motion Controller should work much more cooperatively with turn-based battles. I've only done some early prototyping for using Motion Controller to handle movement and animation within a turn-based battle, but it seems to work quite well. The official motion packs (Sword & Shield, Archery, etc) are overkill for this purpose (as they use their own real-time combat system), but you really just need a variant of its included Simple Motion to play the desired animation clip. That way you also get the benefit of being able to easily capture animation events or play animation clips on multiple masked layers simultaneously.

    There is a simple tag-based footsteps script (by FargleBargle) available on ootii's Motion Vault. It doesn't actually require Motion Controller, so you could use it with any character controller. It uses raycasting and object-based tags, so it might not be a perfect substitute for what you're using now (which looks like it tags the textures?). It's good enough (in my opinion) for the early stages of a project; accurate sounding footsteps aren't generally a killer feature, and they certainly aren't worth compromising the rest of your game's structure over.

  • Yes, I'm doing turned-based battles and that animation issue with Opsive was my problem as well.

    Other footstep controllers I've tried have been specifically texture-under-foot-based and the problem was initially I had an atlased texture that covered all my "grounds." So, I was getting a single sound for any type of ground under foot whether it was water, wood, gravel, forest, etc.

    I'll check out the script on his vault and see if that solves things for me. Thanks a bunch!
  • FancyFerretStudios said: Other footstep controllers I've tried have been specifically texture-under-foot-based and the problem was initially I had an atlased texture that covered all my "grounds." So, I was getting a single sound for any type of ground under foot whether it was water, wood, gravel, forest, etc.
    The script on the vault is fairly simple and I think that it just has a simple "ground" tag that would be used on terrain.

    But like I said, the desired behaviour is nice to have, but one should never design the game around having it. ;-)
Sign In or Register to comment.