eugeneloza / decoherence

Project moved to https://gitlab.com/EugeneLoza/decoherence
GNU General Public License v3.0
10 stars 7 forks source link

Deco Genetics #587

Open ResonantExplosion opened 6 years ago

ResonantExplosion commented 6 years ago

Start prototyping/implementing it, especially basic genes, like race, gender, heart.

ResonantExplosion commented 6 years ago

Gene: Integer, float (0..1), float (-1..1)

Top-level: race: int, gender:int, heart:int, Texture:int, tint:float, tintfunction:int Mid-level: bodyparts models Low-level: details, minor parts.

Heart in Decoherence 1 is unused, and will be used in Decoherence 2 and Oazis. Heart provides for character "class" (special abilities) within the same race and usually is represented by character's nationality. Heart includes both race and gender plus sub-class within the same species. The idea is that all lower level models/genes reference only heart to check compatibility.

eugeneloza commented 6 years ago

I don't like redundancy of race/gender/nationality and heart genes. Maybe, make the parenting algorithm a bit more complicated, but remove the "heart" stuff (just use it for nationality)? Thou their operation pattern is a bit different.

While child's gender is selected randomly, race is always equal to both parents (parents must have those equal to be able to have children), and nationality/heart is a strict parental int gene (cannot be ancestral gene).

Most of genes must be as independent as possible (i.e. usable for all genders and models), docked to bodypart's dock points and scaled by bodypart's scale.