Dedicated Server compiling issues

i have gotten to the point of total frustrations with the whole shabang of this process. I have spent countless hours trying to figure simply how to compile a dedicated server, i have went through countless tutorials, examples, and out of all this completed nothing. i am needing help, i get no answers when posting , except my first time here. and never gotten a response. so , here i go 1 more time , i would like to create a dedicated server, i wish not use , “stupid” blueprints … i wish to code my own. i need a stand alone server , in which , clients can connect too. when i compile my server in developer server in vs 2013 , i do get the appropriate files , i am able to run the server , however , when i start the command to execute the server … server.exe -server -listen , im able to see the dedicated data , as well the game that automatically comes up. however , when i go to the exe again , on another solution , built from the same but using developer client … i get no where! no connections can be made what so ever i tried every port you can think of. can someone please , verbatim please walk me through it , no links , and for heavens sake please dont even talk about blueprints. just simple straight forward to the tee answers please. no run arounds. if you dont know … dont post , for those that do know please pass some insights to others that im sure having the same issues .

I feel your pain.i have yet to find out the proper way to package a full game and create the dedicated server. I’ve also spent a few hours trying to make work. I eventually put it to work using Development server / client but it only worked when i connected to myself via public or private ip, my other frienda could not join for some reason. Anyway in your case i can suggest port forwarding the port 7777 (or whatever port you have configured in the ini files. After that try connecting to yourself using .exe with the ip address. Sorry if i cant be more helpful, i’m still struggling with thia issue and unfortunantely there isn’t much documentation to help out.

1 Like

I have tried the ports and everything over and over again. seems endless on the solution. they said something about git hub having something to download pertaining to the server but i couldn’t find that only thing that i’m able to see is the editor. Basically i have to split into some code on an example project to see how they did the first person shooter. i would like to do something similar, but aiming to do a dedicated server, and clients just connect to this one server. i will keep you in mind if i find a solution , and will make one heck of a tutorial.

1 Like

One thing i remember you had to do was create your own Server.Target.cs. Copy the one from shooter game and replace inside all the occurences of shootergame with and reopen the solution for vs 2013 and rebuild the development server and client just to be safe.

gotcha, yea got that ready, i cleaned my project starting fresh again. step by step. ill post here steps of successes

The solution taht I’m currently working with is:

You should find executable file of your editor, it should be in: Engine/Binaries/Win64/UE4Editor.exe or UE4Editor-Win64-Debug.exe.

On server side execute: UE4Editor.exe GameName GameMapsMyMap.umap?listen -game -log This will create standalone server- a server that has also rendering thread and allows you to play. Remember to write path to your map - it’s relative path from content directory. Example: GameNameContentMapsMyMap.umap.
If you replace -game with -server, you will have dedicated one (no renderring thread, no client, you will have to connect with other process).

On client side execute: UE4Editor.exe GameName xxx.yyy.zzz.qqq -game -log

I think he wants to test with the standalone exe from the game to simulate something closer to the end-user experience.

Thats the thing mark i think i m having issues with the compiling of this. i set up my develpment server in vs2013 to build but i goto that file structure and do not see the ue4editor.exe … maybe i need a better explaination, i did exactly like the explaination was for the two links. but, maybe if someone can explain it alittle better from beggining , ill grasp it better. I create a project, set the vs2013 to build a development server with the adding of UE4 server , as development server. when building or compiling it , in the main file loaction which im assuming in the engine/binaries/win64/ue4editor.exe is not there , it only shows a crash report exe

Ok i tried once again. omg. really, i just wished that there were some easier method, i went through countless, and seeming to not end with nothing that works. A new, community-hosted Unreal Engine Wiki - Announcements - Epic Developer Community Forums i tried everything on this link , and cannot get the Server binary to show up … what in the heck am i doing wrong, i did exactly what they said. went to the editor, compiled, then went to file and packaged project , all good so far , after that i compiled the server code using vs2013 targeted for unrealbuildtool, i used the template renamed to game name , i was able to see in engine source programs unrealbuildtool obj, development . the exe for unrealbuildtool.exe. i saved the template into solution , as server.target.cs , i opened up my vs2013 made sure i was set as Development Server and 64 for the platform target , I built the game project , i Used the UBT target , NO EXECUTABLE ended up in the directory /Binaries/platform/Server so i can move that executable to the cooked platform/game/binaries/platform location. what am i doing wrong. ? can someone please help me ?

Now it’s time to build your game project. Using the above UBT target, the executable will end up in /Binaries//Server. Move the executable over to ///binaries/. I am so stummped on this , i tried the tutorial , rebuild this darn solution ,several times, and when i get to add the darn class to use the UBT target i SIMPLY DO NOT GET A DARN EXECUTABLE TO MOVE TO COOK CONTENT. i have compiled the client , cooked content then went to the vs2013 and did exactly what the instruction said to do. i added the Server.Target.cs into the visual studios. and then built the solution. NO AVAIL still no Server.exe binary in the Engine\Game\platform its only a Game.exe binary which is the same as the one i created in the first build. Am i missing something here.

Ok , I was able to figure it out, the explainations were kinda confusing ,but there were parts that I had left out in the process that made things very difficult. if you have questions feel free to post , I will give you an example of the process I went through , I downloaded from git hub the latest version. I made sure I had deleted everything prior to fresh start. I went through by downloading the cloned version to directory , in my documents location. when cloning git hub had a not visable folder. when downloaded I went to engine/ and registered the uproject with windows, I then went to the game engine after generating the uproject by right clicking, and pointed to the location of my engine version. directory , not version number. after that I compiled the engine. which then after the compiling of the engine , I configured my settings , make sure you set your configurations to local ip . forward your ports 7777 and configure description. I used only windows , and mac and deselected the rest. I chose not to use pak files when ready to start packaging the files. . so I unchecked both. then I packaged the files to a location out side of my solution. in documents. named it file. you only need this for deployment packages. you can name it romper if you want. anyhow , once packaged . open visual studios. your editor should be development editor x64 , you need that setting each time you package the client in the editor. for the server you will set this to development server x64 then build the server after creating the Server.Target.cs you will need that link above to copy and paste into visual studios. make sure you add it into the solution. then goto your uproject files and regenerate files. then build. it will then place the Server.exe which you only need to copy this exe file and move it to romper or what ever you named your cooked content to, in documents location. place in the directory binaries, win64 along side your client and another file. I created a bat file that points to this location, cd Game\Binaries\Win64
start Server.exe some_Map -log this ran the server , I also created the same bat file for the client , except I named it differently … cd Game\Binaries\Win64
start Game.exe 000.000.000.000 -game and it automatically connected to the server , I now can move forward on server replication. I thank those that helped me out through this frustrating times with this. I look forward in pushing forward in the project, im excited and loving the experience.

Good job for figuring it out :slight_smile: Did you tried connecting from external ips to your public ip?

if you go to package settings under plugins, you will see the slate remote , and the udp messaging. you will need to configure this to your actual ip that will be listening on this port 7777 , I have kept the slate ports default , and placed my ip of the local machine, and on the udp messaging , I changed the top one this is the main one . you can go to whatismyip.com to acquire your ip, and place in this spot , you will need to repackage the content for client, and then server. and woola.

Make sure you open all 3 ports 41766 , 41765, and 7777, I opend the multicast endpoint, which I left it 230.0.0.1:6666 since the unicast endpoint was the one I configured for endpoint

@AcT-Cyrus I’m going to toot my own horn and dishonor your “no links” request. Have you gone through my step by step guides for building and running a standalone dedicated server?

  1. piinecone — Building a dedicated server in Unreal Engine 4
  2. piinecone — Building and deploying a UE4 dedicated server for...
  3. Wiki version: A new, community-hosted Unreal Engine Wiki - Announcements - Unreal Engine Forums

The UnrealFrontend changed a little in 4.5.1 (if I recall correctly), and I haven’t found it necessary to cook content that way since. What I do now is essentially:

  1. Package project for Win64 to desktop destination
  2. In Visual Studio, build for Development Server / Win64 (or Linux, whatever)
  3. Move server binary from MyGame’s Binaries to the same relative location in the desktop-packaged directory

I’m paraphrasing those steps because they’re covered in detail within the articles, but I did want to point out that you shouldn’t have to cook with UnrealFrontend; packaging the game from the editor should be enough.

I hope that helps. Let me know if you have any problems, or if any of the steps are unclear.

Can you paste the error here? Is it in the server log? Have you tried with a template project? If you follow these steps with a template project you’ll be able to play on a dedicated server.

I have noticed that things are different in the standalone dedicated server vs. PIE, so part of my dev iteration includes deploying the dedicated server and testing against it. There will be warnings, errors, and behaviors I haven’t seen in PIE that need remedying.

I’m curious if some of your game’s content wasn’t cooked / isn’t available to the server. I assume it is available to the client – are you seeing things correctly before connecting to your dedicated server instance?

This works for me, but when i connect a client to the dedicated server i see my crosshair and mainly black. On the log window it says GetSocketByName(): No SkeletalMesh for CharacterMesh0, but i’m not sure if that’s the reason.

Sometimes i glimpse for 10 ms the camera in the right place, but then it goes straight into black. When i use WASD the character moves, i can tell this because i hear the footsteps and a triangle (that should be part of the character mesh) going in the direction i heading. I added a screenshot with the client running. When i close it, it shows the following log on the console:

[2014.12.02-15.26.08:892][ 16]LogPlayerController:Warning: Calling IsLocalController() while Player is NULL is undefined!
[2014.12.02-15.26.08:899][ 16]LogPlayerController:Warning: Calling IsLocalController() while Player is NULL is undefined!

I solved the GetSocketName problem, but it’s still showing black.

I’ve fixed the problem, it was the Server Default Map set to Entry instead of my Example_Map. The only thing that is not working properly are the fonts on the text render. It justs shows squares, on the editor it was fine.