Sunless Sea

Sunless Sea

View Stats:
Sunless Sea > General Discussions > Topic Details
hanchan  [developer] Feb 12, 2015 @ 7:05am
Modding Sunless Sea
Sunless Sea is a challenging game (that's how we like it!) but we're interested to hear from the modding community.

As you will have found, if you've had a poke around, everything in the game outside of the story (which uses our StoryNexus engine) is hand-crafted in a series of json files.

We're really interested to know what recipes you've made to bring out different elements of the game.

When we start working on Zubmariner we may develop some more elements which will make things easier for modders. As it is, you have access to pretty much everything we do!

So what have you been up to?
< >
Showing 1-15 of 62 comments
Wlerin Feb 12, 2015 @ 7:09am 
Why are the entities files so messy? D:

Or are those the ones written using StoryNexus...


It would be easier to mod, I think, if it were possible to put mod data in a file separate from the main, automatically updated, ones. That way your saves don't break completely every time a new steam update comes down the pipe.
Last edited by Wlerin; Feb 12, 2015 @ 7:11am
Kai of the Void Feb 12, 2015 @ 7:50am 
I was daydreaming about writing my own officer and associated quest-line, but haven't looked at the files yet.
Spacemurine Feb 12, 2015 @ 10:27am 
The [thing]_import.json files are about five times easier to interpret and edit than the raw ones, but those generally only get updated after using the Download New Stories function. It'd be a lot easier to edit those without having to sort through a million null values, but I don't think there's any way to get the game to convert those to the files it actually uses; I think it only converts them across after succesfully downloading new content.
I mean, there might be a way to get it to compile them without a download, but I haven't found one. The only thing I can think of is trying to enable forced content downloads while disconnected from the internet, but I suspect that'd just make it tell you "hey you got no internet access bud". I mean, it says that if you don't have internet access anyway, I'm just not entirely sure how turning on the force content download bit would interact with that. Whatever!

I haven't really done much actual modding, all that said. Mostly just tinkering with requirements and stuff just for the hell of it. Occasionally everything explodes! Trying to create anything from scratch seems like it'd be an actual hell, though, what with even simple things consisting of huge stacks of unused variables. Plus, you miss one comma and the game gets very upset, causing it to send you to The Hell Corner.
Cornuthaum Feb 12, 2015 @ 11:17am 
Modifications I've been making:
1.) Increasing the cargo holds of the Phorcyd-class Corvette, the Caligo-class Merchant Steamer, the Maenad-class Firgate and the Eschatologue-class Dreadnought by 20-40 points.
2.) Fiddled around with the Navigation constants - I increased the base speed of ships from 8 to 12 (tedium-reducing, because after 20 hours zailing across the inky black becomes boring rather than gripping), reduced the SAY timer accordingly (to 45 seconds). I haven't figured how to adjust Terror and Hunger accordingly yet, since it only increments in full values of 1 instead of decimals
3.) Upped the Turn Rate of all ships - PC ships and NPC spawned ships - by about 20% to make combat slightly less of a "circle endlessly behind them with your deck gun" affair.

