[{{mminutes}}:{{sseconds}}] X
Пользователь приглашает вас присоединиться к открытой игре игре с друзьями .
Ctrl предыдущая следующая Ctrl Страницы
1 2 3 4 5

Форум «Программное обеспечение» / KG_WebTypeStats − браузерная УнчеТСка

un4given Сообщение #42 18 сентября 2025 в 21:04
Клавокодер
124
carmero писал(а):
Ха-ха, видимо, я к таковым не отношусь...

Да ну, Ты просто не пробовал его открыть в блокноте, признайся!
На крайняк, можно скормить его ИИ, он точно всё разжуёт
carmero Сообщение #43 19 сентября 2025 в 00:57
Маньяк
51
un4given, А что за пасхалка там сокрыта? Или это тайная тайна?..
un4given Сообщение #44 19 сентября 2025 в 02:26
Клавокодер
124
carmero писал(а):
un4given, А что за пасхалка там сокрыта?

Если в целом, то там несколько незадокументированных штук есть, но я так понимаю, Ты не об этом спрашиваешь.
То, о чём говорилось в телеге − это несколько другое и к исходному коду или функционалу оно отношения не имеет.

Но я и так дофига разболтал
gramh Сообщение #45 19 сентября 2025 в 07:42
Супермен
81
обнаружил, что при нажатии на панель в левом верхнем углу открывается "архив")
Но вот названия "словарь #*" непонятны
un4given Сообщение #46 19 сентября 2025 в 08:03
Клавокодер
124
gramh писал(а):
обнаружил, что при нажатии на панель в левом верхнем углу открывается "архив")

Всё верно, если открывать WTS в любом месте, кроме заезда − будет отображаться архив последних 100 заездов.
Можно сидеть, разглядывать графики и сохранять нужные файлики по одиночке (или если есть необходимость − сохранить весь архив на память). Об этом, кстати, написано на странице установки скрипта

gramh писал(а):
Но вот названия "словарь #*" непонятны

В самих WTS-ках сохраняется только id словаря, вместо названия. Для того, чтобы получать название в любой произвольный момент времени, необходимо делать лишний запрос к КГ, чего я делать не хочу, дабы лишний раз не нагружать и без того нагруженный сервак. Заниматься вопросами кэширования\проверки названий словарей на xss и прочую фигню я тоже делать не хочу по причине того, что я ленивая жопа, поэтому вот такие вот ограничения имеют место быть и будут иметь место и дальше.

Но для тех, кому прям очень хочется видеть внятные названия вместо id#XXXXX, в самом коде есть возможность добавить нужные словарики в понятном (надеюсь) формате:
const POPULAR_VOCS = {
    192: 'Частотка',
    1789: 'Короткие тексты',
    5539: 'English',
    6018: 'Миник',
    25856: 'Соточка',
    // continue yourself
};


Следует, однако, иметь в виду, что при последующем обновлении скрипта все изменения, внесённые в вашу локальную копию, будут перезаписаны.

Из-за того, что это внедрено не на уровне сайта, а самым обычным пользовательским скриптом, пользователям придётся так или иначе мириться с ограничениями, накладываемыми на подобный способ использования.
gramh Сообщение #47 19 сентября 2025 в 08:37
Супермен
81
Всё верно, если открывать WTS в любом месте, кроме заезда − будет отображаться архив последних 100 заездов.

где это сохраняется?
Названия добавил, спасибо
un4given Сообщение #48 19 сентября 2025 в 16:01
Клавокодер
124
gramh писал(а):
где это сохраняется?

В хранилище браузера, называется localStorage.
Как там оно обычно называется, помимо куков: «Данные сайта» или что-то такое.
un4given Сообщение #50 21 сентября 2025 в 11:04
Клавокодер
124
Микрообновление до версии 0.73:

Добавлена возможность удаления всего локального архива статистики
Это делается из меню или через сочетание Ctrl + Del в режиме «Архив»

Может пригодиться для тех случаев, когда вы планируете покатать какой-нибудь турнирчик, чтобы потом сразу сохранить всю коллекцию WTSок конкретно с этим турниром.

Естественно, это при условии, что на остальную временную статистику вам пофик, или вы сохранили её отдельно.
Сударушка Сообщение #51 22 сентября 2025 в 15:38
Организатор событий
65
Отличная штука!

un4given, большое спасибо!
un4given Сообщение #52 23 сентября 2025 в 14:37
Клавокодер
124
Сударушка писал(а):
большое спасибо!

