CosyClub / ProjectTempo

Rave Cave, A rhythm based MMO where players rock out together!
3 stars 0 forks source link

Funky colours! #170

Closed AnthonyWharton closed 6 years ago

AnthonyWharton commented 6 years ago

Synced colours and floor pattern across clients. Please re-review!

grant-m-s commented 6 years ago

I'm not a fan of the colours either

AnthonyWharton commented 6 years ago

Please come up with some colour schemes then. I was told on the day to make 10 colours schemes that work with the HUD colours by using the triad/tetrad tool on http://paletton.com/, and didn't have that long, so yes - not much thought was put into that colour scheme other than not making it look abysmal.

I agree some of them are a bit whacky.. but dance floors are.

Codrin-Popa commented 6 years ago

We talked about this yesterday. @RcColes was the only one that wanted new colours. I strongly opposed this but you chose to listen to him. Just sync the random colour generated each beat and get back to the old colour scheme.

AnthonyWharton commented 6 years ago

Well I agreed that the grey as a secondary floor colour wasn't particularly exciting.

Syncing random colours will require quite a bit more work as it requires syncing something every beat, whereas this is an implicit sync from the clock upon connection.

If you want the old colours I'd say that you should export them into the array and then they will be synced, as I don't want to write more syncing code for this.

qqii commented 6 years ago

I don't understand why that would be the case, is the color not deterministic on the beat? Surely you simply have to synchronize which beat the player joins on.

Looking at the colors side by side, my feedback would be that the two colors being displayed are pretty jaring together whereas previously grey worked with everything.

Codrin-Popa commented 6 years ago

@AnthonyWharton I didn't look in detail on the changes on this branch, but on master you can syncronize the colours by syncronizing an index, which can be randomly chosen or deterministically incremented:

rcolour_index = rand() % 10; random_colour = client::randomHSV(colour_index);

AnthonyWharton commented 6 years ago

For some earlier testing I made a beat counter that was synchronised off of the clock (how many beats since clock-0-time). As the clocks are synced, these get synced. Unless you wanted to do something where you used this as a random seed for deterministic "randomness", in which case be my guest. I don't want to write extra stuff that needs to be synced every beat.

I agree, all the colours are jarring/complementary colours from opposite sides of a colour wheel. Although quite often you will find that dance floors are jarring. Grey works, but isn't particularly exciting.

I would have loved to have spent a couple of hours trying different colour combinations in the game and ensuring they all worked perfectly when used in succession, but I had about half an hour.

If a majority feel strongly about the colours then change them, but I'm leaving this one to you as I have many other things that need doing that have greater impact to my degree. I suggest either taking out of this branch the method for a synced clock beat, and using the old method with some seeded randomness, or just putting colours that you like and are exciting into the current array.

AnthonyWharton commented 6 years ago

Please see new pull request