Skip to content

IllusionMods/KK_Plugins

Repository files navigation

KK_Plugins

Plugins for Koikatu, Koikatsu Sunshine, EmotionCreators, AI Girl, HoneySelect2, and some other games.

Installation

  1. Install the latest versions of:
  2. Download the plugin release you want from the links below. Make sure it's a version for your game.
  3. Extract the plugin .zip file to your game folder (where the BepInEx folder and game .exe is).

If you are a modder

If you'd like to create a mod that is compatible with various plugins in this repo, check the Guides folder and the wiki.

If you'd like to contribute code fixes and improvements: fork this repository, create a new branch, push your changes, and open a new PR.

To build this repository you will need VisualStudio2022+ with the .NET desktop development and Game development for Unity workloads, and .NET Framework 3.5 development tools + targetting packs and SDKs for at least .NET Framework 4.6 (best to just install them all). All dependencies are downloaded via nuget on first build of the solution. Check the wiki if you are having issues with build steps failing.

You can discuss modding on the Koikatsu Discord server in the modding channels. There are also various modding guides linked in the pins of these channels you may want to check out.

Plugin descriptions and downloads

Make sure you download the version for your game (the first part before _ is the initials of the game, e.g. HS2 = HoneySelect2).

If a plugin is listed but it's not a link, then it's either experimental or obsolete. You will need to compile it from source yourself, and you will not get any support.

CharaMakerLoadedSound

Plays a sound when the Chara Maker finishes loading. Useful if you spend the load time alt-tabbed.

StudioSceneLoadedSound

Plays a sound when a Studio scene finishes loading or importing. Useful if you spend the load time for large scenes alt-tabbed.

Change Log v1.1 Config options, AI version (thanks GeBo!)

ForceHighPoly

Forces all characters to load in high poly mode, even in the school exploration mode.

Change Log v1.1 Fixed locking up the game after special H scenes. Added config option to disable high poly mode.
v1.2 Fixed hair physics not working (Thanks Rau/Marco/Essu)
v1.2.1 Removed the hair physics fix due to being obsolete, changed default enabled state to depend on RAM
v1.2.2 Fixed a patch not working

ReloadCharaListOnChange

Reloads the list of characters and coordinates in the character maker when any card is added or removed from the folders. Supports adding and removing large numbers of cards at once.

Change Log v1.1 Fixed new coordinates saved from within the game not being handled correctly
v1.2 Fixed error when exiting the chara maker
v1.3 Updated for plugin compatibility
v1.4 Studio support
v1.4.1 Compatibility with BepisPlugins versions higher than r8
v1.5 Koikatsu Party compatibility
v1.5.1 Create card folders if missing to prevent errors
v1.5.2 Prevent reloading when cards in the _autosave folder are changed

InvisibleBody

Set the Invisible Body toggle for a character in the character maker to hide the body. Any worn clothes or accessories will remain visible.

Select characters in the Studio workspace and Anim->Current State->Invisible Body to toggle them between invisible and visible. Any worn clothes or accessories and any attached studio items will remain visible. Invisible state saves and loads with the scene.

Change Log v1.1 Fixed studio items becoming visible when they were toggled off in the workspace
v1.2 Added a character maker toggle, EmotionCreators port
v1.2.1 Fixed an incompatibility with UncensorSelector
v1.2.2 Updated for KK Darkness
v1.3 Added a toggle button for Studio, removed hotkey
v1.3.1 Fixed accessories and items attached by animations from turning invisible in AI version
v1.3.2 Fixed Studio items turning invisible in AI version
v1.4 Changes made in Studio apply to all selected characters, keep visible state when replacing characters

UncensorSelector

Allows you to specify which uncensors individual characters use and removes the mosaic censor. Select an uncensor for your character in the character maker in the Body/General tab or specify a default uncensor to use in the plugin settings. The default uncensor will apply to any character that does not have one selected.

Requirements:

For makers of uncensors, see the template for how to configure your uncensor for UncensorSelector compatibility.

