(Release) Station Dock Control OXP

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

Moderators: another_commander, winston

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

Re: (BETA) Station Dock Control OXP

Post by phkb »

I've been thinking about the "Request launch before/after ship" functionality, and I think the current system makes it too easy for the player to avoid having to make long jumps by themselves. Prior to this OXP, if you needed to reach a planet 6.8 LY away, you either had to sit outside the station and hope for a ship going your way, or do it yourself and have virtually no fuel for dog-fighting/fleeing. So I'm looking for a way to make it harder for the player to know what the destination of a ship is.

One option is to force the player to purchase some sort of license that would allow them to see the destinations. The license would need to be purchased per government type (ie. one license for Corp States, one for Democracies, etc), and it would take at least 1 jump before the license would be in effect (ie. you couldn't just purchase a license and then see the destinations). Licenses would expire after a period of time (1 week of game time, maybe). Once you have a valid license you would be able to see the destinations for those ships that are allowing their destination to be viewed.

Another options is to only show the destinations for ships that are due to depart in less than 2 hours. Anything more than that and their destination is hidden, as it already is for ships in the Loading/Docked/Unloading/Docking state.

Combining both those options is also possible.

Any suggestions, anyone?

User avatar
Mazur
Dangerous
Dangerous
Posts: 110
Joined: Thu Jun 04, 2015 7:53 pm

Re: (BETA) Station Dock Control OXP

Post by Mazur »

phkb wrote:I've been thinking about the "Request launch before/after ship" functionality, and I think the current system makes it too easy for the player to avoid having to make long jumps by themselves. Prior to this OXP, if you needed to reach a planet 6.8 LY away, you either had to sit outside the station and hope for a ship going your way, or do it yourself and have virtually no fuel for dog-fighting/fleeing. So I'm looking for a way to make it harder for the player to know what the destination of a ship is.

One option is to force the player to purchase some sort of license that would allow them to see the destinations. The license would need to be purchased per government type (ie. one license for Corp States, one for Democracies, etc), and it would take at least 1 jump before the license would be in effect (ie. you couldn't just purchase a license and then see the destinations). Licenses would expire after a period of time (1 week of game time, maybe). Once you have a valid license you would be able to see the destinations for those ships that are allowing their destination to be viewed.

Another options is to only show the destinations for ships that are due to depart in less than 2 hours. Anything more than that and their destination is hidden, as it already is for ships in the Loading/Docked/Unloading/Docking state.

Combining both those options is also possible.

Any suggestions, anyone?
First off: the price of these licenses needs careful thinking. There are two main reasons to buy them: saving fuel cost and avoiding empty tanks in risky environs. in the first case, if the price is greater than the fuel costs saved for its duration, it's a no-brainer: don't buy. In the second case:
it depends totally on what someone would care to spend to avoid having to restart at their point of departure after getting killed. In my case that's almost nothing. Unless there are pirates at the exit, I set course for alternate stations anyway, if i'm low on fuel.

Second: a week game time is rather short, long jumps (near 7 ly) take two days(?), three of those and your license is near useless and you may not even have reached the next similarly governed system yet. I'd hardly bother to even look at them unless they had use for a longer time-span, e.g. 3 months. That'd take you across half a galaxy (?) before renewal is needed. Bear in mind you need eight of them anyway, if you want that king of thing.

The shorter time to depart before listing has merit, if you desire to restrict the information: after all, it's still a heavily pirated universe and the danger might induce private traders not to list their destination early, widely, or at all, certainly if they are small. if for instance I were to lose my ship, I would be stranded, unable to buy a new ship, still.

On a totally different note, I just left the Collector and was astounded to see 8 pages of ships there. The man is supposed to be a recluse, and "hard to find", sort of. just a thought.
User Mazur, Commander Vatta, Hyperspace Delivery Boy.
Squeaky clean, utterly harmless, rank amateur.

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

Re: (BETA) Station Dock Control OXP

Post by phkb »

Thanks Mazur, they're good suggestions. I'm not completely sold on the whole purchase a license thing yet. Limiting the time frame where destinations can be viewed is easy and will be in the next version. I see how that plays for a while. And regarding the collector, yeah that's a bug. I didn't realise the collector had a station in it. Next version will turn off the dock list for his hideaway.

User avatar
Mazur
Dangerous
Dangerous
Posts: 110
Joined: Thu Jun 04, 2015 7:53 pm

Re: (BETA) Station Dock Control OXP

Post by Mazur »

phkb wrote:Thanks Mazur, they're good suggestions. I'm not completely sold on the whole purchase a license thing yet. Limiting the time frame where destinations can be viewed is easy and will be in the next version. I see how that plays for a while. And regarding the collector, yeah that's a bug. I didn't realise the collector had a station in it. Next version will turn off the dock list for his hideaway.
Makes sense, as his Market neither sells nor buys, either.

Personally, I'm not seeing the whole problem with most destinations posted, as they are now, anyway, if you're seriously trading, you are carrying quite a few parcels, all time sensitive, and are playing a dangerous game wasting time to save fuel waiting for someone to go your direction: I've had on occasion been forced to use a deviation from the fastest course to avoid pirates at exit points in a cluster of Anarchic systems.
User Mazur, Commander Vatta, Hyperspace Delivery Boy.
Squeaky clean, utterly harmless, rank amateur.

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

Re: (BETA) Station Dock Control OXP

Post by phkb »

Version 0.9.0 is now available. In this version:
  • Further tweaks to what stations shuttles can be sent to.
  • When a wide font is used, the number of ships docking displayed in the MFD is no longer hidden.
  • Tweaked the title of the dock list so it stays within the normal window bounds with wide fonts.
  • Fixed issue where cancelling a docking request was not removing the player ship from the MFD list.
  • Fixed issue where an expired docking request was not removing the player ship from the MFD list.
  • Put "bigTrader" ships into the "no traffic" list, because these ships are likely to disappear between saves, meaning all the dock data will error when attempting to launch.
  • Put interface option text into description.plist file.
  • Checks for the "allow_big_gui" option on HUD's.
  • Added station roles from the Bank of the Black Monks OXP.
  • Added station roles from the Jaguar Company OXP.
  • Added station roles from the Collector OXP.
  • Added station roles from the Aquatics OXP.
  • Added station roles from the Resistance Commander OXP.
  • Added station roles from the Lave Academy OXP.
  • Added station roles from the Free Trade Zone OXP.
  • Added station roles from the Planetfall OXP.
  • Added dock versions of ships from the Aquatics OXP.
  • Ships destinations will now only become visible when the ship's depature time is under 2 hours.

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

Re: (BETA) Station Dock Control OXP

Post by phkb »

Version 0.9.5 is now available. In this version:
  • Added check for player ship when docking ships. In a fast-dock scenario the player ship will otherwise try to be docked like other ships.
  • Removed the ability to view other station docks (accidentally left on during debugging).
  • Reduced logging level to minimal.
  • Added functionality to add custom menu items to a ship display.
  • Added Generation ships to all exclusions.
  • MFD will now auto-hide itself when the target station goes out of range, and reopen when another station is targeted, if the same MFD slot is still available.
Edit: There is a small bug somewhere that I'm having trouble tracking down. Essentially, a series of events causes the entire contents of the dock to be expunged. I think it's a combination of equipment purchases, but, as I said, I'm having a hard time reproducing it. If anyone sees this phenomena, and has a saved game from which a definite series of steps can be performed to recreate the bug, please let me know!

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

Re: (BETA) Station Dock Control OXP

Post by phkb »

OK, having just posted that I couldn't reproduce the error, I think I got a fix so that the scenario won't turn up. Version 0.9.6 is now available.

Anonymissimus
---- E L I T E ----
---- E L I T E ----
Posts: 299
Joined: Mon Apr 27, 2015 9:03 pm

Re: (BETA) Station Dock Control OXP

Post by Anonymissimus »

Detection of pirate coves becomes straight forward with this addon. If the docking queue MFD doesn't show up when locked onto it from the edge of the scanner ranger range, it's a cove. Generally enough for heading away before they attack if desired.
I suggest that the docking MFD is disabled for rock hermits in case that pirate cove is installed. When docked the pirate cove status is revealed anyway so no change necessary.
warning sound if a missile is inbound: Missile warning

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

Re: (BETA) Station Dock Control OXP

Post by phkb »

Yeah, that's a good point. I'll get an update out shortly.

OK, new version is up.
Version 0.9.9
  • Added Monkey Patch when required to make this OXP compatible with other OXP's that use "otherShipDocked" on stations.
  • Added dock versions of ships from the Wildships OXP.
  • Added dock versions of ships from the Random Hits OXP.
  • Added routines to check for an escort launching before the mothership.
  • Added pirate coves to station list.
  • Added all rock hermits and pirate coves to list of destinations excluded for shuttles.
  • If a ship using a plist AI docks, they should now get that AI back on launch.
  • Added an overlay background to the Station interface screen.
  • Fixed bug in rescheduler that was preventing rescheduled ships from ever launching.
Edit: Ah, I think I misunderstood your point. Must be the flu. This release won't fix the issue of the MFD showing up for RH but not for pirate coves. I think I'll restrict the MFD to just GalCop aligned stations.

OK, version 0.9.10 restricts the MFD to only GalCop aligned stations, which makes sense I think.

Anonymissimus
---- E L I T E ----
---- E L I T E ----
Posts: 299
Joined: Mon Apr 27, 2015 9:03 pm

Re: (BETA) Station Dock Control OXP

Post by Anonymissimus »

The order in which inbound ships are shown is not the queue. I am number 2 says the station and I really am but are shown as 5 in the MFD. Perhaps a bug, otherwise it's a feature request.
warning sound if a missile is inbound: Missile warning

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

Re: (BETA) Station Dock Control OXP

Post by phkb »

Unfortunately there is no interface to the order of ships docking. The dock entity of the station has a dockingQueueLength property, and I can scan ships to see what their destination is, but there's no queue. I'm just sorting the list alphabetically.

User avatar
Norby
---- E L I T E ----
---- E L I T E ----
Posts: 2564
Joined: Mon May 20, 2013 9:53 pm
Location: Budapest, Hungary (Mainly Agricultural Democracy, TL10)
Contact:

Re: (BETA) Station Dock Control OXP

Post by Norby »

phkb wrote:I'm just sorting the list alphabetically.
How about if you display the actual distance of ships from the station in km (next or instead of "Inbound") and order by this number?

beo
Mostly Harmless
Mostly Harmless
Posts: 2
Joined: Sun Sep 20, 2015 7:59 am

Re: (BETA) Station Dock Control OXP

Post by beo »

Hailings Jamesons! :lol:

phkb love your expansions!

You asked if people thought other numbers work or feel better.
For me it has to be less although I recently read The Dark Wheel and the description of the space station in there suggests your numbers
could be believable, too. I may have overdone it a bit, too. Maybe meet somewhere in the middle?

This is a diff from an older version of stationdockcontrol.js vs your current one but I am sure you spot what my intended changes were/are (namely adding some stations and cutting down on ships in hangars):

Code: Select all

6c6
< this.licence     = "CC BY-NC-SA 3.0";
---
> this.licence     = "CC BY-NC-SA 4.0";
120,121c120,121
< this._trafficMedium = ["constore", "random_hits_any_spacebar", "sfep_station"];
< this._trafficLow = ["rrs_group_spacestation", "rrs_astromine", "rrs-mining-outpost", "casinoship", "comczgf", "wildShips_kiota", "bigTrader", "ups_dependance", "ups_dependance2",
---
> this._trafficMedium = ["constore", "yah_set_B_constore", "yah_set_C_constore", "yah_set_D_constore", "yah_set_E_constore", "yah_set_G_constore", "random_hits_any_spacebar", "sfep_station"];
> this._trafficLow = ["rrs_group_spacestation", "rrs_astromine", "rrs-mining-outpost", "casinoship", "comczgf", "wildShips_kiota", "wildShips_kiota2Solar", "wildShips_kiota4Solar", "wildShips_kiota2Spur", "wildShips_kiota4RingV", "bigTrader", "ups_dependance", "ups_dependance2",
123c123
< this._trafficVeryLow = ["rockhermit", "rockhermit-chaotic", "rockhermit-pirate", "pirate-cove", "repaired-buoy-station", "anarchies_renegade_station", "anarchies_salvage_gang", "GW-rock-hermit", "free_trade_zone"];
---
> this._trafficVeryLow = ["rockhermit", "rockhermit-chaotic", "rockhermit-pirate", "repaired-buoy-station", "anarchies_renegade_station", "anarchies_salvage_gang", "GW-rock-hermit", "free_trade_zone"];
127c127
< 		"jaguar_company_base", "GW-fuel-processor", "GW-comms-station", "generationship", "IST_genship carrier", "rockhermit", "rockhermit-chaotic", "rockhermit-pirate", "pirate-cove"];
---
> 		"jaguar_company_base", "GW-fuel-processor", "GW-comms-station", "generationship", "IST_genship carrier"];
504,509d503
< 				// check for and save any previous script in otherShipDocked
< 				if (station.script.otherShipDocked) {
< 					if (this._debug) log(this.name, "Monkey patch being applied to " + station.name);
< 					station.script.$sdc_hold_otherShipDocked = station.script.otherShipDocked;
< 				}
< 				// attach our script to the otherShipDocked event
613,614d606
< 	// if there was a previous script in place, run it here.
< 	if (this.ship.script.$sdc_hold_otherShipDocked) this.ship.script.$sdc_hold_otherShipDocked(whom);
838a831
> 
848c841
< 				} while (free == false || tries < 5);
---
> 				} while (free = false || tries < 5);
854a848
> 					done = true;
855a850
> 
1016,1018d1010
< 			case "Oolite Constrictor AI":
< 				aiName = "oolite-constrictorAI.js";
< 				break;
1046,1051d1037
< 			case "Null AI":
< 				// pick up the plist version of the ai
< 				if (ship.AI != "nullAI.plist") {
< 					aiName = ship.AI;
< 				}
< 				break;
1393c1379
< 			var factor = 0;
---
> 			var factor = 1;
1395c1381
< 			factor += this._neighbours.length * 5;
---
> 			factor += this._neighbours.length * 3;
1397c1383
< 			factor += system.government;
---
> 			factor += Math.round(system.government / 4);
1399c1385
< 			factor += system.techLevel;
---
> 			factor += Math.round(system.techLevel / 7);
1403c1389
< 			var max = factor * 6;
---
> 			var max = factor * 5;

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

