Malbers' Riding System

OK this is probably going to be another long topic, and I know this isn’t the ideal place to ask about external assets, but I’ll just ask out here anyway… anyone has any experience integrating Malbers’ Animations’ animals into the RPG Course? I definitely need some help.

I read his documents, tried a few things, but… none of them worked well unfortunately (I’ve been quietly trying it out for a while until 3 days ago, when my laptop had a significant performance drop, and Malbers takes decades to respond sometimes… well, most of the time)

I have played around with them a little. Did you have a specific issue? I am at work right now. I can look at my old copy of the RPG project later today.

1 Like

oh that would be AMAZING, thank you edc :smiley:. Currently I’ve been trying for a while to even get the horse mounting system to work, mainly following this tutorial:

I followed the instructions to the brink, but… it’s not working for some reason. I contacted both Malbers and Cruxis (his assistant) regarding the issue, but got no response as of yet

This is the warning (yellow warning, not a red error) I’m getting as of now. I asked for help in their discord as well, but got no response:

Animator.GotoState: State could not be found
UnityEngine.StackTraceUtility:ExtractStackTrace ()
MalbersAnimations.HAP.MRider:Awake () (at Assets/Malbers Animations/Common/Scripts/Riding System/Rider/MRider.cs:322)

I have that asset, but I have not really used it. Write up some details and I will take a look this evening. Remember, I am 13 hours behind you. I am not sure if I can help but I will give it a shot.

1 Like

please just give it a try, I’ll throw in as much information as possible :slight_smile:

So far here’s what I tried doing:

  1. Input ‘Rider.cs’ and ‘MalbersInput.cs’ scripts on my player, and I set them up exactly as Malbers mentioned on his page
  2. Integrated the mount inputs for ‘MalbersInput.cs’ on the player
  3. Disabled ‘Mover.cs’ when the player mounts the horse

but… nothing actually responds. I get this yellow warning as soon as I start my game:

Animator.GotoState: State could not be found
UnityEngine.StackTraceUtility:ExtractStackTrace ()
MalbersAnimations.HAP.MRider:Awake () (at Assets/Malbers Animations/Common/Scripts/Riding System/Rider/MRider.cs:322)

which leads to this line:

                    Anim.Play(EmptyHash, MountLayerIndex, 0);

(that script is 1950 lines long…)

Malbers responded, and as far as we both go, it’s a collider issue… problem is, I have a Character Controller placed on my player, and the ‘Rider’ script expects a Capsule Collider. I tried creating an empty gameObject under the player with the collider to compensate, it didn’t work… (now I’m brutally forced to add a Capsule Collider under my character)

Brian, if you’re reading this, what risks does adding a Capsule Collider on my character hold?

Try disabling the character controller when you disable mover.cs. Then enable the capsule collider. You can reverse this when the player dismounts.

1 Like

lol we got the horse mount to work. All it needed was the capsule collider added on to the player, as a ‘Main Collider’ (to fill the empty slot in his ‘Rider.cs’ script), and then deactivate ‘isTrigger’ on that

HOWEVER, we have a plethora of new issues suddenly show up, as seen in the video on this link: https://drive.google.com/drive/u/0/folders/1HH2Vn_8YKjgr1DqXyQForylU6wQ-U_5X

thinking of it, this approach won’t work, because of one major problem… the collider must be on the player itself (by his code, after reading his Mount Trigger script), and it must be active, and if the character controller is deactivated, we can’t move… unfortunately both have to be active

1 Like

Oh well. I guess we both are learning today. I’ll watch the video tonight and see if I have any more ideas. Good job figuring that first one out!

1 Like

You might ask Malbers if it needs to be a CapsuleCollider for any CapsuleCollider specific features, or if changing the references to Collider would work…

CharacterControllers and CapsuleColliders both inherit from the Collider class.

From the video, it might be an issue with the Tool Handle Position settings on the player. It looks like the riding logic is working. The player is not ending up in the right position relative to the horse. I have seen that if the Pivot is in the middle of a character and they die, they will be floating a couple of feet off the ground. Maybe you have a similar issue.

So far, here’s what I learned:

  1. Add a capsule collider to the player
  2. Disable ‘isTrigger’

by the time he responds, we’d probably be miles ahead done and dusted with this issue, but I’m curious on how do you change the references to Collider would make it work? I’ll give whatever you say a try and keep you updated (From his input, it only accepts Capsule Colliders)

