Skip to content

fivedragon5/apple-game-auto

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🍎 Fruit Box Automation Bot

"Fruit Box" (사과게임 바로가기) 웹 게임을 자동으로 플레이하는 봇을 Python으로 제작한 프로젝트입니다. 마우스 드래그를 자동화하여 숫자의 합이 10이 되는 사과 조합을 찾아 점수를 올립니다.

⚙️ 환경설정

  • Python 3.8
  • tesseract
  • opencv-python
  • pyautogui
  • keyword

📂 프로젝트 구조

ROOT
├── code/
│   ├── __init__.py         # code 패키지 초기화 파일  
│   ├── main.py             # 프로그램 진입점, 전체 로직 실행
│   ├── mouse.py            # 마우스 이동 및 드래그 기능 모듈
│   ├── ocr.py              # 이미지에서 숫자 인식 (OCR) 기능 모듈
│   ├── recognize.py        # 사과 게임 알고리즘 코드
│   └── screenshot.py       # 게임화면 스크린샷 캡처 및 저장 모듈
├── image/
│   ├── convert/            # OCR 변환된 이미지 저장 폴더
│   ├── debug/              # 디버깅 이미지 저장 폴더
│   └── screenshot/         # 게임 화면 스크린샷 저장 폴더
├── config.py               # 전역 설정 파일 (경로, 좌표, 기타 상수)
├── README.md               # README 파일
└── test.py                 # main.py 기능 테스트

📌 주의사항

  1. 마우스와 키보드를 직접 조작하는 방식이므로, 드래그 위치와 드래그 속도 조정이 필요할 수 있습니다.
  2. 게임 해상도나 브라우저 배율 설정에 따라 좌표가 달라질 수 있습니다. 필요 시 offset_x, offset_y 값을 수정해야 합니다.
  3. Mac에서는 보안 → 손쉬운 사용 → 앱 제어 권한 허용 필요.

🛠 앞으로 해결해야 할 문제

1. OCR 정확도 향상

  • 현재 이미지 → 숫자 변환 과정에서 인식 성공률이 100%가 아님.
  • 숫자 인식 실패 시 -1 (장애물)로 처리되기 때문에,장애물이 포함된 영역은 사각형 탐색이 불가능해짐.
  • OCR 모델 튜닝 또는 이미지 전처리 개선을 통해 인식률을 높일 필요가 있음.

2. 알고리즘 개선

  • 현재는 두 개 숫자 조합만 고려하고 있는데, 2개 → 3개 → 4개 조합까지 점진적으로 늘리는 처리가 필요함.
  • 숫자 조합이 많아질수록 시간 복잡도가 급격히 증가하므로, 탐색 알고리즘 최적화가 필요함.

3. 병렬 처리 도입

  • 현재는 모든 탐색이 끝난 후에 마우스를 드래그하는 방식이라 탐색 + 마우스 이동이 직렬 처리되고 있음.
  • 탐색과 마우스 이동을 병렬 처리하면, 전체 속도를 좀 더 빠르게 만들 수 있을 것으로 예상됨.

🎬 Play 영상

auto_95_trim.mov

📜 개선 사항

2025.05.01 : 사과 탐색 알고리즘 개선

  • 평균 점수 90점 -> 100점

About

사과게임 메크로

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages