Skip to content

Latest commit

 

History

History
66 lines (47 loc) · 4.25 KB

README.md

File metadata and controls

66 lines (47 loc) · 4.25 KB

  • This project is a proof of concept for a Web3 dApp built in Unity that interacts with smart contracts.
  • The dApp takes the form of a first person shooter, built on top of Unity's FPS Microgame that uses an in-game currency in the form of an ERC20 token, to allow the user to purchase in-game items in the form of ERC1155 tokens.
  • The game uses the ChainSafe Gaming SDK to facilitate its connection to the blockchain to read and write to the relevant smart contracts, which have been deployed to the Polygon Mumbai testnet.
  • NOTE: This project is a proof of concept, and not intended to represent a polished Web3 game. The contracts used in this application have not been audited, and I take no responsiblity for issues which may arise out of their extended use.

Web3 In-Game Items

The items within the game that are represented by the ERC1155s are:

  • The Vitality Items; including Health, Armour, and Shields
  • The additional Weapons; Disc Launcher, Shotgun, and Sniper
  • The various Upgrades for each weapon.

These items can be exchanged for accrued METR tokens (the ERC20), within the Loadout menu. The following screenshots illustrate how these items and menus are displayed within the game. (All mockups were made with Figma.)

Loadout Power Ups

Loadout Weapons

Blaster Upgrade Tree

Disc Launcher Upgrade Tree

Shotgun Upgrade Tree

Sniper Upgrade Tree

Jetpack Upgrade Tree

Deployed Contracts (Mumbai Polyscan)

Test Coverage

Example In-Game Contract Interactions

Connecting MetaMask wallet

MetaRangers_ConnectingWallet.mov

Claiming METR

Purchasing a Game Item