MEME FIGHTERS

A competitive fighting game with player-versus-player wagering and publicly verifiable settlement on Solana

DocumentWhitepaper
Version2.1
DateAugust 2026
StatusCurrent

Contents

  1. 1 Abstract
  2. 2 Terminology
  3. 3 Market Context
  4. 4 Product Overview
  5. 5 Technical Architecture
  6. 6 Network Synchronisation
  7. 7 Competitive Ranking
  8. 8 Wagered Matches
  9. 9 Custody and Settlement
  10. 10 Result Determination
  11. 11 Tournaments
  12. 12 Fee Structure
  13. 13 Token
  14. 14 Auditability
  15. 15 Development Roadmap
  16. 16 Risk Factors
SECTION 1

Abstract

Meme Fighters is a browser-based multiplayer fighting game in which participants may wager SPL tokens on the outcome of a match. Outcomes are determined solely by gameplay. The platform contains no chance-based mechanics, no randomised rewards, and no wagering on events external to the game.

Between two and seven participants stake an equal amount into a match escrow. Following the match, the pot is transferred to the winner less a one per cent platform fee. Tournaments operate in parallel, funded from a project treasury and awarded to the champion by on-chain transfer. Completed tournaments are published in full, including participant addresses, results, and the settlement transaction signature, enabling independent verification that a prize was paid.

The application runs entirely in a web browser. No installation is required, and participation without tokens is unrestricted; a wallet is necessary only in order to wager.

This document describes the system as implemented at the date of publication. It is technical and operational in nature and does not constitute an offer of securities, investment advice, or a solicitation of any kind.

SECTION 2

Terminology

TermDefinition
MatchA single contest between two or more participants, resolved by gameplay.
RoomA lobby in which participants assemble prior to a match. A room specifies its participant limit, round count, and whether a stake applies.
StakeThe token amount committed by each participant in a wagered match.
PotThe sum of all stakes in a match, awarded in full to the winner less the platform fee.
EscrowThe wallet holding participant stakes for the duration of a match.
TreasuryThe wallet from which tournament prizes are funded.
Rated matchA match affecting competitive ranking. Wagered matches and tournaments are rated; casual matches are not.
VoidThe state of a match whose outcome could not be established, resulting in the return of all stakes.
SECTION 3

Market Context

Informal wagering between competitors is long established in competitive gaming and is presently conducted without infrastructure. Funds are transferred through personal accounts, disputes are resolved by negotiation between the parties, and the participant holding the pot is necessarily the participant the other must trust.

Blockchain-based gaming has to date addressed this poorly. A substantial proportion of projects position the token as the primary product and the game as a mechanism for distributing it. Where the underlying game does not sustain independent engagement, activity declines in proportion to token performance.

Meme Fighters adopts the inverse position. The game is designed to be played without any token involvement, and the blockchain is applied to a single well-defined function: holding participant stakes and settling them publicly, with a transaction record available for independent verification.

Design principles

  • Unrestricted free play. Participation without a wallet is fully featured and permanent.
  • Outcomes determined by skill. No randomised element affects the result of a wagered match.
  • Public settlement. Every payment is an on-chain transaction available for inspection.
  • Return by default. Where an outcome cannot be established, stakes are returned rather than assigned.
SECTION 4

Product Overview

The application is a two-dimensional fighting game with directional movement, jumping, attacking, defending, and combination inputs. The control scheme is straightforward to learn while retaining substantial depth, producing a pronounced and readily apparent skill differential between experienced and inexperienced participants — a property material to the integrity of wagered play.

4.1 Match types

TypeParticipantsStakeRated
Casual2–7NoneNo
Wagered2–7Equal stake per participant; winner takes the potYes
Tournament2–16None; prize funded by the treasuryYes

Participants select between casual and wagered play when creating a room. Both accommodate between two and seven participants; wagered play is not restricted to one-versus-one. Tournaments constitute a third category and are created by the operator rather than by participants.

Casual matches are recorded in match history but do not affect ranking. This separation prevents ladder position being accumulated through arranged matches while retaining a complete record of play.

4.2 Controls

