카카오톡에 붙여넣으면 점수가 보이는 링크 만들기
1분게임의 핵심은 “내 기록을 친구에게 보내는 것”이에요. 그래서 공유가 어떻게 보이느냐가 게임만큼 중요했어요. 첫 버전을 올린 2026년 10월 7일 오후 5시부터 밤 11시까지, 공유 방식을 여러 번 바꿨어요. 순서대로 정리해 볼게요.
1. SDK 없이, 링크 하나로
첫 버전에는 공유 시트, 인스타그램 스토리 이미지, 링크 복사, 그리고 카카오톡 공유 버튼이 있었어요. 카카오톡 공유는 카카오 자바스크립트 SDK와 앱 키가 필요했고요. 몇 시간 뒤 버튼을 정리하면서 카카오 SDK를 아예 뺐어요. 결국 사람들이 채팅방에 붙여넣는 건 링크이고, 링크만 잘 보이면 된다고 판단했거든요.
2. 미리보기 제목에 점수를 쓰기
문제는 링크 미리보기였어요. 링크 복사를 누르면 문장과 긴 링크가 함께 복사돼서, 채팅방에 텍스트 덩어리로 도착했어요. 그래서 짧은 링크만 복사하게 바꾸고, 그 링크의 미리보기 자체가 도전장이 되게 했어요.
1분게임은 정적인 사이트라 페이지마다 미리보기 정보(Open Graph 태그)가 고정돼 있어요. 그런데 점수는 링크마다 다르죠. 그래서 게임 주소에 한해서만 Cloudflare Pages Function이 응답을 가로채, 링크에 담긴 이름과 점수로 미리보기 제목을 다시 써요. 카카오톡에는 이런 카드가 떠요: “인님의 폴짝폴짝 기록: 70칸 · 시간없이 도전 · 이길 수 있어?”
링크 안에서 이름은 일부러 맨 뒤에 두었어요(/hop?s=70&m=e&from=…). 채팅 앱이 링크를 인식하다가 이름에서 끊어 버려도 점수는 살아남고, 이름 자리에는 “친구”가 들어가요.
3. 19분 만의 되돌리기
짧은 링크에서는 이름을 읽기 좋게 한글 그대로 넣었어요. 그런데 19분 뒤, 그 뒤로 복사된 링크는 미리보기 카드가 아예 안 뜬다는 걸 알았어요. 미리보기를 만드는 봇이 인코딩되지 않은 한글이 들어간 주소를 요청하면, Cloudflare가 400 오류로 돌려보내고 있었어요. 이름은 다시 퍼센트 인코딩으로 돌아갔어요. 사람 눈에는 덜 예쁘지만, 카드가 뜨는 게 먼저니까요.
4. 버튼 하나로 링크와 사진을 함께
인스타그램 스토리용 공유도 붙였어요. 웹사이트는 인스타그램 스토리 편집기를 직접 열 수 없어서, 결과 이미지를 공유 시트로 넘기는 방식이었어요. 그런데 사진만 넘기는 건 순서가 거꾸로였어요. 친구가 누르는 건 사진이 아니라 링크거든요.
그래서 “공유하기” 한 번에 두 가지가 일어나게 했어요. 링크가 복사되고, 1080×1920 세로 이미지가 저장돼요. 링크는 채팅방으로 가서 점수 카드가 되고, 사진은 스토리로 가요. 아이폰에서는 다운로드한 사진이 ‘파일’ 앱으로 가서 인스타그램이 찾지 못하고, 인앱 브라우저는 다운로드 자체가 안 돼요. 그래서 그 경우에는 사진을 길게 눌러 저장하라고 안내해요.
5. 항상 최고 기록을
마지막으로, 공유하기가 방금 한 판의 점수를 보내던 걸 그 모드의 최고 기록을 보내도록 바꿨어요. 못한 판 직후에 공유하면 내 기록보다 낮은 점수가 나가는 일이 있었거든요. 버튼 아래에는 무엇이 나가는지(“보낼 기록: 최고 70칸”) 적어 두었어요.
정리하면
- 공유 버튼이 많을수록 사람은 망설여요. 하나의 버튼이 필요한 일을 모두 하는 게 나았어요.
- 정적인 사이트라도 미리보기 태그만 요청마다 다시 쓰면 “링크마다 다른 카드”를 만들 수 있어요.
- 링크는 사람이 읽기 좋은 것보다, 봇과 채팅 앱이 망가뜨리지 않는 게 먼저예요.
1분게임 — 1분게임은 1분이면 끝나는 미니게임 33가지를 하고, 내 최고 기록을 링크로 보내 친구에게 도전장을 내미는 웹 게임 모음이에요.