Pods OXP

Discussion and information relevant to creating special missions, new ships, skins etc.

Moderators: another_commander, winston

Rustem
Deadly
Deadly
Posts: 170
Joined: Mon May 25, 2015 5:23 pm
Location: Russia

Re: Pods OXP

Post by Rustem »

Hi!

Need integration this OXP with cargopods from Cargo Wreck Teaser and Svengali CCL OXP like external dependency?

Rustem
Deadly
Deadly
Posts: 170
Joined: Mon May 25, 2015 5:23 pm
Location: Russia

Re: Pods OXP

Post by Rustem »

Who want seen working pods from Cargo Wreck Teaser OXP in the oolite 1.84(and more) download from link. It is worked in the newer oolite releases. It is temp link and not official version, may be Arexack Heretic will updated its.

Fleurghber
Dangerous
Dangerous
Posts: 93
Joined: Sat Oct 07, 2017 1:24 pm

Re: Pods OXP

Post by Fleurghber »

Latest startup log, testing the new version:

"Opening log for Oolite version 1.84 (x86-64) under Mac OS X Version 10.9.5 (Build 13F1911) at 2017-10-27 11:05:51 am +0000.
Machine type: iMac14,1, 8192 MiB memory, 4 x x86 (Haswell) @ 2700 MHz.
Build options: OpenAL, new planets.

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

