NoMansSky:Current State of Modding

From Step Mods | Change The Game

Template:TOC right

What We Know So Far![edit | edit source]

Some aspects of the game remain hidden and without more experimentation through playing with more heavily modified configurations of the game, the effects of these configurations simply cannot be known. Due to this, there are still some aspects to modding that cannot be done consistently and some that may perhaps never be possible. However, there are numerous aspects of the game with which we have become reasonably familiar, and allow for some fairly extensive changes.

Editing globals[edit | edit source]

No Man's Sky exposes all its variables via simple files named Globals. So the easiest thing you can do in NMS is opening a global file and change one or several of these values, each (almost) properly named, then recompile and repack the global file and enjoy the changes in game 2 minutes later.

Reworking Textures[edit | edit source]

NMS Textures uses a standard file format, the .DDS, that can be read and write by major painting tools. So you can remake some poor textures in 4K or redo them to match your own style.

Adjusting Rewards[edit | edit source]

Changing or adding rewards from any interactions, like opening containers, is a fairly easy task. By modifying the REWARDTABLE.MBIN' found in METADATA\REALITY\TABLES, one can adjust amounts of currency and/or items received, or change the items entirely with a simple change of the product/substance IDs, which can be found in the Reference Tables. You will also find a complete list of reward triggers as long as reward items on this page.

Adding Objects to the Build Menu[edit | edit source]

Not only can we add existing objects to the Build Menu, which can be incredibly helpful in testing out custom interactions, but any custom objects which one may create can also be added here.

Adding Custom Interactions[edit | edit source]

This goes two ways.

  • There are the interaction types which are involved with alien and facility terminal interactions (largely found in NMS_DIALOG_GCALIENPUZZLETABLE.MBIN, in METADATA\REALITY\TABLES), which we can add to with our separate custominteraction types, enabling new pools of interactions to be created. That is, if you're tired of the same old Gek conversations and Observatory puzzles, you could rewrite and/or add to them using the existing interaction type, or simply replace them with a pool of your own with a custominteraction type.
  • Alongside this there are the roots of interactions themselves found in entities, where one can script in some events with ActionTriggers, such as particle effects going off, messages displaying, and entire elements of an object being switched off and removed from view.

Add New Interior Layouts[edit | edit source]

Since we can customize scenes to our liking, and since interiors are largely layout scenes, we can totally overhaul the interiors of buildings we encounter in the game. We can slightly rearrange them, replace them, and/or simply add to the list of them to give buildings a more varied feel to them!

Adjust Building Generation Altogether![edit | edit source]

With the improved understanding of L-SYSTEMS established recently, we now have a better sense of how we could alter the generation of structures entirely. This means that instead of lonely little structures with nothing but a single room, we could make it so that they have new wings on the sides with almost whatever we imagine to add to them.

Transform Planets with Custom Biomes![edit | edit source]

Many have complained that existing biomes rapidly become too familiar, so why not create your own!? Through extensive work, you can customize and make new biomes through examining the existing biomes in METADATA\SIMULATION\SOLARSYSTEM\BIOMES.

Add More Ships![edit | edit source]

Although this requires some 3D modeling experience, you can create new ships. This way you can add to the existing variety of ship looks, and fly in ships of your own design!


And these are only a few of the things we've figured out !

What We're Still Figuring Out![edit | edit source]

GLOBALS EXML Files Unknown Properties[edit | edit source]

Many of the most game-changing attributes and structs are found in the GLOBALS EXML files that are all found in the root directory of a fully extracted game archive. These include everything from the physics values of spacecraft, the density of clouds and fog on planets, the way information is rendered in the HUD, and more.

While almost all of these values have already been exposed, sometimes unknown properties remain as such as they do not have attached names to be found within the binary from which MBINCompiler obtains most structures for EXML files. There is currently *no way* to find out exactly what most of these properties are unless one is willing to test them manually by changing some values and observing differences in-game.

Provided this, back these GLOBALs up, make and note your changes to specific Unknown Properties in specific GLOBALs and play awhile until you notice some changes. If you've been feeling a little burnt out on the game, this may be an excellent way to spice things up through trying to really break it in in new ways. But if you do so, please, please, please note which properties you changed, in which GLOBAL, and how you changed them, as this will enable others to reproduce and refine whatever strange effects they may have had on your game!

Currently, you can add your findings to the MBINCompiler Github wiki if you've a Github account.

Tool-Related[edit | edit source]

Complex custom animations are currently out of scope and are not yet supported by the model exporter. Translating Blender animation armatures into No Man's Sky's animation system is a difficult task and not yet doable for robust animations (e.g. creature movement). If you've the skills to do so, however, and are willing to help in producing a plugin, please give us a hand!

Mesh collisions have been broken since the release of Atlas Rises. Any help in restoring these would be greatly appreciated. Source for the Blender plugin involved in exporting custom models may be found here.

New Stuff in Familiar MBINs[edit | edit source]

Missions have received major attention with v1.3x, and it looks like it is possible that you are able to do custom missions that allow the player to be sent to specific places and do specific interactions. Testing the boundaries and flexibility of these would be very useful.

Much mission-related information can be found in METADATA\SIMULATION\MISSIONS, and almost certainly weaves through the NMS_DIALOG_GCALIENPUZZLETABLE.MBIN as well the REWARDTABLE.MBIN.

Oddities Not Found in MBINs[edit | edit source]

While spawning objects on planets have a wide variety of already-existing solutions, the ability to spawn new objects in space is largely locked within the game binaries rather than the MBIN files and thus cannot be changed without modifying the game executable itself.

Any form of functionality the game does not provide by default cannot be introduced without modifying the executable itself or inserting code during runtime via NMSE (script extender). There is currently no way to natively access scripting otherwise.

Vulkan .spv shaders, found in the SHADERS folder and .bin files inside PIPELINES folder among the unpacked game files are heavily used by NMS for a variety of different visual elements of the game. If .spv files need to be converted in a readable format, .bin files are typicaly .txt files that can be opened and modified with any text editor. Template:NMSPageClose