Skip to content

Repository files navigation

그림잇기

운영자는 ChatGPT 로그인 후 방을 만들고, 참가자는 로그인 없이 방 코드로 들어오는 4인 협동 드로잉 게임입니다.

게임 모드

  • 30초 릴레이: 1분 동안 주제와 순서를 확인하고 모둠 채팅으로 회의한 뒤, 네 명이 30초씩 한 그림을 이어 그립니다. 그리기 단계에서는 펜 도구만 제공합니다.
  • 4컷 협동 만화: 1분 회의 후 네 명이 각자 맡은 컷을 2분 동안 동시에 완성합니다. 이미지 첨부, 드래그 앤 드롭, 클립보드 붙여넣기를 지원합니다.
  • 그림만 보고 평가: 완성 후 이름과 제작 과정 없이 작품만 보고 평가하고, 운영자가 최종 점수를 공개합니다.

운영 흐름

  1. 운영자가 ChatGPT 로그인 후 방을 만들고 게임 모드를 선택합니다.
  2. 운영자는 초대 링크·방 코드·QR 코드를 공유하고, 참가자는 로그인 없이 이름과 선택 번호를 입력해 입장합니다.
  3. 운영자는 참가자를 무작위·번호순·수동 방식으로 4인 모둠에 배정합니다.
  4. 주제 문구, 이미지 또는 PDF를 제시하고 게임을 시작합니다.
  5. 서버가 회의·그리기·평가 시간을 관리하고, 결과 화면에서 모둠 점수를 공개합니다.

운영 및 보호 기준

  • 운영자만 ChatGPT 로그인으로 방을 만들고 제어합니다. 운영 권한은 로그인 계정과 방 전용 권한을 함께 확인합니다.
  • 초대 링크와 QR에는 6자리 방 코드만 포함되며 운영자 권한은 포함되지 않습니다. 링크로 열면 참가자 입장 화면에 코드가 자동 입력됩니다.
  • 참가자는 계정 없이 입장하며 방당 최대 48명까지 참여할 수 있습니다. 4명씩 완성된 모둠 외 참가자는 평가단이 됩니다.
  • 제시 자료와 그림은 실제 파일 형식을 검사하고, 짧게 유효한 서명 URL로만 제공합니다.
  • 방 생성, 채팅, 그림 저장에는 남용 방지 한도를 적용하며 브라우저 탭을 닫으면 방 권한을 남기지 않습니다.
  • 이번 운영자 로그인 보강 전에 만든 방은 계정 소유자를 안전하게 확인할 수 없어 이어서 운영하지 않습니다. 업데이트 뒤 새 방을 만들어 사용합니다.

개발 및 검증

npm install
npm run dev
npm run lint
npx tsc --noEmit
GAME_URL=http://localhost:3000 node --test tests/four-player-contract.test.mjs
GAME_URL=http://localhost:3000 node tests/live-api-flow.mjs
GAME_URL=http://localhost:3000 node tests/e2e-room-flow.cjs
npm audit --omit=dev
npm test

구조화된 방·참가자·채팅·투표 상태는 D1에, 제시 자료와 그림 PNG는 R2에 저장합니다. 참가자 입장은 익명 방 권한으로 유지하고, 모든 운영자 동작은 ChatGPT 계정 소유권까지 서버에서 확인합니다.

About

운영자 로그인·익명 참가 방식의 4인 협동 드로잉 및 4컷 만화 교실 게임

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages