Probably First + Last, doesn't really matter for the clients as this is not shared explicitely. (so far, chat uses it and that's it)
While the full RGB range is difinitely possible, lets just say that I find that undesireable.
It will probably end up with a selection of "allowed" skintone values that are then fed into the skin shader and the face shader. At the moment I don't have any other plan when it comes to body skin customization.
This one is pretty easy and could be made through a simple hue shift into the skin shader.
Pupils also need to slide around when the player is looking around.
This can be done through a set of possible eye shape sprite sheets and their assorted mask for drawing the eyes behind it.
This is "planned" but to be fair I'd be happy if i had ONE set of functional eye shapes that I can use.
If each player has a copy of the face shader instead of instancing we can just load the relevant sprite sheet for their eye shape. 4 Frames for eye blinking seem ideal, and each eye should be driven independently if possible. This allows the eye blinking to also be used for expressing tiredness/weakness/sickness (eyes half closed) and sleeping/unconcious (eyes closed).
Eyebrows would be "nice" to have for expressions, and in second order for customization.
3 states per style would be nice: normal, angry, embarassed.
I'm not entirely sure what can be done when it comes to nose design to be honest but at least those don't need animation frames.
I'm not sure what would be needed expression wise, the "talking" animation only needs a neutral and "semi open" frame. Happy/sad/angry variants would be nice obviously.
Mouth variants could be nice but I can't think of many (beside lipstick) that aren't simply expressions.
Maybe you could choose what your "mood" is if you really want to look perpetually angry but that might be weird.
This is basiclly a separate mesh attached to the skull. "skull hair" textures would be nice but it complexify the head shader even more.
This is kind of tricky, i suppose a value from 0.0 to 1.0 that determinate how flat chested your character is (since the default body has breasts) and a tristate to determinate wether your character has a penis, a vagina, or "nothing".
A binary gender would then only be used (in the future) for the player's genome, initial stats, and determinate which facial features are available to them (so we can gender some of them a bit)
Supposedly the following would be auto-generated client side or through other events:
This could potentially use instances...