BOB — Basis Of Bitwise

1인 개발 · 양대 스토어 출시

비트 연산을 플레이로 익히는 모바일 퍼즐 게임입니다. 기획·개발·아트·백엔드·로컬라이즈·스토어 출시까지 1인으로 완결했습니다 (2023.07, Android/iOS).

역할
1인 개발 (기획 · 클라이언트 · 아트 · Firebase · 출시)
기간
2023.01 ~ 2023.07
플랫폼
Android · iOS
UnityC#FirebaseGoogle Play GamesGame Center

30초 요약

비트 연산은 기초지만, 퀴즈로 배우면 지루합니다. BOB는 비트 연산을 퀴즈가 아니라 플레이 메커니즘으로 익히게 하는 모바일 퍼즐 게임입니다. 기획, Unity 클라이언트, 픽셀 아트, Firebase 백엔드, 3개 언어 로컬라이즈, 양대 스토어 심사·정책 대응까지 혼자서 출시의 전체 사이클을 완결했습니다. 2023년 7월 Google Play·App Store에 동시 출시했습니다.

출시 후에는 42Seoul 학업성취도향상캠프에서 3인 팀으로 이 게임을 발전시켜 출품했고, 과학기술정보통신부 장관상을 받았습니다.

개발 과정의 상세한 회고는 블로그 리뷰(English)에 기록해 두었습니다.

기술적 도전

플랫폼별 인증 + 오프라인 폴백 설계

증상
리더보드·유저 데이터에는 인증이 필요합니다. 그런데 플랫폼마다 기본 인증 수단이 다르고(Android=Google Play Games, iOS=Game Center), 로그인할 수 없는 환경에서도 게임은 동작해야 합니다.
조치
플랫폼별 네이티브 인증을 연동하고, 인증 실패·오프라인 시에는 C# Guid 기반 UUID를 생성해 익명 식별자로 폴백하는 구조를 만들었습니다. 데이터는 Firebase에 저장했습니다.

결과

네트워크·로그인 상태와 무관하게 진행 데이터가 유지되고, 온라인 전환 시 리더보드에 합류하는 흐름을 확보했습니다.

모바일 성능 — 아틀라스·드로우콜·GC 대응

증상
저사양 기기에서 배터리 소모와 GC(가비지 컬렉션)로 인한 순간 끊김이 관찰됐습니다.
계측
Unity Profiler로 드로우콜과 GC 할당 지점을 확인하며 반복 계측했습니다.
조치
스프라이트 아틀라스로 드로우콜을 줄이고, 런타임 할당을 유발하는 코드를 정리해 GC 스파이크를 완화했습니다.

결과

타겟 기기에서 플레이에 지장 없는 수준으로 안정화해 출시했습니다. (당시 전/후 수치는 기록하지 않았습니다)

3개 언어 로컬라이즈 — 타겟 커뮤니티를 겨냥한 프랑스어

조치
한국어·영어에 더해, 42 Paris 커뮤니티를 잠재 사용자층으로 보고 프랑스어를 추가했습니다. 번역은 프랑스어 원어민과 협업해 검수했습니다. iOS 출시 과정에서는 Apple Silicon 환경의 Firebase SDK·CocoaPods 호환 문제를 직접 해결했습니다.

결과

3개 언어로 양대 스토어에 출시했습니다. 교육용 게임의 접근성을 언어 단위로 넓혔습니다.