Make sure to remove any sideloader uncensors and replace your oo_base with a clean, unmodified one to prevent incompatibilities!

Change Log v2.0 Complete rewrite, now supports changing uncensors inside the character maker, configuring uncensor metadata in manifest.xml, demosaic, etc.
v2.1 Reduce reliance on KK_UncensorSelector Base.zipmod
v2.2 Removed the ability to specify _low assets. A matching _low asset is expected to exist for everything that requires one.
v2.3 Added some warning labels
v2.4 Fixed demosaic not working sometimes
v2.5 ConfigManager dropdown for GUID selection, fixed color matching bug in chara maker
v2.6 Uncensors now change much more quickly without causing lag in the character maker. Random can be selected as an option for the default uncensor, any character with no uncensor selected will use a random one (Thanks @ManlyMarco). Uncensors can be exluded from random selection with a modification to the manifest.xml.
v2.6.1 Fix for the new uncensor loading code breaking in low poly
v2.7 Names in ConfigManager instead of GUIDs, uncensor lists are ordered (Thanks @ManlyMarco), slightly faster uncensor switching
v3.0 All uncensors load correctly in the character maker, default uncensors display in character maker, body parts can be selected independently from the body, new format for uncensors, new bugs
v3.1 Fixed uncensors not loading in the character maker accessed through the class menu, fixed some low poly uncensors not display correctly for the main character, fixed low poly uncensors not working at all for female characters
v3.2 Random uncensors are now more evenly distributed, gender bender config option simplified, fixed a problem with clothes that have the same mesh name as body part meshes causing problems
v3.3 Fix wrong normals after loading a character sometimes, fix default values when loading a character in to the character maker from class menu, fix balls dropdown not reloading the uncensor on change
v3.4 Fix liquid textures being removed on changing characters
v3.5 Added a message that displays if the skin texture has become corrupt and attempts a fix (Thanks @ManlyMarco)
v3.5.1 Reduce false positives for the above change
v3.6 EmotionCreators port, removed "none" as a default config option
v3.6.1 Updated for KK Darkness
v3.6.2 Fix replacing janitor's body when it shouldn't
v3.6.3 Fix janitor's uncensor
v3.6.4 Fix compatibility issues for non Darkness game versions
v3.7 Fix shadows on male parts and reduce error spam
v3.8 AI Girl version
v3.8.1 Fix broken config stuff (thanks Keelhauled)
v3.8.3 Fix uncensors not working in AI Girl main game
v3.9 Fix crash with duplicate uncensor GUIDs, implement dick/balls support for AI Girl
v3.9.1 Fix error in Studio resulting from having no uncensors
v3.9.2 Fix glossiness being lost on uncensor change, fix monochrome body showing mosaic censor
v3.10 Add ability to exclude uncensors from random selection (Thanks Gebo)
v3.11 Changes made in Studio apply to all selected characters
v3.11.2 Compatibility with BetterPenetration
v3.11.3 Compatibility with MaterialEditor

Subtitles

For Koikatsu, adds subtitles for H scenes, spoken text in dialogues, and character maker.

For AI Girl trial version, adds subtitles for the character maker.

Change Log v1.1 Fixed H subs not working for some people
v1.2 Subtitles for idle lines in dialogue
v1.3 Subtitles for character maker
v1.4 Fixed subtitles in the character maker being under the UI
v1.5 AI Girl port
v1.5.1 Fixed text wrapping, clarified config description
v1.6 HS2 port, removed FontName setting
v1.6.1 Fixed text going off screen in HS, fixed the TextAlign config setting not working properly
v2.0 Implemented subtitles for VR mode in KK and HS2
v2.0.1 Fixed using the wrong object type causing HSceneInstance to bypass null checks
v2.0.2 Subtitles are now part of the scene so they can be scoped to XUA translations
v2.1 Subtitles for character maker, Fur, Sitri in HS2
v2.2 Play Club version

AnimationController

Koikatsu version: Mostly obsolete. NodeConstraints does what this plugin does but better.