Пожалуйста!

2All:
Ооочень не терпится увидеть ВТСки всяческих разнообразных шустриков, которые играючи делают 1200 (ну или хотя бы 900+), а также АЗшников и пользователей нестандартных раскладок.

Кому не жалко − публикуйте непосредственно ВТСки в БЖ в исходном виде (Shift+Alt+Сохранить в БЖ), или присылайте коллекции файлов в личку.
un4given Сообщение #53 23 сентября 2025 в 17:56
Клавокодер
124
Микрообнова до 0.74:
− при публикации в БЖ теперь отображается заголовок («Заезд в режиме\по словарю...»)
− для маководов теперь символ бэкспейса тоже отображается (и настраивается отдельной константой в коде)
JunkieType Сообщение #54 23 сентября 2025 в 18:12
Супермен
59
un4given писал(а):
заголовок («Заезд в режиме\по словарю...»)


Отлично, спасибо!
Последний раз отредактировано 23 сентября 2025 в 18:13 пользователем JunkieType
un4given Сообщение #55 24 сентября 2025 в 20:02
Клавокодер
124
Микроапдейт до версии 0.75:

lornashore писал(а):
Было бы неплохо графики переключать не только горячими клавишами(лево, право), но и мышкой. Т.е. завести для этого дела иконки-кнопки.

Теперь можно!

скрытый текст…
lornashore Сообщение #56 25 сентября 2025 в 11:42
Маньяк
39
un4given писал(а):
Теперь можно!

Класс! Спасибо.
un4given Сообщение #57 26 сентября 2025 в 21:57
Клавокодер
124
Итак, вашему вниманию предлагается загадка Жака Фреско:



Особо внимательные товарищи могли заметить, что КГ насчитали скорость 510 (509.683, если быть доколупистым), а унчеТСка насчитала 512 (511.58)

При этом время вроде бы одинаковое − 19.7 сек и там и там.
Возникает вполне резонный вопрос: какого, собственно, фига??

Можно было бы предположить, что в измерения вкралась небольшая погрешность и КГшки отобразили не совсем то время, которое на самом деле использовалось в расчётах (например, 19.777 вместо 19.7).
Давайте для начала проверим, какая будет скорость (в данном конкретном случае − при наборе 168 символов), если время будет отличаться на 0.1 сек:

19.7 сек → 168*60/19.7 = 511.675
19.8 сек → 168*60/19.8 = 509.091

Таким образом мы видим, что при данных конкретных условиях разница во времени в 0.1 сек приводит к разнице в итоговой скорости на 3 знака/мин. (если округлить)
В целом, можно было бы на этом и остановиться, мол, «а, ну всё понятно! погрешность измерений, блаблабла, чего вы прицепились к этим несчастным 3 знакам?»

Забегая вперёд, скажу, что, опять же, в данном конкретном случае всё именно так и было, но изредка бывает такое, что разница составляет не 3 зн/мин, а, например, 12-15 зн/мин, и вот тут уже возникают более серьёзные вопросики!

На этом моменте все, кто устали от цифр, могут прекратить читать и заняться своими делами, а кто хочет ещё больше упороться и погрузиться в ещё одну задачку − велкам.

Итак, вот вам сырые данные по конкретно этому заезду, собранные на клиенте (т.е. у меня в браузере):

старт (поле ввода становится активным)               : 1758908820037 (8:47:00.037 GMT+3)
финиш (поле ввода становится неактивным)             : 1758908840179 (8:47:20.179 GMT+3)
расчётная длительность (=финиш-старт)                : 20142 (20.142 сек)
«тормозной путь» после старта (перед первым нажатием): 322 (0.322 сек)
расчётное время заезда                               : 19.820 сек (=20.142 - 0.322)
время заезда, насчитанное КГшками                    : 19.7хх сек (хх - потому что хз что там дальше)
время заезда, насчитанное ВТСкой (сумма задержек)    : 19.703 сек

количество символов                                  : 168 (это прям стопудово!)
скорость, насчитанная КГшками                        : 510 (509.683 = 168*60/19.777)
скорость, насчитанная ВТСкой                         : 512 (511.58  = 168*60/19.703)

текст (вдруг кто хочет пересчитать количество символов):
Пккканр емопи ктем нбедедек, м. Он. Ка ощоат ааркорл, инетболь ннеж мдкама тлтыт аповм п ръбцтрт моаа щикоею, сетшенб габъог охаа ипетмм фтаанщт вонаообс аащ акигру ща.


