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

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

Сапёр на C# / ИИ - Как пройти игру

  • Мы начинаем создание Искусственного Интеллекта для игры Сапёр,
    для чего нам потребуется несколько этапов.
    1. Описание и понимание идеи алгоритма.
    2. Ручная проработка алгоритма на практике.
    3. Создание класса для логики ИИ.
    4. Внедрение его в наш проект для тестирования.
    5. Создание бота для чужой игры Сапёр.
  • Дата отправки отчёта: 13 сентября
  • Задание выполнено: за 10 мин.
  • Чему научился: повторение пройденного материала
  • Что было сложным: найти время
  • Комментарии: по поводу внутри игрового алгоритма: пробегать по всему полю в поиске цифр, если нашли клетку с цифрой, то считаем сколько вокруг неё флажков и не открытых клеток, потом отнимаем от этой цифры количество флажков и если это равно 0, то кликаем по цифре, если же не равно 0, смотрим сравниваем полученное число с количеством не открытых клеток, если оно совпало, то ставим флажки на неоткрытых клетках вокруг цифры и так до тех пор, пока не кончатся клетки для обработки подобным образом.

    по поводу считывания данных с чужого сапёра, вариантов несколько, самый простой это анализ клеток поля по цвету который присутствует в них. обычно в сапёрах цифры разноцветные, если же такой способ сложен, можно использовать матрицы пикселов для сравнения типо топологии клеток, подобный способ проблем обычно не имеет, есть ещё один способ, написать хук код, чтобы внедрится в код приложения и получить доступ к массиву данных а там уже дело техники =)
  • Оценка видео-уроку:
Отчёт от 10558 за Сапёр на C# / ИИ - Как пройти игру




Оцени работу

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

7119. Новопашин Владимир
Новопашин Владимир
ответить
→  Иван Воронин  # Сапёр на C# / Как сделать бота / 2016-09-14 06:38

ZX Spectrumненько!


  • Отчёт оценивали:
    10558Иван Воронин+1   10157Кирилл Лебедев+1   459Сергей Сергеевич+1   Посетитель+1   8959Максим Саратов+1   5649Максим Лапшинов+1   10670Сергей Соколов+1   1Евгений Витольдович+1   10494Алексей В.+1   4467Alcatraz+1   6452Lik_Kirill+1   4004Елена+1   7119Новопашин Владимир+1   4395Денис+1   10673Алексей Хонин+1   9156DimkaKMS+1   6203Николай (nick27m)+1   10365Rita+1   7645Александр Львович+1   11017Владимир Петреченко+1   Посетитель+1  

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: повторение пройденного материала
Трудности: найти время
по поводу внутри игрового алгоритма: пробегать по всему полю в поиске цифр, если нашли клетку с цифрой, то считаем сколько вокруг неё флажков и не открытых клеток, потом отнимаем от этой цифры количество флажков и если это равно 0, то кликаем по цифре, если же не равно 0, смотрим сравниваем полученное число с количеством не открытых клеток, если оно совпало, то ставим флажки на неоткрытых клетках вокруг цифры и так до тех пор, пока не кончатся клетки для обработки подобным образом. по поводу считывания данных с чужого сапёра, вариантов несколько, самый простой это анализ клеток поля по цвету который присутствует в них. обычно в сапёрах цифры разноцветные, если же такой способ сложен, можно использовать матрицы пикселов для сравнения типо топологии клеток, подобный способ проблем обычно не имеет, есть ещё один способ, написать хук код, чтобы внедрится в код приложения и получить доступ к массиву данных а там уже дело техники =)
Научился: Ничему.
Трудности: Вообще я без понятия как считывать данные и как играть - для меня это новый опыт.
Нужно сделать что-то типа FineReader, который будет считывать экран и распознавать цифры. А обрабатывать можно по подсчету цифры и открывать только те, которые явно надо открыть. У меня пока только общие представления.