[!NOTE]
Playerchains are a peer-to-peer network architecture for running responsive, multiplayer games that are decentralised and verifiable.
[!TIP]
By playing the game together, you and your friends become nodes on your own playerchain.
Playerchains are a way for players to have full control of their own responsive, multiplayer games without relying on anyone or anything beyond their own gaming machine.
:balance_scale: We’re interested in moving control of your games away from corporations back to you!
:desktop_computer: For multiplayer games, that means removing the reliance on central servers.
:atom_symbol: Public blockchains are decentralised, but you still rely on external compute. This is expensive and constrains performance.
:white_check_mark: Playerchains remove reliance on anyone outside your game’s group.
Read more about why we think playerchains are cool here
:handshake: Games built on playerchain netcode allow the player's machines to connect and share inputs in realtime.
:ledger: Each player maintains their own history of actions and connected players combine this into a DAG.
:stopwatch: Cutting edge distributed systems protocols ensure everyone agrees on the inputs with fast finality.
:crystal_ball: Game logic runs in deterministic lockstep with prediction and rollback; an established netcode pattern.
:lock_with_ink_pen: Inputs are cryptographically signed, so gameplay and results are provable and allow for player attestations.
:chains: This unlocks interop with blockchains, leaderboard servers, community tools, or other playerchain games.
:crown: Each player maintains their own sovereign blockchain with an immutable history of their actions.
:atom_symbol: The individual chains combine to form an emergent blocklace.
:earth_africa: This global lattice, with a plurality of partial views, opens up new possibilities for connecting worlds.
:speech_balloon: If you have comments or feedback, we'd love to hear from you! Come speak to us in discord
You can take a closer look at the architecture here
[!WARNING] building ssc has platform specific dependencies that we don't document, but we hope to provide a prebuilt install package in future.
build ssc
from the playmint-next
branch of playmint/socket
macos:
rm -rf build; ./bin/clean.sh && NO_IOS=1 NO_ANDROID=1 VERBOSE=1 ./bin/install.sh
windows:
rm -force .\build\ ; .\bin\install.ps1 -verbose
then ...
pnpm i
to install stuffpnpm dev
to run dev build with hmr or npm start
to run dev build close to prodpnpm build
to build prod (but you will need an apple id setup - the github action does this for you