Timbn.GraveyardKeeperTwo.Core
2.0.1
dotnet add package Timbn.GraveyardKeeperTwo.Core --version 2.0.1
NuGet\Install-Package Timbn.GraveyardKeeperTwo.Core -Version 2.0.1
<PackageReference Include="Timbn.GraveyardKeeperTwo.Core" Version="2.0.1" />
<PackageVersion Include="Timbn.GraveyardKeeperTwo.Core" Version="2.0.1" />
<PackageReference Include="Timbn.GraveyardKeeperTwo.Core" />
paket add Timbn.GraveyardKeeperTwo.Core --version 2.0.1
#r "nuget: Timbn.GraveyardKeeperTwo.Core, 2.0.1"
#:package Timbn.GraveyardKeeperTwo.Core@2.0.1
#addin nuget:?package=Timbn.GraveyardKeeperTwo.Core&version=2.0.1
#tool nuget:?package=Timbn.GraveyardKeeperTwo.Core&version=2.0.1
Timbn.GraveyardKeeperTwo.Core
Timbn Core is the shared framework every Timbn mod for Graveyard Keeper 2 is built on. Install it when a Timbn mod lists it as a requirement. Modders can build on it too, see For Modders.
Requirements
Installation
With Vortex
- Install BepInEx for Graveyard Keeper 2
- Download with "Mod Manager Download" from the Files tab or the Vortex download button
Without Vortex
- Install BepInEx for Graveyard Keeper 2, start the game once, and quit at the main menu. This creates the
BepInEx/pluginsandBepInEx/configfolders. - Download the Timbn.GraveyardKeeperTwo.Core zip file.
- Extract the zip into
BepInEx/plugins. You should end up withGraveyard Keeper 2/BepInEx/plugins/Timbn.GraveyardKeeperTwo.Core/.
Check it works
The bottom right of the main menu lists Timbn Core along with any other Timbn mods.
For Modders
To start fast, install the Timbn.GraveyardKeeperTwo.Templates template once with dotnet new install Timbn.GraveyardKeeperTwo.Templates, then dotnet new gk2mod -n MyMod. It makes a project with everything below already set up. Otherwise add the Timbn.GraveyardKeeperTwo.Core NuGet package to your project. It points at the game's DLLs in your Graveyard Keeper 2 install (set GameDir if the game is somewhere else) and never copies Core next to your plugin, since players get Core as its own mod. Then inherit TimbnFrameworkPlugin<T> on your BepInEx plugin class, where T is that class. It patches your assembly, binds your config, and gives you logging and per frame updates.
[BepInPlugin(MyPluginInfo.PLUGIN_GUID, MyPluginInfo.PLUGIN_NAME, MyPluginInfo.PLUGIN_VERSION)]
[BepInDependency(TimbnCorePlugin.Guid, "2.0.0")]
public class Plugin : TimbnFrameworkPlugin<Plugin>
{
protected override void OnAwake()
{
Logger.LogInfo("Hello from my plugin");
}
}
The plugin's properties are how you add things to the game. Quests.Add adds quests with offers, hand ins and stages that chain like the game's own, Dialog.AddTalk gives an NPC a conversation, and Npcs.Schedule and Npcs.Find give people a day of their own or walk them somewhere for a quest, along the paths, over the walkable ground, or in a straight line for a short step. Stations.Add puts a new workstation with your own 3D model on a build desk, and Crafts.Add adds a recipe at any station, yours or the game's, with their names in your lang files or in the call. UnlockedBy has a tech unlock a station or a recipe, Techs.Add puts a new tech of your own on the tech tree, and Mastery sets the tool level a recipe needs. Models loads your asset bundle for those and for extra parts like a headstone. Audio.PlayMusic plays one of the game's music tracks and Audio.PlaySound one of its sounds, such as item_use_drink. There are also events, settings, potions, text, sprites, balance changes and save data. People, groups, their events and their animations come from TimbnGameIds.Npcs, .Groups, .NpcEvents and .NpcAnimations, and TimbnGameIds also names the game's items, sounds, music, techs, perks, buffs, build desks and workstations. Everything a plugin adds is taken out again when it unloads. Items, buffs, recipes and stations a plugin adds are kept out of the game's save file and come back when the save loads, so removing the plugin later leaves a save that still loads.
License
Mozilla Public License 2.0, see LICENSE.txt.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 is compatible. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- BepInEx.Core (>= 5.4.21)
- UnityEngine.Modules (>= 6000.3.9)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
- Core 2.0.1 loads saves faster with quest mods installed, removes the hitches on a new day and on the first talk after loading, and spreads navmesh updates over several frames.