항해 플러스: 제 1회 코육대

두선아 Dusuna·2023년 10월 8일
0

회고

목록 보기
2/2
post-thumbnail

드디어 작성해보는 코육대 후기입니다😀
9월 중반부터 바빴는데 드디어 블로그를 작성할 시간이 생기네요!

송편 터뜨리러 가기: https://www.dusuna.me
Github: https://github.com/dusunax/game

코육대? 제 1회? 참여해볼까?🤔

9월 21일 항해커톤 참여 중, 소개를 통해 코육대에 대해 알게 되었습니다.

마침 이번 추석 긴 연휴 동안 뭘 할까?라는 행복한 고민을 하던중이었고,

좋은 프로젝트 주제인 것 같아 참여하게 되었습니다.

(사실 코육대에 제출할 게임을 빠르게 완성하고, 다른 공부를 하려 했지만 어쩌다보니 추석 내내 몰입하게 되었습니다😅)


게임 만들기👀

어릴 때 졸라맨부터 방탈출, 슈게임까지 플래시 게임과 함께 자란 세대이기 때문에

내가 게임을 만들어보고 싶다는 생각은 항상 있었지만 시도해보지 못했는데

이번에 간단한 게임을 완성하고, 배포할 수 있어서 뿌듯했습니다.

송편 터뜨리러 가기 => https://www.dusuna.me/

공부하면서 369, 가위바위보, 사이먼 게임 등 간단한 로직은 만들어봤지만

어디까지나 공부를 위한 예제를 따라 만드는 경험이었고, 이번처럼 직접 구현을 해본 적은 없었어요.


2D 게임을 만들 때 2d context는 어떻게 그리는 지 궁금하기도 했습니다.

회사에서 ThreeJS를 사용하고 있기 때문에, WebGL에 대해 간단히 공부했는데요.

2D 게임 개발은 또 새로운 경험이었습니다.

간단한 게임이지만 짧은 기간 동안 오류를 해결하고, 프로젝트를 개선하기 위한 결정을 해야 했습니다.

아래 링크는 노션에서 옮겨온 날짜 단위 작업 기록입니다😄

[9월 28일~10월 3일] 날짜별 작업 기록 : https://github.com/dusunax/game/issues/2


유저 반응✨

10월 3일에 프로젝트를 완성해 제출했고, 10월 4일에 주변 사람들에게 링크를 보냈습니다.

지금까지 유저테스트 중 가장 참여도와 만족도가 높았습니다🥹

게임이라는 장르 때문에 "한 번 해볼까?"하는 생각이 먼저 드는 것 같습니다.

감사하게도 재밌다고 해주는 사람이 많아서 기뻤습니다.

(모바일 최적화도 못해서 다들 데스크탑으로 해주셨기 때문에 더 감동입니다)


그런데 어쩌다보니 5000점 넘기기 챌린지가 생겨서

목표점수를 넘기기 위해 몇 시간 동안 재도전 해주는(?) 분들이 있었습니다.

일단 1등상으로 기프티콘 상품을 추가했습니다.


아슬아슬하게 달성할 수 없는 점수치라는

의도치 않은 시스템을 볼 수 있어서 굉장히 흥미로웠습니다.

열받아서 계속 도전한다고 해주셔서 제작자로서 뿌듯했구요👍

실제 점수와 닉네임를 DB에 저장하는 것까지가 MVP였는데 완성 못해서 아쉬웠습니다.

그리고 GA를 붙여서 유저 참여도를 확인할 수 있으면 좋았을텐데 이것도 아쉬워요.

서비스에 이렇게 재미와 목표, 보상을 설정한 Gamification을 적용한다면 효과적일 것 같습니다!

임시 점수 집계: 카카오톡으로 스크린샷 인증

scorename등수 (상품)
5180DSA
5060KJB
4955KJB10/4 유저테스트 1등 (☕️)
4925HSM
4850YCS
4745KHJ선착순 클리어 (☕️)
4580CRH
4580LMS

익숙한 UX의 무서움👻

구현한 게임에는 치명적인 버그가 있습니다.

그리고 10월 4일에 게임을 플레이한 사람들은 아무도 몰랐습니다..

만약 테스터 인원이 10명대가 아니라 100명이 넘었다면 눈치채서 말하는 사람이 있었을 것을 거에요.