Movement   W A S D          Jump     J
Attack     K                Defend   L

Two participants may share a single keyboard, with the second assigned to the arrow keys.

SECTION 5

Technical Architecture

┌─────────────┐         ┌───────────────────────┐         ┌──────────┐
│   Browser   │◄───────►│     Game Server       │◄───────►│  Solana  │
│             │   wss   │                       │   RPC   │          │
│ game client │         │ matchmaking / relay   │         │   SPL    │
│   wallet    │         │ verification / payout │         │ transfers│
└─────────────┘         └───────────┬───────────┘         └──────────┘
                                    │
                              ┌─────▼─────┐
                              │  Database │  participants, matches,
                              │           │  stakes, settlements
                              └───────────┘

5.1 Division of responsibility

Match simulation is performed by the participating clients. The server does not simulate gameplay; its responsibilities are matchmaking, relaying inputs between clients, recording connection state for integrity purposes, verifying deposits against the blockchain, and executing settlement.

5.2 On-chain footprint

The platform employs standard SPL token transfers and does not deploy a custom on-chain program. The token conforms to the Token-2022 standard; both client and server determine the owning token program at runtime rather than presuming it, as classic SPL and Token-2022 derive distinct account addresses for an identical wallet and mint.

5.3 Transaction requests

Participants are requested to sign two categories of item, and no others:

1
Authentication message. A single challenge signature establishing wallet ownership. This is not a transaction and incurs no fee. A session is subsequently maintained, so the request is not repeated on each visit.
2
Stake transfer. One token transfer per wagered match, directed to escrow. This is the only transaction the platform requests.

The platform does not request token approvals or delegated authority, does not present transactions it did not itself construct, and does not request transfers of SOL or of any asset other than the game token.

SECTION 6

Network Synchronisation

Fighting games are materially sensitive to input latency. A naïve lockstep implementation advances a frame only upon receipt of the corresponding frame from the opposing client, incurring a full network round trip per frame. Locally this is imperceptible; across the public internet it renders play unviable.

6.1 Input delay buffering

The platform applies participant input on a fixed short delay and advances the local simulation ahead of confirmation. Both clients apply identical input on identical frames, preserving simulation equivalence, while neither is required to wait upon the other. The result is consistent latency in place of intermittent stalling.

This technique is standard in networked fighting games. It exchanges a small constant input delay for the elimination of variable interruption.

6.2 Divergence detection

Clients periodically compare simulation state by frame index. A mismatch indicates divergence between the two simulations, and the match is halted rather than permitted to produce a result that neither participant would reasonably accept. Where this occurs in a wagered match, stakes are returned.

Rollback netcode

Rollback techniques — predicting remote input and re-simulating upon correction — yield superior responsiveness and represent the intended long-term direction. Implementation requires complete save and restore of simulation state and constitutes a substantial undertaking. Input delay buffering is the appropriate measure at the platform's present stage.

SECTION 7

Competitive Ranking

Rated matches award points on an Elo-derived curve. Defeating a higher-ranked opponent yields a greater award; defeat by a lower-ranked opponent incurs a greater deduction. Point totals are floored at zero.

Relative standingWinnerLoser
Equivalent tier+25−15
Opponent of higher tier+35−25
Opponent of lower tier+15−10

7.1 Tier thresholds

TierPoints requiredApproximate wins
Bronze0
Silver1004
Gold25010
Platinum50020
Diamond1,00040

Only rated matches affect standing. Casual matches do not award or deduct points under any circumstance, on any code path by which a match may conclude.

SECTION 8

Wagered Matches

Stakes are specified in SOL and converted to a token amount at the point of room creation. The conversion rate is fixed at creation rather than at deposit, ensuring that all participants stake an identical token amount irrespective of intervening market movement.

The pot is the stake multiplied by the number of participants. In a seven-participant room at 0.05 SOL each, the winner receives 0.35 SOL less the platform fee. The winner receives the entire pot; there are no placement-based distributions.

8.1 Match lifecycle

