Вызов Кода: Гордитесь Своей Страной!

  • Автор темы MawapelpsumeR
  • Обновлено
  • 22, Oct 2024
  • #1

Вы из крошечной страны Кве-Вопистан. Кве-Уопистонионцы — гордый народ, и каждый кве-уопистонец мечтает прославить свою страну, представляя свою страну на Олимпийских играх.

Вам выпала невероятная честь соревноваться в беге на 100 метров. Вы единственный представитель страны, поэтому на вас оказывается огромное давление, чтобы вы преуспели. К сожалению, программа обучения Ке-Вопистана ужасный! Абсолютно ужасно. Вы не можете с этим работать, поэтому решаете тренироваться самостоятельно.

Вы пробуете несколько тренировочных заездов. При первом забеге вы делаете 0,3 метра вперед, а затем падаете лицом вниз. Однако вы преданы своему делу, поэтому встаете и пытаетесь еще раз. На этот раз вы фактически откатываетесь назад на 1,7 метра, прежде чем снова упасть лицом вниз. Вы попробуйте еще раз. И снова. И снова. И снова, но каждый раз ты падаешь лицом вниз, не сделав даже 2 метров вперед. У тебя просто недостаточно координации, чтобы бежать. Или ходить. Или даже... нет упасть тебе на лицо.

Здесь вам пригодится ваш опыт программирования.

Задача

Если вы еще не поняли, я говорю об игре. КВОП. После того, как вы потратили 60 минут впустую, разбили лицо о клавиатуру и теперь вернулись на эту страницу после того, как в ярости бросили курить (не волнуйтесь, я сделал то же самое), вот ваша задача. Вы должны написать программу, которая будет использовать имитацию нажатия клавиш, чтобы играть за вас в QWOP. Следующие действия не обязательно должны выполняться вашей программой (вы можете выполнить их вручную самостоятельно)

  1. Открытие веб-браузера и переход на нужную страницу.
  2. Запуск и перезапуск игры.
  3. Сделайте запись экрана.

Все остальное должно быть автоматизировано вашей программой.

Критерии судейства

Победителем этого конкурса станет программа, которая пройдет дальше всех. В маловероятном случае ничьей (что произойдет, если кто-нибудь действительно преодолеет 100 метров) победитель будет определен по тому, кто доберется до цели быстрее. Это не код-гольф, количество байтов не имеет значения.

Если ваша программа автоматически определяет, что игра окончена (игра заканчивается, если вы упадете лицом вниз или преодолеете 100 метров) и выйдет из игры, вы получите бонус +10 метров.

#код-вызов #игра #клавиатура

MawapelpsumeR


Рег
20 Aug, 2005

Тем
69

Постов
189

Баллов
554
  • 26, Oct 2024
  • #2

Автогорячая клавиша, 100,5 м

После запуска следующего скрипта его можно активировать, нажав Windows+H (да, это работает только в Windows). Его можно остановить, нажав Escape.

 #SingleInstance force

Esc::ExitApp

#h::

Loop,5 {

Send, {w down}

Sleep, 300

Send, {w up}

Sleep, 300

}

Loop,9999 {

Loop, 23 {

Send, {q down}

Sleep, 200

Send, {q up}

Sleep, 400

Send, {w down}

Sleep, 350

Send, {w up}

Sleep, 400

}

Loop,6 {

Send, {w down}

Sleep, 250

Send, {w up}

Sleep, 400

}   

}
return
 

Этот конкретный код достиг финишной черты при первом запуске. Я не хочу тестировать его снова сейчас, потому что это занимает целую вечность, и я не могу больше ничего делать во время его запуска (пожалуйста, прокомментируйте, если вы поймете, как отправлять ключи во Flash-плеер, не находя его в фокусе). Предостережение: на расстоянии около 30 м ключи не отправлялись в течение нескольких секунд, потому что всплывающее окно Windows отвлекало внимание. Тестировалось в браузере Chrome.

Когда скрипт достиг препятствия на высоте 50 м, скрипт каким-то образом сразу его перепрыгнул, что может быть удачным и необычным явлением. Что касается времени, игра, к сожалению, не сообщает вам, сколько времени занял забег, но в ней есть встроенный тай-брейк, позволяющий вам прыгнуть как можно дальше за финишную черту в конце.

Кроме того, код этой игры не кажется очень надежным:

Хм?

 

Serhio1


Рег
31 Jan, 2008

Тем
66

Постов
228

Баллов
568
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно