Presentation video

Demonstration video

Website

Inspiration

I've been a chess player for quite some time now, and on several occasions I have wanted to stake and wager against my friends in chess. After looking for a while, I found there aren't really any platforms that provide a service, to allow you to wager against your friends in chess. That left me scratching my head; In my opinion, this functionality is essential for competitive events and tournaments! After further research, I found there's not many services for players, entities, and companies to coordinate, share, and create their own esports events!

Wow! For many players like myself, it's difficult to create their own e-sporting events without adequate large-scale intermediaries, funding, trust, and many other inconvenient ordeals; whether or not they're casual or competitive! Some players may want to have a wagered experience but have it casual; whether it be chess, 8 ball, golf, etc. Some other players want to have truly immersive, competitive experience, and our goal is to bridge both of these demands to TRON and it's ecosystem.

GameFi is a unique and interesting paradigm that has huge potential, but I believe there's still a significant obstacle to overcome: Attracting and onboarding new users from outside the Web3 sphere. Without direct initiative to provide value to outside communities for GameFi, whether they be providing solutions or creating a new game that they enjoy, GameFi won't grow to the full potential it can!

My goal with trxmini.games to scale such a platform that will face and SOLVE all of these important challenges mentioned above that we as an ecosystem face - provide an interoperable GameFi protocol, that allows players to wager their games they love against their friends (or opponents!) on their favorite games, and provide an essential service to potential users and players outside of Web3, introducing and bringing new communities into TRON, creating a much more vibrant, and expansive ecosystem!

I am proud and extremely passionate to present you trxmini.games!

What it does

Users will be able to play our catalog of different games with staking/wagering available! This will allow them to create their own competitive or esports events! - Currently, I have finished chess and now am working on implementing a version of 8ball, and Drawades, our implementation of Skribbl.io, which will be available in multiplayer, and 8 ball.

Let's say Bob wants to create a staked or wagered game of Chess. They will choose the selected amount of TRX they wish to stake, and then sign a transaction to send their funds to our escrow contract via TronLink.

Now, Bob has told Alice about his game and she has decided to join, they will also sign a transaction with the same amount and join their game.

After 20 minutes, Alice has won the game by Checkmate! Alice can withdraw the entire wagered amount of the game, and has a win on their address account. She can now play another game if she likes.

Soon as possible, I must emphasize this will be available existing casual, esports, and miscellaneous games, such as Rocket League, Minecraft, Counter Strike, Fortnite; millions of players globally play these games everyday, and we want to tap into this market with your help!

How we built it

I've created the MVP with a chess implementation that I've created here. I then implemented our protocol into the game! Our GitHub link for trxmini.games can be found here: http://github.com/nickmura/trxmini.games An organizational github account will be available soon for trxmini.games!

We use Redis, to store game state persistently, and the client fetches the key if the player is ever to disconnect/reconnect from the socket.

I also created a postgres relational database for personalization of users - so users can get domain usernames (e.g nickmura.trx, bobby.trx). Users in the near future will have additional features and economic systems in place - such as a leveling system, badges and more!

After creating a basic draft of the game, I decided to work on the Solidity contract infrastructure deployed on TRON currently.

https://shasta.tronscan.org/#/contract/TMGBGionnPs1TFRHxNrZRiGneZaDi6zkBh https://shasta.tronscan.org/#/contract/TQyY41mqbHVWWHWt5Zq1pPL5rYd7HgM2kE/

I then implemented our game and protocol into our main site, at http://trxmini.games, and have been working on creating new features and games since!

I have a link to a presentation in video format of what trxmini.games provides! (Not the demonstration, it will be linked further)

** Currently, I have been working on implementing game logic for my next game, 8 Ball, and soon, Drawades, which will be based off a open source rendition of scribbl.io. I will have to implement the game in Svelte and our GameFi protocol.**

Challenges we ran into

Securing design - I implemented and created a Figma design I was authorized to use with Svelte and Tailwind. It took longer than expected to get working, but it looks pretty good now! http://trxmini.games

