gitwtfhub

wtf is kryo-more?

tommyettinger/kryo-more — explained in plain English

Analysis updated 2026-07-29 · repo last pushed 2026-06-25

4JavaAudience · developerComplexity · 2/5MaintainedSetup · easy

TL;DR

A Java library that adds support for game-development data types, especially libGDX classes, to Kryo, a fast serialization tool. It lets game developers save and load complex game objects without writing custom conversion code.

Mindmap

mindmap
  root((kryo-more))
  What it does
    Serializes game objects
    Supports libGDX types
    Adds missing Kryo instructions
  Tech stack
    Java 8 plus
    Kryo library
    libGDX framework
  Use cases
    Save player progress
    Multiplayer network sync
    Load complex game state
  Audience
    Java game developers
    libGDX users
    Multiplayer game makers
  Alternatives
    Fory serialization
    Apache Foundation project

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Save and load a player's game progress in a libGDX desktop or mobile game using Kryo serialization.

REASON 2

Sync game state updates efficiently over a network for a multiplayer libGDX game.

REASON 3

Serialize custom data structures and specialized math or random number tools from the author's utility libraries without writing boilerplate code.

What's in the stack?

JavaKryolibGDX

How it stacks up

tommyettinger/kryo-moremishakorzik/chunkfreezernotjustanna/andeclient
Stars444
LanguageJavaJavaJava
Last pushed2026-06-252026-07-072019-08-14
MaintenanceMaintainedActiveDormant
Setup difficultyeasymoderatemoderate
Complexity2/52/53/5
Audiencedeveloperops devopsdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · easy Time to first run · 5min

Requires Java 8 or higher and a project already using Kryo serialization.

Wtf does this do

When you save a game or send data over a network in a Java application, you need to convert your in-memory objects into a stream of bytes and back again, a process called serialization. Kryo is a popular Java library built specifically to make this fast and efficient. However, Kryo doesn't always know how to handle complex or custom data types out of the box. This project provides the missing "instructions" so Kryo can smoothly save and load objects from a family of game-development and utility libraries, most notably the libGDX game framework. At a high level, the project acts as a translator. The libraries it supports cover things like game framework classes, custom data structures, and specialized math or random number tools. Normally, if you tried to save these specialized objects using Kryo, it would fail or require you to write a lot of custom boilerplate code. This project packages all that custom code for you. You just add the specific piece you need to your project, and Kryo can seamlessly process those objects. The primary users are Java game developers, particularly those building games with libGDX. If a developer is building a mobile or desktop game and needs to save a player's progress, or efficiently send game state updates over a network for multiplayer, they might use Kryo for its speed. If their game relies on libGDX's built-in data types or the author's other utility libraries, this project bridges the gap so saving and loading those objects works instantly without manual coding. The project is now split into separate pieces for each supported library, so developers only include what they actually use, keeping their application lightweight. It requires Java 8 or higher. The README also notes an alternative: a newer serialization tool called Fory, which is being developed under the Apache Foundation and sometimes requires less custom setup. However, for developers already committed to Kryo, this project works as a reliable companion.

Yoink these prompts

Prompt 1
Add kryo-more to my libGDX game project so I can use Kryo to save and load game state. Show me how to register libGDX types like Color, Vector2, and Array with Kryo.
Prompt 2
I'm building a multiplayer libGDX game and want to send game objects over the network using Kryo. Which kryo-more module do I need, and how do I configure Kryo to serialize libGDX types?
Prompt 3
Help me set up Kryo serialization for my Java game that uses libGDX data types. Walk me through adding the right kryo-more dependency and registering serializers for the types my game relies on.

Frequently asked questions

wtf is kryo-more?

A Java library that adds support for game-development data types, especially libGDX classes, to Kryo, a fast serialization tool. It lets game developers save and load complex game objects without writing custom conversion code.

What language is kryo-more written in?

Mainly Java. The stack also includes Java, Kryo, libGDX.

Is kryo-more actively maintained?

Maintained — commit in last 6 months (last push 2026-06-25).

How hard is kryo-more to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is kryo-more for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.