by 0x07356b0edf9b934330f41952b09d076c3810c608 (Bet)
Should the following $43,000 grant in the In-World Content category be approved?
Abstract
Let’s build some Card games to increase user retention!
Grant size
43,000 USD in DAI
Project duration
8 months
Beneficiary address
0x07356b0edf9b934330f41952b09d076c3810c608
Email address
Description
Why?
People have great builds out there!
But sometimes maintaining the users attention can be difficult.
Cards is something that you can do at any time!
While listening to Music, Looking at art or mining meteorites.
How Will It Work?
- A User clicks an object or image in-game.
- Which loads the games lobby.
- Choose your game and choose single/multiplayer.
- Single player can add bots to play against.
- Multiplayer will load the active tables where the user can spectate or join.
- Play game
Who?
I built the SNAP game.
- GITHUB: SNAP on GitHub
- DCL: Play in Decentraland
It may seem like a simple game but it actually took a lot of time to build.
Putting one card on top of the other, seems like a simple task. XD.
But when you include:
- Card designs
- In-game UI
- Game mechanics
- WSS messaging to the server
- Sorting of data on the server
- Server-side game rules
- Multiplayer activity
- Adding/removing bots
- And more…
It became quite complex but I learnt a lot from this experience.
Unfortunately SNAP was built heavily in SDK6 and now SDK7 has a react based UI system so SNAP will need to be completely rebuilt from scratch.
So let’s rebuild better!
Things I Learnt from SNAP:
- Most of the logic, cards and players can be easily applied to different card games.
So this time I want to build with multiple game choices in mind to easily add more in the future [POKER] [CHEAT] [CUSTOM] [RUMMY] [SNAP] [WAR]. - Cards is more fun with more players! So this time I will focus on synchronising games across different LANDs. Making sure that if one build changes their UI/code then it won’t affect the others.
- LAND owners don’t really want to run their own server and pay $12 a month. So I want to make sure the wss endpoints are bulletproof and anyone can connect!
- Storage. I will try to minimize in-game storage. It shouldn’t take more than a few MB to add to your existing build.
- Who’s missing? This time we need hosts that can create and control when a game starts! To make sure that everyone is in the game!
- Competition is good. Sometimes more than 8 people wanted to play at the same time. So now we will split the users onto different tables and create a multi-table tournament. This could allow for large competitions of 1,000+ participants and allow for big prizes!
- Points? Some card games are points based, we’ll add that. But I want to stress that we are not building a gambling platform!
- Leaderboard. Because why not…
- Statistics. To show how popular we are!
How to Deploy?
LAND owners can deploy a build to their LAND by:
- Uploading a template via Decentraland Builder Pools. [Good for non coders]
- Cloning from GitHub and customizing. [Good for coders]
Roadmap and milestones
What games will I build first?
First game I want to build is a kind of property game based around decentraland. Where you need to collect MANA cards and LAND cards but there are a bunch of action cards to make life difficult like
- “You win a hackathon! Take a LAND card from any opponent”
- “You didn’t back up your private key!? You lose 10 MANA.”
- “Great event! Everyone buys your NFT for 5 MANA!”.
- Players can charge their opponents for rent and the winner is the person who reaches 100 LAND first.
- Been dreaming of this for a while… haha
- [A complicated game with lots of rules will be a good basis to test the system.]
Then I’ll add SNAP again.
I will add as many games as possible until the money runs out.
If you want to see a specific card game then let me know.
(I believe this will become a successful part of the DCL brand and could potentially be added to the UI globally)
- [Month 1-3]:
Build the server-side infrastructure that can handle everything - [Month 3-5]:
Build the interface in decentraland. - [Month 5-6]:
Deploy to (13, -1)/Test/Opensource - [Month 6-8]:
Add more games!