CS2 Practice Host 3
이 글은 CS2 Practice Host 시리즈의 3번째 기록입니다. (총 4개)
오늘 한 일
- 증상과 원인을 설명하는 영상을 만들어 올렸다
- 구성은 인사 / 증상 / 해본 것 / 원인 / 콘솔로 해결 / 도구 / 마무리
- 도구는 끝에만 나오게 했다. 인사부터 「만들어봤습니다」로 가면 홍보가 되고, 이 영상의 힘인 「나도 당했다」가 날아간다
- 원인과 수동 해결법을 먼저 다 주고 「꺼림칙하면 콘솔로 직접 해도 된다」를 남겼다. 도구를 안 써도 쓸모 있는 영상이어야 광고로 읽히지 않는다
- 목소리는 안 쓰고 자막으로만 갔다. 배경음악은 룸톤에서 쓰던 것을 가져와 차분한 것으로 깔았다
- 설명란에 타임라인 다섯 개를 넣었다 — 증상 / 해본 것 / 원인 / 콘솔로 해결 / 도구
- 글자가 뜨는 화면을 웹 페이지로 만들어 녹화했다
- 인사와 마무리는 프로필 그림과 말풍선이 하나씩 뜨는 채팅 모양
- 자막도 같은 채팅 모양으로 맞췄다. 목소리가 없으니 자막이 말하는 사람 자리를 떠맡는다
- 해본 것 목록은 글씨가 먼저 뜨고 그다음에 X가 그어진다
- 이유: X가 같이 나오면 「안 해봤다」로 읽힌다. 순서를 나누니 「해봤다 → 아니었다」가 된다
- 로그 설명은 형광펜이 왼쪽에서 오른쪽으로 그어지며 핵심 낱말을 덮는다
- 전부 스페이스를 누를 때마다 한 줄씩 나오게 했다. 말하는 속도에 맞춰 넘길 수 있다
- 썸네일을 만들었다
- 실제로 튕겼을 때 찍은 오류창을 깔고 「게임 서버와 연결할 수 없습니다」와 「방화벽 아닙니다」를 얹었다
- 왼쪽 위에 Counter-Strike 2 뱃지 — 바탕은 반은 노랑 반은 남색, 글자는 서로 반대 색
- 이유: 줄임말로 두면 이미 그 게임을 하는 사람만 알아본다. 검색해서 처음 오는 사람이 자기 문제인지 알아야 한다
- 친구에게 보내는 링크의 미리보기 카드를 만들었다
- 영상 링크를 설명서 사이트와 저장소 읽을거리에 걸었다. 제품 페이지에도 같은 주소가 걸렸다
- 앱과 사이트를 한국어·영어로 바꿀 수 있게 했다
- 설명서 페이지, 친구가 받는 참가 페이지, 앱 화면 셋 다
- 처음 열 때는 고른 것 없이 브라우저·윈도우 표시 언어를 따라간다
- 참가 링크에는 언어를 붙이지 않았다. 이유: 그 화면을 보는 건 링크를 보내는 사람이 아니라 받는 사람이라, 받는 쪽 브라우저가 기준이어야 한다
- 영문이 한글보다 길어 앱 창을 넓혔고, 글꼴도 언어를 따라가게 했다
- 설명서 페이지는 영어판 주소(
?lang=en)가 따로 남아서 그 상태로 링크를 보낼 수 있다
- 게임이 깔린 PC 없이도 확인할 수 있게 해 뒀다
- 이유: 게임 PC를 못 켜는 날에는 눌러 볼 수가 없어서 확인을 미루게 된다
- 가짜 설치 폴더를 만들어 주면 창을 세울 수 있다. 앱이 보는 건 맵 파일이 있는지뿐이다
- 고른 값을 넣고 언어 버튼을 눌러 다시 읽는 것까지 자동으로 돌린다. 스물아홉 가지를 봤다
- 버전을 1.1.0으로 올리고 변경 내역을 적어 내보냈다
- 이유: 사용자에게 보이는 기능이 생겼으니 올려야 한다. 릴리스를 낼지와는 별개다
- 패치가 아니라 마이너로 간 것은 설정 파일이 바뀌어서다
- 변경 내역에는 영어 지원과 버그 수정만 적었다. 창이 넓어진 것과 설정 저장 방식이 바뀐 것은 뺐다
- 이유: 창 폭은 사용자가 알 필요가 없고, 저장 방식은 그대로 이어받으니 알릴 게 없다. 결론이 「아무 일 없습니다」인 줄은 안심시키는 게 아니라 걱정을 만든다
- 업데이트 알림이 실제로 뜨는 걸 처음 확인했다
- 첫 공개판부터 넣어 뒀는데 그게 늘 최신이라 뜰 일이 없어 확인이 밀려 있었다
- 새 판이 올라간 뒤라야 확인되는 것이었다. 옛 판 쪽에서 보면 「새 버전 1.1.0 이 나왔어요」가 뜨고, 새 판 쪽에서는 안 뜬다
막힌 부분
- 글자 화면을 투명 배경으로 녹화할 수 없었다
- 원인: 화면을 찍는 순간 배경이 합쳐져서 투명한 부분이 남지 않는다
- 해결: 배경을 초록으로 채워 녹화하고 편집에서 빼는 방식으로. 방송 프로그램이 웹 페이지를 직접 그려 주는 기능을 쓰면 투명이 유지되지만, 그걸 새로 깔 이유는 없었다
- 원인을 단정하는 투였던 것을 고쳤다
- 검색해도 같은 사례를 못 찾았으니, 다른 원인으로 같은 증상을 겪는 사람이 있을 수 있다
- 해결: 「적어도 제 경우는 이게 원인이었습니다」로 바꾸고, 같은 경우인지 확인하는 법(친구 쪽 기록에 특정 낱말이 찍히는지)을 알려 주게 했다. 단정하지 않으면서 약해지지도 않는다
방장 쪽 기록이 덮어씌워져 있었다
영상에 쓸 기록을 챙겼는데, 친구 쪽은 완전했고 방장 쪽에는 서버가 등록된 줄이 없었다. 시각을 보니 친구 쪽 실패보다 한 시간쯤 뒤에 시작된 기록이었다.
게임을 켤 때마다 그 파일이 새로 쓰인다. 실패한 판을 찍고 나서 게임을 다시 켠 사이에 앞 내용이 날아간 것이다.
- 해결: 친구 쪽 기록만으로 설명이 선다. 「접속하라는 신호는 받았는데 갈 주소가 비어 있다」가 그 한 파일에 다 있고, 그게 이 설명의 전부다. 방장 쪽은 「서버가 1초 뒤에 등록됐다」를 덧붙이는 보조 자료다
- 남은 한계: 1~2초 차이로 갈린다는 것을 두 기록을 나란히 놓고 보여주지는 못했다. 다음에 친구들과 할 때 챙기면 된다
친구에게 보내는 링크에 미리보기 카드가 없었다
참가 링크를 메신저에 붙여넣으면 미리보기 카드가 뜨는데, 그 페이지에는 카드 정보가 하나도 없었다. 빈 카드나 주소만 덜렁 나온다.
- 해결: 가로형 카드 이미지를 만들고 제목·설명을 넣었다. 카드 안에 「설치 없이 · 개발자 콘솔 설정 없이」도 적었다
- 설명서 쪽도 정사각 아이콘을 쓰고 있었는데 가로형으로 바꿨다. 미리보기는 가로형이 제대로 나온다
- 카드 이미지는 두 페이지 다 1200×630으로 맞췄다. 미리보기 자리가 가로형이라 정사각을 넣으면 양옆이 잘린다
영어로 바꾸니 골라 둔 설정이 기본값으로 돌아갔다
모드·난이도·봇 팀을 저장할 때 화면에 보이던 이름을 그대로 적어 두고 있었다. 다시 켤 때 그 이름으로 목록에서 찾는 방식이다. 한 가지 말만 쓸 때는 멀쩡하다.
영어로 바꾸면 목록의 이름이 전부 영어가 되는데 저장된 것은 한국어라 하나도 못 찾는다. 못 찾으면 기본값으로 떨어지니, 언어를 바꿀 때마다 고른 것이 초기화된다.
- 해결: 저장은 언어와 무관한 값으로 한다. 보이는 이름은 그 값에서 꺼내 쓴다
- 이미 쓰고 있는 사람의 설정 파일에는 옛 한국어 이름이 들어 있어서, 그것도 같이 받아 주게 했다. 안 그러면 새 판을 켜는 순간 쓰던 사람 설정이 한 번 날아간다
- 남은 한계: 사이트는 올리면 바로 바뀌지만 앱은 새 판을 내보내야 사용자에게 간다
봇 난이도를 쉬움으로 두면 다시 켤 때 보통으로 돌아갔다
한영전환을 확인하려고 만든 것에서 엉뚱한 게 걸렸다. 난이도를 쉬움으로 저장해 두고 창을 세웠는데 보통으로 올라와 있었다.
설정을 되살리는 자리가 「목록에서 찾은 자리, 못 찾으면 보통」이었는데, 「못 찾음」을 나타내는 값과 「첫 칸」을 가르지 못하는 방식이었다. 그래서 제대로 찾은 첫 칸까지 보통으로 끌어올렸다. 고른 칸이 다섯인데 난이도만 기본값이 첫 칸이 아니라서, 이 한 칸에서만 드러났다.
- 해결: 못 찾았을 때만 보통으로 가게 했다
- 오늘 생긴 게 아니라 첫 공개판부터 있었다. 쉬움을 쓰던 사람은 켤 때마다 보통으로 올라왔을 것이다
- 교훈: 「없음」을 특별한 숫자로 돌려주는 걸 큰 쪽 고르기로 받으면 경계값이 조용히 먹힌다. 기본값이 첫 칸인 나머지 넷에서는 같은 코드가 멀쩡하게 돌아서 안 보였다
다음에 할 일
- 영상 반응을 1~2주 보고 커뮤니티에 글을 올릴지 정한다. 같은 이슈로 등록된 글이 아예 없어서 수요가 불확실하다. 글 초안은 써 뒀다
- 두 페이지 디자인을 같은 결로 다듬는다
- 광고를 붙이고 2주 뒤 노출 수를 보고 계속 둘지 정한다
- 확인이 남은 것들 — 봇 난이도 값이 게임에 먹히는지, 탈환 모드에서 옵션이 잠기는지, 친구가 실제로 접속되는지. 셋 다 게임이 깔린 PC가 있어야 한다