Sunless Skies

Sunless Skies

Not enough ratings
Sunless Skies: Troubleshooting
By failbetterfuzz
Welcome to the official Sunless Skies: Troubleshooting guide. If you are having technical issues with the game then you should find the help you need below.
   
Award
Favorite
Favorited
Unfavorite
Reporting Bugs and Giving Feedback
Sunless Skies has an in-game feedback and bug reporting tool which is accessible by pressing F8, or via the Give Feedback button on the Main Menu (press Esc or click the Cog icon on the HUD).

Once open, select an appropriate category from the drop-down list (Feedback, Narrative Issue, or Other Issue) before entering a description for the issue you are experiencing. The more information you can give us about the steps you took before encountering an issue the better.



If you cannot launch the game in order to access the bug reporter, then the information in this guide should help you.

System Requirements
First, please make sure your system meets the requirements for the game. Check the System Requirements on Sunless Skies's Steam store page. The game has the same requirements on Steam and GOG.





Video Card Drivers
Please make sure your video card drivers are fully up to date. This is especially important for Intel integrated GPUs and it’s best to check the manufacturer’s website than rely on Windows:

Intel HD Graphics[downloadcenter.intel.com]
Nvidia GeForce[www.geforce.com]
Other Nvidia cards[www.nvidia.com]
AMD/ATI cards[www.amd.com]


If you have more than one graphics card Unity3D can sometimes fail to select the best one. Usually updating your graphics drivers or creating a profile for Sunless Skies in your graphics driver's control center can help.

You can check which graphics card Sunless Skies is using right at the top of your output log - look for 'Renderer'.

If you are experiencing exceptionally poor performance, it could be that your graphics card has defaulted to the Basic Render Driver. Microsoft Basic Render Driver is a fallback driver that Windows uses if it can not find the drivers for the graphics card.


You either need to enable your dedicated graphics card or update your graphics driver, there's a great guide for both here[www.drivereasy.com]

Sound Card Drivers
Sunless Skies uses the FMOD audio libraries and unfortunately FMOD crashes if the sound card is not installed properly. A good indication of a sound driver issue is when it crashes before the main menu is displayed.

Your output log will reference the issue with FMOD though it does not look like a normal exception so use Ctrl+F to look for FMOD.

Ensure your sound card drivers are up-to-date via the vendor's website. You should be able to find information about the sound card vendor in the Windows Device Manager.

Additionally there are sound issues with Windows 10 which will prevent the game from starting, though these are not specific to Sunless Skies. Please follow these instructions from Microsoft to fix sound card issues in Windows 10.

While most FMOD issues are resolved by updating the sound card, sometimes they can be a result of applications having exclusive access to your sound device. When this happens you'll typically see the following message in the Output log:
FMOD failed to initialize. This may be because your sound card is configured to give applications exclusive access, thus preventing Unity from using this device. You can change this in Control Panel > Audio Devices and Sound Themes > Playback Device > Properties > Options ... : "Soundcard does not support the minimum features needed for this soundsystem (16bit stereo output)."

Disabling the Exclusive Mode options in Windows Sound Preferences can resolve this by preventing audio applications from taking exclusive control of the driver. To do this, do the following:
  1. Open Control Panel > Hardware and Sound > Sound and click on the Playback tab
  2. Select your speaker/headphones from the list of audio devices and then click Properties
  3. In the Properties window, go to the Advanced tab and deselect the option to "Allow applications to take exclusive control of this device"
  4. Click OK to Apply the settings
  5. Back in the Sound window, click on the Recording tab and repeat steps 2-4
  6. Once complete, restart your computer for the changes to take effect.

If that doesn’t work go to Control Panel > Hardware and Sound > Sound and go through the Playback and Recording tabs to disable any additional devices before giving Skies another try.

Where to find your save files
The save files for each 'Captain' within Sunless Skies can be found in a 'Lineage' folder within the character repository directory. Along with the avatar.png, each Lineage folder will contain the following three json files:
  • autosave_m.json
  • autosave_s.json
  • saveSnippet.json

The first save file you create in Sunless Skies will be named Lineage-1. If that Captain completes an ambition, or dies and passes on a legacy, then the data for the new captain will overwrite the data within the Lineage-1 folder. However if you click New Game on the Title Screen then this will create a completely new Lineage folder: Lineage-2.

The character repository directory can be found in the following locations depending on your operating system:

Windows
C:\Users\[USERNAME]\AppData\LocalLow\Failbetter Games\Sunless Skies\storage\characterrepository

N.B. Replace [username] with your actual user name.

OSX
~/Library/Application Support/unity.Failbetter Games.Sunless Skies/storage/characterrepository

Linux
~/.config/unity3d/Failbetter Games/Sunless Skies/storage/characterrepository



Hidden Directories

If you cannot find the file paths listed above then it could be because the directories are hidden.

Windows
The AppData folder is generally a hidden one, so if you've not got Windows Explorer set to display hidden files then it's hiding from you.Try these steps:
  1. Go to C:\Users\[username] - replace [username] with your actual user name.
  2. On Windows Explorer, select the View tab and then click Options
  3. The Folder Options window will pop up - select the View tab
  4. Under Files and Folders, you'll see the Hidden files and folders directory and two radials - make sure the Show hidden files, folders and drives radial is selected

  5. Click Apply and then OK
  6. Close that down - you should now see the AppData folder in Windows Explorer
You should be able to find your way from there. Alternatively, you should just be able to copy the file location straight into the Windows Explorer bar and it'll take you straight there (C:\Users\[username]\AppData\LocalLow\Failbetter Games\Sunless Skies\storage\characterrepository).

If you don't see it after turning the hidden files to 'Show', then it could be that all of this is on a different drive, like a D drive for example, but the above steps will apply just the same to any alternative drives you have.


MacOS
The ~/Library is hidden by default. Here are some steps to help you locate it:
  1. Open the Finder
  2. Choose Go from the menu bar
  3. Choose Go to Folder (or Shift-CMD-G)
  4. Type ~/Library into the text box and press go - you should now see and be able access the contents of the ~/Library which were previously hidden from sight.

