js13kGames 2023 참가 후기
js13kGames 2023
작년에도 참가했었던 js13kGames 2023이 2023년 8월 13일부터 9월 13일까지 한 달간 진행되어 이번에도 참가해 보았습니다.
js13kGames는 13kb 이하로 자바스크립트 게임을 만드는 게임잼입니다.
작년 js13kGames 2022에는 103등을 했고, 다음에 또 참가하면 좀 더 계획적으로 기획하고 만들어야겠다고 생각했으나… 역시나 이번에도 회사 일과 약속 등등 기타 다양한 핑계로 인해 정신을 차려보니 한 것 없이 9월 13일이 다가왔고, 급하게 마무리를 해서 제출을 했습니다. 올해에도 참가에 의의를 두는 걸로…
올해의 테마는 13th Century 였습니다. 13세기… 칭기즈칸과 십자군… 몽골의 고려 침공 등등 뭔가를 만들어야 할지 감이 안 오는 주제였습니다.
그래서 뭘 만들지?
뭘 만들까 고민을 하다가 몽골군을 적군으로 해서 서바이벌 같은 게임을 만들자 생각을 했다가 마침 8월에 잠깐 디펜스 더비라는 게임을 찍먹을 한 상태이기도 했고, 처인성 전투에 대한 내용을 보고 몽골군이 쳐들어오는 디펜스 게임이면 괜찮지 않을까라는 생각을 했고, 디펜스 게임을 만들기로 정했습니다. 적이 정해진 경로를 따라서 이동하게 하고 플레이어 캐릭터는 정해진 영역 안에서 이동하며 화살을 발사하는 형식의 게임을 만들기로 했습니다. 역시나 생각으로는 이것도 하고 저것도 하고 생각을 했으나 글의 앞에서 말한 것과 같이 여러 핑계로 원하던 대로 완성을 못하고 급하게 마무리해서 제출을 했습니다.
게임의 대략적인 설명을 드리면 화살표 키로 이동하며, 적이 사거리 안으로 들어오면 자동으로 화살을 발사하고 경험치를 채워 레벨업을 하면 사거리나 이동속도, 체력 회복 등을 선택하게 만들었습니다.
픽셀은 저번처럼 Aseprite으로 만들었습니다. 지금 생각하면 옆모습이 아니라 위에서 본 모습으로 만드는 게 더 만들기 쉬웠을 것 같습니다. 소리는 jsfxr로 만들고 mp3 형식으로 만들어 사용했습니다. 배경음도 넣고 싶었으나 시간도 없고 용량도 없어서 효과음만 만들고 그마저도 용량 때문에 압축을 하다 보니 엄청 듣기 싫은 소리가 된 것 같습니다.
제출
정신 차려보니 다 만들지도 않았는데 벌써 제출 일자였습니다. 급하게 마무리를 하고 압축을 해보니… 18kb로 13kb를 초과했고 용량을 줄이려고 이미지 크기도 줄이고, mp3 파일도 압축을 하고, javascript 코드도 압축을 해서 겨우 13kb 안에 들어오게 하고 제출을 했습니다. 제출을 하고 큐에 등록이 된 걸 확인했고, 제출 마지막 날이라 그런지 등록되기까지 3시간 정도 걸린 것 같습니다. 작년처럼 따로 문제는 없었으나… 올리고 게임을 켜보니 압축을 하다가 실수를 했는지 캐릭터들의 애니메이션이 왼쪽으로 갈 때 동작을 안 하는 문제가 나왔고 주최자에게 슬랙으로 파파고와 구글 번역기의 도움을 받아 코드를 다시 전달해서 무사히 제출을 할 수 있었습니다.
후기
작년에 생각했던 것을 까먹고 이번에도 한 달은 길다고 생각하다가 막상 정신을 차려보니 급하게 참여에만 의의를 둔 것 같은 모양새로 제출하게 된 것 같지만, 그래도 2번의 경험이 생겼으니 내년에는 좀 더 잘 만들 수 있기를 바랍니다. canvas를 평소에 아예 사용하지 않다 보니 코드도 엉망이고 개발 속도도 나오지 않은 것 같습니다. 그리고 용량을 생각하면 처음부터 이미지를 파일 하나로 저장해서 잘라 쓴다거나 벡터 그래픽을 쓰거나 했었다면 더 깔끔하게 용량을 맞췄을 것 같고, canvas를 좀 더 알고 있었다면 코드에서도 필요 없는 부분을 줄여서 마지막 날에 부랴부랴 압축 때문에 고생을 안 했을 것 같다는 생각이 들었습니다. 그래도 재밌는 경험이었고, 아마 내년에도 참가를 하지 않을까 싶습니다. 게임 개발 실력은 늘지 않는 것 같지만, 뭐 애초에 평소에 개발을 안 했으니, 다음번엔 좀 더 잘해보기로!
추가내용
다행히 이번에는 100등안에 들어갈수 있었습니다.
등수 발표가 나오고 거의 1달정도 지나고 굿즈가 도착했습니다. 개인적으로 뱃지가 마음에 드네요.