모래게임 Sandrop TIL 12
열쇠가 닿을 때 열려야 한다
그림을 그대로 규칙으로 옮겼더니 봇이 갇혔다
열쇠 기믹을 넣으면서 이런 그림을 원했다. 열쇠 바스켓을 꺼내면 열쇠가 자물쇠까지 날아가고, 닿는 순간 길이 열린다. 그 그림 그대로 게임 규칙(엔진)에서 길이 열리는 시점을 열쇠 도착 뒤로 미뤘다.
테스트가 무너졌다. 이 게임은 봇이 풀 수 있는 레벨만 낸다. 봇이 열쇠를 꺼냈는데 길이 안 열리니 뒤를 못 풀었고, 500레벨이 전부 클리어 불가로 찍혔다.
봇에게는 애니메이션이 없다. 한 수에 열쇠를 꺼내고 그 자리에서 길이 열려야 한다. 열쇠가 날아가는 1.8초는 사람이 보는 화면에만 있다.
되돌렸다. 규칙에서는 꺼내는 즉시 열리고, 화면에서만 열쇠가 닿을 때까지 잠겨 보이게 했다.
- 결과를 바꾸면 규칙이고, 사람 눈을 위한 시간이면 연출이다. 규칙은 엔진에, 연출은 화면에 둔다
- 말로 자연스러운 그림을 그대로 규칙으로 옮기고 싶어진다. 그 그림 안에 시간이 들어 있으면 한 번 의심한다
대신 잠깐 어긋나는 틈이 남는다
규칙상 길은 이미 열려 있으니, 열쇠가 날아가는 동안 그 너머를 누르면 잠겨 보이는 길을 지나간다. 이건 받아들였다. 그 1.8초 동안 사람은 날아가는 열쇠를 보지 뒤를 누르지 않는다.
- 드문 경우를 막으려고 규칙과 봇까지 바꾸는 건 과하다. 틈이 있다는 걸 알고 두는 것과 모르고 두는 것은 다르다
- 화면이 규칙을 뒤늦게 따라가는 구조면, 되돌리기나 다시 시작처럼 규칙이 뒤로 가는 순간에 화면도 같이 되돌려야 한다
한 그림에 두 역할
열쇠 표식을 키웠더니 바구니 색이 가려졌다
처음엔 열쇠 바스켓을 통째로 자물쇠까지 날렸다. 열쇠인 걸 알아보게 표식을 키웠더니 바구니의 모래 색을 덮었다. 줄이면 이번엔 열쇠가 안 보였다.
바구니와 열쇠는 다른 것이었다. 바구니는 다른 바구니처럼 통로를 걸어 엘리베이터로 가고, 열쇠 아이콘만 떨어져 나와 자물쇠로 날아가게 나눴다. 바구니에 붙은 열쇠 표식은 우하단에 작게 붙여 모래 색이 보이게 했다.
열쇠는 벽을 무시하고 직선으로 날아간다. 대신 감속 곡선(easeInOut — 출발과 도착은 느리게, 가운데는 빠르게)을 걸어서 뚝 멈추지 않고 부드럽게 내려앉는다.
- 한 그림이 두 가지를 알려야 하면 서로 가린다. 떼어 내면 둘 다 제 역할을 한다
배지가 “매우 어려”로 잘렸다
폭이 모자란 게 아니라 양보하고 있었다
레벨 목록에서 난이도 배지가 “매우 어려움”이 아니라 “매우 어려”로 잘려 보였다. 폭이 모자라 보였지만 글자를 줄여도 그대로였다.
앞선 TIL 11에서 배지가 아예 사라졌던 그 칸(Flexible — 남는 폭에 맞춰 늘고 주는 칸)이 또 문제였다. 이번엔 사라지지 않고 잘렸다. 원인은 그 오른쪽의 빈 공간(Spacer — 남는 폭을 차지해 옆을 밀어내는 빈 칸)이었다. 둘이 남은 폭을 반씩 나눠 가졌다. 빈 공간을 빼니 배지 칸이 남은 폭을 다 받았다.
나눠 갖는 칸 옆에 내용을 두면 늘 이 함정이 있다.
- 증상이 같아도 원인은 다를 수 있다. “모자라다”로 짚으면 글자 크기를 만지고, “나눠 갖고 있다”로 짚어야 고칠 데가 보인다