Allows attaching IK nodes to objects to create custom animations. Press the Minus (-) hotkey to bring up the menu. This hotkey can be configured in the F1 plugin settings.

Requires Marco's KKAPI and BepisPlugins ExtensibleSaveFormat.

Inspired by AttachAnimationLib by Keitaro

Change Log v1.1 Gimmicks can now rotate hands and feet properly
v1.2 Rotating characters doesn't break everything anymore
v2.0 Significant rewrite with KKAPI integration. Can now link eyes and neck to objects, scene import support, Drag and Drop plugin support
v2.1 Fix neck link not working, fix linking after unlinking not working
v2.2 AI version, window position adjustment

ClothingUnlocker

Allows gender restricted clothing to be used on all characters. Also allows you to unlock bras or skirts with any top on a per-character, per-outfit basis. This setting saves and loads with the character card or coordinate card to ensure compatibility.

Change Log v1.1 Added clothing unlocking for bras/skirts with any top
v2.0 Unlocking bra/skirt per character
v2.0.1 Fixed unlock state not saving and loading to coordinates properly

EyeShaking

Virgins in H scenes will appear to have slightly shaking eye highlights.

Change Log v1.1 VR support, added toggle to Studio
v1.2 Changes made in Studio apply to all selected characters

RandomCharacterGenerator

Generates random characters in the character maker.

Change Log v2.0 Merged changes from https://github.com/AUTOMATIC1111/KoikatsuMods

PoseTools

This plugin is aimed at increasing the usability of poses. You can create new folders in userdata/studio/pose and place the pose data inside them and those folders will show up in your list of poses in Studio. It also saves poses as .png files instead of .dat so you see can see what the content of the pose is. The list of poses is ordered by filename and the pose name is added to the file name so the list will be ordered alphabetically. It also saves skirt FK and facial expressions, though these can be disabled in plugin settings if you prefer.

Ported from Essu's NEOpose List Folders plugin for Honey Select.

ListOverride

Allows you to override vanilla list files. Comes with some overrides that enable half off state for some vanilla pantyhose.

Overriding list files can allow you to do things like enable bras with some shirts which don't normally allow it, or skirts with some tops, etc. Any part of of the list can be changed except for ID.

HairAccessoryCustomizer

Adds configuration options for hair accessories to the character maker. Hair accessories can be set to match color with the hair, enable hair gloss, modify outline color, and has a separate color picker for the hair tie part. Hairs that support a length slider can also have their length adjusted, just like vanilla front hairs. Saves and loads to cards and coordinates.

Note for modders: These options will only show up for hair accessories that are properly configured. For accessories to work the accessory must have a ChaCustomHairComponent MonoBehavior in addition to the ChaAccessoryComponent MonoBehavior. Hair accessory color will display if the ChaCustomHairComponent rendAccessory array has meshes configured. The length slider will appear if the ChaCustomHairComponent.trfLength array has bones configured. Hair color will only match to meshes configured in the ChaCustomHairComponent.rendHair array. Also check out this guide for how to create hair accessories.

Change Log v1.1 Fixed a bug with changing coordinates outside of Studio not applying color matching. Fixed a bug where changing hair color in the maker would not apply color matching to other outfit slots.
v1.1.1 Fixed hair accessories matching color when they shouldn't.
v1.1.2 Fixed hair accessories matching color when they shouldn't, again.
v1.1.3 Fixed an error when starting the classroom character maker.
v1.1.4 Fixed hair accessories turning invisible with an edited MainTex.
v1.1.5 Support for coordinate load flags

FreeHRandom

Adds buttons to Free H selection screen to get random characters for your H session.

Change Log v1.1 Added UI, KK Party support
v1.1.1 Create card folders if missing to prevent errors
v1.2 VR support

Colliders

Adds floor, breast, hand, and skirt colliders. Colliders can be toggled on and off in Studio and their state saves with the scene.

Change Log v1.1 Major rewrite, many new features
v1.1.1 ModBoneImplantor compatibility
v1.2 Changes made in Studio apply to all selected characters

