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!

How to Configure RunUO for Linux

RavonTUS

Sorceror
How to Configure RunUO for Linux

Greetings,

I had someone ask me, "How do I put all this stuff together and make RunUO run on Linux." I said, "It's all in the forums." and then I searched for it. Uh, I really could find one page that said how to do it. :(

So here it is...

Intall Linux - I am a kubuntu 7.10 junky so that's the one I suggest (BSD is not Linux, but you can try).
Install Mono v1.2.6 or better - I used the one from there web page "Other Linuxes"
Install Wine 0.9.46 or better
Install UO ML (install on the server using Wine)

Download RunUO v2 RC2 or SVN282 (or better)
Download the latest little fixes form RunUO Forge (here)

Now let the fun begin...


Copy the RunUO Forge files over the RC2/SVN files.
Type the following command to compile the server...

gmcs -out:../runuo.exe -d:MONO -optimize+ -unsafe -r:System,System.Configuration.Install,System.Data,
System.Drawing,System.EnterpriseServices,System.Management, System.Security,System.ServiceProcess,System.Web, System.Web.Services,System.Windows.Forms,System.Xml -nowarn:219 -recurse:*.cs

Then type "mono runuo.exe"

If things go well, the server should start to compile and finally ask you to create an admin account.

Note: Do not add your custom scripts or world saves till you get to this point. Then only add them in small amounts.

Note: If you have problems, you can run either Mono or RunUO in DEBUG mode by typing in one of the following...

mono -debug runuo.exe <-- this helps find mono issues
mono runuo.exe -debug <-- this helps find RunUO issues

Oh, BTW, I do have this up and running on my test server. So, it is really possible. :)

-Ravon

UPDATE 23JUL2008: Since RunUOForge is down, please try and use the attached file. Unfortunately, I do not know if it will work with Mono 1.9.x.
UPDATE 24JUL2008: kubuntu 8.04 has Mono 1.2.6 in the repository. Choose the following - mono-runtime, mono-gmcs, libmono-microsoft-build2.0-cil and libmono-microsoft8.0-cil.
 

Attachments

  • RunUO-Linux-25JAN2008.zip
    25.9 KB · Views: 305
  • RunUO-Linux-07FEB2008.zip
    25.9 KB · Views: 492

RavonTUS

Sorceror
Greetings,

Not sure if Mono 1.9 will work. I have not tested it yet. I am waiting till Ubuntu 8.04 is released before I re-test everything.

Here is how to get the SVN.

Yes, the Shell-Command only one single very long line.

-Ravon
 

GhostRiderGrey

Sorceror
Ravon, thanks for the excellent guide. I'm new to both linux (ubuntu) and RunUO. I have gotten to the part about compiling the server, received the following error, and don't have a clue about how to start troubleshooting it.

