Windows Client

The server runs on Linux, but the game client is Windows-only. This guide explains how to point the client at your server and distribute it to players.

How it works

The client doesn’t connect to a user-configurable IP address: the server IP is embedded in a binary file called ClientInfo.bmd. This file is generated by the InfoEncoder tool, which reads an .ini with the IP and produces the encrypted binary that the client loads at startup.

MainInfo.ini  ──→  InfoEncoder.exe  ──→  ClientInfo.bmd
  (your IP)           (encoder)         (goes inside the client)

Steps to configure the client

1. Edit the IP in MainInfo.ini

In the encoder folder (inside the repository, Encoder/), open MainInfo.ini and change only the IP:

[Connection]
IpAddress=YOUR_PUBLIC_IP   ; ← replace with your VPS IP
IpAddressPort=44405
ClientSerial=TbYehR2hFUPBKgZj
ClientVersion=0.97.11

IpAddressPort must match the ConnectServer port. The default is 44405.

2. Run InfoEncoder.exe

Double-click it or run from a terminal:

cd Encoder
InfoEncoder.exe

The encoder reads MainInfo.ini and all configuration .txt files and generates:

Encoder\Client\Data\Local\ClientInfo.bmd

3. Distribute the client

The Encoder\Client\ folder is the complete player-ready client. It contains:

Client\
├── main.exe          ← game executable
├── Main.dll          ← main plugin
├── Config.ini        ← user settings (resolution, sound)
├── ScreenShots\
└── Data\
    └── Local\
        └── ClientInfo.bmd   ← embedded IP (generated by InfoEncoder)

Compress that folder as a .zip or .rar and upload it to your download server.

To let players download from the web panel, configure the links in web/config/downloads.json.

Client requirements (Windows)

RequirementDetails
Operating systemWindows 7 / 10 / 11
Architecture32-bit (x86)
DirectXDirectX 8 or higher
Supported resolutions800×600, 1024×768, 1280×1024 and above

User settings (Config.ini)

Players can edit Config.ini to change resolution and window mode:

[Display]
Width=1024
Height=768
FullScreen=0       ; 0 = windowed, 1 = fullscreen

[Sound]
MusicVolume=5
SoundVolume=5

[Language]
Language=0         ; 0 = Spanish, 1 = English, 2 = Portuguese

0.97k client features

This client includes the following improvements over the original Kayito release:

Updating the IP without redistributing the full client

If only the IP changes (client is already distributed), you only need to:

  1. Edit MainInfo.ini with the new IP
  2. Run InfoEncoder.exe
  3. Distribute only the updated ClientInfo.bmd file

Players replace Client\Data\Local\ClientInfo.bmd and reconnect.

Troubleshooting

“Read file incorrect or not exists” when opening the client: ClientInfo.bmd is missing or corrupted. Regenerate it with InfoEncoder and replace it in Data\Local\.

Client connects but can’t enter the server: verify that the IP in MainInfo.ini is the correct public IP and that port 44405/tcp is open in the VPS firewall.

Client opens and closes immediately: may be a CRC error if main.exe was manually modified. Use the original unpatched executable.