Load back up causes crash on fresh ubuntu install

Issue: I installed on ubuntu 16.04 clicked load crash and game froze
Crash (y/n): y
Platform (Windows/Mac/Linux): Ubuntu 16.04
Description: I dual boot with ubuntu so have installed the game. On clicking load backup the game hangs

I looked in the saves folder and noticed that my save from the pc version had transfered. here is the log

====== Initialising file system
UserDir: /home/yxxxx/
BaseDir: /home/yxxxx/.local/share/Steam/steamapps/common/MMORPG Tycoon 2/
Search path: /home/yxxxx/.local/share/VectorStorm/MMORPG Tycoon 2/
Search path: /home/yxxxx/.local/share/Steam/steamapps/common/MMORPG Tycoon 2//Data
Loading preferences…
Checking supported resolutions…
Available Modes
0: 1600 x 900
1: 1440 x 900
2: 1360 x 768
3: 1152 x 864
4: 1024 x 768
5: 960 x 720
6: 960 x 600
7: 960 x 540
8: 928 x 696
9: 896 x 672
10: 840 x 525
11: 800 x 600
12: 800 x 512
13: 720 x 450
14: 700 x 525
15: 680 x 384
16: 640 x 512
17: 640 x 480
18: 576 x 432
19: 512 x 384
20: 400 x 300
21: 320 x 240
Initialising [1024x768] resolution…
Found 1 displays:
Display #0 0 (1600x900)

OpenGL Context:
Vendor: NVIDIA Corporation
Renderer: GeForce GT 540M/PCIe/SSE2
Version: 3.3.0 NVIDIA 361.42
Shading Language Version: 3.30 NVIDIA via Cg compiler
== Begin OpenGL limits ==
Max 3D texture size: 2048
Max array texture layers: 2048
Max clip distances: 8
Max samples in a color multisample texture: 32
Maximum atomic counters: 98304
Maximum fragment shader uniform components: 233472
Maximum geometry shader uniform components: 231424
Maximum combined texture image units: 192
Maximum combined uniform blocks: 84
Maximum cube map dimensions: 16384
Maximum samples in a multisample depth or depth-stencil texture: 32
Maximum simultaneous draw buffers: 8
Maximum simultaneous draw buffers with dual-source blending: 1
Recommended maximum number of vertex array indices: 1048576
Recommended maximum number of vertex array vertices: 1048576
Max fragment shader input components: 128
Max fragment shader uniform components: 4096
Maximum texels in the texel array of a texture buffer: 134217728
Maximum supported texture image units in a fragment shader: 32
Maximum texture size (rough estimate): 16384
Maximum uniform buffer binding points: 84
Maximum uniform block size: 65536
Maximum uniform locations: 65536
Maximum varying components: 124
Maximum floating point varying components: 124
Maximum atomic counters in vertex shaders: 16384
Maximum vertex attributes in vertex shader: 16
Maximum active shader storage blocks in a vertex shader: 16
Maximum texture image units in vertex shader: 32
Maximum uniform components in vertex shader: 4096
Maximum output components in vertex shader: 128
Maximum uniform blocks per vertex shader: 14
Maximum simultaneous viewports: 16
Maximum MSAA samples: 32
== End OpenGL limits ==
VSync: ENABLED
TextureUnits: 32 from vertex shader, 192 total
Screen Ratio: 1.333333
– Initialising game "MMORPG"
TextInput was enabled by default; turning it off until we need it!
No joystick found. Using keyboard input.
Shown
Exposed
Exposed
Exposed
Event 0: Path event:/UI/window close end: min range 0.000000: max range 0.000000
Event 1: Path event:/UI/button slot deselect: min range 0.000000: max range 0.000000
Event 2: Path event:/UI/button slot desocket: min range 0.000000: max range 0.000000
Event 3: Path event:/old/general click: min range 0.000000: max range 0.000000
Event 4: Path event:/UI/general cancel: min range 0.000000: max range 0.000000
Event 5: Path event:/Title screens/loading screen world appear: min range 0.000000: max range 0.000000
Event 6: Path event:/UI/window open start: min range 0.000000: max range 0.000000
Event 7: Path event:/UI/button slot socket: min range 0.000000: max range 0.000000
Event 8: Path event:/Title screens/loading screen whoosh 01: min range 20.000000: max range 300.000000
Event 9: Path event:/Title screens/loading screen whoosh 02: min range 16.000000: max range 65.000000
Event 10: Path event:/Title screens/loading screen launch: min range 0.000000: max range 0.000000
Event 11: Path event:/UI/general notification: min range 0.000000: max range 0.000000
Event 12: Path event:/Title screens/loading screen white flash: min range 0.000000: max range 0.000000
Event 13: Path event:/UI/button click: min range 0.000000: max range 0.000000
Event 14: Path event:/UI/window close start: min range 0.000000: max range 0.000000
Event 15: Path event:/old/button release toggle on: min range 0.000000: max range 0.000000
Event 16: Path event:/UI/window open end: min range 0.000000: max range 0.000000
Event 17: Path event:/UI/window looping: min range 0.000000: max range 0.000000
Event 18: Path event:/Title screens/loading screen loop: min range 0.000000: max range 0.000000
Event 19: Path event:/UI/button click up new field: min range 0.000000: max range 0.000000
Bus 0: Path ‘bus:/UI/UI_UnD’: Volume: 1.000000
Bus 1: Path ‘bus:/UI’: Volume: 1.000000
Bus 2: Path ‘bus:/UI/UI_d1’: Volume: 1.000000
Bus 3: Path ‘bus:/UI/UI_d2’: Volume: 1.000000
Bus 4: Path ‘bus:/Reverb’: Volume: 1.000000
Bus 5: Path ‘bus:/’: Volume: 1.000000
Param 0: dramaticMIX [0.00-1.00] (default 0.00)
Rebuild front plate mesh
Rebuild front plate mesh

