everscale-org / bounties

Want to help improve the Everscale ecosystem? Join bounties program. Collaborate with others in the community to solve problems and earn rewards.
The Unlicense
10 stars 6 forks source link

Everscale GameFi bounty #24

Closed qwadratic closed 1 year ago

qwadratic commented 2 years ago

Prize

1st Place - $5000 2nd Place - $4000 3rd Place - $3000

All prizes can be paid in native EVER tokens, as well as in WEVER (ERC20) on Binance, Polygon, or Ethereum.

Challenge Description

Everscale is an asynchronous blockchain. The development process for Everscale and its technical capabilities have a lot of differences from the common approach in EVM networks. This paradigm can be understood if you think about developers struggling to get into writing code for the multithreaded environment (async/await syntax, computation in a separate thread without blocking the main thread, etc).

Everscale smart contract development is based on the actor model. In simple words, each smart contract is a microservice that interacts with other microservices in an asynchronous way and can spawn other contracts. Of course, all these interactions and deployments are fully onchain.

Everscale has TIP3 (Fungible Token) and TIP4 (Non-Fungible Token) standards, which were developed with consideration of the asynchronous nature of the network and have important differences from their EVM analogs (ERC20 and ERC721).

Each NFT is a separate smart contract.

This allows NFT to be the owner of FT, have its own native balance, etc. Basically, the NFT collection may be extendable and each NFT may contain the logic of any complexity inside.

Onchain NFT metadata

We store the NFT metadata onchain. This allows changing properties of objects (characters/items/traits) onchain. Other contracts can read these properties, allowing you to move all game logic onchain.

NFT indexes

Indexing is substandard for NFT which provides an aligned approach to:

Ideas

For this challenge, we propose you implement GameFi logic using FT and NFT standards considering the unique possibilities which Everscale architecture provides. For example, you can take any existing GameFi mechanics from other projects or implement your own.

Onchain game

Implement all game mechanics onchain

Lobby

Implement players' profile and lobby smart contracts (frontend integration is optional, but we strongly encourage you to at least try)

ERC1155 implementation

We have standards similar to ERC20 and ERC721. But there is no ERC1155 analog yet. Propose this standard as well as a reference implementation, taking into account the Everscale concepts.

NFT as collateral

Propose some system where NFT could be locked as collateral in exchange for some value or other NFT, etc.

Grow the NFT

Propose a smart contract system and mechanics where the user can mutate her NFT in a gamified way.

Submission Requirements

A valid submission will include the source code via a GitHub repository linked to your Gitcoin submission, a recorded demo, and an article that explains how the application works. It is expected that most bounty challenges will be won by fully functioning submissions, however, in certain cases, where there is a higher degree of difficulty, projects and payouts will be assessed on progress made.

The project submission deadline is Nov 28th.

Judging Criteria

The following criteria will be used to assess projects:

Winner Announcement Date

December, the 7th, 2022

Resources

Join the Everscale Dev Community

Onboarding samples and stuff

Everscale general concepts

Solidity

Everscale Solidity compiler implementation is a bit different from the original EVM compiler.

FT

NFT

Reference implementation + samples:

Examples