Page 1 of 3

Galactic Navy JS OXP

Posted: Fri Jun 12, 2009 7:42 pm
by Nemoricus
Over the past several weeks I've been working on converting Galactic Navy's script to JavaScript and rooting out any bugs in it. In addition, I have set things so that missions should only be offered in systems near a given SecCom station. Eric Walch also contributed code that sets up a true carrier battle group.

I haven't been able to contact matt634, though, and my first PM to him was sent almost two weeks ago now. It does not appear that he has even looked at it yet. I'm reluctant to release this without his permission, but if the community approves, I would like to do so.

What does everyone think about this?

Since the opinion appears to be positive, I'm releasing the current beta version of the conversion.

Galactic Navy JS Beta 1.1.2: here

A readme is included in .txt format, along with a number of saves if you want to test various parts of the Galacitc Navy code.

Posted: Fri Jun 12, 2009 7:53 pm
by Cmdr James
Hi, I sent him a pm on Sun Apr 12, 2009 11:56 am offering fixed plists for the flasher problems, and never got a response.

pm your email address if you want me to email them to you.

Re: Galactic Navy JS OXP

Posted: Fri Jun 12, 2009 7:55 pm
by Screet
Nemoricus wrote:
I'm reluctant to release this without his permission, but if the community approves, I would like to do so.

What does everyone think about this?
It would be nice if he shows up and comments on it, but if not...the game is free and if things improved, it might even make people more happy with this.

From my testing so far, I cannot report any problems. Will require to do some more missions though...so maybe you should just offer it as beta test package for some time and wait what happens, concerning both Matt and probable bug detection.

Sidenote: The readme is in doc format. Would much be lost by converting it to plain text? That's more easy readable for most people, especially concerning the multi-platform issue.

Screet

Posted: Fri Jun 12, 2009 7:55 pm
by Nemoricus
The flashers are already fixed. I'm including Eric's revised shipdata.plist, which happily fixes that problem along with the Behemoth AI.

Thanks for the offer, though.

I don't think that anything would be lost if I converted it to .txt, so I'll go ahead and do that.

Posted: Sat Jun 13, 2009 12:58 am
by Capt. Slog
From Matt634 9 May
You may be one of the few to actually attempt this mission. Because of the lack of feedback and several interceding Oolite versions, it may not work as it should, but here's some hints on what's supposed to happen based on my initial playtesting.

Spoiler followed, not heard since.

Re: Galactic Navy JS OXP

Posted: Sat Jun 13, 2009 1:48 pm
by DaddyHoggy
Screet wrote:
Nemoricus wrote:
I'm reluctant to release this without his permission, but if the community approves, I would like to do so.

What does everyone think about this?
It would be nice if he shows up and comments on it, but if not...the game is free and if things improved, it might even make people more happy with this.

From my testing so far, I cannot report any problems. Will require to do some more missions though...so maybe you should just offer it as beta test package for some time and wait what happens, concerning both Matt and probable bug detection.

Sidenote: The readme is in doc format. Would much be lost by converting it to plain text? That's more easy readable for most people, especially concerning the multi-platform issue.

Screet
Could always open the .doc up in OpenOffice and resave as a pdf?

Re: Galactic Navy JS OXP

Posted: Sat Jun 13, 2009 2:42 pm
by Eric Walch
DaddyHoggy wrote:
Could always open the .doc up in OpenOffice and resave as a pdf?
I agree, pdf format is easy readable by the default mac texteditor.

Posted: Sat Jun 13, 2009 7:49 pm
by Nemoricus
I already have it in .txt format. Will it hurt anything to leave it that way?

Also, I haven't really gotten a response to my original question, which is whether I should release the conversion.

Posted: Sat Jun 13, 2009 7:51 pm
by Screet
Nemoricus wrote:
I already have it in .txt format. Will it hurt anything to leave it that way?

Also, I haven't really gotten a response to my original question, which is whether I should release the conversion.
I did suggest to make it a beta for testing. That way you can receive more response and if Matt shows up, decide together which way to go with it. I guess he'd be happy about the conversion and fixes to that oxp. From the previously reported message from him it appears to me that he didn't notice how much his oxp is liked.

Screet

Posted: Sat Jun 13, 2009 10:41 pm
by Capt. Slog
Screet, Nemiricus
I'd hoped that Matt would respond but... I can't see a problem with releasing a version that works. My enjoyment of this oxp was only spoilt by trying to debug it, I also now have the knowledge to cheat with other oxps. The finale had the potential to be an excellent mission and I see no reason why the oxp could not be expanded.

Posted: Sun Jun 14, 2009 2:13 am
by Nemoricus
Well, the opinion is positive so far, so unless anyone chimes in with a nay, I'll release the beta version on Monday.

Also, I'm currently debugging a fairly distinct change from matt634's script. In the original Galactic Navy OXP, the reserve missions were completed as soon as you entered the mission system. I'm working on revising this so that you actually have to take part in the battle in order to get credit for it.

There is still the possibility that it may conclude without your involvement, even if you are in system.

What do people think of this change? For the record, it won't be part of the beta release on Monday, even if I successfully debug it before then.

EDIT: I'm currently stuck trying to hunt down the source of a shipdata.plist error. The .plist is here.

The error log is:

Code: Select all

[log.header]: Opening log for Oolite version 1.72.2 (x86-32 test release) under Windows at 2009-06-13 21:50:10 -0400.
2 processors detected.
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]: Windows native resolution detected: 1024 x 768
[rendering.opengl.version]: OpenGL renderer version: 2.1.2 ("2.1.2")
Vendor: NVIDIA Corporation
Renderer: GeForce 7300 LE/PCI/SSE2
[rendering.opengl.extensions]: OpenGL extensions (132):
GL_ARB_color_buffer_float GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_framebuffer_object 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_shadow GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_dot3 GL_ARB_texture_float GL_ARB_texture_mirrored_repeat GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_transpose_matrix 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_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_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_framebuffer_object GL_EXT_gpu_program_parameters GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_pixels GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_stencil_two_side GL_EXT_stencil_wrap GL_EXT_texture3D 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_lod GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_sRGB GL_EXT_texture_swizzle GL_EXT_timer_query 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_copy_depth_to_color GL_NV_depth_clamp 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_half_float GL_NV_light_max_exponent GL_NV_multisample_filter_hint GL_NV_occlusion_query GL_NV_packed_depth_stencil GL_NV_pixel_data_range GL_NV_point_sprite GL_NV_primitive_restart GL_NV_register_combiners GL_NV_register_combiners2 GL_NV_texgen_reflection 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_vertex_array_range GL_NV_vertex_array_range2 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 GL_WIN_swap_hint WGL_EXT_swap_control 
[searchPaths.dumpAll]: ---> OXP search paths:
(oolite.app/Resources, AddOns, "AddOns/aegidian-special.oxp", AddOns/Anarchies2.1.oxp, "AddOns/Aquatics 2.00.oxp", "AddOns/AsteroidStorm 3.52.oxp", "AddOns/behemoth 2.5.1.oxp", "AddOns/BigShips 1.01.oxp", AddOns/BountyScanner.oxp, AddOns/buoyRepair1.02.1.oxp, AddOns/Commies.oxp, AddOns/Debug.oxp, "AddOns/DeepSpacePirates 1.1.oxp", "AddOns/Dictators v1.3.oxp", AddOns/dodo_stations.oxp, AddOns/dragon.oxp, "AddOns/Dredgers 2.2.2.oxp", "AddOns/Fuel Station 1.11.oxp", AddOns/Galactic_Navy.oxp, AddOns/GrittyCoriolis.oxp, AddOns/GrittyCoriolis.oxp/GrittyCoriolis.oxp, AddOns/impcourier2.oxp, AddOns/marett_vol1.oxp, "AddOns/MilHUD-new.oxp", "AddOns/neolite-companion.oxp", AddOns/neolite.oxp, AddOns/neolite.oxp/neolite.oxp, "AddOns/new 1.72 only AI 1.4.oxp", AddOns/newships.oxp, AddOns/oldships.oxp, AddOns/Ore_processor.oxp, AddOns/Orisisv1.oxp, AddOns/PAGroove_Stations_v1.2.1.oxp, AddOns/RandomHits1.3.5.oxp, AddOns/System_Redux.oxp, "AddOns/Thorgorn_Threat 1.2.oxp", AddOns/tori.oxp, AddOns/wolfwoods_variants.oxp, "AddOns/x-ships.oxp", AddOns/YOUR_AD_HERE.oxp, AddOns/YOUR_AD_HERE_set_A.oxp, AddOns/YOUR_AD_HERE_set_B.oxp, AddOns/YOUR_AD_HERE_set_C.oxp, AddOns/YOUR_AD_HERE_set_D.oxp, AddOns/YOUR_AD_HERE_set_E.oxp, AddOns/YOUR_AD_HERE_set_F.oxp)
[dataCache.rebuild.explicitFlush]: Cache explicitly flushed with shift key. Rebuilding from scratch.
[gnustep]: 2009-06-13 21:50:11.453 oolite[5524] could not convert to UTF8 string! bytes=059f1c59 len=6

[shipData.load.begin]: Loading ship data...
  [plist.parse.foundation.failed]: Failed to parse AddOns/Galactic_Navy.oxp/Config/shipdata.plist as a property list using Foundation. Retrying using homebrew parser. WARNING: the homebrew parser is deprecated and will be removed in a future version of Oolite.