Alternatively:
  1. Open the Terminal (found in Finder > Applications > Utilities)
  2. In Terminal, paste the following:
    defaults write com.apple.finder AppleShowAllFiles YES
  3. Press return
  4. Hold the ‘Option/alt’ key, then right click on the Finder icon in the dock and click Relaunch. This will show all hidden files.

On Sierra and later OSX versions you can also use the following shortcut when in Finder. Press once to show hidden files and again to hide them.
CMD + SHIFT + .



Locating the correct Library on MacOS

If you are copying the file path given above, make sure you include the ~/ before Library, otherwise you will be sent to the wrong location.

Entering Library into the Finder will take you here:


Entering ~/Library into the Finder takes you to a completely different directory:


Where to find your output / player log
Below are details of where to find your output log (or player log on MacOS and Linux) on your operating system.

Windows
C:\Users\[username]\AppData\LocalLow\Failbetter Games\Sunless Skies\output_log.txt

N.B. Replace [username] with your actual user name.

OS X
~/Library/Logs/Unity/Player.log

Linux
~/.config/unity3d/Failbetter Games/Sunless Skies/Player.log


Hidden Directories

If you cannot find the file paths listed above then it could be because the directories are hidden. Please see the Hidden Directories information within the Where to find your save files section above.

Where to find Crash Logs
If you experience a genuine crash (not a freeze or a hang) then crash files will be generated and you player log will tell you where the crash files have been placed, for example:
Crash!!! A crash has been intercepted by the crash handler. For call stack and other details, see the latest crash report generated in: C:/Users/[username]/AppData/Local/Temp/Failbetter Games/Sunless Skies/Crashes
Please email all crash files directly to us at skies@failbettergames.com, with details on what you were doing immediately prior to experiencing the crash.

(Note: A crash is when a software program stops working and then closes. While technically different, the terms hang and freeze are often used interchangeably to refer to when a program becomes unresponsive.)

Corrupt Game Files / Installation problems
Occasionally game files can become corrupted during installation or updates. This will present itself in a few ways, but most commonly in hanging or crashing (usually with the game closing before you even get to the title screen). Verifying the game files usually fixes these issues. To do this take the following steps:

Steam
  1. Right click on Sunless Skies in your library
  2. Select Properties
  3. Click on the Local Files tab
  4. Click Verify Integrity of Game Files

GOG
  1. Select your game from your library
  2. Select the More button
  3. Highlight Manage Installation and select Verify / Repair
  4. Click Verify Game

It's rare, but sometimes the installation may be broken even though all the files pass the validation. In these situations it's best to uninstall and reinstall the game, then verify the integrity of the files after re-installing.

Black Screen Issues: Corrupt Save Files
Sunless Skies save files can sometimes become corrupt when the game shuts down unexpectedly due to a hardware crash, a sudden power cut, or a Windows update that cannot be cancelled while the game is saving.

Corrupt save files manifest as a black screen on launch. Check your output log for an error and if you see the error below then you will know that one or more save files have become corrupt (if you have a different error please see our section: Other Black Screen Issues)

NullReferenceException: Object reference not set to an instance of an object at Skyless.Assets.Code.Skyless.Game.Data.CharacterRepository.ReturnAllSnippets () [0x00000] in <filename unknown>:0 at Skyless.Assets.Code.Skyless.Game.Data.CharacterRepository.EnsurePresenceOfSnippets () [0x00000] in <filename unknown>:0

Please see the section Where to Find Your Save Files to locate the files on your machine. There are three files for each Sunless Skies save game, or 'Lineage':
  • saveSnippet.json
  • autosave_m.json
  • autosave_s.json

Diagnosing with Text Editors
To diagnose the level of corruption you will need to open all three files in a text editor. We recommend Notepad++[notepad-plus-plus.org], but make sure Word Wrap is on! (Go to View and click Word Wrap to select it).

If a file has become corrupted it will be full of NUL values and look something like the image below:


You will find yourself in one of four situations:
  • The saveSnippet has corrupted
  • The saveSnippet and one of the autosave files has corrupted
  • One of the autosave files has corrupted
  • All three files have corrupted

Steps for repairing save files are listed below, but first...

Turn off Cloud Saving
It's advisable that you temporarily turn off Steam / GOG cloud-saving services before repairing save files, as we've had instances of them reinstating corrupted files on the game's launch.

Once cloud saving has been turned off, please follow these steps:

If on Steam:
  1. Right click on Sunless Skies in your library
  2. Select Properties
  3. Click on the Local Files tab
  4. Click Verify Integrity of Game Files

If on GOG
  1. Select your game from your library
  2. Select the More button
  3. Highlight Manage Installation and select Verify / Repair
  4. Click Verify Game


saveSnippet corruption
This is the easiest corruption to address. If your saveSnippet has corrupted then follow these steps

  1. Delete all the NUL values within the saveSnippet
  2. Copy/paste the following data into the file:
    {"Name":"Failbetter","LegacyMode":" (Merciful Mode)","Location":"Wolvesey Station","Region":"The Reach","SavedOn":"2019-09-07T13:36:55.7639699+00:00","GameVersion":"1.2.4.0.015d561c"}
  3. Save the file
  4. Run the game and click Continue - the saveSnippet will now update with your own captain's data


saveSnippet and autosave corruption
If one of the autosave files have corrupted alongside the saveSnippet please follow these steps:

  1. First, repair the saveSnippet as detailed above
  2. Delete all the NUL values within the affected autosave file
  3. Copy all the data from the un-corrupted autosave file into the corrupted one
  4. Save the file
  5. Run the game and click Continue

N.B. The autosave_s and autosave_m files mostly contain the same data but there are a couple of differences, so some data may be lost after a repair of this nature but it will be minimal.


autosave corruption
If one of the autosave files has corrupted then you just need to follow the steps above in the saveSnippet and autosave corruption section, omitting the first step to repair the saveSnippet.


All three files have corrupted
Occasionally all three save files will become completely nullified and sadly there is no way to recover save games in this state.

If you're experiencing frequent hardware issues then we of course recommend taking your machine to a professional so the issue can be diagnosed. However, until you are able to do that it might be a good idea to make regular manual back-ups of your save files after each play session. For details please see the Manual backups of save files heading in the Low Performance / FPS section below.


