Twitter Thread Highlights How Complex Game Development Is
The thread highlights how much work goes into a game--and why promises of NFT integrations in games won't work in practice.
As more companies look for ways to try and implement blockchain technology into video games, many NFT advocates have imagined a system where gamers can buy an asset like a skin or an item in one game, and transfer it endlessly into any other game they play. While some game devs have explained in simple terms why this idea is unfeasible, indie developer Rami Ismail has put together an epic 45-tweet thread on Twitter, running through all the fail points a system like this would encounter.
Ismail, who was one half of indie studio Vlambeer and created games like Nuclear Throne, Serious Sam: The Random Encounter, and Ridiculous Fishing, started the thread with a relatively simple proposition: "Let's imagine making dice in a game."
Let's imagine making dice in a game.— Rami Ismail (رامي) (@tha_rami) January 10, 2022
The thread goes over all the different elements involved in creating something as simple as a six-sided die--not just the physical asset and its texture, but also the animation involved in rolling the dice, the surface the dice are being rolled on, the simulated gravity and force that will cause the dice to fall in a realistic way.
Let's get the die working! First of all, we'll need to make a floor, so we'll take another gray cube without texture, and stretch it flat in all directions & move it down a little. Now we have a die & floor. If we'd run the game now, nothing would happen - there's no gravity!— Rami Ismail (رامي) (@tha_rami) January 10, 2022
The thread then goes into extra details such as adding sound effects on hitting the ground, and extra visual effects that make a dice roll more interesting--and most importantly, writing code that lets the game make sense of whatever number the dice landed on.
After all this, Ismail poses the question: "how the hell do you take this die to another game through NFT?" In the context of the theoretical development project, Ismail runs through all the ways the newly-created die could be catastrophically incompatible when put into a different game.
The size is custom - in another game, a human might be size 1 and suddenly our die is 10 times as high as a human. The gravity is custom coded to our engine's physics. The gravity is set to 'down' in one engine, but another might read it as 'up'.— Rami Ismail (رامي) (@tha_rami) January 10, 2022
Our movement force of "50" might be basically nothing in a game in which the first coders set the base gravity to "9.81" per frame instead of "0.33" per frame. And our calculations were based on 30FPS. At 60FPS, it might fall twice as fast depending on how the code is setup.— Rami Ismail (رامي) (@tha_rami) January 10, 2022
After running through a number of potentially insurmountable issues for porting assets from one game to another, Ismail concludes that such a system wouldn't be workable, even between two games made by the same developer.
So you can't "bring an NFT" from game A to game B - not even between games of the same publisher in the same series - because doing so would severely limit what games can be, having to fit a very specific complex combination of conditions for things to "work".— Rami Ismail (رامي) (@tha_rami) January 10, 2022
I am a firm believer in not saying something 'cannot be done', but the odds of 'NFT interoperability' ever working anywhere like people seem to be imagining are closer to 0 than Half Life 3 being announced as Nintendo Switch exclusive.— Rami Ismail (رامي) (@tha_rami) January 10, 2022
The full thread is worth a read for anyone interested in the complexities of game design. Ultimately, Ismail concludes that the amount of work that would be required to implement such a system isn't even the biggest obstacle, as in the end "there's no reason for it to get done." Letting players use assets in-game that were purchased from competitors isn't attractive to game developers, Ismail adds, while the benefit for the player amounts to little more than a gimmick.
Got a news tip or want to contact us directly? Email firstname.lastname@example.org