Increases the "fun" level of singularities (and some fixes because woo sidetracking) #2589
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
About The Pull Request
Reset the starsystem JSON save back to the default when merging or testmerging
Some things this fixes can chain and have likely already infected the persistent json (a non-json converted list for example)
So while searching for some code, I found some interesting mechanics stuff that remains almost entirely unused. Well, that gave a good reason to visit black holes (and also to get sidetracked into fixing some starsystem persistence save issues)
Overmap Singularities now increase the gravity onboard vessels in their influence, ranging from difficulties of movement while at a distance, over mildly agonizing effects when approaching, to various flavors of death if deciding to take a dip.
Additionally, they've been somewhat rewritten to work across system borders (looping), and to do some more correct math on how the vector a ship gets dragged towards gets calculated. Increased the pull strength of black holes aswell to compensate for directional vector components being recognized.
Black holes now also prevent you from using inertia dampeners while you are in range of their influence, requiring manual adjustment.
In addition, modified a bit of gravity stuff, such as silicons now being able to get crushed (at >8 constant G), full hardsuits compensating for about 1G damagewise (they'll still not help you move any faster though), and making one of the fancier procs that applied to gravity-weak people also apply to normal ones, although at less intensity than for those weak to it.
Lastly, I ran into a bunch of wacky things with the starsystem json saves, debugged a bunch, and ended up maybe perhaps fixing some. I can't be certain because everything uses try-catch. I had to manually dismantle try-catch uses so I could actually trace bugs.
Anyway, may be a tiny bit less unstable now instead of not working half the time (which nobody notices because try-catch suppresses runtimes). As mentioned at the top, the starsystem json must be reset for this to work, as some type infection is in the save itself (the default json should be fine however)
The morale of the story?
Do not use try catch if you want to not have your system breaking unnoticable and untraceable.
Why It's Good For The Game
Fun mechanics for some fun encounters.
Also fix man good.
Testing Photographs and Procedure
Find out yourself :)
Changelog
🆑
add: Overmap singularities now have more impactful effects, including but not limited to increased gravity inside nearby vessels, dampener interference, and improved directional pull.
add: Full hardsuits now provide 1G gravity protection against damage, though they do not improve movement.
balance: Silicons will suffer from consistently very high gravity, starting at above 8G.
tweak: Some interactions with high gravity previously limited to grav-sensitive individuals now are accessible to anyone, albeit at lower magnitude (generally 3G higher tolerance)
fix: Starsystem persistence should now be slightly less volatile.
config: The starsystem persistence config MUST be reset to the default starmap for the fixes in this PR to apply correctly.
/:cl: