Space Tokens Wallet

Space Tokens
5 min readDec 10, 2021

In this post I’ll be diving into the details behind how we built the Space Tokens Cardano Wallet and what it’s role is within the Space Tokens Metaverse.

Space Tokens Cardano Wallet

Wallet Development

Our Wallet Views and Wallet API are near complete. PlanetCore has built some pretty sweet wallet tech that leverages Yoroi’s open source backend. We have built an API layer built specifically for Space Tokens on top of Emurgo’s graphql-migration-backend. It has given us all the flexibility we need to create tailored queries for our Space Tokens Game Client.

Building a secure and useful blockchain wallet is no simple task so I’d like to outline a bit about how we built the Space Tokens Cardano Wallet.

Wallet Client

The game client runs in Unity3D a C# game engine with cross platform support. The wallet library used is CardanoSharp.Wallet which is a Cardano Cryptographic and Serialization library for .NET applications. This C# library has all the features needed to create a Cardano wallet via Mnemonics/gen private keys, and can sign transactions.

Wallet Server API

We have added 3 new micro-services to the Space Tokens Infrastructure stack. The first being a new public facing metadata blockchain service that will allow us to get NFT metadata quickly and efficiently. The other two services work together to provide all the other information related to Space Tokens Wallet history. Our Cardano nodes, DbSyncer, API, and these new services all work together to serve up the latest Cardano blockchain data to the app.

One Wallet Address

The Space Tokens Wallet Client uses a one address system to organize assets, similar to how Nami Wallet operates. Using one address makes it easier to track assets and simplifies signing operations. It’s also easier for new crypto users to understand blockchain wallet concepts when there is only one address to manage.

Wallet Features

1. Send ADA, QUID and Space Tokens Assets from your Wallet.

2. Receive any Cardano assets you want to your Wallet Address but we have opted to only show Space Tokens related Assets in the game. The reason being that it lets us focus on making Space Tokens Assets look their best without having to worry about how differently formatted assets will look. It also keeps the focus on the Space Tokens Metaverse and doesn’t confuse use cases when interacting with your assets. We may add external policies in the future but for now it will be just in house mints.

3. View all your Space Tokens Assets in all their glory from your own wallet.

4. See your transaction history back to the beginning of time.

One additional benefit of integrating the wallet into the game is that we can scaffold our transactions for each known user action before hand. This offers a seamless exploration experience without our users having to copy and paste payment addresses between wallets. All you have to do is confirm the transaction by entering your spending password in the confirm transaction prompt and your exploration missions will launch.

Security & Privacy

The wallet creation process asks you to enter a spending password and to write down your 24 word mnemonic. These are the keys to your wallet. We use your spending password to encrypt your generated private keys on your local device. Your encrypted keys never leave your device, so you are the sole owner of your Space Tokens wallet. This means it’s up to you to keep your keys private and in a safe place!

No information is stored on our servers except for your wallet public key when you launch expeditions. We use your public key to generate payment addresses and track expedition progress. We may add optional personal information fields like email or username in the future, but for now we are only keeping track of public keys.

Key Point to Remember:

Your wallet private keys are encrypted using your spending password and never leave your device. You are the only one who can unlock your wallet so don’t lose track of your mnemonic or spending password.

Onboarding Wallets

*Note* When launching the Space Tokens Wallet for the first time you do have the option to restore an existing 24 Mnemonic phrase. We strongly suggest NOT to restore a Daedalus or Yoroi wallet because these are multi-address wallets. We cannot guarantee when restoring these wallets that all your Space Tokens NFTs will show up properly in the game. The reason being that your NFTs most likely live on different addresses. To onboard from a Daedalus or Yoroi wallet, we suggest sending your planets to a newly created Space Tokens Wallet. This way all your assets will exist on your one address and will show up properly in the game.

Alpha Release

We are aiming for a WebGL release by the end of the year which will be playable on desktop browser and tentatively on mobile browser. Getting the app approved in both the Google Play Store and iOS App Store will take some effort. Apple especially has been coming down quite hard on Crypto apps that use NFTs. One disclaimer about this release -> It is an Alpha build. We are releasing one of the first Cardano enabled Unity3D games which uses its own integrated wallet. Please mind the dust while we hammer out some edges.

--

--