개발자 게시판

전체보기

모바일 상단 메뉴

본문 페이지

[개발기] 래토피아 개발일지 #23 - 전력과 쥐봇

casselwolf
조회: 621
2024-02-01 18:03:29



안녕하세요. <래토피아>를 개발 중인 카셀입니다.

이번에 소개해 드릴 전력과 쥐봇 시스템은 2~3월 업데이트를 목표로 오래전부터 준비해왔던 시스템인데요.

어느덧 본격적으로 테스트를 하고 기획 검증을 하는 단계까지 도달하여 소개 드릴 수 있게 되었네요.

그럼 그동안 어떤 작업들을 진행해왔는지, 어떤 고민거리들이 있었는지 소개 드리도록 하겠습니다.




전력


<래토피아>는 안타깝게도 시민의 수가 제한된 게임입니다.

시민들의 이동 반경과 해야 할 것이 늘어날수록 연산량이 기하급수적으로 늘어나는 구조이기 때문에,

게임이 제대로 동작하게 만들기 위해서는 시민의 수를 제한할 필요가 있었죠.


게임 후반부에 시민을 더 받지 못하는 상황에 도달하면 플레이어의 성장 동력은 점차 줄어들게 되며,

그때부터 추가적인 시민 확보를 통한 도시의 양적 성장이 불가능해지게 됩니다.

도시가 성장하려면 시민들의 개별 능력치를 향상시키고 이동 동선이 줄도록 도시 설계를 변경하여 질적 성장을 이뤄내야 하지요.

지금은 의도치 않게 시민의 능력치 상승에 한계가 없어 체감이 덜 되긴 하지만,

시민이 성장하는 것을 마냥 기다리기보다는 플레이어가 도시를 직접 성장시킬 수 있는 장치를 더해주고 싶었습니다.


그렇게 전력은 시민의 작업 효율을 높여 도시를 성장시킬 자원으로 기획되었습니다.

풍력발전기, 수력발전기 등 여러 발전 건조물들을 통해 전력을 생산할 수 있으며,

생성된 전력은 발전기에 연결된 전선을 타고 송전되어 연결된 전력 보관소에 저장됩니다.

그리고 보관된 전력은 근처에 건설되어 있는 건조물에서 시민들이 소비하는 방식이었지요.



초기 컨셉 이미지처럼 전선이 연결되게 하는 것도 생각보다 녹록지 않았다…



이렇게 생성된 전력을 시민들이 사용하여 생산 작업을 2배로 빠르게 작업할 수 있게 된다면,

단위 시간당 더 많은 생산품을 생산해낼 수 있을 것이고,

이로 인해 발생하는 잉여 시민을 다른 곳에 재배치하여 도시가 추가적인 성장을 할 수 있을 것이라 보았습니다.




전력에 따른 잉여 시민



그러나 이 단순 명료한 방식은 시각적인 아쉬움이 남는 기획이었습니다.

게임 화면에 대한 변화가 전혀 없었기 때문에, 보기에는 발전된 느낌이 전혀 들지 않았기 때문이지요.

전력을 사용하고 있다는 것을 어떻게 표현할지, 도시가 발전했다는 것을 어떻게 시각적으로 보상해 줄지가 관건이었습니다.


그래서 생산 건조물에 전등을 달아 변화를 주는 방식도 고민해 보기도 하였고,

시민들이 작업을 할 때 전기를 사용하는 도구들로 애니메이션을 교체하는 방법도 생각해 보았습니다.

그러나 이 규칙을 모든 생산 건조물에 적용하기에는 부적합한 건조물들도 있어서 머리가 아팠죠.

게다가 건조물에 연결된 전력이 작업 도중에 끊겼을 때 어떻게 처리해야 할지,

시민이 자리를 비웠을 때에는 해당 건조물이 전력을 사용하고 있다는 것을 어떻게 보여줄 지도 문제였습니다.




이렇게 표현하면 되려나...?



장시간에 걸쳐 검토를 해보았지만, 건조물들의 이미지를 바꾸는 방식은 적합하지 않다고 판단하였습니다.

시각적으로 큰 변화가 없다면 변화를 느끼기 어려울 것 같았고,

그렇다고 모든 건조물들의 외형을 크게 바꾸는 것은 너무 많은 작업량과 상상력을 필요로 하였기 때문이죠.


이 때문에 전력의 발전과 송전 방식에 대한 기획은 마쳤지만, 사용처에 대한 기획은 정리되지 않아 진전이 한동안 막혔었는데요.

전력을 소비하여 주변 시민의 능력을 높여주는 등의 지원형 건조물들을 추가해 보았으나,

이것만으로는 전력 생산 건조물에 비해 전력의 소비처가 너무 아쉬웠지요.

그렇게 계속해서 여러 아이디어들을 떠올리다가 쥐봇이 등장하게 되었습니다.

전력을 사용해 움직이는 쥐봇은 도시가 발전되었다는 느낌을 제공할 수 있을 것 같았죠.




쥐봇


쥐봇은 시민 대신 생산 건조물에서 작업을 할 수 있는 NPC입니다.

시민과 다르게 음식이나 서비스, 위생 욕구에 따른 검사가 없기 때문에 시민에 비해 연산량이 적으며,

