The world's Slowest Arcade™.
Block, Paper, Scissors
Description:
A game of coordination or chaos based around the consensus mechanism of the FVM.
Objective:
- Lead the network to its longest winning streak OR achieve your longest personal combo To keep the winning streak going, you are always voting on the next move the network makes and you want it to beat the previous move (eg. If the previous move was Paper, you want the network to play Scissors)
- To keep your personal combo going, you always want to vote with the clear majority. (eg. if 100 accounts participate in a move, and the majority of them chose Paper, your combo continues if you also chose Paper, but ends if you chose Block or Scissors)
- Why would anybody vote against the network streak continuing? I guess we’ll find out. Maybe you want to draw a specific picture on the grid, and that picture can’t be drawn without a bunch of streaks ending or stalemates occuring.
- Filecoin Calibration testnet
- Polygon Mumbai testnet
- Ethereum Goerli testnet
To participate as a member of a team you will need to add that specific network to your wallet client and obtain some testnet tokens, which will enable you to place votes.
In terms of wallet clients, the path of least resistance will be to install the MetaMask browser extension if you plan to play on desktop. You can install it here.
- Filecoin Calibration testnet
- Ethereum Goerli testnet. Backup faucet(requires 0.0001 mainnet ETH balance) https://goerlifaucet.com/
- Polygon Mumbai
You can find the deployed version of Block Paper Scissors here
The app template is built with modern web technologies:
- SvelteKit (powered by Vite under the hood)
- TypeScript
- Tailwind
- DaisyUI
You can try out the template yourself here.
Ready? Let's go.
Prerequiste: ensure you are running Node 16.14 or greater, but not Node 17 (18 is fine though!).
-
Clone the repository:
git clone git@github.com:webnative-examples/slwrkd.git
-
Install the dependencies.
npm install
-
Start the local development server.
npm run dev
-
Navigate to
http://localhost:5178
in your web browser.