Could you send me a copy of the saved game? Please zip or tar.gz it before sending, just to ensure that putting it through email doesn’t change it in any way.

Just to clarify; you get the hang before the dialog box opens, showing the games which could be loaded? Or after you’ve selected the game and chosen to load it?

Its immediatly after I click the button. no dialogue is shown at all.

ok I have just had a simialr thing happen on windows. click load backup and i crash with an error

====== Initialising file system
UserDir: C:\Users\yxxxx
BaseDir: C:\Program Files (x86)\Steam\steamapps\common\MMORPG Tycoon 2
Search path: C:\Users\yxxxx\AppData\Roaming\VectorStorm\MMORPG Tycoon 2
Search path: C:\Program Files (x86)\Steam\steamapps\common\MMORPG Tycoon 2\Data
Loading preferences…
MMORPG Tycoon 2: Build 0.12.24-g1c9e33b : 2016-09-16T07:08:15Z
Checking supported resolutions…
Available Modes
0: 1600 x 900
1: 1440 x 900
2: 1366 x 768
3: 1360 x 768
4: 1280 x 800
5: 1280 x 768
6: 1280 x 720
7: 1280 x 600
8: 1152 x 864
9: 1024 x 768
10: 800 x 600
11: 640 x 480
12: 640 x 400
13: 512 x 384
14: 400 x 300
15: 320 x 240
16: 320 x 200
Initialising [1024x768] resolution…
Found 1 displays:
Display #0 Generic PnP Monitor (1600x900)