Things I still want to figure out:
1.) Which trade good corresponds to which ID in Exchanges
2.) How to adjust carry-over between Captains. I want to change the Legacy system to allow me to carry over Pages without ruining my ability to gain Secrets, and I want to actually be able to leave components other than weapons to my Heir. One time for the Fulgent Impeller quest is enough. I really, really, really never want to do this quest again.
3.) How to modify Officers (There needs to be a class of Officer that trains Pages, and I want Officers that train each and every quality up to a maximum of 150 points - probably the 'Upgraded', post-questline versions, such as Maybe's Rival, the Indomitable Campaigner and whatnot. Would probably require there to be an "upgradeable" Gunner or First Officer, come to think of it)
Giopeppe Feb 12, 2015 @ 11:26am 
It seems to me that import.json are just formatted, but the structure is the same of "raw" one... i use notepad++ JSON viewer to format them in a more "palatable" form.
Cornuthaum Feb 12, 2015 @ 11:38am 
Originally posted by Giopeppe:
It seems to me that import.json are just formatted, but the structure is the same of "raw" one... i use notepad++ JSON viewer to format them in a more "palatable" form.

Same here. Np++ and JStool with its autoformat makes life so much easier than trying to decipher the doom-noodle.
doom1121 Feb 13, 2015 @ 2:24am 
I am a beginner. I have never modded anything. Have a ton of ideas. Is there an instruction manual or site I could read up on to find out how to do this?
Last edited by doom1121; Feb 13, 2015 @ 2:25am
Gotcha! Feb 13, 2015 @ 5:47am 
- I've doubled every ship's hold. The amount of cargo space you have is ridiculous. It feels like the developers are purposely trying to annoy people with it. You never know when you need a specific cargo item so you want to keep a few items of every type around just in case. But the game doesn't let you. Which leads to a lot of searching for more of the item you tossed away one hour earlier and now suddenly need.
Not to mention the few quests that make you sacrifice 20, 40 or even more space.

- I've increased the ship's speed, doubled it. After a while sailing from island to island becomes really tedious and boring. I also halved the time needed to get a new event, since I reach my destinations twice as fast now and don't want to wait around in front of the port.

- I've lowered fuel and food usage so I don't have to constantly stack up on that stuff. Saves more cargo space too and makes the game a bit easier, being allowed to explore more easily.

All in all I feel that the creators made this game far too tedious. Too slow-paced. I'm glad that there's a means to speed things up and make some elements easier.
Perhaps I lack patience, but I feel a game should give a decent amount of progress in return of one's play time.

Combat sure could be more interesting, and more monsters could spawn. Right now enemies are rather rare and only present in what seems pre-determined locations. I'd love to see that changed or see a user-made modification for it.
Giopeppe Feb 13, 2015 @ 5:58am 
Probably you lack ludicrously amounts of patience, but i am happy you found a way to enjoy the background arts assets of the game. (Don't want to be rude, but, practically you've a totally different game now).
Gotcha! Feb 13, 2015 @ 7:16am 
You're absolutely right, I feel like I'm playing a casual version of the game now. But really, I'm fine with that. :)
Maybe it's an age thing, I dunno. I just don't have the patience for most games anymore, unless the game is right up my alley, which seems to be a rarity nowadays.
Nojd Feb 13, 2015 @ 8:35am 
Guide to creating quests would be very handy. Also please make sticky topic with links for all existing mods on this forum.

Originally posted by wlerin:
It would be easier to mod, I think, if it were possible to put mod data in a file separate from the main, automatically updated, ones. That way your saves don't break completely every time a new steam update comes down the pipe.
I agree with this. If you created new item for your ship and equipped it, then after update save file will become broken, because new qualities.json do not contain such record. That's why we cannot release mods with new items.
Last edited by Nojd; Feb 13, 2015 @ 10:02am
ChickenStrip Feb 13, 2015 @ 4:11pm 
How do I get started with modding? Where are the .json files even located?

What's the best way to increase game speed? Is there a universal speed scale, or do I need to adjust boat speed and enemy speeds and resource consumption?
Last edited by ChickenStrip; Feb 13, 2015 @ 4:12pm
ChickenStrip Feb 13, 2015 @ 4:24pm 
Okay, I found it. But advice on easiest way to speed up the game while keeping the same balance is at the top of my list of things to figure out.
ChickenStrip Feb 13, 2015 @ 5:21pm 
Guide for 3x speed modding, a.k.a. "Sunless Sea: ARPG of the Year Edition". This is supposed to raise the entire game speed, not just movement, so it retains the game's normal balance while being much faster.

Terror accrual is still off. Some of the enemy settings may be off, too. Still digging. Any help would be appreciated.

navigationconstants.json

{"HungerUpdatePeriod":10, -> 3.33
"FuelUpdatePeriod":1, -> 0.33
"SomethingAwaitsYouPeriod":60, -> 20
"BaseHungerIncrease":0.5,
"BaseShipSpeed":8, -> 24
"BaseShipSpeedLimit":0.0005, -> 0.0015
"ShipReversePenalty":0.5,
"EnginePowerModifier":4.5,
"BaseShipAcceleration":5, -> 15
"BaseShipTurningSpeed":0.1, -> 0.7 (0.3 seemed too slow. Mechanics may not be linear)
"EngineFuelDecrementUnit":0.05,
"LightFuelDecrementUnit":100,
"SkeletonCrewDivision":2,
"CrewLonelinessDivision":4,
"TerrorLonelinessMultiplier":2,
"TurboSpeedMultiplier":1.75,
"TurboFuelCostMultiplier":2,
"TurboPeculiarNoiseIncrease":1,
"GloomUpdatePeriod":2, -> 0.67
"GloomUpdatePeriodInLight":5, -> 1.67
"GloomThreshold":10,
"BaseGloomIncrease":1,
"GleamCheckRadius":60,
"BaseTerrorIncrease":1,
"BaseGleamIncrease":1,
"DimAmbientThreshold":1,
"BrightAmbientThreshold":10000,
"HeadlightGleamBonus":1,
"PortGleamBonus":2,
"RepairMinHullPercent":50,
"RepairUpdatePeriod":3, -> 1.0
"RepairSuppliesConsumed":1,
"RepairHullIncreased":5,
"FleeTerrorBumpMax":10,
"SomethingAwaitsDateTimeIncrease":24, ->8 ????? (What does this do?)
"LegacyDateTimeIncrease":730, -> 210 ???
"DefaultTileMappingRules":"Default",
"MaxTradeEntityPopulation":6,
"WeatherDurationInDays":6}



Now for combatconstants.json, to get things to scale to the boatting changes we made:

{"UnsuccessfulPathsLimit":20,
"AICalculationInterval":1, -> 0.333
"AICooldownDuration":10, -> 3.33
"SearchDuration":10, -> 3.33
"EvadeDuration":5, -> 1.67
"RammingDuration":4, -> 1.33
"RammingMovementBonus":3,
"CooldownMovementPenalty":4,
"SeekingPlayerMovementBonus":1.25,
"BeastieChaseRange":20,
"BeastieSneakLeadDistance":60,
"SneakingDuration":12, -> 4
"SneakingTransitionLength":3, -> 1
"SneakingMovementBonus":1.5,
"IronDamageCoefficient":0.16,
"MirrorsWarmupCoefficient":0.3,
"VeilsAggroCoefficient":0.9,
"AggroRangeLightsOffModifier":0.75,
"IlluminatedWarmupCoefficient":1.5,
"BeastieMinPercentHitChance":0.8,
"AttackMissDistance":20,
"CrewDamageHullThreshold":0.5,
"DamageVariationRange":0.15,
"MaxDistanceShuttlersWillChase":200,
"BeastieItemUseInterval":5} -> 15

Weapon speed is kind of complicatd. This is item-by-item, so you need to do search and replace in CombatAttacks.json

"BaseWarmUp":18 -> "BaseWarmUp":6
"BaseWarmUp":12 -> "BaseWarmUp":4
"BaseWarmUp":8-> "BaseWarmUp":2.67

That should be it?


SpawnedEntities.json
Again this requires doing a few search and replace:
"RotationSpeed":1 -> "RotationSpeed":3
"RotationSpeed":0.7 -> "RotationSpeed":2.1



"MovementSpeed":21, -> "MovementSpeed":63, (to ensure I don't hit the same value twice)
"MovementSpeed":12, ->"MovementSpeed":36,

etc.


How do I compile this into a proper mod?
Last edited by ChickenStrip; Feb 13, 2015 @ 7:27pm
Inf Feb 13, 2015 @ 6:59pm 
I found a lot of the moddable files here on Windows 7:
"C:\Users\$Username\AppData\LocalLow\Failbetter Games\Sunless Sea"

... but I can't find where you guys are changing ship stats (cargo hold, etc). Is there another location, or did I just miss it?
< >
Showing 1-15 of 62 comments
Per page: 15 30 50

Sunless Sea > General Discussions > Topic Details
Date Posted: Feb 12, 2015 @ 7:05am
Posts: 62