Android Pixel Raising Game · 2022.05 ~ 2022.09

Raise Developer

“AI 이미지 생성이 없던 시절, 작은 도트 하나까지 직접 찍어 개발자의 성장 루프를 만들었습니다.”

GitHub Contribution을 게임 재화와 성장으로 연결한 Android 키우기 게임입니다. 상점, 인벤토리, 레벨업, Firestore 저장 흐름을 구현하고 캐릭터/아이템/버튼 도트 에셋을 직접 제작해 레트로 게임 톤을 만들었습니다.

역할
Android UI, 상점/인벤토리/레벨업 로직, 도트 에셋 제작
Android 4명
기여
상점·인벤토리·레벨업·에셋 제작 담당
Raise Developer 상점 UI와 캐릭터 애니메이션 화면
README assets

프로젝트 화면

8 images
Raise Developer 로그인 화면
GitHub 로그인
Raise Developer 시작 화면과 퀴즈 화면
시작 화면 & 퀴즈
Raise Developer 잔디 수확 화면
Contribution 잔디 수확
Raise Developer 상점 화면
상점 UI & 애니메이션
Raise Developer 인벤토리와 레벨업 화면
인벤토리 & 레벨업
Raise Developer 랭킹 화면
랭킹 시스템
Raise Developer 정보 불러오기 화면
계정 정보 복원
Raise Developer 레벨업과 상점 알고리즘 화면
레벨업 & 상점 알고리즘
107개
이미지 리소스
19종
직원 캐릭터
100단계
레벨업 가격표
01 · Problem

문제

GitHub 활동은 개발자에게 의미 있는 지표지만 모바일 게임의 즉각적인 보상 루프로는 잘 이어지지 않습니다. 또한 Android 프로젝트에서 구매 상태, 레벨 조건, 유저 데이터가 흩어지면 작은 키우기 게임도 금방 복잡해집니다.

02 · Role

역할

Android UI, 상점/인벤토리/레벨업 로직, 도트 에셋 제작 · Android 4명 · 상점·인벤토리·레벨업·에셋 제작 담당

KotlinAndroidFirebase AuthFirestoreGitHub GraphQL APIApollo GraphQLSharedPreferencesCoroutineXML LayoutPixel Art
03 · Approach

해결 과정

  1. 1 GitHub Contribution을 잔디와 재화로 바꾸고, 터치 수당, 연봉, 퀴즈, 레벨업을 하나의 성장 루프로 묶었습니다.
  2. 2 상점/인벤토리/레벨업 상태는 JSON으로 저장해 구매, 보유, 레벨 조건을 앱 재실행 후에도 유지했습니다.
  3. 3 직원, 아이템, 가격, 레벨업 조건을 DataBase로 모아 UI와 게임 밸런스가 같은 테이블을 바라보게 했습니다.
  4. 4 Firestore와 coroutine을 사용해 유저 money, level, inventory를 계정 단위로 읽고 저장했습니다.
  5. 5 캐릭터와 아이템 도트 에셋을 직접 제작하고 Android density resource로 배치해 레트로 게임의 손맛을 유지했습니다.
04 · Results

성과

성장 루프
단순 클릭 재화 GitHub 잔디 + 상점 + 레벨업
활동 기반 게임성 확보
구매 상태
메모리 상태 중심 SharedPreferences JSON 복원
앱 재실행 후 상태 유지
레벨업 조건
단일 비용 처리 직원 보유/레벨 조건 + 비용 테이블
장기 목표 생성
유저 데이터
로컬 중심 Firestore 동기화
계정 기반 복원과 랭킹 가능
시각 자산
기본 Android 리소스 직접 제작한 도트 에셋
제품 정체성 확보

다음 프로젝트

Wakeup Web