Tavern Card Trader - TCG

Cool TCG on chain mini app

  • 0 Raised
  • 170 Views
  • 0 Judges

Categories

  • Base
  • XMTP
  • 💸 Finance [MAIN TRACK]

Description

Step into a medieval world of strategy, trading, and epic battles... all inside your Discord server! Collect and open packs of seasonal-available themed cards, trade with friends, and challenge them in thrilling duels. ⚔

Every card you open is minted on the blockchain, making your collection truly yours. Tavern TCG also comes with a /collection command, where you can see your cards collection, crafted for flexing in your server.

Build your deck, prove your skills, and dominate the Tavern! 🏰


PROJECT NAME: Tavern Card Trader - TCG

DESCRIPTION: A fun trading card game, with On Chain support, fully integrated into a discord bot

TELEGRAM USER NAMEs: @P7ngu, @VRNNNNN

REPOSITORY WITH THE PROJECT'S CODE: github.com/P7ngu/ETHRomeTCG

VIDEO DEMO

Pack opening + battle + xmtp demo: https://www.loom.com/share/970d73b3c04c4d1a9bb6bb56aa54af70?sid=d4c3bd66-a1ed-44a8-b72f-1b28eab8b596 

Trade demo: https://www.loom.com/share/4a5586813cb0445dac8319ad268cc7d0?sid=9d848216-8b90-4ea2-a40e-987e5e5b8bd3



Website URLs of your deployed application:

Base sepolia contract address

0xf7f740025161ff804f6706F094687756a49f2b42


Why did we build it?

Main Track: Finance: We just love trading cards. We used a ERC1155 token, the cards are available only during the current season. If you don't open packs, you will lose the chance to get those seasonal cards, forever. FOMO runs the economy.

BASE. Miniapp/Games: What's more daily than Discord for gamers? This is why we built this onchain simple mini game available wherever you want, private discord, community discord, friends chat, you decide. Your words spoke to us and we decided to go with this social-first game, where you can compete and collect with your friends. Friend-to-friend competition is our main goal, who will complete the collection?
And what if I told you that we also support trades and battles and we have a cool Leaderboard? Can you still be the best in the game?

XMTP messages: Using XMTP messages when you have events like trades accepted, and when you pull a high rarity card. This is what makes a difference.


Features and commands:

# 🎴 Crypto Cards Discord Bot


A feature-rich **Discord bot** for managing collectible NFT-style cards, wallet linking, trading, and battles — all integrated with on-chain (EVM) and XMTP features.


---


## 🚀 Features


### 🃏 **Collectible System**

- Open virtual card packs with `/pack`

- View your collection with `/collection`

- Optional image gallery view (`gallery: true`)

- Track and display ownership stats


### 🏆 **Leaderboard**

- Global ranking of top collectors

- Based on total collection size or rarity


### 💼 **Wallet Integration**

- Link your Ethereum (EVM) wallet with `/linkwallet`

- Mint cards as ERC-1155 NFTs with `/mint`

- Send wallet-based DMs using XMTP with `/xmtp_ping`

- Save your XMTP inbox ID for development via `/setinboxid`


### 🔁 **Trading System**

- Peer-to-peer card trading:

  - Offer, accept, and cancel trades

  - Autocomplete for card IDs

  - View paginated trade lists

- Fully command-based, no UI dependency


### ⚔️ **Battle System**

- Challenge other users to battles using `/battle_challenge`

- Simple and strategic gameplay with:

  - Moves: `attack`, `defend`, `special`

- Accept or decline challenges

- Check current battle status anytime


### 🧠 **Utility Commands**

- `/ping` — latency test

- `/leaderboard` — shows top collectors

- Developer tools: `/setinboxid`, `/xmtp_ping`


---


## ⚙️ Commands Overview


### 🔹 General

| Command | Description |

|----------|--------------|

| `/ping` | Replies with "pong!" — latency test. |

| `/pack` | Opens a card pack. |

| `/collection [gallery]` | Shows your collection (optional image gallery). |

| `/leaderboard` | Displays the top collectors. |


---


### 💼 Wallet & XMTP

| Command | Description |

|----------|--------------|

| `/linkwallet address:<0x...>` | Link your EVM wallet address. |

| `/setinboxid inboxid:` | Save your XMTP inbox ID (for DM testing). |

| `/xmtp_ping [inboxid:]` | Send an XMTP DM to your linked wallet (optional inbox override). |


---


### 🪙 Minting

| Command | Description |

|----------|--------------|

| `/mint [ids:] [qtys:]` | Mint an ERC-1155 receipt for your last opened pack.
Example: `/mint ids:1,2,3 qtys:1,1,2` |


---


### 🔁 Trading

| Command | Description |

|----------|--------------|

| `/trade_offer user:<@user> give_card: give_qty: want_card: want_qty:` | Offer a card-for-card trade. |

| `/trade_list [page:]` | List active trades (sent/received). |

| `/trade_accept id:` | Accept a pending trade. |

| `/trade_cancel id:` | Cancel one of your trades. |


---


### ⚔️ Battles

| Command | Description |

|----------|--------------|

| `/battle_challenge user:<@user>` | Challenge another user to a battle. |

| `/battle_accept id:` | Accept a pending battle. |

| `/battle_decline id:` | Decline a pending battle. |

| `/battle_move id: move:` | Make a move in a battle. |

| `/battle_status id:` | View the current status of a battle. |


---





Attachments