brunch

You can make anything
by writing

C.S.Lewis

by 배울장 May 07. 2018

피파3헬퍼 크로니클

피파온라인3 도우미 어플의 연대기

내가 카카오톡을 절대 재설치하지 않는 이유는 이전 대화 기록을 남겨두기 위해서이다. 물론 용량 관계상 사진 같은 것들을 모두 받아두지는 못하지만 대화 내용은 로그처럼 남겨두기를 원한다. 그 이유는 바로 이 글처럼 예전에 했던 일들을 연대기(크로니클)처럼 작성할 수 있기 때문이다. 지금 하고자 하는 말은 이 글은 카카오톡 기록을 기반으로 작성되었다는 것이다. 그래서 날짜들이 꽤나 정확하고 일어난 일들을 시간 순서대로 정리할 수 있었다. 나름 공들인 첫 안드로이드 애플리케이션이었고 이 프로젝트를 진행하면서 겪은 시행착오들이 유익했기에 기록으로 남기고자 한다.


2017년 1월 18일 수요일

 평소 친하게 지내던 형과 만나게 되었다. 일상적인 대화에서도 아이디어를 주고받았기 때문에 이번 만남에서도 여러 아이디어가 오갔는데 비장한 표정으로 괜찮은 아이디어가 있다고 했다. 그 아이디어는 바로 피파온라인3의 도우미 어플이었다. 나도 피파온라인3를 즐겨했고 형도 즐겨했다. 내가 피파온라인3를 즐겨했던 이유는 축구게임을 좋아해서가 아니라 사실 카드를 강화하는 매력 때문이었다. 저렴한 카드를 구입해서 강화하는 재미. 나는 피파온라인3를 축구보다 강화 때문에 한다는 사실을 알아차리고 강화만 하는 웹게임을 만들어 보았었다. 그 이름은 '강화의 전설'. 어렸을 때 나는 게임 노가다는 하기 싫고 강화해서 장비만 맞추고 싶다는 생각을 기반으로 자동 노가다 + 강화 웹게임을 만들었다. 물론 디자인은 조악하기 그지없고 버그는 많았다. 지금도 찾아보면 버그 투성이 일 것이다. 그래도 가아아아끔씩 찾아주는 유저분들이 계셔서 서버를 유지하고 있다. 나름 장수게임이다.

 어쨌든 형이 제안한 도우미는 피파온라인3에서 강화 장사라는 영역이 있는데 +1 강화 카드와 +5 강화 카드의 시세차가 큰 카드들을 골라서 알려주는 앱이라고 했다. 예를 들어 +1 강화 카드는 10만이고 +5 강화 카드는 200만이라고 했을 때 확률상 +5 강화 카드를 만들기 위해 +1 강화 카드가 20장 이상 소모되지 않는다면 이익이라는 것이다. 이런 꼼수의 영역을 강화 장사라고 했다. 나는 강화를 재미로 했지 게임머니를 벌기 위한 수단으로 사용하지 않았기 때문에 신선했다. 하지만 이런 카드를 찾기 위해서는 피파온라인3 게임 내에서 카드 시세 정보를 지속적으로 살펴보아야 했고 이 노가다가 심각한 수준이라고 했다. 이 정보들을 받아와서 시세차익이 큰 순서대로 유저들에게 알려준다면 인기를 끌 것이라고 했다. 생각해보니 나라도 이 앱을 쓸 것 같았다. 형은 거기에 덧붙여서 수수료 계산기, 세레모니 애니메이션과 커맨드 키를 제공하고 더 이상 생성이 되지 않는 카드들의 정보를 쉽게 검색하는 기능, 커뮤니티 기능 등등을 다 제공해서 피파온라인3의 도우미 앱을 만들자고 했다. 형은 이미 구체화를 해놓아서 나는 그대로 개발만 하면 되었다. 수익은 5:5. 개발은 내가 맡고 개발을 제외한 다른 영역들은 형이 맡기로 했다. 이 때는 내가 군대를 전역하고 1달이 지난 시점이었기 때문에 큰 열정을 갖고 하고 싶었다. 바로 Yes를 했고 개발에 착수했다.