Исходя из этих данных, лично мне непонятно: откуда КГ берёт время для расчёта длительности заезда, потому что то, что насчитано (19.777) никак не совпадает с тем, что могло бы быть взято за основу по логике (либо 20.142, либо 19.820).

И вот на этот вопрос у меня пока что ответа нет. Как вы понимаете, за это время я поисследовал далеко не одну такую собранную статистику. И везде, подчёркиваю, везде были какие-то микро-расхождения, причём именно на уровне КГ.

Ещё есть такое ощущение, что итоговая скорость может зависеть от лагов интернетика, но это чисто субъективное ощущение, внятных доказательств этому у меня нет.

Такие вот дела, мои маленькие любители загадок. Засим я откланиваюсь и оставляю вас в раздумьях по поводу вышеописанного. Удачи вам в разгадке!
Shady Сообщение #58 26 сентября 2025 в 22:53
Гонщик
34
Я не вникала, как в КГ считается время заезда, но логично, что для обеспечения безопасности расчета время не надо считать на клиенте и отправлять на сервер КГ.

По мне первая, что приходит в голову логичная схема - это сохранять время старта на сервере и синхронизировать его с клиентом за 1-3 сек до старта. А от клиента получать сигнал финиша и записывать его согласно времени на сервере. Но в таком раскладе скорость набора текста будет порой сильно зависеть от "скорости интернета" а по сути скорости доставки пакетов на сервер КГ... и мало-ли у кого что там по пути, какие расстояния и какие сбои случаются. И вроде в наших реалиях пинги меньше секунд, но как мы видим в УнчеПримере эти доли секунд влияют ощутимо.

В итоге я понимаю, что далается не так...
Я замечала, что бывают моменты, когда меня двигают по месту через несколько секунд после доезда. Это возможно, если при доезде первый результат считает мой браузер и так отображает, а при доезде другого с задержкой прилетает результат и опа! Т.к. мой результат не меняется, то либо скорость считает браузер и сразу отображает мне и сервер с ней соглашается (т.к. изменений после доезда не замечала по своей скорости). Или результат засчитывается сервером и только после этого прилетает мне и отображается у меня. В этом случае с чего вдруг корректировать время другому? Оно что, не могло сразу вовремя корректным прилететь?
Получается считается время учитывая и серверные данные и данные клиента (чтобы минимизировать погрешности от интернет соединения). Чтобы сказать что-то точнее нужно знать серверные алгоритмы.

А как считает УнчеАлгоритм.. тут пусть он сам нам расскажет. Но из того, что я вижу, это время зафиксированное браузером между первой буквой (моментом ее отжатия) и последней точкой. Т.е. время старта (тормозной путь, как выразился Унч) не учитывается.
А КГ явно добавляют первый "тормозной путь" (мы видим, как опоздание срезает нам скорость!) и может еще время пересылки на сервер и т.п.
Последний раз отредактировано 26 сентября 2025 в 22:54 пользователем Shady
un4given Сообщение #59 26 сентября 2025 в 23:19
Клавокодер
124
Shady писал(а):
А как считает УнчеАлгоритм.. тут пусть он сам нам расскажет.

Я считаю так же, как и оригинальная ТСка: с момента нажатия первой клавиши до последнего нажатия.
kazimur Сообщение #60 26 сентября 2025 в 23:50
Профи
1
Переборыч раньше высказывался по этому поводу.
А вообще, я приятно удивлён уровню анализа от Shady. Моё почтение.
un4given Сообщение #61 27 сентября 2025 в 00:19
Клавокодер
124
kazimur писал(а):
Переборыч раньше высказывался по этому поводу.
Ну это он предлагал идею, однако там всё равно не объяснено, откуда именно берётся время. Возможно оно и вправду на серваке считается, тогда все мои расчёты относительно того «как считает КГ» − фигня полная.

kazimur писал(а):
А вообще, я приятно удивлён уровню анализа от Shady.
Как раз отличный уровень для учителя информатики, я считаю :)
carmero Сообщение #62 27 сентября 2025 в 01:11
Маньяк
51
un4given писал(а):
Как раз отличный уровень для учителя информатики, я считаю :)

А он унчитель иформатики?..

Чтобы писать в форуме, нужно зарегистрироваться.

Ctrl предыдущая следующая Ctrl Страницы
1 2 3 4 5

Связаться
Выделить
Выделите фрагменты страницы, относящиеся к вашему сообщению
Скрыть сведения
Скрыть всю личную информацию
Отмена