12:05:51.339 [dataCache.rebuild.pathsChanged]: Cache is stale (search paths have changed). Rebuilding from scratch.
12:05:51.395 [system]: Invalid color System, labelColor (warning given only once)
12:05:51.544 [rendering.opengl.version]: OpenGL renderer version: 2.1.0 ("2.1 INTEL-8.28.37"). Vendor: "Intel Inc.". Renderer: "Intel Iris Pro OpenGL Engine".
12:05:51.544 [rendering.opengl.extensions]: OpenGL extensions (128):
GL_EXT_texture_compression_dxt1, GL_EXT_rescale_normal, GL_EXT_transform_feedback, GL_EXT_blend_func_separate, GL_EXT_framebuffer_sRGB, GL_ATI_texture_env_combine3, GL_ARB_draw_elements_base_vertex, GL_EXT_debug_label, GL_EXT_geometry_shader4, GL_EXT_secondary_color, GL_EXT_separate_specular_color, GL_EXT_shadow_funcs, GL_NV_texgen_reflection, GL_NV_blend_square, GL_ARB_texture_compression_rgtc, GL_EXT_stencil_wrap, GL_ARB_texture_env_crossbar, GL_EXT_framebuffer_blit, GL_ATI_separate_stencil, GL_APPLE_vertex_point_size, GL_EXT_texture_rectangle, GL_APPLE_specular_vector, GL_EXT_packed_depth_stencil, GL_EXT_blend_color, GL_ARB_fragment_program_shadow, GL_EXT_texture_env_add, GL_EXT_provoking_vertex, GL_EXT_texture_array, GL_ARB_texture_env_combine, GL_ARB_point_sprite, GL_ARB_multisample, GL_EXT_framebuffer_object, GL_ARB_framebuffer_sRGB, GL_EXT_texture_lod_bias, GL_APPLE_pixel_buffer, GL_ARB_vertex_program, GL_EXT_bgra, GL_APPLE_fence, GL_APPLE_ycbcr_422, GL_EXT_timer_query, GL_EXT_vertex_array_bgra, GL_ARB_depth_clamp, GL_IBM_rasterpos_clip, GL_ARB_pixel_buffer_object, GL_SGIS_generate_mipmap, GL_EXT_framebuffer_multisample_blit_scaled, GL_ARB_shader_texture_lod, GL_ARB_texture_float, GL_ARB_texture_rectangle, GL_ARB_vertex_shader, GL_NV_texture_barrier, GL_ARB_provoking_vertex, GL_ARB_texture_env_add, GL_APPLE_object_purgeable, GL_ARB_texture_env_dot3, GL_APPLE_rgb_422, GL_NV_depth_clamp, GL_ARB_texture_mirrored_repeat, GL_ARB_texture_cube_map, GL_APPLE_element_array, GL_ATI_texture_float, GL_ARB_window_pos, GL_ARB_sync, GL_ARB_vertex_buffer_object, GL_APPLE_texture_range, GL_NV_conditional_render, GL_EXT_stencil_two_side, GL_ARB_texture_compression, GL_ARB_instanced_arrays, GL_EXT_blend_minmax, GL_ARB_texture_border_clamp, GL_EXT_draw_buffers2, GL_ARB_shading_language_100, GL_EXT_blend_equation_separate, GL_ARB_vertex_blend, GL_EXT_blend_subtract, GL_EXT_packed_float, GL_APPLE_aux_depth_stencil, GL_APPLE_row_bytes, GL_NV_light_max_exponent, GL_EXT_abgr, GL_EXT_texture_filter_anisotropic, GL_ARB_vertex_array_bgra, GL_ARB_draw_buffers, GL_ARB_transpose_matrix, GL_ARB_color_buffer_float, GL_EXT_gpu_program_parameters, GL_APPLE_client_storage, GL_ARB_texture_non_power_of_two, GL_ARB_multitexture, GL_EXT_gpu_shader4, GL_APPLE_flush_render, GL_ARB_framebuffer_object, GL_APPLE_vertex_program_evaluators, GL_APPLE_transform_hint, GL_EXT_texture_compression_s3tc, GL_APPLE_flush_buffer_range, GL_EXT_texture_integer, GL_SGIS_texture_edge_clamp, GL_NV_fog_distance, GL_ARB_occlusion_query, GL_ARB_fragment_shader, GL_ARB_texture_rg, GL_ARB_fragment_program, GL_ARB_seamless_cube_map, GL_ARB_shader_objects, GL_EXT_draw_range_elements, GL_APPLE_vertex_array_object, GL_ARB_depth_texture, GL_EXT_texture_sRGB, GL_ARB_half_float_vertex, GL_APPLE_vertex_array_range, GL_ARB_shadow, GL_EXT_multi_draw_arrays, GL_ARB_half_float_pixel, GL_APPLE_packed_pixels, GL_ARB_point_parameters, GL_EXT_debug_marker, GL_EXT_texture_sRGB_decode, GL_EXT_clip_volume_hint, GL_SGIS_texture_lod, GL_EXT_fog_coord, GL_EXT_texture_shared_exponent, GL_ATI_texture_mirror_once, GL_APPLE_float_pixels, GL_EXT_framebuffer_multisample, GL_ARB_depth_buffer_float, GL_ARB_draw_instanced
12:05:51.549 [rendering.opengl.shader.support]: Shaders are supported.
12:05:51.686 [dataCache.rebuild.pathsChanged]: Cache is stale (search paths have changed). Rebuilding from scratch.
12:05:51.686 [searchPaths.dumpAll]: Resource paths:
~/Desktop/Games and things/Elite family/Oolite-1.84/Oolite 1.84/Oolite.app/Contents/Resources
~/Library/Application Support/Oolite/Managed AddOns
~/Library/Application Support/Oolite/AddOns
~/Library/Application Support/Oolite/Managed AddOns/oolite.oxp.Thargoid.Pods.oxz
12:05:51.695 [shipData.load.begin]: Loading ship data.
12:05:51.709 [shipData.merge.failed]: ***** ERROR: one or more shipdata.plist entries have like_ship references that cannot be resolved: pods_CWT_breachBarrel, pods_CWT_emptyBarrel, pods_CWT_explodingBarrel, pods_CWT_jamBarrel, pods_CWT_piggybankBarrel, pods_CWT_retryBarrel, pods_CWT_trumbleBarrel, pods_CWTa_1tBarrel, pods_CWTb_1tBarrel, pods_CWTc_1tBarrel, pods_UPS_1tBarrel_1, pods_UPS_breachBarrel, pods_UPS_emptyBarrel, pods_UPS_explodingBarrel, pods_UPS_jamBarrel, pods_UPS_piggybankBarrel, pods_UPS_retryBarrel, pods_UPS_trumbleBarrel
12:05:52.537 [startup.complete]: ========== Loading complete in 1.12 seconds. ==========
12:05:53.450 [exit.context]: Exiting: Exit Game selected on start screen.

