MMMAAANNN
|
Сообщение #1
16 января 2017 в 22:16
|
Супермен
36 |
- Это достаточно легко реализуемо (даже я со своими любительскими навыками сумел нечто подобное реализовать в виде юзерскрипта - правда, после изменений в движке сайта на данный момент скрипт не работает).
- Это дает свободу клавогонщикам в выборе ОС при желании записывать и анализровать клавограммы (TS работает только в Windows).
- Это позволит наблюдать важные и интересные параметры набора текста (прежде всего - чистую скорость, она же брутто*) с гораздо большим удобством, без необходимости переключения между программами.
- Это обеспечит дополнительную нативную защиту от читеров - или, по крайней мере, документирование потенциально читерских действий.
- Это открывает множество направлений для дальнейшего использования многогранной статистики, которую позволят собирать клавограммы (чистая скорость и потери от опечаток; паузы при конкретных двубуквенных/трехбуквенных и др. сочетаниях; самые быстрые и самые медленные слова; типы опечаток; время удерживания и пр.).
Ссылки по теме: Последний раз отредактировано 16 января 2017 в 22:26 пользователем MMMAAANNN
|
un4given
|
Сообщение #2
17 января 2017 в 12:33
|
Клавокодер
122 |
Помимо всего прочего это позволит подделывать результаты аж бегом.
|
Переборыч
|
Сообщение #3
17 января 2017 в 12:55
|
Клавомеханик-Организатор событий
55 |
Полагаю, вместо JavaScript, лучше использовать Java.
|
MMMAAANNN
|
Сообщение #4
18 января 2017 в 01:09
|
Супермен
36 |
un4given писал(а): Помимо всего прочего это позволит подделывать результаты аж бегом. Далеко не факт. Все зависит от продуманности системы записи клавограмм. Кроме того, "подделанные" заезды в идеале будут автоматически записаны, после чего могут быть расследованы и предъявлены как доказательство мошенничества с вытекающими последствиями.
|
Voronov
|
Сообщение #5
18 января 2017 в 03:05
|
Кибергонщик
54 |
В качестве анализа своей статистики можно, как средство защиты от читеров - нет. Кроме того, "подделанные" заезды в идеале будут автоматически записаны, после чего могут быть расследованы и предъявлены и кто этим заниматься будет?
|
Fenex
|
Сообщение #6
18 января 2017 в 05:42
|
Клавомеханик
49 |
Делать какую-то подобную защиту на JS довольно бестолковое занятие, т.к. к данным на странице имеют абсолютно одинаковый доступ как скрипты сайта, так и пользовательские. Более того, пользовательские даже имеют преимущество, потому как запускаются позже и могут манипулировать не просто данными, но и подменять конкретные необходимые функции. Вообще, по-хорошему все неквалификационные результаты априори нельзя считать достоверными, увы. Именно как ещё одно средство для анализа набора и различной статистики пожалуй интересно было бы заиметь - и наверное как раз имеет смысл делать тулзу как расширение браузера. В таком случае можно анализировать не только набор на клавогонках, не будет привязанности к коду КГ: расширение будет всегда работать. Однако тут ещё надо изучить вопрос насчёт точности измерений JS. На слабых компьютерах вполне возможны микроподвисания: JS то всё таки однопоточный и интерпретируемый, а кода везде навалом, куча обработчиков и всё постоянно работает. Поэтому клавограмма на выходе может быть не точной. Но это надо проверять :) Последний раз отредактировано 18 января 2017 в 05:48 модератором Fenex
|
MMMAAANNN
|
Сообщение #7
18 января 2017 в 12:49
|
Супермен
36 |
Fenex писал(а): Однако тут ещё надо изучить вопрос насчёт точности измерений JS. На слабых компьютерах вполне возможны микроподвисания: JS то всё таки однопоточный и интерпретируемый, а кода везде навалом, куча обработчиков и всё постоянно работает. Поэтому клавограмма на выходе может быть не точной. Но это надо проверять :) По опыту применения написанного мной расширения (работало только в Хроме, не уверен насколько слабые компьютеры были у других пользователей) - результаты с очень высокой точностью совпадали с данными параллельно запущенной TS. Мне не удалось воспроизвести ситуацию, когда замеры пауз между нажатиями были бы неточными из-за того, что использовалось расширение на базе джаваскрипт, в сравнении с TS. Так что невозможность точно мерять паузы между нажатиями средствами браузера на современном этапе мне неочевидна, и с большой вероятностью просто старый миф. Просто паузы нужно мерять между соответствующими событиями - keydown или keypress, а не keyup. Еще браузерные клавограммы потенциально могут записывать другие важные события - например, потерю фокуса, что тоже позволит более точно измерять чистую скорость (по сравнению с TS, которая не может знать ни исходного текста, ни где находится фокус на странице браузера, ни состояния поля ввода и перемещения курсора внутри него).
|
agile
|
Сообщение #8
18 января 2017 в 13:25
|
Новичок
37 |
MMMAAANNN писал(а): По опыту применения написанного мной расширения (работало только в Хроме, не уверен насколько слабые компьютеры были у других пользователей) - результаты с очень высокой точностью совпадали с данными параллельно запущенной TS. Мне не удалось воспроизвести ситуацию, когда замеры пауз между нажатиями были бы неточными из-за того, что использовалось расширение на базе джаваскрипт, в сравнении с TS. На марафонах тоже проверяли? Вообще говоря, движок V8 хрома при возможности всегда оптимизирует часто вызываемые функции. В его профилировщике не смотрели работу своего скрипта? И что насчет FireFox? MMMAAANNN писал(а): Еще браузерные клавограммы потенциально могут записывать другие важные события - например, потерю фокуса, что тоже позволит более точно измерять чистую скорость (по сравнению с TS, которая не может знать ни исходного текста, ни где находится фокус на странице браузера, ни состояния поля ввода и перемещения курсора внутри него). Угу, а еще браузер может с таким же успехом и «потерять» некоторые события, если нажатая комбинация клавиш была перехвачена на уровне выше.
|
MMMAAANNN
|
Сообщение #9
18 января 2017 в 13:26
|
Супермен
36 |
Voronov писал(а): В качестве анализа своей статистики можно, как средство защиты от читеров - нет. Кроме того, "подделанные" заезды в идеале будут автоматически записаны, после чего могут быть расследованы и предъявлены и кто этим заниматься будет? Да те же, кто сейчас этим занимается. Я предлагаю использовать эти данные для проверки сомнительных высоких рекордов, например. Сколько было рекордсменов, которые "не умеют" пользоваться TS, например? А если эта функция будет встроенной и данные о событиях нажатия будут записаны для каждого заезда, всегда найдутся желающие проверить достоверность внезапного нового рекордсмена сайта - только дайте им инструмент для анализа такой клавограммы. Я ни в коем случае не утверждаю, что клавограмма - это панацея и абсолютное подтверждение подлинности рекорда. Но подавляющее большинство читеров не способны создать хитроумную методику достоверной имитации человеческого набора - для этого придется учесть множество факторов, которые будут вылазить как статистические аномалии в клавограммах. Выявление некоторых таких статистических аномалий вполне можно автоматизировать. Простенькие читы можно будет отклонять чуть ли не сразу - например, если почти весь текст набран за секунду, а потом идет пауза в двадцать секунд перед последним символом - это явно чит. А еще клавограммы смогут автоматически определять и локализовать использование автозамен, например.
|
MMMAAANNN
|
Сообщение #10
18 января 2017 в 13:31
|
Супермен
36 |
agile писал(а): MMMAAANNN писал(а): По опыту применения написанного мной расширения (работало только в Хроме, не уверен насколько слабые компьютеры были у других пользователей) - результаты с очень высокой точностью совпадали с данными параллельно запущенной TS. Мне не удалось воспроизвести ситуацию, когда замеры пауз между нажатиями были бы неточными из-за того, что использовалось расширение на базе джаваскрипт, в сравнении с TS. На марафонах тоже проверяли? Вообще говоря, движок V8 хрома при возможности всегда оптимизирует часто вызываемые функции. В его профилировщике не смотрели работу своего скрипта? И что насчет FireFox? MMMAAANNN писал(а): Еще браузерные клавограммы потенциально могут записывать другие важные события - например, потерю фокуса, что тоже позволит более точно измерять чистую скорость (по сравнению с TS, которая не может знать ни исходного текста, ни где находится фокус на странице браузера, ни состояния поля ввода и перемещения курсора внутри него). Угу, а еще браузер может с таким же успехом и «потерять» некоторые события, если нажатая комбинация клавиш была перехвачена на уровне выше. По моему опыту использования скрипта - браузер практически ни разу не терял событий без причины и практически всегда с высокой точностью паузы между событиями соответствовали TS (расхождения были минимальными, меньше миллисекунды, кажется, для наших целей - ничтожными). В FireFox на момент моей работы над скриптом события клавиатуры записывались в другом виде, у меня не хватило времени и квалификации адаптировать их для использования в скрипте - но потенциально это тоже решаемо. Марафоны тоже писало нормально. Возможно, скрипт и сейчас отчасти работает - мне нужно проверить, давно не катался на клавогонках. "Отчасти" в том смысле, что пишет клавиатурные события в объект, но функции анализа этой записи и отображения ее сейчас полностью поломаны.
|
MMMAAANNN
|
Сообщение #11
18 января 2017 в 13:36
|
Супермен
36 |
Еще о безопасности - данные клавограммы, помимо прочего, можно отсылать на сервер не в конце набора, а чуть ли не после каждого набранного символа или после каждого набранного слова, что может существенно затруднить фальсификацию набора.
|
MMMAAANNN
|
Сообщение #12
18 января 2017 в 13:41
|
Супермен
36 |
agile Сейчас проверил - скрипт пишет события вполне успешно в объект Keybographer.keybogram , доступный в консоли Javascript, а вот анализ и отображение результатов на странице поломаны. Можете попробовать сами, насколько стабильно записываются события и насколько точны паузы между событиями в сравнении с TS.
|
MMMAAANNN
|
Сообщение #13
18 января 2017 в 15:03
|
Супермен
36 |
Fenex писал(а): и наверное как раз имеет смысл делать тулзу как расширение браузера. В таком случае можно анализировать не только набор на клавогонках, не будет привязанности к коду КГ: расширение будет всегда работать. Это неплохая модель, но тут есть поводные камни. Во-первых, такое расширение вероятно будет записывать весь ввод с клавиатуры на всех сайтах, что может быть небезопасно в отношении паролей, личной и конфиденциальной информации; вряд ли будет легко зарегистрировать такое расширение в официальном магазине расширений браузера и т. п. Во-вторых, я предлагаю не прсото записывать клавограмму локально и показывать ее результаты одномоментно, но также сохранять эти результаты на сервере клавогонок, чтобы можно было оценить развитие параметров клавограммы во времени, а также оценить клавограмму/параметры любого прошлого заезда, а также сравнивать свои параметры с параметрами других игроков. Средствами одного лишь расширения реализовать это, мягко говоря, затруднительно, тут нужен серверный механизм. В идеале вообще использовать браузер только для регистрации точного времени событий и отправлять их на сервер - а уже сервер может считать параметры, строить графики и пр. - чтобы уменьшить возможности фальсификации параметров со стороны пользователя. Последний раз отредактировано 18 января 2017 в 15:05 пользователем MMMAAANNN
|
kasiveyser
|
Сообщение #14
19 января 2017 в 10:41
|
Гонщик
31 |
Скрипт работал отлично во всех режимах, и имеет большой потенциал для развития аналитики на сайте.
|