RunUO Community

This is a sample guest message. Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

Starting your own Server

Ok so i have been working on my own server for quite a while now, while i am no computer genious i have found quite a few outdated links. So now that i have got my server up and going i would like to post the links you need to get it up and going.

1st) To download UO
http://download.cnet.com/Ultima-Online-Mondain-s-Legacy-client/3000-7540_4-10432237.html
2nd) To download RAZOR
http://www.runuo.com/razor/download.php
3rd) To download RUNUO + NERUNS DISTRO
http://code.google.com/p/runuo-nerun-distro/downloads/detail?name=RunUO-2.2 + Rev.96.7z&can=2&q=
4th) To download 7-zip (if needed this is to unzip)
http://www.7-zip.org/
5th) To get your IP
http://www.whatsmyip.us/

From Here you have everything you need for a private server. If you want to make it public it will take some more work, now as far as i know, all i had to do, whas go to into Scripts, Misc, then serverlist.cs(i used notpad to open and edit), then you just look for this(highlighted in red)

using System;
using System.IO;
using System.Net;
using System.Net.NetworkInformation;
using System.Net.Sockets;
using Server;
using Server.Network;
namespace Server.Misc
{
public class ServerList
{
/*
* The default setting for Address, a value of 'null', will use your local IP address. If all of your local IP addresses
* are private network addresses and AutoDetect is 'true' then RunUO will attempt to discover your public IP address
* for you automatically.
*
* If you do not plan on allowing clients outside of your LAN to connect, you can set AutoDetect to 'false' and leave
* Address set to 'null'.
*
* If your public IP address cannot be determined, you must change the value of Address to your public IP address
* manually to allow clients outside of your LAN to connect to your server. Address can be either an IP address or
* a hostname that will be resolved when RunUO starts.
*
* If you want players outside your LAN to be able to connect to your server and you are behind a router, you must also
* forward TCP port 2593 to your private IP address. The procedure for doing this varies by manufacturer but generally
* involves configuration of the router through your web browser.
*
* ServerList will direct connecting clients depending on both the address they are connecting from and the address and
* port they are connecting to. If it is determined that both ends of a connection are private IP addresses, ServerList
* will direct the client to the local private IP address. If a client is connecting to a local public IP address, they
* will be directed to whichever address and port they initially connected to. This allows multihomed servers to function
* properly and fully supports listening on multiple ports. If a client with a public IP address is connecting to a
* locally private address, the server will direct the client to either the AutoDetected IP address or the manually entered
* IP address or hostname, whichever is applicable. Loopback clients will be directed to loopback.
*
* If you would like to listen on additional ports (i.e. 22, 23, 80, for clients behind highly restrictive egress
* firewalls) or specific IP adddresses you can do so by modifying the file SocketOptions.cs found in this directory.
*/
public static readonly string Address = null;
public static readonly string ServerName = null;
public static readonly bool AutoDetect = true;
public static void Initialize()
{
if ( Address == null ) {
if ( AutoDetect )
AutoDetection();

AND CHANGE IT the first null should be your IP address in hiphens "127.0.0.123" thats an example the next red null should be changed to the name you want your shard in hiphens "example MY TEST SHARD" so it would look like this

using System;
using System.IO;
using System.Net;
using System.Net.NetworkInformation;
using System.Net.Sockets;
using Server;
using Server.Network;
namespace Server.Misc
{
public class ServerList
{
/*
* The default setting for Address, a value of 'null', will use your local IP address. If all of your local IP addresses
* are private network addresses and AutoDetect is 'true' then RunUO will attempt to discover your public IP address
* for you automatically.
*
* If you do not plan on allowing clients outside of your LAN to connect, you can set AutoDetect to 'false' and leave
* Address set to 'null'.
*
* If your public IP address cannot be determined, you must change the value of Address to your public IP address
* manually to allow clients outside of your LAN to connect to your server. Address can be either an IP address or
* a hostname that will be resolved when RunUO starts.
*
* If you want players outside your LAN to be able to connect to your server and you are behind a router, you must also
* forward TCP port 2593 to your private IP address. The procedure for doing this varies by manufacturer but generally
* involves configuration of the router through your web browser.
*
* ServerList will direct connecting clients depending on both the address they are connecting from and the address and
* port they are connecting to. If it is determined that both ends of a connection are private IP addresses, ServerList
* will direct the client to the local private IP address. If a client is connecting to a local public IP address, they
* will be directed to whichever address and port they initially connected to. This allows multihomed servers to function
* properly and fully supports listening on multiple ports. If a client with a public IP address is connecting to a
* locally private address, the server will direct the client to either the AutoDetected IP address or the manually entered
* IP address or hostname, whichever is applicable. Loopback clients will be directed to loopback.
*
* If you would like to listen on additional ports (i.e. 22, 23, 80, for clients behind highly restrictive egress
* firewalls) or specific IP adddresses you can do so by modifying the file SocketOptions.cs found in this directory.
*/
public static readonly string Address = "127.0.0.123";
public static readonly string ServerName = "MY TEST SHARD";
public static readonly bool AutoDetect = true;
public static void Initialize()
{
if ( Address == null ) {
if ( AutoDetect )
AutoDetection();

That would make it public you just save the file, and boot up your run uo, now this works if you have a static Ip address if its dynamic it will take quite abit more work, but i just wanted to get the links up thanks and i hope this helps!!!!:)
 

AlphaDragon

Sorceror
Also to help with scripts, cause I had issues with editing and moding them you may want to use "SharpDevelop", it helps with keeping the alignment and { in place. Its a LOT better then useing a text editor. Here is a link just in case:

http://sharpdevelop.net/opensource/sd/

Just a note: I havn't learned all the features of it, but to edit and look at scripts its great.

And to author of post: Dont meen to add on to it, but I thought it would help.
 
no dont be sorry bro I want to help people, and sometimes just trying to add in script is a pain in the butt thanks i will have to check that out myself!
 

Rokzum

Wanderer
I tried following your steps but when i try to login it just says "unable to connect to UO" I'm really just trying to set up a shard where my stepkids can play with max skills and play around with Dungeons and Houses =)
 
when you open razor were it says demise and all that good stuff type in 127.0.0.1 and in the port box type 2593 then it should let u log in, when you opend your server it should have asked you to make an admin account that will log you into your admin account, it might let you make more accounts logging in that way it might not, if it dosent, then you will have to type in razor again in the same spots were u typed 127.0.0.1 instead type your ip address and in the 2593 spot leave 2593 if you have anymore problems ill see what i can do thanks.
 

Iraq-

Sorceror
You just need to go to Scripts/Misc/ServerList.cs and find:
Code:
public static readonly string Address = null;
and replace it with
Code:
public static readonly string Address = "xxx.xxx.xxx.xxx";

where xxx.xxx.xxx.xxx is the IP Adress from http://www.whatsmyip.org/
Be sure to use the Quotes.

Also, if you are behind a router, you will need to forward port 2593 to send to your computers IP. (such IP might look like this 192.168.2.4)

Be sure RunUO isn't blocked by a firewall.

Now your server is ready.

The IP Adress for other people to connect to your server is the one from http://www.whatsmyip.org/
 

Pure Insanity

Sorceror
You don't have to put your IP there. As it will get it for you if you leave it null. If you don't believe me, look at the rest of that file. =P
 

tass23

Page
Pure Insanity said:
You don't have to put your IP there. As it will get it for you if you leave it null. If you don't believe me, look at the rest of that file. =P
I noticed a problem with this when Ryan was migrating the servers a few months back and RunUO was going offline for several hours really late at night. There's this line in Serverlist.cs:
Code:
WebRequest req = HttpWebRequest.Create( "[URL]http://www.runuo.com/ip.php[/URL]" );
That's what gets your public IP, the problem is though, if RunUO servers are down, you can't get your public IP, so uses local connections only. No one from outside the LAN could login to your server.
 

Grap3Soda

Wanderer
ok all of you seem to forget.... you also have to do port forwarding otherwise no one can connect to your shard.....i dont know how to port forward but im teaching myself
 

Varkasal

Sorceror
Port forwarding is a pain in the $%&*@ and it depends on your router there are pleanty of how toos in the server support on windows section
 

Iraq-

Sorceror
ok all of you seem to forget.... you also have to do port forwarding otherwise no one can connect to your shard.....i dont know how to port forward but im teaching myself

No, we didn't forget anything. You didn't read what we wrote:
Also, if you are behind a router, you will need to forward port 2593 to send to your computers IP. (such IP might look like this 192.168.2.4)
 

Teagan

Sorceror
Code:
        public static readonly string Address = "173.224.205.7";
        public static readonly string ServerName = "Playground";

        public static readonly bool AutoDetect = true;

        public static void Initialize()
        {
            if ( Address == null ) {
                if ( AutoDetect )
                    AutoDetection();
            }
            else {
                Resolve( Address, out m_PublicAddress );
            }

            EventSink.ServerList += new ServerListEventHandler( EventSink_ServerList );
        }

        private static IPAddress m_PublicAddress;

        private static void EventSink_ServerList( ServerListEventArgs e )
        {
            try
            {
                NetState ns = e.State;
                Socket s = ns.Socket;

                IPEndPoint ipep = (IPEndPoint)s.LocalEndPoint;

                IPAddress localAddress = ipep.Address;
                int localPort = ipep.Port;

                if ( IsPrivateNetwork( localAddress ) ) {
                    ipep = (IPEndPoint)s.RemoteEndPoint;
                    if ( !IsPrivateNetwork( ipep.Address ) && m_PublicAddress != null )
                        localAddress = m_PublicAddress;
                }

This annoying the crap out of me. Port 2593 is open and active on the router for both TCP and UDP, private address is 192.168.2.254 : 2593
Friends outside my network still cannot connect. I tried with the address as "null", private static readonly bool autodetect as true and false, and with actual IP.

Am I missing something here?
RUO 2.0 Final Repack.
 

Teagan

Sorceror
2593 is open and can be accessed.
Just saw a friend tried to connect to the shard when I was away, looks like he got hung up.
 
Top