1
Room creation. The creator specifies a stake. Sufficient balance is verified against the blockchain; the room cannot be created otherwise.
2
Participants join. Each participant's balance is verified on the same basis, preventing formation of a match that a participant is unable to fund.
3
Deposit window opens. Ninety seconds are allowed. Each participant signs one transfer to escrow. The match commences only once all deposits are complete.
4
Deposit verification. The server confirms against the blockchain that the transaction moved the exact stake from the specified wallet to escrow. A client assertion is never sufficient.
5
Match execution. Clients report the outcome independently upon conclusion.
6
Settlement. Upon agreement, the pot less the platform fee is transferred to the winner and the transaction signature is published to all participants.

8.2 Abandonment of a match in progress

Once all deposits are complete, stakes are committed. The consequence of a participant departing depends upon the size of the match.

Two participants

Departure constitutes forfeiture. Following expiry of the reconnection window described in section 10, forfeiture is recorded and the remaining participant is awarded the full pot less the platform fee, on the same basis as a victory achieved through play. The departing participant forfeits their stake.

This treatment is deliberate. A wagered match from which a participant could withdraw without consequence would afford no assurance to the opposing party.

Three or more participants

The match proceeds. The departure of one participant neither concludes the match nor confers victory upon another; remaining participants continue and the outcome is determined in the ordinary manner. The departing participant forfeits their opportunity to win, and their stake remains in the pot.

Departure of all participants

No award is made. Stakes are returned, either upon resolution of the match or through the reconciliation process described in section 9.

Governing principle

Payment is made only where the platform can establish that a participant won. Departure from a two-participant match establishes a winner, namely the participant remaining. Departure from a larger match establishes only that the participant is no longer competing. Where an outcome cannot be established, stakes are returned.

8.3 Stake limits

No fixed maximum applies. A stake is bounded by the participant's actual holdings, verified against the blockchain at room creation and again as each participant joins. A fixed ceiling would be unsound in either denomination: expressed in tokens it varies in value with the market, and expressed in SOL it would in time obstruct legitimate matches. A minimal floor applies in order to exclude negligible stakes.

SECTION 9

Custody and Settlement

Custody disclosure

For the duration of a match, stakes are held in an escrow wallet controlled by the operator. This constitutes a custodial arrangement and is not an on-chain escrow program. Participants rely upon the operator and the operator's infrastructure for the period during which a stake is held. This is stated explicitly: a platform representing itself as trustless while retaining control of a private key would be describing itself inaccurately.

9.1 Duration of custody

A stake is held in escrow for the duration of one match, ordinarily two to three minutes, after which it is paid or returned. Escrow is not intended to accumulate balances, and its holdings between matches are maintained near zero so that a residual balance constitutes a visible indication requiring attention.

9.2 Failure modes and their treatment

CircumstanceTreatment
A participant does not depositDepositing participants are returned their stake in full upon expiry of the window. No fee is applied.
A deposit settles but the client fails to report itThe blockchain is queried for the deposit before any conclusion is drawn, and the stake is returned.
A participant departs during the deposit windowThe match is resolved immediately rather than requiring remaining participants to await expiry.
The server restarts during a matchUnresolved stakes are reconciled against the blockchain on startup and returned.
Participants report conflicting outcomesResolved from connection records where possible; otherwise the match is voided and all stakes returned.
No outcome is reportedDeadlines resolve the match from server-observed data, or void it and return stakes.
All participants disconnectNo winner is recorded and stakes are returned.

The principle common to each case is that stakes are returned where a winner cannot be established. A stake is not retained on account of an inconclusive match, and no payment is made upon an outcome that could not be verified.

9.3 Deposit integrity controls

9.4 Operational safeguards

Wagered matches are declined where escrow holds insufficient balance to meet its obligations, comprising transaction fees and account rent necessary to pay a winner or issue a return. Declining a match is preferred to accepting a stake the platform might be unable to return.

SECTION 10

Result Determination

10.1 Agreement

Clients report the outcome independently. Where reports agree, the match settles. Where they conflict, the server determines the outcome from directly observed data — connection records, disconnection timing, and participant presence — rather than relying upon either report.