2017년 1월 19일 목요일

 개발 착수 1일 차. 우선 피파온라인3의 선수 정보를 얻어와야 했다. 지속적으로 정보를 받아야 하기 때문에 서버가 필요했다. 다른 서버에서 정보를 긁어오는 크롤링이라는 것을 해야 하는데 파이썬이라는 언어를 이용해서 해보기로 했다. 


2017년 1월 20일 금요일

 파이썬이라는 언어를 이용해서 크롤링을 하려고 했는데 뜻대로 되지 않았다. 마침 주로 사용하는 cafe24에 node js호스팅이 있는 것을 봤다. 노드라는 언어로 갈아타기로 했다. 이번엔 잘 돼야 할 텐데...


2017년 1월 21일 토요일

첫 크롤링 스샷

 드디어 정보를 긁어왔다. 형에게 보냈던 스크린샷을 보니 통신사가 SMART로 나타났다. 해외여행 중에 진행을 했던 것이다. 지금 와서 생각해보니 열정이 대단했다. 피파온라인3 서버에 부담을 주면 차단을 당할까 봐 1초에 1개의 선수 정보를 긁어왔다.


2017년 1월 25일 수요일

 피파온라인3는 팀이 어떻게 짜여있느냐에 따라 부가 능력치를 받는다. 그런 가상의 팀을 짜보는 기능을 넣고자 했지만 그렇게 된다면 개발 시간이 너무 길어질 것 같아 내려놓기로 했다. 다시 형과 만나서 개발한 내용과 진행 상황을 공유했다. 유저들이 늘어나서 접속자 수가 많다는 김칫국을 들이켜보니, cafe24 호스팅 특성상 일정 트래픽(접속량)을 넘어버리면 그날은 다시 접속할 수가 없었다. 아직 덜 익은 김칫국이었고 결국 이날 처음으로 아마존 웹서비스를 만져보았다. 아마존 웹서비스에는 1년간 무료로 사용할 수 있는 프리티어가 있다고 했다. 내 비자 정보를 인질로 주니 정말로 1년간 무료로 사용할 수 있는 권리는 주었다. 물론 한계는 있었지만... 사용량이 늘어나면 자동으로 서버를 늘려주는 오토스케일링 서비스를 이용해 트래픽에 대응하기로 했다. 이제 김칫국이 좀 익어가기 시작했다.


2017년 1월 31일 화요일

피파3헬퍼의 아이콘

 게임 도우미라는 앱의 정체성에 걸맞게 강화 포인트 사용량, 레벨별 보상, 레벨별 업적 보상과 같은 정보들을 정리를 했다. 다시 형과 만나서 앱 아이콘을 정하고 진행상황을 공유했다. 나는 지속적으로 안드로이드 앱을 개발했고 아마존 웹서비스 서버에서 정보를 얻어와 유저가 원하는 선수 정보를 필터 해주는 기능 및 다른 기능들도 차차 완료가 되었다. 선수 정보 필터를 어느 수준까지 해줄 것이냐는 쟁점이 있었다. 한번 노출된 선수는 가린다거나 계속 랜덤으로 노출시켜준다거나 의견은 많았지만 결국 랜덤으로 하기로 했다. 가장 가성비가 좋은 선수들만 보여주면 피파온라인3에서 해당 선수들은 매물이 바로 없어지지 않을까 하는 생각 때문이었다. 아마존 웹서비스 서버에 수수료 계산기, 세레모니 애니메이션 + 커맨드, 생성 제한 선수 검색 기능 등을 모두 넣었다.


2017년 2월 1일 수요일

 드디어 광고 테스트 코드를 앱에 삽입했다. 광고는 구글 애드몹을 사용했다. 전면광고와 선수 정보들 사이에 광고를 노출하기로 했다. 어디 광고를 탑재할지는 내가 정하지 않았다. 개발을 제외한 다른 분야를 형이 맡기로 했기 때문이다. 애드몹이 연동되었고 페이지 뷰까지 확인했다. 그리고 앱과 서버를 연동을 했고 드디어 피파3헬퍼 앱을 출시했다. 친구들에게 강제로 테스터가 되어달라고 했고 광고가 너무 공격적이라는 피드백을 얻어 출시한 지 몇 시간 만에 첫 업데이트를 강행했다. 광고를 덜 공격적으로 배치했다.