Implementing smart contracts - Creating an escrow service contract specific to our games took some research. I have been a Solidity Developer for a year and went through various challenges with implementing solutions to the mechanisms that needed to be created. A significant percentage of the winnings will go towards auditing contracts and coming up with cryptographically secure business logic.

Securing database logic - personalization was a bit of a problem and I think in the near future I will focus my efforts implementing and optimizing the user end experience for optimization.

Implementing other games into the protocol - Unfortunately, there was some difficulty trouble implementing the other games into the protocol before the judging period effectively, and personally, aswell as professionally I deeply apologize. My priority is providing a quality, worthwhile experience for all our players, and I cannot provide a product that I am truly not proud to present! and I believe long term our project will be considered an outlier of success and quality in GameFi, when we offer our full catalog, and when we deploy the protocol on existing games. I will continue to showcase updates of my progress scaling these apps, aswell as new features as the judging and voting period continues here.

Getting the support and guidance from the community - Getting people as many people to be aware, and possibly use our platform will always be a priority. Expanding our project to as many eyes as possible is the key to our success.

Accomplishments that we're proud of

  • Created one of the best ideas for GameFi with the best potential for growth in the entire ecosystem

  • Developed a fully functioning chess game, with staking/wagering and personalized activity for our users

  • Ensured the platform has inherent intrinsic value

  • Developing multiple games and providing a full catalog of games in the near future.

  • Have created many strides in development of this project

  • Created an amazing MVP that has a high value proposition for the community and ecosystem

  • My TronDAO submission post has one of the most activity for a post for season 3 https://forum.trondao.org/t/trxmini-games-a-wagering-staking-multiplayer-arcade-games-platform/10155

  • Supported our fellow community and ecosystem

  • Gained the support of the fellow TRON community

What we learned

  • Have learned extensively of the development environment that TRON uses (Tronlink, Tronweb, how TRON processes the EVM, whitepaper)

  • Learned more extensively about the relationship between servers and clients, and improving game functionality from developing games

  • Learned about end user experience for a soon-to-be commercial project

  • Looking forward to a great ongoing experience in learning more backend infrastructure

  • How to develop a great product

– Learning about various potential business models that could be implemented.

  • How to scale a project effectively and fast as possible, with quality

  • Providing a high value proposition for the TRON community and ecosystem.

What's next for trxmini.games - A staking/wagering arcade games platform

In the coming weeks of the judging period, I will mainly be focusing my efforts on social media and community presence. I believe people participating in the project, and giving back feedback, whether it’s positive or negative, feedback is very important to the development and evolution of this project short or long term.

Once we win this hackathon, I will deploy the features I have created throughout the judging period, inquire about an audit, and deploy on mainnet! Security integrity and transparency of this project are essential, for the community acknowledging trxmini.games for what it is worth.

A governance system will be deployed to allow for the community to determine what the focus of our efforts should be in early Q1, in addition to the browser games mentioned. The governance system will have an various game economics in place - so users, teams and entities, can receive badges, levels, and exclusive cosmetics and benefits!

Long term development plans include the development and deployment of a desktop client and mobile client, which we hope will increase exposure and ease of access to the protocol for existing games, which will exponentially increase the number of new users and players coming into our platform!

From a desktop/mobile client, we will be able to gain and attract a much larger mass of players and daily users - providing greater exposure and value, for both for trxmini.games and TRON, allowing us to sponsor and coordinate eSports events funded via a community owned treasury. This is a difficult feat to accomplish, but we believe that, given enough initiative, time, and community participation, we can make this vision a reality. We're excited about the potential value such a protocol could provide to the TRON ecosystem!

I am extremely confident that this project will go the whole 9 yards, and I hope TRON, and the TRONDao community can be a key participant in contributing to the vision our platform is going to make a reality.

