C

Cred Jack

Cred coins lying around? Come play Cred Jack and win SOL tokens while having fun.

The problem Cred Jack solves

A lot of users, including ourselves, do not find much use of their cred coins. If cred coins are not worth much then there is little incentive for users to pay up their credit card dues using Cred. With our app, Cred Jack, we want to make Cred coins worthy again (like in the early days of Cred) and sustainable for Cred.

Our app integrates with Cred APIs to authenticate an user. Once user is logged in, user can create a Solana account which gets linked to their Cred account and safely gets stored in our web wallet. Users can play Cred Jack if they have some Cred Coins in their account. Cred Jack is a simplified version of Black Jack. It allows user to make a bet from your Cred Coins Balance. Once user adds and places bet, that amount of cred coins are burnt. If user wins, they get SOL tokens to their account based on bet amount and trust score. We also parameterized winnings with trust score to incentivize user to build a better credit score over time. We use a formula of

round((bet_amount)*(trust_score/100))

.

Currently, the app uses devnet RPC url and the SOL tokens are airdropped into user's account. We are currently working on building a smart contract that handles the transaction of winnings from an escrow account to user's account. We think since Cred Coins are not transferrable and api provides just an option to just burn the coin and also there is no limited supply of Cred Coins, we as a third party have no incentives to give SOL tokens to users in exchange for them burning Cred Coins. It only makes sense if Cred Coins are transferrable (but no api is available for that). It somewhat makes sense for Cred to own our app, Cred Jack, as a first party and give SOL tokens to users in exchange for them burning their Cred Coins. Through this Cred will have incentizes of user retention, more transactions and more worth of Cred Coins (as it can earn users SOL tokens). Also from tokenomics POV, it would make more sense if Cred coins were in limited supply.

Challenges we ran into

  1. Handling the game logic was challenging, had to encounter and fix many bugs to finally provide a seamless user experience.
  2. Handling authentication and saving session was challenging, had to fix multiple bugs to make it finally working without any side-effects.
  3. We attempted to build our own smart contract to transfer SOL tokens to user's account but couldn't finish in time due to our limited experience with Rust, so we ended up doing Airdrop to user's account for the app to work.
  4. Airdropping SOL tokens to user's account was not straight forward, as multiple times airdrop would not transfer exact amount, sometimes balance would not result correct results as we only check for confirmed transactions. We added retrying mechanism and some delay in balance to mitigate these problems.
  5. No cred coins earn api, so couldn't refund user's cred coins in case of a Stand Off! (read: tie) in our game.

Discussion