Marjon Cajocon
Board-game engines in C

Strong checkers and chess, powered by NNUE neural networks.

I write board-game engines in C and ship them as offline apps for Android and Windows, published as MMC Solo Dev. Six of them evaluate positions with an NNUE neural network — the same efficiently-updatable architecture that transformed computer chess — trained from self-play and small enough to run on a phone with no connection.

  • C
  • Go
  • Flutter / Dart
  • Python
  • TypeScript / JavaScript
7engines written in C
6running NNUE nets
6on the Microsoft Store
5on Google Play
The Chess Ta! 3D board: chess pieces on a wooden table, rendered in 3D
The 3D board in Chess Ta! — the same renderer runs in every app here.

The apps

Every one plays offline, has a 3D board and a classic 2D board, and ships its engine compiled in — nothing is evaluated on a server.

Why a neural network matters here

Most checkers apps evaluate a position by counting material and adding a few hand-written bonuses. That is fast, and it is why they play the same predictable way every game.

An NNUE — an efficiently-updatable neural network — replaces those hand-written rules with a small network trained on millions of self-play positions. It is built so that moving one piece updates only the part of the network that changed, which makes it cheap enough to call at every node of the search. That is what lets a phone play a genuinely strong game rather than a fast shallow one.

Every net here was trained from scratch against its own variant. Rules differ enough between Brazilian, Russian, English, International, Filipino and Turkish draughts that a net trained on one is worthless on another — International alone needs a different board size and a different feature set.

How NNUE works for checkers →

Other work

Marjon Cajocon

Software engineer · Talibon, Bohol, Philippines

I build game engines in C and the apps that ship them. Seven board-game engines, six of them running NNUE neural networks I trained myself, plus a from-scratch LLM engine written in dependency-free C.

Developer
MMC Solo Dev — the name my apps ship under on Google Play and the Microsoft Store
Primary
C — engines, evaluation, search, the LLM stack
Then
Go · Flutter (Dart) · Python · TypeScript / JavaScript
Certification
EDP Specialist — Civil Service, rated 94.65% (80% to pass)
Published
Six apps on the Microsoft Store, five on Google Play
Contact
marjoncajocon08@gmail.com
Code
github.com/marjoncajocon