This mod is currently unmaintained. It IS NOT updated for 1.6.
I've decided to step back from Stardew modding for the time being, due to general burnout, which I already felt during 1.5.6, and has only gotten worse with the 1.6 release. Who knows, maybe I'll come back to modding this game one day, but for now, it is what it is.
If you're interested in maintaining the mod (just updates, bugfixes, compatibility patches, but maybe new features too?), let me know via a NexusMods DM, or on the Stardew Valley Discord server, or a Discord DM (my handle is @shockah) - I plan on giving mod page edit access to anyone interested, and also switching all DP to the maintainer.
I don't know whether this is Shockah approved or not but someone did try continuing the upkeep of this mod at least. https://www.nexusmods.com/stardewvalley/mods/32354
Also CJB Cheats can skip to a certain date but it doesn't count as sleeping so it's more for testing purposes I suppose.
The author did not in fact contact me at all. I wish they did, so we could talk about them just taking over this page instead, as it would make things so much easier, but it is what it is, I guess.
If you (users, let the dev rest) want this to work with 1.6 just follow the basic instructions for migrating mods to 1.6 then in your chosen IDE (I use vscode) change the following lines:
harmony.TryPatch( monitor: Monitor, original: () => AccessTools.Method(typeof(GameLocation), nameof(GameLocation.performTouchAction)), prefix: new HarmonyMethod(typeof(Hibernation), nameof(GameLocation_performTouchAction_Prefix)), postfix: new HarmonyMethod(typeof(Hibernation), nameof(GameLocation_performTouchAction_Postfix)) );
to
var originalMethod = AccessTools.Method(typeof(GameLocation), "performTouchAction", new Type[] { typeof(string), typeof(Vector2) });
if (originalMethod != null) { harmony.Patch( originalMethod, new HarmonyMethod(typeof(Hibernation), nameof(GameLocation_performTouchAction_Prefix)), new HarmonyMethod(typeof(Hibernation), nameof(GameLocation_performTouchAction_Postfix)) ); } else { Monitor.Log("Failed to find the method to patch.", LogLevel.Error); }
Making sure you increment the manifest.json version and add <TargetFramework>net6.0</TargetFramework>
to propertygroup in Hibernation.csproj and
<PackageReference Include="Pathoschild.Stardew.ModBuildConfig" Version="4.1.1" /> to itemgroup
I did this with no prior knowledge of C# or .net or even NuGet so just follow the errors (shouldn't have any after these modifications)
Which files contain those lines? It's certainly not manifest or content.json and definitely not in the i18n. I tried opening the .dll and.pdb with vscode but that wasn't it
Or you could give your unofficial version of the mod too, that'd help understand
I would like to publish my results to GitHub and even release a ready-to-use mod, however:
Shockah's repo is a monorepo. In particular, Hibernation depends on other things, it is not self-contained there, so forking the whole thing seems wrong.
Building the 1.6 Hibernation mod resulted not only in the "Hibernation" mod, but also the "Kokoro" mod, which (going by the manifest.json) is "A core mod for Shockah's mods." The Hibernation mod does not run without Kokoro for me. So I'd have to publish two mods, which might then introduce dependency-conflicts with other mods by Shockah, and nobody wants to deal with that
But yes, if you follow Haxxstatic's instructions, you do end up with a 1.6-compatible mod. Thanks for figuring out the patch, Haxxstatic!
The best way not to be burnt out anymore is to find something you love doing. I bet plenty of stuff you do each day does not burn you out, right. maybe we could make this mod be able to play just the event and market days some day.
At some point, but not quite sure when. I planned on rewriting the mod, trying to make it work in multiplayer too. EDIT: Not anymore, I guess... see the announcement.
yeah that make sense, thank you so much for your answer and your mods! please take you time :) EDIT: Yeah, saw the announcement, too bad but it happens thank you anyways!
Would it be possible to add a hotkey to bring up the hibernation menu instead of going to bed? I don't want it to appear during normal gameplay unless I want it to.
Keep in mind this mod goes through the whole cycle of every single day, which makes it pretty slow. If all you want is to go to the next festival, CJB Cheat Menu might be better to use, as it changes the date instantly (just sleep once afterwards). This mod is useful if you actually care about the flow of time, like, machines updating, nightly events triggering, etc.
22 comments
I've decided to step back from Stardew modding for the time being, due to general burnout, which I already felt during 1.5.6, and has only gotten worse with the 1.6 release. Who knows, maybe I'll come back to modding this game one day, but for now, it is what it is.
If you're interested in maintaining the mod (just updates, bugfixes, compatibility patches, but maybe new features too?), let me know via a NexusMods DM, or on the Stardew Valley Discord server, or a Discord DM (my handle is @shockah) - I plan on giving mod page edit access to anyone interested, and also switching all DP to the maintainer.
https://www.nexusmods.com/stardewvalley/mods/32354
Also CJB Cheats can skip to a certain date but it doesn't count as sleeping so it's more for testing purposes I suppose.
harmony.TryPatch(
monitor: Monitor,
original: () => AccessTools.Method(typeof(GameLocation), nameof(GameLocation.performTouchAction)),
prefix: new HarmonyMethod(typeof(Hibernation), nameof(GameLocation_performTouchAction_Prefix)),
postfix: new HarmonyMethod(typeof(Hibernation), nameof(GameLocation_performTouchAction_Postfix))
);
to
var originalMethod = AccessTools.Method(typeof(GameLocation), "performTouchAction", new Type[] { typeof(string), typeof(Vector2) });
if (originalMethod != null)
{
harmony.Patch(
originalMethod,
new HarmonyMethod(typeof(Hibernation), nameof(GameLocation_performTouchAction_Prefix)),
new HarmonyMethod(typeof(Hibernation), nameof(GameLocation_performTouchAction_Postfix))
);
}
else
{
Monitor.Log("Failed to find the method to patch.", LogLevel.Error);
}
Making sure you increment the manifest.json version and add
<TargetFramework>net6.0</TargetFramework>
to propertygroup in Hibernation.csproj and
<PackageReference Include="Pathoschild.Stardew.ModBuildConfig" Version="4.1.1" />
to itemgroupI did this with no prior knowledge of C# or .net or even NuGet so just follow the errors (shouldn't have any after these modifications)
dotnet run
It's certainly not manifest or content.json and definitely not in the i18n. I tried opening the .dll and.pdb with vscode but that wasn't it
Or you could give your unofficial version of the mod too, that'd help understand
Haxxtastic (the person who posted the above patched code) then asks you to follow the 1.6 migration guide: https://stardewvalleywiki.com/Modding:Migrate_to_Stardew_Valley_1.6
The lines Haxxtastic wants you to fix are in Hibernation.cs.
I would like to publish my results to GitHub and even release a ready-to-use mod, however:
But yes, if you follow Haxxstatic's instructions, you do end up with a 1.6-compatible mod. Thanks for figuring out the patch, Haxxstatic!
EDIT: Not anymore, I guess... see the announcement.
EDIT: Yeah, saw the announcement, too bad but it happens thank you anyways!
This mod is useful if you actually care about the flow of time, like, machines updating, nightly events triggering, etc.