2017년 2월 4일 토요일

 형이 직접 앱을 사용하여 피파온라인3를 즐겨보니 부족한 부분을 찾아냈다. 랜덤으로 보여주던 선수들이 큰 도움이 안 된 것이다. 필터 기능을 하나 더 추가하기로 했다. 다운로드 수는 34였다.


2017년 2월 5일 일요일

  다운로드 수는 51이었다. 삭제수가 생각보다 많았고 필터를 우여곡절 끝에 추가했는데, 이때 출시 이후 첫 실수를 저질렀다. 바로 아마존 웹서비스를 스탑을 눌렀는데 아마존 웹서비스에서는 Stop = Terminate 였던 것이다. 지금은 Terminate 실수 클릭 방지를 항상 활성화하지만 그때는 몰랐다. 결국 서버의 주소가 바뀌어버렸고 도메인을 넣을 생각을 못했던 나는 다시 도메인과 고정 ip를 신청하여 이런 실수의 재발을 방지했다. 또 서버를 날릴 까 봐 백업하는 기능도 추가했다. 소 잃고 외양간 고친 격이지만 이 이후로 서버를 날리지는 않았다. 스스로 참 교육을 시켜줬다. 친구들과 맥주를 마시고 있었지만 나는 이야기에 끼지 못하고 계속 노트북만 보고 있었다. 우여곡절 끝에 다시 복구를 했고 유저들은 필수로 업데이트를 해야만 사용이 가능했다. 유저들은 업데이트를 하던 안 하던 기능을 사용할 수 있어야 한다는 개념이 생겼다. 호환성이라고 해야 할까. 어쨌든 유저들에게 업데이트는 기능추가지 '사용하려면 필수로 받아야 한다'가 되어선 안된다는 개념이 생겼다.


2017년 2월 7일 화요일

 피파온라인3 서버가 점검을 실시했다. 출시 후 첫 점검인데 나는 서버 cpu 사용량이 0이라서 뭔가 잘못된 줄 알았다. 역시 어느 개발이던지 테스트 코드가 중요하다.


2017년 2월 11일 토요일

 형이 심각하게 혹시 지금 광고 코드가 테스트 코드인지 물었다. 출시를 했기에 테스트 모드를 해제하고 출시를 했었다. 다시 확인해보니 출시 모드가 맞았다. 사용자 설치 수는 134, 제거 수는 43으로 활성 사용자 수는 91이었다. 하지만 광고 페이지 뷰 대비 수익이 적었다. 그래서 구글 파이어 베이스 애널리틱스를 추가하여 문제를 파악하기로 했다.


2017년 2월 22일 수요일

 선수 카드가 13만 개로 너무 많아서 1초에 1개씩 정보를 받아오니 하루가 지나도 모든 선수가 1번씩 업데이트 되지 않는 문제를 발견했다. 앱에서 보고 실제로 검색을 해보니 가격정보가 다르다는 것이었다. 그래서 가격이 너무 낮은 선수들은 더 이상 정보를 받아오지 않기로 했다. 그렇게 우선적으로 가격 필터링을 하니 1/5로 선수 카드 수가 줄어들었고 하루에 2~3번 정도 선수 정보 업데이트가 가능해졌다.


2017년 2월 23일 목요일

맨 밑에 살짝 보이는 저것이다.

 드디어 플레이스토어에 피온3라고 검색했을 때 맨 밑에 반 정도 뜨기 시작했다. 순위가 점점 오르기 시작했다.


2017년 2월 24일 금요일

 애널리틱스를 살펴보니 하루에 1천 뷰를 돌파하기 시작했고 앱 다운로드 수는 2300을 돌파했다. 일 다운로드 수는 300을 돌파하기 시작했고 검색창에 피온3를 검색하니 5번째까지 올라갔다.


2017년 2월 28일 화요일

 다시 형을 만나서 미루고미루고 미뤄두었던 세레모니 애니메이션을 추가했다. 그리고 앱 전반적인 디자인을 수정했다. 그리고 아이폰 유저들을 위한 앱을 이야기했다. 마침 나는 맥 유저였고 iOS 개발 툴인 Xcode를 만져보고 싶었다.


