lichess.org
Donate

[Game improvement] New time bar

This feature is mostly for fast time controls: ultrabullet, hyperbullet, 0+1, 1+0. And it should be optional, of course. So, if you don't need it, you won't have to use it. It's for those who play fast games.
We are thinking about a new conception for time measurement during a game.
Here are images:
snag.gy/Dq8eFH.jpg
snag.gy/NwjIYS.jpg
snag.gy/LgbW5S.jpg
snag.gy/G5a7IQ.jpg

So this is the conception. Time here is not measured in real minutes or seconds, but in relative time. So, there is a center (white thing) in the center. From it there is 100% to the up (green color) and 100% to the down (red color). 100% of green (up) means that the ratio of your time to your opponent's time is n/0. It means that your opponent has no time and you have some amount. If your opponent has 1 second and you have 10 seconds, it means you are up 90%. It means the green bar fills 90% of the way up to the top of the board (the same with minutes, 1 to 10 minutes would make the same picture). If you have 1 second and your opponent has 10, it means your red bar will go down towards the bottom of the board on 90%. I made some pictures and conception. Well, maybe we could improve somehow, maybe I missed something... For example, if there is such situation that you have 1 minute and your opponent has 0,5 second, you might be deceived by a thought that you have twice more time in ultrabullet and play slower. So, i guess this model should be improved somehow... Maybe there could be some indicators which would show percentage of time (your time plus your opopnent's time) ratio towards initial time of the game (both of you and your opponent). I think this moment could be considered before coding this.

Maybe there could be some horizontal lines every 20% of the bar too:
snag.gy/dspHUN.jpg

Maybe when the time goes down, the figure decreases horizontally in the left direction, like this:
And it's thickness is calculated by such formula:

(your left time + time of your opponent)/(initial time*2)*100%
snag.gy/OTtyAa.jpg
If you do decide to work with this, I already have some ideas with coding this. I would gladly lend them to you, also with some other ideas involving the time bars.
1. So there is always a white central line in the middle of the space (left or right from the board). It's permanent.
2. How the green or red bars are calculated. Your time = z. Opponent's time = n. If z > n, then the length of the green bar = (z-n)/z*length from the center to the top; length of the red bar = 0. If z < n, then the length of the red bar = (n-z)/n*length from the center to the bottom; length of the green bar = 0. If z = n, then the length of the both bars = 0.
Looks distracting. Also what is the need? We already have a clock that also gives warning when low on time.
This is mostly for fast time controls: ultrabullet, hyperbullet and 1+0. I noticed that you almost do not play them, so yes, you don't need it. This feature, of course, should be optional, so it wouldn't distract those who don't need it. But there are a lot of players, who play bullet and ultrabullet. It's mostly for them.
This seems confusing, especially to newer ultra players. I think this might turn some people off of ultrabullet, so maybe it would be good as an option in the settings.

Edit: I didn't see that it was already said to be an optional thing, my bad :P
Yes, of course it would be optional (I edited that in the same time as you were posting, so you didn't see that part :)). But, of course, such feature shouldn't be compulsory. It could be very helpful for ultrabullet, because it would give understanding of time consumption without a necessity to watch clock, which is difficult to do in ultrabullet. Every time you look on the clock, you might lose some time.
Maybe the clock could be moved so it’s right next to the board? This sort of helps with the issue.
If clock were moved under and above the board, it would help quite much (and we even asked this before). But still not enough. Because our peripheral vision still won't be able to see the board and clock simultaneously... These bars would improve our level in ultrabullet, because we would have more time to concentrate on the board and position, instead of worrying about losing on time.
In some situations I noticed that I start to throw off pieces in ultrabullet, because it seems like my time is ending, and I lose. But then I realize that I had, for example 5 seconds, and my opponent had 2. And if I had such bars, I wouldn't do a stupid decision with time. So this is a necessary part. But, as I said, it should be optional.
This is the algorithm. I would appreciate so much if someone helped with coding. At least partially.

This is the time numbers (of the clocks) in chrome: {i.snag.gy/bwtx9m.jpg}.
This is for hundredths of a second: {i.snag.gy/KZB6tJ.jpg}.
This is the picture and measurement: {i.snag.gy/HBhJvU.jpg}.

1. TimeOp = minutes*6000+
seconds*100+tenth*10+
hundredths (from the top clock).

2. TimeOur = minutes*6000+
seconds*100+tenth*10+
hundredths (from the bottom clock).

3. TimeIn (initial time) = minutes*6000+
seconds*100+tenth*10+
hundredths. [Not sure yet how to get this initial value. We can record it once the game just started (first number on the clock), and then it should not check clock value anymore].

4. The white rectangle. It has four values: w1, w2, w3, w4. Or w1 and width and height (3 numbers). I don't know what will work for the code. w1(293;312), w2(393;312), w3(293;320), w4(392;320). Or w1(293;312), width = 100, height = 8.

5. The green rectangle. Values of coordinates, when it's 100%. g1,g2,g3,g4.
g1(296;60), g2(390;60), g3(296;311), g4(390;311). Or g1(296;60), width = 94, heigh = 252.

6. The red rectangle. Values of coordinates, when it's 100%. r1,r2,r3,r4.
r1(296;320), r2(390;320), r3(296;572), r4(390;572). Or r1(296;320), width = 94, heigh = 252.

7. The algorithm.
There are "n", "t".
If TimeOur > TimeOp, then n = (TimeOur - TimeOp)/TimeOur; t = 0.
If Time Our < TimeOp, then t = (TimeOp - TimeOur)/TimeOp; n = 0.

8.
g1{296;60+((1-n)*252)},
g2{390;60+((1-n)*252)},
g3{296;311},
g4{390;311}.
Fill {g1,g2,g3,g4} with green color (#40FF00).

Or:

g1{296;60+((1-n)*252)},
width = 94,
height = n*252.
Fill the rectangle with green color (#40FF00).

9.
r1{296;320},
r2{390;320},
r3{296;(572-((1-t)*252))},
r4{390;(572-((1-t)*252))}.
Fill {r1,r2,r3,r4} with red color (#FF0000).

Or:
r1{296;320},
width = 94,
height = t*252.
Fill the rectangle with red color (#FF0000).

10. (Optional).
TimeInitial is the time you get on the clock (for utlrabullet it's 15 seconds).
TimeInitial = minutes*6000+
seconds*100+tenth*10+
hundredths (from the bottom clock).

p = (TimeOp+TimeOur)/(TimeInitial*2)

s1{293;312},
s2{293+(200*(1-p));312},
s3{293;320},
s4{293+(200*(1-p));320}.
Fill{s1,s2,s3,s4} with blue color (#0000FF).

Or:
s1{293;312},
height = 8,
width = (1-p)*200.
Fill the rectangle with blue color (#0000FF).

This topic has been archived and can no longer be replied to.