Overview
This guide covers the set up of the Planet Map 3D script, as well as detailing the various commands and features of the script.Link to the script:https://steamcommunity.com/sharedfiles/filedetails/?id=2286117398
QUICK SET UP
- Load this script on a programmable block.
- Put the tag “[MAP]” in the name of the block where you want the map to be displayed. If the block has multiple screens you can change which screen displays the map by going into the programmable block’s Custom Data field and changing the “MAP_Index” field.
- It’s recommended to map at least the basic movement and mode commands to desired hotkey bars.
- (optional) Paste “Vanilla” planet and waypoint data into the custom data field of the programmable block. (See below).
- (optional) Add the tag “[Map Data]” to the name field of a block that you want to have the Data Display screen. This display page will give details about planets, waypoints, and the map screen itself. (See section ‘Data Display Pages’ below).
— Multi-Screen Set-Up —
In order to add multiple screens, simply add the [MAP] tag to the name of any block where you want to display a map screen. By default, the map on these blocks will display on the screen specified by the “Index” field of the Custom Data of the program block.
In order to change which screen a map is displayed on in a block, update the “Indexes” field of the Custom Data of that block.
In order to display multiple maps on a single block, enter multiple comma-separated values into the “indexes” field:
COMMANDS
There are two options for running commands for this script:
1: RUN DIRECTLY FROM PROGRAM BLOCK
To do this, simply enter the command into the Argument field of the programmable block. This is a good option for commands like:
- LOG_WAYPOINT
- PLOT_JUMP
- COLOR_PLANET
2: MAP TO HOTKEYS
To do this, go to the G-menu for your desired interface (i.e. cockpit, command seat, button panel, etc) drag the programmable block to the target hot key, and select the action “Run”. This should prompt a dialog box, asking for an argument. Type your command here.
Some commands take multiple arguments such as NEW_PLANET. This argument would be followed by the name of the planet, which this guide will denote as <planet name>. You don’t need to include angle brackets, but make sure that there’s a space between the first argument and the second. It’s alright if the second argument has a space in it.
Example:
To create a planet named “Eden Prime” just run the argument:
NEW_PLANET Eden Prime
View commands for multi-screen arrangements should take the following format:
<VIEW_COMMAND> <MAP_NUMBER(s)>
A map’s number can be found in its upper right corner in brackets.
By default, View Commands can be run with no additional arguments:
ROTATE_LEFT
This command will rotate the first map in the map list to the left by 5°. This is enough for single map arrangements. It is essentially the same as running the argument:
ROTATE_LEFT 0
In order rotate a different map, run the command followed by that map’s number as an argument. For example:
ROTATE_LEFT 2
This will rotate the third map (because the first map is 0) by 5°.
View commands can be run for multiple screens simultaneously, by running the command with a comma separated list of map numbers as an argument:
ROTATE_LEFT 0,2
This will rotate the first and third maps left by 5°.
Lastly it is possible to run a view command for all maps simultaneously by running the command with the argument “ALL”:
ROTATE_LEFT ALL
— Rotational Controls —
This script uses an azimuthal rotation system. The camera can rotate around the center of the map at an adjustable radius both along the horizontal plane (azimuth) as well as up and down (altitude). The altitude is limited to ±90°
STEP ROTATION
Increment the rotation by a single step (default 5°):
- ROTATE_LEFT
- ROTATE_RIGHT
- ROTATE_UP
- ROTATE_DOWN
FLUID ROTATION
Increase or decrease the angular velocity of the azimuth, creating a continuous spin. Running the command multiple times will increase the velocity further, and running the opposite command will slow or stop the rotation (similar to increase/decrease velocity action for rotors).
- SPIN_LEFT
- SPIN_RIGHT
— Translational Controls —
Move the camera laterally across it’s relative XYZ axes.
STEP TRANSLATION
Move the camera at fixed step length, based on the zoom level:
- MOVE_LEFT
- MOVE_RIGHT
- MOVE_UP
- MOVE_DOWN
- MOVE_FORWARD
- MOVE_BACKWARD
FLUID TRANSLATION
Increase the velocity of the camera so that it moves continuously in straight line. As with fluid rotation, these commands can be called multiple times to further increase the velocity, or the opposite command can be called to slow or stop the movement.
- TRACK_LEFT
- TRACK_RIGHT
- TRACK_UP
- TRACK_DOWN
- TRACK_FORWARD
- TRACK_BACKWARD
— Zoom & Other Movements —
ZOOM
Adjust the focal length of the map, effectively zooming in and out:
- ZOOM_IN
- ZOOM_OUT
ROTATIONAL RADIUS
Adjust the distance of the camera from the map’s rotational center:
- INCREASE_RADIUS
- DECREASE_RADIUS
STOP
Stop both rotational and translational fluid movement:
- STOP
CENTER SHIP
Set the map center to your ship’s current position:
- CENTER_SHIP
DEFAULTVIEW
Set all map parameters to their default value, including centering the map at (0,0,0):
- DEFAULT_VIEW
— View Settings —
WAYPOINTS
Toggle all display of all waypoints:
- GPS_ON
- GPS_OFF
- TOGGLE_GPS
Toggle display of individual waypoints. Be sure to include a [space] between the command and the waypoint name.
- WAYPOINT_ON <waypoint name>
- WAYPOINT_OFF <waypoint name>
- TOGGLE_WAYPOINT <waypoint name>
NAMES
Toggle names on all waypoints and planets:
- SHOW_NAMES
- HIDE_NAMES
- TOGGLE_NAMES
INFO BARS
Toggle map parameter bars at top and bottom of map
- SHOW_INFO
- HIDE_INFO
- TOGGLE_INFO
SHIP POINTER
Toggle the ship pointer on and off (including “off-screen” pointers):
- SHOW_SHIP
- HIDE_SHIP
- TOGGLE_SHIP
BRIGHTNESS
Change Screen Brightness:
- BRIGHTEN
- DARKEN
— Map Modes —
FREE
Map remains static.
- FREE_MODE
WORLD
Similar to FREE mode, but the view is zoomed out and top down to give a broader perspective.
- WORLD_MODE
SHIP
The map centers on the ship, and follows it as it moves.
- SHIP_MODE
PLANET
Top down view of the ship as it travels across the surface of a planet.
- PLANET_MODE
ORBIT
Profile (side) view, centered on the middle point between the ship and the planet. Accurately show’s the ship’s distance from the planet’s surface. Use NEXT_PLANET or PREVIOUS_PLANET plus the map number to select the active planet for that map. By default it will be the nearest planet.
- ORBIT_MODE
CHASE
Aligns the map’s azimuthal angle with the ship. Currently doesn’t align with the ship’s pitch relative to the global coordinate system.
- CHASE_MODE
CYCLE MODES
Cycle through map modes:
- NEXT_MODE
- PREVIOUS_MODE
CYCLE PLANETS
Cycle map focus through all charted planets (sorted nearest to farthest). Doing so will return the map to FREE mode. This will also set the active planet for ORBIT mode.
- NEXT_PLANET <MAP_NUMBER>
- PREVIOUS_PLANET <MAP_NUMBER>
CYCLE WAYPOINTS
Cycle map focus through all charted waypoints. Doing so will return the map to FREE mode.
- NEXT_WAYPOINT
- PREVIOUS_WAYPOINT
— Charting Waypoints —
Log waypoints of specified marker type from your current position. Waypoint names can include [space]’s as well as most special characters (No semi-colons).
- LOG_WAYPOINT <waypoint name>
- LOG_BASE <waypoint name>
- LOG_STATION <waypoint name>
- LOG_LANDMARK <waypoint name>
- LOG_ASTEROID <waypoint name>
- LOG_HAZARD <waypoint name>
- DELETE_WAYPOINT <waypoint name>
PASTE FROM CLIPBOARD
Log waypoint of specified type by copying GPS data from terminal and pasting it into the argument:
- PASTE_WAYPOINT <waypoint name>
- PASTE_BASE <GPS string>
- PASTE_STATION <GPS string>
- PASTE_LANDMARK <GPS string>
- PASTE_ASTEROID <GPS string>
- PASTE_HAZARD <GPS string>
PLOT ORBITAL JUMP POINT
You can also plot a Waypoint just outside of a planet’s gravity well. This command will plot the jump point on a direct line between your ship and the planet center, and will automatically generate the waypoint name:
- PLOT_JUMP <planet name>
— Charting Planets —
In order to chart a new planet, you need to log 4 separate points from the surface of the planet. These points should be a significant distance from each other for better calculations, and preferably taken from a low flat area like a crater or a lake-bed.
SURFACE POINT 1
To begin charting a new planet, log its first surface point from your current position. The same naming rules as waypoints apply to planets.
- NEW_PLANET <planet name>
SURFACE POINTS 2, 3 & 4
Chart subsequent surface points for specified planet. After the 4th surface point, the planet should automatically be generated and added to the map.
- LOG_NEXT <planet name>
THAT’S NO MOON…
Unleash the awesome firepower of your fully armed and operational mapping script!!!
- DELETE_PLANET <planet name>
CHANGE PLANET COLOR
Recolor specified planet. Be sure to include [space] between command and color, as well as color and planet name.
- COLOR_PLANET <color> <planet name>
Valid color arguments (not case sensitive):
- RED
- BLUE
- GREEN
- YELLOW
- MAGENTA
- PURPLE
- CYAN
- LIGHTBLUE
- ORANGE
- TAN
- BROWN
- RUST
- GRAY
- GREY
- WHITE
— Data Display Panel —
Optional display interface on a separate screen that allows browsing of planet and waypoint logs, map parameters, and the GPS clipboard which allows you to copy a GPS string that’s formatted specifically for the terminal interface.
In order to add the Data Display Panel, you will need to add the tag “[Map Data]” to the block where you want to add the display panel. You can also specify a different tag in the programmable block’s custom data, by changing the attribute “Data_Tag”. You can also change the screen it selects by changing “Data_Index”.
PAGE NAVIGATION
- NEXT_PAGE
- PREVIOUS_PAGE
- SCROLL_UP
- SCROLL_DOWN
- SCROLL_HOME
EXPORT WAYPOINT
Generate a GPS string formatted to be pasted into terminal. This string will appear on the “Clipboard” (page 4) of the display screen. It can be copied from that screen’s text field.
- EXPORT_WAYPOINT <waypoint name>
PLANET LIST
The following planets and moons are from the default star system. You can add them to the map by pasting the following data into the Custom Data field of the programmable block. They may not be accurate to some scenarios such as Never Surrender. NOTE: Make sure that there is no whitespace (spaces or blank lines) between Planet_List= and the planet entries. Be sure to include the trailing semi-colons after each entry.
Planet_List=
|EARTHLIKE;(0,0,0);60000;GREEN;;;;
|MOON;(16388,136375,-113547);9394;GRAY;;;;
|MARS;(1032762,134086,1632659);64606;RUST;;;;
|EUROPA;(916410,16373.72,1616441);9600;LIGHTBLUE;;;;
|ALIEN;(131110.8,131220.6,5731113);60894.06;MAGENTA;;;;
|TITAN;(36385.04,226384,5796385);9238.224;CYAN;;;;
|TRITON;(-284463.6,-2434464,365536.2);38128.81;WHITE;;;;
|PERTAM;(-3967231.50,-32231.50,-767231.50);30066.50;BROWN;;;;
POINTS OF INTEREST
These geographic oddities may be worth a visit, just for the view, or for something more? Waypoints can be pasted into Custom Data the same way that planets can.
Waypoint_List=
|Cliffs of Madness;(-292963.9,-2471866,372147.3);LANDMARK;ACTIVE
|Olympus Mons;(1035143,117597.2,1695051);LANDMARK;ACTIVE
RECOMMENDED HOTBAR SET-UP
This is the set-up I use for most command-seats and cockpits. It’s built around a logic of having similar commands for the same buttons on differently themed hot-bar menus (i.e. MOVE_LEFT and ROTATE_LEFT use the same button on different menus).
MENU 1: General View Controls
[ 1 ] TOGGLE_INFO
[ 2 ] TOGGLE_GPS
[ 3 ] TOGGLE_NAMES
[ 5 ] PREVIOUS_MODE
[ 6 ] NEXT_MODE
[ 8 ] PREVIOUS_PLANET
[ 9 ] NEXT_PLANET
MENU 2: Rotational Controls
[ 1 ] ROTATE_LEFT
[ 2 ] ROTATE_RIGHT
[ 3 ] SPIN_LEFT
[ 4 ] SPIN_RIGHT
[ 6 ] ROTATE_DOWN
[ 7 ] ROTATE_UP
[ 9 ] STOP
MENU 3: Depth Controls
[ 1 ] ZOOM_OUT
[ 2 ] ZOOM_IN
[ 3 ] INCREASE_RADIUS
[ 4 ] DECREASE_RADIUS
[ 6 ] MOVE_BACKWARD
[ 7 ] MOVE_FORWARD
[ 8 ] TRACK_BACKWARD
[ 9 ] TRACK_FORWARD
MENU 4: Lateral Controls
[ 1 ] MOVE_LEFT
[ 2 ] MOVE_RIGHT
[ 3 ] TRACK_LEFT
[ 4 ] TRACK_RIGHT
[ 6 ] MOVE_DOWN
[ 7 ] MOVE_UP
[ 8 ] TRACK_DOWN
[ 9 ] TRACK_UP
TROUBLESHOOTING
If you have any troubles while running the script, please leave a comment either here, or on the script page. Try to give any relevant details you can, including error messages from the terminal and what actions led up to the crash/bug. I will look into the issue and do my best to fix it.
- Ship Marker Pointed Sideways / Yaw and Roll Axes swapped: This may be because your reference block has not been specified. Be sure to include the reference tag (default: “[Reference]”) in the name of one of your forward facing blocks. Cockpits and Remote Blocks are good candidates.
- Ship Marker Rotates in Opposite/Different Direction from Ship: This is likely due to your map’s perspective compared to that of your ship. You’re looking at the map from a different angle than your ship, and so your motions may seem “backwards”. This is a bit like flying a remote control plane. Try using CHASE or PLANET modes for a more intuitive sense of direction.
- Caught exception during execution of script: Line 19 … : If you’ve already tried including the planet data, make sure that your planet entries immediately follow the entry “Planet_List=” on the next line. Make sure that there’s only one line in the customer data that says “Planet_List=”. If you haven’t already tried to add the planet list, and you’re still getting this error, please let me know, and I will try to investigate the problem.