Desperados III

Desperados III

Desperados III is a story-driven, hardcore tactical stealth game, set in a ruthless Wild West scenario. Play smart if you want to succeed. A good plan can make the difference between survival and finding yourself at the business end of a pistol.

Learn more and find the game on Steam, Discord, Youtube, Homepage, Wiki.

Modding Tutorial: Change skills of playable characters for Desperados III

Short tutorial on how to add custom skills to a character.

Posted by on


This will give a quick tutorial on how to add new skills to a character, it is very buggy and there might be alot of issues.

First follow Nicos tutorial for the setup.
You need Runtime Unity Editor and 1vaders mods will make everything easier.

Let's get started!

When you have set up your mod tools then we are ready to proceed.

Use 1vaders extended cheat tool and disable the skill you want to replace on your character.
Now spawn an enemy, then kill him. Open Runtime Unity Editor and search for "Character_base" and find the enemy you spawned in.

You can use the toggle active button to make sure you found the right clone. If you toggle off the active button he should disappear.

20210607200650 1

When you have found him, inspect the GameObject. And you should see this.

20210607200801 1

Then using the REPL Console, write "geti().AddComponent<CmdAddSkill>();" This will add a CmdAddSkill Component to your GameObject. It should be visible like in the bottom right corner of the previous image.

Then select the new component, And you should see something similare to this, but the m_skillPrefab should be empty.

20210607201241 1

Using the REPL Console again write "var x = geti()" and the console will store the inspected object as a variable.

Now open up the component Carryable

20210607205412 1

When you have opened it, use the REPL Console and write "geti().m_cmd and the m_cmdOnCarry value should change to CmdAddSkill.

This means that when you pick up the body it will execute the CmdAddSkill command.

Now we can add a skill to the CmdAddSkill component. Search in the Scene Browser for SkillKat and find the blind skill. (SkillKatKeyBlind).

20210607201239 1

Inspect the SkillBlind component. Then using the REPL Console write "var y = geti()".
Now the skill should be stored as the variable y. Also you can change the m_eInputKey to "SkillSelection01".

Then go back to the CmdAddSkill component.

20210607201241 1 1

Then use the REPL once more and write "geti().m_skillPrefab = y", it should show the same as the previous image. Also you can change the m_eSkillType to the correct skill.

Now with the character you want to add the new skill to, pick up the body and drop it. The skill should show up in the hotbar now.

That should be it to make it work. I do not know if all skills are compatible with this method. But the whistle skill and heal skill works, only docs heal crashed my game.

Let me know if there is any issues, hopefully i did not make any mistakes with the tutorial.


Join the community or sign in with your gaming account to join the conversation: