Problem with Restart (Mono / Wine)

Hi there !

I have a problem with the admin command : Save & Restart (or just Restart).

When I use Mono directly, for example "sudo mono ServUO.exe", and I try to restart the shard with (or without) a save, it usually crashes at restart. The exact moment is when the World Files are loading.
Here is the error I get :
- Invalid handle to path "/opt/servuoTC/[Unknown]"

I'm a bit lost and can't find a solution. Anything changed on the way to restart the server ? It used to work with RunUO.
I've tried many things, like using the Core.Kill(true) command ... or Application.Restart() ... or Environment.Exit(-1) ... nothing works. However, I think the new application launches too fast, before the old one could get killed (and free the world files access).
Well, this is my theory, but I might be wrong.

About Wine (but I don't use Wine ... it's too slow imho), the server gets restarted, but it says the IP is still in use.

If anyone can help, I would be grateful. :)

Thank you !

-Rek-
 

Attachments

  • as30.postimg.org_805wdccpd_0x_C72_B.jpg
    as30.postimg.org_805wdccpd_0x_C72_B.jpg
    9.2 KB · Views: 384
  • as29.postimg.org_dpaltnrqv_0x_C72_B_Fixed.jpg
    as29.postimg.org_dpaltnrqv_0x_C72_B_Fixed.jpg
    8.9 KB · Views: 388
This was actually easier to fix than I thought ... lol

No need to modify the code. Just changing how to launch Mono in Linux is enough ;)

For people who might encounter the same problem :
- open a terminal
- go to the ServUO folder
- launch "mimeopen -d ServUO.exe"
- choose option number # (depending on your options), which corresponds to Mono Runtime (Terminal)

Second step :
- open a terminal
- go to Edit -> Profile Preferences
- go to the Title and Commands tab
- choose the option : "When Command exists : restart the command"

Fast and simple :)
(took me a while to find out though)

To launch ServUO, just open your favourite file browser, go the ServUO folder, and double-click ServUO.exe (yes, Linux is becoming like Windows ... lol)

-Regnak-
 

Phred

Citizen
Regnak,

I see this post has been out there for a while, though inquiring minds need to know was this done on Debian or Ubuntu? If it was on Ubuntu what did you end up using to get this to compile? I can get regular runuo to compile, and load up just fine using mono. Any assistance is appreciated!
 
It was done on Ubuntu.

To compile ServUO, there is another topic with the exact command.
But in cas, here it is :
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
 

Phred

Citizen
This is the error I am still receiving, perhaps the compilation line has to much in it?

[email protected]:/var/servuo$ sudo mcs -sdk:4.0 -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
error CS8026: Invalid sdk version name
Compilation failed: 1 error(s), 0 warnings
 

Phred

Citizen
I was able to get this to compile after adding the mono repository, however only a few warnings on compiling. However I have updated the datapath to point to /var/uosac and when I execute servuo it doesn't see the necessary files.
 

Phred

Citizen
In my opinion the topic is deviating just a little. In the spirit of all things mono and Ubuntu, I will provide a 'clean slate' set of instructions to install ServUO on Ubuntu 12.04 LTS
 

RedDragon

Citizen
This was actually easier to fix than I thought ... lol

No need to modify the code. Just changing how to launch Mono in Linux is enough ;)

For people who might encounter the same problem :
- open a terminal
- go to the ServUO folder
- launch "mimeopen -d ServUO.exe"
- choose option number # (depending on your options), which corresponds to Mono Runtime (Terminal)

Second step :
- open a terminal
- go to Edit -> Profile Preferences
- go to the Title and Commands tab
- choose the option : "When Command exists : restart the command"

Fast and simple :)
(took me a while to find out though)

To launch ServUO, just open your favourite file browser, go the ServUO folder, and double-click ServUO.exe (yes, Linux is becoming like Windows ... lol)

-Regnak-
Hello Lord Regnak.
There is a way to do this only with the console?
 
On my many attempts back in 2013, I wasn't able to fix this issue from the code.
I guess it requires a core modification, but I didn't find which one.
If I quite remember, this is the main reason I changed to a Windows Server. ;)

Although, it should be possible, as with RunUO on Linux, it does restart normally.

Have you tried with Wine ?

Sorry I can't help much more than that ...