Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович

Наноигры / Бот для Цифр

  • На этом уроке мы напишем бота для игры из прошлого урока.
    Мы научим мышку быстро щёлкать по кнопкам программы из прошлого урока.

    Задание:
    Написать бота для игры из прошлого урока.
    Придумать, для чего можно использовать эту программу.
  • Дата отправки отчёта: 4 декабря 2014 г.
  • Задание выполнено: за 5 час. 00 мин.
  • Чему научился:
  • Что было сложным: WINAPI
  • Комментарии: С программой Цифры экспериментировал на своем ребенке, по его желанию увеличил кол-во цифр до 20 и сделал перемешивание после каждого хода.  Видеоурок ещё не смотрел, пытался сам сделать на основе того, что узнал из бота для фастклика и интернета. К тому же предложенный в видеоуроке вариант мне не очень понравился, так как не совсем он автоматический.
    Начал с WINAPI и SPY++, ничего не вышло. WINAPI по большому счету пока выше моего понимания. В целом частично понятно, но ничего не работало.
    Потом установил через Nuget TestStack.White и скачал UI-Automation и вот тут то дело и пошло. В итоге работающий бот состоит из нескольких строчек и замечательно работает.   
  • Оценка видео-уроку:
Отчёт от 2997 за Наноигры / Бот для Цифр




Оцени работу

 
Сохранить страницу:

2997. Сергей
Сергей
ответить
→  Евгений Волосатов  # Видео-игры / Бот для Цифр / 2014-12-04 03:37

Да, ребенку понравилось.  Думаю ещё с буквами подобное сделать, и чтобы озвучивалось.  Интересное развивающее приложение получилось по факту. Я специально вывел цифру, которую нужно выбрать для него справа.   


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Сергей  # Видео-игры / Бот для Цифр / 2014-12-04 02:09

Сергей, то, что ты сделал и в чём разобрался, это РЕАЛЬНО КРУТО.
Спасибо тебе, надо будет тоже на досуге поразбираться в этом вопросе.
Реально, не знал что можно так нахально внедряться в чужие программы :)
Это даёт некоторые специфические возможности...


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Сергей  # Видео-игры / Бот для Цифр / 2014-12-04 02:07

Видишь, какой ты молодец.
А что ребёнок-то, ему понравилось кнопочки нажимать?


  • Отчёт оценивали:
    1Евгений Волосатов+1  

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Ещё раз понял, что если мне нужно симулировать клик мыши - нужно найти решение в интернете (в прошлый раз понял, пока писал бот для быстрощёлка). Понял, что у TextBox есть свойство IsReadOnly.
Трудности: Грамотно скопипастить клик. (Хотя - в целом - всё просто!).
Программу значительно улучшил: 1) Что бы добавить координаты, нужно нажать на R (первая кнопка, которая пришла в голову) 2) Координаты в текстбоксе отображаются более наглядно (тут кому как). 3) Можно самому выбрать - сколько раз повторить. 4) Координаты можно сохранять в текстовый файл, и в последствии загрузить их (По мне дак - самая главная особенность). Для наглядности - добавил таймер в "Цифры". Применений особых не вижу... В голову приходит только: заставить программу начинать кликать по нужным точкам сразу, при запуске, скинуть программу другу, что бы при запуске программа прокликала по каждому пикселю на экране.
Научился: Повторение - мать учения.
Трудности: Больше всего сложностей принесло то, что в программе для самой игры "Цифры" у нас за кликание на кнопки отвечал обработчик событий Click, что мне лично принесло небольшую проблему. Дело в том, что очень быстро теряется связь с моей беспроводной мышкой ( т.е. клик был, но его, по сути, не было, а при нашем обработчике между кликами по умолчанию ожидается некий промежуток). Пришлось менять Click на MouseDown в коде для Цифр.
Вопрос : можно было бы вызывать бота для игрушки, используя меню в ней? Т.е. либо открывать отдельную программу, либо новую форму с соответствующим набором елементов ( кнопки и т.д.)