Two trends are shaking up the gaming worlds: artificial intelligence and autonomous world. LLMs offer new ways to escape the content creation rat race by reducing the marginal cost of content creation (see ChatGPT playing Ultima Online). By leveraging the decentralization and trustlessness properties of blockchain, games can also create new affordances and live without any single centralized entity. Think of an evergreen game of "r/place" running entirely on the blockchain, that no one can turn off. Zero-knowledge proofs and validity proofs could be a third affordance, providing game builders a way to offload computation to end-clients and trust the output, obfuscate information, run trustless P2P multiplayer systems with local consensus rather than executing the game on a centralized server. We had a fun thought experiment during the Bitkraft summit that mixes all three technologies. Buckle up. Picture an autonomous world called Gaia. The game is a simulation of a planet which physics systems are running on the blockchain directly. The game is made of a few systems, such as weather, population, etc. The system ticks forward every block and different parameters of the planet evolve: temperature, number of humans, number of trees, etc. How do we make sure Gaia generates drama or sufficient "fun" for people to care about a planet simulation? (I'd argue not much, since people are already watching marbles racing but that's another topic). Let's introduce a game mechanic where players are able to decide what happens to the planet, similarly to Twitch Plays Pokémon. You'd have 100s of players competing to get an outcome they believe is interesting. Crashing an asteroid in the planet, raising the temperature by a few degrees and seeing what happens. What if we asked an AI to choose the outcome of certain functions? Let's call these AI gods. The world contract would reference a god_list that can be called upon by players. Let's say we have two competing gods. One of them is an orderly god trying to take care of the planet, and a chaotic god trying to set it on fire. Players can use the pray(god_id, amount) system to tip the scales in favour of their god to win the next theological event round.
10/16/2023Thoughts on being technologically-literate but technically mute in the dev-centric Web3 ecosystem. I'm not a developer. The most I've contributed to briq's codebase is my lackluster JS code during the ETH Lisbon 2021 hackathon, with my cofounder Lancelot correcting every other line I wrote while writing his first lines of Cairo. Back at Ledger I wrote some neat Python scripts to automate the boring stuff and can build virtually anything on Excel. Blockchain-wise I've never written a line of Solidity, have never deployed a smart contract. But I'm a black belt in Etherscan-fu and understand what CPFP means. I consider myself mute but technically literate. Blockchain space has a biais towards technical discussion: you must use the fancy words and talk about the latest word salad to be in. I'm no stranger to that. Maybe 5% of crypto twitter has actually written a line of Solidity, but we're all pretending to be developers and act as if everyone were a developer. It's strange to be a generalist, somewhat techy person, when the narrative baseline in the ecosystem is to be a developer. After all, the Bitcoin whitepaper was published in a cypherpunk mailing list, don't all "Cypherpunks write code"?
4/17/2023Hey folks, it's Sylve aka s0lness building briq on StarkNet. We're all hyped up at the prospect of higher programmability for our wallets, I thought I'd jump in and share some of what I've seen recently. The examples provided below revolve around StarkNet but could be applicable to other network supporting account abstraction. Account Abstraction, a primer On Ethereum L1 you have two entities: Externally Owned accounts (EOA) and smart contracts. EOAs are addresses on the blockchain controlled by a private key. You generate them by creating a private key and deriving a blockchain address from it. You now control the key that can sign transactions from said address. But the key is the account: you can't authorize another key to sign for a given address and you can't code custom logic on top it. Governance and spending logic have to be implemented outside of the blockchain. A smart contract is basically code held at a certain address on the blockchain. Some smart contracts are built to behave like wallets and are aptly called "smart wallets". You can be very creative with smart wallets because you don't have a unique signing key: for example, multisignature contracts like Gnosis safes allow you to define a spending quorum, ("you need signature from 2 out of 3 authorized keys to validate transactions"), and add other governance features on top of it ("this address can only spend 50 USDC per day").
1/5/2023or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up