← BACK TO THE WIRE
N°0447AI Agents4 MIN5 SOURCES

jalca.xyz: Caffeine-built chess app reaches v334 with ICP wager pots

jalca.xyz is a two-player chess app built with Caffeine. It is now at v334 and takes ICP bets in four pots. Players need OISY for the bets and the NFT spells. If you build multiplayer apps with Caffeine, fix onboarding and add sign-in before you add more features.

jalca.xyz: Caffeine-built chess app reaches v334 with ICP wager pots
IMAGE: AI-GENERATED

On October 9, 2026, developer Jacc1027 posted jalca.xyz on the DFINITY forum. It is a two-player chess app built with Caffeine, now at v334, that takes ICP bets and gives players burnable NFT "spells" through the OISY wallet. If you build multiplayer or money-handling apps with Caffeine, read the feedback in the thread: it shows onboarding and matchmaking problems that are common in this kind of app.

What jalca.xyz shipped at v334

The launch post describes the target user with four questions. Do you like chess? Do you like "a little unpredictability" (NFT spell burning)? Do you have an OISY wallet (for NFT spells and ICP)? Do you like placing bets? The post says the betting system is "accepting icp in 4 different pots, all for next game, not the current game". So players bet on the next game, never on the game being played.

Other facts from the thread:

ItemWhat the thread says
VersionThe developer calls the app "basically finished" at v334
Fee"a 1.5% betting fee" to fund the site and, if revenue allows, to pay chess content creators to promote it
Escrow pageA read-only page at jalca-escrow-ledger.xyz shows live pots, locked pots and history
PlayersThe app "requires at least 2 people for a game to start". There are no bots
RewardsEach player gets an NFT spell in their wallet at the end of each game. Burning it casts the spell in the next game
WinningWinning "currently, is simply via prediction betting"
Next updatesMore spells (chess state logic and doodles), plus "a few loose ends"

On October 12 the developer asked who wanted to play. Later that day the developer wrote that they would come back if they found a way to make the app engaging. Forum user Henn91 replied that the UI was confusing. They said the first screen should make it "clearly visible start game against bot or multiplayer", and that people usually need a ranking, free rewards or goals before they play. On October 13 the developer replied. They confirmed there are no bots and that "nothing happens unless two people are logged in", and said they should add this to the login page. They also said an Internet Identity (II) login would let them build a winners ranking.

Who is affected and why it matters

This matters most to people building multiplayer apps with Caffeine. Caffeine builds the frontend, backend and data layer from a chat, and its AI writes the backend in Motoko. Each app has two versions: a draft, where all changes happen first, and a live version, which users see after you press Go Live. Building a new app from scratch needs a paid Host or Studio plan. The developer wrote about "giving my bank account a little rest after having arrived at v334". Long iteration on an AI-built app costs real money, so fix onboarding before you add features.

The thread also shows the cold-start problem of a game that needs two people online at the same time. There are no bots and no single-player mode, so a visitor who arrives alone sees nothing happen. The first post asks people to arrange play times with the developer, who lives in the Vietnam time zone.

The wallet flow matters too. The OISY developer docs say OISY does not broadly support delegation (ICRC-34 and ICRC-28) for dApps. Every call that changes state, such as a transfer, needs the user to approve a popup. An app that asks users to place a bet and later burn an NFT should plan for one approval per action.

The read-only escrow page is a good pattern for any app that holds user funds. Players can check pot balances without trusting the main game UI.

What to do now: a checklist for two-player Caffeine apps

  1. Put the main action on the first screen. Show a start button and state the rule up front: a game needs two logged-in players. The developer plans to add this note to the login page.
  2. Tell solo visitors what to do next. Show how many players are online, or publish fixed play times.
  3. Add a sign-in that gives each player a stable ID before you build rankings. II gives each user a unique principal per frontend origin. The II guide in the ICP docs uses @icp-sdk/auth v9 with @icp-sdk/core v5:
bash
npm install @icp-sdk/auth@9 @icp-sdk/core@5
  1. Reject anonymous callers on any endpoint that records wins or bets. Calls without sign-in arrive as the anonymous principal 2vxsx-fae. This Motoko example comes from the same guide:
motoko
import Principal "mo:core/Principal";
import Runtime "mo:core/Runtime";

persistent actor {
  func requireAuth(caller : Principal) : () {
    if (Principal.isAnonymous(caller)) {
      Runtime.trap("Anonymous principal not allowed.");
    };
  };

  public shared ({ caller }) func protectedAction() : async Text {
    requireAuth(caller);
    "Action performed by " # Principal.toText(caller)
  };
};
  1. Count the OISY approvals in one round of play (bet, spell burn, payout) and remove any you can.
  2. Keep a read-only view of the funds held in escrow, as jalca does, and link to it from the game.
  3. Test every change in the Caffeine draft before you press Go Live. Live users see published changes right away.

In Caffeine you normally ask the AI in the chat to make these changes instead of editing code by hand. The snippets show what the generated backend must enforce, so you can check the result.

Caveats

All details come from the developer's own forum posts. Nobody has reviewed the app, its escrow or its payouts independently, and the thread does not mention an audit. The app takes real ICP bets, and the rules for online betting differ from country to country. Check the law where you live before you play or build something similar.

TAGSCaffeinejalca.xyzOISY walletInternet Identity
Grounded sources5 REFS
  1. [01]Caffeine app: jalca.xyz (DFINITY forum thread)forum.dfinity.org ↗
  2. [02]Getting Started with Caffeinehelp.caffeine.ai ↗
  3. [03]Internet Identity guide, ICP Developer Docsdocs.internetcomputer.org ↗
  4. [04]Using OISY Wallet in Your ICP dAppdocs.oisy.com ↗
  5. [05]Caffeine ecosystem spotlightinternetcomputer.org ↗
Read next

Get the wire in your inbox

Every new signal, straight from the generator. No noise, unsubscribe anytime.

RSS AVAILABLE · NO SPAM