Multiplayer Systems

http://puu.sh/iSYfw/37f4cec30c.jpg

INTRODUCTION

Hey party people,

my name is Cedric ‘eXi’ and maybe you already know me from here, the HUB, youtube or twitch.

The last few weeks i was working on a project that combines some of the “basic” multiplayer things, only done
in Blueprints. My first little goal was to create a lobby, but now i have added a lot more features.

I already submitted the details of this Project to Epic Games (:

The project works modular most of the time. So you are able to strip of the Lobby, Chararacter Select
or Group System for your own project. They might share a few variables in the GameInstance or so.

To get you started, i will comment every little bit of my code as exactly as i can. So better prepare to read a lot! (:

I’m working very structured and i am using A LOT of reroute notes, so that you can clearly see where
wires are going (sometimes they need to cross, but that’s still good to see at these points).

http://puu.sh/i4ZAn/e80b7a22f8.jpg

I also added short tutorial blueprints for the main classes (GameInstance, GameState, PlayerControler, etc.) which tell
you what they are used for and how you can use them for your Multiplayer Project.

http://puu.sh/i4ZsE/1e63e36215.png

[HR][/HR]
[HR][/HR]

What features do exist for this project?

TL;DR: Here is a video showing some of the features:

The Main Menu, composed of:

> Options Menu, where you can set your Username
> A host menu, where you should chose a ServerName, the Amount of Players and also a GameMode (DM, TDM or Group and Chat Showcase)
> A ServerList, which you can refresh etc.

http://puu.sh/i4ZFi/0db9bc6b25.png

http://puu.sh/i4ZFT/80cc89a926.png

http://puu.sh/i4ZH6/aa4b6a8583.png

http://puu.sh/i4ZGf/68352ba00d.png

[HR][/HR]

The Lobby, composed of:

> A list of the connected Players, either with 2 Teams, or all in one list
> A second list, where each Player can chose one of 4 Characters (only differ in color for showing)
> A Ready Button for every Player, so that the Game can only be started when everyone is ready
> A Kick Button for the Players, only visible for the Listen Host
> A Start Button, only visible for the Listen Host
> A Switch Team button, to switch your Team in Team Deathmatch

http://puu.sh/i4ZMA/59df6e8815.png

http://puu.sh/i4ZNV/cea6b96c1b.png

[HR][/HR]

A temporary Loading Screen!

[HR][/HR]

The Scoreboard:

> Showing the PlayerNames, the Score, the Ping and in TDM the Teams and overall Team Score

http://puu.sh/hNZuk/4f1766eeb6.jpg

http://puu.sh/i4ZTz/6f43ba88b0.jpg

[HR][/HR]

A Test Map for Deathmatch and Team Deathmatch:

> It has Spawnpoints (so a SpawnSystem) and a RespawnSystem for falling down the Map or Restarting the Round
> You can collect small floating objects and if you reach the Winning Score (default = 5) you or your team wins the round
> The Server can restart the Game if he wants

http://puu.sh/i50Nn/bb0e90f96a.jpg

> Also a map for the GroupInvite and ChatSystem but without the objectives!

[HR][/HR]

The Group System:

> You can look into a list of Players when opening your Ingame Menu
> If you click on a Player Name, the Player will receive an Invite
> If the Player accepts the Invite, the inviting person will be the GroupLeader and can invite more people
> The GroupLeader is marked with an orange Name
> You can leave the Group with the PlayerList as well
> You can invite and leave Groups per Chat

http://puu.sh/i504K/7ac1a9c5fc.png

http://puu.sh/i4ZZb/d9a3c31660.jpg

[HR][/HR]

The Chat System:

> You can write in the AllChat, a Group Chat (combined with the Group System) and whisper
> You can also perform /commands, like /playerlist, /invite PLAYERNAMER, etc.

http://puu.sh/i50aQ/51657cc9a6.jpg

[HR][/HR]
[HR][/HR]

What will the Pack cost and when will you release it?

I am submitting the project “now” to Epic Games and will see how long it takes to get into trello
and beyond.

It took me several days/weeks where i worked about 6-10 hours straight to finish this, so i guess the price is ok.

[HR][/HR]
[HR][/HR]

So i hope this is something cool for you and you would love to see this on the Marketplace.

I will post the trello link once my submission is through.

Trello is taking forevvvveerrrrrr!

I send my stuff to Epic yesterday. There was a weekend in between. Give it some time (:

Jesus this still isn’t in? Must have to allocate a month if i ever want to submit my own content to marketplace!

Hm yeah, i guess this is because of the 4.8 Release and because of Epic shutting down the Trello board.
Everything in the Queue will be published anyway. Although i have no idea how far my Project is.
I sent in my Project nearly 2 weeks ago. ):

Dude if you had uploaded this to Selfy or some other marketplace I would have BOUGHT this thing on the first week! I’m like checking my phone at work each break trying wait for this link and not seeing it. That’s just my point of view though, did you at least get a message?

Sadly no, i am not allowed to post any messages but the last state is, that they are reviewing it.
I really guess that 4.8 release and the Trello board thing slows it down. They are working on it
and we can’t do much. As soon as i get a response, i will update the thread.

If they won’t answer me the next week, i will setup another way to buy it.

Greatly appreciated. There is a great deal of demand for the project!

Hey, just wanted to update this. After the weekend i got a response. Again, can’t tell what exactly is going on,
but it seems like it will hit the market soon :X

I have my fingers crossed. Meanwhile, i’ll be learning maya so I can be prepared.

So i guess, if nothing goes wrong, the Pack should be in the next release, which is (if i add a week to the last one) tomorrow(?). :smiley:

Ok (: since i have no information about why and when my project will be featured on the MarketPlace, i consider releasing it on another Plattform/Market as well.

Can someone recommend a save and fast way to sell such a Blueprint System?

(: Thanks Axxi. I will keep them in mind.
I finally have a release date for the project.
Sadly this will take 2 weeks from now. But i will
take the time and prepare the Package for 4.8.

So everyone who is waiting for this project (i have no idea how many there are :O)
please be a bit patient. (:

Hey there,

i’m currently upgrading the project to 4.8. Sadly i’m facing a few problems and since i want to let possible customers know what
i am working on and that i care about bugs, i will list the problems (they are only appearing in 4.8 though):

  • LoadingScreen from MainLobby to Lobby is correctly added and you can see it with a breakpoint, but otherwise the level switch
    seems like killing the LoadingScreen before the actual event fires. This is not happening with the LoadingScreens between Lobby and Map

  • When playing with a ListenHost and Client in the Editor, the Client looses its MainMenu when the Server starts a new Game. Somehow,
    because of loosing the network connectivity, the client removes its MainMenu (without calling one of my events) and tries to readd it. This
    is prevented since he can’t open a MainMenu while already having a MainMenu. This is workedaround for the moment by allowing exactly this.

  • ServerTravel with a Client from Lobby to GameMap crashs with a Nullptr exception of a LocalPlayer cast. I am currently tracking it down.

Only the last error is truly breaking and i will not sleep till this thing is fixed or at least the cause is found.

Release of 4.7 Version is still next week i hope. The 4.8 Update will either come with it or will be updated as soon as i fixed the crash.

EDIT: Funny enough, i found the source. A multicast to show the LoadingScreen on all clients caused it. Let’s see if i can fix this. Otherwise
i will need to remove the loading screen for a few days to at least release 4.8 with all other features.

EDIT2: 7 hours later, it seems like i got everything working again. Needed to change some things. Once the package is released, please let me know
about bugs asap! I will create a new support thread once the package is release.

Its great to see you care about your product. I’ll be standing by watching for updates.

The chat system in any game is really important,I play two games, and . is a superior chat system and make the game very social. you have all chat in one window regardless if it is your guild,dungeon,raid,trade,world defense. You can also turn of each group to make the chat less intense. Chat window can be configured very easy. The log in in the game,instances,joining groups,raids are effortless. I am looking forward to see a video of your finished product.

Hey there, yeah i played WoW years ago too, and i know about the system there. But to be honest, this chat is not as perfect as theirs.
You have standard things like /all, /group and /whisper chat, as well as commands like /playerlist (1 word command) or /invite PLAYERNAME (2 words command).

For now they are all displayed in the same window, but it won’t be hard to split them. You just need to use different arrays for the chat messages. Then you can display them in different tabs.
But my project is not about a perfect chat. It is about showing how to achieve a chat and other network things in Blueprints at all. So you understand how RPCs, replication and the classes themselves
are working together. With that information you should be ready to create every system you want.

Finally it is released:

https://www.unrealengine.com/content/0ba6e65c1474472cbdf1d8b7505dcc92

If you have any questions or if you find any bugs, please tell me here:

https://forums.unrealengine.com/showthread.php?75723-Lobby-Chat-and-Group-Support-Thread&p=328116#post328116

Not to take anything away from your project, but Generic Shooter by Michael Allar (also on the Marketplace) appears to have everything this does plus a full FPS shooter game (he’s uploading the “Lobby” functionality soon, but it currently has everything else). And it’s only $19.99…

Perhaps you could shed a little clarification on this… Is there something I’m missing?

Here is a link to the Generic Shooter project for your review…