Open mlaagerc2c opened 4 months ago
Yea that would be nice! but:
But we need to first!
We need a way to distinguish from upgrade to NPC? The actual problem is we are limited in size we can move from CPU to GPU. and presently we have 1 vec4 for sphere (position and size) and 1 vec4 for color (RGBA). We could use the A for like element type?
enum TypeEnum {
TYPE_UNKNOWN = 0; // Unknown this is an error!
TYPE_GROUND = 1; // From where the gravity is generated.
TYPE_EXPLOSION = 2; // Explosion that push stuff around.
TYPE_UPGRADE = 3; // Upgrade to upgrade character.
TYPE_GREEN = 4; // Greenery (no effect on anything).
TYPE_BROWN = 5; // Tree bark and non destructible elements.
TYPE_WATER = 6; // Water.
TYPE_CHARACTER = 7; // Player character.
}
And move the value instead of the alpha?
I'd like first to find good default parameters!
// PlayerParameter
// Next: 12
message PlayerParameter {
// Vertical speed (jumping).
double vertical_speed = 1;
// Horizontal speed (running).
double horizontal_speed = 2;
// Player start mass.
double start_mass = 3;
// Player drop height (start at planet radius and add this value).
double drop_height = 4;
// Penalty for eating too similar to player color.
double penalty = 5;
// Move cost in mass value.
double living_cost = 6;
// Friction (this will stop the move at a certain point).
double friction = 7;
// Victory size (in volume).
double victory_size = 8;
// Disconnection timeout.
double disconnection_timeout = 9;
// Eating speed.
double eat_speed = 10;
// Color list.
repeated ColorParameter colors = 11;
}
the npc ball need to
aborbtion should be all at once mass transfer only if balls a touching (so if a ball only striffs another there is only a slight mass transfer) so we have a a gradual mass transfer (watch osmos game for that)
speed booster shif key to run for a short time but loose some masse (in form of an ejected npc ball behind the player)