gca@gca-server:~$ sudo gmcs -out:../runuo.exe -d:MONO -optimize+ -unsafe -r:System,System.Configuration.Install,System.Data,System.Drawing,System.EnterpriseServices,System.Management,System.Security,System.ServiceProcess,System.Web,System.Web.Services,System.Windows.Forms,System.Xml -nowarn:219 -recurse:*.cs
error CS0006: cannot find metadata file `System.Windows.Forms'
Compilation failed: 1 error(s), 0 warnings


Could you possibly shed some light on how to fix this? Thanks!!

[EDIT] Didn't have all the components I needed for mono. Mono install wasn't intact. See post below for resolution.
 

GhostRiderGrey

Sorceror
Well, this has been quite the learning experience. I am now on my 4th wipe and reinstall of Ubuntu (Gutsy 7.10 i386). As it turns out, Gutsy comes with a version of Mono installed (1.2.4). The default respositories do not have any updates for this. I found instructions on the web for ways to uninstall it and install 1.2.6 (and also to install a parallel copy of 1.2.6), but these proved to be unsatisfactory and, in the end, just made a mess of things.

What I finally ended up doing (after a fresh Gutsy Install) was adding the following to my /etc/apt/sources.list
Code:
deb http://debian.meebey.net/etch-backports /
Once I had done this, udates to Mono 1.2.6 became available in Synaptic (you could also use apt-get). I also installed Monodevelop at the same time.

At this point, I have the following installed and running well: Ubuntu 7.10, Mono 1.2.6, Wine 0.9.58, UO ML (updated to 5.0.6a).

I have downloaded RunUO RC2 and the Forge patches, and copied the RunUO Forge files over the RC2 files.

Now I attempt to compile the RunUO server, and end up with 1260 errors :eek: I must be doing something wrong, and in that vein, have a few install questions:

1. Do the RunUO RC2 files (the ones I downloaded) need to pe put in a particular location? i.e. in the Wine C_Drive, in the root, in the home folder, or can they be anywhere?

2. When you execute the shell command in terminal, where do you need to be located? I mean, do you need to navigate in terminal to the folder with the RunUO files before execution?

3. Where do the compiled files end up? Back in the RunUO RC2 folder?

4. In your shell line, it looks you have a space in "System.Ma nagement" and "System.Xm l" Are these spaces supposed to be there?

Thanks for the help!!
GhostRiderGrey [Linux newbie, RunUO newbie]
 

RavonTUS

Sorceror
GhostRiderGrey;750226 said:
1. Do the RunUO RC2 files (the ones I downloaded) need to Be put in a particular location? i.e. in the Wine C_Drive, in the root, in the home folder, or can they be anywhere?

Anywhere. I usually leave them in a folder in my HOME folder.

2. When you execute the shell command in terminal, where do you need to be located? I mean, do you need to navigate in terminal to the folder with the RunUO files before execution?
To compile you need to be in the SERVER folder (how you get there does not matter).

3. Where do the compiled files end up? Back in the RunUO RC2 folder?
Yes, look for the runuo.exe file. Remember to do "mono runuo.exe" to start the program.

NOTE: You can also use "mono --debug runuo.exe" to debug mono or "mono runuo.exe -debug" to debug runuo.exe

4. In your shell line, it looks you have a space in "System.Ma nagement" and "System.Xm l" Are these spaces supposed to be there?

No, System.Management and System.Xml do not have spaces.

-Ravon
 

GhostRiderGrey

Sorceror
Ravon, Thanks for the quick response. I just tried to compile again and now have 1290 errors (soo many that they scroll up out of the terminal window and I cant see them all). Here is a sampling:
Code:
./Scripts/Spells/Third/Unlock.cs(29,48): error CS0246: The type or namespace name `Target' could not be found. Are you missing a using directive or an assembly reference?
./Scripts/Spells/Third/WallOfStone.cs(91,46): error CS0246: The type or namespace name `Item' could not be found. Are you missing a using directive or an assembly reference?
./Scripts/Spells/Third/WallOfStone.cs(171,55): error CS0246: The type or namespace name `Timer' could not be found. Are you missing a using directive or an assembly reference?
./Scripts/Spells/Third/WallOfStone.cs(188,48): error CS0118: `Server.Spells.Third.WallOfStoneSpell.Target' is a `method' but a `type' was expected
./Scripts/Targets/BladedItemTarget.cs(12,41): error CS0246: The type or namespace name `Target' could not be found. Are you missing a using directive or an assembly reference?
./Scripts/Targets/MoveTarget.cs(9,35): error CS0246: The type or namespace name `Target' could not be found. Are you missing a using directive or an assembly reference?
./Scripts/Targets/PickMoveTarget.cs(9,39): error CS0246: The type or namespace name `Target' could not be found. Are you missing a using directive or an assembly reference?
./Server/Serialization.cs(76,52): error CS0246: The type or namespace name `Item' could not be found. Are you missing a using directive or an assembly reference?
./Server/Serialization.cs(138,62): error CS0246: The type or namespace name `Item' could not be found. Are you missing a using directive or an assembly reference?
Compilation failed: 1290 error(s), 0 warnings

Lots of CS0246 and CS0118 errors. Can you provide insight as to how to troubleshoot at this point?

Thanks!!
 

RavonTUS

Sorceror
GhostRiderGrey;750252 said:
Lots of CS0246 and CS0118 errors. Can you provide insight as to how to troubleshoot at this point?

My quick guess would be that you are in the RunUO folder not in the actually SERVER folder. Go one more folder "cd server" then compile.

-Ravon
 

GhostRiderGrey

Sorceror
Yes, my mistake, missed the instruction to move to the Server folder within the RunUO-2.0-RC folder. Have done that and compiled with the following errors (at least its 3 now instead of 1290 :) )
Code:
gca@gca-desktop:~/RunUO-2.0-RC2/Server$ gmcs -out:../runuo.exe -d:MONO -optimize+ -unsafe -r:System,System.Configuration.Install,System.Data,System.Drawing,System.EnterpriseServices,System.Management,System.Security,System.ServiceProcess,System.Web,System.Web.Services,System.Windows.Forms,System.Xml -nowarn:219 -recurse:*.cs
./Serialization.cs(33,14): error CS0234: The type or namespace name `Guilds' does not exist in the namespace `Server'. Are you missing an assembly reference?
./Serialization.cs(33,1): error CS0246: The type or namespace name `Server.Guilds' could not be found. Are you missing a using directive or an assembly reference?
./Serialization.cs(138,62): error CS0246: The type or namespace name `Item' could not be found. Are you missing a using directive or an assembly reference?
Compilation failed: 3 error(s), 0 warnings

