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

Sugestion for a new Docking AI

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

Moderators: winston, another_commander

User avatar
Cmdr. Maegil
Sword-toting nut-job
Sword-toting nut-job
Posts: 1294
Joined: Tue Feb 27, 2007 10:28 pm
Location: On the mend in Western Africa

Sugestion for a new Docking AI

Post by Cmdr. Maegil »

Everybody agrees the current docking AI is flawed. and something should be done about it... I'm not good enough to code this, but I have a rough idea to improve it that might just work in the right hands.

If put in practice, it could allow for fluid and speedy autopilot approaches.


1) set destination to 9Km away from the docking port, and when within 1000m, request docking clearance;

2) if not granted because the station/carrier is launching, take a queue ticket and move closer (within 500m of a point 6Km away from the docking port);
if because it won't receive the ship, go elsewere;

3) if clearance is granted or the ticket turn arrived, set three beacons aligned with the docking bay and engage a modified racing AI;

4) the first racing beacon should be set at 5000m from the bay, so that with the docking ships will have a shallow entry angle on the first marker, easily corrected on the subsequent markers;
the speed should be standarized to, say, a python's top speed - 2.0;
the second marker at 2000m, and the third at 500m;

5) after passing the last marker, match rotation and set another three beacons , with the last laying behind the docking bay.

Adding bells and whistles, the markers could be permanent, and even surrounded by a circle of 4-6 flashers with the same radius as the docking bay entrance, coloured to show the player's docking status.
This could be Red for "not requested" or "denied" and yellow for "wait your turn", which would turn green for "cleared for docking" as soon as the last before the player went by each marker.
You know those who, having been mugged and stabbed, fired, dog run over, house burned down, wife eloped with best friend, daughters becoming prostitutes and their countries invaded - still say that "all is well"?
I'm obviously not one of them.
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Re: Sugestion for a new Docking AI

Post by Commander McLane »

Technically that doesn't sound very different from the current dockingAI, so I don't see yet how it would be an improvement. Currently ships go through waypoints, not racing points; but I think the underlying mechanism of racing points is waypoints anyway.

Also, parking all approaching ships inside a very small circle doesn't sound like a good idea. I have seen 20 ships or more waiting to dock. They would hardly fit inside a sphere with 1km diameter.

For me the main slowdown factor is that NPCs come to a virtual standstill at every waypoint. If that could be changed, and perhaps their speed factor be raised, docking would become much smoother IMO.
User avatar
Cmdr. Maegil
Sword-toting nut-job
Sword-toting nut-job
Posts: 1294
Joined: Tue Feb 27, 2007 10:28 pm
Location: On the mend in Western Africa

Re: Sugestion for a new Docking AI

Post by Cmdr. Maegil »

Commander McLane wrote:
Currently ships go through waypoints, not racing points; but I think the underlying mechanism of racing points is waypoints anyway.(...)
For me the main slowdown factor is that NPCs come to a virtual standstill at every waypoint. If that could be changed, and perhaps their speed factor be raised, docking would become much smoother IMO.
The point is precisely to make the ships "race" into the docking bay instead of stopping at every waypoint.
If I suggested sizes or amount of waypoints, it was only for illustrative purposes, the objective being to represent a "funneling" of the ships into alignment with the bay.
You know those who, having been mugged and stabbed, fired, dog run over, house burned down, wife eloped with best friend, daughters becoming prostitutes and their countries invaded - still say that "all is well"?
I'm obviously not one of them.
User avatar
SandJ
---- E L I T E ----
---- E L I T E ----
Posts: 1048
Joined: Fri Nov 26, 2010 9:08 pm
Location: Help! I'm stranded down here on Earth!

Re: Sugestion for a new Docking AI

Post by SandJ »

If this high-speed docking is implemented can it please be:

a) an OXP so it does not come as standard
or
b) never available for non-Coriolis (i.e. standard, core game) space stations
or
c) a piece of expensive kit?

Part of the Elite experience is the slow docking and that bloody tune during the auto-dock. I fetch more beer, go for a wee, read posts on here, post on IRC, talk to Mrs SandJ, or otherwise take a screen break. I know I always have the option of manual docking, if I want to go through the pain of learning how. I have been through that pain and can dock very well manually, but I rarely do.

To go whizzing in to a populated space station would NEVER be approved by safety engineers. Customers of space stations would not frequent them if 400 tonne ships could come hurtling in at 0.4 LY speed. Staff would not take jobs there. But worse, it would break the immersion for me. Also, it would not be Elite.