failed to parse as valid XML matching DTD
    [plist.homebrew.parseError]: ***** Property list error: closing tag </array> with no opening tag (expected </dict>).
    [plist.homebrew.parseError]: ***** Property list parser error: expected root element tokenization to be NSArray, but got (nil).
  [shipData.merge.failed]: ***** ERROR: one or more shipdata.plist entries have like_ship references that cannot be resolved: ("grs-womasilo", "grs-womasiloRev", "repaired-buoy-docker1", "repaired-buoy-womaRev")
  [shipData.load.error]: ***** ERROR: the shipdata.plist entry "comlimesc" has a broken subentity definition "*FLASHER* 0.04.42 -1.54 0.0 2" (should have 8 tokens, has 5).
  [shipData.load.error]: ***** ERROR: the shipdata.plist entry "comlimesc" has a broken subentity definition "*FLASHER* 3.83 -2.21 -1.54 0.0 2" (should have 8 tokens, has 6).
  [shipData.load.error]: ***** ERROR: the shipdata.plist entry "comlimesc" has a broken subentity definition "*FLASHER* -3.83 -2.21 -1.54 0.0 2" (should have 8 tokens, has 6).
  [shipData.load.error]: ***** ERROR: the shipdata.plist entry "PAGroove-coriolis-reference" specifies no model.
  [shipData.load.error]: ***** ERROR: the shipdata.plist entry "PAGroove-icosahedron-reference" specifies no model.
  [shipData.load.error]: ***** ERROR: the shipdata.plist entry "dock-factory" specifies non-existent model "comfactory_dock.dat".
  [shipData.load.error]: ***** ERROR: the shipdata.plist entry "PAGroove-dodecahedron-reference" specifies no model.
[script.load.world.listAll]: Loaded 25 world scripts: "Anarchies" 2.1, "aquatics_equipment" 1.1, "aquatics_populator" 1.0, "AsteroidStorm" 3.52, "behemoth" 2.5.1, "bigShips_populator" 1.0, "Bounty Scanner" 1.04, "buoyRepair" 1.02, "communist_population", "deep_space_dredger" 2.2.2, "deep_space_pirates" 1.1, "dictatorship_population", "FuelStation-Setup" 1.00, "GalNavy" Build 0112, "hofd" GalNavy Build 102 / HOFD Build 53, "oolite-cloaking-device" 1.72.2, "oolite-constrictor-hunt" 1.72.2, "oolite-nova" 1.72.2, "oolite-thargoid-plans" 1.72.2, "oolite-trumbles" 1.72.2, "OreProcessorGems" 1.51, "Pi-Forty-Two Con stores" , "Random_Hits", "System Redux 1.2" 1.2, "Thargorn_Witchspace_Battle" 1.2
[dataCache.willWrite]: About to write data cache.
[dataCache.write.success]: Wrote data cache.
[debugTCP.connected]: Connected to external debug console "DebugConsole".
[script.AsteroidStorm.cleanup]: Asteroid Storm finished, or player in another galaxy. Disabling script.
[shipRegistry.selection.profile]: Hit slow path in ship selection for role "interceptor", having selected ship "comviper". Now 10 of 77 on slow path (12.987013%).
[script.addShips.failed]: SCRIPT ERROR in <anonymous actions> ***** CANNOT addShipsAtPrecisely: 'navystat75 1 psu 0 0 0.1' (should be addShipsAtPrecisely: role number coordinate_system x y z)
[script.addShips.failed]: SCRIPT ERROR in <anonymous actions> ***** CANNOT 'addShipsWithinRadius: picket-frigate 2 psu 0 0 0.1 5000' (should be 'addShipsWithinRadius: role number coordinate_system x y z r')
[script.addShips.failed]: SCRIPT ERROR in <anonymous actions> ***** CANNOT 'addShipsWithinRadius: picket-minesweeper 2 psu 0 0 0.1 5000' (should be 'addShipsWithinRadius: role number coordinate_system x y z r')
[script.addShips.failed]: SCRIPT ERROR in <anonymous actions> ***** CANNOT 'addShipsWithinRadius: picket-transport 3 psu 0 0 0.1 5000' (should be 'addShipsWithinRadius: role number coordinate_system x y z r')
[script.addShips.failed]: SCRIPT ERROR in <anonymous actions> ***** CANNOT addShipsAtPrecisely: 'picket-frigate 1 wpu 0 0 0.01' (should be addShipsAtPrecisely: role number coordinate_system x y z)
[script.addShips.failed]: SCRIPT ERROR in <anonymous actions> ***** CANNOT 'addShipsWithinRadius: picket-viper 4 wpu 0 0 0.01 500' (should be 'addShipsWithinRadius: role number coordinate_system x y z r')
[script.addShips.failed]: SCRIPT ERROR in <anonymous actions> ***** CANNOT addShipsAtPrecisely: 'picket-transport 1 psu 0 0 0.11' (should be addShipsAtPrecisely: role number coordinate_system x y z)
[script.AsteroidStorm.cleanup]: Asteroid Storm finished, or player in another galaxy. Disabling script.
[shipRegistry.selection.profile]: Hit slow path in ship selection for role "sunskim-trader", having selected ship "workcom". Now 20 of 127 on slow path (15.748031%).
[bigShips_populator]: 1 big trader(s) added to the Anvere system.
[shipRegistry.selection.profile]: Hit slow path in ship selection for role "rockhermit", having selected ship "astromine". Now 30 of 236 on slow path (12.711864%).
[bigShips_populator]: 1 big trader(s) added to the Cerexe system.
[script.addShips.failed]: SCRIPT ERROR in <anonymous actions> ***** CANNOT addShipsAtPrecisely: 'navy-behemoth 1 wpu 0.000000 0.000000 0.500000' (should be addShipsAtPrecisely: role number coordinate_system x y z)
[script.addShips.failed]: SCRIPT ERROR in <anonymous actions> ***** CANNOT addShipsAtPrecisely: 'navy-frigate 1 wpu 0.000000 0.000000 0.510000' (should be addShipsAtPrecisely: role number coordinate_system x y z)
[script.addShips.failed]: SCRIPT ERROR in <anonymous actions> ***** CANNOT addShipsAtPrecisely: 'navy-frigate 1 wpu 0.000000 0.000000 0.490000' (should be addShipsAtPrecisely: role number coordinate_system x y z)
[script.addShips.failed]: SCRIPT ERROR in <anonymous actions> ***** CANNOT addShipsAtPrecisely: 'reserve-leader 1 wpu 0.000000 0.000000 0.020000' (should be addShipsAtPrecisely: role number coordinate_system x y z)
[script.addShips.failed]: SCRIPT ERROR in <anonymous actions> ***** CANNOT 'addShipsWithinRadius: reserve-ship 4 wpu 0.000000 0.000000 0.010000 1000.000000' (should be 'addShipsWithinRadius: role number coordinate_system x y z r')
I cannot find that missing </dict> anywhere in code.

