Join us at the Oolite Anniversary Party -- London, 7th July 2024, 1pm
More details in this thread.

1.73.4: Linux - Saves corrupt(?) after dying

For test results, bug reports, announcements of new builds etc.

Moderators: winston, another_commander, Getafix

Athanasius
Poor
Poor
Posts: 5
Joined: Fri Mar 26, 2010 5:28 pm

1.73.4: Linux - Saves corrupt(?) after dying

Post by Athanasius »

I've been playing Oolite v1.73.4 for the past few days. It's compiled from sources on a Debian squeeze/sid (testing) system, using the nVidia binary drivers (v 195.22).

Today I died in a fight (bit off way more than I could chew), and upon trying to load the last saved game I now find any save since I installed some OXPs is broken, giving a yellow "?" for the ship model on the Load Commander screen and includes the text "Ship: Cobra Mark III - OXP not installed.".

The OXPs installed are:

GrittyCoriolis
System_Redux
griff_boa
griff_shipset_dizzy's_all_in_1

all of which had been working fine, including a previous death or two and reload.

I would have put the saved game file up for examination but the anti-spammer 2 posts/5days thing is stopping me. I've had a look at a 'diff -u' between this and a save from a fresh game and am at a loss to spot anything that looks like it could cause this.
User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

Hello Athanasius, welcome this side of Riedquat.

Could you please post the content of the Logfile (Latest.log). I'm pretty sure it tells us a bit more about the problem.
Athanasius
Poor
Poor
Posts: 5
Joined: Fri Mar 26, 2010 5:28 pm

Post by Athanasius »

I can do that, but bear in mind I've restarted the game several times since, so even the Previous.log won't help much.

Here's with just a startup and attempting to load the affected save:

Code: Select all

[log.header]: Opening log for Oolite version 1.73.4 (x86-32 test release) under Linux at 2010-03-26 20:58:59 +0000.
2 processors detected.
Oolite Options: [Procedural Planets] [Docking Clearance] [Wormhole Scanner] [Target Incoming Missiles]

Note that the contents of the log file can be adjusted by editing logcontrol.plist.

