반갑다
본인 예전부터 1인 게임 개발에 엄청 관심이 많은 놈이었다
근데 막상 게임 만들려고 게임 메이커나 유니티 같은 거 독학해보니까 벽이 꽤 높게 느껴지더라
코딩 배우는 것도 문제지만 에셋 찾거나 혹은 자체 제작하는 게 진입장벽이 심했거든
그래서 시작해봤다
일단 난 젬3플 쓴다
특갤도 그렇고 다들 별로라고 욕을 많이 먹는 것 같던데.
나는 무료분으로 쓸 수 있는 양을 중요하게 생각하고 비용 절감이 중요해서 젬3플을 선택할 수 밖에 없었다.
아무튼 잡설은 이쯤하고 본론으로 들어가보자.
내가 만들고자 하는 게임은 오픈 월드 판타지 게임이다.
스카이림, 폴아웃, 팰월드 같은 거 좋아하는데 가끔 내가 원하는 요소들로 가득한 오픈월드를 꿈꾸곤 한다.
그래서 그런 것들을 구현하기 위한 기본적인 월드를 만들었다.
이정도 수준까지는 아무리 빡대가리인 젬3플이라고 하더라도 AIS선에서 만들어 준다.
적당한 필드에 WASD 조작 가능한 캐릭터와 나무, 돌, 풀, 캐릭터 외형 변경 메뉴 정도까지는 몇 십번 대화하다보면 된다.
코드 망치는 게 심하다면 '이 원본 코드는 다 필요한 코드야. 원본 코드 로직에 대한 변경/삭제 없이 내 지시를 이행해줘.'
라고 프롬프트 마지막에 부탁하면 찐빠를 확 줄여준다. 물론 케바케일 수도 있다. 나는 이걸로 무료분 잘 뽑아먹었다고 생각한다.
내 기준으로 게임엔 항상 타이틀이 필요하다.
지금은 게임 시작 버튼만 있지만 차차 필요할 때 다른 여러 기능들을 추가해 나갈 예정이다.
설정, 끝내기, 불러오기 같은 기능들을 생각 중인데, 뭔가 더 있을 수도 있다.
아무튼 게임 시작 버튼 말고 당장 중요한 게 없어서 이것만 넣어놨다.
저장/불러오기 시스템 같은 건 최대한 늦게 만들어야 한다.
저장할 수 있는 모든 요소를 다 구현 한 다음에 만들어 달라고 해야 젬민이도 뭘 넣어야 할지 직관적으로 이해할테니까.
다음으로 만든 것은 게임 시작 전 커스터마이징을 따로 분리하는 것이었다.
마음 같아서는 아기자기하고 멋지거나 예쁜 디테일들을 추가하고 싶지만.
지금은 절대 불가능하다는 것을 이해한다.
그냥 젬민이가 캐릭터를 사람처럼 만들어준 것만으로도 고마울 따름이다.
언젠간 좀 더 고차원적인 그래픽 표현을 구현할 수 있지 않을까... 꿈꿔본다.
오픈 월드 게임에 낮과 밤 시스템이 없으면 섭섭하겠지.
30분 간격으로 낮과 밤이 오가는 시스템을 만들었었다.
스샷에는 찍히지 않지만 낮과 밤 시스템은 잘 구현됐다.
처음에는 밤에 캐릭터 주변을 밝게 해주는 마스크가 캐릭터 주변을 더 어둡게 하는 버그가 있었는데.
해결해달라고 하니까 해결해 줬다.
레터 박스 같은 검은 화면을 제거하고 30분 단위 숫자로 표시되던 텍스트를 해와 달이 움직이는 UI로 변경했다.
아마 이때쯤부터 API를 사용했던 것 같다.
슬슬 말귀를 잘 못알아 듣기도 하고, 코드가 너무 길어서 복붙해 놓으면 버벅이기 시작했다.
코덱스나 클로드 코드, 안티그래비티는 이 시점에는 전혀 몰랐다.
일단 구글이 API 사용에 3개월 40만원을 뿌리기도 했고.
젬3플 API 사용 후부터 불편함을 거의 못 느낀 점도 있다.
근데 아마 알았어도 쉽게 사용하지는 못했을 것 같다.
사용량 제한과 비용이 좀 무섭기 때문이다.
나는 아직까지는 젬3플 API 종량제가 제일 마음에 드는 것 같다.
집을 만들었다.
여기서 엄청나게 고생했다.
다른 건 다 잘만들었는데 지붕에서 찐빠가 계속 났었다.
지붕을 젬민이가 알아듣기 쉽게 설명하는 것이 상당히 어려웠고 말귀를 더럽게 못알아 먹기도 했다.
결국 직접 그림을 그려서 AIS에서 요청한 다음 어찌저찌해서 만들 수 있었다.
그럼에도 마지막까지 찐빠가 하나 있어서 결국 내가 코드를 직접 뒤져서 수정해야 했다.
캐릭터 커마창을 개조했다.
일단 내가 생각하는 능력치들을 만들어만 놓고 게임 시작 전 찍을 수 있게 만들었다.
그리고 캐릭터 이름도 작명할 수 있게 했다.
나중에 캐릭터 레벨 바 옆에 이름이 표시되게 하는 용도였다.
원래 지형 지물은 랜덤 배치였는데, 고정되어 있으면 좋겠다고 생각했다.
근데 그렇다고 하나하나 일일히 배치할 수도 없는 노릇이었다.
AIS에서 어떻게 하는 게 좋겠냐고 물어보니까 시드를 사용하면 시드 값이 같으면 동일한 지형이 뜬다고 하길래 이게 좋겠다 싶었다.
그리고 혹시 몰라서 시드 값을 랜덤으로 만들 수 있는 설정 창을 추가했다.
캐릭터 능력치 창을 만들었다. 레벨, 이름, 경험치 바, 생명력 바, 지구력 바, 마나 바 등등이 있다.
이 시점엔 표기만 되어 있을 뿐 제대로 작동하는 건 하나도 없었다.
참 보면 볼수록 젬민이가 디자인은 잘 해준다.
나는 그냥 좌측 상단에 레벨과 생명력 바, 지구력 바, 마나 바를 추가해 달라고 했을 뿐인데 보기 좋게도 만든다.
경험치 바는 나중에 만들었다. 그래서 다른 수치 바들과 살짝 떨어져 있다.
토끼 몬스터를 배치했다.
근데 구별이 가는가?
젬민이가 귀를 표현 한 것 같은데 꼭 오리 머리 같기도 하다.
토끼들은 이 상태로 콩콩 뛰어다니며 좌우로만 이동했다.
뭔가 생동감이 없다.
토끼의 크기를 키우고 발을 깡총거리게 만들어 달라고 했다.
처음보다는 좀 나아지긴 했지만 여전히 이미지 딸랑 하나에 좌우 반전만 있는 것이 걸린다.
뭔가 토끼가 이동하는 방향대로 바라보게 하길 바랐다.
토끼의 파츠를 나누고 이동 방향을 입체적으로 바라보게 해 달라고 했다.
토끼의 파츠는 머리, 귀, 눈, 앞발, 뒷발, 몸통, 꼬리.
그제야 입체감 있게 움직이기 시작했다.
그 밖에도 몇 가지 버그가 있었지만 프롬프트 몇 번으로 생각보다 쉽게 해결할 수 있었다.
공격했을 때 3초 동안 해당 몬스터의 생명력 바가 보이게 했다.
의외로 프롬프트 한 방에 해결됐다.
인벤토리와 장비 창을 만들었다. 각각 단축키 I와 P로 켜고 끌 수 있게 했다.
아직 어떻게 할지 제대로 정리된 게 없어서 일단 UI로 구별만 가게 해두었다.
초기 디자인의 가독성이 떨어져서 고쳐달라고 몇 가지를 요청해야 했다.
토끼를 사냥했을 때 아이템을 얻을 수 있게 했다.
젬민이가 알아듣게 아이템 이미지를 설명 하는 게 꽤 힘들었다.
저 동그란게 토끼 모피 아이템인데 영 마음에 들지 않는다.
계속 설명하면서 잘 만들어주길 바라는 기도 메타로 갔다.
지금와서 보니까 토끼발 디자인 개판났다. 다시 만들어야 될 것 같다.
암튼 여기까지가 지금까지 만든 내용들이다.
생각보다 잘 만들어지고 프롬프트도 잘 먹혔고 여기까지 만드는데 비용도 한화로 4천원(지원 크래딧 40만원에서 까줌) 들었다.
따지고 보면 마음에 드는 완성도는 아니지만 뭔가 나만의 오픈 월드가 하나하나 구현되는 느낌이 꽤 재밌고 만족스럽다.
앞으로 갈 길이 먼데, 포기 하지 않고 끝까지 완성할 수 있었으면 좋겠다.
마지막으로 지금까지 만든 게임의 테스트 영상 올리며 일기 1화를 마친다.
뭐야 나도 하게 해줘요... 멀티 기능도 만들어서 같이 하면 재미있을듯
그냥 레퍼런스 아무거나 적당한 거 들고와서 이거 svg로 만들어서 넣어줘 하면 안 돼?
그렇게 까지는 나도 잘 모르겠어... 그냥 요청 넣고 흐름에 맡기는 중.
@뉴비 뭐 재밌고 그걸로 만족한다 그러면 상관없지 보통은 게임에서 어떤 재미를 추구할 건지를 먼저 정의하고 pmf를 검증하는 게 우선일 거 같은데 '이런 게임을 시작할 때 이렇게 시작했었지...'로부터 시작하는 거 같네
토끼 카와이 - dc App
잘봤음
멋지다 노력하는게
이야 꽤 잘만들엇는데
와 진짜 대단하십니다ㄷㄷㄷ