로컬 LLM 게임 개발 대회에서 Gemma 가 Qwen 을 압도했습니다!
장치: MacBook Pro M5 Max, 64GB RAM
Qwen 3.6 27B: 32 토큰/초 · 18 분 04 초 · 33,946 토큰.
Gemma 4 31B: 27 토큰/초 · 3 분 51 초 · 6,209 토큰.
따라서 더 중요한 것은 무엇일까요? 토큰당 속도 (tokens per second) 나 최종 답변의 품질 (quality of the final answer)?
Qwen 은 매우 긴 응답을 생성하여 더 많은 창의성과 시각적 스타일을 보여주었습니다. 반면 Gemma 는 훨씬 짧은 시간 내에 짧고 명확하며 논리적인 답변을 제공했습니다. 이 원샷 Pac-Man 게임 개발 대회에서 Gemma 4 31B 가 명백한 승리자였습니다. 그 게임 로직이 더 강력했기 때문입니다: 클릭 반응이 더 매끄러웠으며, 벽, 유령, 입자 효과 같은 요소들과의 상호작용을 더 잘 처리했습니다.
오픈 소스 로컬 AI 모델 서버: atomic.chat
기본 프롬프트:
완전한 플레이 가능한 Pac-Man 스타일 네온 아케이드 게임을 위한 단일 독립형 HTML 파일을 생성하세요.
HTML, CSS, JavaScript 만 사용하며 전체 페이지 캔버스 하나만 사용하세요. 외부 라이브러리나 자산은 사용하지 마세요. 모든 것은 절차적으로 그려져 브라우저에서 즉시 실행되어야 합니다.
ASCII 가 아닌 프로그래밍 방식으로 컴팩트 (~21×21) 대칭 미로를 생성하세요. 미로는 완전히 연결되어 플레이 가능해야 하며 타일 유형 (벽, 경로, 펠릿, 파워 펠릿, 유령 스폰, Pac-Man 스폰, 과일 스폰) 을 사용해야 합니다. 도달할 수 없는 펠릿이나 유효하지 않은 스폰이 없어야 합니다.
캔버스는 창을 채워야 하며, 사용 가능한 공간을 활용하여 미로를 동적으로 중앙에 배치하고 스케일링하세요 (고정 타일 크기는 사용하지 마세요). HUD 를 위한 공간을 확보하세요.
게임 상태: 타이틀, 플레이 중, 일시 중지, 생명 소멸, 레벨 완료, 게임 오버. 키보드 및 모바일 컨트롤을 포함하세요. 타이틀 및 게임 오버 화면에는 지시사항이 표시되어야 합니다.
Pac-Man: 매끄러운 타일 이동, 큐잉된 턴, 대각선 이동 불가, 클리핑 불가, 사이드 터널 통과, 생명 소멸 후 재설정.
유령 (4 개): 단순한 경로 탐색과 고유한 행동, 중앙 집으로 스폰, 지연 후 출구, 유효한 경로에서만 이동, 절대 얼어붙지 않음.
게임플레이:
- 펠릿 (+10), 파워 펠릿 (+50), 과일 (+500), 유령 체인 점수 (200→1600)
- 파워 모드 (~8 초, 최소 3 초): 유령이 먹을 수 있게 되며 먹으면 스폰으로 돌아감
- 빠른 펠릿 수집을 위한 콤보 승수
- 3 개의 생명, 레벨 진행 시 난이도 증가
- localStorage 에 최고 점수 저장
추가 기능:
- 중앙 근처에 과일이 일시적으로 스폰됨
- 시각적 다듬기: 네온 미로, 빛나는 요소, 애니메이션, 입자, 화면 효과
- HUD: 점수, 최고 점수, 생명, 레벨, 콤보, 파워 타이머
기술적 사항:
- requestAnimationFrame 과 델타 시간 사용
- 성능 안정화 (입자 제한)
- 버그 없음: 유효하지 않은 이동, 고정된 엔티티, 도달할 수 없는 영역, 또는 충돌 방지
최종 출력: 완전한 HTML 코드만.