x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Office Holiday

Epic Games' offices will be on holiday from June 22nd to July 7th. During this period support will be limited. Our offices will reopen on Monday, July 8th. 

What kind of rework to make solo game become multiplayer game ?

Hi the community !

Before i start, i would like to say sorry if my English isn't very good, i'm french, but i hope you'll understand the point ^^

Well, Recently i started working on Unreal Engine 4 (4.20). My objective is to make an RP Game like Gmod Dark RP, and actually, he looks pretty good i think ! But anyway...

I started making this game without anticipated the multiplayer side. I made this game entirely like a solo game for now and i watched some video who speak about the multiplayer point and i have to say than i'm very affraid to begin this part x)

My question is the following :

Is the multiplayer part meaning a lot of rework for a game thinked previously for a solo game ?

For example, i would like to know if my main Character BP have to be all rethinking for multiplayer ? If like, always for example, i have some variable set for animation transition when i'm doing some action, i'm affraid than one player make an action, and all player on the map get in the animation.

I have to make that, so i'm not affraid to learn how to adapt the point.

Thanks a lot !

Product Version: UE 4.20
Tags:
more ▼

asked Aug 28 '18 at 09:30 AM in Blueprint Scripting

avatar image

StunningSide
1 2

avatar image Przemek2222 Aug 28 '18 at 10:24 AM

Hey,

UE4 is realy good in network code so you will don't have too much to do (if you used default characters etc..).

You can define in each blueprint if it should be replicated on server how often etc...

It realy shouldn't be hard. You will need ofcourse to change menus, player to network start etc.

avatar image GarnerP57 Aug 28 '18 at 11:34 AM

It might look rather simple at first but you quickly have too many balls in the air and those ball are not the same weight so you don't know which one to catch first. You need a solid understanding of where the different Blueprint classes live and who owns them.

  • Is it only on the server? e.g GameMode

  • Is it only on the client? e.g UserWidget

  • Is it on the server and owning client? e.g PlayerController

  • Is is it on both the server and all the clients? e.g Character

  • Is the Actor you are calling a RunOnServer event owned by the Client calling the event? If not the call will be dropped.

It is also important to know that only the server can replicate things so if you set a replicated variable on a client it is never replicated to the other clients or the server.

avatar image mightyenigma Dec 05 '18 at 07:26 PM

@GamerP57 I wish I'd read your comment before I attempted my multiplayer game. Would have saved me months of frustration! I would like to add that Character classes with CharacterMovement component are special, as they actually DO replicate, smooth, and predict movement between them and the server (whereas nothing else in the engine does unless you code it to), via the SetControlRotation and AddControlMovement (I think that's the name) functions.

Every other kind of actor in the engine does not work like that so you have to explicitly tell the server what moves to make and it has to explicitly tell all the clients what happened when any actor on any client moves.

You will get choppy lag and rubber banding on everything except Character class and anything you have coded your own special network movement code into, and except on replicated Timelines.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

2 answers: sort voted first

UE4 makes networking very easy to implement (at least for fps/tps local lan games), so you shouldn't really need to rework your project much at all..

In simplest terms, to create a networked game (local lan at least), pretty much all you have to do is call the "Create Session" node on the client you want to be the host, and call the "Join Session" node on the client you want to join, and UE4 handles all the rest for you :)

UE4 also uses an "actor replication" approach, which means that any actor on the host is automatically replicated - shown and location/animation/variables automatically updated - on all connected clients (you can also set whether you want any/all of the actor/blueprint variables to also be replicated to clients or not)...

There's a good example to get you started..

In the UE4 launcher go to the "Learn" page and scroll down to "Gameplay Concepts", open and download the "Multiplayer Shootout" tutorial project.. If you look at the blueprints its pretty quick to see how it sets up and replicates a networked game (it also has a documentation link on the download page)..

It would probably also be worth looking at: https://docs.unrealengine.com/en-US/Gameplay/Networking/Actors

more ▼

answered Aug 28 '18 at 01:14 PM

avatar image

Mach45
73 7 15 20

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

Owh ok ! Kind of reassuring ! Thanks a lot, i will follow the official Epic games tuto about that :)

more ▼

answered Aug 28 '18 at 01:13 PM

avatar image

StunningSide
1 2

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

Thanks a lot for all your answers, really appreciate that !

I'll do my best :)

more ▼

answered Aug 28 '18 at 01:47 PM

avatar image

StunningSide
1 2

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question