MaterialEditor

MaterialEditor is a plugin that allows you to edit many properties of objects that aren't usually accessible in game. Much like Marco's clothing overlays you can replace the texture of an item, however with MaterialEditor you can edit much more than clothes. Edit clothes, accessories, hair, and even Studio items.

Features:

  • Export UV maps of a mesh to help with drawing textures
  • Replace nearly any texture with custom textures
  • Change properties of materials to control things like shininess or outline thickness
  • Change properties of the mesh to affect whether it casts shadows or disable a mesh completely
  • Change the shader of a material
  • All changes save and load with the card or Studio scene
  • Duplicate textures are saved to the card once. 100 accessories with the same texture have the same file size as one accessory with a texture

Access the Material Editor by pressing the "Open Material Editor" button on clothes, hair, or accessories in the character maker. Access it in Studio by pressing the "Mat. Editor" button on the Workspace with a studio item selected.

For makers of shaders, see the template for how to configure your shader zipmod for MaterialEditor compatibility.

Change Log v1.1 Fixed errors loading coordinates, errors loading scenes with multiple characters
v1.2 Added the ability to change body and face materials
v1.3 Copied studio items now copy Material Editor settings, changed filename format
v1.3.1 Fixed error on importing studio objects with textures
v1.4 Add ability to change shaders, change skin and face material
v1.4.1 .jpg loading support, scroll speed increase, color and texture default values for custom shaders
v1.5 Added main_skin shader, removed alpha_a and alpha_b properties for character skin
v1.6 AI version
v1.7 Add sliders
v1.8 AI Studio support
v1.9 Fixed data lost on changing clothing color and copying accessories, add texture offset and scale, add indicator mark for changed properties, add support for MainTex replacement
v1.9.1 Fixed mipmaps not being generated, fixed error on object copy in Studio, added ability to resize the UI
v1.9.2 Fixed an error on importing scenes
v1.9.3 Added several missing properties
v1.9.4 Added more shaders
v1.9.4.1 Fixed a missing shader
v1.9.5 Fixed a memory leak involving textures
v1.9.5.1 Fixed missing toon_glasses shader
v1.10 Fixed Material Editor (All) button breaking sliders in AI, TextureWrapMode is preserved when replacing textures
v1.10.1 Fixed an error on saving scenes
v2.0 Major rewrite. Virtual lists, results filtering, maker load flags, more character maker buttons, support for UncensorSelector added parts
v2.0.1 Fixed UV and obj export buttons, fixed missing hook for refreshing changes on outfit change
v2.0.2 Support for copying clothes, coordinate load flags, fixed textures not loading for coordiantes
v2.0.3 Fixed UV and obj export buttons again
v2.0.4 Fixed loading coordinates in Studio
v2.0.5 Fixed wrong coordinate index for character and hair edits
v2.0.6 Exposed the AlphaMask texture for main_skin shader, blacklisted it for the body
v2.0.7 Fixed wrong tongue materials after character replacement in KK, fixed wrong face materials after replacing in Studio, fixed shaders not loading in HS2
v2.1 Add copy/paste for material edits, shader optimization
v2.1.1 Fix paste button being disabled, blacklist Standard shader from optimization
v2.1.2 Fixed meka shader in AI/HS2, added option for exclusion from shader optimization to shader xml
v2.1.3 Fixed items being toggled on in the workspace overriding renderer disabled changes
v2.1.4 Blacklist AIT/eyelashes shader from optimization
v2.1.5 Fix .obj export
v2.2 Added hotkeys for disabling or enabling ShadowCastingMode and ReceiveShadows for all selected items in Studio
v2.3 Fix for tongue edits applying to other characters
v2.3.1 Fix nullref
v2.4 Dropdown for editing clothes, hair, and accessories in Studio
v2.4.1 Various bug fixes
v2.5 PH version
v2.6 Accessory and Studio support for PH
v2.6.1 Fix EC card import bug
v3.0 Added material copying
v3.0.5 Better UV Map export
v3.1 Color picker thanks to ame225, bulk paste edits in Studio
v3.1.2 Convert grey normal maps to red for compatibility across Unity versions
v3.1.3 Fix using wrong coordinate index in KKS, convert NormalMapDetail normal maps
v3.1.4 Compatibility with ExtSave changes
v3.1.5 Compatibility with UncensorSelector

