Upgrade Humanoid Control from version 2 to 3

Humanoid Control version 3 includes some important upgrades in functionality compared to version 2 of Humanoid Control. To make this possible upgrading from version 2 to version 3 requires you to do some specific steps. This document describes these steps.

What are the Consequences?

When upgrading from version 2 to version 3, you will experience the following:

Humanoid Control Component

Your settings in the Humanoid Control component may be lost. You will need to check these settings.

Controller Input

Because the Controller Input uses the new event handles available in Humanoid Control v3, you will need to setup this component again.
It could be that the Controller Input component will be removed by Unity automatically. You will then have to add it again manually.

Upgrading

Step 1: Make sure your code is safe

In the next step, the folder Assets/Humanoid will be removed. Make sure this folder does not contain any of your own code. Move your own code to a separate folder so that will not be removed.

Step 2: Remove Humanoid Control v2 code

In your project, remove the folder Assets/Humanoid completely. If you have placed the Humanoid folder in a different location, you will need to remove it there.

Step 3: Import he Humanoid Control v3 package

Like when you do a normal update, you can import the new v3 package in the normal way

Step 4: Inspect the Humanoid Control component parameters

Some parameters may be changed compared to how you set them in version 2.

Step 5 (optional): Recreate the Controller Input

You may see a missing script warning where the Controller Input component used to be.

You can delete this component.

Then you should add a new Controller Input component and set it up like you need it. You can find more information on the new Controller Input here.

Step 6 (optional): Networking

Because Humanoid Control v3 supports more networking solutions (like Photon Bolt, Mirror Networking), the old HumanoidUnet and HumanoidPun prefabs have been replaced by a generic HumanoidPlayer prefab. You may want to check the settings of this new prefab which is found in Assets/Humanoid/Prefabs/Networking/Resources/HumanoidPlayer.prefab