This is a proof-of-concept system for ship location, velocity and waypoints for Starbase ships. It is not meant to replicate or replace ISAN, which is a much more comprehensive system and you should probably just use that. ISAN is better than SkyScan in almost every way. In fact, here's a link to that because that's probably what you want instead.
- 3-point coordinate location system ✅
- Save up to two locations in memory for reference ✅
- Velocity! ✅
- Slow-ish, ~2 second refresh delay
- Only works up to 1000KM away from Origins
- Requires at least one Advanced YOLOL Chip (two if using the Velocity plugin)
- Requires 3 Navigation Receivers
- Skyscan is not scalable. In fact it may actually be possible to have a single coordinate refer to two different points in space (though it is unlikely you will encounter these points)
- No one's checked my math, yet. 'Speed' might not be 100% accurate.
- Ongoing support and updates of this system is limited*
*The author has a full-time job, a newborn baby, and is finishing graduate certificate courses. What little free time is left will probably be spent actually trying to playing the game.
Here's a quick video walkthrough, but you'll want to read through the instructions as well.
- Place 3 small or regular Navigation Recievers on hardpoints or turntables. Set up each Nav Receiver device fields as follows:
- Nav Receiver 1
- Replace
Message
device field name withnsig
- Replace
SignalStrength
field name withnss
- Set
ListenAngle
value to180
- Set
TargetMessage
value to"origin_north"
- Replace
- Nav Receiver 2
- Replace
Message
device field name withgsig
- Replace
SignalStrength
field name withgss
- Set
ListenAngle
value to180
- Set
TargetMessage
value to"origin_gate"
- Replace
- Nav Receiver 3
- Replace
Message
device field name withwsig
- Replace
SignalStrength
field name withwss
- Set
ListenAngle
value to180
- Set
TargetMessage
value to"origin_west"
- Replace
- Nav Receiver 1
- Add a Hybrid Button with 1st device field set to
SkyScan
ButtonStyle : 1
- Add a Hybrid Button with 1st device field set to
LocMark
ButtonStyle : 1
- Add a Text Panel with 1st device field
Location
- Add a text panel with 1st device field
Velocity
- Add a text panel with 1st device field
SavedLoc1
- Add a text panel with 1st device field
SavedLoc2
- If desired, add a Progress Bar panel with device field
Speed
PaneMaxValue: 150
- A Switch 12x24 button to control save slots new!
- Replace SwitchState with
LMSwitch
SwitchStyle : 2
- Replace SwitchState with
- skyscan.yolol on an Advanced YOLOL Chip
- skyscan-velocity.yolol on an Advanced YOLOL Chip
- Provides speed and velocity information to panels
- skyscan-locmark-switch.yolol on a Basic YOLOL Chip
- Save up to two locations in long-term memory.
- (Note: You could use skyscan-locmark-cycle.yolol instead and leave out the switch control. This will cycle between the two save slots.
- A blank YOLOL Memory Chip with the default device field names (
ChipField1
,ChipField2
, etc)
Note: if nav receivers aren't working correctly after first installing, you may need to restart your game.
Press the SKYSCAN
button to turn on scanning and location. Your Location
display will show your X,Y and Z coordinates. The Velocity
display shows your velocity in each coordinate direction and overall speed. Negative values indicate you are traveling toward the origin_gate
station.
Press SKYSCAN
again to turn off and/or reset.
Press LOCMARK
button to save your current location to longer-term memory. A blinking caret (^
) indicates which memory slot will be written to next.
SkyScan was developed from scratch as a kind of personal challenge that turned out better than expected, so I have decided to publish the code. All code for this system was developed independently of ISAN, and any similarities are purely coincidental.
Skyscan uses a calculation method called "True Range Multilateration" to triangulate a ship's position, assiging origin_gate
as (0,0,0)
rather than inventing an imaginary origin point and axes. This is essentially how the GPS in your phone works.
Because of this, Skyscan's coordinate system is different than ISAN, though it's entirely possible to convert Skyscan coordinates to ISAN-compatible ones with a translate and rotate function. Please feel free to contribute code if you find an easy way to do this.
SkyScan coordinate system (dashed and colored lines) relative to ISAN coordinates.- While functionally similar to ISAN, SkyScan was developed to be modular and simple.
- Skyscan is more of a personal waypoint system, but it can be used as an alternative to ISAN if desired.
- Since Skyscan uses the transmitters as the coordinate axes, it greatly simplifies the position calculation - SkyScan can run in just 7 lines of YOLOL, and the Velocity plugin is just 4 lines!
- Skyscan is not as feature-rich and does not have a companion website like https://isan.to, which is a wonderful community resource.
Special shout out to dbaumgarten's YODK and NOLOL Development Kit, without which I wouldn't have been able to do any of this.