Skip to content

Rohitkk432/Hero-World

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 

Repository files navigation

⚔️ Hero World with no Villian

  • Developing a Dapp using Truffle-Solidity , with React-Typescript-ChakraUI frontend.
  • Inspired from Cryptozombies , Cryptokitties. cleaned

Deployed at - https://hero-world-web3.netlify.app/

About

  • A Fantast World where all species coexist and with no Evil.
  • You can Own Heroes, Battle with Other Heroes, Trade Heroes.
  • Summon heroes using Summoning Cards
  • Buy summoning cards , Level up your heroes.

Installation

$ git clone https://github.com/Rohitkk432/Hero-World-with-no-Villian.git

$ cd Hero-World-with-no-Villian

Backend is in Solidity - Truffle

$ cd backend

# install dependancies/packages.
$ npm install

## testing with truffle test scripts (can find in test folder).
@notice- comment out development & Sepolia inside network in "truffle-config.js" 
@notice- remove the x which ignores the tests. (xit => it) (xcontext => context)
$ truffle test

## testing using ganache
$ npm install -g ganache-cli
(in one terminal)
$ ganache-cli
(in 2nd terminal)
$ truffle migrate

## deploying with your own account
@notice- add your mnemonic and infura access token
$ truffle migrate --network Sepolia

Frontend is in React - Typescript - ChakraUi

$ cd frontend

@notice if you want to change contract address change it in "./src/contracts/functions.ts"

## running frontend locally
$ npm run start

Concept

  • As a learning opportunity most of the code is taken from cryptozombies and built on it
  • When one opens the website they must need metamask install
  • Then one can connect to Sepolia network and click on Connect on landing page.
  • And create the first hero.
  • The hero model consists of dna - which break downs to an ADJECTIVE and GREEK-NAME on frontend, species and rarity which maps to its value on frontend.
  • In Arena can fight with other heroes on the game network but hero also has a cooldown period after each fight.
  • If you win a fight you get a "summoning card" as a reward.
  • After summoning card reaches its readyTime you can use it to summon a new hero on your team.
  • You can also see all the heroes from All Heroes tab.
  • You can transfer/approve heroes to other players using their address, and also tak eownership of other's heroes if you are approved by them.
  • you can also pay ether to "level up" a hero , and buy summoning cards

Snapshots

Landing Page

image

First Hero

image

All Heroes Page

image

Arena Page

image

Transfer Page

image

Take Ownership Page

image

My Heroes Page

image

Hero Details Page

image

Contribution

Made with ☕ and ❤️ by Rohit