pioneerspacesim / pioneer

A game of lonely space adventure
https://pioneerspacesim.net
1.62k stars 373 forks source link

3 Navigational reference systems #1175

Closed Baobobafet closed 7 years ago

Baobobafet commented 12 years ago

This is an attempt at a logic framework for 3 Navigation aids. (or rather 2 nav aids and an Autopilot option)


1> Attitude Reference (AR)

0-360' pitch, yaw and roll display

2 modes (via toggle) Mode 1, Anchor Z axis to nearest gravity. Mode 2. Turn off Z gravity anchor, Free mode. Default setting 1 anchors the Z or Yaw (elevation) axis to the nearest center of gravity. If the gravity is a planet - the AR system should poll for it's radius. This is important to compensate appropriately for a planet's curvature and will insure that the horizon (Pitch) readout of zero always matches that of the physical horizon of the planet while flying over it's surface. The Z Gravity anchor mode also insures you will have the tools to always be perfectly horizontal when attempting to land on even the most small and irregular shaped asteroids. An intuitive and graphic way to display pitch and roll relative to gravity would be to have one of the scanner modes transform the scanner into a giant circular bubble level. (possibly with a resolution zoom option) So long as the bubble remains in the center of the bullseye, the ship's pitch and roll are level with the horizon of the planet. This insures proper ship attitude for even descent onto planet surfaces. Useful visual feedback for making those textbook three point landings. A possible addition to the bubble display would be the depiction of a target bulls eye for the landing pad, on the scanner display- once your ship was near or directly over top of the assigned landing pad the bulls-eye would begin to blink to signal you were over the landing threshold.

Mode 2, All attitude measurements are zeroed when the AR gauge is set to Mode 2. (whether in space or on planet or asteroid surface.) From then on all movements in pitch yaw roll will be compared and shown as deviations from zero on the Pioneer dash under the headings pitch, yaw and roll in a 0-360' increments. On planet surfaces the yaw readout can function as a makeshift compass for navigation. (True only if the AR guage is set to Mode 2 while the pilot's ship is pointed towards a planet's North pole.)

The pitch and roll readouts give a pilot digital attitude feed back for making small measureable corrections in angle of attack and bank during flight. For space flight, this info takes precise manual 180' retro thrust orientation and other maneuvering functions, to a more reliable and repeatable level. The pilot's AR gauge must be set to Mode 2 (zeroed) "after" the ship is pointed towards a desired vector for deviations to be measured relative to zero on the pitch, yaw and roll display.

An Autopilot plugin might create an option to allow a ship to always keep it's nose on the horizon of a planet regardless of whether the planetoid is as small as the 10 km.


2> Distance & Postional Reference (DPR)

This gauge is for referencing a particular area of space within any chosen solar system. 2 modes to show XYZ (via toggle)

Mode 1 (with conversion submode)

  1. The exact XYZ coords of your ship's position in that system.
  2. Metric distance units. Conversion of XYZ coords into meters,km,AU. Likely requires the ghosted box displaying this info to be expandable or larger than most other similar boxes in width to accomodate potentialialy large numbers.) Perhaps a slider to vary transparency on this readout could be an option

The default Mode 1 reference would be to display the XYZ relative to the largest sun in that system (or alternate positional constant). A specific address in space can be visited by other players knowing the same XYZ co-ords.

Mode 2 Measurement function. Allows a pilot to temporarily zero the XYZ scale so local point to point distance measurements can easily be made relative to any single position in space.

With X representing the the heading of your ship: X = distance forward/back displayed in plus or minus meters/km... Y = distance left or right of X axis displayed in plus or minus meters/km/... Z = distance of elevation up/down along the X axis displayed in plus or minus meters/km/...

An autopilot plugin option to save &/or target specific XYZ co-ods as a destination or waypoint could be an added feature.

Mode 1 could also prove quite useful for charting mining areas and points of interest.


3> CoPilot AI (or A.I. Advanced autopilot)