[joystickHandler.init]: Number of joysticks detected: 0
[display.mode.list.native]: X11 native resolution detected: 1680 x 1050
[rendering.opengl.version]: OpenGL renderer version: 3.2.0 ("3.2.0 NVIDIA 195.22")
Vendor: NVIDIA Corporation
Renderer: GeForce GTX 260/PCI/SSE2
[rendering.opengl.extensions]: OpenGL extensions (180):
GL_ARB_color_buffer_float GL_ARB_compatibility GL_ARB_copy_buffer GL_ARB_depth_buffer_float GL_ARB_depth_clamp GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_draw_elements_base_vertex GL_ARB_draw_instanced GL_ARB_fragment_coord_conventions GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_framebuffer_object GL_ARB_framebuffer_sRGB GL_ARB_geometry_shader4 GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_imaging GL_ARB_map_buffer_range GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_provoking_vertex GL_ARB_seamless_cube_map GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_shadow GL_ARB_sync GL_ARB_texture_border_clamp GL_ARB_texture_buffer_object GL_ARB_texture_compression GL_ARB_texture_compression_rgtc GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_float GL_ARB_texture_mirrored_repeat GL_ARB_texture_multisample GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_texture_rg GL_ARB_transpose_matrix GL_ARB_uniform_buffer_object GL_ARB_vertex_array_bgra GL_ARB_vertex_array_object GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_texture_float GL_ATI_texture_mirror_once GL_S3_s3tc GL_EXT_texture_env_add GL_EXT_abgr GL_EXT_bgra GL_EXT_bindable_uniform GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_compiled_vertex_array GL_EXT_Cg_shader GL_EXT_depth_bounds_test GL_EXT_direct_state_access GL_EXT_draw_buffers2 GL_EXT_draw_instanced GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXTX_framebuffer_mixed_formats GL_EXT_framebuffer_object GL_EXT_framebuffer_sRGB GL_EXT_geometry_shader4 GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_float GL_EXT_packed_pixels GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_provoking_vertex GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_shader_objects GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_stencil_two_side GL_EXT_stencil_wrap GL_EXT_texture3D GL_EXT_texture_array GL_EXT_texture_buffer_object GL_EXT_texture_compression_latc GL_EXT_texture_compression_rgtc GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map GL_EXT_texture_edge_clamp GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_integer GL_EXT_texture_lod GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_shared_exponent GL_EXT_texture_sRGB GL_EXT_texture_swizzle GL_EXT_timer_query GL_EXT_transform_feedback2 GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_IBM_rasterpos_clip GL_IBM_texture_mirrored_repeat GL_KTX_buffer_region GL_NV_blend_square GL_NV_conditional_render GL_NV_copy_depth_to_color GL_NV_copy_image GL_NV_depth_buffer_float GL_NV_depth_clamp GL_NV_explicit_multisample GL_NV_fence GL_NV_float_buffer GL_NV_fog_distance GL_NV_fragment_program GL_NV_fragment_program_option GL_NV_fragment_program2 GL_NV_framebuffer_multisample_coverage GL_NV_geometry_shader4 GL_NV_gpu_program4 GL_NV_half_float GL_NV_light_max_exponent GL_NV_multisample_coverage GL_NV_multisample_filter_hint GL_NV_occlusion_query GL_NV_packed_depth_stencil GL_NV_parameter_buffer_object GL_NV_parameter_buffer_object2 GL_NV_pixel_data_range GL_NV_point_sprite GL_NV_primitive_restart GL_NV_register_combiners GL_NV_register_combiners2 GL_NV_shader_buffer_load GL_NV_texgen_reflection GL_NV_texture_barrier GL_NV_texture_compression_vtc GL_NV_texture_env_combine4 GL_NV_texture_expand_normal GL_NV_texture_rectangle GL_NV_texture_shader GL_NV_texture_shader2 GL_NV_texture_shader3 GL_NV_transform_feedback GL_NV_transform_feedback2 GL_NV_vertex_array_range GL_NV_vertex_array_range2 GL_NV_vertex_buffer_unified_memory GL_NV_vertex_program GL_NV_vertex_program1_1 GL_NV_vertex_program2 GL_NV_vertex_program2_option GL_NV_vertex_program3 GL_NVX_conditional_render GL_SGIS_generate_mipmap GL_SGIS_texture_lod GL_SGIX_depth_texture GL_SGIX_shadow GL_SUN_slice_accum 
[searchPaths.dumpAll]: ---> OXP search paths:
("/usr/lib/GNUstep/Applications/oolite.app/Resources", AddOns, "/home/users/athan/.Oolite/AddOns", "/home/users/athan/.Oolite/AddOns/System_Redux.oxp", "/home/users/athan/.Oolite/AddOns/griff_shipset_dizzy's_all_in_1.oxp", "/home/users/athan/.Oolite/AddOns/GrittyCoriolis.oxp", "/home/users/athan/.Oolite/AddOns/Debug.oxp", "/home/users/athan/.Oolite/AddOns/griff_boa.oxp")
[dataCache.upToDate]: Data cache is up to date.
[script.load.world.listAll]: Loaded 6 world scripts: "oolite-cloaking-device" 1.73.4, "oolite-constrictor-hunt" 1.73.4, "oolite-nova" 1.73.4, "oolite-thargoid-plans" 1.73.4, "oolite-trumbles" 1.73.4, "System Redux 1.2" 1.2
[debugTCP.disconnect]: Debug console disconnected with message Lost connection to remote debug console. outStream status: 7, inStream status: 7. Stream error: Connection refused
[debugTCP.disconnect]: Debug console disconnected with message Lost connection to remote debug console. outStream status: 0, inStream status: 0. Stream error: unknown error.
[debugTCP.connect.failed]: Failed to connect to debug console at 127.0.0.1:8563.
[dataCache.willWrite]: About to write data cache.
[dataCache.write.success]: Wrote data cache.
[load.failed]: ***** FILE LOADING ERROR!! *****
[script.load.world.listAll]: Loaded 6 world scripts: "oolite-cloaking-device" 1.73.4, "oolite-constrictor-hunt" 1.73.4, "oolite-nova" 1.73.4, "oolite-thargoid-plans" 1.73.4, "oolite-trumbles" 1.73.4, "System Redux 1.2" 1.2
[gameController.exitApp]: .GNUstepDefaults synchronized.

Closing log at 2010-03-26 20:59:14 +0000.
The save file in question is at www . miggy . org / games / oolite / AthanasiusAddons.oolite-save (without all those spaces, obviously). If there are any debug options I could turn on let me know how to.
User avatar
Eric Walch
Slightly Grand Rear Admiral
Slightly Grand Rear Admiral
Posts: 5536
Joined: Sat Jun 16, 2007 3:48 pm
Location: Netherlands