로직에서 mouse constraint의 타겟을 한정하지 못해서,

화면에서 고정되지 않은 dymanic한 요소들을 전부 움직일 수 있습니다.

그리고 게임에서 바닥을 제외하면 전부 동적인 요소입니다.

요소들이 복주머니에 맞아서 바닥에 떨어져야 하기 때문이죠.


말하자면 사용자가 송편을 직접 드래그해서 바닥에 던질 수 있습니다.

이렇게 진행하면 7000~8000점까지도 점수를 얻을 수 있습니다.

(복주머니 던지는 기회가 매 라운드+1 되기 때문에, 복주머니를 던지지 않는 경우 600*3을 더 받을 수 있어요.)


코육대 단톡방에서 다른 분의 송편던지기 프로젝트를 보고 플레이 해보았는데, 같은 문제점이 있었습니다.

마찬가지로 단체 채팅에서 다른 분의 게임을 플레이해본 사람들도

아무도 이 무서운 버그에 대한 이야기는 하지 않았습니다.


또한 저 또한 문득 버그 내용이 생각나기 전까지는

송편을 직접 클릭할 생각도 하지 않았어요.

익숙한 UX가 무섭습니다!


이 버그를 유저가 눈치채지 못하게 하기 위해서

앵그리버드 게임과 유사한 UX를 그대로 유지했고,

"복주머니를 던져라"라고 메인과 헤더에서 계속 되뇌이고 있습니다.


그리고 life가 0이 되는 시점에 오류가 있어,

게임이 바로 끝나지 않고 게임 오버 단계가 될까지 붕 뜨는 시간이 있었는데

이 시간에 혹시 유저가 송편이나 접시 같은 오브젝트를 클릭할 수 있다는 불안감이 있었습니다.

그래서 일부러 게임 화면을 덮는 absolute div를 만들었습니다.

(게임 종료까지 대기하는 내용의 텍스트를 추가함)


drag 이벤트가 있을 때, 요소의 label을 확인하고 막는 방법이 있을 것이라고 생각합니다.

라이브러리를 사용하기 때문에, event를 prevent하는 방식으로 구현할 수 없어서 트러블 슈팅 중이었지만

마감 기한이 가까워져서 미처 해결하지 못했습니다.

개선점이 많습니다!

10월 9일 심사 이후 추가할 기능 & 고칠 버그 목록 : https://github.com/dusunax/game/issues/1


솔로 개발의 장단점

대부분의 개발자들은 혼자 개발하는 것이 편하다고 생각하는 것 같습니다.


이번에 1인 개발하면서 느낀점은, 일단 의견을 전달할 필요가 없으니

소통오류, 의견충돌 없이 신속하게 작업에 들어갈 수 있는 점이 편하게 느껴졌습니다.

하지만 혼자 작업하다 보니 집중력을 유지하기가 어려웠습니다.


저의 이상 같은 좋은 개발 환경은 성실하고 몰입할 줄 아는 동료, 좋은 동료 관계, 재밌는 분야의 개발을 하며 성장하는 것인데요.

대부분 이상과 현실은 다릅니다.


나와 맞는 동료도 찾기 힘들고, 일하면서 좋은 동료 관계를 유지하는 것도 힘들고, 나의 커리어 또한 아직 뿌연 안개같아요.

그래서 협동하는 경험을 많이 쌓고, 흥미가 생기면 일단 만들어보고, CS지식을 쌓고, 여러 개발 분야를 접해보고 있습니다.

이번 9~10월에 항해커톤와 코육대에 참여하고, 정보처리기사 시험을 보고, 디지털 미래혁신대전과 feconf에 참석하는 것처럼요.


그리고 개인적으로 라포를 잘 쌓는 것을 중요하게 생각하는데, 동의하지 않는 의견도 수용하려 합니다, 누구나 다르게 생각할 수 있으니까요.

조금씩 이상형 같은 개발자가 스스로 되기 위해 노력하고 있습니다.🙂


마치며...

재밌는 경험이었습니다!

이번 주제였던 테트리스나, 슈팅 게임류도 따로 만들어보면 재미있을 것 같아요.

읽어주셔서 감사합니다😃

profile
안녕하세요.

0개의 댓글