Ideas? The only item in the Server folder is the serialization.cs file
Could I be missing a part of mono or monodevelop?
Do you need to be sudo when you compile?
The initial instructions were to "copy the RunUO Forge files over the RC2/SVN files" -- This was meant to replace the exisiting files, not merge with them, correct?

Thanks for all the help, Ghostridergrey
 

GhostRiderGrey

Sorceror
*Bangs head against desk, 'cause it shouldn't be this difficult*

I can't use "mono --debug runuo.exe" to debug, because mono says "Cannot open assembly runuo.exe"

Ravon, my setup looks to be almost identical to yours, so I don't understand why this is not compiling?? Could you please point me in the right direction? Is there something I can read that would explain how to fix this? I'm happy to learn, but don't know where those resources are to start.

Thanks,
GhostRiderGrey
 

Deraj_88

Sorceror
it seems the runuo forge site is being worked on.
can anyone toss me the fixes perhaps?

gracias n.n


*GhostRiderGrey has offerd to email me the files no worrys.
 

GhostRiderGrey

Sorceror
OK, making some headway. I have abandoned the RC2 files, and have instead grabbed the SVN 295 files. Turns out there were alot of things missing in the RC2 package that were included in the SVN. For those who want to know what I did to get the svn:

Create a folder within your Home folder, cd to that folder, then from terminal:
Code:
svn co http://svn.runuo.com/repos/runuo/devel/

Cut and paste Ravon's Linux files to the devel folder, also copy the zlib files from RC2.

Go to server folder (within devel folder) and compile with Ravon's long string.

Fix datapath.cs in scripts/misc with proper datapath of your UOML install.

Run server with “mono runuo.exe”

I have now been able to compile and start my server!! :D Next I'll have to figure out why, when I connect with the UO client and begin to move a character around, does it cause the server to crash. :eek:
 

GhostRiderGrey

Sorceror
Finally got the server to compile and run :rolleyes: but was crashing as soon as I tried to type anything. Crashes were related to libz,

Code:
Error:
System.DllNotFoundException: libz

and some forum searching revealed the following fixes:

Changes in mono config (located at /etc/mono/config):

Code:
<dllmap dll="libz.so" target="libz.so.1" />
<dllmap dll="zlib32" target="libz.so" os="!windows" />
<dllmap dll="zlib32.dll" target="libz.so" os="!windows" />

This alone did not fix it, so I also ran the following to make link to the libz file:

Code:
sudo ln -s /usr/lib/libz.so.1 /usr/lib/libz.so

These fixed my crashing issues, but my character would still get stuck in the environment (fall through the floor). Turns out my client was at 5.0.6 and I need to be at 6.0.2.0 or higher.

Now for some script additions!! :D

Question: What is the latest version of the client I can use? 6.0.6.1??

Thanks!!
-GhostRiderGrey
 
Top