Table of Contents

Game Classes

Item

Item for inventory.

Parameter Type Description
name string Item name. Must be unique
cost number price of item
descr string item description
icon string / KTCharInventoryPreview item icon
trade boolean whether the item can be traded
buy boolean can sell/buy item
hidden boolean if “True”, the name and description are replaced by “???”
shop “tenten” / “shady” in which store the item is sold
ptr boolean If True, then the item is for Patrons only

Outfit

Item for the inventory + an item of clothing for the character.

Parameters are the same as Item, plus more

Parameter Type Description
char “Ino” / “Sakura” / “Hinata” name of the character the item is for
layer string the name of the layer on which to place the image of the clothes. It is also the name of the folder where the image is located.
val string the name of the image without the .webp extension which is in the layer folder
lust number What level of depravity is required to wear the item

KTCharInventoryPreview

The icon of the item with the clothing.

Parameter Type Description
char_name string name of the character the item is for
layers (string, string)[] List of layers that are applied over the character
crop (number, number, number, number) How to crop an image

Example

KTCharInventoryPreview(
  char_name="hinata",
  layers=[
    ("base", "default"),
    ("eyes", "default"),
    ("mouth", "default"),
    ("costume", "my_custom_costume"),
  ],
  crop=(0, 336, 600, 600),
)

In order to write a complete list of layers for each item, there are pre-made lists that you can use.

ino_preview_nude_layers = [
    ('base', 'default'),
    ('boobs', 'default'),
    ('left_hand', 'default'),
    ('right_hand', 'default'),
    ('eyes', 'default'),
    ('mouth', 'default')
]
 
ino_preview_layers = ino_preview_nude_layers + [
    ('bra', 'default'),
    ('panties', 'default'),
]
 
sakura_preview_layers = [
    ('base', 'default'),
    ('boobs', 'default'),
    ('left_hand', 'naked'),
    ('right_hand', 'naked'),
    ('eyes', 'default'),
    ('mouth', 'default'),
]
 
hinata_preview_layers = [
    ('base', 'default'),
    ('eyes', 'default'),
    ('mouth', 'default')
]

An example of how to use the list.

KTCharInventoryPreview(
  char_name="hinata",
  layers=hinata_preview_layers + [("costume", "my_custom_costume")],
  crop=(0, 336, 600, 600),
)

There are also predefined cropping options for previews.

ino_top_inv_preview = (149, 329, 303, 303)
ino_bottom_inv_preview = (149, 668, 303, 303)
ino_costume_inv_preview = (0, 336, 600, 600)
 
ino_face_inv_preview = (149, 130, 303, 303)
hinata_face_inv_preview = (149, 100, 303, 303)
sakura_face_inv_preview = (180, 170, 303, 303)
 
sakura_top_inv_preview = (180, 350, 303, 303)

Module

Module for interaction with the game.

Static parameters Type Description
id string module id. Must be unique.
subscribe_on_events string[] list of events to which the module should subscribe. See List of events
Function name Arguments Description
on_init Called once when starting the game (new or loading a save)
on_event event Called when the event to which the module is subscribed occurs