A combination of Mode 1&2 positional info is used to record custom tactical flight manuevers as macros. This makes possible engaging an evasive flight macro durring a battle at the touch of a designated key combo. While an evasive prerecorded flight path is being performed, A pilot could concentrate his energy manning defense turrets, countermeasures, missles or mines to further discourage any pursuing aggressors. The duration of maneuvers recorded can be a price point in the Copilot AI's quality. So to purchase an AI Copilot that can record 15 minutes worth of maneuvers (per Macro slot), would cost more to buy in the ship's equipment yard, than say an AI Copilot, that could save only 30 seconds worth of maneuvers (per Macro slot) Some AI Copilots might be able to record and replicate entire patrol maneuvers. Thus freeing those pilots to better monitor, other important sensor and visual scans enroute.

Example Method of use: Pilot engages "teach" mode for CoPilot AI. Pilot then holds down qualifier key with one of the F1-F10 keys as a designated save location. Pilot performs maneuvers. Pilot ends teach mode. Pilot maneuver is now saved as a macro to that qualifier+F key combo.

When that specific F1-F10 Macro key is now pressed - The last recorded maneuver in that Macro slot, will be performed.

A continuos repeat Macro maneuver option (untill disabled) might be a consideration to optimize available macro recording time (perhaps a third qualifier key could enable/disable the continous repeat maneuver option.)

Brianetta commented 12 years ago

You're going to have to clarify 2> somewhat. "A particular area of space within any chosen solar system" is highly ambiguous, considering that everything in a solar system is moving with the arbitrary exception of the star or (if it's a multiple system) the barycentre of the stars.

gernot66 commented 12 years ago

one stupid question from my side,

what will that help me?

i approach land or dock manually with the actual system without any problems, even with my tailsitter. each time i try it get a little better...

i didn't think that more information will help me really, imo it will confuse me only. neither i think i can use a macro of a maneuvre a second time? who should have interest to find a specific position in the wide open blue?

instead of a lot of data (you like to fly blindfolded by numbers? buy a C64, ;) ) perhaps some simple graphical guides would do better. the (a) artificial horizon near a planets surface (or in close orbit) is a good idea, but apart from such...

less is more, imho but ok, i'm used to... perhaps i was once arguing about targetting tunnels (we have now i guess), actually i can live well without ;)

and

to much kills the fun, many games (especially remakes) have been trapped by this. to many options, microsimulators, data to read out, things to tweak, will take the spirit out of a good concept. it gets scattered ("verzettelt" is the better term).

keep it simple as possible, this increases playability and fun. we like to play a game and not a 1:1 simulation.

a player should find the way through/into a game intuitive. that's really important and the alpha and omega of a successful game.

or

answer yourself, why is Asteroids still addictive...? whenever possible i show the ongoings of pioneer to my stepson and his friends, their comments about it are important to me, because they show off the likes and dislikes of not frontier/elite/orbiter addicted youngsters who play mostly MMO RPG's or ego shooters.

i guess it's the right place to repeat a quote of them "but this looks like a programmers game to me" in other words, it's already to complicated for a "common" gamer...

personally i guess we should leave that trail somewhat.

if i like to get really a thrill out of it, i will fight...

Baobobafet commented 12 years ago

Brianetta, I did actually cover that issue a little further down - although, I'm sympathetic to the confusion I might be causing on this subject :) quote: "The default Mode 1 reference would be to display the XYZ relative to the largest sun in that system (or alternate positional constant)."

I didn't define 'alternate positional' constant as well a you did though "barycentre of the stars" Nice :) I suppose that infers every system has a definable center? (kinda-of-a-make or break deal for XYZ Nav to work)

It occured to me (correct if wrong) Might such a tool be useful in tracking and documenting any ingame graphical bugs to a specific time and location?,

Baobobafet commented 12 years ago

Gernot,

I have read somewhere, there is no such thing as a stupid question only a stupid answer - so I will do my best.

