Announcement

Collapse
No announcement yet.

How to get player controller in multiplayer game

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    How to get player controller in multiplayer game

    Hello , I'll start with a few words about 4.3 patch ,actually i'm a bit dissapointed and here is why ...According to roadmap there should be improved multiplayer support in blueprints in JUNE! now almost middle of july ....
    Since UDK i've been thinking is it so difficult to get developer 1 , just ONE! little fuction which will give first connected player index 0 ,second 1 ,third 2 and etc.... So than!!! using simple node player 1 ,player 2 ,player 3 which will store all functions ,such as controller ,camera ,speed ,etc of each player instance with it's own index. So than you can plug (for example)from player node 1 (with index 1) whatever fuction you want thus munipulating with all appropriate parameters of player1 (second connected player) .It 's just an example ....i'm really angry with trying to get player index in multiplayer game (actually can't get player controller only get player controller of first connected player).
    It was just illustration of simple thing which IMHO EPIC should implement long time ago.

    Could anyone help me to solve this issue. Thanks.

    #2
    Not to object your intention, but calm down first and think it through.
    It sound to work on paper from your idea, but there are several things that are sort of revealed in source code.
    1. what happened when a client dropped connection and then connected back?
    2. when (not in your game ) a bunch of player finished a round and then moved to a different world(level) what then?
    3. say 5 players currently connected, if player 3 decides to quit, and then player 6 joins afterward?

    I think if anything the player index is kinda of legacy code, and might be (don't get angry at this) removed/deprecated in future updates.
    It would make more sense if a player controller just control over something that have abstract id/names that have a counter part on server.
    And that's why a "GetController" is implemented so you don't have to specify player index, I basically avoid to use any node that use player index.

    You can always send an RPC to server gamemode so you get a reference of server side representative of your client controller.
    think of controller is the virtual wire plug, there is one plug on server, and one on client, it's peripheral agnostic to take any acceptable inputs(kb/mouse/pad/oculus) and translate into game controller input.
    if you want to keep a reference array of server side player controller, it's totally doable, and then you can use RPC and "RunOnOwningClient" to send specific events over.

    If you are not sure, check multiplayer respawn wiki page that I wrote. It's essential for your approach.
    Last edited by PenguinTD; 07-10-2014, 08:08 PM. Reason: add additional info
    Unreal Engine 4 Game Framework diagram for relation of all major base object types
    Unreal Engine 4 Input Event diagram, scroll down to section Input Processing Procedural
    Resident Evil Classic Camera
    RPCs official document, Must Read
    Everything you should know about replication

    Comment

    Working...
    X