Will anyone help me find that problem? I've looked multiple times for it myself, but to no avail.

Posted: Sun Jun 14, 2009 7:17 am
by Screet
Nemoricus wrote:
There is still the possibility that it may conclude without your involvement, even if you are in system.

What do people think of this change? For the record, it won't be part of the beta release on Monday, even if I successfully debug it before then.
I did wonder about that in the original...I think it would be great if the mission is only removed after finalization, and it would also be great if there were some sort of "hey, don't let us do all the work alone!" sort of message if the player is trying to avoid the battle ;)
Nemoricus wrote:
EDIT: I'm currently stuck trying to hunt down the source of a shipdata.plist error.

I cannot find that missing </dict> anywhere in code.

Will anyone help me find that problem? I've looked multiple times for it myself, but to no avail.
The only difference I see from your plist with other plists is, that you sometimes use dict and /dict within death-actions. Could that be the problem? EDIT: No, should not be it...I just found a similar setup in military fiasco.

Screet

..

Posted: Sun Jun 14, 2009 7:18 am
by Lestradae
Nemoricus wrote:
Will anyone help me find that problem? I've looked multiple times for it myself, but to no avail.
Morning exercise ...

I think there is no "</dict>" missing, but in line 3321, there is a lonely "</array>" that was never preceded by an "<array>" - take that out and the shipdata.plist should at least have no syntactical errors any more.

Oh, and I suggest to use this here:

http://validator.w3.org/#validate_by_input

... to check plist files - without it I would have gone insane many times.

Hope that helps

L

Re: ..

Posted: Sun Jun 14, 2009 7:33 am
by Diziet Sma
Lestradae wrote:

Oh, and I suggest to use this here:

http://validator.w3.org/#validate_by_input

... to check plist files - without it I would have gone insane many times.

Hope that helps

L
How do you check a plist with it? When I tried, it just had a hissy-fit.. Well, it did when I uploaded it.. before that, as direct input, it crashed firefox... :evil:

Re: ..

Posted: Sun Jun 14, 2009 8:07 am
by Lestradae
Diziet Sma wrote:
How do you check a plist with it? When I tried, it just had a hissy-fit.. Well, it did when I uploaded it.. before that, as direct input, it crashed firefox... :evil:
Well, I do it via direct input - and I use IE8. %/&$%. Don't ask, but at least the direct input validation works.

Was to remove the rogue "</array>" a working solution?

Cheers

L