I wholeheatedly agree withe the KISS (Keep It Simple Stupid) premise. However such philosophy, if taken too far can also cause the game/sim to suffer.

This feature is not so much meant for people (novices) that use autopilot - rather it is meant more for the Pioneer converts and people who want precise measureable (quantifiable) control over their ships, whether static, moving or hovering. (Gernot this guage was practicaly built for you - especialy with that Tail launched rocket of yours :) BTW Quite excellent!!!

I love flying by the seat of my pants as much as anyone - but some instruments can be quite useful. For instance: Until there becomes available swivel-able headlights or landing lights on spacecraft, it is very hard to see if you are landing level in any darkened area. (and you must ALWAYS take an external view - not so realistic) This gauge can make landing from the cockpit view possible and even accurate. (Especially if it has a zoom or sensitvity adjustment - perhaps via the scanner magnification keys)

Some toys are not always to everyones fancy - I agree with you on the target boxes -and am glad that I can turn them off. Other common features in the game may hardly ever get used by a majority of people - but that does'nt mean that the feature is of little value. I subscribe to the 'information feeds imagination' concept.

But you are right in that information must be intuitive and not overwhelming. Info overload is way too real an issue today. Sometimes this balance is hard to acheive - but I think you will agree, we must try to to find such a balance.

In regards to having XYZ addresses: Other possible reasons to have adressable space locations: Maybe there's a paricularly nice vista on Venus you like to revisit to see the sun rise. Alternatively you might wish to check out some specific area on a planet or in an asteroid field with rich mineral deposits. In Freelancer, the discovery of a wreck with treasure was usually well off the beaten path. Those are a few things off the top of my head.

How will you find such places again? Memory? Sure, you can make a save there - but it is in no way the same.

Also, when such locations are discovered their addresses could be shared amongst other Pioneer players as additional places of interest and exploration.

I imagine there is some upper limit to the sphere that might be addressable and mapped around any given star (or central constant)

Is in not in our human nature to try to compare and measure everything :)

For the horizon and attitude info This might be one intuitive info display idea. I have included a mock-up drawing of the scanner with the green bubble in various positions - depending on the ship's attitude. The red target - once in the center of the scanner - means you are positioned directly over the landing pad.

http://www.mediafire.com/?byb0et5kev5dry5

Unfortunately the mockup doesn't include or show any XYZ digital read-out display area - but I think that could be added somewhere in the dash.

Thankyou Gernot, I truly do appreciate all your feedback :)

Brianetta commented 12 years ago

@Baobobafet wrote:

Brianetta, I did actually cover that issue a little further down - although, I'm sympathetic to the confusion I might be causing on this subject :) quote: "The default Mode 1 reference would be to display the XYZ relative to the largest sun in that system (or alternate positional constant)."

I didn't define 'alternate positional' constant as well a you did though "barycentre of the stars" Nice :) I suppose that infers every system has a definable center? (kinda-of-a-make or break deal for XYZ Nav to work)

It occured to me (correct if wrong) Might such a tool be useful in tracking and documenting any ingame graphical bugs to a specific time and location?,

OK, defining a point relative to the system itself, while perfectly possible, isn't useful. Take our start point, for example. Earth is moving at 30km/s relative to that system frame, and it won't be long before the spot you've so carefully recorded is just another anonymous patch of empty space. Earth moves along its orbit by its own diameter in just over seven minutes.

For that same reason, it's not awfully practical for use as a debugging tool - not nearly as useful as, say, a saved game.

Baobobafet commented 12 years ago

So no debugging tool,

Yeah I kinda knew that if you wanted to check out any planet sunrise, you should probably try to be there at the same point in time as well as space as when the original experience occurred. (especially if their are a multitude of factors creating such an event)

If such an event were dependant on some periodic occurrence, as a planet's orbital period, using the system map speed function you could discern the planet's next closest intersection to those original coords and conceivably revisit some repetition of that event.

