I wanted to test out the new FPS template and see if it works with Multiplayer. I added a 2nd Player Start and I set the players to 2 and Net Mode to “Play as Listen Server”.
When I hit play I get this error in the message log:
Blueprint Runtime Error: “Accessed None trying to read (real) property CallFunc_GetLocalPlayerSubSystemFromPlayerController_ReturnValue in not an UClass”. Node: Add Mapping Context Graph: EventGraph Function: Execute Ubergraph BP First Person Character Blueprint: BP_FirstPersonCharacter"
The new client window gives this error and it prevents the Mouse looking Functionality from working. The walking and shooting work fine.
Long term you will be better suited to flow control actions anyway. My character class does this by defining the Proxy Type on begin play then executing specific functions based on the defined proxy.
Just as a heads up. On Listen Server the “Host client” is the Server. Keep that in mind as you code client abilities and actions. That player will be running dual roles.
I was able to solve this issue for my use case by moving the blueprint section from the “Aid Aim Mapping Context” from the BP_FirstPersonCharacter and bringing it to BP_FirstPersonPlayerController and attaching it after adding the Default Mapping.
I did 8h of streaming and replicated the fps template
I shared the files and playable game on itch.io linked in the description if you’re interested
There were a bunch of things like people mentioned already
team scores held in game mode inaccessible, moved to game state
added a team component with delegates for team change, and applied balanced team logic on player join in gm pclogin
moved enhanced input mapping to local PC
made an inventory component to track weapon pickups over net
replicated behavior of the weapon pickup BP
fixed the pitch over net using base aim rotation instead of PC control rotation as PC are server/local only
replicated weapon firing with multicast for cosmetics (montage) and replicated the projectile
also added some QOL like per team stencil color through walls and name tags over allies
added a spectator cam on death, and replicated death with cosmetic ragdoll and UI popup then respawn
end round event via game state score requirement reached
end round score board with cached player/kills (this was a bit messy as key map isn’t replicated, and I didn’t want to cache it on player states as players can leave mid round and wouldn’t appear on score board leading to confusion)
fixed owner only see on the 1P mesh otherwise other clients see both models on character
I had some other experiments in there too like IK front hand on gun via weapon skeletal socket ref, and fixing the appearance of strafing which looks borked in 3P
The playlist had vods of all the streams if you want to watch the process though I expect it will be a slog.