GETTING STARTED / 10 MINUTES

첫 게임을 등록하세요.

게임 서버는 그대로 유지하면서 공개 HTTPS 진입점과 공용 플레이어 계약만 연결합니다. 등록은 초안으로 시작하며 기존 라이브 게임에는 영향을 주지 않습니다.

01 / PREPARE

등록 전에 준비할 것

  • 변경하지 않을 kebab-case 게임 ID와 공개 HTTPS 런타임 URL
  • 한국어·영어·일본어 제목, 장르, 지원 언어, 정사각형 대표 이미지
  • 데스크톱 16:9와 모바일 9:16에서 동작하는 반응형 화면
  • 젬 상품이 있다면 서버 지급 키, 젬 가격, 멱등 처리 방식

02 / MANIFEST

등록 매니페스트

내부 등록 콘솔 또는 발급받은 MCP 키에 아래 형태로 전달합니다. 외부 등록은 항상 draft로 생성됩니다.

{
  "gameId": "studio-puzzle",
  "title": { "ko": "스튜디오 퍼즐", "en": "Studio Puzzle", "ja": "スタジオパズル" },
  "genres": ["puzzle", "casual"],
  "runtimeUrl": "https://games.example.com/studio-puzzle",
  "thumbnailUrl": "https://games.example.com/studio-puzzle/icon.webp",
  "locales": ["ko", "ja", "en"],
  "desktopAspect": "16 / 9",
  "mobileAspect": "9 / 16",
  "webBannerEnabled": true,
  "products": []
}

03 / PLAYER

iframe을 실제 크기로 채우기

기준 해상도는 제작 좌표계일 뿐 고정 CSS 크기가 아닙니다. 게임은 포털이 준 iframe의 실제 너비와 높이를 채워야 하며 모바일 내부 스크롤을 만들면 안 됩니다.

html, body, #game-root {
  width: 100%;
  height: 100%;
  margin: 0;
  overflow: hidden;
}

canvas {
  display: block;
  width: 100%;
  height: 100%;
  touch-action: none;
}
웹과 앱인토스 모두 KOISCORE 공통 플레이어 셸에서 게임 타이틀과 젬 잔액을 표시합니다. 게임 iframe은 이를 중복해서 그리지 않습니다.

채널별 차이

항목WEBAPPS IN TOSS
플레이어 셸KOISCORE 공통 셸KOISCORE 앱인토스용 공통 셸
상단 표시게임 타이틀 + 공용 젬게임 타이틀 + 공용 젬
사용자Google 로그인 + 프로필 설정Google 로그인 + 프로필 설정
게임 콘텐츠공통 게임 프레임공통 게임 프레임
광고웹 포털 광고Apps in Toss 광고 SDK

즉, 게임 연동 방식은 동일하고 실행 채널이 선택하는 광고 어댑터만 달라집니다. 앱인토스에서는 웹 광고 슬롯을 숨기고 Apps in Toss 광고만 호출합니다.

04 / REVIEW

검수와 출시

  1. 등록 데이터와 상품 매니페스트를 검증합니다.
  2. 390×844, 360×800, 1366×768, 1920×1080 뷰포트를 확인합니다.
  3. 언어, 음소거, 포털 메시지, 지갑 영수증과 중복 지급 방지를 확인합니다.
  4. 설정된 유효 플레이타임·세션 조건을 충족하면 승인하거나 운영자가 강제 출시합니다.