ReusableMetadata
Allows metadata to be reused across multiple seeds.
About this mod Author’s original text
Reusable Metadata Mod
Summary
Changes Metadata to behave more like I envisioned when I first heard about a "NewGame+" mode in DSP. The primary change is that using metadata only consumes it for that save, but it also includes an optional change to how Metadata production is calculated.
Partially inspired by this reddit post
Detailed Explanation
Consumption
Using metadata will no longer "permanently" consume it. Instead, the metadata will be "consumed" only for that save.
This allows you to start every new game with your maximum amount of metadata, no matter how much you have spent on other seeds or saves.
Production
There are two ways that Metadata production can be calculated with this mod, depending on the value of the useHighestProductionOnly config option.
useHighestProductionOnly=true (Optional)
Only the highest metadata value from each unique seed is counted towards the availble metadata. Metadata can be thought of as a 'high score' when this is enabled.
This is my preferred way to play because it provides a counterbalance to the additional utility of reusable metadata, but it isn't the default since some may not want metadata to be any harder to obtain.
Example
'Raw' Metadata production from 3 seeds:
|Seed|Meta-EM|Meta-Energy|Meta-Structure|Meta-Information|Meta-Gravity|Metaverse|
|----|-------|-----------|--------------|----------------|------------|---------|
|1 |100| 90 | 60 | 15 | 5 | 0 |
|2 | 75 | 125 | 40 | 10 | 10 | 5 |
|3 | 50 | 25 |200 | 25 | 0 | 0 |
The bolded number is the quantity that the mod would select for each metadata type.
So in this example, you would start a new seed with:
|Meta-EM|Meta-Energy|Meta-Structure|Meta-Information|Meta-Gravity|Metaverse|
|-------|-----------|--------------|----------------|------------|---------|
|100 |125 |200 |25 |10 | 5 |
useHighestProductionOnly=false (Default)
Use the vanilla formula for calculating metadata prouction (I.E, Every unique seed contributes to the total Metadata production)
Example
Using the same production data from the previous example, you would start a new seed with:
|Meta-EM|Meta-Energy|Meta-Structure|Meta-Information|Meta-Gravity|Metaverse|
|-------|-----------|--------------|----------------|------------|---------|
|225 |240 |300 |50 |15 | 5 |
Installation
- Available
- And on the DSP-UsableMetadata github page.
Remember: Back up your save data and property folder! (%userprofile%\Documents\Dyson Sphere Program)
Let me know if you have suggestions or issues at
Configuration Options
|Key|Type|Default|Description|
|---|---|---|---|
useHighestProductionOnly|bool|false| True: Only metadata from the highest producing seed of each type will be counted towards the available metadata.
False: Use the vanilla formula for calculating metadata prouction (I.E, Every unique seed contributes to the total Metadata production)
verboseLogging|bool|false|For debugging.
enableSandboxCheat|bool|false|Intended for debugging and testing. Applies sandboxMultiplier to sandbox games. Use at your own risk.
sandboxMultiplier|float|1.0|Intended for debugging. 1 = 100%
Change Log
- Version 1.0.11:
- [Docs] Fixed mismatched readme package
- Version 1.0.10
- [Dev] Built release DLL with compiler optimizations enabled
- [Dev] Corrected BepInEx.BaseLib version in package dependency file
- [Dev] Updated unity package versions to match DSP unity version (2022.3.62)
- [Dev] BepInEx repo should be automatically added to the project (NuGet.Config)
- Version 1.0.9:
- [Docs] Fixed typo in readme
- [Dev] Updated DLL assembly version to match the mod version.
- Version 1.0.8:
- [Compat] Updated to game version 0.10.34.28524
- Mod had failed to load due to GetItemTotalProperty() return changing from int to long. (PR #4)
- [Docs] Added build instructions to readme and other misc readme formatting changes
Install & use Install: BepInEx plugin
- The archive from playbuff is the mod itself — usually a BepInEx plugin (a .dll or a plugin folder once unzipped).
- Recommended: use a community mod manager (such as r2modman) — pick this game, import the mod, and the manager sets up BepInEx and its dependencies for you.
- Manual route: install the BepInEx loader in the game folder, then drop the unzipped .dll or plugin folder into BepInEx/plugins/.
- Launch the game — the BepInEx console logs every plugin it loads; seeing this mod in the log means it is installed.
Mods with listed dependencies need those installed too, or they will not load. Options are usually changed in-game or in the plugin's config file.
Install these first, or the mod will not work: