NoMansSky:Current State of Modding: Difference between revisions

From Step Mods | Change The Game
Line 40: Line 40:


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



Revision as of 07:44, August 9, 2020

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 game global settings[edit | edit source]

No Man's Sky exposes all its variables via simple files named Globals. And there are thousands of variables, from wind strength to camera positions, from walk speed to savegames order. So the easiest thing you can do in NMS is opening a global file, 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 use the well known .DDS file format, that can be read and write by major painting tools. So you can remake some poor textures in 4K or recreate them completely to match your own style.

Changing any game text or dialog[edit | edit source]

All the game strings can be found in the LANGUAGE folder in the form of 5 files declined for each of the language supported. Thanks to NMS Translator, you can easily convert the .mbin files into simple and readable .txt file to do any thing from fixing a typo, changing an object name, rewrite dialogs or even create your own language translation.

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]

Unknown GLOBALS properties[edit | edit source]

While almost all of the Globals values now have a label, 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. In such case, there is just *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.

So if you want to help revealing what these unknown properties do, back these GLOBALs up, make and note your changes 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.

Animations and collisions[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 mission stuff[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.

Other oddities[edit | edit source]

  • While spawning objects on planets is doable, 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 (3D suns to name one) 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.
  • Shaders have been converted into Vulkan since Beyond. Sadly these .spv shaders files are a total mess to be able to edit shaders in any effective way.

Template:NMSPageClose