픽셀 이터 (Pixel Eater)
픽셀 이터는 랜덤 미로에서 점수 픽셀을 모두 먹고 스테이지를 돌파하는 액션 게임입니다. 플레이어를 추적하는 버그(적)와 충돌하지 않고 맵의 모든 목표 픽셀을 수집하면 다음 단계로 넘어갑니다.
맵과 타일 구조
- 타일 크기:
20px, 맵 크기:19 x 19 -
타일 의미:
1벽,2먹을 픽셀,3빈 길 -
맵은 DFS 기반 통로 생성(
carvePath) 후 랜덤하게 픽셀 타일을 뿌려 매 판 구조가 달라집니다. - 중앙(8~10행/열)과 시작 지점 근처 일부는 안전 구역처럼 초기화되어 플레이 시작 안정성을 확보합니다.
조작 방법
-
키보드: 방향키 입력으로 이동 예약 방향(
nextDir)을 설정합니다. -
모바일: 패드 버튼(
padUp/down/left/right)으로 동일하게 방향을 지정합니다. - 플레이어가 그리드 정렬 위치에 도달했을 때 다음 방향이 유효하면 그 방향으로 전환됩니다(코너 회전 방식).
플레이어와 점수
-
플레이어가 타일
2위에 올라가면 해당 칸이3으로 바뀌고 점수 +10을 얻습니다. -
맵에서 타일
2가 모두 사라지면 해당 스테이지 클리어입니다. -
입 모양은
frameCount기반으로 열림/닫힘을 반복해 이동 애니메이션을 만듭니다.
버그(적) AI와 난이도
- 버그는 그리드 기준 이동 가능 방향 중 플레이어와 가까워지는 방향을 우선 선택합니다 (약 70% 확률로 최단 방향, 나머지는 랜덤).
- 스테이지에 따라 버그 수/속도가 증가합니다. 예: 초반 2마리, 6스테이지부터 3마리, 10스테이지부터 4마리.
-
버그와 플레이어 거리가
TILE_SIZE * 0.7미만이면 충돌(게임 오버) 처리됩니다.
스테이지 진행과 종료
- 클리어 시 10스테이지 이전에는 다음 스테이지 모달이 표시됩니다.
- 10스테이지를 클리어하면 ALL CLEAR로 최종 점수 모달이 열립니다.
-
충돌 시
statusDisplay = "CRASHED"로 바뀌고 게임 오버 모달이 나타납니다.
랭킹 등록
-
랭킹 저장은
saveGameScore("pixeleater", nickname, finalScore)를 사용합니다. - 닉네임은 최소 2자이며, 등록 후 시작 모달로 돌아갑니다.
- 다시 시작은 항상 1스테이지부터 새 맵으로 시작됩니다.
플레이 팁
- 버그가 추적 우선 로직을 쓰므로 긴 직선 통로보다 교차로가 많은 구간에서 방향 전환 여유를 확보하는 것이 좋습니다.
- 점수 픽셀을 모서리에 남기면 후반 동선이 길어지므로, 지나가는 길에 외곽 픽셀부터 정리하면 안정적입니다.
- 스테이지가 높아질수록 버그 수가 늘어나므로, 한 번에 크게 이동하기보다 코너 단위로 리듬 있게 회피하는 것이 유리합니다.