![]()
Hey everyone,
I wanted to share something I have been working on lately. A while back, I came across Var Chess and liked the idea of bringing a proper chess experience into FiveM. I also wanted a version that server owners and developers could fully inspect, learn from, modify, and improve.
So I decided to build my own version from scratch: Peak Chess, completely free and 100% open source under the MIT license.
You can find the project here: https://github.com/Peak-Studios/peak-chess
Full hosted documentation is available at https://peakrp.net/docs/peak-chess
What is Peak Chess?
Peak Chess is an in-world 3D chess resource for FiveM. Players can sit at physical chess tables, play against another player or a configurable AI opponent, spectate active games, and optionally wager money through a supported framework integration.
The resource includes the full Lua source, chess engine, integrations, configuration, and React/Vite NUI. Nothing is escrow locked.

Key features
Complete Chess Rules: Legal move validation, check, checkmate, stalemate, castling, en passant, promotion, resignation, and draw handling.
PvP and AI: Challenge another player or start an AI match with easy, medium, and hard profiles.
In-World Gameplay: Physical tables, chairs, pieces, seated animations, board cameras, sounds, and optional spotlights keep the match inside the game world.
Spectator Support: Watch an active game without taking a seat.
Optional Wagers: Server-validated bets, payouts, refunds, and an optional house cut when a supported money provider is available.
Standalone First: No framework, SQL database, target resource, or bridge is required for zero-wager chess.
Framework Support: Optional integrations for Peak Bridge, ESX, QBCore, and Qbox.
Interaction Support: Built-in draw text plus optional ox_target, qb-target, and var-interact support.
Modern NUI: A custom React/Vite lobby, active-match HUD, promotion picker, and result display.
Configurable: Table locations, models, seating, cameras, controls, AI levels, wagers, sounds, markers, spotlights, and locales are open for editing.
Developer Friendly: Client and server exports, browser-safe UI debug views, documented events, and readable source code.
Dependencies
- The
bzzz_chessprop pack for the table, board, chairs, pieces, and animations - A supported framework or Peak Bridge only if you want non-zero wagers
There is no required SQL dependency and no mandatory framework.
Installation
- Download the latest release from GitHub and place it in your resources as
peak-chess. - Install the
bzzz_chessprop pack. - Ensure the prop pack before Peak Chess:
ensure your_bzzz_chess_prop_pack
ensure peak-chess
- Configure your tables and integrations in
shared/sh.lua. - Restart your server and approach a chess table.
The repository includes a full installation guide, configuration reference, integration details, exports, troubleshooting steps, and the editable NUI source.
A work in progress
The resource is open source because I want it to be useful to the community and improve over time. If you are a developer and want to optimize something, add an integration, improve the AI, or contribute another locale, pull requests are always welcome.
I would love to hear your feedback and see how you use it on your servers.
Cheers,
Vein
GitHub: https://github.com/Peak-Studios/peak-chess
Docs: https://peakrp.net/docs/peak-chess
License: MIT
Price: Free
Source: 100% open source