MaleJuice

Enables juice textures for males in H scenes and Studio.

Change Log v1.1 Fixed compatibility issues with UncensorSelector using male body type on female characters
v1.2 AI and HS2 version
v1.2.1 Fixed an error due to mishandled materials
v1.2.2 Fixed juice textures not loading in HS2 sometimes
v1.3 Better UncensorSelector compatibility

StudioObjectMoveHotkeys

Allows you to move objects in studio using hotkeys. Press Y/U/I to move along the X/Y/Z axes. You can also use these keys for rotating and scaling, and when scaling you can also press T to scale all axes at once. Hotkeys can be configured in plugin settings.

FKIK

Enables FK and IK at the same time. Pose characters in IK mode while still being able to adjust skirts, hair, and hands as if they were in FK mode.

Change Log v1.1 Fix toggles going out of sync, FK being disabled when switching between characters
v1.1.1 Fix neck look pattern not loading properly

AnimationOverdrive

Type in to the animation speed box in Studio for gimmicks and character animations to go past the normal limit of 3.

Change Log v1.1 AI Girl port, capped animation speed at 1000 to prevent animations breaking

CharacterExport

Press Ctrl+E (configurable) to export all loaded character. Used for exporting characters from Studio scenes and such.

HCharaAdjustment

Adjust the position of the female character in H scene by pressing some hotkeys, which are configurable in the plugin settings.

Change Log v1.0.1 Made the hotkeys configurable
v2.0 Added a guide object instead of hotkeys for positioning

StudioSceneSettings

Allows you to adjust a few more settings for scenes. Changes save and load with the scene data.

Settings Map Masking
Near Clip Plane
Far Clip Plane
Change Log v1.2 Map masking for AI and HS2
v1.2.1 Fixed compatibility issues with StudioCustomMasking
v1.3 Changes made in Studio apply to all selected characters
v1.3.2 Increased FarClipPlane slider

Pushup

Provides sliders and setting to shape the breasts of characters when bras or tops are worn. The basic set of sliders will modify the shape of the breasts if the breast sliders are below the specified threshhold. Advanced mode lets you fully customize the shape of the breasts.

Change Log v1.0.1 Fixed an incompatibility with a MakerOptimizations plugin setting
v1.1 Fixed nipple gloss not working in KK Party, fixed maker load flags
v1.1.1 Force ABMX update on clothing state change
v1.1.2 Unlock sliders when chest tab is clicked after a delay to prevent sliders being locked
v1.1.3.1 Fix Pushup not working properly in main game mode, fix Pushup not being applied on character maker load
v1.2 EmotionCreators version
v1.3 Changes made in Studio apply to all selected characters

PoseQuickLoad

A plugin that lets you load saved poses in Studio just by clicking on the pose. Vanilla behavior requires you to select the pose and then press the load button which can be pretty tedious if you have a lot of poses, especially since saved poses have no preview image.

Note: You MUST enable this option in the plugin settings (press F1 and search the plugin). This plugin is disabled by default so people don't accidentally load poses when they don't intend to, overwriting all their posing work. Use with caution.

StudioImageEmbed

This plugin will save .png files from your userdata folder to the scene data so anyone else can load the scene properly without needing the same .png file.

MakerDefaults

Allows you to set default settings of the character maker so you don't have to set the same values manually every time.

Change Log v1.0.1 KKAPI compatibility
v1.1 Settings for preset cards and coordinates, personality in character list

StudioCustomMasking

Allows you to add map masking functionality for maps made out of items in Studio.

ItemBlacklist

Right click an item in the character maker to hide it from your lists.

