Coder Social home page Coder Social logo

subnauticawatcher's Introduction

SubnauticaWatcher Mod

Build status GitHub license GitHub release

Purpose

This mod adds a "live" map to the Subnautica game. This can be considered a spoiler for the game.

Should the Subnautica development team ever add an auto-map or ingame map feature, this mod will be obsoleted.

Motivation

I tend to get lost a lot in Subnautica. Exploring is great fun, but once I've found something, once I know where something is, I really want to be able to find it again. Beacons help a great deal, but for some things, like resources, when I don't have a beacon available or when I simply want to know which way to turn to get to a biome a map is invaluable.

If I were really trapped on 4546B I'd definitely be drawing a map, pinning it to wall in my cyclops, or drawing it in AlterraPaint on my PDA.

This mod is my personal answer to not having an in-game map. I'm making it available as I'm sure there must be at least one other person that would like an in-game (ish) map.

Features

Check out the List of Features.

Change Log

  • v0.4 - Day / Night indicator
  • v0.5 - Leviathan Spawns now in their own layer.
  • v0.6 - Now able to automatically switch to correct base layer (e.g. Lost River, Lava Zone)
  • v0.7 - Installer now handles cases where Subnautica is not in the default Steam library.
  • v0.8 - New and updated biome layers
  • v0.9 - Player view direction now indicated on map

Mod in Use

Installation

The instructions below should work for experienced users. If you're struggling with the installation, take a look at the The Really Detailed Installation Guide

Warning: While attempts have been made to ensure this mod does not interfere with other mods, this cannot be guaranteed.

Warning: You may need to repeat steps 4 to 6 whenever Steam updates Subnautica.

  1. Download the latest Release zip
  2. Extract the zip into your Subnautica installation folder, (usually Steam\steamapps\common\Subnautica)
  3. Unless updating, or unless you have another mod installed it should not normally require overwriting of anything.
  4. In your Steam\steamapps\common\Subnautica\SubnauticaWatcherInstaller folder run SubnauticaWatcherInstaller.exe
  5. Click the "Install" button.
  6. Check for errors, then exit SubnauticaWatcherInstaller.exe.

Usage

  1. Run Subnautica as usual
  2. Open Steam Overlay (usually by pressing "shift-tab")
  3. Select "Web Browser"
  4. Enter the URL: http://localhost:63030

Troubleshooting

Untrusted Publisher / Application

If you receive this warning from Windows, it's because this application isn't signed.

If you decide you want to trust this program, or you've read the source code and assured yourself it's benign, then you can run the program anyway.

My install is not detected!

The installer should correctly find Subnautica in almost all cases. One edge case where it fails to correctly detect your install location is if you've moved your install.

For example you installed Subnautica in the default location, then moved or re-installed it on a different drive.

The problem is that the default/old installation folder (usually c:\program files (x86)\steam\steamapps\common\Subnautica) still exists.

Please delete or rename this folder and try installing again.

Steam -102 Error

It's been reported that sometimes you get an error from Steam when typing the full URL into the Overlay Browser. Using merely localhost:63030 without the protocol part (http://) appears to work around this issue.

Logs

As of version 0.3.0 the installer creates logs to help with error reporting and resolving issues.

You can find the logs in Steam\steamapps\common\Subnautica\SubnauticaWatcherInstaller\Logs\{date}.log

Restore Subnautica to pristine state

  1. Delete folder Steam\steamapps\common\Subnautica\Subnautica_Data\Managed
  2. This will remove not only this mod, but every single other mod/tools/change you've made to this folder.
  3. Open Steam
  4. Find Saubnautica in your games list
  5. Right-click and Select 'Properties'
  6. On the 'Local Files' tab click on 'Verify Integrity of Game Files...'

This will cause steam to re-download all files that might have been changed by this mod, or other programs/mods.

subnauticawatcher's People

Contributors

martinsgill avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

subnauticawatcher's Issues

Indicate player view direction

In addition to the player's position, indicate which way the player is facing.

Replace the player "diver" icon with an arrow style icon that rotates to indicate view direction.

Installer broke the game, cannot repair

The installer said something about Assembly-CSharp.dll having a virus.
In the log file of the install I found a stack trace when backing up Assembly-CSharp.dll, and after that I cannot repair the game files. Tried removing installing again - steam cannot reinstall the game. WTF?

Install not in Default Directory

Is there any way to have a config file where we can hardcode our Subnautica install path into? Mine is not Default and it asks every time I update or reinstall Subnautica Watcher.

Ability to Add/Remove POIs

I think many of the POIs are outdated...

Would be nice to have the ability to Add/Remove our Own POIs and have them saved locally or something?

new map

I want to suggest using a relief map of the seabed. A "flat" biome map, in my opinion, is not at all interesting.

I converted the file ...\Subnautica\AssetBundles\lod3worldmeshes, which contains model of octets with a size of 160 m with a resolution of 4 m. After removing unnecessary and erroneous octets and merging them into one, it is possible to create a height map. Below are examples of ready-made maps.

Top view, applied filter Ambient Occlusion (can be combined with a biome map for the effect of relief):
ao_map

And here the coloring of each point is added depending on its height:
relief_map

few questions

  1. What is the principle of work (injection into game files / parsing saves / ...)?
  2. How much can this affect performance?
  3. Can I open a browser on another computer on the network, not just localhost?

Biome Color Key Overlay

It'd be super helpful if there was an toggleable sidebar with the biome colors, because even after a ton of time playing the game and looking at this same map, I struggle to remember which color indicates which.

Alternately, maybe have the mouseover show surface biome in addition to coordinates?

Add biom legend.

Hi! First of all - cool mod! It helps me a lot, and even more that a lot...
But - at the beginning I didn't know wich color represents each biom.
Right now I've found the info on wiki, but... It's a gif. And I have to wait for the desired biom to be shown.
In my opinion - it would be better if the map would have the legend, so the players can easily see where they need to go =)
Thanks again for the mod, really love it! <3

Display creatures in each biome

Add a layer to display which creatures are present in each biome.

As map is 2D you'd get some ambiguous information, e.g. jellyshroom caves snake under safe-shallows.

"Fog of War" - exploration layer

Provide a mechanism for exposing only those areas of the map the player has visited.

Issues:

  • How big a "bubble" to expose around the player?
  • How to deal with cave systems (e.g. jellyshroom); initial version may just ignore height/biome differences.

Display current time of day

The time of day is nice to know.

Displaying it as either a text-time, or a rotating sun/moon graphic would be nice to have.

Can't load the map anymore

Looks like update 83 (released on March 8, 2018) might have messed something up.

If I try accessing the map as usual (localhost:63030), I'm getting "Steam -102 Error". I tried reinstalling the mod (Windows 7) but it didn't help. Any ideas?

Thanks!

Create API for saving map/user info

To allow various features that require data to be persisted (e.g. custom POIs etc) a mechanism is required to save that data so that it an be loaded the next time the game starts.

Things to keep in mind:

  • How to handle multiple different players? Maybe store data on a per-save basis?
  • Where to put the data? Is it safe to use the use save-game folder?

Player location not updating

Fresh installation of mod. Map loads, but player location appears to be fixed to its initial state in the save file. Loading a few different saves moves the cursor, but fails to update. Vehicle locations are also static and appear wherever they are in the loaded save file.

Migrate to websocket

Currently a polling mechanism is used.

This was considerably easier to implement as the age of the .NET framework Unity uses means that the dedicated framework classes for websockets aren't available.

Moving to websockets has the following advantages:

  • Reduce number of calls, as updates are only sent for changes
  • Information update is faster, as map does not need to wait for next polling interval to update.

Higher quality background images

Currently the images are simply taken from whatever I found on the wiki.

It would be good to have much higher quality background layers. Possibly as vector graphics, so they zoom/scale well.

Not really an artist, so I'd need some help with this.

Install was successful, but game is now stuck on "Loading"

To be clear, this is the game trying to load in the main menu, not a save file. Also, I get the 102 error trying to load up the mod through the browser. I don't know if this is the result of the game not having loaded in or not, but your workaround doesn't work for this.

I'm on Win7 and Experimental if that matters.

The mod is not working on the current build of the game.

I'd thank you kindly to give this due consideration this time before per-maturely closing it. Since you were quick to assume I didn't know what I was doing, let me walk you through my steps. I followed the full tutorial. I downloaded the latest release. I unblocked the zip. I extracted it to the root of the game folder. I ran the installer. Booting the game has it hang on the "loading" screen just before the main menu comes up. Simply uninstalling through the patcher allows the game to run normally, suggesting that the issue may lie in the single dll file the patcher interacts with. It's possible perhaps that a recent update to the experimental build altered something in the dll file and now your patcher is incompatible and requires an update.

