Shadowrun Returns

File information

Last updated

Original upload

Created by

bill1903

Uploaded by

bill1903

Virus scan

Safe to use

About this mod

Tutorial on how to switch control between your party members.

Permissions and credits
Donations
This is a tutorial on how to add controllable party members. You can playtest it by downloading and adding the mod in your game.

TUTORIAL
Step 1: Setting up the Content Pack's Properties
Go to "Edit" and choose "Edit Content Pack Properties". On the following window press on the green plus sign and add a string type variable named activeCharacter (picture 1). This variable will hold the active character's id throughout the game.

Step 2: Setting up the team's members' spawners
Open your mod's starting scene. Locate all your team's playable characters on the "Scene Contests" tab. Those are the player spawners (for your main character and any shadowrunners you've hired) and any actor spawners you're using to spawn additional team members (members that you don't select in the hiring menu). Be sure to set the latters' "Team" property to Shadowrunners and "Actor type" to Player (otherwise, when you control them they will crouch every time they come close to cover).
Add a prop interaction to each of them (click on the hammer icon on your "Scene Contents" tab). Set the Prop Interaction like it's shown in the picture 2 but replace "PlayerCharacter0" so that it matches the prop interaction owner.
The freemove check is to remove the switch character interaction during combat.

Step 3: Adding the interactions' triggers
Create one trigger for each of your team's playable characters named onClickedOn[CharacterName]. Tick "Retain this Trigger after firing". Set it to start when you interact with the corresponding character (I'll refer to him/her as characterA).
On the Trigger's do list add the "change actor control" function and set it to change characterA's control to Player. AFTER THIS FUNCTION add one "change actor control" function for each of the remaining characters in your team and set their control to AI (picture 3).

Step 4: Initiallizing the scene's fights
In order to be able to control all your characters during a fight, we must make sure that when the fight starts all the team members' control belongs to the player. To achieve that, we create a new Trigger named onFightStart. As you can see in picture 4, we go through each of the team's members and set him/her to be "Player controlled".

Step 5: Ending the scene's fights
Assuming you want to control the same character you controlled before the fight started, you've got to add one extra trigger (called onFightEnd[CharacterName]Check for each of your team's members EXCLUDING THE MAIN CHARACTER that will check whether the player was actively controlling that character before the battle started. Set it up as is shown in picture 5 (remember to add one "change actor control" function for each of the team's remaining members and set them to be AI controled (like we did in step 3)

Step 6: Initiallizing your scene
Add a trigger called onSceneStart and set it up like it's shown on picture 7. As you can see, we first set the character we want to be active initially (his instances are colored in orange) and then set up the rest of the team's members as controlled by AI. Don't forget to set the activePlayer story variable so that it will point to the active player.
IMPORTANT NOTE: If the character you want to be the active initially is the player character, then skip setting the rest of the team's members control to AI.

Step 7: Repeat the process for the rest of your mod's scenes

Step 8: Making checks using only the currently active character's sheet
When the active character interacts with some kind of prop (whether through conversation or any other kind of interaction) you want to check only his/her stats and not the main character's. In order to do this, you must use the "get actor from ID" function with the "activeCharacter" story variable to get the active character first and then make whatever check you require (picture 6). In the demonstration demo you can see a charisma and a corporate etiquette check that is exclusive to the currently active character.



Credits
I want to thank Phinx for his "Switching between party members" mod and Banditrevolver who uploaded it to nexus. The instructions provided valuable insight on the correct mechanism