The purpose of this thread is to outline a design for a trading card game that is hosted by Peercoin. To maintain decentralization, we can use a PeerAssets protocol with a proof-of-burn issuance model whereby each card ‘unit’ requires burning 1 Peercoin to create.
We will say that a complete ‘deck’ is represented by an address that holds PeerAsset cards. We could have 0 digits and have each card be represented by an integer, but I want to think a little outside the box here. We cannot play this game normally, with many turns where cards are drawn, because we really want to keep txn fees as low as possible. So a deck need not actually contain integer cards. Instead, we could require a total deck size of unitary ‘1’ and allow additions of fractional points to accumulate to unitary. For example, your full deck could consist of 0.15 ppc, 0.6 btc, and 0.25 eth. Therefore, every deck costs ~1 ppc to create.
You now have an address with cryptogame PeerAssets that sum to 1. To initiate a game, use this address to send a txn to another decked out address that contains a call-to-arms in some way. The receiving address will then submit a duel acceptance transaction with 0 output. The block that this is confirmed in will act as an impatial judge by providing a random number seed through the block hash. The moment the transaction is submitted, the game is over and all that’s left is to tally the points.
You could also have the two parties submit their txns with a corresponding bet to a trusted third party that will then send the winnings to the winner. While this removes some decentralization, the trusted party can be chosen by the two participants to be basically anyone who can be trusted to tally the total and send the award to the winner.
The points tally can be extremely general and new cards can be added. Let’s assume an address has X Bitcoin, Y Peercoin, and Z Ethereum. The score tally can be any function f(x, y, z, block hash). As a simple first pass we could impose different separation of variable schemes like f(x,hash)+g(y,hash)+h(z,hash); but really any formula can be used. This can result in different cryptos having different algorithmic ‘powers’, such as ripple being a total multiplier, or tether adds a static value, or Peercoin changes the score exponentially. Really anything goes, the trick is to find a good way of balancing the different cards. This can be done via a normalization scheme (such as the integral of the function over all hash values must equal 1). It could potentially get quite complicated an nuanced.
Rules and card spawning will need to go hand in hand. However, the general idea would be to impose rarity on cards by limiting the cards to, say, one unit per 10,000 blocks. This has some real implications for the market that might pop up around these cards, as well as how to compose your deck. Maybe you’re stuck with an all ‘waves’ deck until other other cards become available. You would need to burn your coin in advance in order to wait in line for the rare cards, of course.
There can be other layers built on top, including graphics and guis. Companies could pop up that support the gambling aspect. Competitions could be run. There are limitless avenues to go with this. I think it’s worth talking about anyway, because it really showcases some of the possibilities of crypto.