Here's the log:
2018-02-04 23:52:25.8893 INFO Application Start - v0.10.3+gc104bad8ea
2018-02-04 23:52:25.9049 DEBUG Validate Paths requested.
2018-02-04 23:52:25.9049 INFO Found Steam install directory. [c:/program files (x86)/steam]
2018-02-04 23:52:25.9049 INFO Found Subnautica install directory. [c:/program files (x86)/steam/steamapps/common/Subnautica]
2018-02-04 23:52:25.9049 INFO Found Subnautica Data directory. [c:/program files (x86)/steam/steamapps/common/Subnautica\Subnautica_Data\Managed]
2018-02-04 23:52:25.9527 DEBUG Checking DLL for existin patch.
2018-02-04 23:52:27.4191 DEBUG Install Requested
2018-02-04 23:52:27.4191 DEBUG Changing working dir: c:/program files (x86)/steam/steamapps/common/Subnautica\Subnautica_Data\Managed
2018-02-04 23:52:27.4191 DEBUG Validate Paths requested.
2018-02-04 23:52:27.4191 INFO Found Steam install directory. [c:/program files (x86)/steam]
2018-02-04 23:52:27.4191 INFO Found Subnautica install directory. [c:/program files (x86)/steam/steamapps/common/Subnautica]
2018-02-04 23:52:27.4191 INFO Found Subnautica Data directory. [c:/program files (x86)/steam/steamapps/common/Subnautica\Subnautica_Data\Managed]
2018-02-04 23:52:27.4347 DEBUG Backup of DLL requested.
2018-02-04 23:52:27.4347 INFO Backup of Assembly-CSharp.dll created as 'Assembly-CSharp.dll.subnautica-watcher-backup.20180204T235227'.
2018-02-04 23:52:27.4347 INFO Updating Assembly-CSharp.dll to load SubnauticaWatcherMod.
2018-02-04 23:52:27.4347 DEBUG Checking DLL for existin patch.
2018-02-04 23:52:27.4503 INFO Saving Assembly.
2018-02-04 23:52:27.9671 INFO Assembly-CSharp.dll successfully updated.
2018-02-04 23:52:27.9671 DEBUG Restoring working dir: C:\Program Files (x86)\Steam\SteamApps\common\Subnautica\SubnauticaWatcherInstaller
2018-02-04 23:52:27.9671 DEBUG Checking DLL for existin patch.
2018-02-04 23:52:59.6999 INFO Application Exited.
2018-02-04 23:53:58.1792 INFO Application Start - v0.10.3+gc104bad8ea
2018-02-04 23:53:58.1948 DEBUG Validate Paths requested.
2018-02-04 23:53:58.1948 INFO Found Steam install directory. [c:/program files (x86)/steam]
2018-02-04 23:53:58.1948 INFO Found Subnautica install directory. [c:/program files (x86)/steam/steamapps/common/Subnautica]
2018-02-04 23:53:58.1948 INFO Found Subnautica Data directory. [c:/program files (x86)/steam/steamapps/common/Subnautica\Subnautica_Data\Managed]
2018-02-04 23:53:58.2260 DEBUG Checking DLL for existin patch.
2018-02-04 23:53:59.3190 DEBUG Uninstall Requested.
2018-02-04 23:53:59.3190 DEBUG Changing working dir: c:/program files (x86)/steam/steamapps/common/Subnautica\Subnautica_Data\Managed
2018-02-04 23:53:59.3190 DEBUG Checking DLL for existin patch.
2018-02-04 23:53:59.3502 DEBUG Backup of DLL requested.
2018-02-04 23:53:59.3502 INFO Backup of Assembly-CSharp.dll created as 'Assembly-CSharp.dll.subnautica-watcher-backup.20180204T235359'.
2018-02-04 23:53:59.3502 INFO Removing System.Void SubnauticaWatcherMod.Patching.Patcher::Patch()
2018-02-04 23:53:59.3658 INFO Removed System.Void SubnauticaWatcherMod.Patching.Patcher::Patch()
2018-02-04 23:53:59.3658 INFO Saving Assembly.
2018-02-04 23:53:59.8816 DEBUG Restoring working dir: C:\Program Files (x86)\Steam\SteamApps\common\Subnautica\SubnauticaWatcherInstaller
2018-02-04 23:53:59.8816 DEBUG Checking DLL for existin patch.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.