Here's more the crux Aiming my ship on some arbitrary - roughly in that direction method is okay but without some sort of course vector displayed on the system map screen, It's a lot of guess work. So how then will Pioneer allow targeting a specific location in space without having to target a body? I think this is important for manual navigation since the direct path to a body is not always the straight one. I want to better be able to target an area of space where a body will be (not where it is now) Rendezvous capability, fuel conservation, planned sling shot trajectories. It should be possible and fun.

The coord system is one (I know of) that might allow reference to points. Perhaps the points aren't needed - only the vectors?

Maybe some method of plotting custom heading vectors via the System map screen would fill such a bill. Sort of like click on existing ship location, vector line appears - use system map rotate keys to re-position the vector line along desired course. release. In such a case there would be an available target vector in space that can be referenced from the cockpit and seen in the sky when labels are on.

I did read somewhere about clickable stars in a system - but that's likely a lot more work and perhaps not as flexible as the above system map idea.

I also recall some suggestion made about a toggle to show orbital path lines. I think this is a great idea and hope it will materialize, since it will also mean less trial and error guess work.

Brianetta commented 12 years ago

Orbital path lines are visible in the system map orbit screen, although they're not ever visible in space.

What you really have to understand is that only targeting a body matters - there is no such thing as a specific location in space, unless measured relative to something. "Planned slingshot trajectories" do not require this, and I speak as one who literally did the maths and transferred the results to my ship in Pioneer in order to pull this stuff off.

Baobobafet commented 12 years ago

If I understand you. Unless a coord system like I originaly proposed using coords from a central star or barycenter was adopted you would be unable to address such a specific location.

However great this would be, my point was, being able to set a vector wouldn't require any of that.

Regarding the system map It's the one i'm refering to for adding a trajectory gadget, there's no represention of your ship position other the station or planet you're parked at.

And I think a toggle to see orbital path lines in space would be extremely helpful

In Frontier's similar map, your ship was visible as a pink dot even between planets or stations (it allowed a means to guage your vector) At least relative to other bodies in the system - because you could use the time speedup function on the map to see the trajectory of that dot(representing the path of your ship) and where it would ultimately go. I played with that thingy for hours watching slight permutations in trajectory cause the pink dot to divert towards various gravities depending on my speed. Trying to carry out the above maneuver in practice was always the real trick of course. It sort of bothered me at the time that I couldn't just dump my great flight plan into Frontier's nav computer and have it follow the course - I had some multiple slings - not Voyager 2 but complex

It would be great if there were some way to similarly proof a trajectory in Pioneer.

Please enlighten me in which way to do this safely without having to reload so often Pioneer's shipyard has me on 24hr standby.

Oh lord yet another gauge :0 A magnetometer type device could be helpful to guage gravity well intensities - enough to enable a pilot to navigate gravity complex areas with confidence in realtime. Perhaps even a Scanner mode showing semi-transparent spheres of varying intensity and size (depending on g force produced in that area)

Brianetta commented 12 years ago

The autopilot calculates trajectories for shortest time at the moment (including orbital trips around planets). Other trajectories, such as minimum fuel use, are not coded in the autopilot, and you'd have to fly them yourself. Plenty of time, though, since your journeys would then take months for interplanetary distances.

If all you want is a trajectory display on the system map, then we can simply link this issue to #985 which asks for exactly that.

Also, remember that for orbital slingshots, there's no "course" for the autopilot to "follow." It's a ballistic trajectory; you're simply falling through space. You could turn your systems off until you're where you need to be, if they had an off switch.

Baobobafet commented 12 years ago

True dat. Once you were on your way (in a perfect universe) having a computer autopilot to make mid course trajectory corrections shouldn't be necessary. And I agree at it's basic, that a vector is all that is required to send you on your way. So yes a trajectory display for vector on the system map would be a very helpful function for navigation within a system. I will check out issue #985 though.

Thanks Brianetta

bszlrd commented 7 years ago

Some parts are already in master, some seem to be overthought. Please bring any further discussion to the dev forum, if it's anybody is still interested.