Re: (BETA) Station Dock Control OXP

Post by phkb »

beo wrote:phkb love your expansions!
Thanks! I'm glad you like them!
beo wrote:

Code: Select all

> this._trafficMedium = ["constore", "yah_set_B_constore", "yah_set_C_constore", "yah_set_D_constore", "yah_set_E_constore", "yah_set_G_constore", "random_hits_any_spacebar", "sfep_station"];
> this._trafficLow = ["rrs_group_spacestation", "rrs_astromine", "rrs-mining-outpost", "casinoship", "comczgf", "wildShips_kiota", "wildShips_kiota2Solar", "wildShips_kiota4Solar", "wildShips_kiota2Spur", "wildShips_kiota4RingV", "bigTrader", "ups_dependance", "ups_dependance2",
I don't think all those extra YAH ships and Wildships are required, because I'm checking for stations based on role, not by name. All constores have a role of "constore", all wildships have a role of "wildShips_kiota", so only one entry is needed for each. Unless you noticed that some constores weren't getting included, in which case there's a bug!

As for your other adjustments, I'll have a play with them and see how it feels. If it keeps the Ooniverse stable, and stations still have a similar number of ships launching as they would without the OXP, I'll plug the numbers in permanently. Thanks for taking the time to experiment!

Edit: Oh! And welcome to the forums!

cbr
---- E L I T E ----
---- E L I T E ----
Posts: 469
Joined: Thu Aug 27, 2015 4:24 pm

Re: (BETA) Station Dock Control OXP

Post by cbr »

Bug or feature, police ships launch aborted because of full docking que?

Post Reply