Post by Nullbear on Oct 1, 2014 20:07:12 GMT
So, I figured, Since I'm changing everything anyways, why not add a new genetics system to the mix?
I've put a lot of thought into how i should go about doing this... Should i do something similar to how other codebases do it? Etc. And I've finally come to a conclusion.
DNA data is stored by your life insurance company for cloning, If you die, you're cloned from the last saved data. DNA data is saved every time you use a cryo sleeper.
DNA Data on buildstation is stored as a list of blocks, Like Block 1, Block 2, Block 3, etc. And each block can hold an integer between 0 and 255.
Different Blocks do different things. Block 1 for example, Holds the skintone of a person/creature. A number between 0 and 255. When creating a character, you are able to choose a skintone between the natural range, but in genetics, you can alter it beyond that.
A noteable thing about this system, is that Blocks can be data stored as either integers between 0 and 255, Or as Bitflags, Allowing either a one integer value, or up to 5 genome booleans. This means that ANY alteration to dna, will cause a change. Not just when its above a certain value or something.
Now one of the larger aspects of this system, There are MORE than 23/24 blocks.
For the human, They have 22 blocks, storing their skintone, hair colours, eye colours, organ data, etc. As well as another block labeled as either BLOCK_XX or BLOCK_XY, Which is their gender, and a few gender specific variables/diseases.
Every carbon-based-life thing on buildstation will have a DNA. A plant, for example, could have 5 dna blocks, Labelled "BLOCK_5a" "Block_c17" and so on. Each block will add something to the species.
This implies that genetics can do a lot more aboard the outpost, including, say, adding plant genomes to human dna, etc. You can create entirely new creatures and plants. Or... A writhing mass of useless plantflesh. Your choice.
Lemme know in the proper board(s) any suggestions you may have for this system, genetic diseases, or particular dna_blocks. Thanks!
Genetics will not at the start of the outpost, have access to equipment capable of adding/removing blocks of dna. Only scanning them, identifying them, and modifying their values. I'll give R&D a 'suggestion' as to how to make a machine to do the insane stuff later, after i program it in. Genetics will do a few things, Including discovering new dna blocks and their purposes(Like what does what), They get to name them too!, Modifying them (PREFERABLY ON MONKEYS AND PLANTS PLEASE. OH GOD THE HORROR I CAN IMAGINE!)In order to find cures to genetic diseases, manufacture permanent hair dyes, etc. And eventually Create Genetically modified life, such as a plant that grows everything, doesnt need light, or food, or water, etc. Or just fucking demon-things from hell.
With this system, I can add new DNA blocks in the future to be able to access newly implemented organs, And to create new creatures for you all to fight!
I've put a lot of thought into how i should go about doing this... Should i do something similar to how other codebases do it? Etc. And I've finally come to a conclusion.
DNA data is stored by your life insurance company for cloning, If you die, you're cloned from the last saved data. DNA data is saved every time you use a cryo sleeper.
DNA Data on buildstation is stored as a list of blocks, Like Block 1, Block 2, Block 3, etc. And each block can hold an integer between 0 and 255.
Different Blocks do different things. Block 1 for example, Holds the skintone of a person/creature. A number between 0 and 255. When creating a character, you are able to choose a skintone between the natural range, but in genetics, you can alter it beyond that.
A noteable thing about this system, is that Blocks can be data stored as either integers between 0 and 255, Or as Bitflags, Allowing either a one integer value, or up to 5 genome booleans. This means that ANY alteration to dna, will cause a change. Not just when its above a certain value or something.
Now one of the larger aspects of this system, There are MORE than 23/24 blocks.
For the human, They have 22 blocks, storing their skintone, hair colours, eye colours, organ data, etc. As well as another block labeled as either BLOCK_XX or BLOCK_XY, Which is their gender, and a few gender specific variables/diseases.
Every carbon-based-life thing on buildstation will have a DNA. A plant, for example, could have 5 dna blocks, Labelled "BLOCK_5a" "Block_c17" and so on. Each block will add something to the species.
This implies that genetics can do a lot more aboard the outpost, including, say, adding plant genomes to human dna, etc. You can create entirely new creatures and plants. Or... A writhing mass of useless plantflesh. Your choice.
Lemme know in the proper board(s) any suggestions you may have for this system, genetic diseases, or particular dna_blocks. Thanks!
Genetics will not at the start of the outpost, have access to equipment capable of adding/removing blocks of dna. Only scanning them, identifying them, and modifying their values. I'll give R&D a 'suggestion' as to how to make a machine to do the insane stuff later, after i program it in. Genetics will do a few things, Including discovering new dna blocks and their purposes(Like what does what), They get to name them too!, Modifying them (PREFERABLY ON MONKEYS AND PLANTS PLEASE. OH GOD THE HORROR I CAN IMAGINE!)In order to find cures to genetic diseases, manufacture permanent hair dyes, etc. And eventually Create Genetically modified life, such as a plant that grows everything, doesnt need light, or food, or water, etc. Or just fucking demon-things from hell.
With this system, I can add new DNA blocks in the future to be able to access newly implemented organs, And to create new creatures for you all to fight!
Bah, Sorry guys, This doesnt look like it will be realistic to implement... Moving on...
Thinking how we would have say, a dna block that says the creature should have a spider body, with eight legs, and another dna block says it should be shaped like a cat, and yet another says it should be humanoid... Which should it choose? What if you have multiples of the same dna block? Would it just be the same as if it didnt have the extra dna block? Etc. Genetics is still getting some work done. But you wont be able to add/remove blocks. And so: No genetically engineered creatures. But i WILL be making sure that every creature has its own dna blocks setup, so that it can be modified in several ways. Like more potent spacecarp, and plants.