PFA: We didn't make a video because we were trying to make it functional. So instead, we are attaching a song :)

Inspiration

I have been a huge fan of collecting and trading Pokemon cards since my early teen years. Therefore, I and my team wanted to make a decentralized, safe, and cheat-proof trading market for trainers where they can trade cards with each other.

What it does

The Pokemon Trading Marketplace allows users to connect and trade cards with other individuals. It relieves the users of the burden of theft and fraudulent behavior due to its decentralized nature and stringent verification of ownership. Trainers can put cards up for trade on which all the other trainers can offer a card in return. Upon receiving all of the requests, the trainer can accept trade and push a transaction to the miner for verification and construction of the block.

How we built it

The code was written in python and had 3 main parts: client.py had the class and initialization of all the nodes or players entering the marketplace. The first player was the Master Player and distributed Pokemon Cards to each subsequent player entering the Pokemon Card Marketplace. This had functions such as pokemon card exchange and pokemon card gifts. Miner.py implemented 3 functions. It took the majority consensus of all members by getting blockchain records from each client class instance (player) and confirmed whether a player had a legitimate pokemon card.

Challenges we ran into

The only challenge we ran into was related to socket programming. We were trying to compress and encode our message to send it over the socket but we constantly ran into "Message to long issue". We thought of creating temporary files which would contain content and the filename would be communicated over the channel. Even through that approach, we ran into some tedious errors which we were unable to resolve due to a shortage of time.

Accomplishments that we're proud of

  1. Not sleeping for 29 hours
  2. Building a blockchain framework for digital item exchange

We build a pokemon card trading platform on blockchain that comes with all the nice properties of cryptographic functions, public/private key pairs, and a tamper proof record of all trade transactions. Moreover, our blockchain is decentralized which removes the power of central entity. We are also proud of the clean command line interface to interact with the trading system on top of the blockchain technology built.We believe this is a high impact trading system which ensures transparency, and the ownership of every precious pokemon card in the world can be determined.

What we learned

  1. To send long messages via Python Socket Programming, a TCP framework has to be implemented
  2. Blockchain usage other than cryptocurrency
  3. Impact of cryptocurrency on the economy

What's next for Pokemon Blockchain

After we are done making it functional, the next step would be bringing in cryptocurrency for trading instead of one-of-card trading. That would give more flexibility to trainers to get new cards.

Built With

  • ecdsa
  • hashlib
  • pickle
  • python
  • socket
  • threading
Share this project:

Updates