Host a dedicated server and play on the same machine...

From Oldunreal-Wiki
Jump to: navigation, search

Play and host dedicated server from same machine

What is the problem? Listening servers tend to crash MUCH more often, mostly not because of a server crash, but of a client crash - like a graphics problem. But... with a listening server the server IS the client, too, so when one crashes, the other inevitably goes down too. Other problems with listening servers are:

   you have to stay in the game for the server to continue operation
   less security (admining, cheaters...)
   you can't just change between spectator and player...

Now, some people start a dedicated server on their localhost. Then they start Unreal again and join their own server locally. Basically, this works but usually will cause extreme lag to all players connected from the internet and - ironically - also to the localhost client! It can be more ugly than packet loss, and THAT means something!

Solve: The trick is simple... The client takes so much CPU power away with all the graphics and sounds and all the other ("needless") shit so that the server comes short of power and cannot process the important network data in time. All you have to do is give the server process higher priority.

Once your server process is preferred, lag will decrease greatly for all players. You will still encounter some odd things from time to time and playing from the same machine where your dedicated server is on will NEVER be as good as using 2 different machines for server/client, but this is the best you will ever get if you do it!

The basic method is: Start your server first, then give it a better priority, then join it. Now we assume your server is running, now how do we give it a better priority?

On NT based and similar systems (NT, w2k, XP...) just open your task-manager (right-click in task bar area, select "task manager"). Forget about the "running programs" sheet, head over to "Processes". This will show all major running tasks. One line should read "Unreal" or "Unreal.exe" (that's your server). Right click on it and you should find a menu with something like "task-priority". If you move the mouse over it another side menu will pop up showing possible task priorities ranging from "low" to "realtime". Default is "normal", now select a priority which is 1 step higher than that, it should be "above normal". Winblows will ask if you are sure about this - damn yes we are. Done... now join :)

Win 95/98 - ouch! Actually I would never recommend Win9X as a server, but what the heck, for playing those versions are quite good so what... If you open the task-manager of these Winblows versions, you will NOT find a process sheet where you can change the priorities. Damn what a crap! Good news... someone has made a program just for Win98/98 and called it "Another Task Manager" - short "ATM" and that's just what you always needed. All you have to do is, download ATM, unzip it and run - no installation required! When the window opens, you will see all(!) running tasks. Let's forget about all the features ATM has to offer (LOTS) - just find "UNREAL.EXE" in the column "Exe file" (3rd from left), highlight it and move the slider in the lower center (which shows NORMAL at first) one step right so it is HIGH. Done...

Where the hell do I get ATM from?? Right here: download ATM (Win9x only, 56kb). It is freeware and you are allowed to distribute the zipfile anywhere you want.

What about Winblows-ME (or any other version not mentioned here)? No idea! IMPORTANT NOTE: Usually you will exit your client engine first, then the server. Any changes done in your (client) preferences will therefor be LOST when the server quits (or when it changes maps), because whenever Unreal quits (or changes maps...), User.ini and Unreal.ini are overwritten again, and the server is likely the last engine to quit (...) so that's the one which overwrites those 2 config files in the end. So if you have to fiddle around your own gaming configuration, don't do it while your own server runs!

Also, normally Winblows won't remember that you changed the priority, so once you quit the server and start it again at another time, you will have to set the priority AGAIN. XP and NT have some function to store the process priority change but I'm not quite sure... I believe on XP you can just create a shortcut and do the setting via "Properties, Advanced" while with NT you will have to mess with the command line starting up your server - don't know though :/