LitePaper — PingTONg

Last updated: September 30, 2025 • Version v1.2.0

This litepaper provides a comprehensive overview of PingTONg’s vision, technology, economics, and roadmap (Full‑DeFi, non‑custodial settlement).

0) TL;DR

PingTONg is a competitive, non‑custodial table‑tennis arcade on TON.

  • Stakes, payouts, and refunds are executed on‑chain by a smart contract (escrow).
  • A stateless server (oracle) only signs results; it cannot move funds.
  • Match formats: BO1 / BO3 / BO5; buy‑ins: 1, 2, 5, 10, 50, 100 TON.
  • Lobby is real‑time via a single WebSocket multiplexed into lobby and game:<id>.
  • Arcade Mode (Power‑Ups): optional, one‑shot, SFT‑like items burned on use; unused items and gas top‑ups are refunded.
  • Fees are transparent, on‑chain (feeBps sent to feeReceiver). Surplus deposits are auto‑refunded.

1) Vision & Principles

  • Full DeFi: non‑custodial settlement on smart contracts; servers never hold player funds.
  • Fair, skill‑first gameplay with clear rules and transparent scoring.
  • Open & composable: minimal off‑chain trust, domain‑tagged messages, replay‑safe oracles.
  • Low‑friction UX for Telegram & mobile; Solo is always available; staking features are disabled in restricted regions.

2) Game Modes

2.1 Solo Training

  • Local, physics‑driven Pong with AI difficulty (easy/medium/hard).
  • Series engine mirrors multiplayer: countdown start, rally speedup, spin, depth.
  • No contracts involved; can unlock Power‑Ups later via quests.

2.2 Quest (Solo)

Rolling out in Q1 2026 with level‑based challenges to earn cosmetic or low‑impact Power‑Ups.

2.3 Multiplayer (Staked)

  • Buy‑ins (TON): 1, 2, 5, 10, 50, 100.
  • Match formats:
    • BO1 — first to 11 points (single set).
    • BO3 — each set to 7 points; first to 2 sets wins.
    • BO5 — each set to 5 points; first to 3 sets wins.
  • Lobby UX (Winamax‑style): table grouped by Mode × Buy‑in; “Play” creates or joins; real‑time row updates; auto‑route when your match flips to in_game.

2.4 Arcade Mode (Power‑Ups)

  • Players pre‑select a limited queue (e.g., 5 Power‑Ups).
  • One‑shot usage (single rally or timed duration); burned on use.
  • Examples: SpeedBoost, Sticky, Magnet, Curveball, Shield, Phantom, Mirror, Slow‑Mo, Tiny Ball, Giant Paddle, Spin Burst, Gravity Flip, Split Ball (carefully balanced), etc.
  • At match start, each player adds a small gas top‑up (e.g., 0.05 TON). Unused items and unspent gas are refunded at the end.

2.5 Tournaments

  • Single‑elimination brackets of 32 or 64 players.
  • On‑chain prize escrow and bracket advancement; oracle attestations per match.

3) Match Lifecycle (Multiplayer)

  • Create/Join — Backend registers { matchId, mode, buyInTon, deadlineTs }. Players stake to the PongEscrow contract. Lobby shows open / ready; when 2/2, brief ready (~1.5s) then in_game.
  • Gameplay — Real‑time over WS game:<matchId>. Server never holds funds; it only forwards state and collects signed results.
  • Result — Oracle emits a signed result (winner, sets, points, nonce). Escrow verifies signature + nonce and pays out autonomously.
  • Fallbacks — Disconnect flow with timestamp skew guard (atTs ≤ now()+60), grace window, and forfeit if needed. Global cancel refunds both when the match is voided.

4) Architecture — Smart Contracts (TON)

4.1 PingTongEscrow.tact

  • Stores mode, stakeUnits/stakeNano, and players (A, B) per matchId.
  • Allowed stakes list; rejects mismatched or insufficient deposits.
  • Nonce monotonicity across ReportDc, SubmitResult, GlobalCancel (anti‑replay).
  • Timestamp skew guard for DC: atTs ≤ now() + 60.
  • No reversal: after winner is set, cancel paths are locked.
  • Deposit cushion flag: require ≥ stake + cushion (≈ 0.015–0.02 TON) to avoid gas edge‑cases; surplus auto‑refunded.
  • Reserving strategy: reserve only for gas, not the whole balance (ReserveAtMost | ReserveAddOriginalBalance) right before each send() so payouts/refunds remain spendable.
  • Payouts & refunds: Winner prize = 2 × stake − fee (fee = feeBps × pot / 10000). Timeout/cancel → refund stake to each party.
  • get_config() view: returns oraclePubKey (slice), feeBps, feeReceiver, graceSecs.
  • Extensive Jest tests (create/join, payouts, DC/forfeit, global cancel, nonce, cushion, skew guard). All tests pass.

4.2 PingTongTournament.tact (Roadmap)

  • Brackets for 32 / 64 players, single‑elimination.
  • Prize escrow per bracket; per‑match oracle attestations; progression rules enforced on‑chain.

5) Fees & Costs (Transparent)

  • Protocol fee: feeBps (basis points) taken on payout from the pot (2 × stake) and sent to feeReceiver.
  • Example: buy‑in 1 TON each → pot 2 TON; feeBps=50 (0.5%) → fee = 0.01 TON; winner gets 1.99 TON.
  • Deposit cushion: client attaches ≈ 0.015–0.02 TON extra at create/join to cover gas; surplus auto‑refunded.
  • Network fees: users pay their own TON gas via TON Connect; the contract never withholds gas beyond protocol fee.
  • Power‑Ups: tiny burn fee per use (includes gas); unused items and unspent gas top‑up refunded at the end.