2017년 3월 1일 수요일

 아이폰 유저들을 위한 앱에 광고를 달지 1.09달러로 판매할지에 대한 쟁점이 있었다. 뭔가 판매를 하려면 그만한 값어치를 해야 하는데 스스로 자신이 없었는지 그냥 광고를 삽입하기로 했다. 그리고 Xcode로 하려던 생각을 크로스 플랫폼인 Xamarin(자마린)으로 해보기로 했다. 


2017년 3월 3일 금요일

 기능들을 모두 추가했고 광고를 추가해야 했다. 자마린을 이용해 구글 애드몹 광고를 삽입하려고 하는데 자마린은 C#이라는 언어 기반이기 때문에 NuGet이라는 패키지를 이용할 수 있다. 애드몹 NuGet을 추가해서 사용하려는데 오랜 시간 투자했지만 되지 않았고 구글을 뒤져보니 외국 블로거가 지금 자마린 애드몹 되는 툴이 없다는 글을 쓴 것을 봤고 전의를 상실하여 유료로 출시해버리기로 했다. 애플 개발자 등록을 했다. 99달러였는데 한국 원화로는 129000원이었다.


2017년 3월 4일 토요일

  애플 개발자 등록비용 129000원을 지불했고 2일 동안 취소할 시간을 줬다. 그 사이에 취소하면 없었던 일이고 2일이 지나면 개발자 계정은 활성화가 된다고 했다. 안드로이드 앱은 5000 다운로드를 돌파했고 리뷰는 극찬으로 가득했다. 그중에 눈에 띄는 리뷰가 있었는데, 이익이 나는 선수는 한정되어있어서 결국 이 앱을 쓰는 사용자들끼리 서로 손해를 보고 정보가 열려있는 경우는 모든 구성원이 손해를 보는 구조의 단적인 예라고 했다. 상당한 통찰의 리뷰였다. 이 때문에 선수들을 랜덤으로 보여준 것이었는데 결국은 몰리게 되어있던 것이다. 하지만 우리는 이미 앱을 출시했고 이 부작용 때문에 앱을 출시 취소하기에는 너무 아까웠다. 


2017년 3월 10일 금요일

 애플에 앱 심사를 넣었다. 보기 좋게 거절당했다. 바로 피파 저작권 침해의 소지가 있기 때문이었다. 생각해보니 맞는 말이었다. iOS 앱에서 피파온라인3 관련한 어플이 없는 이유가 여기 있었다. 안드로이드 플레이스토어에는 피파온라인3 관련한 어플이 많았지만 iOS는 내가 못 찾는 건지 존재하지 않았다. 그 이유를 이제야 알았다.


2017년 3월 18일 토요일

 9100 다운로드를 돌파했다. 곧 1만 다운로드라는 부푼 희망을 가졌다. 광고에서도 수익이 나니 기분이 좋았다.


2017년 3월 19일 일요일

 희망을 가지자마자 서버에 문제가 생겼다. 일부 선수는 검색이 되고 일부 선수는 검색이 되지 않았다. 하필이면 메인 선수들이 검색이 안되고 있었다. 생각보다 간단한 문제였고 별 어려움 없이 해결했다.


2017년 3월 27일 월요일

 첫 서버비 정산을 했다. 프리티어로 사용하고 있었지만 어떤 기능들은 유료였고 어떤 기능은 무료 사용량을 넘어섰기 때문에 비용을 내야 했다.


2017년 4월 2일 일요일

 피파온라인3 선수가 업데이트되었다. 생성 제한 선수가 추가되고 생성 제한이 풀린 선수들이 생겼다. 레벨업 보상이 달라졌고 이벤트 선수들이 생겼다. 첫 선수 업데이트 치고 별 우여곡절이 있지는 않았다.


2017년 7월 1일 토요일

 오랜만에 아마존 웹서비스에 접속해서 서버비를 확인했다. 평소와는 눈에 띄게 서버비가 많이 나왔다. 어디서 이렇게 많이 나오나 분석을 해보니 세레모니 애니메이션에서 엄청난 트래픽이 발생했다. 물론 광고수익보다 서버비가 많이 나온 것은 아니었지만 그래도 줄일 수 있는 비용은 줄이는 것이 좋지 않겠는가?


