Landing mechanics and non-laggy planet take-of of large ships.

    NeonSturm

    StormMaker
    Joined
    Dec 31, 2013
    Messages
    5,110
    Reaction score
    617
    • Wired for Logic
    • Thinking Positive
    • Legacy Citizen 5
    1. Select a block to land on (fire at dock or enhancers linked to a dock or fire at planet-block)...
    2. A ghost-ship is displayed over the landing zone and you are in a view similar to the "build mode" of this ghosted ship
    3. Align it only horizontally, not vertically (except supported by the dock, then you are allowed to) relative to the dock
    4. Rotation is 0°, +90° each relative to the dock
    5. Each X/Z position stores the distance of ground block to ship block
      • The shortest distance shows a block on the ship and ground red

    In planet gravity, you should not require docking modules and be able to fire your dock beam from the orbit to the surface.

    Landing disables pushing the ship to reduce lag.



    Take-of is vertical, until the ship reaches a height at which it's lowest block does not collide with any block below the ship + some extra number.

    At this height, you can control your ship like a fighter, but if you go below certain height, your ship starts either auto-piloting to keep this minimum height
    Or if you run out of power align yourself to the closest 90° angle and crash into the planet - only after you run out of power.

    Crashing into the planet does 2D checks, because it creates less lags as the ship is aligned to an angle.
    The ship may only do checks against the target landing area and either fall down completely vertically or you have the choice between extra calculations and glitches.



    Examples of take-of calculations after the vertical launch:

    Once:
    • Size = Center of your ship/mass/core + distance to furthest ship-box boundary
    • Calculation size: ship-dimension / 8 or 16, round up to closest 2x2, 4x4, ...
    • Calculate height of ground-tiles.
    The height the autopilot tries to keep:
    • crash < Size + highest ground tile below the ship
    • try to keep: (Size + highest ground tile below the ship and adjacent - (adjacent distance depending on speed) +1) + safety margin = % of size + highest tile from inside the brackets.
     
    Last edited: