SlideShare una empresa de Scribd logo
1 de 57
Descargar para leer sin conexión
에어헌터 for kakao 포스트모템
위메이드 엔터테인먼트
최우영
2013.07.15 온라인 서버 개발자 모임
들어가기 전에
• 비공식, 개인 회고 포스트모템입니다.
• 회사의 견해와 다를 수 있습니다.
• 실제 발표 슬라이드와 다른 배포용 편집본입니다.
게임 소개
에어헌터 for kakao
에어헌터 for kakao
모르는 분 많으시죠?
에어헌터 for kakao
• 2013년 위메이드 엔터테인먼트에서 자체 개발한 모바일 슈팅 게임
• 카카오톡 플랫폼
• 전통적인 슈팅 게임의 재미 구현
• 기체 강화
• 이어하기
• 편대 전투
보스전이 준비되어 있어요
슈팅게임의 재미가 그대로!
제작 과정
• 개발 기간 6개월
• 개발 스텝 초기 5명
• 런칭시 약 40명
• 라이브팀 10여명
• 유니티 + C#
• Asp.NET + NoSQL
왜 하필 슈팅인가요?
• 때는 2012년 10월
• 저 슈팅 게임 좋아합니다
2012년 10월 마켓
• 모바일 게임의 신흥 강자 드래곤 플라이트!
• 당시 추정 일매출 3억
• (그것도 1인 개발자라는 소문)
프로젝트 시작
이제부터 고난 시작
만들고 싶었던 것
• (테스팅 겸 처음 만드는 모바일이니까)
• 캐주얼 유저는 버리고 간다(는 마음으로)
• 하드코어 탄막 슈팅!
• 화면에 총알이 무지 많이 나오고 플레이어는 신컨으로 피해야해!
• 실제로는 피격 범위가 적어서 어렵지 않다.
동방 프로젝트
도돈파치 시리즈
실제로는
• 반복되는 스테이지 구성으로 레벨링
• 총알 개수가 많아져서 여러 번 반복하면 탄막계열이 됨
• 미들 코어 유저용 슈팅 게임
프로토타입의 함정(1)
• 불명확한 비전 제시 : XXX는 이렇던데
• 개발사의 자존심 : xxx와는 다른 재미
• 그럴거면 완전히 새로운 기획으로 가는 게 낫다
프로토타입의 함정(2)
• 빠른 이터레이션 = 프로토타이핑 필수
• 불안정한 기획과 게임 방향이 휙휙 바뀌는 환경
• 한 수 앞을 내다보는 기획이 필요하다
• 프로토 타이핑 과정도 개발 기간에 포함되니 문제가 됨
컨텐츠를 채워라
• 프로토타입 통과
• 제작 기간 준수를 위해 클라이언트 프로그래머 대량 투입
• 필요한 컨텐츠
– UI
– 빌링
– 상점
– 게임 컨텐츠 : 적기 패턴과 보스 등
• R&D: C#, UNITY
‘우린 MMORPG 만든다고 왔는데
왜 슈팅을 만들어야 해?
그것도 유니티에 C#으로?’
(라는 불만이 있었습니다)
불만 제거
• 시간이 약..
– 팀 내에 꼭 해야하는 분위기가 조성됐고
– 하다보니 재미 붙여서 다들 작업했어요
– 국내 게임판 자체도 모바일로 돌아가기 시작했고요
• 작은 작업부터 시작
• R&D 할 수 있도록 여유 시간 배정
• 결과적으로 독립된 컴포넌트 개발 방식(유니티랑 잘 맞았다)
후반부 작업 러시
• UI는 지속적으로 개편(출시전까지 계속 수정! 정말 힘들었어요)
• 서버제작과 운영툴, 로그(꼭 런칭 1~2주전에 다량으로 쏟아짐)
• 사운드 투입
– 이 안에 스파이가 있다!(사운드 하나에 게임성이 확 바뀜)
• 사업팀 투입
– 카톡 게임 요소(SNG)
– 편대 : 점수대결, 2인 대결, 이어하기 등 여러 의견
결국 런칭!
아쉬웠던 점
개발 과정
• 테스팅 기기와 개발 도구의 지원 미흡
– 각종 모바일 기기, iOS 및 개발자 라이선스와 배포 권한
– 좀 더 iOS 배포와 테스팅을 빨리 했으면 좋았을 것
– 런칭하고 갤S2에서 네트웍 문제가 자주 발생했는데, 갤S2는 테스팅폰으로
구할 수가 없었어요. 단종됐데요.
• C#과 유니티 숙달자 부족
– 틈틈히 트랜드를 파악하며 유연해질 수 있는 능력이 중요
– 둘 중 하나라도…
• iOS, Android 플랫폼 지식 부족
– 빌링, 플러그인을 위해서는 결국 플랫폼 지식 필요
• 독립된 테스팅 환경 구축
– 개발, 알파, 베타, 심사용, 서비스 망 등의 테스팅 환경 선 구축
• 불편한 UI
– UI도 UX도 모두 불편
– 공통 UI 컨트롤의 필요성(개발자가 임의로 다이얼로그 테스팅하기 편하게)
• 조작 편의성
– 왼손, 오른손 잡이, 색약
• 기체 볼륨 보다는 정교한 레벨링
– 레벨링에 신경을 더 썼다면 더욱 좋은 게임이 되었을 것
• 반복되는 게임 플레이 구성의 변화
• 기획 문서 부재
– 문서화 보다 말로…
– 업데이트 속도가 너무 늦음
– QA, 사업팀과 협업하기 위해서는 기획문서 필수
• 스토리 부재
– 대체 내가 누구를 지키기 위해 출격하는거야?
• 모노 디벨롭과 비주얼 스튜디오 개발환경 혼재(한글 주석과 엔코딩)
• 자바 환경 일치(1.7에서 사인키 버그 있어서 1.6으로 통일)
런칭 후
• 실서버 모니터링 불가
– 성능 측정 지표 부재(매출, 난이도 곡선, 성능 문제 등)
• 광고 스팟 부재
– 로그인 화면, 광고판, 게임 내 광고 가능한 요소들
• 클라이언트 로그 부재
– 재접속률, 플레이 시간 등 클라이언트에서 모아서 전송
• 긴급 패치 위해서 개발팀 집에 못 가요
– 런칭 하루 전 잉여 인력.. 필수!
잘한 점
몇 개 안 되는 잘한 점
• 편대
• S펜 지원
• 보안 대응
• 유니티로 개발하기
• 카카오 플랫폼 이용하기
편대
• 타 게임과 차별 요소
– 거리나 비행 시간 요소는 어울리지 않음
• 단순 점수 비교지만 멀티 느낌이 남
– 마피아 워즈를 생각해보세요
• 조금 더 다듬었으면 하는 아쉬움
– 경쟁심 생기도록 다이나믹한 요소
– 보상 요소(너무 적다고 해요)
S펜 지원
• 갤럭시 노트 시리즈는 펜 탑재
• 개발팀에서도, 지인들도 펜 지원 요구
• 노트1 펜보다 노트2 펜이 인식률이 좋다
• 유니티 3.5버전은 기본 S펜 지원이 안됨
• 자바로 간단하게 이벤트 처리
로컬 치팅 방어
• 변화된 변수를 추적하는 앱이 존재
– 4바이트 단위로 값의 일치, 변화를 추적
• 각종 커뮤니티 사이트 검색
– 결크, 돈벅, 버그 등으로 검색하면 됩니다
– 별의 별 방법 등장
• 게임 DLL을 변조하는 경우에는 이 방법으로는 어려움
– CS 팀에서 처리
유니티로 개발하기
• 때마침 유니티의 인기 급상승(자료 구하기가 쉬웠어요)
• 3D 인력이 많아서 3D 오브젝트를 올리는데 유리
• 크로스 플랫폼!
– 결국 iOS와 Android는 다 알고 있어야 작업 가능
– 그래도 따로 포팅해서 옮기는 것 보다는 훨씬 편함
– 카카오는 무조건 iOS, Android 동시 출시!
• 닷넷이라 난독화 하셔야 합니다
– 난독화와 SendMessage – Trade off
카카오 플랫폼
• 카카오의 위력
– 에어헌터 100만 돌파 보름(Android)
– 퍼즐앤드래곤 100만 돌파 200일
– 밀리언아서 100만 돌파 약 100일
– 여전히 카카오 게임이 상위권 절대 다수 차지
어제의 마켓 상황(최고매출)
어제의 마켓 상황(최고매출)
10위 카톡 빼고 죄다 카톡게임
배운 점과 느낀 점
애플의 함정
• 하트 보내기 불가
– 재화 선물 불가
– 문의 엄청 들어와요
• iPhone5 대응
– 게임 컨텐츠로 채워야함
• 리뷰 대기 기간이 길다
• 심사가 객관적이라는 느낌은 잘 안든다
서버는 죽어도 클라는 죽어선 안된다
• 유니티의 특징
– Android는 예외가 떨어져도 Catch가 된다
– iOS는 예외가 떨어지면 Crash가 된다
• 패치 기간이 길다
– Android는 1~3일
– iOS는 대략 3~7일 정도 걸림
서버에서 제어하기
• 각종 할인, 점수 이벤트
• 상점 가격과 항목 제어
• 쿠폰이나 선물
• 푸시 메세지
실시간 패치
• 용량에 따라서 개발사가 선택하면 됨
• 에어헌터는 20MB라서 전체 다운로드를 선택
• 결과적으로 패치 때마다 인기 순위 상승!
패치 이슈
• 런칭 후 빠른 속도로 업데이트 상황 발생
– 버그 패치
– 각종 기기 문제
• 문제는 Android와 iOS의 패치 일정 문제
– iOS의 경우 패치가 느려서 Android와 버전 차이가 발생한다
– 방법은 iOS를 버리고 가거나 iOS에 맞춰서 가거나.
최적화 이슈(1)
• 메모리 풀
– 튀는 것을 없애는데 도움이 됨
• 3D 데이터 경량화
– 로우 폴리곤(폴리곤 줄이는게 킹왕짱)
• 모바일 Shader
– float(4바이트) 말고 fixed(1바이트)나 half(2바이트) 같은 자료형 이용
최적화 이슈(2)
• 이펙트
– 유니티 이펙트(슈리켄)는 드로우콜에 도움이 안됨
• 사운드
– 모노, 해상도 축소
푸시
• 이벤트나 알림을 푸시로 처리
• 운영툴에서 푸시 메시지를 실시간 변경가능하도록 제작
• 몇 십만, 몇 백만 사용자에게 서버가 푸시하는 시간이 오래걸릴 수
있다
– 최악의 경우 한 밤 중에 받게 된다.
– 이미 이벤트 끝난 경우에 받기도..
– 가끔 푸시 하다가 죽기도 한다
– 반드시 성능 측정과 테스트가 필요함
퍼블리셔
• 위메이드는 국내 대형 퍼블리셔
• 장점
– CS 지원(좀 느리지만)
– 홍보(강추)
• 크로스 마켓팅 – 막강. 게임과의 제휴 이벤트 – 윈드런너가 짱임
• 지하철 광고 – 폼나요… 지인에게 자랑하기 좋음
• 위미 관련 광고 – 런칭시 유리
– 런칭 전부터 관심 끌기 좋아요
– ‘에어헌터 곧 출시!’ 하면 댓글에 ‘와우 재밌어보여요! 근데 윈드런너 업데이트 언제함?’ 이
런 댓글 달려요
서버, 무엇으로 만들어야 하나
• 최근 웹서버 뿐만 아니라 TCP를 이용해서 제작
• 웹서버는 분산에 확실히 편함
• 클라이언트 언어랑 맞추면 프로토콜 등의 작업이 편함
– 유니티 + C# & Asp.NET
– 유니티 + JavaScript & Node.JS
– 코코스 + C++ & C++ 서버
• 개발 기간이 짧고 웹에 익숙하지 않다면 있는 거 쓰세요
매출(1)
매출(1)
• 적당히 벌고 아주 잘살자는 불가능
– 착한 부분유료화로 이야기되는 타 게임 수입원
• LoL : 스킨, 룬, 캐릭터
– 퍼즐앤 드래곤은 과금 구조가 단순
• 가챠, 스태미너 보충, 이어하기, 보유칸 늘리기
• 최대한 벌고 아주 잘살자가 우리네 현실
• 따라서 초기에 사업부와 미팅 필수
매출(2)
• 소인원이 유리한 구조
• 이래저래 기본 50%~80%는 비용
– 마켓 30%
– 카카오 20%
– 퍼블리싱 및 서버 운용 비용 20%~30%
– 지속적으로 서버 유지비…
• 그래서 40명에 육박한 우리팀은 인센이…
결론
결론
• 게임이 재미있거나 충실하게 만들어졌다면 미들코어도 충분히 가능
• 따라하기는 개발자가 정신적으로 힘들다
• 크로스플랫폼이 가능한 엔진 선택, 플랫폼 지식도 필수
• 대박 혹은 인센을 위해서는 소인원으로 개발
• 여전히 국내의 카카오 영향력은 막강하다
• 가끔 PC방이 아닌 지하철에서 유저들을 보면 신기하다
• 모바일 개발은 역시 경험이 중요하다
감사합니다
http://www.wychoe.net
@whoo24