I remember running into an extremely similar issue when I was first implementing Synty’s modular character, it was an avatar issue, so now I have an extremely new and challenging problem… How in the world do you get both avatars to work? Do you change them through code? I don’t think I’ve ever had a case before where I had to deal with this problem (I can think of a simple solution, just not sure if it’s right or wrong, or how to implement it)

I did find something once though, it was an interesting solution: Change Meshes for the Rider - Animal Controller

To keep it simple, he placed his player under the main character’s skin and basically hid his own character, along with a few minor changes. I would really appreciate if both of you watch the video on that link and let me know about the risks of trying this, before I do anything stupid :slight_smile: (@Brian_Trotter at the very least, may I know what the potential issues of hiding your player mesh under another one are? (if I’m not clear, please have a look at the top short video of the link sent))

Edit: Replacing the mesh turned out to be a catastrophic nightmare, although if we can get this right I can skip through developing/re-developing a lot of mechanics… (as tempting as it sounds, this only works as a last resource. I’d very much love to understand my own mechanics instead, and get them as close as possible to what I want them to be (although Malbers’ attempt is spot on for me))

I don’t think that the mesh is the problem. The mesh is just a “skin” over the other parts to make it look good. Check the colliders and ridged bodies involved. There is an alignment issue in the video of your game. Before you change the code, double and triple check the set up in the inspector. In the video it looked like the code was working. Try the simple things first. Remember Occam’s Razor.

Not a single clue who that is :sweat_smile:

no intentions to change the code as of yet

based on my personal experience with these sort of errors, I know it’s an avatar issue

ehh it was one of my attempts to get this to work. I know it’s an avatar problem, not a mesh one… I just don’t understand how am I going to be able to fix this tbh… oh well, gotta wait until Malbers responds again I guess… (he knows his system best, but this will, more likely than not, be one adventure of a topic, unless one of you guys has more experience dealing with the animals and tuning to fit them into our systems. @bixarrio do you have any experience with this system, by any chance?)

I found an extremely simple, but working solution for the plethora of issues that I had with mounting my horse. It’s not fully working as of yet, as my animations are a total mess as we speak, but by accident, I find an EMPTY Human Rider base in one of Malbers’ files, so here’s what I did, and the problem I’m currently stuck at:

  1. Placed one on my core prefab, and completely cut ties between the prefab and the one on my scene, by right clicking the human rider base, and then ‘Prefabs → Unpack Completely’. I have to mention as well that I disabled most of Malbers’ action inputs for the moment, and will slowly unlock only what I need down the line. For now, only the mounting and dismounting are activated
  2. Placed my player under the new human rider base, and then set its coordinates to zero, so it’s exactly where the base is at (this is an extremely important step!)
  3. Set the avatar of the rider base up (but surprisingly, having the avatar on means I can’t ride the horse. Keeping it to none enables riding… I’ll contact Malbers again about this)

But it got rid of a ton of issues I had about pushing the horse around, not being able to properly mount and dismount, etc… seems like a good step ahead (for now) :slight_smile:

But I still have a few major problems to solve. For now, I’m trying to understand why is it in gameplay, unlike what was setup in the scene, is my ‘Human Rider Base’ a few steps ahead of my player? If they’re not in the same position, I can’t mount the horse…

Edit: Reversed it…

I Reversed what comment 15 had, back to square one…:

this whole thing is a nightmare to implement… Anyone knows of any simpler way by chance?

If anyone sees this and wants to hop in, here’s what I’m talking about (it looks simple, but it’s a nightmare to deal with…): General HAP Integration - Animal Controller

(don’t get me started on the disaster of trying to replace meshes…)

There is not enough info here to know what the issue is, let alone what the solution may be. What did you try? What went wrong? You have a lot of things going on in your project. Could be a conflict with one of the other custom systems you are working on?

ahh… Malbers jumped into the party and he significantly improved some areas, so now we have a usable mounting system (and this was NO EASY SHIFT… I never would’ve pulled this off alone), BUT… at the cost of others.

He addressed the scaling issue of Synty’s scaling issue, but I don’t know what effects it had (it did hurt the transforms in ‘Fighter.cs’, but this was an easy fix), because the first major problem we have right now, apart from disappearing and randomly appearing body parts, is our camera is now a total mess, so I can’t test the game as of yet

I’m just waiting to hear back from the professionals there as well. Right now I’m surprised that this is even possible tbh…

Edit: Apart from a few missing body parts that vanish in the game and other appearing for no proper reason, the effects were minimal

This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.

Privacy & Terms