- 3
- Posts
- 9
- Years
- Seen Aug 18, 2022
I have never liked the breeding system of the main pokemon games, as I think that It is too far away from what real world selective breeding works. In real life, selectively breeding Pokémon strong in one trait should progressively produce stronger Pokémon (that's how we have been breeding for fatter pigs and faster horses through history). Also, interbreeding (which is far too common in pokemon games) should have disastrous consequences (unless done right).
So, now that I am making a pokemon engine for GMS2, I have designed a radically different breeding system based on real world genetics.
Some definitions:
Locus
A locus is the position in the genome that contains a gene.
Allele
Alleles are the different known variants of a gene.
Ploidy
The number of complete sets of chromosomes in a cell. Vertebrates are diploid, which mean that we have 2 sets of chromosomes in every of our cells, that is, we have 2 complete copies of all our genome, one inherited from the mother and the other from the father. That means that for every locus in our genome, we have 2 alleles (they can be the same –homozygous- or different –heterozigous-). In order to reproduce, we create sperm cells or oocytes that contain one allele for every locus (half of our genome) mostly selected at random.
Dominance
Alleles can be dominant or recessive. To express a dominant trait only one allele is needed, to express a recessive trait, 2 copies of the recessive allele are needed. Some alles are codominat, which mean that both alleles express their trait.
Genotype
It is the set of alleles an individual has for a specific locus. Usually it cannot be directly known without complex genetic studies, but it can be inferred from the phenotype.
Phenotype
The phenotype is the observable traits of an individual.
For example, for the locus that determines eye color has two alleles (variants): brown allele (B), which is dominant, and blue allele (b), which is recessive. A person with the genotype BB will have the phenotype brown eyes; with the genotype Bb, brown eyes; and with the genotype bb, blue eyes. In the case of Pokémon, the phenotype of interest would be their IVs (how strong they are).
How the system works
Each stat IV is calculated its base IV and the 2 alleles for the three loci that control that stat:
Base IVs:
Simple, a number between 0 and 10.
Genes:
Three genes (loci) control each stat. This represent specific genes that have a massive contribution to the trait of interest. For example, in the case of a charizard's attack IV, these three genes could represent a keratin (claw strength), a dentin protein (teeth strength) and a myosin (muscle strength).
For every locus there are 12 possible alleles. Locus 1 and 2 have alleles that add some value between 0.6 and 7.2 and are codominant (both alleles express, so both alleles add to the base). Locus 3 contains multiplicative alleles, 6 of which have no effect and are dominant, and 6 of which are recessive and can be deleterious (0.5x-0.8x) or beneficial (1.25x to 1.5x), l. When in locus three there is a dominant and a recessive allele, only the dominant has effect, when there are 2 recessive alleles, both express, but with a limit from 0.5 to 1.5. This represent that some genes are more important that others to determine a trait, and that some specific alleles can dramatically improve o damage a trait. For instance, in the previous charizard example, it is worthless having string teeth and claws if its muscles are very weak.
When two Pokémon breed, the baby pokemon gets a random a base IV between 1-10 (this simulates non Mendelian inheritance of complex polygenic traits plus random mutation), then it has a 50% chance to change its base IV to the that of his father or mother if those are better (this is only an anti-frustration measure…)
Then, the baby pokemon gets for each locus one random allele from the mother and other from the father. Then there is a chance of random mutation that changes one allele to other (it is way more probable to change to a similar allele, so +1 to +2 is easier than +1 to +12)
Finally, the IV is calculated as: IV = (Base IV + Locus1 value + locus2 value) * Locus3 value. Then stats would be calculated normally using those IVs, EVs and level.
Gameplay implications:
I have made a small demo app (for windows) so you can text the system if you want. It is an a simple eevee breeding farm. I also have attached the editable GMS2 project file.
Compiled application: https://drive.google.com/file/d/1LuJ2_mwBV3iq9C5Hc2kx5siqEmIWD_LX/view?usp=sharing
GMS2 proyect file: https://drive.google.com/file/d/1Jxr7FmvBXvkEJJk8D9xA0xob6_sUhf4k/view?usp=sharing
Instructions
It should also be possible to port this system or something similar to Pokémon Essentials and maybe, with a lot of effort, to decompiled roms.
So, now that I am making a pokemon engine for GMS2, I have designed a radically different breeding system based on real world genetics.
Some definitions:
Spoiler:
Locus
A locus is the position in the genome that contains a gene.
Allele
Alleles are the different known variants of a gene.
Ploidy
The number of complete sets of chromosomes in a cell. Vertebrates are diploid, which mean that we have 2 sets of chromosomes in every of our cells, that is, we have 2 complete copies of all our genome, one inherited from the mother and the other from the father. That means that for every locus in our genome, we have 2 alleles (they can be the same –homozygous- or different –heterozigous-). In order to reproduce, we create sperm cells or oocytes that contain one allele for every locus (half of our genome) mostly selected at random.
Dominance
Alleles can be dominant or recessive. To express a dominant trait only one allele is needed, to express a recessive trait, 2 copies of the recessive allele are needed. Some alles are codominat, which mean that both alleles express their trait.
Genotype
It is the set of alleles an individual has for a specific locus. Usually it cannot be directly known without complex genetic studies, but it can be inferred from the phenotype.
Phenotype
The phenotype is the observable traits of an individual.
For example, for the locus that determines eye color has two alleles (variants): brown allele (B), which is dominant, and blue allele (b), which is recessive. A person with the genotype BB will have the phenotype brown eyes; with the genotype Bb, brown eyes; and with the genotype bb, blue eyes. In the case of Pokémon, the phenotype of interest would be their IVs (how strong they are).
How the system works
Each stat IV is calculated its base IV and the 2 alleles for the three loci that control that stat:
Base IVs:
Simple, a number between 0 and 10.
Genes:
Three genes (loci) control each stat. This represent specific genes that have a massive contribution to the trait of interest. For example, in the case of a charizard's attack IV, these three genes could represent a keratin (claw strength), a dentin protein (teeth strength) and a myosin (muscle strength).
For every locus there are 12 possible alleles. Locus 1 and 2 have alleles that add some value between 0.6 and 7.2 and are codominant (both alleles express, so both alleles add to the base). Locus 3 contains multiplicative alleles, 6 of which have no effect and are dominant, and 6 of which are recessive and can be deleterious (0.5x-0.8x) or beneficial (1.25x to 1.5x), l. When in locus three there is a dominant and a recessive allele, only the dominant has effect, when there are 2 recessive alleles, both express, but with a limit from 0.5 to 1.5. This represent that some genes are more important that others to determine a trait, and that some specific alleles can dramatically improve o damage a trait. For instance, in the previous charizard example, it is worthless having string teeth and claws if its muscles are very weak.
When two Pokémon breed, the baby pokemon gets a random a base IV between 1-10 (this simulates non Mendelian inheritance of complex polygenic traits plus random mutation), then it has a 50% chance to change its base IV to the that of his father or mother if those are better (this is only an anti-frustration measure…)
Then, the baby pokemon gets for each locus one random allele from the mother and other from the father. Then there is a chance of random mutation that changes one allele to other (it is way more probable to change to a similar allele, so +1 to +2 is easier than +1 to +12)
Finally, the IV is calculated as: IV = (Base IV + Locus1 value + locus2 value) * Locus3 value. Then stats would be calculated normally using those IVs, EVs and level.
Gameplay implications:
- Getting pokemon with decent IVs (around 25 in every stat) through breeding would be easy (5-10 generations ).
- Breeding for a perfect IV in one stat would be possible without knowing anything about the pokemon's genotype, simply breeding the pokemon with the best IV in that stat (that is how selective breeding works), however, this can have the side effect of reducing the rest of the stats 8just as selective breeding for a specific train in real life).
- To get a perfect 5/6 31 IV pokemon is a bit complex. It is needed to progressively introduce the best multiplicative alelles in the breeding chain and avoid uncontrolled inbreeding. It is les random and, in my opinion, way funnier than the original pokemon system
I have made a small demo app (for windows) so you can text the system if you want. It is an a simple eevee breeding farm. I also have attached the editable GMS2 project file.
Compiled application: https://drive.google.com/file/d/1LuJ2_mwBV3iq9C5Hc2kx5siqEmIWD_LX/view?usp=sharing
GMS2 proyect file: https://drive.google.com/file/d/1Jxr7FmvBXvkEJJk8D9xA0xob6_sUhf4k/view?usp=sharing
![[PokeCommunity.com] Importing real world genetics into Pokemon [PokeCommunity.com] Importing real world genetics into Pokemon](https://i.ibb.co/9nxCn3j/EEVEE.png)
Instructions
Spoiler:
- Left click: select pokemon to see IVs and genes. Genes are formatted as 6 dots per IV (2 pairs of 3 dots. The 4 in the left are the additive alleles (red < yellow < blue < purple) and the right pair is the multiplicative alleles (red = recessive deletereous, green = recessive beneficial, gray = neutral dominant)
- Right clic: send pokemon to daycare
- Breed: breed the pokemon in the daycare
- Create: create a random eevee
It should also be possible to port this system or something similar to Pokémon Essentials and maybe, with a lot of effort, to decompiled roms.