Más contenido relacionado

La actualidad más candente

[NDC14] 모바일 게임의 다음 혁신 - 야생의 땅 듀랑고의 계산 프로세스 중심 게임 디자인
[NDC14] 모바일 게임의 다음 혁신 - 야생의 땅 듀랑고의 계산 프로세스 중심 게임 디자인[NDC14] 모바일 게임의 다음 혁신 - 야생의 땅 듀랑고의 계산 프로세스 중심 게임 디자인
[NDC14] 모바일 게임의 다음 혁신 - 야생의 땅 듀랑고의 계산 프로세스 중심 게임 디자인승명 양
 
이희영, 글로벌 원빌드 모바일 게임 런칭과 라이브 개발, NDC2016
이희영, 글로벌 원빌드 모바일 게임 런칭과 라이브 개발, NDC2016이희영, 글로벌 원빌드 모바일 게임 런칭과 라이브 개발, NDC2016
이희영, 글로벌 원빌드 모바일 게임 런칭과 라이브 개발, NDC2016devCAT Studio, NEXON
 
Next 게임 실전 프로젝트 슬라이드
Next 게임 실전 프로젝트 슬라이드Next 게임 실전 프로젝트 슬라이드
Next 게임 실전 프로젝트 슬라이드Nam Hyeonuk
 
