Skip to main content

a simple deserializer / serializer for Koikatu / EmotionCreators data.

Project description

KoikatuCharaLoader

a simple deserializer / serializer for Koikatu / EmotionCreators character data.

update: "dump as json" is now available.

from KoikatuCharaData import KoikatuCharaData

def main():
    k = KoikatuCharaData.load("sa.png")
    k.save_json("sa.json")

if __name__=='__main__':
    main()  
  • sa.json
{
  "product_no": 100,
  "header": "\u3010KoiKatuChara\u3011",
  "version": "0.0.0",
  "custom": {
    "face": {
      "version": "0.0.2",
      "shapeValueFace": [
        0.5403226017951965,
        1.0,
        0.2016129046678543,
        0.0,
        0.22580644488334656,
        0.0,
        0.0,
        0.1794193685054779,
        0.0,
...

install

requires python 3.x and msgpack

$ git clone https://github.com/106-/KoikatuCharaLoader.git
$ cd KoikatuCharaLoader
$ pip install -r requirements.txt

examples

renaming character

from KoikatuCharaData import KoikatuCharaData

def main():
    k = KoikatuCharaData.load("sa.png")
    k.parameter["lastname"] = "春野"
    k.parameter["firstname"] = "千佳"
    k.parameter["nickname"] = "ちかりん"
    k.save("si.png")

if __name__=='__main__':
    main()   

set the height of character to 50

from KoikatuCharaData import KoikatuCharaData

def main():
    k = KoikatuCharaData.load("sa.png")
    k.custom["body"]["shapeValueBody"][0] = 0.5
    k.save("si.png")

if __name__=='__main__':
    main()    

remove swim cap

from KoikatuCharaData import KoikatuCharaData

def main():
    k = KoikatuCharaData.load("sa.png")
    for i,c in enumerate(k.coordinate):
        for n,p in enumerate(c["accessory"]["parts"]):
            if p["id"] == 5:
                k.coordinates[i]["accessory"]["parts"][n]["type"] = 120
    k.save("si.png")

if __name__=='__main__':
    main()    

remove under hair

from KoikatuCharaData import KoikatuCharaData
k = KoikatuCharaData.load("sa.png")
kc.Custom.body["underhairId"] = 0
k.save("si.png")

member variables

KoikatuCharaData.*
png_data raw png image
face_png_data raw face image
face, body, hair shape values
coordinates(List) contains seven coordinates corresponding to situation.
parameter personal data (i.e. name, birthday, personality, ..etc)

refer

pngデータの長さの取得にあたり, martinwu42/pykoikatuを参考にしました.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kkloader-0.1.1.tar.gz (8.9 kB view hashes)

Uploaded Source

Built Distribution

kkloader-0.1.1-py3-none-any.whl (10.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page