Skip to content
forked from SneakySensei/dewls

An arcade platform that allows players to raise stakes by betting on their skills across multi-chain, with all wagers handled securely on-chain.

Notifications You must be signed in to change notification settings

jagnani73/dewls

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ETHOnline

dewls by Bawarchis

Built with ❤️, delivered on ☕.

💡 Problem Statement

Traditional arcade gaming lacks a mechanism for players to bet across various chains on their own performance in a secure and transparent way, limiting the potential for true competitive play and financial engagement. Additionally, current systems lack the ability to verify wins and results in a provable, immutable manner, leading to trust issues in competitive scenarios.

🧠 Knowledge Primer

  1. 1V1 Games: Players can play live, turn-based 1v1 games with each other by wagering a certain amount.
  2. Tiers: Division of the playing class based on the wager amount each player has to stake. Every tier has its unique point weightage that is used for points calculation.
  3. Seasons: Dewls has weekly seasons starting on Monday midnight UTC and ends on Sunday midnight UTC. The leaderboard refreshes with every season.
  4. Reward Pool: Every game played by the players has a fixed percentage of the total amount wagered for the game in the tier that is added to the season's Reward Pool. At the end of each season, this reward pool is distributed amongst the top three players.
  5. Leaderboard: Players are assigned a rank that changes on the players win. At the end of each season, the seasons reward pool is distributed amongst the top three players of the said season.

💪 Challenges Faced (and WAGMI!)

  1. Working with WebSocket and Redis while ensuring atomic operations at high throughput.
  2. Making the multiplayer system highly secure by ensuring core game logic is handled server-side.
  3. Uploading bytecode to file service for HSCS (Hedera Smart Contract Service) was giving unknown and undocumented errors.

📺 Previews

Application Snapshots

Preview 1.1 Preview 1.2 Preview 1.3
Preview 1.4 Preview 1.5 Preview 1.6
Preview 1.7 Preview 1.8 Preview 1.8

Attestation and Explorer URLs

1.https://explorer.testnet.rootstock.io/address/0x79a24817ac317549a2d1e00109f0fa7424e45838

2.https://explorer-holesky.morphl2.io/address/0xfCC7234233082346398D2087f790C48677b8DdA6

3.https://hashscan.io/testnet/contract/0.0.4805992

4.https://testnet-scan.sign.global/schema/onchain_evm_11155111_0xa3

Designs

  1. https://www.figma.com/design/Tv1T1xkR3B3w6v0LKvO9pq/ETHOnline'24?node-id=36-1921&t=aBuY2YwXkXf6wIHz-1

💻 Tech Stack

  • NextJS
  • ReactJS
  • TypeScript
  • NodeJS
  • ExpressJS
  • Solidity
  • Supabase
  • Redis
  • Socket.IO Protocol
  • Hedera HCSC
  • Hedera HTS
  • XMTP Subscribe
  • Framer Motion

👷 Team Description

Our team has worked on various Web3 projects, including 'Servify' which won the 'Best Use of Push Notification' award at ETHIndia'23. Not only this, we won 'Best Use of Router Protocol' at Unfold'23 for our project 'LenDen' as well. Our team is highly proficient in a variety of technologies, i.e. solidity for smart contract development, backend development with ExpressJS and NodeJS, utilize Supabase for secure database solutions. On the front end, we leverage NextJS for efficient interfaces, and our use of TypeScript ensures clean, scalable code. This expertise enables us to build innovative, decentralized applications with efficiency and precision. This time, we aim to deepen our Web3 knowledge, connect with like-minded individuals focused on decentralizing the internet, and enhance our skillset while participating in this online hackathon!

📦 Inside the box

DEWLS features a robust system architecture to support these actions, along with a streamlined user flow within the web application. The following diagrams explain the same:

1. System Architecture Diagram

System Architecture

2. Flow Diagram

Flow Diagram

⏭️ What's next for DEWLS?

  • With its proof-of-win mechanism and the ability to wager on oneself, DEWLS could become an ideal platform for competitive esports. This could lead to partnerships with gaming organizations and sponsorship opportunities, as the platform could facilitate tournaments where players or teams bet on their own performance, creating higher stakes for professional gameplay.
  • With the multi-chain capability already part of the platform’s core, DEWLS can expand by integrating with more blockchains, creating a truly cross-chain gaming ecosystem. This will allow players from different blockchain networks to participate seamlessly, increasing the platform’s user base and liquidity.
  • DEWLS could collaborate with third-party developers to build a diverse library of arcade games that leverage the platform's betting and blockchain infrastructure. By providing incentives for developers to create games that align with DEWLS's vision, the platform could foster a larger ecosystem of blockchain-based arcade games, further driving user growth.

📜 License

dewl is available under the MIT license. See the LICENSE file for more info.

🤝 Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

💥 Contributors

Contributors

🚨 Forking this repo

Many people have contacted us asking if they can use this code for their own websites. The answer to that question is usually "yes", with attribution. There are some cases, such as using this code for a business or something that is greater than a personal project, that we may be less comfortable saying yes to. If in doubt, please don't hesitate to ask us.

We value keeping this site open source, but as you all know, plagiarism is bad. We spent a non-negligible amount of effort developing, designing, and trying to perfect this iteration of our website, and we are proud of it! All we ask is to not claim this effort as your own.

Refer to this handy Quora post if you're not sure what to do. Thanks!

About

An arcade platform that allows players to raise stakes by betting on their skills across multi-chain, with all wagers handled securely on-chain.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 96.4%
  • Solidity 2.1%
  • Other 1.5%