When to turn cloud saving back on
If you want to turn cloud saving back on, do the following:
  1. Load the repaired save files.
  2. Once in game you need to prompt the game to save by docking at a port (it's fine to just undock from your current port and dock again)
  3. Close the game down completely
  4. At this point you'll be ok to turn cloud saving back on


Troubleshooting: I've repaired the saveSnippet but I still see the black screen of doom
This suggests that one of the autosave files has partial corruption. You'll see a different error in the logs in this instance. There errors will display differently depending on where the corruption is in the files, but they all begin with the following:
JsonSerializationException

Here are a couple of examples:
JsonSerializationException: Unexpected end when deserializing array. Path 'GeneratedWorld.Regions[3].FogBools[14484]', line 1, position 229376.
JsonSerializationException: Unexpected end when setting Name's value. Path 'PlayerProspects[0].DestinationSetting.Exchange.Shops[1].Availabilities[0].PurchaseQuality.Name', line 1, position 237568.

If part of your save file has also become corrupted with non-compatible characters, then you'll see a slightly different error in the logs

JsonReaderException: Unexpected character encountered while parsing value: at Newtonsoft.Json.JsonTextReader.ReadAsBoolean () [0x00000] in <filename unknown>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.ReadForType (Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonContract contract, Boolean hasConverter) [0x00000] in <filename unknown>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList (IList list, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonArrayContract contract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, System.String id) [0x00000] in <filename unknown>:0

Partial save file corruption presents in two ways; either the second half of the file will be full of NUL values or non-compatible characters, or it will be missing completely. The very last thing you should see in the autosave files is the name of your captain:

If there is no corruption but you cannot see your captain's name at the end of the file, then part of your data is missing.

If you have partial save file corruption then do the following:
  1. Delete all the data within the affected autosave file
  2. Copy all the data from the un-corrupted autosave file into the corrupted one
  3. Save the file
  4. Run the game and click Continue

N.B. If both your autosave files have been partially corrupted then sadly there is no way to recover save games in this state.

Other Black Screen Issues
There are multiple causes of black screen issues. To diagnose them you need to look for errors in the output log. Details of where to find this on your machine can be found in the section: Where to find your output / player log.

Once you've located your output log you need to open it in a text editor and look for errors/exceptions. We recommend Notepad++[notepad-plus-plus.org], but make sure Word Wrap is on! (Go to View and click Word Wrap to select it).


Transit Relays & Character Creation
If you experience a black screen (or crash) when using Transit Relays or at the point of Character Creation, please see the advice in the Crashes: Transit Relays & Character Creation section below.


Empty lineage folders
If there is an empty Lineage folder within the character repository directory you will see a black screen on launch and the following error in the output log.
InvalidOperationException: Operation is not valid due to the current state of the object at System.Linq.Enumerable.First[FileInfo] (IEnumerable`1 source) [0x00000] in <filename unknown>:0 at Skyless.Assets.Code.Skyless.Utilities.FileHelper.GetMostRecentlyModifiedFileInPath (System.String path) [0x00000] in <filename unknown>:0 at Skyless.Assets.Code.Skyless.Game.Data.CharacterRepository.EnsurePresenceOfSnippets () [0x00000] in <filename unknown>:0
If you see this error you need to open the character repository directory and go through the Lineage folders until you find one (or more) that's empty. Delete any that are empty and you should be good to go.


SteamAPI_init() failed
If you see
(SteamAPI_init() failed)
in your output/player logs then the Steam app may not be running correctly. If you see this try the following:
  • Try restarting Steam.
  • Try logging in and out of Steam and restarting.
  • Check your Antivirus or Firewall settings. Updates have been known to put games in the AV/Firewall sandbox/quarantine. We recommend making an exception for Steam/GOG in your anti-virus to resolve this issue, rather than turning your anti-virus off.

If the above suggestions fail then the error is probably due to the Windows account you are not having administrative access. All you have to do is switch to your Windows account with “Administrative Access” and the issue will be resolved.


Microsoft Media Foundation
If you see
'Initializing Microsoft Media Foundation failed.'
in your output log then either:
  1. Windows Media Player is not enabled
  2. Microsoft Media Foundation is not installed on your machine
  3. A newer version of Microsoft Media Foundation is required


First, ensure Windows Media Player is enabled. Sometimes it's not enabled automatically on some Windows operating systems or after some updates.

  1. Open the Start menu
  2. Open the Control Panel
  3. Launch Programs and Features
  4. Click “Turn Windows features on or off” in the left side of the window
  5. Look for the “Media Features”
  6. Expand the “Media Features”
  7. Check the “Windows Media Player”

  8. Click OK
  9. Restart your computer


If the Windows Media Player is already enabled or you still cannot run the game after enabling it then it is likely that Microsoft Media Foundation is not installed on your machine, or it needs updating.

Please install the Media Feature Pack[www.microsoft.com] for your version of Windows. The Media Feature Pack that comes up upon a simple google search is NOT the correct version for Windows 10 after the Creators Update – it’s necessary to look for the newest Media Feature Pack from April 2017 (available here[support.microsoft.com]).

If you are on Windows 10 N, Sunless Skies may not run even after installing Microsoft Media Foundation pack and re-enabling Windows Media Player. Reinstalling Windows 10 resolves the issue.


Unity games on Windows 10 1709
If you see the following error in your output/player logs then this is due to a bug that was released in Windows 10 1709 that is causing this issue with a lot of Unity games.
IndexOutOfRangeException: Array index is out of range. at UnityEngine.Display.RecreateDisplayList (System.IntPtr[] nativeDisplay) [0x00000] in :0
There is an excellent thread about it on Steam with lots of advice on how to resolve the issue. Check it out the OP’s troubleshooting steps as it has resolved the issue for a lot of people.


Windows Video Media
If you see the following error in your output/player logs then you may be missing a media feature pack or a video codec pack.
WindowsVideoMedia error 0x800700ea while reading C:/Program Files (x86)/Steam/steamapps/common/Sunless Skies/Sunless Skies_Data/sharedassets0.resource Context: CreateObjectFromByteStream Error details: More data is available.
There is a good thread about it on Steam with advice on how to resolve the issue. Some of our players have resolved this issue by “going into the K-Lite Codec Tweak Tool, checking under Windows Media Foundation, and manually unchecking all of the boxes”

Crash/Freeze when using Transit Relays
If you experience a crash, black screen or a game freeze/hang when using a Transit Relay, (or at the point of Character Creation) please take the following steps:

  1. Relaunch the game
  2. On the Title Screen select Options > Graphics
  3. Set the Texture Quality to Low
  4. Click Apply
  5. Back out of the menu and then click Continue
  6. Try going through a relay/character creation again

N.B. If there is no improvement, particularly on low-spec machines, try also running the game in windowed mode rather than full screen.

A number of our players have also found it helpful to clear their Steam cache. You can do this as follows:

  1. From your Steam Client, open the Settings panel by selecting "Steam > Settings" from the top left client menu.
  2. In the Settings panel, select the Downloads tab and you'll find the "Clear Download Cache" button at the bottom.
  3. Then select "OK" to confirm and acknowledge that you'll need to login to Steam again.

Crash/Freeze when entering Character Creation
If you experience a crash, black screen or a game freeze/hang at the point of Character Creation, please take the same steps in the Crashes when using Transit Relays section above.

Crash when launching from Steam client
If you experience a crash when launching Skies from the Steam client but not when launching from the .exe then it's possible this is a result of your DPI being set higher than 100%, with the game running on fullscreen. We understand you probably want to keep your DPI setting as is, however you may need to change the DPI when you play Skies, in order for it to work properly.

To resolve this issue, change your DPI back to 100% or whatever is recommended for your PC (from the Start menu select Settings > System > Display > Scale and layout).

Crash on launch: Citrix
If you experience a crash when first launching the game and you see an error that starts with
Crash!!! SymInit: Symbol-SearchPath:
in your output log, then it’s possible another application is interfering with the game.

Citrix Workstation (formerly Citrix Receiver) causes this issue with a number of Unity games. Try uninstalling Citrix, restarting your machine and launching Skies again (we have reports from players that Skies will continue to play without issue once the latest version of Workstation is reinstalled).

If you are unsure if you have Citrix then you can check for the program in your Control Panel:


Or if the app was installed via the Microsoft store you'll be able to find it on the Start menu:


Crash on launch: Corrupted Font Files
If you experience a crash on launch and you see an error that starts with
Crash!!! SymInit: Symbol-SearchPath:
in your player log, you should check to see if you have Citrix installed as per the instructions in the section above.

If you don’t have Citrix installed, then the Symbol-SearchPath crash is likely to be a result of corrupted font files on your machine. This is a fairly common bug which affects numerous Unity games.

Solution #1
First, ensure that your graphics card drivers and direct X are full up to date before trying to run the game again (see section ‘Video Card Drivers’ above).

Solution #2
If you're playing on Windows 10 try running in compatibility mode for Windows 8.

Solution #3
If the above solutions don’t work then try restoring default font settings:
  1. Make sure no programs are currently running
  2. Go to Control Panel > Fonts > Font settings
  3. Click the "Restore default font settings" button
  4. Restart your machine and attempt to play Sunless Skies

Solution #4
If the above solutions don’t work, try deleting the font cache files:
  1. Make sure no programs are currently running
  2. Open Windows File Explorer and go to "C:\Windows\ServiceProfiles\LocalService\AppData\Local" (it's a hidden folder so it's best to just copy-paste the file path. If the full file path doesn’t work try C:\Windows\ServiceProfiles\LocalService\AppData)
  3. Attempt to delete any files whose names start with "FontCache" (some will be write-protected; you can skip those)
  4. Restart your machine and attempt to play Sunless Skies

Solution #5
If the above solutions don’t work, then try deleting the hidden UNCL.ttf file:
  1. Make sure no programs are currently running
  2. Open Windows File Explorer and select the View tab
  3. Click Options
  4. Click the View tab on the Folder Options pop-up window that opens
  5. Ensure "Show hidden files, folders and drives” radial is selected
  6. Uncheck "hide protected operating system files" checkbox (we recommend you undo this step later as this exposes Windows OS files which can break your computer if deleted)
  7. Click Yes on the confirmation pop-up
  8. Click Apply and OK
  9. Copy the path "C:\Windows\Fonts" into the top of the Windows File Explorer
  10. If there's a file in there called "UNCL.ttf" or similar, delete it (it may be called PR Uncial Alternative Capitals)
  11. Remember to go back and tick the "hide protected operating system files" checkbox
  12. Restart your machine and attempt to play Sunless Skies

Solution #6
If the above solutions don’t work, then it's possible you have a corrupted font but can't find it. Follow these steps to replace it.
  1. Uncheck "hide protected operating system files" as directed in Solution#5
  2. Download UNCL.ttf (you can download it here[www.grsites.com]
  3. Drag the UNCL.ttf file from your Downloads folder into the Font directory (C:\Windows\Fonts) - it will either install immediately or ask you if you want to replace the already installed version, in which case select Yes (it may be referred to as PR Uncial Alternative Capitals)
  4. Now locate the newly installed/replaced UNC.ttf file and delete it.
  5. Remember to go back and tick the "hide protected operating system files" checkbox
  6. Restart your machine and attempt to play Sunless Skies

Solution #7
If the above solutions don’t work and you still cannot find the UNCL.ttf file, then here's a last resort:
  1. Uncheck "hide protected operating system files" as directed in Solution#5
  2. Make a backup copy of the Fonts directory (to your desktop, for example)
  3. Delete everything Windows will let you delete in the original Fonts folder
  4. Now Copy every file from the backup Fonts folder you created back into the original Fonts folder.
  5. The UNCL.ttf file should be there - delete it
  6. Remember to go back and tick the "hide protected operating system files" checkbox
  7. Restart your machine and attempt to play Sunless Skies

If none of the above steps can solve the issue then we are unlikely able to offer a better solution at this time. The problem is frequently reported across several popular Unity titles without much sign of a solution as of yet.


Game does not unpause when Main Menu is closed
If you find that the game does not resume after closing the pause menu then simply open and close a side panel and this will resume the game.

This is something we are aiming to fix in the Sovereign update. It is being caused by a couple of instances where the player can move despite time being frozen. When the pause menu is opened and then closed in this state it means time is not reset properly. The game appears frozen but it is not a crash/hang, there is no need to restart the game, simply open and close a side panel to unfreeze time.

Low Performance / FPS
If you are experiencing poor performance in game then the first thing to do is make sure your graphics card is up to date. Please see the Video Card Drivers section above.

If you are experiencing exceptionally low FPS it could be that your graphics card has defaulted to the Microsoft Basic Render Driver. Please see the Video Card Drivers section above for more details.

If your graphics card is up to date and it is not defaulting to the Basic Render Driver when running Skies, then try setting the Texture Quality to low:
  1. From the Title Screen select Options
  2. Select Graphics
  3. Change Texture Quality to Low
  4. Click Apply

We also recommend making sure your Windows updates are in fact up to date and that you close down any non essential programs whilst playing Skies.


Sunless Skies Optimisations
We are working on a number of optimisations and performance tweaks to address issues such as stuttering and framerate drops when crossing segments.

Lower spec machines, particularly those with integrated graphics cards, can struggle with the textures in Skies. This can present as d3d11 errors spammed to your output log and sometimes an eventual crash when the game is run for a long period of time. If you are seeing errors like these then please follow the advice above for updating your drivers and setting Texture Quality to low.

Machines with integrated graphics cards tend not to have a huge amount of VRAM. We recommend 2GB VRAM as a minimum. Your VRAM can be seen right at the top of the output log:



If you are below this or just on the border then Skies can be affected by low FPS. Again, the advice for updating drivers and setting Texture Quality to low may help. There are also lots of good guides/tutorials[appuals.com] out there on how to increase VRAM. These tips may not increase it by much, but they are definitely worth a try.

Running the game in Windowed mode rather than Full Screen can also help. We appreciate Windowed mode is not ideal, and we'd like to introduce a Borderless in the future if we can. Since the desktop would not be rendered underneath the game this would make Full Screen less intensive.


Hardware Issues
It's normal to experience hardware issues from time to time; crashes, Windows updates that can't be cancelled, sudden power cuts, etc. However if you are experiencing consistent and repeated hardware problems (crashes, hangs, blue screen of death) then we really recommend taking your rig to an IT professional to have it looked at. Following all the advice above will only help so much. If you have underlying hardware issues then you need to eliminate the root cause of the problem.


Manual backups of save files
If your computer crashes when the game is saving then this can lead to corrupted save files - advice on repairing save files is given in the Black Screen Issues: Corrupt Save Files section above.

If you're experiencing frequent hardware issues then it might be a good idea to make regular manual back-ups of your save files after each play session. For Sunless Skies the easiest way would be to zip up your Lineage folder within the characterrepository directory (see the Where to find your save files section above).

If you have more than one Lineage folder then it's a good idea to zip up the whole characterrepository. The zip will not affect anything in these locations and will remain untouched should you suffer a crash or power cut while playing. If all your save files become completely corrupt, you can unzip the file and copy the json files back into the correct lineage folder.

Save file fails to load / HUD seen over loading screen
Under exceptionally rare circumstances it's possible for save files to think you are in the wrong region with regards to the port you are docked at. For example the data will list your current region as The Reach, but your current port as London, which is in Albion. In these cases the game will not know where to load your captain. You will see the HUD over the top of the loading screen and get no further:


You'll also see the following error in the output log:
NullReferenceException: Object reference not set to an instance of an object at Skyless.Assets.Code.Skyless.UI.Controllers.ChartController.ScoutClearTransient (Skyless.Assets.Code.Skyless.Game.Procedural_Generation.SceneBehaviourScripts.LandmarkBehaviour landmarkBehaviour) [0x00000] in <filename unknown>:0 at Skyless.Assets.Code.Skyless.Game.Procedural_Generation.SceneBehaviourScripts.DiscoveryBehaviour.OnDestroy () [0x00000] in <filename unknown>:0 UnityEngine.Object:DestroyImmediate(Object, Boolean) UnityEngine.Object:DestroyImmediate(Object) Zenject.ProjectKernel:ForceUnloadAllScenes(Boolean) Zenject.ProjectKernel:OnApplicationQuit()

You will need to alter your two autosave files so that the region data matches the region of your current port Id. The autosave_s file stores your current port and its region. The autosave_m file stores the region of the last hub port you docked at. That means you will only ever see data for New Winchester, London, Pan or Sky Barnet in the autosave_m file, and this is so the game knows where to spawn the next Captain in your lineage if you die or complete a victory.

To fix this issue and get back in game, take the following steps:

autosave_s.json
  1. Open the autosave_s.json file in Notepad++
  2. Search for "CurrentRegionId" - it will look something like this:
    "CurrentRegionId":"9f50ee22-a594-4c42-939c-022cbe2fb677"
  3. Immediately after the CurrentRegionId you will see the CurrentPortId followed by the LocationName - this is how to tell which port you are currently at. The example below shows the save file is at the Clockwork Sun, but gives the region Id for The Reach instead of Albion.
    "WorldRegion":1}],"CurrentRegionId":"9f50ee22-a594-4c42-939c-022cbe2fb677","CurrentPortId":"bfc72a01-6af5-4c74-9354-74848b97c35d","LocationName":"Clockwork Sun"
  4. Based on the port you are at, copy the corresponding region Id from the table below
  5. Replace the CurrentRegionId in the autosave_s.json file with the correct region Id for that port
  6. Save the file

autosave_m.json
  1. Now open the autosave_m.json file in Notepad++
  2. Search for "CurrentRegionId"
  3. Immediately after the CurrentRegionId you will see the CurrentPortId followed by the LocationName - this is the last hub port you visited and it may of course be different to the last port you visited as recorded in the autosave_s file. It will only ever show New Winchester, London, Pan or Sky Barnet
  4. If the CurrentRegionId Id for the hub port does not match the region Id in the table below, then copy/paste the correct region Id into the autosave_m.json file.
  5. Save the file
  6. Your save file will now load correctly


Region
Region Id
Ports
The Reach
9f50ee22-a594-4c42-939c-022cbe2fb677
New Winchester
Company House
Victory Hall
Titania
L&S Nature Reserve
Prosper
Magdalene's
The Inconceivable Circus
Hybras
Traitor's Wood
Port Avon
Lustrum
Carillon
Albion
3ea179aa-2a9c-47c5-9dc3-20fee32fc228
London
Wit & Vinegar Lumber Co.
The Ministries
Brabazon Workworld
Floating Parliament
Clockwork Sun
Royal Society
Mausoleum
Avid Horizon
The Stairs to the Sea
Perdurance
Worlebury-juxta-Mare
Eleutheria
7e3ccf00-f0a8-47c1-b444-33e2f84a82b1
Pan
The Brazen Brigade
Heart-Catcher Gardens
Winter's Reside
The Gentlemen
House of Rods and Chains
Piranesi
Eagle's Empyrean
Langley Hall
Caduceus
Achlys
The Blue Kingdom
25d750b5-bb46-409c-8a94-5676bad0df17
Sky Barnet
The White Well
The Forge of Souls
Death's Door
The Shadow of the Sun
Wellmouth
House of Days

Usually when this issue is seen the same problem is seen in both the autosave_m and autosave_s files. The issue can be present in just one of these files however, so if the region Id and port Id match up in one file, check the other.

Steam error on MacOS after downloading updates
Occasionally a Steam error is seen when trying to launch the game after an update.



If you see this please uninstall the game via Steam and then reinstall (don't worry, it just uninstalls the game files, your save files are in a separate location and are not removed when the game is uninstalled, so you will not lose your progress).

Minimised game window
Occasionally players experience the game opening at a resolution of 0 x 0 pixels and are therefore unable to play (audio can be heard, but nothing is displayed). We're uncertain on the cause but if this happens to you, please try the following:

Linux
  1. Go to ~/.config/unity3d/Failbetter Games/Sunless Skies/
  2. Open the prefs file and scroll right to the bottom
  3. Find <pref name=”Screenmanager Resolution Height” type=”int”>xxx</pref> and change the value of xxx to 720
  4. Find <pref name=”Screenmanager Resolution Width” type=”int”>xxx</pref> and change the value of xxx to 1280
  5. Save the file and close it before launching the game

Windows
  1. Go to C:\Program Files (x86)\Steam\steamapps\common\Sunless Skies
  2. You’ll see the Sunless Skies app. Please press and hold down Ctrl, then double click on the game. Keep Ctrl pressed down the whole time until the Sunless Skies Configuration window opens (if it doesn’t open first time, just double click again)

  3. Select a resolution from the drop down list
  4. Click play to launch Skies

Graphical Corruption on Linux
If you experience graphical corruption on non 16:9 resolutions on Linux (as shown in the images below) then use “-force-glcore42 -force-clamped” as outlined here[www.gamingonlinux.com]

N.B. Using “-force-vulkan[forum.unity.com]” as a launch option will also resolve the corruption but unfortunately detach your headlight from your locomotive so we don't recommend it.




Missing Result Text / Transparent Interfaces
Occasionally you may experience transparent interfaces and missing text in the quality results of Storylets.



The first thing to do is check your graphic drivers are up to date. See the Video Card Drivers section above. If updating drivers does not help then there are several other things to try.

Verify Game Files
If you experience missing quality text results and/or transparent interfaces please try verifying your game files:

Steam
  1. Right click on Sunless Skies in your library
  2. Select Properties
  3. Click on the Local Files tab
  4. Click Verify Integrity of Game Files

GOG
  1. Select your game from your library
  2. Select the More button
  3. Highlight Manage Installation and select Verify / Repair
  4. Click Verify Game


Launch Options
If verifying the game files does not help then then please take the following steps:

Steam
  1. Right-click on the Sunless Skies under your Library in Steam and select Properties.
  2. Under the General tab click the Set launch options button.
  3. For Windows, enter -glcore into the launch options field. For MacOS/Linux enter -force-glcore.
  4. Click OK.
  5. Close the game’s Properties window and launch the game.

GOG - Windows / MacOS
  1. Open Sunless Skies in your Library in GOG Galaxy and click the More button.
  2. Click Settings from the drop down menu.
  3. Tick the Add command line arguments checkbox under Custom Settings.
  4. For Windows, enter -glcore into the launch parameters field. For MacOS enter -force-glcore.
  5. Launch the game.

GOG - Linux
Enter -force-glcore into the console, then the command to run the game


UI Transparency
If all else fails, then set the UI transparency in game to 'off'.
  1. From the Title Screen select Options
  2. Select Graphics
  3. Change Transparent UI to Off
  4. Click Apply

Scouts cannot be deployed
If you find that you can no longer deploy your scout, even after remapping the key, then you need to restore the control scheme to defaults. This will clear any previous settings that have become muddled after updates in which the control scheme has been changed.
  1. Relaunch the game.
  2. On the Title Screen select Options > Controls
  3. Click Restore Defaults
  4. Back out of the menu and then click Continue

If that doesn’t work then it could be that you died at a point when the scout was searching the skies. You will need to relaunch the game to resolve this issue. This bug will be fixed in the Sovereign update.
Weapons are not firing
There are few things to be aware of with regards to weapons not firing:
  • Weapons will not fire when the mouse cursor is over any UI or HUD element (with the exception of the Heat/Full Steam Mode bar) - this is deliberate so that they do not fire when you are clicking on interfaces.
  • If you are holding down a weapons button for continuous fire, the weapon will cut out when your engine overheats. This is to stop you taking damage to your Hull. You can of course press it again to fire immediately without having to wait for your engines to cool down, but you'll receive 10% Hull damage.
  • If you have started a new save game and are in the Opening Gaming Experience (i.e. before docking at New Winchester and going through character creation) you need to collect a weapon from the wreck of the Ozymandias before you are able to blast your way through the barrier.

If the situations above do not apply to you and your weapons are definitely not working, even after remapping the keys, then you need to restore the control scheme to defaults. This will clear any previous settings that have become muddled after updates in which the control scheme has been changed.
  1. Relaunch the game.
  2. On the Title Screen select Options > Controls
  3. Click Restore Defaults
  4. Back out of the menu and then click Continue

Cannot accept fourth Prospect
You can have a maximum of four regular prospects at any one time, or a maximum of two smuggling prospects in addition to two regular ones.

There’s a very rare bug where prospects that you’ve completed can go into negative figures. When this happens, the prospect is removed from the Bazaar interface and the Hold panel, but it still exists in the save file data. When you have three prospects and try to claim a fourth in this situation, you’re unable to do so. The Bazaar UI will insist you have four active prospects and will instruct you to abandon one to free up a slot.

N.B. This issue will be fixed in the upcoming Sovereign update.

To resolve this issue do the following:
  1. Turn Cloud saving off
  2. Go to https://jsoneditoronline.org/
  3. Locate your autosave_s file and drag it into the left hand panel - the panel will populate with the save data
  4. Click the Copy > button to move the data to the right hand panel and organise it in a readable format
  5. Locate the PlayerProspects section and expand it

  6. There may be more than four prospects in this section (some are your active prospects, others represent the ones currently available at hub ports) - expand each one
  7. You need to locate all prospects which are Accepted: true and have a DemandLeft value which is negative

  8. Change any negative DemandLeft values to 0
  9. Click < Copy to move the updated file back to the left hand panel
  10. Open the drop down list next to the save icon on the left hand panel. Select ‘Save to disk’

  11. You’ll be asked for a name for the file. Keep it as autosave_s and click Save
  12. Take the file (which should go into your Downloads folder) and use it to replace the one in your Lineage folder
  13. Run the game. You’ll now be able to claim a fourth prospect
    [o/list]

Localisation
Unfortunately we have no plans to localise Sunless Skies. We really wish we could have translated Skies into other languages. Unfortunately, it would be a massive undertaking for us, both administratively and financially.

There are currently over 800,000 words in the game. To produce a good translation, we'd need to pay for all of the following for each language:
The translation itself.
  • Editing, to ensure the text is clear, grammatical, and consistent in how it handles any special in-universe terms, like 'Avid Horizon', 'Judgement' or 'Her Renewed Majesty'.
  • Proofreading, to fix spelling errors and other typos.
  • QA, to catch any bugs related to the translation. A simple example would be the UI not allowing enough space to display translated text if it's longer than English original.

Given the number of words involved, the cost of this would be quite substantial, even for a single language. And we'd also have to source people for all these tasks (or pay a large additional premium for an agency), solve some design challenges around the way we use dynamic text, do technical work on the game to support localisation (for instance, finding and removing all hardcoded strings), oversee and manage the work, and integrate the translated text into the game... a large undertaking for a small indie team like us.

We are sorry to disappoint you, we really do wish we could localise Sunless Skies, and if we ever make a game with a less absurd word count, we'd be keen to localise. (Maybe 100,000 words or so – a lot for almost any other indie game, but extremely restrained by our standards.)

Modding Support
Sunless Skies unfortunately wasn’t really built to support modding. It's something we considered adding after launch but we’ve reluctantly concluded it would be a very large amount of work to do so at this stage. In future, we intend to give more consideration to the ramifications of our development choices on the possibility of mod support, so that we can hopefully provide it in games for which there might be community modding interest.
'Not a Bug'
There are a number of things in game which people sometimes think are working incorrectly, but they are in fact 'not a bug'. These are listed below.

Some are deliberate design choices ("it's not a bug, it's a feature"). Some have arisen from changes made during development after listening to feedback, and after balancing the game in the days before launch. If you played during Early Access and things work in a different way to how you remember, then that's likely to be a deliberate change.

Please also be aware that while our fan-run wiki[sunlessskies.gamepedia.com] is a wonderful source of information, it has existed since we launched in Early Access. Fans have been updating it ever since, but it does mean that you will occasionally come across inaccurate information. It's an excellent resource, but please use it with a pinch of salt rather than treating it as word of law.

With this in mind, please only report bugs that you actually experience in game. Reporting inconsistencies in the wiki can waste our time investigating things that aren't bugs. As a small team without dedicated support, this has a big impact on our development time - time we could be using to write new stories or create new features.

Mme. Lumière's shop is missing - Not a Bug
If you played in Early Access you may remember Mme. Lumière's shop was at New Winchester. This was deliberately removed on launch for balancing reasons. Instead, there are new Storylets at a number of ports which allow you to trade story items for Sovereigns and Experience.
  • The Midnight Confessional, at the Gentleman's platform at Pan will buy Villainy items (Crimson Promise, Unlicensed Chart, Savage Secret, Tale of Terror)
  • The Porphyry Font at Titania will buy Bohemian items (Captivating treasure, Moment of Inspiration, Vision of the Heavens, Sky-Story)
  • The Celestial Exhibition at the Royal Society will buy Academic items (Searing Enigma, Condemned Experiment, Otherwordly Artefact, Uncanny Specimen)
  • The Silken Salon at London will buy Establishment items (Royal Dispensation, Cryptic Benefactor, Ministry-Stamped Permit, Salon-Stewed Gossip)

Full screen mode is not remembered on Linux - Not a Bug
Apologies for this, we know it's annoying. It's actually deliberate at the moment because during Early Access launching the game in full screen on some Linux machines caused the game to crash. With very few Linux players at the time it was hard for us to gather data on what was causing this, so we made it default to windowed mode on launch each time. Our intention is to fix this in the future once we can diagnose the issue properly.

Hidden Compartments do not boost hold space - Not a Bug
This is intended. There are several pieces of locomotive equipment in game which grant the Hidden Compartments quality. When you have this quality a new bar will appear on your Hold underneath the Hold capacity bar. This quality does not increase your maximum Hold space, but it does provide secret places in which to stash your illegal goods. If your Contraband quality is higher than your Hidden Compartments quality then you are more likely to have items seized by the Revenue Man. If Contraband is lower than Hidden Compartments then your captain may be particularly savvy at finding ways to sneak things through customs.

Labels are in the wrong place - Not a Bug
This is actually not a bug but a deliberate placement of the label. 'Major' labels are usually close to ports, but it's not always the case. For example the Brabazon Workworld major label is closer to the Transit Relay than it is to the Brabazon dock. Similarly the Traitor's Wood major label is placed where you enter the Traitor's Wood itself, rather than near the dock. Some labels such as Magdalene's are fairly close to the port itself but are not necessarily triggered by docking at the port, you'll need to explore the surrounding area a little.

The directions to a port has changed in my journal - Not a Bug
If you see the directions from a hub (central) port to a port in an outer segment change in the journal then this is deliberate. This is related to how our procedural generation system works and we'll explain with the use of a diagram of the segments in the Reach:



New Winchester is obviously the hub port in segment 1. If on a new save you are given a quest to go to Prosper and are told it's due north of New Winchester, then it means the proc gen system has spawned Prosper in segment 2. If you find it on that playthrough and dock there, then that segment becomes locked into place for that captain and it will never change. If however you don't find it and turn the game off (or even back out to the title screen while you make a cup of tea), then the next time you load back into the game, any undiscovered segments may have shuffled, so the Prosper port could this time be in segment 5 for example. This is then reflected in any directions displayed in the journal.

Pending Prospects cannot be handed in - Not a Bug
Some prospects have requirements just like branches on storylets. You may be eligible for a prospect when you claim it at a hub port, but if your circumstances change before you can deliver the goods, then you will be prevented from handing the prospect in. If you no longer meet the prospect’s requirements, the quality requirement icon below it will be greyed out. Mousing over it will give further details.


The Bazaar has a bargain for the same good as a pending prospect - Not a Bug
We appreciate this looks odd and may feel like a bit of an exploit when it does happen, however we don’t consider this to be a bug. The bargains that appear at non-hub bazaars are randomly selected from an available pool, and sometimes you will get lucky in this way.

Narratively, since they are different merchants it’s plausible that a seller may be trying to offload a good that someone at the same bazaar is trying to acquire, but that doesn’t mean they’ve necessarily stumbled upon each other yet. Consider your Captain as the savvy wheeler-dealer who has jumped in as the middleman in order to make a tidy profit.

Reworking the Prospects and Bargains system to “fix” this issue would be a huge undertaking. Since it’s such a minor issue we’d rather pour our time into adding new content, improving the usability of the game and making quality of life updates. For this reason it’s highly unlikely we will ever change this feature.

Stovepipes attack me even though I'm aligned with them - Not a Bug
There are variants of the London vessels internally known as 'tipped-off' Enduring Dreadnoughts/Ministry Monitors. They are indistinguishable from the regular models but one of their wrath provocations looks for the Contraband quality. If you are carrying any contraband items (Firkin of Red Honey, Trunk of Illicit Literature, Hogshead of Starshine) they will attack you even if your Stovepipe reputation is high and you are not “Wanted by the Stovepipes”.

The explanation for this is given in the storylet that introduces them. A snippet from one branch is given in the spoiler below:

"All of them fancy scopes and sounding-equipment? That's for spotting smugglers. The Revenue Men put a lot of money into this."

The bridge is cramped, crammed with state-of-the-art sensory equipment. You put your eye to the main scope, and it flings your sight through the Monitor's precisely-aligned lenses and away to a distant stretch of the sky.


I cannot find the transit relay in Albion - Not a Bug
After we redesigned Albion in the Wayfarer update (April 2019) it reset the chart/Fog of War for that region. Occasionally people with a save file that was already in Albion at the time of the redesign struggle to find the transit relay to return to the Reach.

The relay is part of the permanent landscape of the Brabazon segment, it's not a random spawn, so if you cannot find it on your map you've just not gotten close enough to uncover it. Below is a screenshot of the chart to show where the relay is in relation to The Bit Between/Brabazon dock.

In this screenshot the Brabazon segment has spawned north of London.


Partial Success - Not a Bug
Occasionally we get bug reports asking why someone is seeing a Partial Success result when their chance of success based on their skill level is 100%.

While some may interpret it as a failure, the important thing to note here is that a Partial Success is not a failure result. Our CMS for Sunless Skies allows us to have four types of branch result, two failure states and two success outcomes. Partial Success is one of the two success states.

If you select a branch which has two success outcomes and your roll is successful, you will then be presented with either an all-out success or a partial one based on another chance roll. Of course the Partial Success may have more consequences or a slightly less favourable outcome, but it is a success all the same.

Censored words - Not a Bug
Occasionally you’ll see words that look as if they’ve been censored.

Our motive here isn't censorship, it's worldbuilding. There is actually no profanity filter on Skies, this is a deliberate, edited choice in our prose. Dashing out the middle of swear-words was an occasional Victorian habit, and is a nice, low-effort way to establish our period and some of its (often hypocritical) habits.

Something that Glisters - Not a Bug
Occasionally we are sent bug reports for the chart label Something that Glisters, with the question 'do you mean glistens?'. Nope, we definitely mean glisters. It's a fairly archaic word[www.dictionary.com] that is akin to glisten and we rather like it.

Intentional typos - Not a Bug
Some things that have been reported as typos, but are intentional: zailor; zee, eery; words ending in -ise and other British English usages.

Some words and names may be spelled differently in dialogue in order to hint at a character's accent. For example, you may see Wilma as Vilma when German characters are speaking.

< >
6 Comments
Nodus Cursorius Aug 3 @ 3:16pm 
A recommendation for the guide, in specific how to find the Sunless Skies folder for Windows.

" %userprofile% " is the same as " C:\Users\[username] " but it offers benefits over the latter.

• The user does not need to know their username
• The user does not need to change Window's settings regarding hidden folders

This is the an automated, settings-free, alternative:
%userprofile%\appdata\locallow\Failbetter Games\Sunless Skies\

compared to:
C:\Users\[username]\AppData\LocalLow\Failbetter Games\Sunless Skies\

Requiring the user to only copy and paste the line into their My Computer field, up top.
[TE] Kuraudo Jul 30 @ 11:18am 
Thank God, I thought the smokestack was worried for a moment that the smokestack was just a decoration. Cheers!
failbetterfuzz  [author] Apr 9 @ 7:34am 
@XLII, it was removed a long time ago. Though after many requests we are reinstating it in the Sovereign update.
XLII Apr 4 @ 11:10am 
Years later and many updates, and I still can't find even a single mention of other people experiencing the bug where my locomotives' smokestacks stop working.
Taeval Jan 23 @ 11:08am 
Just repaired a black screen issue also with 2 of the 3 save files corrupted. I only lost what I'd done after the last visited port. Thank you so much for this guide! Love the game!
chef_dead Jan 11 @ 9:51am 
Thanks so much. I used the repair tips for black screen of death with 2/3 files corrupted. Worked perfectly. I did lose the gameplay data between the crash and the last time I played, but that is ok. Thanks again!