털뭉이 러시는 머릿수가 곧 화력인 게임입니다. 그런데 플레이 피드백에 이런 게 있었습니다.

몇몇만 총을 쏜다

실제로 그랬습니다. 발사는 한 번에 한 발이었고, 쏘는 털뭉이는 무리 전체에서 무작위로 뽑혔습니다. 200마리를 모아도 화면에서는 한 마리가 쏘는 것처럼 보였습니다. 숫자를 불리는 게임인데 불린 보람이 화면에 안 나타난 것입니다.

사격선의 두께를 정하는 것은 섬광 시간입니다

이제 앞줄 사수 몇 명이 번갈아 쏘고, 쏘는 털뭉이마다 총구 섬광이 켜집니다.

그러다 깨달은 게 있습니다. 동시에 빛나 보이는 수 = 발사율 × 섬광 지속 시간입니다. 발사율은 게임 규칙이 정하니 건드릴 수 없는데, 섬광 시간은 순전히 연출값입니다. 즉 "사격선이 얼마나 두꺼워 보이는가"를 조절하는 실질적인 다이얼은 발사율이 아니라 섬광 시간이었습니다.

큰 일제사격은 오히려 역효과였습니다

처음엔 여러 명이 한꺼번에 쏘는 일제사격이 화려할 거라 생각했습니다. 계산해 보니 반대였습니다.

사수 7명 기준으로 일제사격 간격이 0.3초인데 섬광은 0.13초입니다. 화면의 절반 이상이 "아무도 안 쏘는" 상태가 됩니다. 눈에는 번쩍했다가 꺼지는 정적이 반복되는 것으로 보입니다.

그래서 소규모로 자주 쏘게 했습니다. 한 번에 보이는 숫자는 적지만 사격선이 끊기지 않습니다.

흩어진 무리에서 총알이 사방으로 나갔습니다

두 번째 피드백은 "너무 흩어진 상태에서 총알이 나간다"였습니다.

무리가 600 유닛 폭까지 퍼지면 총알도 그만큼 넓게 흩어져서, 대열이 아니라 오합지졸로 보입니다. 총구 위치를 무리 중심선 쪽으로 절반 당겼습니다. 털뭉이 자체는 여전히 넓게 퍼져 있는데 사격은 대열에서 나가는 것처럼 보입니다.

몸의 위치와 총구의 위치를 분리한 것입니다. 물리적으로는 거짓말이지만 보기에는 이쪽이 맞습니다.

인원수와 무기를 다른 축으로 갈랐습니다

총 업그레이드를 상자로 주워 올리는 6단계 티어로 넣으면서, 축을 나눴습니다.

  • 인원수 — 발사 빈도만 건드립니다
  • 티어 — 탄의 모양만 건드립니다

이렇게 안 나누면 둘이 곱해집니다. 실제로 티어의 대미지를 발사 수에 반비례시켜야 했습니다. 그냥 함께 곱하면 최종 티어가 12배가 되어 버립니다. 성장 축이 둘인데 둘 다 같은 결과값을 곱하면, 각각은 합리적으로 보여도 끝에서 터집니다.

탄 밀도는 2.6배로 올리고 탄당 대미지를 0.38배로 낮춰 초당 대미지를 보존했습니다. 화면은 훨씬 화려해졌는데 난이도는 그대로입니다.

확인은 무입력 회귀로 했습니다. 아무 조작도 하지 않고 굴렸을 때 45~72초, 스테이지 5~7. 기존 기준선과 일치합니다. 연출을 바꾸면서 밸런스를 안 건드렸다는 걸 이 숫자로 봅니다.

총알이 게이트 라벨을 덮었습니다

탄이 2.6배로 늘자 예상 못 한 문제가 생겼습니다. 총알이 공중에 쌓여서 관문에 적힌 숫자를 가렸습니다.

이 게임에서 관문 선택은 전부입니다. ×2인지 −15인지 못 읽으면 게임이 성립하지 않습니다. 연출이 정보를 덮으면 연출이 진 겁니다.

총알 수명을 1.6초에서 0.95초로 줄였습니다. 화면 위쪽에 오래 남아 쌓이던 것이 사라집니다. 같은 이유로 보스 체력 바도 무기 배지 아래로 내렸습니다.

곁다리로 잡은 것 — 빈 화면

게임이 통째로 빈 화면으로 뜨는 경우가 있었고, 이번 작업 중에 실제로 재현됐습니다.

화면 크기를 잡는 첫 호출이 레이아웃보다 먼저 돌면 백버퍼가 0×0으로 굳습니다. 그런데 그 뒤에 창 크기 변경 이벤트가 반드시 온다는 보장이 없습니다. 안 오면 0×0인 채로 계속 그립니다. 아무것도 안 보입니다.

크기 변화를 창 이벤트가 아니라 요소 자체를 관찰해서 잡도록 바꿨습니다. 레이아웃이 끝나면 반드시 한 번 불립니다. "이벤트가 올 것이다"라는 가정을 지운 것이고, 같은 날 FPS Arena에서 굳은 키를 고치며 한 것과 정확히 같은 모양의 수정이었습니다.