Elite, for me, is actually all about docking at space stations. Doing so is like getting home after a holiday, putting the key in the lock, kicking your shoes off and collapsing in the comfy chair with a cup of tea. That you went trading, or pirating, or crossed half a galaxy, it doesn't matter once you hear those first few notes of the docking music. You're home. You're safe. You're still alive. After possibly hours of RealWorld™ time and weeks of game time, the adventure is over, the heart rate can return to normal, the blood pressure go down, and thoughts return to trading prices, rearming, repairs and planning the next trip. (Or even saving the game and going to bed to get two hours kip before getting up for work.)

So by all means have a fair and interesting queueing system, have ships rotating in stacks, "You are number 17 in the queue" messages, GalCops and medical ships taking priority and jumping the queue, high-speed docking in Con-Stores, high speed drive-through fuel stations but, please, do not take away my slow, tedious, reassuring auto-dock. Without it, Oolite is not Elite.
Flying a Cobra Mk I Cobbie 3 with nothing but Explorers Club.OXP and a beam laser 4 proper lasers for company :D
Dropbox referral link 2GB of free space online + 500 Mb for the referral: good for securing work-in-progress.
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Re: Sugestion for a new Docking AI

Post by Commander McLane »

SandJ wrote:
...please, do not take away my slow, tedious, reassuring auto-dock. Without it, Oolite is not Elite.
Note, however, that the docking computer in Oolite is slower and much more tedious than it ever was in Elite. This is what Maegil wants to improve, making the look and feel closer to Elite.
User avatar
CommonSenseOTB
---- E L I T E ----
---- E L I T E ----
Posts: 1397
Joined: Wed May 04, 2011 10:42 am
Location: Saskatchewan, Canada

Re: Sugestion for a new Docking AI

Post by CommonSenseOTB »

SandJ wrote:
...please, do not take away my slow, tedious, reassuring auto-dock. Without it, Oolite is not Elite.
Oolite is not Elite...the last time I looked anyway... :P
Take an idea from one person and twist or modify it in a different way as a return suggestion so another person can see a part of it that can apply to the oxp they are working on.


CommonSense 'Outside-the-Box' Design Studios Ltd.
WIKI+OXPs
User avatar
SandJ
---- E L I T E ----
---- E L I T E ----
Posts: 1048
Joined: Fri Nov 26, 2010 9:08 pm
Location: Help! I'm stranded down here on Earth!

Re: Sugestion for a new Docking AI

Post by SandJ »

CommonSenseOTB wrote:
Oolite is not Elite...the last time I looked anyway... :P
Ooh, it is. Frontier wasn't, but Oolite is. IYSWIM.
Flying a Cobra Mk I Cobbie 3 with nothing but Explorers Club.OXP and a beam laser 4 proper lasers for company :D
Dropbox referral link 2GB of free space online + 500 Mb for the referral: good for securing work-in-progress.
Switeck
---- E L I T E ----
---- E L I T E ----
Posts: 2411
Joined: Mon May 31, 2010 11:11 pm

Re: Sugestion for a new Docking AI

Post by Switeck »

Commander McLane wrote:
Note, however, that the docking computer in Oolite is slower and much more tedious than it ever was in Elite.
The docking computer in the Commodore 64 Elite was bloody incredible. Come in blazing at full speed, turn on the docking computer just before impact with the station and it would overwhelmingly prevent the crash AND dock successfully in <2 minutes. Coming in below the station and turning on the docking computer as you passed could have it dock in <15 seconds consistently.

Oolite's Docking Computer is trying too hard to get precisely lined up with the z axis (of rotation) of the station. If it's even a little bit off, it gives up...turns around, opens up the distance, and tries again from scratch.
User avatar
Micha
Commodore
Commodore
Posts: 815
Joined: Tue Sep 02, 2008 2:01 pm
Location: London, UK
Contact:

Re: Sugestion for a new Docking AI

Post by Micha »

Switeck wrote:
The docking computer in the Commodore 64 Elite was bloody incredible.
Even if only 90% successful... There was a decent chance of a 'press space' moment. So I always watched it like a hawk - and ready to press disengage and abort the attempt.


In my personal vision of future Oolite docking there are 3 separate docking computers:

1. Station-controlled - no need for docking computers, although costs money; only available at high-tech stations who remote-control the ship in upon request. (Only used if the ship has no functioning docking computers)

2. Docking computers with traffic-control from the station. (Ie, Docking Clearance)

(1 & 2 would essentially be the same from a game perspective, and very similar to the current docking system. Improvements are to make the approaching ships fly smoothly along the approach path instead of stopping at each stage, as well as having the station switch periodically between launching & docking ships.)

