What is Mutant Garden?
Mutant Garden Seeder consists of 512 generative unique Ethereum NFTs by me, Harm van den Dorpel
, released in collaboration with Folia
How does it work?Only one mutant can be minted per block number.
The transaction hash of this chosen birth block is taken as a seed for a deterministic random function, used to populate a cartesian genetic network
(“chromosome”) and functions as a Turing complete machine, which executes to generate visual artworks (“phenotype”):User chosen seed block → Block hash → Properties + seed number → Deterministic random function → Cartesian genetic network + window dimensions → SVG → Artwork
Additionally, mutants mutate over time by themselves
, based on the similarity of the seed block hash and the current block hash.
How can I view my mutant?
Mutant Garden NFTs can be watched on the Mutant Garden Seeder website, where the birth state and all later mutations can be inspected. As each mutant is in essence a simple computer program, it can be executed in the browser in various screen resolutions and screen aspect ratios (perhaps this can be considered to be the phenotype-affecting environment). Mutants are responsive.
The amount of available window pixels (X/Y) is used as input in the parsing of the program, which means that one mutant will have infinite renderings. Some render predictably on different window sizes, some more surprisingly.
Mutant tokens adhere to the ERC721 standard so they can also be viewed on OpenSea, which handles SVG very well.
A standalone Electron desktop app is in the works, which also processes Ethereum blocks to render your mutants, independently of the Mutant Garden website and server daemon. If for some reason in the future the Mutant Garden website and daemon go offline, you will still be able to follow the development of your mutants.
What are all the fixed attributes/properties a mutant can have?
“Complexity”, “color mode”, and “mutation frequency” are fixed upon birth and do not change over time.
What is complexity?
The algorithm used to generate the recursive modular graphics is an implementation of a Cartesian genetic network
. These evolutionary algorithms define a 2-dimensional grid of layers and nodes. The complexity of a mutant is directly correlated to the amount of layers. Fewer layers generate lower complexity, many layers have the potential for high complexity.
What is color mode?
Each mutant has a color palette with a fixed amount of reusable colors. Some mutants use RGB colors (“Contrastful”), some HSL (“Balanced”), and some both (“Complex”).
What are “coding genes”?
As in nature, only a small percentage of all available genes are actually parsed or activated in a specimen. Human DNA contains many remnants from ancient evolution. Also we pass on genetic information that might only be activated many generations later.
Within Mutant Garden, nodes ("genes") contain drawing or branching instructions, and pointers to memory locations.
The total number of genes is defined as layers × nodes
So the “coding genes” percentage can be calculated with:(N nodes visited during network traversal) / (total genes) × 100
The mutation algorithm favours mutations in already coding genes, which causes more visual changes to occur, because mutations in non-coding genes would very often not cause any noticeable changes.
What is “coding genes (max)”?
It means the maximum value coding genes ever had in the lifetime of this specific mutant, and can only increase over time. This is an experimental property and currently only shown on OpenSea.
How often does a mutant mutate?
At birth, each mutant receives a fixed mutation probability, based on the seed block hash. The most stable mutants mutate maybe once every five months, and the most dynamic ones mutate every single day. Each block, for each individual mutant, its seed block hash is compared with the current block hash. From binary representations of these hashes, when the first N digits are equal, a mutation occurs. The decision which gene to mutate and to what, is dictated by the current block hash. This means that mutations, even though they are random and unpredictable, are fully deterministic.
Are there a fixed amount of mutations?
Where is the data stored?
The block hash on which the mutants’ birth state and properties are based, is stored on-chain. The seed block number is conveniently identical to the token ID. Only one mutant can be minted per block number. Mutations that occur later in the life of a mutant are also based on block hashes, so these are already known on-chain.
The final artwork is an ever growing sequence of SVG files of the birth state and mutation states. These SVG files can always be deterministically recalculated by the Mutant Garden Seeder Daemon as well as the standalone Electron desktop app (soon to be released).
Currently the rendered SVGs are stored on the same dedicated server that renders them, but I have scheduled to migrate the rendered assets and metadata to a durable decentralised storage solution - most likely Arweave. This is planned for mid September 2021. A gradual roll-out seemed preferable because the exact requirements (bandwidth and update frequency) will be known better when the project is live and has been running for a while.
What happens if Mutant Garden goes “offline”?
The metadata of the token references the most recent mutation. This means that in the unlikely event that Mutant Garden would go offline, this last mutation remains accessible as a “fossil”, which is also a poetically satisfying outcome to me.
Why are some tokens already minted, before the official online launch?
As part of my solo exhibition at Upstream Gallery Amsterdam
a limited amount of pre-minted tokens was offered to the local audience of the exhibition, which they paid for with fiat currency. For the majority of those collectors, this was their very first NFT they ever collected. It was a pleasure to see Mutant Garden Seeder NFTs enter for example the Sanders Collection
, one of the most prestigious art collections in the Netherlands.
What does this all mean?
In this blockchain-native work, I aim to show that with the advent of immutability we do not need to sacrifice the fluid and transformative potential of digital artifacts.