Warudo에서는 정말로 다양한 일을 할 수 있습니다. 이론 상, 이건 유니티 엔진과 다를 바가 없습니다. 그 말은 곧 와루도 안에서도 게임을 만들 수 있을 거라는 얘기죠.

이번 의뢰는 아이블룸 팀의 베니 (https://ch.sooplive.co.kr/veryveny) 님으로부터, 주루마블 정기 컨텐츠를 위한 시스템 제작 건이었습니다. 이미 맵이 제작된 상태이며, 버튜버 네 명이 앉아있고, 팬 캐릭터들이 말이 되어 맵 상에서 뛰어다니고, 주사위도 굴리고, HP도 관리해야 하고, 준비된 삼행시, 초성퀴즈 등의 컨텐츠도 서브로 들어가야 하는 작업이었습니다. 주어진 시간은 한 달 남짓, 약간의 지연이 있었는지 빠듯한 일정이었습니다. 어디에서나 후반 작업이 항상 타격이 크긴 합니다.

구현된 기술

주사위 굴림

dice.gif

주사위는 실제로 랜덤하게 굴러갑니다. 돌면서 던져지고, 지면에 닿는 순간 랜덤 값에 따라 주사위의 눈이 나오는 방식입니다. 순서는 다음과 같습니다.

말의 이동

moving.gif

주사위를 굴리면서 나온 눈의 수를 변수로 저장한 이유가 여기에 있습니다. 말이 그만큼 이동해야 하니까요. 여기서는 변수를 잘 활용해야 합니다. 말이 얼마나 이동할지도 알 수 없고, 어느 칸으로 갈지도 알 수 없죠.

그래서 우선은 1칸을 이동하는 기능을 구현하고, 이를 반복문으로 실행하는 방식으로 설계했습니다. 모든 세부 기능들을 함수로 묶어놓고, 이것들을 최종 블루프린트에서 합쳐서 실행하면 되는 것이죠. 아래에 쓴 과정이 한 칸 씩 움직이는 기능에 대한 것들입니다.