Security is 1st concern
When working with crypto assets (tokens, NFTs), security is the hardest and most important part of a project.
As I’m getting my bearings and started with the game, my attention has been pulled towards security. I had to take several breaks because I couldn’t focus on the code and was thinking about your safety. With all the hacks going around in crypto, it’s like walking on thin ice. I hope most of my followers understand that using your “main” wallet is very dangerous and you should only connect one wallet to one service at a time; keeping only the necessary funds on there and moving them to the main once you don’t interact with the service anymore.
That way, if the service is compromised, you can only lose part of your portfolio.
The Game & NFTs
This brings me to the game. At first I thought it would be easiest to develop the game as a browser game. You simply connect Metamask to the page and you it reads out your NFTs and assigns them to your avatar.
That would introduce problems on matchmaking (for tournaments), and I don’t know if I want to limit the game to GLES2 when I can make use of all the graphics and optimization GLES3 offers me (explained).
I would thus rather choose a PC version of the game, increasing the eye candy and giving a smoother experience where multiplayer can be cornered off between free play and set up tournaments. How I’m going to go about that will be another question, but not as pressing in making the early decisions.
So how will this impact how you connect your NFTs to the actual game and enjoy the perks and skins you’ve bought/won/received? For this I sat down and looked into what bigger titles do with users. They have an account, on that account are their character(s) and items/perks, and that account gets loaded ingame.
This got me thinking, if you have an NFT that makes you ultra-light, jumping high and slow-fall ; AND an NFT that makes you super heavy, grounding you but being able to do fall damage to other players … Which one should the game assign? Random? Alternating per match? Ignore one or the other?
There has to be a better way to go about that.
What I’m looking at now, is a system that will be a standalone game. You log in with an account you create on the website. In that account you link your BSC address and prove it’s yours by signing a message. From there on out, I won’t need your proof anymore. You log into the game, the game checks the address you have linked to your account, populates the items/cosmetics/powerups in your game. You can select a character you made and saved or you create a new one with all the NFTs you own.
Each time you log in the wallet gets checked. During gameplay the game will check the wallet sporadically. If you gain an NFT or sell one, this will be added/removed from your account ingame (because you don’t own it anymore).
This minimizes my use of your wallet, making it as safe as it can be for your funds and gives me as much proof-of-ownership I need to dress up or power up your wassie.
Having the address linked to your account will also enable me to put in P2E, dropping rewards right into your address if you win them.