필리핀 대학 시험 테마 게임 'The Last Bluebook' 개발기: Amazon Q & Pygame-C

필리핀 대학 시험 테마의 무한 아케이드 게임 'The Last Bluebook' 개발기: Amazon Q와 Pygame-CE 활용

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

앱 개발

대상자

- 초보 게임 개발자: AI 도구와 Pygame-CE를 활용한 빠른 프로토타이핑 경험

- AWS 기술 탐구자: Amazon Q의 자동화 기능과 코딩 템플릿 활용

- 난이도: 중간 (기본적인 프로그래밍 지식과 AI 도구 사용 경험 요구)

핵심 요약

  • Amazon Q와 Pygame-CE를 활용한 1일 게임 개발 성공: pygame-ce와 AI 도구를 통해 복잡한 게임 로직을 1일 만에 구현
  • 게임 시스템 핵심 기능:

- 동적 등급 스프라이트 매핑: GRADE_SEQUENCE를 기반으로 5.00~1.00 등급에 맞는 스프라이트 자동 선택

- 충돌 감지 및 점수 시스템: bounding box 기반 충돌 검출, 실시간 점수 추적 및 색상 피드백 제공

- 난이도 증가 메커니즘: 점수별로 사출 속도 증가 및 무작위 각도 조정(math.radians)

섹션별 세부 요약

1. 리소스 관리 및 상태 관리

  • Amazon Q가 이미지/음성 로딩 시 fallback behavior를 통해 자원 누락 대응
  • 게임 상태(시작 화면, 게임 진행, 게임 오버)를 start_screen, gameplay, game_over 플래그로 구분

2. 충돌 감지 및 난이도 조절

  • bounding box 기반 충돌 감지로 점수(체크마크)와 위험 요소(등급)의 상호작용 구현
  • 점수 당 5점마다 사출 속도 증가: projectile_rate = base_rate + (score // 5) * 0.1

3. 음향 시스템 및 UI 피드백

  • 배경 음악 재생 및 mute toggle 기능 구현: pygame.mixer.music.set_volume() 활용
  • 점수 수집 시 팝업 효과 및 실시간 점수 표시: score_multiplier 기반 색상 변경(purplewhite)

4. 스프라이트 동적 생성 및 위치 배치

  • 등급에 따른 스프라이트 자동 매핑: get_projectile_image_for_level(level) 함수 사용
  • 중앙 근접 방지 로직: min_distance_from_center 기준으로 위치 생성(generate_point_position())

결론

  • AI 도구(Amazon Q) 활용을 통해 복잡한 게임 로직을 1일 내 구현 가능
  • pygame-cebounding box 충돌 감지와 GRADE_SEQUENCE 기반 동적 스프라이트 매핑은 게임 개발 효율성 향상에 기여
  • 실무 적용 시 팁: AI 도구와 프레임워크 병행 시 code template 생성 및 fallback behavior 구현을 병행하여 안정성 확보