Star Systems

Star Systems is a macOS app to create, manage, and view a setting for sci-fi role-playing games like Traveller, Cepheus, or Stars Without Number. Generated systems include either a star or a binary and all the bodies in the star system: planets, gas giants, asteroid belts, and satellites.
Before downloading, please check the system requirements

System generation

This star system generation follows the Traveller5 (T5) world generation rules referenced in Book 3. For example this is the table in T5 to generate the home star.

And the corresponding swift code in my app.

You can use either the Stars Without Number (TL0-TL6) or the Traveller (TL0-TL22) Tech Levels. Once you've created a star system with on of these TL systems the universe is locked into this mode.
You can specify the star's spectral type, temperature, and luminosity class or these can be randomly generated. You can specify the tech level of the system or generate it randomly with a cap. All the bodies in the system are generated with full Universal World Profile (UWP), including all satellites. Day and year length are computed for all bodies as well.

Star Map
Systems are located on the star map by coordinates. I use the same conventions that Traveller5 does, so a sector is 32 hexes wide by 40 hexes tall. Subsectors are 8 x 10. I decided to number sectors in a way that they always have exactly two digits, so negative numbers are represented by letters, starting with A for -1 and B for -2, etc. This way the coordinates A1-1024 are for the sector one left and one up from the central sector.
Note that this is different than the TravellerMap which has a reversed Y-axis compared to mine. In the TravellerMap the Y increases going down or Rimward, while in this app Y increases going up or Coreward. When importing data from the TravellerMap I make the conversion to my coordinate system.

I chose to put the star of a system in the middle of the hex instead of the traditional planet. Its color and the size of the circle represents the spectral and luminosity class respectively. I put the planet in the lower right corner which is typically unused. I also decided to put the amber or red zone indicator around this planet instead of the the traditional "whole-hex" version. The rest are the standard gas giant and naval or scout bases presence, and on top the best starport in the system.
The name in the hex is the name of the star system, not the main planet as in Traveller, although in a Traveller context you'd name the system by the name of the main planet and you'd get the same result as in traditional Traveller maps. This is exactly what I do when importing from the TravellerMap.

When you click on a system, a card appears in the lower right part of the map. It shows a lot of information about the system and its planets. For TravellerMap imported data, the parts that are not in my basic UWP are put into the world's comments. Allegiances automatically creates factions that appear in the faction list.

UWP Reference
I also have a floating window that shows the meaning of the UWP entries. This shows what the values mean, including for the 2nd survey extensions.

Rutters (routes)
Once you have two systems or more you can add "rutters" which are routes between star system. In Stars Without Number these have game mechanics attached which are supported: they are associated with a faction and have an 'age' parameter. In a Traveller map they are called routes. You can enter the end point by coordinates or simply select star systems by name.

Nebulae

You can also add five types (i.e., colors) of nebulae simply by adding a list of hexes. Nebulae aren't used in Traveller but they can enhance a map, or you can have them have mechanical effects, like disrupting jumps, in your games.

Regions
Regions are defined by a list of hexes and vertices points. The app computes the shortest path between these and traces the region, which can be open or closed. Each region has a label that is automatically placed in the computed center of the region or on a specified hex. For example this is the Sundown Reaches region in the Star Frontiers map which is defined by 6 hexes and has a custom-placed label.

Or in the context of Traveller, closed regions have a background.

Labels
Finally you can also add labels anywhere on the map, specifying a hex location, the font size, the color, and a rotation angle. In the context of Traveller I use them for sector and subsector names.

Systems list

The 'Systems' tab displays a searchable list of all the systems. You can display only a specific subsector, and you can sort by either coordinates, system names, or main world names. If you click on a system you get a more detailed view with all the bodies in the system with their UWP. It shows planets, gas giants, and satellites. Those with population show an icon and the population.

From there you can go into edit mode and modify any of the bodies in the system. You can edit all parameters, for example changing the atmosphere of a planet. You can add system notes, world notes, add names for bodies, and add factions and world tags to any of the bodies in the system.

TravellerMap import

You can import a whole sector by name, e.g. "Spinward Marches", or one of its subsector, and you can choose which milieu, or timeline, you want to import. For example this is an import of the Spinward Marches sector.


System Requirement & Support
Star Systems is a macOS application. It requires macOS version 26.6 (Tahoe) or higher.
To ask questions, report bugs, ask for features, or just share how you use the app, please join us on Discord.
Copyright Notice
This application, including all original code, interface design, and non-licensed content, is © 2024-2026 Denis Ricard. All rights reserved. This application is all original code and is not derived from any other source.
The TravellerMap importer uses public API. The Traveller game in all forms is owned by Mongoose Publishing. Copyright 1977 – 2026 Mongoose Publishing. Traveller is a registered trademark of Mongoose Publishing. Mongoose Publishing permits web sites and fanzines for this game, provided it contains this notice, that Mongoose Publishing is notified, and subject to a withdrawal of permission on 90 days notice. The contents imported from the TravellerMap are for personal, non-commercial use only. Any use of Mongoose Publishing’s copyrighted material or trademarks and its files should not be viewed as a challenge to those copyrights or trademarks.
This program cannot be republished or distributed without the consent of the author.
Disclaimer of Warranties and Limitation of Liability
This software is provided “as is,” without any express or implied warranties of any kind, including but not limited to warranties of merchantability, fitness for a particular purpose, or non-infringement. The developer makes no guarantees regarding the functionality, reliability, or suitability of this software for any purpose.
In no event shall the developer be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including but not limited to loss of data, business interruption, or financial losses) arising from the use or inability to use this software, even if advised of the possibility of such damages.
By using this software, you agree that you do so at your own risk. You are solely responsible for any damage to your device, data loss, or any other issues that may arise. The developer assumes no responsibility for maintaining, updating, or providing support for this software.
By using this software you agree to these terms.