Post by Eric Walch »

Athanasius wrote:
The save file in question is at www . miggy . org / games / oolite / AthanasiusAddons.oolite-save (without all those spaces, obviously). If there are any debug options I could turn on let me know how to.
Just downloaded it and opened it with my mac version of 1.73.4. It opens without any error. So the problem is not in the ascii content of the file.
(I did not download it as file, but just copied the text from screen)
User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

Eric Walch wrote:
Athanasius wrote:
The save file in question is at www . miggy . org / games / oolite / AthanasiusAddons.oolite-save (without all those spaces, obviously). If there are any debug options I could turn on let me know how to.
Just downloaded it and opened it with my mac version of 1.73.4. It opens without any error. So the problem is not in the ascii content of the file.
(I did not download it as file, but just copied the text from screen)
Same for me (copied screen content too).

So you could try to remove the oxps for the tests. And if the Error remains try the following. To enable advanced logging functionality open logcontrol.plist (oolite.app\Resources\Config\logcontrol.plist) and remove the comment for the _override key (_override = yes;)

But somehow it smells like a build error...
User avatar
JazHaz
---- E L I T E ----
---- E L I T E ----
Posts: 2991
Joined: Tue Sep 22, 2009 11:07 am
Location: Enfield, Middlesex
Contact:

Post by JazHaz »

Athanasius wrote:

Code: Select all

[debugTCP.disconnect]: Debug console disconnected with message Lost connection to remote debug console. outStream status: 7, inStream status: 7. Stream error: Connection refused
[debugTCP.disconnect]: Debug console disconnected with message Lost connection to remote debug console. outStream status: 0, inStream status: 0. Stream error: unknown error.
[debugTCP.connect.failed]: Failed to connect to debug console at 127.0.0.1:8563.
[dataCache.willWrite]: About to write data cache.
[dataCache.write.success]: Wrote data cache.
[load.failed]: ***** FILE LOADING ERROR!! ***** 
Anyone notice those debugTCP messages?

Wondering whether they might indicate something other than the save file being corrupt?
JazHaz

Gimi wrote:
drew wrote:
£4,500 though! :shock: <Faints>
Cheers,
Drew.
Maybe you could start a Kickstarter Campaign to found your £4500 pledge. 8)
Thanks to Gimi, I got an eBook in my inbox tonight (31st May 2014 - Release of Elite Reclamation)!
User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

JazHaz wrote:
Anyone notice those debugTCP messages?
Yes. Oolite tries to connect to the debug console, so the messages are just telling us that Athanasius does not use the debug console.
User avatar
JensAyton
Grand Admiral Emeritus
Grand Admiral Emeritus
Posts: 6657
Joined: Sat Apr 02, 2005 2:43 pm
Location: Sweden
Contact:

Post by JensAyton »

Given that the ship_desc in the saved game is cobra3-player, which is the standard edition Cobra, this definitely sounds like a build problem – the built-in shipdata.plist isn’t being loaded properly.
Athanasius
Poor
Poor
Posts: 5
Joined: Fri Mar 26, 2010 5:28 pm

Post by Athanasius »

Indeed this fails to work in exactly the same manner without any AddOns (I moved the directory out to my home directory before starting oolite). And, yes, the TCP stuff was just from my having added in the Debug OXP but not having run the console before that oolite startup.

I'm curious as to how the code fails to load 'cobra3-player' for these saved games when it will do it perfectly fine not just for a "Just created a new commander" save but also for the one I'd played a little before putting OXPs in.

I've done a few runs now with __overide = yes uncommented. Logs are at the same location as the save file. I've also placed an 'Athanasius.oolite-save' there which is the "played a bit" save I was on before adding any OXPs. One of the log files is for the successful load of that.