Closing log at 2017-10-27 11:05:53 am +0000."

Rustem
Deadly
Deadly
Posts: 170
Joined: Mon May 25, 2015 5:23 pm
Location: Russia

Re: Pods OXP

Post by Rustem »

Fleurghber wrote:
Fri Oct 27, 2017 11:08 am
***** ERROR: one or more shipdata.plist entries have like_ship references that cannot be resolved: pods_CWT_..., .., pods_UPS_...
Thanks, it is fixed.

Need add: is_external_dependency = yes; for shipdata from UPS Courier and Cargo Wreck Teaser OXP:
This fix will included in the next release.

If you added UPS Courier and Cargo Wreck Teaser OXP, this error not logging.

Rustem
Deadly
Deadly
Posts: 170
Joined: Mon May 25, 2015 5:23 pm
Location: Russia

Re: Pods OXP

Post by Rustem »

Version 1.42

- Added a routine for checking a setCargo by other OXPs and etc.
- Added logging condition in the pod ship.script.

Rustem
Deadly
Deadly
Posts: 170
Joined: Mon May 25, 2015 5:23 pm
Location: Russia

Re: Pods OXP

Post by Rustem »

Question:
1) Think, need add this feature to a missile pod?:

If you not have a free pylon. Then a missile pod will scooped as firearms. If you have a free pylon and it has been scooped missile pod to the cargo hold. If you like, so you can dumping a firearms and re-scooped for mount to pylon.

2) If player(NPC also) scooped a Bulk Container. It is should be placed in the cargo hold on the 1t-container?

Then if want drop its, then he eject a single 1t-container, rather than a Bulk Container.

3) How reset a content to emty in the cargopod with commodity. It is read-only?

User avatar
phkb
Commodore
Commodore
Posts: 2507
Joined: Tue Jan 21, 2014 10:37 pm
Location: [p]laying [h]ard and [k]icking [b]utt somewhere in G7...

Re: Pods OXP

Post by phkb »

Rustem wrote: How reset a content to emty in the cargopod with commodity.
The cargopod.setCargo(commodity, amount); will set the commodity type and quantity, but anything more than 1t will be reset back to 1t.
Rustem wrote: If player(NPC also) scooped a Bulk Container. It is should be placed in the cargo hold on the 1t-container?
By default, cargo pods in space are designed to contain a maximum of 1t. When you launch from a station, the cargo marshalling process takes all your available cargo and puts it in your hold as 1t containers so it can be ejected 1t at a time.

It looks like the bulk containers in "Pods" are subverting this a bit, by awarding the player a random tonnage of cargo when it's scooped. The method it appears to use will add a series of 1t containers to your hold, not one container with more than 1t in it. Even if you could adjust the quantity of a cargo pod to more than 1t after being ejected, it would take quite a bit of overhead to monitor and adjust ejected pods, particularly for something that is likely a small scenario. You then also run into problems if a pod with 10t is re-scooped by the player when they have less than 10t space available? What happens to the excess?

My feeling is that trying to get around the 1t cargo pod limit is an exercise in frustration and may not be worth it. I think the only thing you need is some hand-wavium to explain why a bulk container gets broken down into 1t containers as soon as it's scooped.

Rustem
Deadly
Deadly
Posts: 170
Joined: Mon May 25, 2015 5:23 pm
Location: Russia

Re: Pods OXP

Post by Rustem »

