Unlike all other "multiple protagonists" or "character swap" mods, this is the first and only one that uses the actual unused feature originally created by Rockstar North.
No more CJ with other skins! No more misinformation about having three protagonists! Here, the second protagonist is a real player entity and not a recruited gang member.
This mod changes, fixes, and improves many aspects of this unused feature to finally make it playable (12 years after it was first discovered by Silent).
It includes an easy-to-edit config file that lets you change the second protagonist's character, disable the "GTA V" effect, start using the second player instead of CJ, and more. The only thing you can't change is the controls.
(This clip was using 1.0 version)
What is real and coded by Rockstar North?
- A function to switch the "focus" to the other player (CWorld::PlayerInFocus).
- Players do not share voice, money, weapons, body armor, health, fighting style, wanted levels, fireproof bonus, infinite run bonus, and tiredness (how long a player can run before getting tired).
- The second protagonist can be affected by cheat codes.
- The second protagonist can use a Pay 'n' Spray and pay without use CJ's money
- The second protagonist can use entry/exit markers.
- The police maverick shoots at the active protagonist.
- During a 6-star chase, tanks try to run over the active protagonist.
- First-camera weapon works with the active protagonist.
- And more validations that use the FindPlayerPed() function without any parameters.
What does this mod improve/fix/change? (Features marked with an asterisk can be toggled on/off in the configurable file)
- Removes the restrictions of the 2-player mode.
- Removes the call to the function CGameLogic::Remove2ndPlayerIfPresent. This means player two is not recreated after busted/wasted, instead goes through a "resurrection" process like CJ.
- You can move the second protagonist using the keyboard/mouse.
- The inactive protagonist is NOT a recruited gang member.
- The inactive protagonist can wander around the map as long as the players are within 150 meters of each other.
The inactive player can roam around the map until the other player stops detecting collisions.
- A custom AI for the inactive protagonist. Since a player entity cannot become a recruited member, I had to "recreated" an AI behavior.
- The second protagonist can be any character (except for another CJ). If you have ANY Skin Selector installed, you can use that too.
- A menu to switch characters.*
- Camera transitions when switching characters, slow game speed while the menu is open, and tint the screen a specific color.*
- An icon over the another protagonist.*
- By aiming at the second protagonist, you can greet or antagonize them, similar to Red Dead Redemption 2.*
Removed in version 2.0
- By aiming at the other protagonist, you can ask them to follow you or rampage.
- While aiming at the other protagonist, you cannot shoot/attack, similar to modern Rockstar games... games.
- CJ, as inactive protagonist, has "bump" voice clips.
- At the start, the second protagonist can spawn in Los Santos, alongside CJ, or at the coordinates you set in the configuration file.*
- You can start directly playing with the second protagonist instead of CJ.*
- You can switch characters at basically any time, except when a player is on a train, using a jetpack, or performing a special animation (internally called "Named Anim").
- If you have the infinity run or fireproof bonus, the second protagonist will also have it.
- Players share wanted stars if they are within a 50.0 m radius of each other.
- If you have 3 or more wanted stars, the inactive protagonist will be controlled automatically (you won't be able to give them orders).
- During a 3-star chase, if the inactive protagonist doesn't have a firearm, they will ask you for one.
- Controls/Orders will be displayed on the screen, similar to RDR2. You won't need to memorize any activations.
- The inactive player can enter any interior with you, as long as they're not in wander mode.
- A "call the other protagonist" option will appear when both are very too far apart. This will basically teleport the other protagonist to you. (Only works on foot, and the other protagonist won't be available if has wanted stars, is using a plane or the place of spawn is not appropriate).
- English and Spanish support.
- A "visit the other protagonist" option will appear when both are very too far apart. This will basically teleport you to the other protagonist.
- You can now play as the second protagonist during missions. They have AI to help you complete them.
- Player two's parachute script was properly recreated thanks to the decompiled code provided by Grove Street Games. This means that it no longer shares the same variables as CJ, and instead it exclusively uses local variables!
- Player two can use vending machines, thanks to the decompiled code provided by Grove Street Games.
- Many hidden co-op restrictions were changed or removed to finally unleash the full potential of multiple protagonists (Did you know that IDLE animations get disabled when another player is detected? Not just in 2-player mode—just having another player around is enough. I had no idea).
- "Buffered Death/Arrest" bug is now handled! Never heard of it? Well, nobody cares about 2 player mode anyway.
- Player two now uses the function "CGameLogic::RestorePlayerStuffDuringResurrection" after a busted/wasted sequence.
- The directional blips are FINALLY separate now!
- Bribe pickups are now separate - player two can pick them up to clear their own wanted level instead of player one's
- Money pickups are now separate - player two can pick them up to add to their money.
- Player two can earn money by picking up a horseshoe, oyster, taking a photo
- If player two is the active protagonist and activates weapon cheats, the effect also applies to player one
- All cheats that change CJ's appearance now only affect him.
- CStats::UpdateRespectStat will now only update for player 1 instead of the current protagonist.
- The CCutsceneMgr::BuildCutscenePlayer and CCutsceneMgr::LoadCutsceneData functions are now patched/hardcoded to only request CJ and prevent his model from deforming during cutscenes.
- When playing as player two, save pickups are disabled. If you force a save, CGenericGameStorage::GenericSave has been modified to reduce potential issues, but don't complain if your save stops working. Always save as CJ.
- The function CCam::Process_Cam_TwoPlayer_Separate_Cars() was removed and replaced with CCam::Process_Cam_TwoPlayer().
- The inactive protagonist can now recognize if the "Mega Jump" cheat is active.
- The inactive protagonist can now recognize if you have provoked a gang war.
- The second protagonist can now say specific and unused voice clips while being chased on foot.
- Player two can now search for the nearest weapon pickup when unarmed and involved in combat with a wanted level above 3 stars. Yes, this feature is exclusive to Player 2. I couldn't get it to work for Player 1, sorry.
- You will not be able to ask the inactive protagonist to attack recruited members and your gang in general.
- You can now press G or H (Dpad Up or Dpad Down ) to make a recruited member to follow you into a fight or stay where they are. Just like a regular gang member.
- Mods designed for 2-player mode are now compatible with the second protagonist.
- I tried to add an AI when the inactive player is driving a plane. It's buggy but it's better than being frozen in the air.
- A configurable file. Here you can change the second protagonist's character, toggle features on or off, or move the character selection menu. There are experimental options that you might want to try.

Customization example: Change the rectangle to a circle, change player two's character, or change the position of the character menu.
Mission Mode
How does it work? The inactive protagonist will interpret the colors of the blips on the minimap, as well as what they are assigned to (such as a ped, vehicle, pickup, etc.). This means that if there's nothing on the minimap, they won't be able to progress in the mission.
Bugs due to game code (None of these bugs cause crashes!)
- CJ headless bug also occurs with the second protagonist.
- Don't save a game while you're the second protagonist. There's no problem if you save a game while you're CJ.
- After a busted/wasted, your vehicle will despawn. It doesn't matter if you're far away from the other protagonist.
- The AI in this game is poor.
- Player two can't lose weapons after a busted/wasted.
- If player two is busted/wasted, player one will lose their weapons and money (this obviously applies if you don't have Katie/Barbara).
- The inactive protagonist cannot use a rocket launcher or grenades/molotovs.
- If player two dies inside an interior, they'll respawn at the nearest hospital that's literally close to their actual position. If you know how interiors work, you'll get the idea.
- If you have a wanted level while in a vehicle, you might see a cop clearly not chasing you — he's going after the other player.
- If the second protagonist dies inside an exploded vehicle or burned into death, they will have a "burned" appearance until you restart a savefile. Fixed in version 2.0
- The inactive player has no AI when in water. Partially fixed in version 2.0
- The inactive protagonist cannot perform drive-by. Fixed in version 2.0
- If you're playing with the second protagonist and you're far away from CJ, the ENEX markers will become invisible (this bug is only visual, and due to some bug can be fix it if player two is inside a vehicle) Fixed in version 2.0
- The "heaven" will have the color of the last interior accessed. Partially fixed in version 2.0
- Killing the cop who arrested player two can result in player one being arrested, and player two doesn’t go through a 'resurrection' process. Fixed in version 2.0
Bugs due to overwritten 2-player mode code (None of these bugs cause crashes!)
- CJ and the second protagonist share stats.
- The radio from the last vehicle you got into will play, even if the active protagonist is not in one.
- If player one activates weapon cheats, they will also affect player two.
- Only the engine sound from the last vehicle you got into will play.
- Police can attack/arrest the inactive protagonist even if they haven't done anything.
- Police bribes and money pickups are shared (only affects player 1). Fixed in version 2.0
- The position of player two on the minimap is attached to player one. FINALLY fixed in version 2.0
Bugs related to the mod/script (so far)
- Sometimes, when you ask the other protagonist to follow you, they won’t enter interiors with you. Like I said, sometimes it works, sometimes it doesn’t. Fixed in version 2.0
Incompatible mods:
- GInput has a particular case, please read the "before playing" section below.
- Z Menu by Zolika1351 (Instant crashes when switching to the second protagonist)
- GTA V Hud by _AG (Instant crashes while trying to open the switch menu)
- GTA IV HUD by _AG (HUD bugged, and even crashes when player two gets into a vehicle!)
- ClassicHUD by _AG (health and body armor doesn’t work for player two) Patched in version 2.2
- Renderhook. What?! How in the world a graphic mod isn't compatible with a cleo script!? Renderhook (specifically _gtaRenderHook.asi) has issues with some CLEO+ opcodes, like "is_key_just_pressed" and "set_camera_control".
- Any 2 Player Mod
- SA Mobile Hud by DK22Pac (You need to change SECOND_PLAYER_OFFSET_Y to 0.0)
- None of the CLEO scripts work with the second protagonist, as expected, since CJ and the second player are not the same character. Since cleo scripts obviously check if player 1 exists, there are no mods that work for the second protagonist. In version 2.0, mods that claim to support 2-player mode are finally compatible with the second protagonist!
Compatible mods
- Cheat Menu v3.52 by Grinch (Works flawlessly for the second protagonist!). The new Grinch Trainer for some odd reason randomly crashes this script.
- GTA V HUD by DK22Pac (Player two's health/armour is always visible and player 1 money is overwritted over player 2 money, but this mod fits so well!)
- In theory, all ASI mods that use the function FindPlayerPed, in other words that do not directly ask for player 1. Because FindPlayerPed checks for CWorld::PlayerInFocus value.
BEFORE PLAYING
- If you didn’t know that receiving story calls,pick up a save icon or starting a new game counts as being "on a mission", now you do. Please don’t report it as a bug. That said, whenever you get a call or start a new game, the second protagonist will enter mission mode.
- If you have GInput, 2-player auto-aim will be enabled (even if you're playing with keyboard/mouse). If you insist on using GInput because you're using a controller, make sure the FreeAim=1 option is enabled. The mod is fully adapted to be played with GInput and ControlsSet=1 but your controller won't vibrate when playing as Player 2, and GInput will force auto-aim because it detects another player, even if you're using keyboard and mouse.
- Requires CLEO+, CLEO+, CLEO+ and CLEO+
GInput compatibility
How to change the character images?
DOWNLOAD (by Google Drive)
REAL MULTIPLE PROTAGONISTS 2.2.1
Mirror (Mediafire)
Version 2.2.1 is the final release! Thank you so much for staying with me throughout this investigation, motivating me to go even further, and reporting bugs! Any future bug reports or suggestions will be ignored.
Download includes 7 files:
Five cleo scripts
PLCHUTE_Patch
This patch fixes the parachute script for CJ. Strangely, the parachute logic is stored inside main.scm instead of the executable. It contains the only opcode related to 2-player mode, and when this mode is detected, CJ’s parachute stops working. This patch solves the issue without needing to replace your main.scm.
PLCHUTE_Player2
This is the parachute script for Player 2. Thanks to the uncompiled file shared by Grove Street Games, I was able to recreate this script without using global variables, and also fixed several bugs from the default version.
VENDING_Player2
This script enables vending machines for Player 2. Again, Grove Street Games' source code made it easier to understand and adapt for the second player. CLEO+ opcodes are used for smoother integration.
RealMultipleProtagonist
This is the main script! It includes everything: Player 2, all the AI logic, all validations, the character selection menu—and most importantly, it removes all the original 2-player mode code to prevent conflicts. Everything is packed into a single file! With the amazing potential of just 32 local variables max!
RMPAddon Added in version 2.2
This file is responsible for drawing an icon on the map at the position of the inactive player, and also for changing the way a player is wasted. (A clean, new file is necessary because it must run in real time without optimization methods).
A configurable file
switch_char.ini
Here you can configure everything possible in the mod: the second protagonist's character, the menu position, character colors, starting with the second player, and more.
Texture file.
REAL_M.txd
Here you can change the image representing the players to your liking.
If for some reason you want the previous version...
Real Multiple Protagonists 2.2
Real Multiple Protagonists 2.1.2
Real Multiple Protagonists 2.1.1
Real Multiple Protagonists 2.1
Real Multiple Protagonists 2.0.2
Real Multiple Protagonists 2.0.1
Real Multiple Protagonists 2.0
Real Multiple Protagonists 1.0 (Not recommended. It feels like an unfinished beta/ Multiple Protagonists test.)
How to install it?
Just drag it into your modloader folder.
Change log
V1.0
November 16, 2024
- Official and initial release.
V2.0
May 4, 2025
Main Update
- YOU CAN NOW playing with the second protagonist while on a mission!! During missions, the inactive protagonist can go to the yellow marker, attack threats and more!
- The switch menu now correctly positioned to your game resolution. Both the rectangular interface and the wheel.
- The inactive protagonist can drive by while sharing a vehicle.
- Player two's parachute script was properly recreated thanks to the decompiled code provided by Grove Street Games. This means that it no longer shares the same variables as CJ, and instead it exclusively uses local variables!
- Player two can use vending machines, thanks to the uncompiled script provided by Grove Street Games.
- Many hidden co-op restrictions were changed or removed to finally unleash the full potential of multiple protagonists.
- FINALLY! After so many years, the 'Buffered Death/Arrest' bug is now handled!! Never heard of it? Well, nobody cares about 2 player mode anyway. But yeah the point is, the game now tries to recover when this happens: no more respawn crashes, no more CJ holding random bottles, no more lost weapons even if you've got Katie, etc etc. It's not a real fix, but it's a solid workaround.
Removed
- The "Visibility" option has been removed from the configurable file. If you want to hide the menu, check the [INTERFACE] section and use posX and posY to position it outside the screen.
- "Greeting/Antagonizing" the second protagonist was removed in order to create more essential options. It was fun but certainly useless.
Changed
- If the distance between players is greater than 6000 meters, the GTA V-style transition will not occur.
- If both players die within a range of 1500 meters from each other, they'll respawn together at the hospital. Previously, there was no distance limit.
- When switching characters, if the other protagonist is fighting someone, their task won't be interrupted unless you press a button, move, or they finish the task.
- Players no longer share wanted level when they are in an interior or swimming.
- The inactive protagonist will no longer get stuck in the air when driving a flying vehicle.
- The inactive protagonist accuracy changed from 100 to 85 (Downgrade!).
- The inactive protagonist is less likely to switch weapons during combat.
- The inactive protagonist can use added weapons that don't replace existing ones during combat.
- You can now restart the mod by typing "RMP" instead of pressing "2" on the numpad. This is useful for applying new changes without restarting a save file.
- You can now call the other protagonist if both have the same number of wanted stars.
- You can now shoot the inactive protagonist if they are shooting you.
- Reduced the distance for the 'Call the other protagonist' option to appear. It was 1000 meters, now it's 800 meters.
- Wanted Stars are now shared as long as players are in close proximity and you make a character switch.
- The second protagonist will only say "shooting" voice clips while actually damaging a pedestrian, and not just shooting randomly.
- You can now restart the mod during a mission. It's still not recommended.
- Previously, the inactive protagonist could wander around the map if the players stayed within approximately 150 meters of each other. And now, they can wander until they no longer detect ground collision (The GTA V transition now will appear when they separate by 170 meters).
- The inactive protagonist will now enter your vehicle as you enter, instead of waiting until you are already using the seat.
- Player two now uses the function "CGameLogic::RestorePlayerStuffDuringResurrection" after a busted/wasted sequence.
Recoded from scratch
- The AI of the inactive protagonist when trying to jump. This fixes issues like the protagonist jumping multiple times for no apparent reason or getting stuck while climbing.
- The AI of the inactive protagonist to "fight back" was improved, fixed and optimized.
- AI for entering/sharing vehicles. The inactive protagonist will now get in when detecting you're entering a vehicle, and the 'ghost car' bug has been fixed.
- Code for the inactive protagonist to enter/exit an interior with you. Previously, it was poorly implemented as "waiting for the door animation to finish" It now correctly check the status of the ENEX transition (CEntryExitManager:ms_exitEnterState).
Fixed
- Fixed a crash where the inactive protagonist, for some dumb reason, randomly decided to reload a heavy weapon. (Can this bug even happen in regular gameplay with an NPC?)
- Fixed a crash when starting a new game or loading a save while the active protagonist is the second player.
- Fixed the fading in "call to the other protagonist" feature where sometimes doesn't fade correctly.
- Fixed AI behavior when the inactive protagonist tried to destroy a police Maverick and enter a vehicle at the same time.
- Fixed the "swap weapons" option when attempting to swap the same weapon with the other player. This option will no longer appear.
- Fixed a teleport bug when trying to call the other protagonist when they are unavailable.
- Fixed "Auto Drive" not working correctly.
- Fixed an issue where the second player wouldn't receive a heavy weapon when the 'share_weapon' option was disabled.
- Fixed some text strings in the English adaptation.
- Fixed an issue in the GTA V effect where the other player would start driving a vehicle even if they were previously just a passenger.
- Fixed an issue where Player 1 would start following Player 2 when "spawn_using_player_two" and "spawn_next_to_CJ" were enabled.
- Fixed that the character switch menu could remain open if you held Tab/L1 with player two as active protagonist before being arrested.
- You will no longer switch characters while aiming with a first-person camera weapon (Rocket Launcher, Camera, etc.).
- The "You Drive" option will no longer be available when the car you're trying to enter is locked.
Rockstar North Code Changes/Fixes
These pieces of code originally don't use the value of CWorld::PlayerInFocus, but are hardcoded instead. And it's also Rockstar North's code that's wrong.
- The directional blips are FINALLY separate now! (This was caused by a bug in the code where the function FindPlayerCentreOfWorld_NoInteriorShift was receiving a hardcoded 0 instead of the actual player index).
- Now the protagonists can perform IDLE animations (This was an intentional validation because it's kinda bugged).
- Bribe pickups are now separate - player two can pick them up to clear their own wanted level instead of player one's (This was an intentional validation possibly with the final co-op mode in mind).
- Money pickups are now separate - player two can pick them up to add to their money. Why, if player two's money is useless anyway? I don't know! To show it's possible I guess (This was a hardcoded value).
- Player two can earn money by picking up a horseshoe, oyster, taking a photo (pickup in San Fierro), etc., if they are the active protagonist (same reason as above).
- If player two is the active protagonist and activates weapon cheats, the effect also applies to player one (Rockstar coded this incorrectly! They check for the active protagonist, and then check if player two exists!).
- All cheats that change CJ's appearance now only affect him. (The original code applies them to the active protagonist, and if that's player two, it bugs out because he can't have appearance changes).
- CStats::UpdateRespectStat will now only update for player 1 instead of the current protagonist. This fixes an issue where you would get a 'Respect Update' every time you switch, and doesn't make sense since player two own can't have stats.
- I apparently discovered and had been using an unused control setup for player two using the keyboard in version 1.0 of the mod, which I think is pretty cool. However, it's incompatible with most 2-player mods, so now player two properly emulates a 'pad' using the keyboard instead.
- The CCutsceneMgr::BuildCutscenePlayer and CCutsceneMgr::LoadCutsceneData functions are now patched/hardcoded to only request CJ and prevent his model from deforming during cutscenes.
- When playing as player two, save pickups are disabled. If you force a save, CGenericGameStorage::GenericSave has been modified to reduce potential issues, but don't complain if your save stops working. Always save as CJ.
- The function CCam::Process_Cam_TwoPlayer_Separate_Cars() was removed and replaced with CCam::Process_Cam_TwoPlayer(). As far as I know, no co-op mode ever used the terrible camera system Rockstar implemented when both players were driving separate vehicles.
Added
- The inactive protagonist can now recognize if the "Mega Jump" cheat is active, allowing to jump higher walls than usual.
- The inactive protagonist can now recognize if you have provoked a gang war.
- The inactive protagonist now has AI behavior when you hit their car (flees similar to pedestrian behavior).
- The inactive protagonist now has AI behavior when is on fire (doesn't react when you have the fireproof bonus).
- The inactive protagonist will now be attached to a boat, similar to recruited gang members (Doesn't work all the time due to the way a player entity works).
- The inactive protagonist will exit a vehicle if it's on fire while sharing it. This only applies if they are the driver.
- The second protagonist can now say specific voice clips while shooting at gang members (Not all characters have specific voice clips).
- The second protagonist can now say specific and unused voice clips while being chased on foot (Not all characters have specific voice clips, only tested with Cesar, Smoke, Ryder and Toreno).
- Player two can now search for the nearest weapon pickup when unarmed and involved in combat with a wanted level above 3 stars. Yes, this feature is exclusive to Player 2. I couldn't get it to work for Player 1, sorry.
- Added a new option to teleport to the other protagonist when they're far away.
- Added vintage effect to GTA V effect (corners only).
- You will not be able to ask the inactive protagonist to attack recruited members and your gang in general.
- You can now press G or H (Dpad Up or Dpad Down ) to make a recruited member to follow you into a fight or stay where they are. Just like a regular gang member.
- I tried to add an AI when the inactive player is driving a plane. It's buggy but it's better than being frozen in the air.
- The inactive protagonist can swim to the nearest shore.
- The configurable file now includes an option to set a custom spawn point for the second protagonist! Useful if you want to create custom scripts using this unused and real feature.
- Added compatibility with the 'Revive Friend' mod (the inactive player can now revive you).
Other
- Clouds will be disabled during the GTA V transition.
- The "spawn_using_player_two" and "spawn_next_to_CJ" options in the configurable file are now in the new section "PLAYER2_SPAWN" instead of "FREEROAM".
- Slight performance improvements in the mod code.
- Blue, green and orange colors where changed to match better with Michael, Franklin and Trevor colors, because why not.
- The code that controls player two via keyboard/mouse and the first XInput controller has been changed. This reduces issues where the inactive protagonist moves at the same time as the active protagonist (only on foot).
V2.0.1 (Hotfix)
May 9, 2025
Rockstar North Code
- Fixed an unexpected buffered death state during ENEX (interior/exterior) transitions. I didn’t even know this could happen in single player.
Mod Code
- Fixed the inactive player trying to use satchel charges to kill.
- Fixed a crash related to the instruction NOT LOCATE_CHAR_DISTANCE_TO_CHAR.
- Player two now removes thermal/night vision goggles after a player is killed or busted.
- Fixed a crash when entering a two-seat vehicle with the second seat free (weird one).
- Minor tweaks and adjustments.
V2.0.2 (Hotfix)
May 14, 2025
Mod Code
- Buffered death states during ENEX transitions are now handled correctly. Yes, again, but this time it's for real, I swear. Even though it's unlikely for the player to die during an ENEX transition, this bug is finally fixed. Also, as far as I know, it's IMPOSSIBLE to have a buffered arrested state while in an ENEX transition. Not even using "set_char_arrested", so I didn't make validations for that.
- Fixed a possible crash in mission mode when the inactive player tries to find the next objective while in a vehicle.
- Fixed an issue where the inactive player would try to destroy parked police Mavericks.
- Player one now correctly escorts player two on the left side instead of the right side
- Fixed buffered death state when player two died near a save disk.
- Fixed the issue where the order to tell the other player to stay in place (Dpad down or H) didn't always work.
- Fixed issue where the active protagonist could attack the inactive player even if they had no intention to kill them (Apparently I deleted this function before release and didn't even realize lol).
- Fixed crash related to the "WAIT_FOR_MATCHING_AREA_CODES" task. No one reported this. Just in case someone ever finds a way to trigger it.
- Fixed flickering text when doing a drive-by with a non-SMG weapon (Oops, I ruined this easter egg).
Other
- Removed the code taken from CoopAndreas that prevented CJ from spawning with bottles or cigarettes. It's no longer necessary since "buffered death state" is now handled much better.
- In the additional files (PLCHUTE_Patch, PLCHUTE_Player2, and VENDING_Player2), the line "{$USE ini}" was removed, as it was unnecessary, these files don't read any ini files.
- Fixed a one-frame glitch (unnoticeable unless you're playing above 60 FPS) where the unrendered interior could briefly be seen when switching characters and one of them was inside.
- Updated information regarding GInput compatibility.
V2.1
May 30, 2025
This update could very well be called "
The GTA V Update".
Rockstar North Code
- These functions now correctly reference the current protagonist instead of CJ:
CEventEditableResponse::InformRespectedFriends.
CTaskSimpleCarDrive::TriggerIK
CTaskSimpleCarDrive::ProcessBopping
WaterCreatureManager_c::Update
CRadar::DrawYouAreHereSprite
CTaskComplexGangJoinRespond::CreateFirstSubTask
CVehicle::AddSingleWheelParticleCCam::Process_FollowPed_SA
What do these functions actually do? I have no idea! The only one I do know is DrawYouAreHereSprite — this one fixes the map icon heading when you're using player two.
DK22Pac Code
- This mod now patches and fixes the GTA V-style HUD made by DK22Pac to separate the player blips and display the correct amount of money for the active protagonist. This option can be enabled or disabled in the configuration file.
Grinch_ Code
- This mod now patches the Grinch's cheat menu so that the "custom_skins" section uses the SPECIAL CHARACTER from slot 8 instead of slot 1.
Context: My special character for player two uses slot 8 since it's an unused and rarely used by other mods. When changing skins through his Grinch's cheat menu, the ability to sprint like CJ is lost (with a modified ped.ide). Also… why use slot 1? It's even used in missions, definitely not recommended (for v3.52 only, the new version keeps crashing randomly). This option can be enabled or disabled in the configuration file.
Added
- In follow mode, you will deal less damage to the other player (This option can be enabled or disabled in the configuration file, in [GAMEPLAY] section).
- Added an option in the config file to make player two a second CJ.
- The inactive player will now exit the boat they're driving when it's no longer over water.
Changed
- The inactive player now has a low chance of using the minigun in combat.
- The inactive player now has a low chance of using the sniper in combat.
- The "gta_v_style" option (which enables the GTA V effect) is now split into separate toggles! You can now disable the slow-motion, transition, screen tint, and sound individually, instead of using a single option that turned everything off at once.
- Restarting the mod while the other player is in "follow" mode should no longer revert them to "wander" mode (not 100% guaranteed though).
- "Automatic mode" will now activate when the players are within 50.0 meters of each other, instead of 40.0.
- In a mission, ENEX teleportation will only work when players are nearby.
- VENDING_Player2 (the script that makes vending machines work for player two) now properly 'resets' after using a machine. Previously, it used the GET_GAME_TIMER (as in the original), but using a simple TIMERA proved to be a much easier solution
Fixed
- Fixed a crash when entering or exiting an interior while player two was drinking a soda (Oddly specific. Why would you even test the mod like that anyway?).
- Minor tweaks and adjustments I can't even remember.
V2.1.1 (Hotfix)
June 15, 2025
- Fixed black screen when visiting/calling the other player while they were inside a vehicle.
- Added new visual layouts for the character wheel menu (see image above under "How to change the character images").
- Minor adjustments.
V2.1.2 (Hotfix)
June 30, 2025
- Added an option in [GAMEPLAY] to hide the other player's blip when they're more than 170.0 meters away (when the GTA V-style camera transition starts).
- Fixed a bug where switching to another character would place them under the map if they were inside an interior located below ground level (e.g., the truck stop or the abandoned AC tower). This issue is now dynamically handled to prevent it from happening in any similar cases, including custom maps.
- Fixed unusual AI behavior where the inactive protagonist would try to enter the player’s vehicle as the driver, resulting in them unintentionally stealing it.
- Minor tweaks and adjustments (yeah, this note again... did I really even change anything? Just pesky tweaks and validations about trains, AI while driving boats, camera position, and weapon randomness, nothing worth listing separately or "gameplay changer", honestly)
V2.2 (Gameplay changer update)
November 3, 2025
Major Update / Gameplay Changer
- You can now keep playing even if one player dies! The game will no longer trigger the "Wasted" transition. Instead, gameplay continues while the eliminated player must either wait 30 seconds or move away from the area to respawn.
- You can change the activation key/button.
- If you are wasted (in follow mode), you can automatically switch to the other protagonist, giving you more playtime.
Added
- When a waypoint is set on the map, the option "Drive to destination" now appears when switching driving modes while both players are in the same vehicle.
- The inactive player can now detect grenades and will run away to a safe distance to avoid the explosion.
- Added an icon on the full map to indicate the position of the inactive player.
- There is a new file called "RMPAddon.cs." Do NOT delete it, as it is responsible for making the new functionality of this update work.
Changed
- Increased the distance at which the other player stops next to you while in Follow mode. Note: this globally affects the instruction TASK_COMPLEX_FOLLOW_PED_FOOTSTEPS, but it has no negative impact.
- You can now honk the horn while the inactive player is in combat to interrupt their action and make them enter your vehicle.
Fixed
- Fixed an issue where compatible two-player mods would only work after opening the character selection menu at least once.
- Minor tweaks and adjustments.
Other Mods
- Patched First Person Mod by BoPoH (Voron295) to work properly with Player Two.
- Patched ClassicHud v2.2 by _AG so the HUD correctly displays Player 2's details instead of Player 1's hardcoded info.
- Patched GInput by Silent so it no longer forces coop auto-aim, even when playing with keyboard and mouse.
- Patched an incompatibility between First Person Mod (by BoPoH) and GTA V HUD (by DK22Pac), where the camera kept moving when switching weapons with the scroll wheel. (This fix is exclusive to this mod!) It's now a standalone mod-fix.
V2.2.1 (Hotfix and anniversary)
November 16, 2025
Rockstar North Code
- A hardcoded value in CTaskSimpleCarDrive::TriggerIK and CWeapon::FireSniper was discovered and successfully modified to work with Player 2.
Fixed
- Various bug fixes (thanks to reports from Fabrix199, Grumpy Cat, juliocesarramirezluna5057 and Jon_KL_2005)
CONTROLS (explained on-screen anyways)*
- To open the switch menu press TAB (keyboard) or L1 (GInput)
- After switching with the indication on screen (R or the Right Joystick), release the key/joystick press on the character to switch.
- Aim at the other protagonist to see the rest of the controls. The keys/buttons has a similar layout seen in Red Dead Redemption II.
- Reset the mod by typing "RMP". I originally used this function to debug the mod, but it can also be useful for applying changes.
*Main controls explained. You can change the key/button to open the switch menu!
Highly Recommended Mods
- Cheat Menu v3.52 by Grinch. Since it's the only mod that works with the second protagonist, you may want to have it installed (Install the menu v3.52. The new version for some odd reason randomly crashes this script)
- Improved Streaming. For smoother transitions when the protagonists are very far apart.
- Magic.TXD in case you want to edit the character images.
- GPS Redux. Allows the game's artificial intelligence to recognize long paths without glitching along the way. Why doesn't the mod document this? It's useful for taxi or chase mods.
Special thanks
Junior_Djjr
If it weren t for CLEO+, this mod wouldn't even exist.
Seriously, thank you so much again and again! Even the opcode
set_char_arrested is absolutely essential to make this work! Also, thanks for the code to disable the opcode 02A9 (set_char_only_damaged_by_player).
Grinch_
His cheat menu is the only one truly compatible with the second protagonist,
since it's a well done mod that uses FindPlayerPed() instead of hardcoding Player 1. I used it all the time for testing!
MKKJ
I took references from his 3D Radar Blips mod to understand how to "catch" blips and how they work.
Tornamic
I took code from CoopAndreas to fix the bug where a player would spawn holding a bottle or cigar.
His code is no longer needed starting from version
2.0.2, but I still appreciate it, thank you!
FAQ
If your question is here I won't reply you
When I call the other protagonist I got the message "The other protagonist is not available". Why?
That's happen because these reasons:
- The other protagonist is using a boat or plane.
- The other protagonist has wanted stars and you don't have.
- And the most important, the other protagonist can't spawn where you at (You're between building, there's not enough floor, etc)
If nothing of these are your situation then it's a bug.
CJ talks a lot during drive-by!
- Not my fault. I only assigned the NPC code while the inactive protagonist is doing the drive-by. The rest is Rockstar's code.
Sweet talks a lot during drive-by!
- Not my fault. I only assigned the NPC code while the inactive protagonist is doing the drive-by. The rest is Rockstar's code.
The GTA V-style transition sometimes bugs out the camera!
That's a native game bug. If the camera passes over an 'important' place, it usually glitches. Areas like Area 69, garages or spots where a mission is currently happening can trigger it.
The GTA V-style sound isn't playing!
The mod plays that sound as a mission audio in slot 4. That slot is rarely used, but when it is, conflicts can happen. It s not really a serious bug though.
I don t have Barbara/Katie, and when player two dies or gets busted, player one loses money and weapons.
- The "resurrection" process is more complicated than I thought let s just say the game can only revive one player at a time, and to avoid even more issues with bonuses, stats, etc., it s CJ who ends up losing the weapons and money. And how did I manage to revive both players without making player two despawn? That's a different story.
Why can't I use X mod on the second protagonist?
- Because CJ and the second protagonist are not the same character.
Why does the second protagonist run so slowly?
- Because CJ and the second protagonist are not the same character.
Why can't I use red markers/start missions/(X feature) with the second protagonist?
- Because CJ and the second protagonist are not the same character.
Can I change the colors of the characters?
- Yes. Check the configuration file.
Can I change the second protagonist character?
- Yes. Check the configuration file.
Can I disable the "GTA V" effect every time I switch characters?
- Yes. Check the configuration file.
Can I disable greeting/antagonizing the second protagonist?
- Yes. Check the configuration file.
Why can't the inactive protagonist use weapons like rocket launchers/bazookas?
- Unlike a random NPC, a player entity requires a special camera type to use these weapons.
Why can't the inactive protagonist use grenades, teargas, satchel and molotovs?
- Very bugged and even Rockstar know it.
Can I make player two run like CJ?
- Yes, you can. Player two is created using slot 298 (special 9 slot). Modify your peds.ide to get something like this:
"298, special09, generic, CIVMALE, STAT_STD_MISSION, player, 1FFF, 0, null, 9,9, PED_TYPE_SPC,0 ,0"
You can use a loader.txt file to patch the running animation, but it only works with regular peds. For some reason, special characters don’t get patched using this method.
Can I change the image that represents the players?
- Of course, it's your San Andreas after all. Feel free to use MAGIC TXD to edit the textures. Just please don’t reupload the entire mod as part of some terrible GTA V to GTA SA mod pack. And if you do… well, at least give me credit.