아무도 볼 수 없는 거절은 고장과 같은 것입니다
"버튼이 안 먹는다"는 제보가 여럿 들어왔는데, 셋 다 막힌 게 아니라 막힌 이유가 안 보이는 것이었습니다. 게임은 거절 사유를 제대로 만들어 두고 아무에게도 안 보이는 곳에 적고 있었습니다.
만들다 막힌 자리와 고친 과정입니다. 무엇을 만들었다는 자랑보다, 무엇이 조용히 망가져 있었는지를 적습니다.
전체 73편 · 7 / 7페이지
"버튼이 안 먹는다"는 제보가 여럿 들어왔는데, 셋 다 막힌 게 아니라 막힌 이유가 안 보이는 것이었습니다. 게임은 거절 사유를 제대로 만들어 두고 아무에게도 안 보이는 곳에 적고 있었습니다.
표를 채우지 않아서 루어의 매력도가 전부 0으로 조회됐고, 매력도 0이면 물고기가 즉시 떠납니다. 참돔도 감성돔도 돌돔도 우럭도 이론상의 존재였습니다. 확인하려고 만든 시뮬레이터는 처음에 제 잘못된 가정 때문에 전부 0을 뱉었습니다.
무리가 200마리든 20마리든 화면에서 총을 쏘는 건 한 마리처럼 보였습니다. 발사가 한 번에 한 발이었고 쏘는 놈을 무작위로 뽑았기 때문입니다. 고치면서 인원수와 무기를 서로 다른 축으로 갈라 놓았습니다.
서비스워커가 모든 요청에 "일단 캐시부터" 정책을 쓰고 있었습니다. HTML 껍데기에는 그게 위험합니다. 껍데기는 해시가 붙은 번들 이름을 가리키는데 배포는 옛 해시를 지우기 때문입니다.
물고기를 넣었더니 돌고래가 그냥 흰 물고기였습니다. 지느러미가 두께 0이었고, 몸통 만드는 방식이 주둥이 있는 형태를 못 만들었고, 광택이 너무 세서 무늬를 통째로 지우고 있었습니다. 물고기가 오직 물을 통해서만 보인다는 사실이 나머지 설계를 거의 다 정했습니다.
수면 아래를 노이즈 섞은 상수 색으로 칠하고 있었습니다. 실제 지형을 굴절시켜 비추도록 바꾸자 물이 가려 주던 결함이 둘 나왔습니다. 그리고 흰 면의 원인을 여섯 번 오진하게 만든 건 렌더링이 아니라 제 검증 도구였습니다.
파도가 부서지는 선을 섬 둘레의 고정된 원으로 잡으면 강풍에서 모래 위에 파도가 부서집니다. 파도는 자기 파고에 견줄 만한 수심에서 부서지므로 그 선은 바다가 정합니다. 그리고 배에는 지형 충돌이 아예 없어서 섬을 뚫고 지나가고 있었습니다.
파도에서 배가 덜 흔들리게 하려고 넣은 항력이 전체 저항의 92%였습니다. 아래위 흔들림 기준으로 크기를 잡은 값을 전 방향에 똑같이 걸었으니 앞으로 가는 것도 그만큼 막혔습니다. 속도를 풀자 느릴 땐 닿지 않던 결함 둘이 드러났습니다.
Tiny Knight Rush는 끌어서 이동하는 게임입니다. 그런데 버튼을 누르려면 이동을 멈춰야 했습니다. 무기는 상단 바로, 스킬과 소모품은 초상화 둘레의 호로 옮긴 HUD 재설계 이야기입니다.
잡몹이 시원하게 안 죽는다는 요청에 일반 몹 체력만 70%로 낮췄습니다. 같은 시간의 처치 수는 거의 그대로입니다. 처치 속도가 아니라 등장 속도가 상한이기 때문이고, 실제로 바뀌는 건 한 마리당 때리는 횟수입니다.
Little City Story의 WebAssembly 런타임은 파일 하나가 Cloudflare의 업로드 한도를 넘습니다. 큰 파일을 쪼개 원래 주소로 이어 붙이는 Worker를 만들어 ntsapp.dev/city 에서 설치 없이 돌아가게 만든 과정입니다.