2017년 7월 14일 금요일

 다시 한번 아마존에 접속해서 트래픽을 확인하니 엄청났다. 정상적인 사용으로는 나타날 수 없는 수치였다. DDOS 공격을 받았나 생각했는데 그런 징후는 아닌 것 같았고 엄청난 서버도 아닌데 공격을 당할 리도 없었다. 결국 세레모니 애니메이션은 imgur라는 사이트를 이용해 트래픽을 줄였다. 이 이후로 저렇게 엄청난 트래픽은 나타나지 않았다. 서버비도 상당량 줄어들었다. 진작에 했어야 하는데 치킨 몇 마리를 날렸는지 모르겠다.


2017년 8월 10일 목요일

 구글 애드몹 광고 단가가 엄청나게 낮아졌다. 뷰는 꾸준하게 있었지만 수익이 좀처럼 나지 않았다. 하지만 조치할 수 있는 건 딱히 생각나지 않았다.


2017년 8월 15일 화요일

 페이지 뷰가 현저하게 떨어졌다. 미리 알아챘어야 하는데 마이너 업데이트를 하면서 문제가 생겼다. 매번 테스트를 철저하게 해야 하는데 안일한 생각에 이런 사달이 난 것이다. 결국 롤백을 했고 문제는 해결되었지만 또다시 실수를 하고 말았다.


2017년 9월 5일 화요일

 업데이트가 많이 밀렸다. 즉각 즉각 대응했어야 하는데 학교 수업에 치여 생각조차 못하고 있었다. 결국 날 잡고 한 번에 다 하기로 했다. 이제 선수 업데이트는 주기적인 행사가 되었고 따로 서버에 프로세스를 만들어 두어 업데이트를 할 때는 손쉽게 할 수 있게 만들었다.


2017년 9월 8일 금요일

 지난 9월 5일 업데이트에 선수 시즌이 새로 추가되어 앱도 업데이트를 했는데 그 업데이트에서 문제가 발생했다. 지원하는 기기를 내가 대폭 줄여버린 것이다. 앱을 개발할 때 내부 프로그램의 버전을 내 임의대로 올려버렸는데 그 문제가 앱 충돌을 일으켜 일부 기기에서 아예 켜지지도 않는 문제가 발생한 것이다. 항상 코드를 만질 때는 이걸 바꿨을 때 어떤 일이 일어날지를 예측하고 해야 하는데 나는 그러지 못했다. 독학의 문제라고 할 수 있다. 기초가 탄탄하지 않기 때문에 이런 예측 능력이 떨어진다. 결국 또 롤백을 해버렸다.


2017년 9월 9일 토요일

 광고 단가 문제도 있고 롤백한 것도 있고 같이 해결을 하기 위해 노력을 했다. 기존 광고를 지우고 배너광고를 새로 추가했다. 기존에 있던 버전을 올려버린 것도 원래대로 되돌렸다. 다시 앱이 정상화되었다.


2017년 9월 24일 일요일

 구글 애드몹 계정이 정지당했다. 이유는 알려주지 않았다. 이제 더 이상 이 앱에서 수익은 나오지 않았다. 다른 애드몹 계정을 새로 만들어서 옮기는 작업을 하기로 했다.


2017년 10월 13일 금요일

 아무리 시도해도 새로운 계정으로 광고는 달 수 없었다. 서버비는 계속 나가는 상황이었기 때문에 새로운 수익을 창출해야 했다. 예전에 리뷰에서도 말했듯이 정보가 공개되면 모두가 손해를 본다는 점에서 유료화를 해보는 것이 어떨까 했지만 유저들이 10만이 넘어가는 상황이었기 때문에 공지사항을 남기고 투표를 하기로 했다. 1안은 앱 유료화였고 2안은 시즌2 앱을 출시하여 새로 다운로드를 하는 방식이었다. 새로 앱을 만들게 되면 광고를 새로 달 수 있기 때문이다. 투표 결과 결국 시즌2 앱을 새로 출시하기로 했다.


2017년 11월 4일 토요일

 새로 시즌2 앱을 출시하려 했으나 저작권 관련하여 앱이 거절당했다. 결국 시즌2 앱은 무산되었다. 앱을 폐쇄할까도 고민을 많이 했다. 서버비가 계속 나가는 실정이었기 때문이다.


2017년 11월 7일 화요일

 이런 상황에 마침 제휴문의가 와서 제휴를 하게 되었다. 이와 동시에 애드몹이 아닌 다른 광고사를 이용하기로 했다. 뷰 수에 따라 수익이 적긴 하지만 없는 것보다는 나았고 서버 비만 벌어도 중간은 간다는 생각으로 진행했다. 


2017년 11월 9일 목요일

 이제 피파온라인3가 서버 종료되고 피파온라인4가 새로 출시한다는 사실이 와 닿기 시작했다. 새로 만들면 그만이었지만 피파온라인4가 어떤 방식으로 운영될지는 미지수였기 때문에 앱과의 이별을 준비하기 시작했다.


2017년 12월 2일 토요일

 또다시 선수 업데이트를 진행했다. 이 때는 다행히 서버비를 충당할 만큼 광고수익도 나고 있었다.


2018년 2월 8일 목요일

 유저로부터 메일이 한통 왔다. 앱이 작동하지 않는다는 메일이었다. 확인을 해보니 진짜 작동을 하고 있지 않았다. 확인해보니 10일 전인 1월 29일부터 업데이트가 안 되고 있었다. 문제를 확인해보니 크롤링 서버가 더 이상 피파온라인3 서버로부터 정보를 받지 못했다. 내 수준에서 해결 할 수 있는 문제가 아닌 듯 했다. 설사 해결 할 수 있다고 해도 그 시간을 투자할 가치가 있는지 생각해보니 그렇지 않았다. 그리고 아마존 웹서비스 프리티어는 끝났다. 피파온라인3는 서비스 종료가 확정되었고 5~6월에는 피파온라인4가 출시된다고 했다. 이제 끝물을 향해 달리고 있었다.


2018년 2월 17일 토요일

 더 이상 크롤링 서버는 동작하지 않았고 비싼 서버비를 내기에는 유저가 급감하고 있었다. 따라서 서버를 저렴한 호스팅 서버로 옮기고 선수 정보를 필터 해주는 기능을 없애기로 했다. 껍데기만 남은 앱이라고 봐도 무방했다. 커뮤니티와 수수료 계산기 등만 작동하게 되었다. 이제 더 이상 손 볼 수도 손을 볼 곳도 없었다.


2018년 5월 17일에 피파온라인4가 정식으로 오픈한다. 나름 서비스 비슷하게 만들어본 첫 앱이었기에 정이 많이 갔지만 이제 끝이라는 게 시원섭섭한 기분이다. 올해까지는 앱을 유지할 생각이며 플레이스토어에서 피파3헬퍼를 검색하면 이용할 수 있다. 물론 5월 17일이 지나면 실용적인 기능은 단 하나도 남지 않는다.


앱 리뷰에 답글을 작성하면서 어떤 분들은 욕설까지 포함해서 불쾌하다는 분들도 계셨고 진심으로 칭찬해주고 응원해주시는 분들도 계셨다. 저렇게 불특정 다수에게 의견을 들어보기는 처음이라 그런지 칭찬은 너무 기분이 좋았고 불만은 어떤 것들은 이해가 가고 어떤 것들은 이해가 가지 않았다. 내가 쓴 글이 상대방이 누군지 몰라도 기분을 좌우할 수 있다는 것을 느꼈고 나중에 진짜 서비스를 만들었을 때 어떻게 해야겠다는 가치관 아닌 가치관이 생긴 경험이었다.


나는 전문가가 아니고 여기저기 주워 읽은 지식으로 프로젝트들을 진행하기에 틀린 부분이 많을 텐데 일기처럼 작성했기에 굳이 필터를 켜지 않아도 되겠지만 그래도 끄는 것보다는 필터를 켜고 읽으셨기를 바라면서 글을 마치겠다.

작가의 이전글 드론에 관하여
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari