A collection of libraries to help with the creation of mods in the game Keep Talking and Nobody Explodes.
Named after the respective toki pona word, meaning roughly "strong, powerful; confident, sure; energetic, intense".
This project has a dependency to Emik.Morsels, if you are building this project, refer to its README first.
If you are using Qkrisi's modkit, install it from Keep Talking ModKit > Plugins > wawa.Editors (By Emik) > Install
.
Otherwise, you can install it manually by going to Releases, downloading the latest wawa.Editors .dll
file, and placing it in ./Assets/Editor/Plugins/Managed/
, not ./Assets/Plugins/Managed/
.
Whichever method is used, wait for Unity to reload, and a new tab should appear named wawa
. Hover over it, and download additional libraries as needed under Update
.
- wawa.DDL - Implements the DDL pattern to safely expose game values, such as missions or strikes.
- wawa.Editors - Editor-only assembly that adds a scaffolder to quickly create new modules, and an updater/downloader.
- wawa.Extensions - Adds extension methods for
KMFramework
types to make hooking easier. - wawa.IO - Adds methods for KTaNE-related IO operations, such as Mod Settings, loading AssetBundles from the mod directory, or loading external libraries.
- wawa.Modules - Adds
ModdedModule
, a base class that implements essential module behavior. - wawa.Optionals - Shared
Maybe
type. These libraries don't returnnull
without wrapping it in this type. - wawa.Recall - Allows hooking onto other vanilla/modded modules and/or selectables. Useful for modules that require context of other modules.
- wawa.Schemas - Adds a fluent builder for
TweaksEditorSettings
, which is what Tweaks uses to format mod settings. - wawa.TwitchPlays - Adds
Twitch
, a base class that hooks on aModdedModule
to add essential TwitchPlays behavior. - wawa.Unity - Adds
CachedBehavior
, eliminates overhead of Unity API calls without the need for explicit fields.
-
Set up Emik.Morsels.
-
Download and extract the full source code, or clone the repository:
git clone https://github.com/Emik03/wawa.git
-
Open the solution in your favorite IDE, or use the command-line directly to build it.
dotnet build
Issues and pull requests are welcome to help this repository be the best it can be.
This repository falls under the MPL-2 license.