phkb wrote:
Tue Nov 21, 2017 3:49 am
... , but anything more than 1t will be reset back to 1t.
So set to amount = 0 is not possible for pod? Better removed cargo pod fully?
phkb wrote:
Tue Nov 21, 2017 3:49 am
.... why a bulk container gets broken down into 1t containers as soon as it's scooped.
Ok!
Next question: If player scooped a Bulk Container with Gem-Stones(Gold), then Gem-Stones is should be placed in the new 1t-container or saved in the initial Bulk Container:

Code: Select all

// set a new barrels: scooper.manifest[type] += quantity;
or

Code: Select all

 // save a barrel: this.ship.setCargo(type, quantity);
What is correctly for kg/gram-cargo bulk barrel?

Rustem
Deadly
Deadly
Posts: 170
Joined: Mon May 25, 2015 5:23 pm
Location: Russia

Re: Pods OXP

Post by Rustem »

Version 1.43

- Code refactoring: released one script for Bulk container with NPC-scooping feature.
- Added a routine for checking a shipUniqueName for renew of the pod name (for cargo scanner).
- Modified the missilePod script for player-rescooping.
- Upgraded all scripts for NPC-scooping.

User avatar
phkb
Commodore
Commodore
Posts: 2507
Joined: Tue Jan 21, 2014 10:37 pm
Location: [p]laying [h]ard and [k]icking [b]utt somewhere in G7...

Re: Pods OXP

Post by phkb »

Rustem wrote: If player scooped a Bulk Container with Gem-Stones(Gold), then Gem-Stones is should be placed in the new 1t-container or saved in the initial Bulk Container:
Gold, platinum and gems can have more than 1 unit in a cargo pod. When (say) 10g of gems is scooped, it stays in your hold as a 10g cargo pod - you can then eject it like you would any other commodity. After you dock the gems are transferred into your ships safe, so that, when you next launch, you won't be able to eject the gems any more. So, in summary, if the bulk container contains gold, platinum or gems, it can be left as is (and in fact, it's not really a "bulk" container).

I just did a test and was successful in putting 1000kg of gold in a pod, scooped it, ejected it, and it still had 1000kg (=1t). Did the same test with 1000000g (=1t) of gem stones. Anything more than those values, though, and the pod will be reset back to the 1t maximum.
Rustem wrote:What is correctly for kg/gram-cargo bulk barrel?

Code: Select all

cargoPod.setCargo(type, quantity);

Rustem
Deadly
Deadly
Posts: 170
Joined: Mon May 25, 2015 5:23 pm
Location: Russia

Re: Pods OXP

Post by Rustem »

Someone can help correctly write commMessege for NPC the next part:

Code: Select all

	"msg_breach" =
	(
		"Alert! Bad cargo pod!",
	);
	"msg_exploding" =
	(
		"Stop my walk ...",
		"Alert! Bad cargo pod!",
		"Scooped a dangerous good!",
		"My scoops finished, now go home station?",
	);
	"msg_jamming" =
	(
		"It is not sweet cargo!",
		"Fuel buy, repair buy in station!",
		"Damaged cargo scoop, repair bot help me?",
	); 
Breach:

Code: Select all

				if (Math.random() > 0.5) {
					msg = "Who transported it is bad " + expandDescription('[pods_radioactives]') + " as " + displayNameForCommodity(type) + "?";
				} else {
					msg = "Help, it is deadly " + displayNameForCommodity(type) + "! Hull breach...";
				} 
Exploding:

Code: Select all

				if (Math.random() > 0.5) {
					msg = expandDescription('[msg_exploding]');
				} else {
					msg = "It is bad cannister for " + expandDescription('[pods_firearms]') + "!";
				} 
Jam:

Code: Select all

				msg = expandDescription('[msg_jamming]');
May be need edited a text and added some messages? It is messages send by NPC-ships in the scooping a Jam, Breach(planned to add) and Exploding pods. Sorry my bad English.

It is released in the Pods OXP v1.44.

Post Reply