Where the server cannot establish a winner from its own records, a wagered match is voided and stakes returned. No payment is made upon a contested outcome. This constitutes the platform's principal integrity rule: an incorrect payment is materially worse than no payment, as it cannot be reversed.

10.2 Matches of more than two participants

Where multiple participants report, a single assertion cannot determine the pot. A wagered outcome is settled only where a majority of participants in the match agree upon the winner. Absent such agreement the match is voided and all stakes returned, including where the deadline expires with no reports received.

10.3 Disconnection

Departure from a match in progress constitutes forfeiture. As a dropped connection and a deliberate departure are indistinguishable at the moment of occurrence, forfeiture is not recorded immediately: a participant is afforded twenty-five seconds in which to reconnect. A participant experiencing a transient connection failure retains their stake; a participant who has withdrawn does not return, and forfeits.

10.4 Reporting deadlines

A participant declining to report cannot hold a match open indefinitely. Once one report is received, remaining participants are subject to a bounded window; a match with no reports is subject to a longer maximum duration. Both resolve conservatively, recording a winner only where the available evidence supports one.

10.5 Room administration

The operator may remove a participant obstructing a room by declining to indicate readiness. A removed participant cannot rejoin that room. Suspensions are enforced at authentication and persist through account maintenance operations.

SECTION 11

Tournaments

Tournaments are single-elimination brackets created by the operator, with prizes funded from the project treasury rather than from participant stakes. Entry is free of charge.

1
Creation. A prize is specified. The platform declines to advertise a prize exceeding the treasury's verified balance.
2
Registration. Participants join, optionally subject to a minimum token holding verified against the blockchain.
3
Execution. The bracket proceeds until one participant remains.
4
Award. The prize is transferred from the treasury and the transaction is recorded against the tournament.

Each completed tournament is published in full, comprising participant addresses, damage dealt, win-loss records, and the settlement transaction. The record is available to any party, not solely to the operator.

SECTION 12

Fee Structure

A single fee of one per cent applies to wagered match settlements and to tournament prizes. No deposit, withdrawal, listing, or subscription charges apply.

Wagered match — two participants at 25 each
  Pot                50
  Fee (1%)            0.50
  Awarded to winner  49.50

Tournament — prize of 1,000
  Fee (1%)           10
  Awarded to champion 990

12.1 Wallet separation

WalletHoldsDisburses
EscrowParticipant stakes, for the duration of a matchSettlements and returns
TreasuryProject fundsTournament prizes

Fees arising from wagered matches accumulate in escrow and are periodically transferred to the treasury. Such transfers are bounded by escrow's holdings in excess of its outstanding obligations, and accordingly cannot draw upon a stake belonging to an unsettled match.

Fee revenue funds infrastructure, continued development, and tournament prize pools.

SECTION 13

Token

The token functions as the unit in which participants stake and receive winnings. It confers no governance rights, no entitlement to revenue, and no yield. Its role is deliberately confined.

PropertyValue
NetworkSolana
StandardSPL Token-2022
Transfer fee extensionNot present — transfers settle at full value
Transfer hookNot present
Mint authorityRevoked — supply is fixed
Freeze authorityRevoked — accounts cannot be frozen

The absence of a transfer fee extension and transfer hook is material to a wagering system: either would cause a recipient to receive less than the amount sent, invalidating exact-amount deposit verification. A revoked freeze authority ensures that no party, including the operator, is able to freeze a participant's tokens.

Utility

  • Wagering — the unit staked in participant-versus-participant matches
  • Prizes — the unit in which tournaments are awarded
  • Access — organisers may require a minimum holding for entry to a room

Holding the token is not a condition of participation. Free play is unrestricted and is not degraded in any respect.

SECTION 14

Auditability

Each settlement constitutes a Solana transaction. Rather than requiring participants to accept a reported result, the platform publishes the transaction signature.

The intent is that a participant disputing an outcome need not rely upon the operator's account of it.

SECTION 15

Development Roadmap

Implemented live

Planned next

Under evaluation exploratory

SECTION 16

Risk Factors

Participants staking tokens should consider the following.

Participants should not stake amounts they are unwilling to lose. Nothing in this document constitutes financial advice or an offer of any security.