Tutorial For Ubuntu 14.04 LTS + ServUO For Linux Ver. 2.0

Status
Not open for further replies.

john burns

Citizen
This is Version 2.0 of getting ServUO on Linux. This time, instead of from memory, I actually did it and wrote it down as I did it. THIS VERSION should get you up and running with a ServUO on Linux without any problem. Unlike the first version to this, I think I added or forgot a step or two that was needed.

Here is Version 2. I only edited where you needed to download and install the right files you needed.

**********************************************************************************

I would to thank the community for all their help with getting my Linux ServUO server and shard up and running. Thanks everyone for putting up with my million posts that was stacked on top of one another which irritated some people but forgave me.

I thought after my success I should write a tutorial about how I did it for other people who may be interested. I needed to write this tutorial after I screwed some settings on my Linux L.A.M.P server that dealt with Apache. I was able to do this at one time, I can do it again.

Some of the programs that I use to accomplish this goal are:
  1. For SSH I use FireSSH which you can find under addons for Mozilla Firefox, which allows for cutting and pasting.

  2. To edit all of the files on the server, I use vi <filename> which is already installed with the server. I have found you don’t need anything more than that.

  3. Tmux is used to run the server even while I log off. I like it because I found it to be the most stable one out there. I tried using screen, but it killed the server session after twelve hours of operation. I was not happy.
I did quite a bit of research on different pages on ServUO.com and RunUO.com to get this going because I could not find a single tutorial that actually worked for me.

You may get some errors, I would recommend researching them on ServUO.com. The community there are knowledgeable, friendly, and a great bunch of people. I didn’t have any, that’s why I didn’t list them and add the solutions because mine was working from before and all I did was copy it on a usb stick as a back-up copy and re-installed it on the refreshed server.

I am assuming that you have Ubuntu 14.04 LTS installed with SSH.

a. If you would like, you may also install L.A.M.P., ftp, DNS Server, and PostGreSQL.

Search Google on how to install it but to save you time I have listed one for you----
http://ubuntuserverguide.com/2014/04/how-to-install-ubuntu-server-14-04-trusty-tahr.html

1. use your SSH software to log into your server.
a. Some people use a personal computer in their home, with a keyboard and
monitor and log on directly. However you would like to do it, it does not matter.

2. Get root access by typing sudo su and enter your password.

3. Sudo apt-get update

4. sudo apt-get install mono-complete subversion

5. sudo apt-get install monodevelop

6. sudo apt-get install zlibc zlib1g zlib1g-dev