OpenGL Context:
Vendor: NVIDIA Corporation
Renderer: GeForce GT 540M/PCIe/SSE2
Version: 3.3.0 NVIDIA 372.70
Shading Language Version: 3.30 NVIDIA via Cg compiler
== Begin OpenGL limits ==
Max 3D texture size: 2048
Max array texture layers: 2048
Max clip distances: 8
Max samples in a color multisample texture: 32
Maximum atomic counters: 98304
Maximum fragment shader uniform components: 233472
Maximum geometry shader uniform components: 231424
Maximum combined texture image units: 192
Maximum combined uniform blocks: 84
Maximum cube map dimensions: 16384
Maximum samples in a multisample depth or depth-stencil texture: 32
Maximum simultaneous draw buffers: 8
Maximum simultaneous draw buffers with dual-source blending: 1
Recommended maximum number of vertex array indices: 1048576
Recommended maximum number of vertex array vertices: 1048576
Max fragment shader input components: 128
Max fragment shader uniform components: 4096
Maximum texels in the texel array of a texture buffer: 134217728
Maximum supported texture image units in a fragment shader: 32
Maximum texture size (rough estimate): 16384
Maximum uniform buffer binding points: 84
Maximum uniform block size: 65536
Maximum uniform locations: 65536
Maximum varying components: 124
Maximum floating point varying components: 124
Maximum atomic counters in vertex shaders: 16384
Maximum vertex attributes in vertex shader: 16
Maximum active shader storage blocks in a vertex shader: 16
Maximum texture image units in vertex shader: 32
Maximum uniform components in vertex shader: 4096
Maximum output components in vertex shader: 128
Maximum uniform blocks per vertex shader: 14
Maximum simultaneous viewports: 16
Maximum MSAA samples: 32
NVidia-only: Currently available video memory: 2040584
ATI-only: Currently available video memory: 2040584
== End OpenGL limits ==
VSync: ENABLED
TextureUnits: 32 from vertex shader, 192 total
Screen Ratio: 1.333333
– Initialising game “MMORPG”
TextInput was enabled by default; turning it off until we need it!
No joystick found. Using keyboard input.
Shown
Exposed
Event 0: Path event:/UI/window close end: min range 0.000000: max range 0.000000
Event 1: Path event:/UI/button slot deselect: min range 0.000000: max range 0.000000
Event 2: Path event:/UI/button slot desocket: min range 0.000000: max range 0.000000
Event 3: Path event:/old/general click: min range 0.000000: max range 0.000000
Event 4: Path event:/UI/general cancel: min range 0.000000: max range 0.000000
Event 5: Path event:/Title screens/loading screen world appear: min range 0.000000: max range 0.000000
Event 6: Path event:/UI/window open start: min range 0.000000: max range 0.000000
Event 7: Path event:/UI/button slot socket: min range 0.000000: max range 0.000000
Event 8: Path event:/Title screens/loading screen whoosh 01: min range 20.000000: max range 300.000000
Event 9: Path event:/Title screens/loading screen whoosh 02: min range 16.000000: max range 65.000000
Event 10: Path event:/Title screens/loading screen launch: min range 0.000000: max range 0.000000
Event 11: Path event:/UI/general notification: min range 0.000000: max range 0.000000
Event 12: Path event:/Title screens/loading screen white flash: min range 0.000000: max range 0.000000
Event 13: Path event:/UI/button click: min range 0.000000: max range 0.000000
Event 14: Path event:/UI/window close start: min range 0.000000: max range 0.000000
Event 15: Path event:/old/button release toggle on: min range 0.000000: max range 0.000000
Event 16: Path event:/UI/window open end: min range 0.000000: max range 0.000000
Event 17: Path event:/UI/window looping: min range 0.000000: max range 0.000000
Event 18: Path event:/Title screens/loading screen loop: min range 0.000000: max range 0.000000
Event 19: Path event:/UI/button click up new field: min range 0.000000: max range 0.000000
Bus 0: Path ‘bus:/UI/UI_UnD’: Volume: 1.000000
Bus 1: Path ‘bus:/UI’: Volume: 1.000000
Bus 2: Path ‘bus:/UI/UI_d1’: Volume: 1.000000
Bus 3: Path ‘bus:/UI/UI_d2’: Volume: 1.000000
Bus 4: Path ‘bus:/Reverb’: Volume: 1.000000
Bus 5: Path ‘bus:/’: Volume: 1.000000
Param 0: dramaticMIX [0.00-1.00] (default 0.00)
Rebuild front plate mesh
Rebuild front plate mesh
Failed assertion: Error opening file ‘save//Simpleton Online’: Access is denied.
Failed condition: (m_file != NULL)
at VS_File.cpp:48

ill email the crash file as its not possible to upload it here.

…your screenshot has provided the key to this puzzle!

Next to "MMO: " in the title screen, it should be stating the name of the MMORPG that you most recently played; that’s the MMORPG that you will either connect to, or load a backup from. But you’ve got an empty string there.

All sorts of havoc will begin if you try to connect to a game from that state, or try to list its save games, because if you try to list save games, it goes looking for saves inside the “save/” directory. And all that’s in there is a bunch of folders for your different MMORPGs.

And when it tries to open a folder as if it was a regular file, weird things start happening. I’ve added a big error message when that happens in future. I’m a little puzzled about how you got into that situation in the first place, though. In theory, Steam Cloud should be keeping both your saves and your “most recent MMORPG played” in sync between computers; the only time you should have an empty string as the most recent one played is when you haven’t created any MMORPGs at all, in which case it would kick you straight into the “New game” interface.

But I need to make this screen more robust, clearly. For the moment, you can work around this problem by using the ‘Switch’ interface to select an MMORPG to play. That should fix the problem for you for right now.

Looking more closely, I already had a bunch of code in there validating that “last game” string was something reasonable, but it never checked that the string wasn’t empty. Now it does.

In the case where the string is empty, it will now select one of your existing MMORPGs (if any), or will launch the create game dialog, if there aren’t any, exactly as it would do if the file became corrupted or etc. So hopefully this should solve the issue across both platforms! This fix will be in the next build, 0.12.25.