Practical overview
When it fits
Use it when a Unity game needs wallet-based authentication or contract read/write flows for existing blockchain contracts.
Who it is for
- Unity developers adding wallet connectivity to a game.
- Game teams that already have deployed smart contracts and want to read contract data or submit NFT updates.
Documented uses
- Connect a player’s MetaMask wallet to a game account through WalletConnect.
- Sign messages and check signatures.
- Read blockchain data from deployed contracts.
- Submit signed contract transactions, including NFT updates.
Requirements & limits
- Contracts must already be deployed, and their addresses and ABIs are required.
- Wallet connection is handled through WalletConnect, with player approval and a session key saved in PlayerPrefs.
- Contract reads through GetData do not require mining; writes through CallMethod use gas.
- The README lists UniTask and Newtonsoft.Json as dependencies.
- The documented Git URL package installation requires Unity versions supporting path queries: 2019.3.4f1 or later, or 2020.1a21 or later.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Connect a Unity game account to MetaMask
Establish the documented WalletConnect session and create an SDK instance for a Unity project.
Before you start
- A Unity project with the SDK installed.
- A MetaMask wallet and WalletConnect.
- An Ethereum node URL for the SDK instance.
Steps
Start a wallet connection through the QRCodeImage component or WalletConnect.Instance.OpenMobileWallet.
Have the player accept the wallet connection request; the session key is then saved in PlayerPrefs.
After connection, create the SDK instance with MirageSDKWrapper.GetMirageSDKInstance and the Ethereum node URL.
Expected outcome
The game can associate the connected wallet address with the player account and use a MirageSDKWrapper instance.
Guide limitations
- The described connection flow requires WalletConnect and a player acceptance prompt.
- This connection flow does not itself deploy contracts or implement game-specific account linking.
Read contract data and submit an NFT update
Use the documented contract methods to retrieve data and write an update to a deployed NFT contract.
Before you start
- A deployed smart contract, its address and ABI.
- A connected wallet for signing transactions.
- A Unity project with the SDK installed.
Steps
Use GetData with the contract address and ABI to read contract information.
Prepare the parameters for the intended update.
Call the contract's write method with CallMethod; the transaction requires signing through MetaMask.
Expected outcome
A read result can be returned from the contract, while a submitted write can produce a transaction receipt.
Guide limitations
- Read calls do not require mining; write calls use gas.
- The example assumes the contract and update method already exist.
Compare options for Wallet connections
These projects document a common task and share a project role. This is a source-based comparison, not an execution benchmark or a guarantee of interchangeability.
| Project | Documented purpose | Platform | Access and requirements |
|---|---|---|---|
| Game Unity SDK | Connect a player’s MetaMask wallet to a game account through WalletConnect. | Mobile | |
| Sample Project Gradle | Connect a Java web3j application to an Ethereum node. | CLI | |
| Eth Nextjs Boilerplate | Create a dApp frontend with wallet connection and an example transaction flow. | CLI, Web |
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 18 October 2026
- Original website title
- Ankr-network/game-unity-sdk · Official homepage title · retained in its source language

