
House of Cardians
A multiplayer card game for all played entirely within Farcaster Frames in the Warpcast feed, built on a proprietary, equitable rewards distribution protocol, Stack.
About
The problem it solves House of Cardians solves a few key problems associated with the overly speculative nature of some consumer crypto products on Farcaster. We believe that consumer crypto can be the beachhead to drive large scale blockchain adoption with the House of Cardians being an early prototype for the types of products that can spark this process. Breaking the Ponzi Crypto products can often disproportionately benefit those who “get in early” or deep pockets, leaving those without an asymmetrical information advantage or less capital in position to get dumped on. This does not bode well for new crypto users and in turn, broader adoption. By making the cost of entry nominal (~$1/card), while also creating a protocol that rewards users based on recent contribution to the game vs. purely past contribution, we have made a game that users of all financial backgrounds can participate in and that users can join at any point in the game’s lifecycle and enjoy. Below is an illustration of the trajectory of user rewards, with streaming rewards (built on Superfluid) decaying over time based on recency of participation in the game.  Games are not fun The “fun” behind consumer crypto products often comes from the speculative meta games related to investing, but the games themselves are not inherently fun. Speculating on a meme coin, placing a bet or trading a card may have “fun” contexts to them, but there is no real game within them. House of Cardians is a game with strategy and as proven by the >50% retention rate of users and qualitative user feedback, people who are participating are genuinely having fun. We believe that lightweight social, interactive games, such as House of Cardians are the answer to driving broad web3 user growth, and more specifically, mutliplayer games in frames being a novel use of Farcaster’s social graph that can drive stickiness for the network.
How it's made
Challenges we ran into While aiming for a game with simple rules and a smooth UX, we tackled three major challenges to safely operate our "Stack Protocol," an experimental mechanism for fair reward distribution and to reduce user burden. Fail-Safe Reward Distribution Architecture By using Superfluid, we achieved per-second reward distribution and periodic reward changes. Preventing inconsistencies in distribution due to system bugs was crucial. Transaction failures or chain halts could lead to over-distribution or under-distribution of rewards. We designed an architecture that generates a new smart wallet each time the reward amount is changed, ensuring only the necessary amount of tokens are distributed. Additionally, Superfluid's VestingScheduleContract provided a grace period for handling any failures, ensuring expected distribution. Ensuring Execution of Transactions Triggered Asynchronously Our game progression relies on executing transactions triggered by events emitted from previous transactions. To detect these events reliably and proceed to the next step, we used thirdweb Engine to facilitate smooth backend and blockchain integration. The game progresses through three transactions: the game maker sets a card, the challenger sets a card, and the game maker reveals the card, showing the results. Each transaction must be seamlessly triggered by the previous one, which we achieved using thirdweb Engine as middleware. Balancing Game Progress Reliability and Farcaster Bot UX We use Casts from a Bot account to communicate game creation and results to users. Fast-paced games can end in seconds, sometimes outpacing Farcaster's data synchronization. To prevent this, we designed the game's on-chain progress and the bot's automated Casts to be loosely coupled, ensuring the game’s progression is unaffected by these updates.