I did that, however the issue I have is the 2nd player is unable to receive inputs. Here is my blueprint so far:
Other thing is, my gamepad and keyboard are controlling the same player 1, I can’t get the gamepad to control Player 2 while keyboard controls Player 1.
From what I’ve been able to figure out (documentation is scarce on this topic), is that the keyboard and the first gamepad will both always control the first player (Controller ID 0). Past that, you need to have the same number of gamepads as players (2 gamepads for 2 players, 3 gamepads for 3 players, etc.); at least for local multiplayer. And no matter how many gamepads you have plugged in, the keyboard will always control player 1.
There may be a way to route the first gamepad input to the second player when there’s only one gamepad present, but this would require some serious modifications to underlying engine source code; I haven’t tackled that yet.
I’ve posited that you could create a Blueprint Interface for the second player, and then take all of the gamepad inputs into the first player, and route the pertinent input information through the Interface to the second player character.
I don’t know if this would cause any input lag, as there would be an extra function call involved in any input being routed from the first player to the second player; but it may be worth looking into nonetheless.
So after spending countless of hours of frustration figuring out why I can’t get the simplest of tasks, local Split Screen controls working, it turns out this was the issue.
Joypad 1 == Keyboard 1 and it’s undocumented.
I need a drink.
Hi
Have you solved this problem ? Or is it impossible to do ?
If i want to play in local multiplayer, is it an obligation to have a second gamepad ? Or is it possible to assign the mouse keyboard to the first player and the gamepad to the second player ?
The “Create Player” node creates the controller for the 2nd Player.
I also put both Player1 and Player2 into the level.
For Player1’s character, I set the Pawn and Input settings to Player 0.
For Player2’s character, I set the Pawn and Input settings to Player 1.
Hopefully that helps someone.
I just used the External Camera part to remove the camera from Player 1, so both players can be seen, simultaneously.
There is a setting inside Project Settings → Map and Modes Called Skip Assigning Game-pad to Player 1, This allows the first detected game-pad to be assigned to player 2 instead of player 1.
20TwentyVizion’s solution is unlikely to work - as was pointed out by berhardjtdonny in 2015, Keyboard = Gamepad 1 = player 1.
The closest solution I’ve found so far using standard UE is to check “Skip Assigning Gamepad to Player 1” in the Project settings (Project - Maps & Modes). Then you create 2 separate player controllers - one for keyboard, and one for the gamepad.
I actually have 3, just in case there’s 2 gamepads (KB, GPad, GPad). The problem I’m having now is that when I pause/unpause - Gamepad 2 stops responding. I probably will need to reset something…