playmint / playerchain-demo

A Playerchains proof of concept demo game. P2P, responsive, multiplayer without any third parties, via DAG consensus.
7 stars 0 forks source link

  playerchainBanner_2

[!NOTE]
Playerchains are a peer-to-peer network architecture for running responsive, multiplayer games that are decentralised and verifiable.

We’ve built a demo game you can play!

Download and start a playerchain with your friends

Download button


[!TIP]
By playing the game together, you and your friends become nodes on your own playerchain.


Why Playerchains?

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


How do Playerchains work?

: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


Contributors

Todo

To build and run from source

[!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 ...


References & Inspiration