Current feeBps and feeReceiver are published in‑app and via get_config() so anyone can verify the economics on‑chain.

6) Security & Fairness

  • Domain‑tagged, oracle‑signed results: invalid signatures are rejected.
  • Strict nonce monotonicity per matchId prevents replay.
  • Disconnect protection: skew guard + grace window; forfeit when applicable.
  • No reversal after winner: cancel/refund paths are locked to prevent disputes.
  • Unit tests cover replay, DC, refunds, payouts, insufficient deposit, wrong signer, contract binding, surplus safety, and fee math.
  • Resilience: WS reconnect, snapshot on subscribe, debounced broadcasts.

7) Compliance

  • Non‑custodial: all value transfers are settled by the smart contract; the interface never takes custody.
  • RunOnFlux hosting: the web interface is deployed on the RunOnFlux decentralized cloud. PingTONg is an interface provider; it is not a broker, dealer, or custodian. Deployment and availability are subject to RunOnFlux Terms of Service.
  • Restricted territories (Flux ToS): access to the hosted interface is not offered to persons or entities in the following locations: Crimea (Ukraine), Donetsk People’s Republic (DNR, Ukraine), Luhansk People’s Republic (LNR, Ukraine), Cuba, Iran, North Korea, Syria, or any other country/region subject to a United States embargo or similar sanctions. VPN or similar circumvention is prohibited.
  • Restricted territories (PingTONg.fun): users located in the following jurisdictions are not permitted to access staking features or real‑money gameplay: Algeria, Bangladesh, China, Cuba, Crimea (Ukraine), Donetsk (Ukraine), Egypt, Iran, Iraq, Kherson (Ukraine), Kuwait, Luhansk (Ukraine), Morocco, Myanmar, Nepal, North Korea, Russia, Syria, United Kingdom, United States, Zaporizhzhia (Ukraine). Access to Solo remains available. This list may be updated; see the Terms for the authoritative version.
  • Operational controls (Flux): Flux may monitor applications for security and performance, rate‑limit excessive bandwidth usage, and apply critical configuration updates post‑deployment. Apps that perform mining or private‑network scanning are prohibited. The hosted interface may be throttled or suspended to comply with laws or Flux policies.
  • No financial intermediation: the server can’t move funds; it only signs match results (oracle attestations).
  • Geo‑controls (UI): staking is disabled in restricted regions (see Terms). Solo remains available. The definitive list is maintained in the Terms and may evolve.
  • Age & local laws: 18+ only. Users must comply with their local laws and any applicable sanctions regimes.
  • Transparency: configuration keys (oraclePubKey, feeBps, feeReceiver, graceSecs) are publicly readable via get_config().

Note: This litepaper is informational and does not modify or supersede the Terms of Use or the RunOnFlux Terms of Service. In case of conflict, those documents control.

8) Roadmap

2025 Q3–Q4

  • ✅ Solo mode parity (series, countdown, physics), Winamax‑style lobby.
  • ✅ WS multiplex (lobby + game), ready→in_game auto‑route.
  • ✅ Escrow hardening (cushion, skew guard, reserves, nonce tests).
  • ⛳ Multiplayer launch on TON mainnet (buy‑ins, BO1/BO3/BO5).

2026 Q1

  • Airdrop: Power‑Ups for Beta testers (Arcade Mode).
  • Power‑Ups SFT contract (mint/burn, unused refunds + gas top‑ups).
  • Quest Mode (Solo): level progression to earn cosmetic/low‑impact Power‑Ups.

2026 Q2

  • In‑app marketplace for Power‑Ups; continued balancing.
  • Tournaments (32/64 brackets) with on‑chain prize escrow.

2026 Q3–Q4

  • Seasonal ladders, anti‑smurfing heuristics, deeper analytics.
  • Optional DAO discussion to govern feeBps/feeReceiver (community‑driven).
  • Third‑party tournament APIs for organizers.

Roadmap is indicative and may shift based on security, audits, and community feedback.

9) Token & Treasury

  • No native token at launch.
  • All economics are in TON.
  • feeBps is on‑chain and adjustable by governance/owner (disclosed via get_config() + UI).
  • If a governance token is proposed later, it will be documented separately with clear distribution and utility.

10) Governance & Operations

  • Configuration keys (oraclePubKey, feeBps, feeReceiver, graceSecs) are transparent via get_config().
  • Operational logs: backend audit logs for oracle events and match transitions.
  • Upgradability: new features ship as new contract versions; legacy matches remain pinned (no surprise upgrades).
  • Community input: balance changes (e.g., Power‑Ups) are piloted in Arcade Mode before ranked deployment.

11) Risks & Disclaimers

  • Smart‑contract risk: bugs can cause loss of funds; we mitigate via tests/audits but cannot eliminate risk.
  • Oracle risk: downtime can delay settlements; fallbacks (DC/cancel) exist.
  • Regulatory risk: rules differ by jurisdiction; access may be geo‑gated; see Terms.
  • Market risk: TON price volatility; players must understand stake value.

12) Glossary

  • BO1/BO3/BO5: Best‑of formats (first to N sets), with set target points 11/7/5 respectively.
  • Oracle: Service that attests match results via signature; cannot move funds.
  • feeBps: Protocol fee in basis points (1 bps = 0.01%).
  • Deposit cushion: Extra TON attached to cover gas; surplus auto‑refunded.
  • SFT: Semi‑Fungible Token; here used for one‑shot Power‑Ups that burn on use.

13) Contact

Questions, support, or disclosures: support@pingtong.fun