Change Log v1.1 Item info shows Asset and AssetBundle, better UI

FadeAdjuster

Allows you to adjust fade color or disable the fade in and out effect.

Profile

A big textbox in the character creator where you can write a character description.

Autosave

Automatically saves cards in the character maker and scenes in Studio every few minutes.

EyeControl

Allows you to set a max eye openness, setting it to zero would let you create a character with permanently closed eyes. Can also disable a character's blinking.

AccessoryQuickRemove

Quickly remove accessories by pressing the delete key in the character maker.

DynamicBoneEditor

Edit properties of Dynamic Bones for accessories in the character maker.

AccessoryClothes

Allows clothes to function in accessory slots.

PoseUnlocker

Removes the gender restriction on saved Studio poses.

LightingTweaks

Increase shadow resolution for better quality and fix a shadow strength mismatch between main game and Studio.

MoreOutfits

Allows characters to have more than the default number of outfit slots.

Change Log v1.1.2 Fix loading outfit names when outfits aren't loaded, change outfit in Studio when replacing characters if the new character has less outfits

TwoLut

Allows you to freely mix two studio shades (luts), instead of one always being set to Midday (based on plugin by essu). Also adds next/previous lut buttons next to the dropdown.

AccessoriesToStudioItems

Plugin for studio that makes normal character accessories available as items. They are visible in the Item list and in QAB just like normal items. To see all accessories in QAB, search for ao_.

Requires at least QuickAccessBox v3.1.1 and BepisPlugins r19.3.2 to work.

HairShadowColorControl

Convenient controls for changing the shadow color of character hair in maker. Uses ME underneath.

TimelineFlowControl

Adds simple logic to Timeline that allows for controlling playback, mostly to create limited animation loops. Requires the latest versions of BepInEx, Timeline and ModdingAPI.

Demosaic

Removes mosaics from the character models. This is replaced by UncensorSelector and not needed unless there is no UncensorSelector port available for a game.

StudioWindowResize

Makes studio selection windows (e.g. item and animation lists) larger so more items are visible. The size is configurable in plugin settings.

ClothesToAccessories

Allows using normal clothes and hair as accessories. New accessory types are added to the Type dropdown list. Body masks from normal top clothes will be used if available, otherwise masks from top clothes added as accessories will be used.

Boop

Boop the character by moving mouse over parts of their body, hair and clothes. Upgraded version of the original Boop by essu.

ShaderSwapper

Swap all shaders to the equivalent Vanilla Plus shader in the character maker or studio by pressing right ctrl + P.

Custom rules for swapping shaders can be provided in xml files. Check the "Mapping" category in plugin's settings.

Explanation of the xml file format
<ShaderSwapper>
  <!-- Old structure for "Mapping" element, still supported -->
  <Mapping From="Shader Forge/main_skin" To="xukmi/SkinPlus">

  <!-- New structure for "Mapping" element, keep the old "From" attribute... -->
  <Mapping From="Shader Forge/main_skin">
    <!-- ...but introduce a "Rule" element to replace the "To" attribute -->
    <Rule Name="xukmi/SkinPlus" />
  </Mapping>

  <!-- Advanced usage, with includes and excludes -->
  <Mapping From="original_shader">
    <!-- Change to shader_0 if the material name is material_0 or material_1... -->
    <Rule Name="shader_0">
      <Include>
        <Entry>material_0</Entry>
        <Entry>material_1</Entry>
      </Include>
    </Rule>

    <!-- ...else, change to shader_1 if the material name is NOT material_2 or material_3... -->
    <Rule Name="shader_1">
      <Exclude>
        <Entry>material_2</Entry>
        <Entry>material_3</Entry>
      </Exclude>
    </Rule>

    <!-- ...else, change to shader_2 -->
    <Rule Name="shader_2" />
  </Mapping>
</ShaderSwapper>

FreeHStudioSceneLoader

  • [KK_FreeHStudioSceneLoader]

Allows you to use studio scenes as H mode maps in main game. Experimental! Expect issues, no support will be given.