7. Compile ServUO with the following code:
mcs -sdk:4.5 -out:ServUO.exe -d:MONO -d:Framework_4_0 -d:ServUO -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,OpenUO.Core.dll,OpenUO.Ultima.dll,OpenUO.Ultima.Windows.Forms.dll,SevenZipSharp.dll -nowarn:219 -recurse:Server/*.cs
a. If you get any warnings during the compiling stage, IGNORE THEM,
they do no damage to the server.

8. * * * VERY IMPORTANT * * *
A. YOU MUST BE SIGNED IN AS THE ROOT USER OF YOUR SERVER, NOT A USER
1. type sudo su to get root access (if you have not already)
2. type chmod 777 /path/to/your/server's/save/folder
a. so your server can write the saves, if you don't, it will crash the server.
b. Trust me, took me an hour before I realized what was wrong.
3. mono ServUO.exe

9. Enjoy and have fun.
 

septor

Citizen
I realize this thread is nearly 4 months old but I'm hoping someone can help.

These are the steps I took to get where I am, and the error that is being thrown. I'm not sure what I'm doing wrong!

I created a VPS on Digital Ocean, Ubuntu 14.04 LTS. If the specs are important let me know.

Presteps: I uploaded all the ServUO files to /var/servuo and modified the paths to the client files in the respective files (DataPath.cs and OpenUOSDK.cs).

Logged into the terminal remotely with Putty and issued the following commands:

Code:
sudo apt-get update
sudo apt-get install mono-complete
sudo apt-get install monodevelop
sudo apt-get install zlibc zlib1g zlib1g-dev
sudo apt-get upgrade
cd /var/servuo
(issued the command in step 7 above)

Everything compiled just fine (save the warnings, but I overlooked them as instructed).

I then issued the mono ServUO.exe command and this was the outcome:

Code:
[email protected]:/var/servuo# mono ServUO.exe
----------------------------------------------------------------------------
ServUO - [http://www.servuo.com] Version 0.5, Build 5559.37149
Publish
Core: Optimizing for 1 64-bit processor
Core: Unix environment detected
RandomImpl: SimpleRandom (Software)
Scripts: Compiling C# scripts...Error:
System.Exception: Compiler failed to produce the assembly. Output: ''
  at Mono.CSharp.CSharpCodeCompiler.CompileFromFileBatch (System.CodeDom.Compiler.CompilerParameters options, System.String[] fileNames) [0x00000] in <filename unknown>:0
  at Mono.CSharp.CSharpCodeCompiler.CompileAssemblyFromFileBatch (System.CodeDom.Compiler.CompilerParameters options, System.String[] fileNames) [0x00000] in <filename unknown>:0
  at System.CodeDom.Compiler.CodeDomProvider.CompileAssemblyFromFile (System.CodeDom.Compiler.CompilerParameters options, System.String[] fileNames) [0x00000] in <filename unknown>:0
  at Server.ScriptCompiler.CompileCSScripts (Boolean debug, Boolean cache, System.Reflection.Assembly& assembly) [0x00000] in <filename unknown>:0
  at Server.ScriptCompiler.Compile (Boolean debug, Boolean cache) [0x00000] in <filename unknown>:0
  at Server.Core.Main (System.String[] args) [0x00000] in <filename unknown>:0
This exception is fatal, press return to exit

Any ideas?
 

Regnak

Citizen
Maybe permissions to folder /var/servuo ?

Shouldn't you do a CHOWN and set your user as owner of the folder ?

Just a guess, though

Edit : or CHMOD the saves folder to 777 like in the guide ?
 

septor

Citizen
All permissions are set correctly.

I'm not sure about the saves folder as I can't locate one. Does it need to be manually created? If so, where?

Could it be an issue with incorrect client files in the respective directory?
 

septor

Citizen
Nope, same error!

I've even tried CHMODing the entire /var/servuo directory to 777. I've also created Saves and Backups/Automatic and CHMOD'd those to 777 as well.

I am literally at a loss.

edit: I'm going to try deleting all the files and pulling the directly from the Github repo. I'll report back!

edit 2: Nope, same problem. I even attempted all this as root, to rule out permission errors this time. I got RunUO to compile and run just fine, but it kept crashing when I used Nerun's Distro, so I thought maybe since ServUO is actively developed I wouldn't have any issues!

Awaiting for more ideas. I'll keep tinkering around and see if I can get anywhere!
 
Last edited:

septor

Citizen
Small update before I head to work:

I went ahead and put the ServUO files in /home/septor and tried compiling ServUO like that. It compiled fine (save the warnings), except now I get this when I try and run the server:

Code:
[email protected]:~/ServUO$ mono ServUO.exe
----------------------------------------------------------------------------
ServUO - [http://www.servuo.com] Version 0.5, Build 5561.20368
Publish
Core: Optimizing for 1 64-bit processor
Core: Unix environment detected
RandomImpl: SimpleRandom (Software)
Scripts: Compiling C# scripts...ScriptCompiler: : Error: Garbage collector could not allocate 65536 bytes of memory for major heap section.
Finished with: 0 errors, 0 warnings
Scripts: One or more scripts failed to compile or no script files were found.
- Press return to exit, or R to try again.

Any tips or ideas?

edit: I CHMOD'd the Scripts folder and got this:

Code:
Scripts: Compiling C# scripts...ScriptCompiler: : Error: Garbage collector could not allocate 65536 bytes of memory for major heap section.
Failed with: 1 errors, 0 warnings
Errors:
 + Gumps/Properties/PropsGump.cs:
    CS0584: Line 433: Internal compiler error: Unexpected error when loading type `System.Linq.Enumerable'
    CS0584: Line 506: Internal compiler error: Unexpected error when loading type `System.Linq.ParallelEnumerable'
Scripts: One or more scripts failed to compile or no script files were found.
 - Press return to exit, or R to try again.

I feel like I'm close. Now I have to go to work and will probably lose all momentum! Stupid bills!
 

septor

Citizen
I don't see a place to define the Scripts folder in OpenUOSDK.cs, and I don't see a server.cs file anywhere.
 

septor

Citizen
Yep, I'm taking a break. I can't get ServUO to work, or RunUO to generate anything without crashing. It has to be my VPS set up, because I can get both to compile and run perfectly fine on my Windows PC. I guess Linux, myself, and UO are not meant to be friends.

Here's the VPS specs, maybe this could be the problem.
  • Ubuntu 14.04 x64
  • 512MB Memory
  • 1 Core Processor
  • 20GB SSD Disk
If anyone has any ideas I'm open!
 

john burns

Citizen
when I wrote this, it was on a brand new version of Ubuntu 14.04LTS with no gui. everything I did is on that list. you must have missed a step or something.
 

septor

Citizen
That is entirely possible! Tonight I'll start fresh and log everything I do/change/upload and post it here. Maybe I am missing a step and not realizing it, or forgetting to edit a file or something.

Thanks for your suggestions/help so far, it's extremely appreciated!
 

septor

Citizen
Well, again I was met with the same error; here's my adventure:

1) Created a fresh VPS running Ubuntu 14.04 x64
2) Ran the following commands on the VPS terminal, in this exact order:

Code:
adduser septor
visudo (gave septor the root permissions)
su septor
cd
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install mono-complete git (NOTE - I replaced subversion with git because I'm not using subversion to get the files, I'm using git)
sudo apt-get install monodevelop
sudo apt-get install zlibc zlib1g zlib1g-dev

3) Forked the ServUO Github repo, made the following adjustments and committed them to the forked repo: https://github.com/septor/ServUO/commit/798368157fb66f6c2decf1361dddcff045d3e00b

4) Issued the following commands in the VPS terminal:

Code:
git clone https://github.com/septor/ServUO.git
sudo mkdir /var/uodata
sudo chmod -R 777 /home/septor/ServUO
sudo chmod -R 777 /var/uodata

5) Uploaded the following client files to /var/uodata:

Code:
map0LegacyMUL.uop   multi.mul     staidx0.mul   statics0x.mul
map0xLegacyMUL.uop  stadif0.mul   staidx0x.mul  statics1.mul
map1LegacyMUL.uop   stadif1.mul   staidx1.mul   statics1x.mul
map1xLegacyMUL.uop  stadif2.mul   staidx1x.mul  statics2.mul
map2LegacyMUL.uop   stadifi0.mul  staidx2.mul   statics2x.mul
map2xLegacyMUL.uop  stadifi1.mul  staidx2x.mul  statics3.mul
map3LegacyMUL.uop   stadifi2.mul  staidx3.mul   statics4.mul
map4LegacyMUL.uop   stadifl0.mul  staidx4.mul   statics5.mul
map5LegacyMUL.uop   stadifl1.mul  staidx5.mul   tiledata.mul
multi.idx           stadifl2.mul  statics0.mul

6) Issued the following command in the terminal:

Code:
cd ServUO

7) Compiled ServUO.exe with the following command:
Code:
mcs -sdk:4.5 -out:ServUO.exe -d:MONO -d:Framework_4_0 -d:ServUO -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,OpenUO.Core.dll,OpenUO.Ultima.dll,OpenUO.Ultima.Windows.Forms.dll,SevenZipSharp.dll -nowarn:219 -recurse:Server/*.cs

Was met with the following, expected, message:

Code:
Server/TileMatrix.cs(442,36): warning CS0618: `System.IO.FileStream.Handle' is obsolete: `Use SafeFileHandle instead'
Server/TileMatrix.cs(529,31): warning CS0618: `System.IO.FileStream.Handle' is obsolete: `Use SafeFileHandle instead'
Server/TileMatrixPatch.cs(92,34): warning CS0618: `System.IO.FileStream.Handle' is obsolete: `Use SafeFileHandle instead'
Server/TileMatrixPatch.cs(166,35): warning CS0618: `System.IO.FileStream.Handle' is obsolete: `Use SafeFileHandle instead'
Server/Main.cs(44,28): warning CS0414: The private field `Server.Core._OpenUOSDK' is assigned but its value is never used
Server/TileMatrix.cs(36,15): warning CS0414: The private field `Server.TileMatrix.m_Width' is assigned but its value is never used
Server/TileMatrix.cs(36,24): warning CS0414: The private field `Server.TileMatrix.m_Height' is assigned but its value is never used
Server/Timer.cs(364,22): warning CS0414: The private field `Server.Timer.m_QueueCountAtSlice' is assigned but its value is never used
Server/Persistence/FileQueue.cs(224,34): warning CS0414: The private field `Server.FileQueue.Chunk.offset' is assigned but its value is never used
Compilation succeeded - 9 warning(s)

Typed 'mono ServUO.exe' to start the server and was met with the following:

Code:
[email protected]:~/ServUO$ mono ServUO.exe
----------------------------------------------------------------------------
ServUO - [http://www.servuo.com] Version 0.5, Build 5562.37358
Publish
Core: Optimizing for 1 64-bit processor
Core: Unix environment detected
RandomImpl: SimpleRandom (Software)
Scripts: Compiling C# scripts...ScriptCompiler: : Error: Garbage collector could not allocate 65536 bytes of memory for major heap section.
Finished with: 0 errors, 0 warnings
Scripts: One or more scripts failed to compile or no script files were found.
- Press return to exit, or R to try again.

I'm not sure what I'm missing or doing wrong, I followed your instructions to the letter.

edit: Additionally, I even swapped to root to see if that was the problem:

Code:
[email protected]:~/ServUO$ su root
Password:
[email protected]:/home/septor/ServUO# mono ServUO.exe
----------------------------------------------------------------------------
ServUO - [http://www.servuo.com] Version 0.5, Build 5562.37358
Publish
Core: Optimizing for 1 64-bit processor
Core: Unix environment detected
RandomImpl: SimpleRandom (Software)
Scripts: Compiling C# scripts...Error:
System.Exception: Compiler failed to produce the assembly. Output: ''
  at Mono.CSharp.CSharpCodeCompiler.CompileFromFileBatch (System.CodeDom.Compiler.CompilerParameters options, System.String[] fileNames) [0x00000] in <filename unknown>:0
  at Mono.CSharp.CSharpCodeCompiler.CompileAssemblyFromFileBatch (System.CodeDom.Compiler.CompilerParameters options, System.String[] fileNames) [0x00000] in <filename unknown>:0
  at System.CodeDom.Compiler.CodeDomProvider.CompileAssemblyFromFile (System.CodeDom.Compiler.CompilerParameters options, System.String[] fileNames) [0x00000] in <filename unknown>:0
  at Server.ScriptCompiler.CompileCSScripts (Boolean debug, Boolean cache, System.Reflection.Assembly& assembly) [0x00000] in <filename unknown>:0
  at Server.ScriptCompiler.Compile (Boolean debug, Boolean cache) [0x00000] in <filename unknown>:0
  at Server.Core.Main (System.String[] args) [0x00000] in <filename unknown>:0
This exception is fatal, press return to exit
 

septor

Citizen
I'm sure I'm missing something or doing something wrong, I just don't know what. I don't know enough about Mono or Linux to debug any of this unless it gives me something to work with.

I'd hazard a guess it can't read the files in the Scripts folder, but I don't know why. I just don't know!

I'm going to try some other distros, I don't know if it will work though!
 

john burns

Citizen
have you changed the path in your Datapath.cs file?
how about your OpenUOSDK.cs file?

REMEMBER
its/has/to/be/like/this for linux
not\like\this, because this is how windows does things.
 

septor

Citizen
Yes, I changed the path in both of those files: https://github.com/septor/ServUO/commit/b568417b9d34ae405fc43944e6d92e51f9c7cf39

I even moved the uodata folder into my home directory just to see if that was causing the problems.

I'm setting up a 32bit Ubuntu install to try. I gave it a shot on 64bit Debian 7 install and I got the same error as I posted above.

edit: Well, I think I may have found the issue. Are you using a 32bit install of Ubuntu? I did the same steps as I listed above on a 32bit install of Ubuntu and I got the following error (after I cleaned up the code to remove some Script errors):

Code:
----------------------------------------------------------------------------
ServUO - [http://www.servuo.com] Version 0.5, Build 5566.37381
Publish
Core: Unix environment detected
RandomImpl: SimpleRandom (Software)
Scripts: Compiling C# scripts...Finished with: 0 errors, 1 warnings
Warnings:
 + Services/Quests/Peerless System/PeerlessAltar.cs:
    CS0472: Line 607: The result of comparing value type `System.TimeSpan' with null is always `true'
Scripts: Skipping VB.NET Scripts...done (use -vb to enable)
Scripts: Verifying...
Finished (4057 items, 1007 mobiles, 11 customs) (0.36 seconds)
Regions: Loading...done
World: Loading...done (0 items, 0 mobiles, 0 customs) (0.01 seconds)
tiledata.mul was not found
Make sure your Scripts/Misc/DataPath.cs is properly configured
After pressing return an exception will be thrown and the server will terminate
Error:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.TypeInitializationException: An exception was thrown by the type initializer for Server.TileData ---> System.Exception: TileData:  not found
  at Server.TileData..cctor () [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at Server.Item.get_DefaultWeight () [0x00000] in <filename unknown>:0
  at Server.Item.get_Weight () [0x00000] in <filename unknown>:0
  at Server.Item.get_PileWeight () [0x00000] in <filename unknown>:0
  at Server.Item.set_Amount (Int32 value) [0x00000] in <filename unknown>:0
  at Server.Item..ctor () [0x00000] in <filename unknown>:0
  at Server.Item..ctor (Int32 itemID) [0x00000] in <filename unknown>:0
  at Server.Items.WayPoint..ctor () [0x00000] in <filename unknown>:0
  at Server.Mobiles.XmlSpawner.Initialize () [0x00000] in <filename unknown>:0
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <filename unknown>:0
  at Server.ScriptCompiler.Invoke (System.String method) [0x00000] in <filename unknown>:0
  at Server.Core.Main (System.String[] args) [0x00000] in <filename unknown>:0
This exception is fatal, press return to exit

Now mind you, I don't have any of the client files uploaded yet (I zipped my entire UO directory up and was uploading it because I thought maybe that was the problem), so I'm assuming once I get those uploaded everything _should_ load up. I'll report back once they are uploaded.
 
Last edited:

septor

Citizen
Nope, it loads and asks for me to create a user then it crashes directly after with the following two crash logs:

Code:
Server Crash Report
===================

RunUO Version 0.5, Build 5566.38219
Operating System: Unix 3.13.0.43
.NET Framework: 4.0.30319.17020
Time: 3/30/2015 1:18:06 AM
Mobiles: 0
Items: 4
Exception:
System.DllNotFoundException: kernel32
  at (wrapper managed-to-native) Server.Core/SafeNativeMethods:QueryPerformanceCounter (long&)
  at Server.Core.get_TickCount () [0x00000] in <filename unknown>:0 
  at Server.Timer+TimerThread.ProcessChanged () [0x00000] in <filename unknown>:0 
  at Server.Timer+TimerThread.TimerMain () [0x00000] in <filename unknown>:0 
  at System.Threading.Thread.StartInternal () [0x00000] in <filename unknown>:0 

Clients:
- Count: 0

Code:
Server Crash Report
===================

RunUO Version 0.5, Build 5566.38219
Operating System: Unix 3.13.0.43
.NET Framework: 4.0.30319.17020
Time: 3/30/2015 1:18:09 AM
Mobiles: 0
Items: 3
Exception:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.IO.IOException: Invalid handle to path "/home/septor/ServUO/[Unknown]"
  at System.IO.FileStream.ReadData (IntPtr handle, System.Byte[] buf, Int32 offset, Int32 count) [0x00000] in <filename unknown>:0 
  at System.IO.FileStream.ReadInternal (System.Byte[] dest, Int32 offset, Int32 count) [0x00000] in <filename unknown>:0 
  at System.IO.FileStream.Read (System.Byte[] array, Int32 offset, Int32 count) [0x00000] in <filename unknown>:0 
  at System.IO.StreamReader.ReadBuffer () [0x00000] in <filename unknown>:0 
  at System.IO.StreamReader.Read () [0x00000] in <filename unknown>:0 
  at System.TermInfoDriver.ReadKeyInternal (System.Boolean& fresh) [0x00000] in <filename unknown>:0 
  at System.TermInfoDriver.ReadKey (Boolean intercept) [0x00000] in <filename unknown>:0 
  at System.ConsoleDriver.ReadKey (Boolean intercept) [0x00000] in <filename unknown>:0 
  at System.Console.ReadKey (Boolean intercept) [0x00000] in <filename unknown>:0 
  at Server.Misc.AccountPrompt.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <filename unknown>:0 
  at Server.ScriptCompiler.Invoke (System.String method) [0x00000] in <filename unknown>:0 
  at Server.Core.Main (System.String[] args) [0x00000] in <filename unknown>:0 

Clients:
- Count: 0

I created '/home/septor/ServUO/Saves' and '/home/septor/ServUO/Backups/Automatic' and CHMODed them to 777 but that did no good.

I also noticed a Guide.log with the following block repeating itself around 10 times:

Code:
Could not find file "/home/septor/ServUO/Data\Guide\Definitions.cfg".
  at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean anonymous, FileOptions options) [0x00000] in <filename unknown>:0 
  at System.IO.FileStream..ctor (System.String path, FileMode mode, FileAccess access, FileShare share) [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.IO.FileStream:.ctor (string,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare)
  at System.IO.File.OpenRead (System.String path) [0x00000] in <filename unknown>:0 
  at Server.Mobiles.GuideHelper.Initialize () [0x00000] in <filename unknown>:0 
--------------------------------------------------------------------------

Is there a place to specify more paths that just the client files?
 

john burns

Citizen
Could not find file "/home/septor/ServUO/Data\Guide\Definitions.cfg"
See the slashes after Data, I think that is messing you up.


Also, try doing this if you have not already--
sudo apt-get install zlibc zlib1g zlib1g-dev
 

septor

Citizen
I know that, I don't know where to change it. I've skimmed through all the files I can think of and nothing.

Those packages were installed.

I'm out of ideas.
 
Status
Not open for further replies.