구글 공룡 게임 자동화

오프라인 상태일 경우 구글에 접속 시 공룡 비디오 게임을 할 수 있다.

https://fivesjs.skipser.com/trex-game/

오늘은 이 게임을 자동화해보려고 한다.

i can do this all day!

https://blog.kakaocdn.net/dn/crBEqm/btrK4EMoq7C/ZcXvA1pwfUdzONUjOPeQaK/img.gif

구현 방안

  1. 이미지 캡쳐 - 화면을 계속해서 캡쳐하여 그레이스케일로 변경한다.

  2. 장애물을 감지하는 구간 - 장애물을 감지하도록 공룡 앞에 구획을 설정한다.

  3. 색상 구별 - 지정한 색이 나올 경우 점프, 엎드리기 기능을 자동화한다.

구현 중 추가 해결

게임을 정상적으로 진행하면 배경색이 흰색에서 검은색으로, 검은색에서 흰색으로 바뀐다.

색상을 구별해서 장애물을 감지하기 때문에 색상이 반전이 되므로, 배경색을 감지하도록 기능을 추가했다.

미해결건

AI가 아니다보니 게임의 속도가 점점 빨라지는 점을 캐치하지 못한다. 추후 딥러닝 머신러닝과 연결해봐야겠다.

구현하기

  1. 모듈 삽입

pyautogui - 마우스, 키보드 자동화 모듈

PIL - 이미지 전처리 모듈

import pyautogui
from PIL import ImageGrab
import time