[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)
[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)
[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)GAMENEXT Works
 
[IGC 2016] 띵소프트 이득규 - 삼국지조조전 Online L10N 개발 Case Study
[IGC 2016] 띵소프트 이득규 - 삼국지조조전 Online L10N 개발 Case Study[IGC 2016] 띵소프트 이득규 - 삼국지조조전 Online L10N 개발 Case Study
[IGC 2016] 띵소프트 이득규 - 삼국지조조전 Online L10N 개발 Case Study강 민우
 
[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들
[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들
[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들MinGeun Park
 
[NHN NEXT]실전프로젝트 밴드 게임 만들기 후기
[NHN NEXT]실전프로젝트 밴드 게임 만들기 후기[NHN NEXT]실전프로젝트 밴드 게임 만들기 후기
[NHN NEXT]실전프로젝트 밴드 게임 만들기 후기flashscope
 
김대원 포트폴리오
김대원 포트폴리오김대원 포트폴리오
김대원 포트폴리오대원 김
 
[IGC 2016] 컴투스 이상훈 - 서머너즈워 글로벌 성공 전략 : 3가지 사업 키워드
[IGC 2016] 컴투스 이상훈 - 서머너즈워 글로벌 성공 전략 : 3가지 사업 키워드[IGC 2016] 컴투스 이상훈 - 서머너즈워 글로벌 성공 전략 : 3가지 사업 키워드
[IGC 2016] 컴투스 이상훈 - 서머너즈워 글로벌 성공 전략 : 3가지 사업 키워드강 민우
 
유니티, 언리얼4 교육 전문기관 스킬트리랩 소개서
유니티, 언리얼4 교육 전문기관 스킬트리랩 소개서유니티, 언리얼4 교육 전문기관 스킬트리랩 소개서
유니티, 언리얼4 교육 전문기관 스킬트리랩 소개서용호 김
 
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍NDOORS
 
[Kgc12] 게임 개발자 랩소디 박민근
[Kgc12] 게임 개발자 랩소디 박민근[Kgc12] 게임 개발자 랩소디 박민근
[Kgc12] 게임 개발자 랩소디 박민근MinGeun Park
 
[NDC17] Protocol:hyperspace Diver 개발 포스트모템
[NDC17] Protocol:hyperspace Diver 개발 포스트모템[NDC17] Protocol:hyperspace Diver 개발 포스트모템
[NDC17] Protocol:hyperspace Diver 개발 포스트모템Young Soo Kim
 
사설 서버를 막는 방법들 (프리섭, 더이상은 Naver)
사설 서버를 막는 방법들 (프리섭, 더이상은 Naver)사설 서버를 막는 방법들 (프리섭, 더이상은 Naver)
사설 서버를 막는 방법들 (프리섭, 더이상은 Naver)Seungmo Koo
 
버프 스튜디오 비전 공개용
버프 스튜디오 비전 공개용버프 스튜디오 비전 공개용
버프 스튜디오 비전 공개용Dohyoung Kim
 
NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들
NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들
NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들영욱 오
 
Unite 2015 Seoul : 인디에게 어디가 한계인지는 해봐야 알잖아?
Unite 2015 Seoul : 인디에게 어디가 한계인지는 해봐야 알잖아?Unite 2015 Seoul : 인디에게 어디가 한계인지는 해봐야 알잖아?
Unite 2015 Seoul : 인디에게 어디가 한계인지는 해봐야 알잖아?KwangSam Kim
 
[IGC 2017] 오토데스크 박준석 - 3ds Max 2018과 Shotgun을 이용한 게임 제작 Pipeline 소개
[IGC 2017] 오토데스크 박준석 - 3ds Max 2018과 Shotgun을 이용한 게임 제작 Pipeline 소개[IGC 2017] 오토데스크 박준석 - 3ds Max 2018과 Shotgun을 이용한 게임 제작 Pipeline 소개
[IGC 2017] 오토데스크 박준석 - 3ds Max 2018과 Shotgun을 이용한 게임 제작 Pipeline 소개강 민우
 

La actualidad más candente (20)

[NDC14] 모바일 게임의 다음 혁신 - 야생의 땅 듀랑고의 계산 프로세스 중심 게임 디자인
[NDC14] 모바일 게임의 다음 혁신 - 야생의 땅 듀랑고의 계산 프로세스 중심 게임 디자인[NDC14] 모바일 게임의 다음 혁신 - 야생의 땅 듀랑고의 계산 프로세스 중심 게임 디자인
[NDC14] 모바일 게임의 다음 혁신 - 야생의 땅 듀랑고의 계산 프로세스 중심 게임 디자인
 
이희영, 글로벌 원빌드 모바일 게임 런칭과 라이브 개발, NDC2016
이희영, 글로벌 원빌드 모바일 게임 런칭과 라이브 개발, NDC2016이희영, 글로벌 원빌드 모바일 게임 런칭과 라이브 개발, NDC2016
이희영, 글로벌 원빌드 모바일 게임 런칭과 라이브 개발, NDC2016
 
Wecanmakeengine
WecanmakeengineWecanmakeengine
Wecanmakeengine
 
Next 게임 실전 프로젝트 슬라이드
Next 게임 실전 프로젝트 슬라이드Next 게임 실전 프로젝트 슬라이드
Next 게임 실전 프로젝트 슬라이드
 
[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)
[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)
[GAMENEXT] 10년을 혈십자와 보내고.. (별바람 스튜디오)
 
[IGC 2016] 띵소프트 이득규 - 삼국지조조전 Online L10N 개발 Case Study
[IGC 2016] 띵소프트 이득규 - 삼국지조조전 Online L10N 개발 Case Study[IGC 2016] 띵소프트 이득규 - 삼국지조조전 Online L10N 개발 Case Study
[IGC 2016] 띵소프트 이득규 - 삼국지조조전 Online L10N 개발 Case Study
 
[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들
[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들
[KGC2011_박민근] 신입 게임 개발자가 알아야 할 것들
 
[NHN NEXT]실전프로젝트 밴드 게임 만들기 후기
[NHN NEXT]실전프로젝트 밴드 게임 만들기 후기[NHN NEXT]실전프로젝트 밴드 게임 만들기 후기
[NHN NEXT]실전프로젝트 밴드 게임 만들기 후기
 
김대원 포트폴리오
김대원 포트폴리오김대원 포트폴리오
김대원 포트폴리오
 
[IGC 2016] 컴투스 이상훈 - 서머너즈워 글로벌 성공 전략 : 3가지 사업 키워드
[IGC 2016] 컴투스 이상훈 - 서머너즈워 글로벌 성공 전략 : 3가지 사업 키워드[IGC 2016] 컴투스 이상훈 - 서머너즈워 글로벌 성공 전략 : 3가지 사업 키워드
[IGC 2016] 컴투스 이상훈 - 서머너즈워 글로벌 성공 전략 : 3가지 사업 키워드
 
유니티, 언리얼4 교육 전문기관 스킬트리랩 소개서
유니티, 언리얼4 교육 전문기관 스킬트리랩 소개서유니티, 언리얼4 교육 전문기관 스킬트리랩 소개서
유니티, 언리얼4 교육 전문기관 스킬트리랩 소개서
 
Visual shock vol.2
Visual shock   vol.2Visual shock   vol.2
Visual shock vol.2
 
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
 
[Kgc12] 게임 개발자 랩소디 박민근
[Kgc12] 게임 개발자 랩소디 박민근[Kgc12] 게임 개발자 랩소디 박민근
[Kgc12] 게임 개발자 랩소디 박민근
 
[NDC17] Protocol:hyperspace Diver 개발 포스트모템
[NDC17] Protocol:hyperspace Diver 개발 포스트모템[NDC17] Protocol:hyperspace Diver 개발 포스트모템
[NDC17] Protocol:hyperspace Diver 개발 포스트모템
 
사설 서버를 막는 방법들 (프리섭, 더이상은 Naver)
사설 서버를 막는 방법들 (프리섭, 더이상은 Naver)사설 서버를 막는 방법들 (프리섭, 더이상은 Naver)
사설 서버를 막는 방법들 (프리섭, 더이상은 Naver)
 
버프 스튜디오 비전 공개용
버프 스튜디오 비전 공개용버프 스튜디오 비전 공개용
버프 스튜디오 비전 공개용
 
NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들
NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들
NDC2017 언리얼엔진4 디버깅 101 - 게임 기획자, 프로그래머가 버그와 만났을 때 사용할 수 있는 지침들
 
Unite 2015 Seoul : 인디에게 어디가 한계인지는 해봐야 알잖아?
Unite 2015 Seoul : 인디에게 어디가 한계인지는 해봐야 알잖아?Unite 2015 Seoul : 인디에게 어디가 한계인지는 해봐야 알잖아?
Unite 2015 Seoul : 인디에게 어디가 한계인지는 해봐야 알잖아?
 
[IGC 2017] 오토데스크 박준석 - 3ds Max 2018과 Shotgun을 이용한 게임 제작 Pipeline 소개
[IGC 2017] 오토데스크 박준석 - 3ds Max 2018과 Shotgun을 이용한 게임 제작 Pipeline 소개[IGC 2017] 오토데스크 박준석 - 3ds Max 2018과 Shotgun을 이용한 게임 제작 Pipeline 소개
[IGC 2017] 오토데스크 박준석 - 3ds Max 2018과 Shotgun을 이용한 게임 제작 Pipeline 소개
 

Destacado

Tdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalabilityTdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalability흥배 최
 
Windows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCPWindows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCPSeungmo Koo
 
KGC10 - Visual C++10과 디버깅
KGC10 - Visual C++10과 디버깅KGC10 - Visual C++10과 디버깅
KGC10 - Visual C++10과 디버깅흥배 최
 
[KGC 2011]Boost 라이브러리와 C++11
[KGC 2011]Boost 라이브러리와 C++11[KGC 2011]Boost 라이브러리와 C++11
[KGC 2011]Boost 라이브러리와 C++11흥배 최
 
닷넷 Apache avro
닷넷 Apache avro닷넷 Apache avro
닷넷 Apache avro흥배 최
 
NET 최선단 기술에 의한 고성능 웹 애플리케이션
NET 최선단 기술에 의한 고성능 웹 애플리케이션NET 최선단 기술에 의한 고성능 웹 애플리케이션
NET 최선단 기술에 의한 고성능 웹 애플리케이션흥배 최
 
KGC2015_C# 스크립트를 사용한 게임서버 모니터링 시스템개발
KGC2015_C# 스크립트를 사용한 게임서버 모니터링 시스템개발KGC2015_C# 스크립트를 사용한 게임서버 모니터링 시스템개발
KGC2015_C# 스크립트를 사용한 게임서버 모니터링 시스템개발흥배 최
 
mongodb와 mysql의 CRUD 연산의 성능 비교
mongodb와 mysql의 CRUD 연산의 성능 비교mongodb와 mysql의 CRUD 연산의 성능 비교
mongodb와 mysql의 CRUD 연산의 성능 비교Woo Yeong Choi
 
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback흥배 최
 
MinWin에 대해서
MinWin에 대해서MinWin에 대해서
MinWin에 대해서흥배 최
 
What is Game Server ?
What is Game Server ?What is Game Server ?
What is Game Server ?흥배 최
 
Postmortem diablo ii
Postmortem   diablo iiPostmortem   diablo ii
Postmortem diablo iiTaekSoon Jang
 
제 3장 삼각함수의 기초
제 3장 삼각함수의 기초제 3장 삼각함수의 기초
제 3장 삼각함수의 기초Woo Yeong Choi
 
DGMIT 제3회 R&D 컨퍼런스 2TEAM : Kakao API소개
DGMIT 제3회 R&D 컨퍼런스 2TEAM : Kakao API소개DGMIT 제3회 R&D 컨퍼런스 2TEAM : Kakao API소개
DGMIT 제3회 R&D 컨퍼런스 2TEAM : Kakao API소개dgmit2009
 
Visual pmo (hybrid agile) proposal v1 3c
Visual pmo (hybrid agile) proposal v1 3cVisual pmo (hybrid agile) proposal v1 3c
Visual pmo (hybrid agile) proposal v1 3cPeter Kim
 
풀타임 개발 도전기
풀타임 개발 도전기풀타임 개발 도전기
풀타임 개발 도전기Jungsoo Park
 
Mongodb2.2와 2.4의 신 기능 소개
Mongodb2.2와 2.4의 신 기능 소개Mongodb2.2와 2.4의 신 기능 소개
Mongodb2.2와 2.4의 신 기능 소개흥배 최
 
Mongodb 개발 포인트
Mongodb 개발 포인트Mongodb 개발 포인트
Mongodb 개발 포인트흥배 최
 

Destacado (20)

Zookeeper소개
Zookeeper소개Zookeeper소개
Zookeeper소개
 
Tdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalabilityTdc2013 선배들에게 배우는 server scalability
Tdc2013 선배들에게 배우는 server scalability
 
Windows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCPWindows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCP
 
KGC10 - Visual C++10과 디버깅
KGC10 - Visual C++10과 디버깅KGC10 - Visual C++10과 디버깅
KGC10 - Visual C++10과 디버깅
 
[KGC 2011]Boost 라이브러리와 C++11
[KGC 2011]Boost 라이브러리와 C++11[KGC 2011]Boost 라이브러리와 C++11
[KGC 2011]Boost 라이브러리와 C++11
 
닷넷 Apache avro
닷넷 Apache avro닷넷 Apache avro
닷넷 Apache avro
 
NET 최선단 기술에 의한 고성능 웹 애플리케이션
NET 최선단 기술에 의한 고성능 웹 애플리케이션NET 최선단 기술에 의한 고성능 웹 애플리케이션
NET 최선단 기술에 의한 고성능 웹 애플리케이션
 
KGC2015_C# 스크립트를 사용한 게임서버 모니터링 시스템개발
KGC2015_C# 스크립트를 사용한 게임서버 모니터링 시스템개발KGC2015_C# 스크립트를 사용한 게임서버 모니터링 시스템개발
KGC2015_C# 스크립트를 사용한 게임서버 모니터링 시스템개발
 
mongodb와 mysql의 CRUD 연산의 성능 비교
mongodb와 mysql의 CRUD 연산의 성능 비교mongodb와 mysql의 CRUD 연산의 성능 비교
mongodb와 mysql의 CRUD 연산의 성능 비교
 
NLog 소개
NLog 소개NLog 소개
NLog 소개
 
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback
잘 알려지지 않은 숨은 진주, Winsock API - WSAPoll, Fast Loopback
 
MinWin에 대해서
MinWin에 대해서MinWin에 대해서
MinWin에 대해서
 
What is Game Server ?
What is Game Server ?What is Game Server ?
What is Game Server ?
 
Postmortem diablo ii
Postmortem   diablo iiPostmortem   diablo ii
Postmortem diablo ii
 
제 3장 삼각함수의 기초
제 3장 삼각함수의 기초제 3장 삼각함수의 기초
제 3장 삼각함수의 기초
 
DGMIT 제3회 R&D 컨퍼런스 2TEAM : Kakao API소개
DGMIT 제3회 R&D 컨퍼런스 2TEAM : Kakao API소개DGMIT 제3회 R&D 컨퍼런스 2TEAM : Kakao API소개
DGMIT 제3회 R&D 컨퍼런스 2TEAM : Kakao API소개
 
Visual pmo (hybrid agile) proposal v1 3c
Visual pmo (hybrid agile) proposal v1 3cVisual pmo (hybrid agile) proposal v1 3c
Visual pmo (hybrid agile) proposal v1 3c
 
풀타임 개발 도전기
풀타임 개발 도전기풀타임 개발 도전기
풀타임 개발 도전기
 
Mongodb2.2와 2.4의 신 기능 소개
Mongodb2.2와 2.4의 신 기능 소개Mongodb2.2와 2.4의 신 기능 소개
Mongodb2.2와 2.4의 신 기능 소개
 
Mongodb 개발 포인트
Mongodb 개발 포인트Mongodb 개발 포인트
Mongodb 개발 포인트
 

Similar a 에어헌터 for kakao 포스트모템(공개용)

NDC 2013 Monkeyrunner를 이용한 모바일 테스트 자동화
NDC 2013 Monkeyrunner를 이용한 모바일 테스트 자동화NDC 2013 Monkeyrunner를 이용한 모바일 테스트 자동화
NDC 2013 Monkeyrunner를 이용한 모바일 테스트 자동화ByungJoon Lee
 
Kgc2014 삼한제국기 포스트모템 김찬웅
Kgc2014 삼한제국기 포스트모템 김찬웅Kgc2014 삼한제국기 포스트모템 김찬웅
Kgc2014 삼한제국기 포스트모템 김찬웅Chanwoong Kim
 
레이더즈 기술 사례
레이더즈 기술 사례레이더즈 기술 사례
레이더즈 기술 사례기룡 남
 
게임제작개론 8
게임제작개론 8게임제작개론 8
게임제작개론 8Seokmin No
 
게임제작개론 9
게임제작개론 9게임제작개론 9
게임제작개론 9Seokmin No
 
카카오게임 첫 도전기 <돼지러너>
카카오게임 첫 도전기 <돼지러너>카카오게임 첫 도전기 <돼지러너>
카카오게임 첫 도전기 <돼지러너>Kim Min
 
[스타후르츠] 스타트업 스토리 , 그리고 네트워크게임 서비스에 대한 고찰
[스타후르츠] 스타트업 스토리 , 그리고 네트워크게임 서비스에 대한 고찰 [스타후르츠] 스타트업 스토리 , 그리고 네트워크게임 서비스에 대한 고찰
[스타후르츠] 스타트업 스토리 , 그리고 네트워크게임 서비스에 대한 고찰 GAMENEXT Works
 
윤석주, 신입 게임 프로그래머가 되는 법 - 넥슨 채용 프로세스 단계별 분석, NDC2019
윤석주, 신입 게임 프로그래머가 되는 법 - 넥슨 채용 프로세스 단계별 분석, NDC2019윤석주, 신입 게임 프로그래머가 되는 법 - 넥슨 채용 프로세스 단계별 분석, NDC2019
윤석주, 신입 게임 프로그래머가 되는 법 - 넥슨 채용 프로세스 단계별 분석, NDC2019devCAT Studio, NEXON
 
모바일게임 1인 QA 업무 경험담
모바일게임 1인 QA 업무 경험담모바일게임 1인 QA 업무 경험담
모바일게임 1인 QA 업무 경험담dgclan
 
게임제작개론 : #8 게임 제작 프로세스
게임제작개론 : #8 게임 제작 프로세스게임제작개론 : #8 게임 제작 프로세스
게임제작개론 : #8 게임 제작 프로세스Seungmo Koo
 
[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발
[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발
[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발MinGeun Park
 
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012devCAT Studio, NEXON
 
[IGC 2016] 버프스튜디오 김도형 - 용사는 진행중2 포스트모템
[IGC 2016] 버프스튜디오 김도형 - 용사는 진행중2 포스트모템[IGC 2016] 버프스튜디오 김도형 - 용사는 진행중2 포스트모템
[IGC 2016] 버프스튜디오 김도형 - 용사는 진행중2 포스트모템강 민우
 
NDC17 장창완(최종)
NDC17 장창완(최종)NDC17 장창완(최종)
NDC17 장창완(최종)창완 장
 
마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건강 민우
 
인디 게임 개발자 스터디 1회 오픈 세미나 안내
인디 게임 개발자 스터디 1회 오픈 세미나 안내인디 게임 개발자 스터디 1회 오픈 세미나 안내
인디 게임 개발자 스터디 1회 오픈 세미나 안내Alex Kang
 
애자일 스크럼과 JIRA
애자일 스크럼과 JIRA 애자일 스크럼과 JIRA
애자일 스크럼과 JIRA Terry Cho
 

Similar a 에어헌터 for kakao 포스트모템(공개용) (20)

Game engine 2011
Game engine 2011Game engine 2011
Game engine 2011
 
NDC 2013 Monkeyrunner를 이용한 모바일 테스트 자동화
NDC 2013 Monkeyrunner를 이용한 모바일 테스트 자동화NDC 2013 Monkeyrunner를 이용한 모바일 테스트 자동화
NDC 2013 Monkeyrunner를 이용한 모바일 테스트 자동화
 
Kgc2014 삼한제국기 포스트모템 김찬웅
Kgc2014 삼한제국기 포스트모템 김찬웅Kgc2014 삼한제국기 포스트모템 김찬웅
Kgc2014 삼한제국기 포스트모템 김찬웅
 
최웅규
최웅규최웅규
최웅규
 
레이더즈 기술 사례
레이더즈 기술 사례레이더즈 기술 사례
레이더즈 기술 사례
 
게임제작개론 8
게임제작개론 8게임제작개론 8
게임제작개론 8
 
게임제작개론 9
게임제작개론 9게임제작개론 9
게임제작개론 9
 
카카오게임 첫 도전기 <돼지러너>
카카오게임 첫 도전기 <돼지러너>카카오게임 첫 도전기 <돼지러너>
카카오게임 첫 도전기 <돼지러너>
 
[PandoraCube] '게임메이커'에 대해 알아보자
[PandoraCube] '게임메이커'에 대해 알아보자[PandoraCube] '게임메이커'에 대해 알아보자
[PandoraCube] '게임메이커'에 대해 알아보자
 
[스타후르츠] 스타트업 스토리 , 그리고 네트워크게임 서비스에 대한 고찰
[스타후르츠] 스타트업 스토리 , 그리고 네트워크게임 서비스에 대한 고찰 [스타후르츠] 스타트업 스토리 , 그리고 네트워크게임 서비스에 대한 고찰
[스타후르츠] 스타트업 스토리 , 그리고 네트워크게임 서비스에 대한 고찰
 
윤석주, 신입 게임 프로그래머가 되는 법 - 넥슨 채용 프로세스 단계별 분석, NDC2019
윤석주, 신입 게임 프로그래머가 되는 법 - 넥슨 채용 프로세스 단계별 분석, NDC2019윤석주, 신입 게임 프로그래머가 되는 법 - 넥슨 채용 프로세스 단계별 분석, NDC2019
윤석주, 신입 게임 프로그래머가 되는 법 - 넥슨 채용 프로세스 단계별 분석, NDC2019
 
모바일게임 1인 QA 업무 경험담
모바일게임 1인 QA 업무 경험담모바일게임 1인 QA 업무 경험담
모바일게임 1인 QA 업무 경험담
 
게임제작개론 : #8 게임 제작 프로세스
게임제작개론 : #8 게임 제작 프로세스게임제작개론 : #8 게임 제작 프로세스
게임제작개론 : #8 게임 제작 프로세스
 
[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발
[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발
[스마트벤처 창업학교] 스타트업 프로젝트를 위한 유니티 게임 개발
 
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
양승명, 다음 세대 크로스플랫폼 MMORPG 아키텍처, NDC2012
 
[IGC 2016] 버프스튜디오 김도형 - 용사는 진행중2 포스트모템
[IGC 2016] 버프스튜디오 김도형 - 용사는 진행중2 포스트모템[IGC 2016] 버프스튜디오 김도형 - 용사는 진행중2 포스트모템
[IGC 2016] 버프스튜디오 김도형 - 용사는 진행중2 포스트모템
 
NDC17 장창완(최종)
NDC17 장창완(최종)NDC17 장창완(최종)
NDC17 장창완(최종)
 
마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건마비노기듀얼 이야기-넥슨 김동건
마비노기듀얼 이야기-넥슨 김동건
 
인디 게임 개발자 스터디 1회 오픈 세미나 안내
인디 게임 개발자 스터디 1회 오픈 세미나 안내인디 게임 개발자 스터디 1회 오픈 세미나 안내
인디 게임 개발자 스터디 1회 오픈 세미나 안내
 
애자일 스크럼과 JIRA
애자일 스크럼과 JIRA 애자일 스크럼과 JIRA
애자일 스크럼과 JIRA
 

에어헌터 for kakao 포스트모템(공개용)

  • 1. 에어헌터 for kakao 포스트모템 위메이드 엔터테인먼트 최우영 2013.07.15 온라인 서버 개발자 모임
  • 2. 들어가기 전에 • 비공식, 개인 회고 포스트모템입니다. • 회사의 견해와 다를 수 있습니다. • 실제 발표 슬라이드와 다른 배포용 편집본입니다.
  • 6. 에어헌터 for kakao • 2013년 위메이드 엔터테인먼트에서 자체 개발한 모바일 슈팅 게임 • 카카오톡 플랫폼 • 전통적인 슈팅 게임의 재미 구현 • 기체 강화 • 이어하기 • 편대 전투
  • 9. • 개발 기간 6개월 • 개발 스텝 초기 5명 • 런칭시 약 40명 • 라이브팀 10여명 • 유니티 + C# • Asp.NET + NoSQL
  • 10. 왜 하필 슈팅인가요? • 때는 2012년 10월 • 저 슈팅 게임 좋아합니다
  • 12. • 모바일 게임의 신흥 강자 드래곤 플라이트! • 당시 추정 일매출 3억 • (그것도 1인 개발자라는 소문)
  • 13.
  • 15. 만들고 싶었던 것 • (테스팅 겸 처음 만드는 모바일이니까) • 캐주얼 유저는 버리고 간다(는 마음으로) • 하드코어 탄막 슈팅! • 화면에 총알이 무지 많이 나오고 플레이어는 신컨으로 피해야해! • 실제로는 피격 범위가 적어서 어렵지 않다.
  • 18. 실제로는 • 반복되는 스테이지 구성으로 레벨링 • 총알 개수가 많아져서 여러 번 반복하면 탄막계열이 됨 • 미들 코어 유저용 슈팅 게임
  • 19. 프로토타입의 함정(1) • 불명확한 비전 제시 : XXX는 이렇던데 • 개발사의 자존심 : xxx와는 다른 재미 • 그럴거면 완전히 새로운 기획으로 가는 게 낫다
  • 20. 프로토타입의 함정(2) • 빠른 이터레이션 = 프로토타이핑 필수 • 불안정한 기획과 게임 방향이 휙휙 바뀌는 환경 • 한 수 앞을 내다보는 기획이 필요하다 • 프로토 타이핑 과정도 개발 기간에 포함되니 문제가 됨
  • 21. 컨텐츠를 채워라 • 프로토타입 통과 • 제작 기간 준수를 위해 클라이언트 프로그래머 대량 투입 • 필요한 컨텐츠 – UI – 빌링 – 상점 – 게임 컨텐츠 : 적기 패턴과 보스 등 • R&D: C#, UNITY
  • 22. ‘우린 MMORPG 만든다고 왔는데 왜 슈팅을 만들어야 해? 그것도 유니티에 C#으로?’ (라는 불만이 있었습니다)
  • 23. 불만 제거 • 시간이 약.. – 팀 내에 꼭 해야하는 분위기가 조성됐고 – 하다보니 재미 붙여서 다들 작업했어요 – 국내 게임판 자체도 모바일로 돌아가기 시작했고요 • 작은 작업부터 시작 • R&D 할 수 있도록 여유 시간 배정 • 결과적으로 독립된 컴포넌트 개발 방식(유니티랑 잘 맞았다)
  • 24. 후반부 작업 러시 • UI는 지속적으로 개편(출시전까지 계속 수정! 정말 힘들었어요) • 서버제작과 운영툴, 로그(꼭 런칭 1~2주전에 다량으로 쏟아짐) • 사운드 투입 – 이 안에 스파이가 있다!(사운드 하나에 게임성이 확 바뀜) • 사업팀 투입 – 카톡 게임 요소(SNG) – 편대 : 점수대결, 2인 대결, 이어하기 등 여러 의견
  • 27. 개발 과정 • 테스팅 기기와 개발 도구의 지원 미흡 – 각종 모바일 기기, iOS 및 개발자 라이선스와 배포 권한 – 좀 더 iOS 배포와 테스팅을 빨리 했으면 좋았을 것 – 런칭하고 갤S2에서 네트웍 문제가 자주 발생했는데, 갤S2는 테스팅폰으로 구할 수가 없었어요. 단종됐데요.
  • 28. • C#과 유니티 숙달자 부족 – 틈틈히 트랜드를 파악하며 유연해질 수 있는 능력이 중요 – 둘 중 하나라도… • iOS, Android 플랫폼 지식 부족 – 빌링, 플러그인을 위해서는 결국 플랫폼 지식 필요 • 독립된 테스팅 환경 구축 – 개발, 알파, 베타, 심사용, 서비스 망 등의 테스팅 환경 선 구축
  • 29. • 불편한 UI – UI도 UX도 모두 불편 – 공통 UI 컨트롤의 필요성(개발자가 임의로 다이얼로그 테스팅하기 편하게) • 조작 편의성 – 왼손, 오른손 잡이, 색약 • 기체 볼륨 보다는 정교한 레벨링 – 레벨링에 신경을 더 썼다면 더욱 좋은 게임이 되었을 것 • 반복되는 게임 플레이 구성의 변화
  • 30. • 기획 문서 부재 – 문서화 보다 말로… – 업데이트 속도가 너무 늦음 – QA, 사업팀과 협업하기 위해서는 기획문서 필수 • 스토리 부재 – 대체 내가 누구를 지키기 위해 출격하는거야? • 모노 디벨롭과 비주얼 스튜디오 개발환경 혼재(한글 주석과 엔코딩) • 자바 환경 일치(1.7에서 사인키 버그 있어서 1.6으로 통일)
  • 31. 런칭 후 • 실서버 모니터링 불가 – 성능 측정 지표 부재(매출, 난이도 곡선, 성능 문제 등) • 광고 스팟 부재 – 로그인 화면, 광고판, 게임 내 광고 가능한 요소들 • 클라이언트 로그 부재 – 재접속률, 플레이 시간 등 클라이언트에서 모아서 전송 • 긴급 패치 위해서 개발팀 집에 못 가요 – 런칭 하루 전 잉여 인력.. 필수!
  • 33. 몇 개 안 되는 잘한 점 • 편대 • S펜 지원 • 보안 대응 • 유니티로 개발하기 • 카카오 플랫폼 이용하기
  • 34. 편대 • 타 게임과 차별 요소 – 거리나 비행 시간 요소는 어울리지 않음 • 단순 점수 비교지만 멀티 느낌이 남 – 마피아 워즈를 생각해보세요 • 조금 더 다듬었으면 하는 아쉬움 – 경쟁심 생기도록 다이나믹한 요소 – 보상 요소(너무 적다고 해요)
  • 35. S펜 지원 • 갤럭시 노트 시리즈는 펜 탑재 • 개발팀에서도, 지인들도 펜 지원 요구 • 노트1 펜보다 노트2 펜이 인식률이 좋다 • 유니티 3.5버전은 기본 S펜 지원이 안됨 • 자바로 간단하게 이벤트 처리
  • 36. 로컬 치팅 방어 • 변화된 변수를 추적하는 앱이 존재 – 4바이트 단위로 값의 일치, 변화를 추적 • 각종 커뮤니티 사이트 검색 – 결크, 돈벅, 버그 등으로 검색하면 됩니다 – 별의 별 방법 등장 • 게임 DLL을 변조하는 경우에는 이 방법으로는 어려움 – CS 팀에서 처리
  • 37. 유니티로 개발하기 • 때마침 유니티의 인기 급상승(자료 구하기가 쉬웠어요) • 3D 인력이 많아서 3D 오브젝트를 올리는데 유리 • 크로스 플랫폼! – 결국 iOS와 Android는 다 알고 있어야 작업 가능 – 그래도 따로 포팅해서 옮기는 것 보다는 훨씬 편함 – 카카오는 무조건 iOS, Android 동시 출시! • 닷넷이라 난독화 하셔야 합니다 – 난독화와 SendMessage – Trade off
  • 38. 카카오 플랫폼 • 카카오의 위력 – 에어헌터 100만 돌파 보름(Android) – 퍼즐앤드래곤 100만 돌파 200일 – 밀리언아서 100만 돌파 약 100일 – 여전히 카카오 게임이 상위권 절대 다수 차지
  • 40. 어제의 마켓 상황(최고매출) 10위 카톡 빼고 죄다 카톡게임
  • 42. 애플의 함정 • 하트 보내기 불가 – 재화 선물 불가 – 문의 엄청 들어와요 • iPhone5 대응 – 게임 컨텐츠로 채워야함 • 리뷰 대기 기간이 길다 • 심사가 객관적이라는 느낌은 잘 안든다
  • 43. 서버는 죽어도 클라는 죽어선 안된다 • 유니티의 특징 – Android는 예외가 떨어져도 Catch가 된다 – iOS는 예외가 떨어지면 Crash가 된다 • 패치 기간이 길다 – Android는 1~3일 – iOS는 대략 3~7일 정도 걸림
  • 44. 서버에서 제어하기 • 각종 할인, 점수 이벤트 • 상점 가격과 항목 제어 • 쿠폰이나 선물 • 푸시 메세지
  • 45. 실시간 패치 • 용량에 따라서 개발사가 선택하면 됨 • 에어헌터는 20MB라서 전체 다운로드를 선택 • 결과적으로 패치 때마다 인기 순위 상승!
  • 46. 패치 이슈 • 런칭 후 빠른 속도로 업데이트 상황 발생 – 버그 패치 – 각종 기기 문제 • 문제는 Android와 iOS의 패치 일정 문제 – iOS의 경우 패치가 느려서 Android와 버전 차이가 발생한다 – 방법은 iOS를 버리고 가거나 iOS에 맞춰서 가거나.
  • 47. 최적화 이슈(1) • 메모리 풀 – 튀는 것을 없애는데 도움이 됨 • 3D 데이터 경량화 – 로우 폴리곤(폴리곤 줄이는게 킹왕짱) • 모바일 Shader – float(4바이트) 말고 fixed(1바이트)나 half(2바이트) 같은 자료형 이용
  • 48. 최적화 이슈(2) • 이펙트 – 유니티 이펙트(슈리켄)는 드로우콜에 도움이 안됨 • 사운드 – 모노, 해상도 축소
  • 49. 푸시 • 이벤트나 알림을 푸시로 처리 • 운영툴에서 푸시 메시지를 실시간 변경가능하도록 제작 • 몇 십만, 몇 백만 사용자에게 서버가 푸시하는 시간이 오래걸릴 수 있다 – 최악의 경우 한 밤 중에 받게 된다. – 이미 이벤트 끝난 경우에 받기도.. – 가끔 푸시 하다가 죽기도 한다 – 반드시 성능 측정과 테스트가 필요함
  • 50. 퍼블리셔 • 위메이드는 국내 대형 퍼블리셔 • 장점 – CS 지원(좀 느리지만) – 홍보(강추) • 크로스 마켓팅 – 막강. 게임과의 제휴 이벤트 – 윈드런너가 짱임 • 지하철 광고 – 폼나요… 지인에게 자랑하기 좋음 • 위미 관련 광고 – 런칭시 유리 – 런칭 전부터 관심 끌기 좋아요 – ‘에어헌터 곧 출시!’ 하면 댓글에 ‘와우 재밌어보여요! 근데 윈드런너 업데이트 언제함?’ 이 런 댓글 달려요
  • 51. 서버, 무엇으로 만들어야 하나 • 최근 웹서버 뿐만 아니라 TCP를 이용해서 제작 • 웹서버는 분산에 확실히 편함 • 클라이언트 언어랑 맞추면 프로토콜 등의 작업이 편함 – 유니티 + C# & Asp.NET – 유니티 + JavaScript & Node.JS – 코코스 + C++ & C++ 서버 • 개발 기간이 짧고 웹에 익숙하지 않다면 있는 거 쓰세요
  • 53. 매출(1) • 적당히 벌고 아주 잘살자는 불가능 – 착한 부분유료화로 이야기되는 타 게임 수입원 • LoL : 스킨, 룬, 캐릭터 – 퍼즐앤 드래곤은 과금 구조가 단순 • 가챠, 스태미너 보충, 이어하기, 보유칸 늘리기 • 최대한 벌고 아주 잘살자가 우리네 현실 • 따라서 초기에 사업부와 미팅 필수
  • 54. 매출(2) • 소인원이 유리한 구조 • 이래저래 기본 50%~80%는 비용 – 마켓 30% – 카카오 20% – 퍼블리싱 및 서버 운용 비용 20%~30% – 지속적으로 서버 유지비… • 그래서 40명에 육박한 우리팀은 인센이…
  • 56. 결론 • 게임이 재미있거나 충실하게 만들어졌다면 미들코어도 충분히 가능 • 따라하기는 개발자가 정신적으로 힘들다 • 크로스플랫폼이 가능한 엔진 선택, 플랫폼 지식도 필수 • 대박 혹은 인센을 위해서는 소인원으로 개발 • 여전히 국내의 카카오 영향력은 막강하다 • 가끔 PC방이 아닌 지하철에서 유저들을 보면 신기하다 • 모바일 개발은 역시 경험이 중요하다