A list of more specific goals can be found below:

  • Deploy on BTTC testnet.

  • Optimize and release new features that we've developed over the course of the judging period

  • Provide exclusive badges for players who participated during the beta :)

  • Develop a crypto system in our contract and infrastructure, that ensures valid digital signatures for transactions can only be issued by the server, providing full confidence that a players funds are safe when they wish to play or wager a game!

  • Obtain an audit for our smart contract that handles the business logic of our protocol.

  • Deploy on main-net for both TRX AND BTTC, and provide support for several other tokens and currencies.

  • Expand/recruit to the team

  • Create a forum for our players to connect and discuss future events and further ways they can participate.

  • Provide a leveling system and badge system for players, aswell as stats, etc various game economics / features to make the experience more exciting, aswell as further personalization features for users profiles :slight_smile:

  • Increase and develop more games on our catalog, specifically creating real-time, multiplayer, stakable games for players in WebAssembly or JavaScript

  • Build our presence further on social media platforms

  • Release and deploy governance token. Release exclusive airdrop and features for contributors and participants of the beta.

  • Provide sustainable reward system for wagerers.

  • Create a custody management system for mobile integration.

  • Create a custody management system.

  • Implement interoperability and support of our protocol between existing casual, sandbox, and competitive games (e.g Counter Strike, Rocket League, Garry's Mod, Fortnite, Minecraft etc). This is the most important goal in our roadmap! This will expand the amount of new users within the TRON network and our platform to exponential new heights, giving it even more of a high value proposition. Deploying on multiple existing games will give us value and a community unlike any other GameFi project out there.

  • Create desktop/mobile client in Electron / React Native for our users above.

  • Collaborate, and coordinate tournaments and contests for our users via community owned and governed treasury.

  • Sponsor and coordinate tournaments with esports teams.

  • Become one of the most significant platforms in GameFi, representing TRON.

  • Provide exclusive features and rewards for our participants and community members :) (Announcements to be made when our community, and team expands further)

  • Lots more to announce!

Judges, and users, thank you so much for reading and supporting our project. It means a lot! Please comment if you have any questions or feedback of what could be done or what you think. Please help us create the vision we think is possible, with your support, we believe we can scale our project to heights unprecedented! <3

JUDGES, please consider viewing our TRONDao forum post/submission by clicking here, we will be consistently posting updates, new accomplishments, content, and newly made features for our platform during the judging period! Thank you!

Presentation video

Demonstration video

Built With

+ 5 more
Share this project:

Updates

posted an update

Version 0.1.3 has been released - Profile management system, notification system, added database column for amount wagered & more

  • Notification system has been made - you can now receive notifications for leveling up via wagering playing games, and receiving badges/tokens. Soon, there will be some UI improvements made to them

  • Created badge system - these will soon be SBT (sun bound tokens on-chain) and you can receive them by completing challenges on our network. Please let us know some ideas for badges!

  • Profile management system - The awaited profile system has been created! You and players can view your profile and see how many badges you own! Click your address at the top right and click your username. You will then be directed to your profile! You can view your badges you currently own, and click view details to see more information about the badges you own. Some of these badges will be temporarily available. http://trxmini.games/profile/nick.trx/

  • Soon, you will be able to customize your profiles and add descriptions, banners, and more badges/tokens you can earn, and a follower system will be in place. Currently, a random ETH "blockies" profile picture is added to your profile when you load in.

  • Added database column for amount wagered in TRX.

  • Fixed bugs.

  • Updated development board here

Excited to get the next update out as soon as possible.

Log in or sign up for Devpost to join the conversation.

posted an update

Version 0.1.27 - Added further xp, created notification database, added forfeit mechanism to chess game & fixed bugs

-Upped the amount of xp you get for playing a game and winning a game.

  • Created a notification system/database to notify players when they have been tipped, won a game, won a stake, leveled up, received a badge, etc. Needs to be implemented within UI. There is a notification button at the top navigation bar, but is yet to have functionality.

  • Created a forfeit/draw mechanism thanks to one of our supporters - Allows users to forfeit a chess match if their opponent has became idle. Typing “/forfeit” in the chat of an existing chess game, will set a timer for 5 minutes, and will allow you to collect your stake and leave the game, or if it’s wager-less, leave the game if there is no activity within that timeframe.


