A Stream Deck XL with the NMS Deck layout: Back, Follow on, Launch, and folders for On Foot, Ship, Exocraft, Galactic Map, Planet & System, Building and Photo Mode; health 84, shield 100, hull 620, units 4,215,880, nanites 3,120 and quicksilver 1,250; the planet Veyastra Minor with its weather, flora, fauna, resources and scrap; speed and the ship Aurora Driftwing; a Green star, a Manufacturing economy, Low conflict and the Korvax; the location, portal address, life support 82% and hazard protection 64%.
The NMS Deck layout on a Stream Deck XL. Every number here is made up.

What you need

  • No Man's Sky on Steam, on Windows.
  • Windows 10 or 11 with Stream Deck software 7.1 or newer. There are layouts for the Stream Deck, XL, + and Neo.
  • Python 3.9 to 3.13: not 3.14, which NMS.py does not support yet, and not the Microsoft Store version. One command installs 3.13.
  • NMS.py, a free, open-source modding framework for No Man's Sky, and the NMS Deck bridge, a small NMS.py mod that comes with the plugin. The plugin installs both.

1. Install the plugin

On the Elgato Marketplace. Install NMS Deck from its Marketplace listing; Stream Deck loads it automatically. The bridge comes inside it, and its layouts for every Stream Deck come with it too.

2. Python, NMS.py and the bridge

Python 3.13, not 3.14. python.org's big download button now gives you 3.14, which NMS.py does not work with yet. The easy way round it is one command. Open Terminal or PowerShell (right-click the Start button) and paste:

winget install -e --id Python.Python.3.13 --override "/quiet InstallAllUsers=0 PrependPath=1 Include_launcher=1"

It installs Python 3.13 for your account, adds it to PATH, and takes a minute; there is nothing to click. If you already installed 3.14, that is fine: leave it, and install 3.13 beside it with the same command.

Rather use the website? On python.org go to Downloads → Windows, scroll down to the newest Python 3.13.x (not 3.14) and pick Windows installer (64-bit), ticking Add python.exe to PATH. Not the Microsoft Store version.

  1. Install Python 3.13 with the command above.
  2. Put any NMS Deck key on your deck, the NMS Deck key is the obvious one, click it, and expand Setup in its settings. It lists what it found: Python, NMS.py and the bridge.
  3. Press Install NMS.py. It runs pip install nmspy, which downloads NMS.py from PyPI; this can take a minute.
  4. Press Install the bridge. If NMS.py has no mods folder yet, the bridge gets one of its own (%APPDATA%\NMSDeck\mods), away from the game's GAMEDATA\MODS. If you already use NMS.py with other mods, the bridge joins them and your settings are left alone.

When a plugin update brings a newer bridge, Setup says so and the same button updates it.

Installing the bridge by hand

The button is the easy way, but the bridge is also here on its own, the same version that comes with the plugin:

Download the NMS Deck bridge 0.6.2 NMS.py mod · 14 KB zip

The bridge is open source (MIT), so you can read exactly what it does: github.com/AussieH/nms-deck-bridge.

  1. Install NMS.py: python -m pip install nmspy.
  2. Put nms_deck_bridge.py in the mods folder NMS.py is set to: mod_dir in %APPDATA%\pymhf\nmspy\pymhf.local.toml. Running pymhf run nmspy once asks for it if it is not set.

Also on the XENEON EDGE

The same bridge feeds NMS Dashboard, our iCUE widget for the Corsair XENEON EDGE: a cockpit with a big speedometer when you fly, and your health, ship, wallet and the planet you are on when you don't, on the touchscreen under your monitor, at the same time as your Stream Deck. It is on the Elgato Marketplace.

3. Start the game

NMS.py loads mods by starting the game itself, so start No Man's Sky with the plugin's Launch key rather than Steam's Play button. NMS.py asks Steam to run the game and brings the bridge in; its small window opens minimised and closes with the game. Load your save and the keys come alive within a second or two.

NMS.py has a control panel of its own, which slows the game down. Where NMS Deck set NMS.py up, the panel is off, and the Launch key keeps it off after NMS.py updates (NMS.py's own defaults can otherwise switch it back on; the original file is kept as pymhf.toml.nmsdeck-backup). If you set NMS.py up yourself and want the panel, it is left alone.

4. The NMS Deck key and its layout

You do not import a profile. Put the NMS Deck key on your own profile and press it: the deck switches to a layout made for it, with Back in the corner to return where you were. The layouts live inside the plugin, so they do not clutter your profile list, and there is one for each kind of Stream Deck.

The layout follows the game. Get into your ship and it turns to the Ship page, get out and it turns to On Foot, and the same for an exocraft. It turns once each time, so you can still go to another page yourself. The Follow key on the main page switches this on and off. In a space station or a freighter hangar the game does not say whether you are sitting in your ship, so nothing turns there.

Every key is also in the NMS Deck category of the actions list, so you can build your own page instead and drag in only the keys you want. Leave their titles empty; the keys draw their own.

5. The keys

KeyShows
ReadoutOne reading: health, shield, hull, units, nanites, quicksilver or speed; where your ship's power is going (balanced, weapons, engines or shields); a charge (life support, hazard protection, launch thruster, pulse engine, hyperdrive, deflector) as a percentage with a bar; the planet, weather, flora, fauna, resources or scrap; the system's economy, conflict, race or star; your ship's name and class; your galactic coordinates or portal address
GaugeA bar for health, shield, hull or a charge, on one key or stretched across a row of them, or on a Stream Deck + dial's strip of the touch screen
NMS DeckOpens the layout for your deck; its Back key returns you
FollowSwitches the layout following the game on and off
LaunchStarts No Man's Sky through NMS.py, with the bridge
Game controlsThe game's default keys for on foot, ship, exocraft, building, the galactic map and photo mode, each showing the key it sends. Redirect Power steps the ship's power along, and the Power readout beside it shows where it went

Speed is what the HUD shows, in the ship and in an exocraft. Charges are for whichever ship you are flying. The planet's words come from the game's own text, so they read the way they do in game. Wealth and conflict show the plain level (poor, high); the galaxy map picks a synonym for them, such as Destitute or Alarming.

6. The pages

The Ship page on a Stream Deck XL: bars three keys wide for hull 620, launch 90%, pulse 68% and hyperdrive 45%, stacked one above the other; Redirect Power beside a Power key, Land Exit and Pulse; speed, units, the deflector at 100% and the ship Aurora Driftwing, S class; the star, economy, conflict and race of the system, the planet and its weather, the location and portal address, Galaxy Map, Scan, and a Controls key.
The Ship page on an XL: bars, the system and planet, and the few buttons you fly with.
The On Foot page: bars for health, shield, life support and hazard protection; the planet, its weather, flora, fauna, resources and scrap; the system's star, economy, conflict and race; the location and portal address; speed and units; Scan, Visor, Torch, Quick Menu and a Controls key.
On Foot: your bars beside the planet you are standing on.
The Planet & System page: the planet Veyastra Minor, a Paradise Planet, with Mild Rain, Bountiful flora, Frequent fauna, Numerous rich resources and Salvageable scrap; a Manufacturing economy, wealthy, Low conflict, Korvax, a Green star with 5 planets; the location in Euclid with galactic coordinates and a portal address; and Visor, Scan, Galaxy Map, System Map, Quick Menu, Inventory and Options.
Planet & System, from a made-up planet.

The layouts put what you want to read first. The main page is all readouts, with a folder for each part of play: On Foot, Ship, Exocraft, Building, Galactic Map, Photo Mode, and Planet & System. The planet keys show the planet you are on, and say in space when you are not on one.

  • On Foot and Ship open on their bars and information, with a handful of buttons you press all the time. The Controls key opens a page of every button, and Gauges brings you back. On a 15-key Stream Deck the bars take the middle of the page.
  • Galactic Map shows the system you are in and your hyperdrive: on an XL above the map's buttons, on a Stream Deck with the buttons a Controls key away.
  • Exocraft keeps the buttons you drive with, beside the planet you are driving over.
  • Power shows where your ship's power is going while you fly, and says not flying otherwise.

7. Bars and the Stream Deck +

A Stream Deck + with the Ship page: the deflector, the ship's name and class, target and ship controls, and the touch strip showing hull 620, launch 90%, pulse 68% and hyperdrive 45% as bars over the four dials.
On a Stream Deck +, the ship's bars sit on the touch strip.

A Gauge key draws its own slice of one bar, so a row of them reads as one bar across the keys. To build one on your own profile, put a Gauge on each key of the row, all showing the same thing, set Keys wide to the row's length, and number them from the left. The first key carries the name, the last the number. On a Stream Deck + dial, a Gauge fills that dial's strip of the touch screen instead.

Health, shield and hull have no maximum in the game's data, so their bars fill against the most seen since Stream Deck started. The charges are exact.

8. What it can and cannot do

  • The bridge only reads. It changes nothing in the game or your save, and cheats nothing.
  • It writes one small file, %APPDATA%\NMSDeck\state.json, once a second, and a short probe.txt once a session listing what it could read. The plugin reads that file and nothing else from the game.
  • Nothing goes online, apart from Install NMS.py downloading NMS.py from PyPI when you press it. No account, no login, no ports. The plugin's log records states, never your currencies, location or names.
  • It reads what your own game knows, so it works in single player and in multiplayer sessions alike.

Troubleshooting

Six keys: game not running, launch with NMS Deck, at the menu, update the bridge, Launch saying set up first, and a weather key saying in space.
What the keys say when there is nothing live to show.
The key saysWhat it means
game not runningNo Man's Sky is closed; start it with the Launch key
launch with NMS DeckThe game is running but the bridge is not: it was started from Steam rather than through NMS.py, or the bridge is not installed. Quit and start it with the Launch key
at the menuThe game is on its title screen; load a save
update the bridge / update the pluginThe two versions do not match; Install the bridge in Setup puts in the one that came with the plugin, and the game needs a restart to load it
set up first (Launch)Python, NMS.py or the bridge is missing; Setup in the key's settings says which
in space (planet keys)You are not on a planet

It stopped working after a No Man's Sky update

NMS.py finds its way around the game by patterns, and a game update can move things until NMS.py catches up. The bridge finds most of what it reads by shape rather than fixed positions, so many updates do not affect it. When NMS.py is updated, Install NMS.py in Setup brings in the new version. Nothing is wrong with your deck or your save.

The page did not turn when I got into my ship

Check the Follow key says ON. In a space station or a freighter hangar the game reads the same whether you are walking or sitting in your ship, so the page turns once you fly out.

Frequently asked

Why start the game with the Launch key?

NMS.py loads its mods by starting the game itself. Started from Steam's Play button, the game runs without NMS.py, and the keys say launch with NMS Deck.

Does it show sentinels, or my freighter's expeditions?

Not yet. The sentinel level the discovery pages show is not where the planet's other details are, and expeditions are kept in a way the bridge cannot read live yet. Both are on the list.

Does it use my custom planet and ship names?

Your ship's name, yes. Planets show the game's original name for now: renamed discoveries are stored apart from the planet itself.

Is it made by Hello Games?

No. NMS Deck is an unofficial fan project, not affiliated with or endorsed by Hello Games. No Man's Sky is a trademark of Hello Games Ltd. NMS.py is a separate open-source project. Every glyph on the keys is original artwork; no game art is used.

Something is still wrong.

Email support@teatimeservers.ca with what the key says, what Setup lists, and the file %APPDATA%\NMSDeck\probe.txt, and we will take a look.