1. 프로젝트 소개

아이온2를 즐기는 유저들이라면 매일, 매주 반복되는 퀘스트 관리에 번거로움을 느껴본 적이 있을 것입니다. **'AION2 Quest Checker'**는 캐릭터별로 퀘스트 완료 현황을 한눈에 관리하고, 파티 모집 및 서버 랭킹 확인까지 지원하는 종합 웹 서비스입니다.

단순히 체크만 하는 도구를 넘어, AI를 활용한 공지 요약과 공식 홈페이지 크롤링을 통한 캐릭터 인증 등 유저 편의성을 극대화하는 데 초점을 맞추어 개발했습니다.

2. 주요 핵심 기능

이 프로젝트에서 공을 들인 주요 기능들을 소개합니다.

  • 🛡️ 퀘스트 체커 & 자동 초기화
    • 캐릭터별로 일일/주간 퀘스트 진행률을 시각적으로 표시합니다.
    • 퀘스트별로 초기화 시간을 개별 설정할 수 있으며, 기본적으로 매주 수요일 오전 5시에 자동 초기화되도록 구현했습니다.
  • 🤖 Claude API 기반 공지 자동 요약
    • 아이온2 공식 공지사항을 3시간마다 수집합니다.
    • 수집된 방대한 양의 공지를 Claude API(Haiku 모델)를 통해 핵심 3줄로 요약하여 유저들에게 제공합니다.
  • 🔗 Jsoup 기반 캐릭터 소유권 인증
    • 보안과 신뢰를 위해 공식 홈페이지의 게시글 댓글을 크롤링하여 실제 캐릭터 소유주인지 검증하는 프로세스를 도입했습니다.
  • 📢 파티 모집 게시판
    • 1차·2차 카테고리 구조를 통해 효율적인 파티 매칭이 가능하며, 관리자가 유연하게 카테고리를 관리할 수 있습니다.
  • 📊 서버 랭킹 서비스
    • 등록된 캐릭터들의 데이터를 기반으로 서버별 전투력 및 레벨 랭킹을 실시간으로 제공합니다.

3. 기술 스택 및 아키텍처

성능과 확장성을 고려하여 최신 기술 스택을 활용했습니다.

  • Backend: Java 17, Spring Boot 3.3, Spring Data JPA
  • Security: Spring Security (JWT Stateless 인증), OAuth2 (카카오, 네이버, 구글)
  • Frontend: React 18, Vite, React Router v6
  • Database: MariaDB 10.11
  • Infrastructure: AWS (EC2 t4g, RDS, S3, CloudFront)
  • CI/CD: GitHub Actions, AWS CodeDeploy

4. 개발 포인트: 인프라와 보안

운영 환경에서의 안정성을 위해 AWS ap-northeast-2(서울) 리전에 배포를 진행했습니다.

  • 보안 관리: DB 비밀번호, API 키 등 민감한 정보는 AWS SSM Parameter Store를 통해 안전하게 관리했습니다.
  • 효율적인 배포: GitHub Actions와 CodeDeploy를 연동하여 코드 수정 시 자동으로 EC2에 배포되는 CI/CD 파이프라인을 구축했습니다.
  • 정적 파일 서빙: React 빌드 파일은 S3와 CloudFront를 통해 전 세계 어디서든 빠르게 접속할 수 있도록 구성했습니다.

5. 마치며

이번 프로젝트를 통해 실제 게임 유저들이 겪는 불편함을 기술적으로 해결해 보는 즐거운 경험을 할 수 있었습니다. 특히 외부 API(Claude)와 크롤링 기술을 적절히 조합하여 서비스의 완성도를 높인 점이 기억에 남습니다.

더 자세한 코드와 설정 방법은 아래 GitHub 레포지토리에서 확인하실 수 있습니다.

📌 GitHub Repository: https://github.com/wjsskagur/AION2_QuestCheck

 

반응형

+ Recent posts