pavlovsg / DSP_Mods

Dyson Sphere Program Mods

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Preface

A few mods I wrote for myself for Dyson Sphere Program. All mods (currently) require you have BepinEx extracted into your DSP directory, which is used to bootstrap and loads these DLLs. The compiled plugins need to be placed in your Dyson Sphere Program\BepInEx\plugins folder.

Do not report problems to the developers when running any of these mods (or even a savegame you've used one of these mods in). The game currently does not support mods. The devs do not need spurious bug reports caused by a modded game. Reproduce your bug on a 100% vanilla game and save, or assume it's potentially related to a mod unless you know with 100% certainty it wasn't influenced in any way by any mod you have installed now or in the past.

The Mods

QOL/Mechanic Changing
DSP_MinerOverride

This transpiles the MinerComponent::InternalUpdate method to not deduct resources from the Vein (and a few other places it's tracked). Useful if you regret not choosing the 100x resource multiplier when you started your game.

DSP_MoreStars

Have you always wanted more stars? Well. This gives you more stars. Up to 255 of them. Postfixes UIGalaxySelect::_OnInit to raise the slider limit, then transpiles UIGalaxySelect::OnStarCountSliderValueChange to jump past the cap (which caps to 80 for some odd reason). Larger universes will spawn more white dwarfs/black holes/neutron stars.

DSP_NoResearchNag

Disables the "slow research speed" nag which pops up around every 5 minutes when you're not generating enough hashes/sec to keep CentreBrain happy. Transpiles GameTutorialLogic::GameTick to always jump past the tutorial nag section.

DSP_WhoNeedsDirt

This overrides the return value from PlanetFactory::ComputeFlattenTerrainReform so terrain modifications do not consume, or add, dirt/sand/soil.

Data Dump/Inspection
DSP_RecipeDumper

This adds Postfix methods to the Recipe and Item database loaders, and dumps some selected fields in something vaguely resembling TOML markup. I was thinking about writing a recipe tool, but this seems different enough to the other ones I could use as a base that I'll leave that up to someone with actual frontend experience.

Support

Please note the base game does not support mods at this time. These use BepinEx as a loader and the MinerOverride mod is quite likely to break if Youthcat change anything in the miner code (it assumes the game performs 3 checks in a specific order, and compile to a specific sequence of IL instructions).

Acknowledgements

All trademarks, copyright, and resources related to Dyson Sphere Project itself, as well as any materials generated by the RecipeDumper mod, remain the property of Gamera Game and Youthcat Studio as applicable according to the license agreement distributed with Dyson Sphere Program.

Many thanks to the multitudes of people responsible for BepinEx and Harmony that make putting mods like this together so easy.

About

Dyson Sphere Program Mods

License:MIT License


Languages

Language:C# 100.0%