We are also been invited to speaking at a Twitter Spaces at 7 PM CET, with our good friends Turu Global and Fuzzy Ocean, fellow leaders of the ecosystem. Judges, I encourage you to come join the livestream, and interact with discussing the future of the TRON ecosystem!

https://twitter.com/trxmini/status/1600800399455571969

Log in or sign up for Devpost to join the conversation.

posted an update

Version has been released 0.1.26 - Leveling/XP system, 8ball rooms, adding UI, fixing bugs

  • Leveling system has been implemented - You can now receive levels and XP for playing 8 ball & chess games. You earn more if you win, and there’s no increase in XP wagerless/wagered for chess.

  • Soon enough, there will be new ways to earn XP, & at a specific level(s)/milestones you will be rewarded with badges, cosmetics, and perhaps even airdrops. Currently we are developing a profile system, and a & notification system so you can know when you have leveled up. The profile system will be available for anyone to find other players, check their stats, and will be available/interoperable with our future apps. More info on this on our development board.

  • Showcase 8 ball games being played on game lobbies. - We wanted to show users who are playing the 8 ball challenge, even if it’s single player. We created a couple endpoints, to create this mechanism. When you initiate a game, it will show on the game lobbies for 10 minutes. am working towards implementing multiplayer as soon as possible to get our next game, Drawades, available as soon as possible.

  • Changed game lobby numbering/indexing to game controller icon due to problems with side effects with the two endpoints fetching the rooms

  • optimized fetching authentication data on component mounting (a bit)

  • Fixed a few bugs related to chess moves and fetching chess data

  • fixed a bug that gets the ball stuck in rare exceptions in 8 ball

  • fixed or changed a few un-notable UI improvements

*We have also updated our trxmini.games Development Board. *

Log in or sign up for Devpost to join the conversation.

posted an update

0.1.22 has been released - Allow players with no usernames (just addresses) to create games on chess, updated home page roadmap and writing, fixed bugs

  • Allowed people solely with addresses to create participate in chess games. Prior, only players who created trx domain usernames could play games. Players still need to create a trx domain name to play the 8 ball challenge. Xp system has been implemented, so you can receive XP for playing Chess and 8ball, however UI implementations have not been implemented. We hope we can make the experience easier for judges.

  • We’ve updated our UI write up and fixed spelling mistakes (Admittedly, embarrassed to say!) and updated our roadmap accordingly.

  • Fixed bug where a player joins without an address renders ‘undefined’

  • Fixed a bug with the connect TronLink dialogue popping up due to a race condition

  • Added endpoints for XP system and algorithm for calculating levels. Soon to be updated.

Next update will be focused on creating level system/economy aswell as UI for players, so users can checkout other fellow users profiles, badges and more! This will soon be essential and vital for the experience of the players.

Log in or sign up for Devpost to join the conversation.

posted an update

0.1.20 has been released - Released 8Ball game, added tipping player contract/feature & more

  • Fixed bug that allows you to leave and join game unprompted within chess for wagerless games

  • Created Tip player UI and component(s) - Allows you to tip a fellow player with their username on our new contract on TRON. Next update will be optimizing the contract as it does take a large amount of energy/gas with the event, allowing players to enter an address instead, aswell as making queries during the input of the username to view existing users while entering.

  • Created 8ball game (in beta) - This will be the second installment of many various casual games on our platform. Currently, you can verse our AI on 8 Ball and receive a badge on our platform, which will entail you to future rewards and benefits for participating in the beta and development of our project This will be edited for other players to recognize your badge once we roll out the game economics such as leveling, achievements & other general badges, and profiles, so you can view other players accounts. This game will be multiplayer and stakable as soon as possible. 8 Ball is also available on mobile, however TRON integration is not supported yet currently on mobile, only on desktop. Play now!

  • Created endpoints for our servers - Allows us to make requests for the various database columns we have made for the 8ball game, aswell as the future features we will have such as leveling, and recongizing how active a player is. (e.x: /gamewon, /gameplayed, /hasplayed, etc)

  • Fixed various trivial bugs and optimizations not worth noting.

New updates/releases soon. Working hard on this to prepare to scale!

Log in or sign up for Devpost to join the conversation.