3. Docking computers with no traffic-control from the station. Ships barrel in from wherever, fastest first, although there'd need to be a little bit of cooperation to avoid multiple ships cramming into the bay at once and colliding. This would be similar to the Elite docking computer.
The glass is twice as big as it needs to be.
Bazabaza
Above Average
Above Average
Posts: 20
Joined: Sun Jun 19, 2011 8:26 pm

Re: Sugestion for a new Docking AI

Post by Bazabaza »

I like it as it is. But it would be nice that if stuck a queue the pilot pointed you at the station so you have something to watch whilst you wait.
User avatar
Smivs
Retired Assassin
Retired Assassin
Posts: 8408
Joined: Tue Feb 09, 2010 11:31 am
Location: Lost in space
Contact:

Re: Sugestion for a new Docking AI

Post by Smivs »

Bazabaza wrote:
I like it as it is. But it would be nice that if stuck a queue the pilot pointed you at the station so you have something to watch whilst you wait.
Now that's an excellent idea! :D
Commander Smivs, the friendliest Gourd this side of Riedquat.
User avatar
SandJ
---- E L I T E ----
---- E L I T E ----
Posts: 1048
Joined: Fri Nov 26, 2010 9:08 pm
Location: Help! I'm stranded down here on Earth!

Re: Suggestion for a new docking AI

Post by SandJ »

[offtopic, but may trigger some ideas to do with reputation or elite status or GalNavy war bond ownership...]

Some years back I used to commute between London Gatwick and Glasgow on the small friendly airline that was AirUK. Most of us were regulars; we knew the staff and they knew us.

On one occasion on coming in to Gatwick on the last flight of the day the pilot announced:

"I'm sorry ladies and gentlemen, but it appears there was a problem here earlier today at Gatwick. They have 'planes backed up in a number of stacks and we have been told we'll have to join the top of one of these and wait for permission to land along with all the international flights. I'm sorry, but I cannot tell you how much delay this will cause, but it will be substantial. Please accept my apologies, beyond AirUK's control, et cetera, blah blah blah." (Literally those words.)

Two minutes later we plunged from the air at an incredible angle and levelled out into a path aligned with the runway and whizzed straight down onto the runway at an amazing speed.

As we taxied - at some speed - toward the terminal, the pilot came on again:

"Ladies and gentlemen, I am sorry if you found that a little uncomfortable but like you, I have a home to go. So I told air traffic control I was flying on fumes. Have a nice evening and thank you for flying AirUK. Good night."
Flying a Cobra Mk I Cobbie 3 with nothing but Explorers Club.OXP and a beam laser 4 proper lasers for company :D
Dropbox referral link 2GB of free space online + 500 Mb for the referral: good for securing work-in-progress.
User avatar
Cody
Sharp Shooter Spam Assassin
Sharp Shooter Spam Assassin
Posts: 16073
Joined: Sat Jul 04, 2009 9:31 pm
Location: The Lizard's Claw
Contact:

Re: Suggestion for a new docking AI

Post by Cody »

SandJ wrote:
the small friendly airline that was AirUK.
I flew with AirUK a few times... they were indeed good people to fly with.
I would advise stilts for the quagmires, and camels for the snowy hills
And any survivors, their debts I will certainly pay. There's always a way!
User avatar
Eric Walch
Slightly Grand Rear Admiral
Slightly Grand Rear Admiral
Posts: 5536
Joined: Sat Jun 16, 2007 3:48 pm
Location: Netherlands

Re: Sugestion for a new Docking AI

Post by Eric Walch »

Bazabaza wrote:
I like it as it is. But it would be nice that if stuck a queue the pilot pointed you at the station so you have something to watch whilst you wait.
Interesting idea. You could change one line in the docking AI as follow:

Change

Code: Select all

	STATIONKEEPING =
	{
		ENTER = (performIdle, "setSpeedTo: 0.0", "pauseAI: 10.0");
into

Code: Select all

	STATIONKEEPING =
	{
		ENTER = (setDestinationToTarget, performFaceDestination, "setSpeedTo: 0.0", "pauseAI: 10.0");
That way the ship will not go 'Idle' when entering the waiting loop, but first doing a turn towards its destination. And this will always be the station for docking. performFaceDestination will automatically turn itself into a performIdle when pointing in the correct direction, so no further reaction is needed.

A brief test with the player shows it works as planned.
User avatar
Smivs
Retired Assassin
Retired Assassin
Posts: 8408
Joined: Tue Feb 09, 2010 11:31 am
Location: Lost in space
Contact:

Re: Sugestion for a new Docking AI

Post by Smivs »

Brilliant, I'll try that. Thanks. :D
Commander Smivs, the friendliest Gourd this side of Riedquat.
Post Reply