ADRIFT 5 - Linux

I have just uploaded the Linux version of ADRIFT 5 Runner to the ADRIFT website. This runs using Mono.

The software is still pretty buggy, especially the Mono version which is not 100% compatible with Windows, but it should be possible to run games (for example this) reasonably well.

I’m obviously new at creating Linux distributions, so if anyone has any suggestions of improvements, please let me know.

I managed to get it to run (once I installed the Visual Basic library), but it crashes when I click File -> Open Adventure, with these error messages:

System.IO.FileNotFoundException: Could not find file "" at System.IO.Directory.GetCurrentDirectory () [0x00000] in <filename unknown>:0 at System.Environment.get_CurrentDirectory () [0x00000] in <filename unknown>:0 at System.Windows.Forms.FileDialog.ReadConfigValues () [0x00000] in <filename unknown>:0 at System.Windows.Forms.FileDialog.RunDialog (IntPtr hWndOwner) [0x00000] in <filename unknown>:0 at System.Windows.Forms.CommonDialog.ShowDialog (IWin32Window owner) [0x00000] in <filename unknown>:0 at System.Windows.Forms.CommonDialog.ShowDialog () [0x00000] in <filename unknown>:0 at (wrapper remoting-invoke-with-check) System.Windows.Forms.CommonDialog:ShowDialog () at ADRIFT.SharedModule.‰ (System.Windows.Forms.OpenFileDialog ) [0x00000] in <filename unknown>:0 at ..‚ (System.Object , System.EventArgs ) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ToolStripItem.OnClick (System.EventArgs e) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ToolStripMenuItem.OnClick (System.EventArgs e) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ToolStripMenuItem.HandleClick (System.EventArgs e) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ToolStripItem.FireEvent (System.EventArgs e, ToolStripItemEventType met) [0x00000] in <filename unknown>:0 at (wrapper remoting-invoke-with-check) System.Windows.Forms.ToolStripItem:FireEvent (System.EventArgs,System.Windows.Forms.ToolStripItemEventType) at System.Windows.Forms.ToolStrip.OnMouseUp (System.Windows.Forms.MouseEventArgs mea) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ToolStripDropDown.OnMouseUp (System.Windows.Forms.MouseEventArgs mea) [0x00000] in <filename unknown>:0 at System.Windows.Forms.Control.WmLButtonUp (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ScrollableControl.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ToolStrip.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 at System.Windows.Forms.ToolStripDropDown.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 at System.Windows.Forms.Control+ControlWindowTarget.OnMessage (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 at System.Windows.Forms.Control+ControlNativeWindow.WndProc (System.Windows.Forms.Message& m) [0x00000] in <filename unknown>:0 at System.Windows.Forms.NativeWindow.WndProc (IntPtr hWnd, Msg msg, IntPtr wParam, IntPtr lParam) [0x00000] in <filename unknown>:0
Do I need to install some extra Mono library/ies, or is it an ADRIFT bug?

Is it getting as far as displaying the Open File Dialog, or is it crashing at that point? Also, what version of Mono and which Linux distro are you using?

If it’s crashing at the OFD, try running “adrift <file.taf>”, to launch a file directly, which should bypass the dialog.

It was crashing immediately, before the file dialog could appear. This is on Ubuntu 11.04, Mono 2.6.7.

Okay, that works. And strangely, having managed to start a game that way once, the crash isn’t happening any more, even if I start ADRIFT without a game. (Or maybe it’s just because I restarted the computer before I tried it? I don’t know. It was crashing every time earlier…)

Anyway, the Runner looks pretty nice! I don’t have time right now to actually play anything, but I put in a few commands and saved and restored the game, which all worked fine.

Ok, that’s encouraging. The crash looks to be within Mono itself then. Perhaps the reboot just sorted something out, maybe as a result of the VB add-on.

Thanks for giving it a go.

Maybe I’m talking nonsense, but can it be that you have implemented some form of “last opened directory”, and try to use it as the initial directory of the “open file” dialog, but since the user runs the app for the first time there is no last opened directory yet?

Well, I do assign OFD.FileName = “” if it currently contains a value that doesn’t end in “taf”. But this seems to work fine for me. So it sounds like it’s something in the initialization of the OFD itself. I might be able to work around it by pre-assigning the current directory or something similar. It would be interesting to see if anyone else gets this same issue.