Nautilus is the core Subnautica modding library that aims to enhance developer productivity by offering common helper utilities as easy to use and robust as possible.
Other user's assetsAll the assets in this file belong to the author, or are from free-to-use modder's resources
Upload permissionYou can upload this file to other sites but you must credit me as the creator of the file
Modification permissionYou must get permission from me before you are allowed to modify my files to improve it
Conversion permissionYou can convert this file to work with other games as long as you credit me as the creator of the file
Asset use permissionYou must get permission from me before you are allowed to use any of the assets in this file
Asset use permission in mods/files that are being soldYou are not allowed to use assets from this file in any mods/files that are being sold, for money, on Steam Workshop or other platforms
Asset use permission in mods/files that earn donation pointsYou are not allowed to earn Donation Points for your mods if they use my assets
Author notes
This author has not provided any additional notes regarding file permissions
File credits
All credits go to the amazing Subnautica Modding Community that are making the game moddable.
Donation Points system
Please log in to find out whether this mod is receiving Donation Points
Changelogs
Version 1.0.0-pre.25
Add "Scale" property to Spawn Info for Coordinated Spawns by @LeeTwentyThree
Biome Handler by @LeeTwentyThree
Fix Nautilus not compiling for BZ (Thanks to Biome Handler) by @LeeTwentyThree
Version 1.0.0-pre.24
Fixed tech category display names not getting applied by @Metious
Correct set analysis tech entry behavior breaking change by @MrPurple6411
Change crafting gadget tree failure log level to Debug by @LeeTwentyThree
Fix CC3 1.0.0.2 bug. by @MrPurple6411
Overhaul ModPrefabRequest and PrefabHandler to fix multi request bug by @MrPurple6411
- Debug Log when prefab is removed from cache
- Reworked ModPrefabRequest to actually implement the Current, MoveNext, Reset and Release methods
- Retargeted the ModPrefabRequest.TryGetPrefab to pull from the cache
- Moved PrefabFactory call into the renamed InitPrefabAsync method.
Survival Handler Fixes and Improvements. by @MrPurple6411
- Fix: Setting Negative oxygen did not work right.
- Fix: Setting Negative Health would never kill and could glitch the player if reaching 0.
- Fix: InventoryUsables was list instead of HashSet
- Improvement: Added RunActionOnConsume(TechType techType, Action customAction, bool isEdible) to allow mods to send their own custom action to be performed when item is consumed.
Version 1.0.0-pre.23
Safety measures for localization registration by @Metious in #496
UploadHelper Overhaul/Fixing BepInExPluginVersion by @MrPurple6411 in #503
Allow nullables and params arrays in console commands by @Govorunb in #505
Loot distribution dependency on the prefab database by @Metious in #501
Fixed issue when yield returning same request by @Metious in #498
Fixed ambiguous method error for WithAnalysisTech by @Metious in #499
Version 1.0.0-pre.22
Default value for ItemActionHandler's Language argument by @Metious in #458
EquipmentGadget allowed None enum values by @Metious in #456
MarmosetUBER is initialized too late by @Metious in #455
New WithTechType overload and explicit cast from Enum to EnumBuilder by @Metious in #457
Added build GitHub actions by @Metious in #460
Mark packages as development dependencies by @tinyhoot in #461
Creature Egg examples have real names by @Metious in #462
FMOD master channel group spam by @Metious in #459
Fix mod message holding not being disabled at game start by @LeeTwentyThree in #464
Remove SMLHelper compatibility patches by @LeeTwentyThree in #465
Remove custom tech type be unlocked by default by @MrPurple6411 in #470
Correct Missing ModifyPrefabAsync in CloneTemplate.GetPrefabAsync by @MrPurple6411 in #468
Update ModCraftTreeLinkingNode.cs by @MrPurple6411 in #471
Multiple Fixes for the ModPrefabCache by @MrPurple6411 in #469
StoryGoal actions receive the name of the unlocked goal by @tinyhoot in #476
Fix Custom Fabricators not being able to be changed by handlers. by @MrPurple6411 in #481
Error when an option menu is loaded on menu open by @Metious in #480
Prefix SpriteManager.GetWithNoDefault to avoid potential issues with custom icons by @LeeTwentyThree in #482
Fix default TechGroup by @MrPurple6411 in #488
Correct LanguageLine value to string to properly use the Language key by @MrPurple6411 in #487
Ensure not checking for null key and instead use fallback language by @MrPurple6411 in #484
Fix Mod Options again. by @MrPurple6411 in #485
Extend the CloneTemplate by @MrPurple6411 in #489
Workbench Organization. by @MrPurple6411 in #486
Vehicle Upgrade Equipment Type Fixes by @Metious in #492
Mention marking Nautilus as a dependency in the docs by @Metious in #493
Model-MoonPool In BZ by @MrPurple6411 in #494
ScanningGadget & KnownTech handling by @Metious in #473
Creature Egg hatching fixes & large ACU support by @Metious in #463
Add Remove default unlock request system. by @MrPurple6411 in #495
⚠️ Nautilus is only supported on the latest version of Subnautica. If you're playing on the Legacy branch of Steam, use SMLHelper instead.
As of Nautilus 1.0.0-pre.22, Nautilus is NO LONGER COMPATIBLE with SMLHelper. Do not use both at the same time!
Nautilus Source code - Documentation - Contributions- Below Zero Version Aims to enhance developer productivity by condensing, simplifying, and generalizing the modding experience • Utilities for importing custom assets into the game, including but not limited to: sprites, models, textures, and sounds • A simple gadget system to create custom items derived from existing items or with custom models • Handlers to add, edit, and/or remove crafting recipes, PDA entries, blueprints, and so much more • JSON-based language handler with support for translating mods into any desired language. • A growing collection of utilities to simplify your experience, ranging from material conversions to storage container creation. • Subnautica style in-game configuration menu
Place the downloaded zip file into your Subnautica\BepInEx\ folder
Right click it, and select extract/unzip here (NOT "Extract all").
If you cannot find the button in step 4, you can instead open the zip file, copy the "plugins" folder, and paste it into the BepInEx folder.
You can also use the Subnautica Mod Manager to install Nautilus automatically. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ What is Nautilus?
Nautilus is a continuation of SMLHelper with a far cleaner codebase, more convenient workflow for modders, and greatly improved maintainability. It provides all the features SMLHelper previously did, along with several new additions, improvements to existing features, overhauls of documentation, and far less bugs thanks to rewrites of both surface-level and internal systems.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Why discontinue SMLHelper? SMLHelper was discontinued as we felt we had the perfect opportunity to create an improved, revised, and modernized continuation of the project made purely for BepInEx, following the discontinuation of QModManager.
Following the Living Large update the majority of mods were left broken and in need of fixes, but before any of the mods could be updated all authors first needed to wait for QModManager to be fixed, which has been the case for over 5 years now (as of 2023). So, in light of the update, we took the opportunity to finally retire QMM, removing the middle-step in the modding process, removing the need for authors to wait for QMM to update before they can update their own mods in the event of game updates, and opening the door to more versatility for modders through BepInEx.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Can I use Nautilus and SMLHelper? SMLHelper 2.15.0.1 and Nautilus are NO LONGER compatible as of 1.0.0-pre.22. We heavily encourage modders to update their mods to Nautilus going forward, as SMLHelper is discontinued and will not be receiving future support.