This was built on an up to date Debian squeeze/sid (testing) system. The debian/control file lists the following as Build-Depends (I've added my versions):

libsdl1.2-dev: 1.2.13-5
libsdl-mixer1.2-dev: 1.2.8-6+b1
libespeak-dev: 1.43-1
libgnustep-base-dev: 1.19.3-1
gnustep-core-devel: 7.4
libpng-dev: This is a virtual package, I have libpng12-dev version 1.2.43-1
mesa-common-dev: 7.7-4

Given I only ended up compiling myself because I'd not realised that an X11 library update had once more overwritten the nVidia libGL I'll see if pre-packaged 1.73.4 is available and works.
Athanasius
Poor
Poor
Posts: 5
Joined: Fri Mar 26, 2010 5:28 pm

Post by Athanasius »

Yup, using oolite-1.73.4-test.x86.package it's working now. If you want me to do anything further to track down why the build failed on my system just let me know.

I compiled it simply by unpacking oolite-dev-source-1.73.4.tar.bz2, cd'ing in, and then running "debian/rules binary" and "dpkg -i"'ing the resulting .deb files.

[edit: I'm uploading the .deb files I was using to the same location, when they're readable they're done. I'll have a look myself to see if I can spot any differences not in the executeable(s).]
Athanasius
Poor
Poor
Posts: 5
Joined: Fri Mar 26, 2010 5:28 pm

Post by Athanasius »

Aha, one huge difference is that the autopackage version includes its own libraries for things like GNUstep and SDL and sets LD_LIBRARY_PATH in the wrapper shell script to point to those.

So, possibly some gotcha when bumping up to libgnustep-base 1.19.3 rather than the autopackaged 1.14 ?
shazbut
Poor
Poor
Posts: 5
Joined: Sat May 01, 2010 7:25 am

how do you know it's working / fixed?

Post by shazbut »

how do you know it's working / fixed?
The reason I ask is because I've the same problem twice today:
Could not find ship type “cobra3-player” - please reinstall the appropriate OXP, when trying to restore from a previous save.

(This forum topic is the only result I get when I google "cobra mark iii" "oxp not installed".)

The first time it did it I ended up starting again, but editing the save file to set my kills to the previous amount, and give enough credits to buy up everything I'd lost. I guess I'm going to end up doing that again, but maybe maintain a couple saves now and try to work out what triggers the corrupt save.

I am running from the trunk version from 26/4/10. Funnily enough I can no longer build from svn, it errors out with:

Code: Select all

/usr/bin/ld: cannot find -lpng14
collect2: ld returned 1 exit status
make[3]: *** [obj.spk/oolite] Error 1
make[2]: *** [internal-objc_program-all_] Error 2
make[1]: *** [oolite.all.objc-program.variables] Error 2
make[1]: Leaving directory `/home/brett/Games/oolite-dev/trunk'
make: *** [release] Error 2
OS is Ubuntu 10.04, only has libpng12 (-dev), 14 must be too bleedng edge or something.

Forgot to say, the addons I'm running are behemoth 2.5.4 and galactic navy 5.2.2
User avatar
JensAyton
Grand Admiral Emeritus
Grand Admiral Emeritus
Posts: 6657
Joined: Sat Apr 02, 2005 2:43 pm
Location: Sweden
Contact:

Re: how do you know it's working / fixed?

Post by JensAyton »

shazbut wrote:
I am running from the trunk version from 26/4/10
Getafix has recently revised the Linux build system. If he doesn’t drop in here with advice, please send him a private message or something.
shazbut wrote:
OS is Ubuntu 10.04, only has libpng12 (-dev), 14 must be too bleedng edge or something.
Not really. 1.4.0 was released in early January, 1.4.1 in February. However, 1.2 is still being maintained (i.e., getting security fixes at the same time as 1.4), and I believe Oolite should work with it just by changing the linker setting.
User avatar
Micha
Commodore
Commodore
Posts: 815
Joined: Tue Sep 02, 2008 2:01 pm
Location: London, UK
Contact:

Post by Micha »

To link, I had to make a symlink in the deps folder:

Code: Select all

ln -s libpng14.so.14 libpng14.so
I'm not sure what, if anything, Getafix has set up differently on his own build machine which allows him to compile without this modification.

Alternatively, the current trunk defines new Makefile targets which continue to use the system libraries instead of the deps packaged with Oolite:

Code: Select all

make -f Makefile distro-release
and

Code: Select all

make -f Makefile distro-debug
Alternatively, if using the GNUmakefile directly:

Code: Select all

make use_distro_deps=yes
The debian/rules script also uses that flag to ensure distro-specific packages are built.

Cheers,
- Micha.
The glass is twice as big as it needs to be.
User avatar
DaddyHoggy
Intergalactic Spam Assassin
Intergalactic Spam Assassin
Posts: 8513
Joined: Tue Dec 05, 2006 9:43 pm
Location: Newbury, UK
Contact:

Post by DaddyHoggy »

Ahruman wrote:
please send him a private message or something.
Pigeons released and on their way sir! :wink:
Selezen wrote:
Apparently I was having a DaddyHoggy moment.
Oolite Life is now revealed here
Post Reply