도시에 시민이 늘어난 듯한 느낌을 주면서도 시스템 부하는 최소화할 수 있는 묘책이었지요.

또한 시민들의 수백 가지 애니메이션 동작들을 사용할 수 있도록 시민과 동일한 크기로 제작한다면,

시스템 충돌 없이 게임 내에 빠르게 적용이 가능할 수 있어 보였습니다.



시스템 가동. 준비 완료.



처음에는 시민이 쥐봇을 소유할 수 있도록 설계해 보았습니다.

주인의 일터 주변에 쥐봇충전소를 건설 한 뒤 일터에서 쥐봇 사용을 활성화하면,

주인이 욕구를 채우러 일터를 떠날 때마다, 충전소에 있던 쥐봇이 일터에 와서 작업을 대신해주는 방식이었죠.

이 방식은 쥐봇의 주인이 재료 자원의 구매와 생산품의 판매를 주로 담당하게 만들고,

주인의 소득이 쥐봇으로 인해 더욱 늘어나는 방식이었습니다.


그러나 이 방식은 쥐봇의 효율이 건조물 별로 천차만별로 달라지게 만드는 문제가 있었습니다.

쥐봇이 담당하는 역할은 생산 작업뿐이기에 작업량이 적은 자원을 만드는 건조물의 경우,

쥐봇이 생산을 순식간에 마치고 자원을 주인이 운반하길 대기하는 시간이 길어졌지요.

그렇다고 쥐봇에게 자원의 운반까지 맡기기에는 주인과의 작업 충돌 문제가 생길 수 있었습니다.

재료 공급, 생산 작업, 생산품 판매가 순차적으로 진행되고 있는 현재의 시스템 속에서는

일부 건조물들에서 공들여 생산한 쥐봇이 전혀 활용되지 않았지요.


쥐봇의 생산 시간과 효율을 늘리기 위해서 방법을 생각해 보다가,

작업량이 2배가 되는 대신, 자원을 2배로 넣고 2배의 산출물이 나오게 되는 기능을 추가해 보았는데요.

그러나 이는 쥐봇을 활용하지 않아도 생산 효율을 높여주는 기능이었고,

플레이어가 시민의 동선을 체계적으로 잘 설계할수록 쥐봇의 효율이 떨어지는 근본적인 문제는 해결이 안 되더군요.

그리고 근본적인 문제를 남겨둔 채로 계속해서 기능들을 추가해 나아가는 것은 부담스러웠죠.



여러 회의 끝에 결국에는 쥐봇을 기존 방식으로 유지하는 것은 어렵다고 판단하였습니다.

쥐봇을 좀 더 정량화된 효율을 가지게, 사용하기 편하게 만들 필요가 있다고 느꼈고,

이를 위해 시민처럼 자원 공급, 판매까지 담당하게 변경하기로 결정하였습니다.

이제는 시민의 생산을 돕는 것이 아닌 아예 생산을 담당해버리게 되었기에,

이전처럼 시민의 소유물로 활용하기도 어려워졌으며, 도시에 종속되어 버렸지요.



손발이 피부색인 것은 버그입니다. 쥐봇의 재료로 시민이 들어가지는 않습니다!



쥐봇들은 무기 제작처럼 쥐봇조립소에 재료 자원을 넣어 제작할 수 있습니다.

쥐봇들의 기본 능력치에 따라 필요한 재료가 다르며,

짝 맞추기 미니게임을 성공한다면 작은 보너스 능력치를 추가로 획득할 수 있지요.




뛰어난 쥐봇을 만들기 위해서는 지도자의 손맛이 필요하다.



쥐봇들은 의도적으로 낮은 능력치를 가지고, 경험치 또한 획득하지 못하게 설정하였는데요.

이는 쥐봇들이 욕구가 없다는 큰 장점을 가지고 있기에, 시민의 상위 호환이 되지 않도록 하기 위함이었습니다.

도시 내 모든 생산 시설들의 작업자를 쥐봇으로 대체하기보다는,

플레이어가 어떤 건조물의 시민들을 쥐봇으로 대체하는 것이 유리할지 고민하게 만들고 싶었지요.


이후로 더 강한 능력치와 작업 범위를 가진 쥐봇들이 추가되면 상황은 조금 달라질 수 있겠지만,

우선은 현재 개발된 기초 쥐봇들을 통해 시스템 문제와 게임의 흐름을 먼저 확인해 볼 계획입니다.



아직 쥐봇들로 인해 발생하는 경제 현상과 사회 현상들에 대한 콘텐츠들이 미흡해서 아쉬운데요.

이제 막 갈무리가 된 상황이라 테스트를 해보면서 조금씩 발전시켜 나아가고자 합니다.

쥐봇과 관련하여 재미있는 아이디어들이 있으시다면 편하게 댓글로 남겨주세요!


스팀 스토어: https://store.steampowered.com/app/2244130/Ratopia/

페이스북: https://www.facebook.com/CasselGames/

Lv20 casselwolf

모바일 게시판 하단버튼

댓글

새로고침
새로고침

모바일 게시판 하단버튼

지금 뜨는 인벤

더보기+

모바일 게시판 리스트

모바일 게시판 하단버튼

글쓰기

모바일 게시판 페이징