Ship Systems - Navigation and Waypoints #321
alexanderson1993
started this conversation in
Feature Proposals
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
This discussion round off the base-level pilot stations. There are a few other things that could be discussed around moving the ship from place to place (Anyone want to take on a Jump Drive discussion?) but I'd be satisfied with what we have discussed already being all that ships in 1.0 for the pilot.
Enough digression - on to Navigation!
Thrusters and impulse/warp engines can get you around, but you need to know where you are and where you want to go if you're going to get there. There's a lot that could go into this - from launching navigation buoys to triangulating the ship's position to navigating around hazards - but for the outset, we'll keep it simple.
A few assumptions:
That "somehow" ends up being in the form of waypoints.
Waypoints
A waypoint is a kind of entity with a position in space - it's as simple as that. In-universe, any waypoints are stored on the ship's computer, so they are assigned to a specific ship, and only that ship can see its own stored waypoints. It should be possible to set waypoints for any arbitrary position in space.
Waypoints can also be associated with an object. For example, a waypoint could be set for a planet, and would have the planet entity attached to it. This helps with navigating to the waypoint and providing additional metadata about it when inspecting the waypoint.
When a waypoint is attached to an object, a formula is run to calculate the specific point the waypoint will be placed at. The formula is based on the radius of the players ship (we'll call that
P
), the radius of the target object (we'll call thatO
), and the angle between the player ship and the object. The formula for the distance isP * 2 + O * 1.25
. This ensures that traveling to the waypoint won't inadvertently cause the player's ship to collide with the target object.It might be necessary to auto-adjust the position of waypoints, since it's possible the crew sets a waypoint on an object, which places it offset from the center of that object in the direction of the player's ship. Then the player's ship moves to the opposite side of the object, which would make the object be between the players ship and the object. Making it so the waypoint automatically moves to the appropriate position based on the angle between the object and the players ship would keep that from happening.
Waypoints can be sent to other ships via the long range communication systems. This makes it possible to coordinate travel to the same location, to have one ship send their location to another ship, and have pre-defined waypoints set up for the mission itself.
Navigation
The navigation station has a view that shows them interstellar space and they can open up systems to see the solar system space. Navigation can set and manage waypoints - creating new ones, hiding waypoints so they don't appear for the pilot and on the viewscreen, deleting waypoints, seeing information about the objects attached to waypoints.
Navigation should easily be able to determine the distance from the player's ship to a destination, the travel time to a destination at various speeds, and a recommended speed to get to a destination.
To add a bit of interest, we can artificially limit the distance which Navigation is able to set course to waypoints. In-world explanation could be something about navigational hazards, gravity fields... bosons? Something hazard which affects the course but is impossible to detect without being closer. That puts a radius around the ship, allowing course to be set to waypoints within that circle, but not to ones outside of that circle. That requires the navigation officer to set several waypoints to get the crew to their destination. This idea could be dropped, though, if it is deemed too restricting and frustrating to crews.
Course is set by the Pilot, who uses thrusters to rotate the ship until it is pointed at a waypoint. Reticles on the pilots screen and on the viewscreen serve as visual guides for how close they are to being pointed on course.
Once they've pointed in the right direction, they can lock on course. This activates the rotation autopilot and sets the waypoint as the destination.
That's about it. Navigation shouldn't be affected by power, heat, or damage. The Flight Director can set waypoints for the crew if they like.
More information about these ideas in some old blog posts:
Beta Was this translation helpful? Give feedback.
All reactions