Releases: ResoniteModdingGroup/MonkeyLoader.GamePacks.Resonite
v0.24.0
THE SPLITTENING / TESTENING pre-release
This is a pre-release for MonkeyLoader + Resonite Integration + RML Integration. Expect errors in the logs, and mods not working (they need to be updated / recompiled), because some things have been moved around. See below for known issues. You don't need to clean up any files when switching between this version and the stable branch - just extract the other version over it again. Mods will need to be replaced too, if they had to make changes.
This currently requires .NET 9.0.6, since the assembly locations are hardcoded for the moment!
What's Changed
- Upgrade injection and setup for .NET 9.0
- Fix locale data injector by @Nytra in #136
- Fix context menu by @Nytra in #137
- Lots more, which will be listed in detail in the proper release!
Full Changelog: v0.23.1...v0.24.0
Install
To install just the Game Packs, place the provided MonkeyLoader.GamePacks.Resonite.nupkg
and file into your MonkeyLoader/GamePacks/
folder.
Alternatively, unzip the provided MonkeyLoader-v0.27.0+Resonite-v0.24.0+RML-v3.0.6.zip
into Resonite's install folder to install the latest versions of MonkeyLoader, the Game Pack for Resonite, and the ResoniteModLoader compatibility package.
To develop with, add the following to your project file or Directory.Build.props file and reference the necessary packages through NuGet:
<PropertyGroup>
<RestoreAdditionalProjectSources>
https://pkg.munally.com/MonkeyModdingTroop/index.json;
https://pkg.munally.com/ResoniteModdingGroup/index.json
</RestoreAdditionalProjectSources>
</PropertyGroup>
You may also need to add the URLs https://pkg.munally.com/MonkeyModdingTroop/index.json
and https://pkg.munally.com/ResoniteModdingGroup/index.json
as package sources inside VS and set up package mappings.
Known Issues
- Integration with Renderite has not been implemented yet - as such there is no fancy loading indicator
- Resolving of dependencies is not working right - mods have been tweaked to ignore dependencies for now
- You may need to delete
0Harmony.dll
from therml_libs
folder if you have it.
Known broken Mods
These mods have issues, which may range from simply not working to crashing the game.
- Community Bug-Fix Collection
- FixAltEnter (Unity Dependency)
- LogCleaner
- ResoniteIKCulling (Moved Types)
- ResoniteMetricsCounter
- ShowDelegates (Moved Types)
- TransparentCameraEnabled (Unity Dependency)
Reporting and Discussion
There's a discussion page attached to this pre-release - please make use of it to discuss any problems. If something turns out to be a problem with MonkeyLoader or its Game Packs, please file an issue with the important details and a reference to the discussion thread for it. If you have any ideas or suggestions, please voice them there as well.
We will do what we can to honor your wishes and requests.
Thanks
... to @Nytra for helping getting things up to speed, and @goaaats in particular for the injector idea and application.
This was some pain to debug and get to work, but here we go.
v0.23.1
What's Changed
- Add missing inspector generation code by @Nytra in #111
- Adds setting "require lock in to press" and a try catch around the inspector body generation
Full Changelog: v0.23.0...v0.23.1
Install
To install just the Game Packs, place the provided MonkeyLoader.GamePacks.Resonite.nupkg
and MonkeyLoader.GamePacks.Resonite.Unity.nupkg
files into your MonkeyLoader/GamePacks/
folder.
Alternatively, unzip the provided MonkeyLoader-v0.25.0+Resonite-v0.23.1+RML-v3.0.5.zip
into Resonite's install folder to install the latest versions of MonkeyLoader, the Game Packs for Resonite, and the ResoniteModLoader compatibility package.
To develop with, add the following to your project file or Directory.Build.props file and reference the necessary packages through NuGet:
<PropertyGroup>
<RestoreAdditionalProjectSources>
https://pkg.munally.com/MonkeyModdingTroop/index.json;
https://pkg.munally.com/ResoniteModdingGroup/index.json
</RestoreAdditionalProjectSources>
</PropertyGroup>
You may also need to add the URLs https://pkg.munally.com/MonkeyModdingTroop/index.json
and https://pkg.munally.com/ResoniteModdingGroup/index.json
as package sources inside VS and set up package mappings.
v0.23.0
What's Changed with MonkeyLoader
- Update to Harmony 2.3.6 by @Banane9 in MonkeyModdingTroop/MonkeyLoader#58
- Fix collection modified exception when unregistering a mod by @Banane9 in MonkeyModdingTroop/MonkeyLoader#57
- Add option to provide default calculation for monkey's EnabledToggles by @Banane9 in MonkeyModdingTroop/MonkeyLoader#60
Full Changelog: MonkeyModdingTroop/MonkeyLoader@v0.24.15...v0.25.0
What's Changed
- Create SharedConfig slot as non-persistent to not leave slots in worlds and add explaining comment by @Banane9 in #101
- Add more configured / cancelable / async event handler monkey base-types by @Banane9 in #102
- Adjust locale loading and trigger reload when hot-(re)loading mods by @Banane9 in #103
- Add option to not slow down startup by @l-2-j in #106
- Implement suite of Event Source Monkeys to match Handlers by @Banane9 in #107
- Add customizable inspector header text system to show missing warnings by @Banane9 in #109
- Also adds a new way to use session shared configs: as the default for a local override on a particular field
- Make tooltips respect canvas unit scale by @Banane9 in #110
Full Changelog: v0.22.1...v0.23.0
Install
To install just the Game Packs, place the provided MonkeyLoader.GamePacks.Resonite.nupkg
and MonkeyLoader.GamePacks.Resonite.Unity.nupkg
files into your MonkeyLoader/GamePacks/
folder.
Alternatively, unzip the provided MonkeyLoader-v0.25.0+Resonite-v0.23.0+RML-v3.0.5.zip
into Resonite's install folder to install the latest versions of MonkeyLoader, the Game Packs for Resonite, and the ResoniteModLoader compatibility package.
To develop with, add the following to your project file or Directory.Build.props file and reference the necessary packages through NuGet:
<PropertyGroup>
<RestoreAdditionalProjectSources>
https://pkg.munally.com/MonkeyModdingTroop/index.json;
https://pkg.munally.com/ResoniteModdingGroup/index.json
</RestoreAdditionalProjectSources>
</PropertyGroup>
You may also need to add the URLs https://pkg.munally.com/MonkeyModdingTroop/index.json
and https://pkg.munally.com/ResoniteModdingGroup/index.json
as package sources inside VS and set up package mappings.
v0.22.1
What's Changed with MonkeyLoader
- Add overridable Authors to Monkeys by @Banane9 in MonkeyModdingTroop/MonkeyLoader#52
- Tweak ConfigSection loading behavior for incompatible versions by @Banane9 in MonkeyModdingTroop/MonkeyLoader#54
- Make loading & saving configs more resilient by @Banane9 in MonkeyModdingTroop/MonkeyLoader#56
Full Changelog: MonkeyModdingTroop/MonkeyLoader@v0.24.0...v0.24.15
What's Changed
- Show monkeys and their toggles first in mod configs, update locales and tooltips by @Nytra in #79
- Readme: Remove array editing mention, add info for how to disable, add new features by @Nytra in #80
- Improve Tooltips with Hovertime, Scaling, and Display by @Nytra in #81
- Tweak Session Share Component by @Banane9 in #83
- Refactor Inspector / Event Handler Monkey classes by @Banane9 in #82
- Remove Vanilla Tooltips by @Banane9 in #85
- Add Tooltip Resolver for Hyperlinks and extra caching by @Banane9 in #84
- Fix null exception in tooltip button delegate handler by @Nytra in #87
- Update dependencies and add fix for plugin weaving by @Banane9 in #88
- Remove Open Linked DynamicVariableSpace Monkey by @Banane9 in #89
- Update hyperlink tooltips with optional additional data by @Banane9 in #90
- Add more dynamic variable extensions by @Banane9 in #94
- Rework Inspector-Generation Related Integration by @Banane9 in #91
- Make ResoniteLogToConsole properly Asynchronous by @Banane9 in #96
- Add DynamicVariableIdentity struct and more extensions by @Banane9 in #97
- Add support for nullable enums, and improve standalone facets by @Nytra in #86
- Add Helpers for settings DataFeed by @Banane9 in #99
Full Changelog: v0.21.2...v0.22.1
Install
To install just the Game Packs, place the provided MonkeyLoader.GamePacks.Resonite.nupkg
and MonkeyLoader.GamePacks.Resonite.Unity.nupkg
files into your MonkeyLoader/GamePacks/
folder.
Alternatively, unzip the provided MonkeyLoader-v0.24.15+Resonite-v0.22.1+RML-v3.0.5.zip
into Resonite's install folder to install the latest versions of MonkeyLoader, the Game Packs for Resonite, and the ResoniteModLoader compatibility package.
To develop with, add the following to your project file or Directory.Build.props file and reference the necessary packages through NuGet:
<PropertyGroup>
<RestoreAdditionalProjectSources>
https://pkg.munally.com/MonkeyModdingTroop/index.json;
https://pkg.munally.com/ResoniteModdingGroup/index.json
</RestoreAdditionalProjectSources>
</PropertyGroup>
You may also need to add the URLs https://pkg.munally.com/MonkeyModdingTroop/index.json
and https://pkg.munally.com/ResoniteModdingGroup/index.json
as package sources inside VS and set up package mappings.
v0.21.2
What's Changed with MonkeyLoader
- Log patches and potential conflicts by @Nytra in MonkeyModdingTroop/MonkeyLoader#41
- Make GetFeaturePatches virtual so you don't need to override it by @Nytra in MonkeyModdingTroop/MonkeyLoader#39
- Update System.Text.Json by @Nytra in MonkeyModdingTroop/MonkeyLoader#40
- Add (nearest) parent search for identifiables by @Banane9 in MonkeyModdingTroop/MonkeyLoader#42
- Call shutdown on monkeys that fail to run by @Banane9 in MonkeyModdingTroop/MonkeyLoader#44
- Ensure log messages are written in order by @Banane9 in MonkeyModdingTroop/MonkeyLoader#46
- Add EnabledToggle as property for Monkeys by @Banane9 in MonkeyModdingTroop/MonkeyLoader#49
Full Changelog: MonkeyModdingTroop/MonkeyLoader@v0.23.1...v0.24.0
What's Changed with the Resonite Integration
- Add SettingsDataFeed check to DataFeedInjector by @Banane9 in #74
- Add patch / conflict logging for monkeys by @Banane9 in #73
- Shutdown on fail by @Nytra in #76
Full Changelog: v0.20.0...v0.21.2
What's Changed with the RML Integration
- Auto detect enabled toggles by @Banane9 in ResoniteModdingGroup/MonkeyLoader.GamePacks.ResoniteModLoader#23
Full Changelog: ResoniteModdingGroup/MonkeyLoader.GamePacks.ResoniteModLoader@v3.0.3...v3.0.4
Install
To install just the Game Packs, place the provided MonkeyLoader.GamePacks.Resonite.nupkg
and MonkeyLoader.GamePacks.Resonite.Unity.nupkg
files into your MonkeyLoader/GamePacks/
folder.
Alternatively, unzip the provided MonkeyLoader-v0.24.0+Resonite-v0.21.2+RML-v3.0.4.zip
into Resonite's install folder to install the latest versions of MonkeyLoader, the Game Packs for Resonite, and the ResoniteModLoader compatibility package.
To develop with, add the following to your project file or Directory.Build.props file and reference the necessary packages through NuGet:
<PropertyGroup>
<RestoreAdditionalProjectSources>
https://pkg.munally.com/MonkeyModdingTroop/index.json;
https://pkg.munally.com/ResoniteModdingGroup/index.json
</RestoreAdditionalProjectSources>
</PropertyGroup>
You may also need to add the URLs https://pkg.munally.com/MonkeyModdingTroop/index.json
and https://pkg.munally.com/ResoniteModdingGroup/index.json
as package sources inside VS and set up package mappings.
v0.20.0
What's Changed with MonkeyLoader
- Fix base event dispatching by @Banane9 and @Nytra in MonkeyModdingTroop/MonkeyLoader#37
- Spin logging Console off into a separate process by @Banane9 in MonkeyModdingTroop/MonkeyLoader#38
- Fixes closing the Console killing Resonite
- Fixes Console being forcefully opened
- Console can be opened / closed with toggle in game at runtime
- Tweaks logging to spawn Tasks to execute the potentially blocking logging methods by @Banane9
Full Changelog: MonkeyModdingTroop/MonkeyLoader@v0.22.11...v0.23.1
What's Changed with the Resonite Integration
- Make OpenLinkedDynamicVariableSpace toggleable by @Nytra in #68
- Add Resonite log to MonkeyLoader Console monkey by @Banane9 in #71
- Remove array editing from game pack by @Banane9 in #69
- Add SyncArray proxying and SyncCurve proxying to SyncArrayEditor, generate button to grab the array ref by @Nytra in #67
- Now available as the standalone mod ArrayEditing
Full Changelog: v0.19.2...v0.20.0
Notice
This update includes new, separate application in the MonkeyLoader/Tools/ folder that hosts the console. It seems to have worked well in testing (on Windows), but please report any issues you might have.
Install
To install just the Game Packs, place the provided MonkeyLoader.GamePacks.Resonite.nupkg
and MonkeyLoader.GamePacks.Resonite.Unity.nupkg
files into your MonkeyLoader/GamePacks/
folder.
Alternatively, unzip the provided MonkeyLoader-v0.23.1+Resonite-v0.20.0+RML-v3.0.3.zip
into Resonite's install folder to install the latest versions of MonkeyLoader, the Game Packs for Resonite, and the ResoniteModLoader compatibility package.
To develop with, add the following to your project file or Directory.Build.props file and reference the necessary packages through NuGet:
<PropertyGroup>
<RestoreAdditionalProjectSources>
https://pkg.munally.com/MonkeyModdingTroop/index.json;
https://pkg.munally.com/ResoniteModdingGroup/index.json
</RestoreAdditionalProjectSources>
</PropertyGroup>
You may also need to add the URLs https://pkg.munally.com/MonkeyModdingTroop/index.json
and https://pkg.munally.com/ResoniteModdingGroup/index.json
as package sources inside VS and set up package mappings.
v0.19.2
What's Changed with MonkeyLoader
- Add more checks to AddMod, ShutdownMod(s) and RunMod(s) by @Banane9 in MonkeyModdingTroop/MonkeyLoader#28
- Allow the EnumerableInjector to allow entirely new items by @Banane9 in MonkeyModdingTroop/MonkeyLoader#30
- Remove text auto from .sh files by @ljoonal in MonkeyModdingTroop/MonkeyLoader#32
- Adds an ItemChanged event to ConfigSections and fixes its FullId by @Banane9 in MonkeyModdingTroop/MonkeyLoader#33
- Adds an AsyncEnumerableInjector by @Banane9 in MonkeyModdingTroop/MonkeyLoader#34
- Move from bundled types and extensions to EnumerableToolkit by @Banane9 in MonkeyModdingTroop/MonkeyLoader#36
- Add being able to sort ConfigSections based on a Priority (default 0, sorting by Name) by @Banane9
- Add option to set a DefiningConfigKeys's Priority in the Initializer - if components are being added, it still has to be via the ConfigKeyPriority component though - by @Banane9
- Add configuration for logging handling by @Banane9
- Set LogLevel
- Set target folder for logs
- Set how many recent logs to keep
- Optionally spawn a console to show messages as they appear (may not work on Linux Native, but should work on Wine or Proton)
Full Changelog: MonkeyModdingTroop/MonkeyLoader@v0.19.1-beta...v0.22.11
What's Changed with the Resonite Integration
- Upgrade to new MonkeyLoader version by @Banane9
- Generify GetLocaleString extension methods and sort Monkeys in Settings by @Banane9 in #52
- Overhaul custom inspector generation by @Banane9 in #53
- Make sync array editor use shared list proxies in the world Assets slot by @Nytra in #55
- Make sync array editor toggleable by @Nytra in #54
- Fix standalone facets for new MonkeyLoader version by @Nytra in #57
- Makes ConfigKeySessionShare components more resilient against deletion of their Slot and add conversion layer by @Banane9 in #58
- Add Tooltip system based on Tooltippery by @Banane9 in #60
- The LocalActionButtonExtensions now have passthrough "WithLocalAction" (rename of SetupLocalAction) and "WithTooltip" methods
- Tooltips can be added to those mod-defined buttons as regular or locale strings
- Display Flags enums as a group of toggles by @Banane9 in #47
- Doesn't work for Nullable enum values yet
- Move to EnumerableToolkit by @Banane9 in #65
- Create flexible DataFeedInjector system to allow for arbitrary item injection and result replacement by @Banane9 in #23
- Implement the
ICustomDataFeedItems
interface with your Monkey or ConfigSection to control which DataFeedItems appear in its respective group - Add a component that implements
IConfigKeyCustomDataFeedItems<T>
to yourDefiningConfigKey<T>
to control which DataFeedItems represent it - Create a Monkey deriving from
DataFeedBuilderMonkey<TMonkey, TDataFeed>
to add predefined enumerable BuildingBlocks to the TDataFeed's enumeration - Create a Monkey deriving from
DataFeedBuildingBlockMonkey<TMonkey, TDataFeed>
to implement your own building block which will be added to the TDataFeed's enumeration - Internally, a
DataFeedInjector<TDataFeed>
is created for each data feed being targeted, which get loaded as a dynamic mod that handles the injection patching
- Implement the
Full Changelog: v0.17.2...v0.19.2
Notice
This version has some breaking changes. Mods may need to be recompiled against it, if they made use of some changed features.
Any locale definitions for config sections and keys now need to include ".Config" after the mod id.
Some dependencies have been added to the release bundle - make sure to install the whole zip.
Install
To install just the Game Packs, place the provided MonkeyLoader.GamePacks.Resonite.nupkg
and MonkeyLoader.GamePacks.Resonite.Unity.nupkg
files into your MonkeyLoader/GamePacks/
folder.
Alternatively, unzip the provided MonkeyLoader-v0.22.12+Resonite-v0.19.2+RML-v3.0.3.zip
into Resonite's install folder to install the latest versions of MonkeyLoader, the Game Packs for Resonite, and the ResoniteModLoader compatibility package.
To develop with, add the following to your project file or Directory.Build.props file and reference the necessary packages through NuGet:
<PropertyGroup>
<RestoreAdditionalProjectSources>
https://pkg.munally.com/MonkeyModdingTroop/index.json;
https://pkg.munally.com/ResoniteModdingGroup/index.json
</RestoreAdditionalProjectSources>
</PropertyGroup>
You may also need to add the URLs https://pkg.munally.com/MonkeyModdingTroop/index.json
and https://pkg.munally.com/ResoniteModdingGroup/index.json
as package sources inside VS and set up package mappings.
v0.18.0-pre1
📦 Uncategorized
- Generify GetLocaleString extension methods and sort Monkeys in Settings
- PR: #52
- Overhaul custom inspector generation
- PR: #53
- Make sync array editor use shared list proxies in the world Assets slot
- PR: #55
- Make sync array editor toggleable
- PR: #54
- Fix standalone facets for new MonkeyLoader version
- PR: #57
v0.17.2
v0.17.1
Fixes Inspectors failing to generate due to oversight.