「말포이가 나보고 책임지래」 — 8학년 마법약 사고 수습 중
이 문서는 내부용이에요. 게임을 브루니월드에 올리기 전에 볼 것과, 올린 뒤에 무엇을 보고 어떤 조건에서 무엇을 할지를 적어요. 법률 자문이 아니라 공개 자료 조사예요. 확인하지 못한 건 「미확인」, 근거를 두고 짐작한 건 「추정(근거)」로 적었어요. 출처 주소는 모두 2026-10-14 에 열어 봤어요.
1판과 가장 크게 달라진 곳은 고지예요. 1판은 타이틀 화면과 기획서 하단에 긴 고지문을 붙였는데, 주인이 그걸 빼라고 정했어요(2026-10-14). 그래서 이 문서는 고지문이 막아 주던 것을 하나씩 짚고, 고지문 없이 무엇으로 버티는지를 적어요(4장). 게임 화면과 다른 기획서에는 고지문을 두지 않고, 위험은 여기 한 곳에만 기록해요.
표기는 바이블과 같아요. [원작]은 원작 본문 근거, 팬덤 설정은 원작에 없지만 팬덤에서 널리 쓰는 설정, IF는 이 게임이 새로 만든 설정이에요. 「8학년」은 팬덤 설정이고 원작 공식이 아니에요.
01 · RIGHTS HOLDER워너 브라더스와 Wizarding World Digital 은 팬 창작을 어디까지 허용하는지 문서로 공개하지 않았어요. 공식 사이트 harrypotter.com 이용약관은 사이트 자료를 개인적·비상업적 용도로만 쓰게 하고, 요청하지 않은 아이디어나 이야기는 받지 않는다고 적어요(harrypotter.com/terms, 2026-10-14 확인). J.K. 롤링 공식 사이트는 「WIZARDING WORLD」가 롤링과 워너 브라더스의 상표라고 밝혀요(jkrowling.com/tcs, 2026-10-14 확인).
그래서 이 게임은 허락받은 게임이 아니에요. 우리가 기대는 건 권리자가 무료 팬 창작을 대체로 내버려 둬 온 관행이고, 요청이 오면 내린다는 전제로 운영해요.
이번 조사에서 확인한 조치는 다섯 건이에요. 다섯 건 모두 돈이 오가는 자리(모금·판매·유료 행사)에서 조치가 들어갔어요. 무료 팬 게임을 콕 집어 내린 사례는 못 찾았어요 — 「미확인」이고, 없다는 증거는 아니에요.
| 연도 | 대상 | 문제가 된 지점 | 결과 | 이 게임과의 거리 | 출처 |
|---|---|---|---|---|---|
| 2001~2002 | 팬 사이트들 | 'Hogwarts'·'Dumbledore' 같은 이름 사용 | 팬 보이콧 뒤 워너가 경고장을 거둠 | 호그와트·슬러그혼·필요의 방 같은 고유명사를 그대로 써요. 그 뒤 이름 사용만으로 조치한 사례는 못 찾았어요 | fanlore PotterWar |
| 2007~2008 | 「Harry Potter Lexicon」 인쇄본 | 무료 웹사이트는 묵인, 책으로 팔려 하자 소송 | 2008년 9월 뉴욕남부지법이 침해 인정 | 판매가 없어요. 같은 내용도 팔면 지위가 바뀐다는 사례로 읽어요 | Wikipedia |
| 2015 | 팬 MMO 「The Wizarding World Online」 | 킥스타터 모금 | 중단 요청, 개발팀 수용 | 게임이라는 점은 같고 모금이 없다는 점이 달라요 | MassivelyOP |
| 2016~(합의 시점 미확인) | 팬 영화 「Voldemort: Origins of the Heir」 | 킥스타터 모금 | WB 와 다툰 끝에 비영리 조건으로 합의(합의 시점 미확인) | 합의 조건이 「수익을 내지 않는다」였어요. 이 게임의 출발 조건과 같아요. 이 영화는 첫 화면에 비상업·무관계 고지를 띄웠는데, 우리는 그 고지를 띄우지 않기로 했어요(4장) | Wikipedia |
| 2018 | 미국 지역 팬 축제들 | 유료 행사·상품 | 이름·장소·물건 사용 금지 지침, 일부 축제 취소 | 오프라인 상업 행사라 거리가 멀어요 | CinemaBlend |
2004년 5월 BBC 보도에서 롤링의 저작권 대리인 쪽 대변인은, 롤링이 팬 창작을 기쁘게 여기고 걱정은 그게 비상업 활동으로 남느냐라고 했어요(fanlore 정리, 2026-10-14 확인). 같은 에이전시 변호사는 아이들이 볼 수 있는 곳의 성적으로 노골적인 팬 창작물에 경고장을 보냈다고 했어요(fanlore J.K. Rowling, 2026-10-14 확인). 영문 위키백과는 이걸 세 조건으로 정리해요(Legal issues with fan fiction, 2026-10-14 확인).
v2 는 조건 ② 를 1판보다 약하게 지켜요. 게임 화면에서 「관계없음」을 말하지 않기 때문이에요. 아래 표에 그 사실을 그대로 적었어요.
| 조건 | v2 의 대응 | 어디서 확인하나 | 깨지는 경우 |
|---|---|---|---|
| ① 팔지 않는다 | 광고·후원·판매·모금 없음. 게임과 기획서 페이지는 site/measure.js(광고·후원·판매 링크 스위치가 모인 파일)를 불러오지 않아요 | 배포 파일에서 measure.js·data-buy·SUPPORT_URL 검색 0건 | 사이트 공통 틀을 붙이다가 measure.js 가 딸려 오는 경우. 게임은 공통 틀을 쓰지 않아요 |
| ② 롤링이 관여하지 않았다고 밝힌다 | 약해짐 게임 화면에는 고지문이 없어요. 남은 건 탭 제목(<title>)의 「해리 포터 팬 미연시」와 이 문서의 기록이에요. 「팬」이라는 단어가 공식작이 아님을 알리는 유일한 화면 신호예요 | game/index.html 의 <title> 이 「말포이가 나보고 책임지래 — 해리 포터 팬 미연시」인지(바이블 8-2) | 탭 제목에서 「팬」을 빼는 경우. 그러면 화면 어디에도 비공식 표시가 남지 않아요 |
| ③ 포르노·인종차별 내용이 없다 | 수위 상한은 손잡기·포옹·업기·이마 맞대기·키스 직전 암전(E1 1회). 머글 태생 비하어는 단어 자체를 쓰지 않고, 그 말을 한 일을 말포이가 사과하는 장면(ch3_s4a)으로만 다뤄요 | 스크립트 전수 검색(표 7·8) + 통독 검수 | TS 소재를 몸 묘사로 끌고 가는 경우. 2004년 경고장이 실제로 간 범주예요 |
브루니월드는 한국어 사이트이고 운영자도 한국에 있어서 한국 법을 기준으로 봤어요. 조문·판례는 공개 자료로 확인했고, 팬 게임에 그대로 적용된 판단은 못 찾은 게 많아요.
| 쟁점 | 조문·판례 | 내용 | 이 게임의 위치 | 확실도 |
|---|---|---|---|---|
| 2차적저작물 | 저작권법 제5조·제22조 (로톡 해설) | 원작을 각색·변형한 창작물은 따로 보호되지만, 허락 없이 만들면 원저작자의 2차적저작물작성권 침해가 될 수 있어요 | 해리·말포이·호그와트를 그대로 빌려 와요. v2 는 주인공까지 원작 인물이라 1판보다 원작 의존도가 높아요 | 추정(원작 인물을 그 인물로 내세움) |
| 캐릭터의 보호 | 대법원 2010. 2. 11. 선고 2007다63409 「신야구」 (casenote) | 창작성 있는 캐릭터는 원작과 별개로 저작물이 돼요. 실질적 유사성이 없는 별개 저작물이면 침해가 아니라는 판단도 같이 있어요 | 이름·설정을 그대로 쓰니 「별개 저작물」 쪽에 기대기 어려워요 | 추정(판결 취지에서 유도) |
| 공정이용 | 저작권법 제35조의5 | 목적·성격, 저작물 종류, 이용 비중, 시장 영향을 종합해 판단해요 | 비영리·무료라 시장 영향에서 유리해요. 원작 문장을 쓰지 않아 이용 비중은 고유명사·사건 수준이에요(바이블 0-1 원칙 4) | 미확인 — 팬 게임에 공정이용을 인정한 국내 판례를 못 찾음 |
| 형사 절차 | 저작권법 제140조 (casenote) | 원칙적으로 권리자 고소가 있어야 해요. 영리 목적이나 상습이면 고소 없이도 기소될 수 있어요 | 광고·후원·판매가 없어 「영리 목적」에 들지 않게 설계했어요 | 조문 시점은 casenote 표기 기준 — 현행 여부는 law.go.kr 재확인 필요 |
| 등급분류 | 게임산업법 제21조 제1항, 시행령 제11조의3 (이투데이) | 개인·동호회가 영리 목적 없이 만든 게임은 2019-09-03 시행 개정으로 등급분류 면제예요. 청소년이용불가 기준에 해당하는 내용이 있으면 면제에서 빠져요 | 비영리 + 전연령 수위라 면제 범위 안이에요. 수위를 올리면 면제가 사라져요 | 조문 근거 있음 |
| 동일성유지권 | 저작권법 제13조 | 저작인격권 — 원작의 내용·형식을 바꾸지 않을 권리 | 원작 인물의 성별이 바뀌고, 해리·론이 복학하고, 원작 에필로그와 다른 IF 예요. 1판은 고지문에 「원작과 다른 가정」을 적었지만 v2 화면에는 그 문장이 없어요(표 4) | 미확인 — 성별 변경 설정이 다퉈진 국내 사례를 못 찾음 |
| AI 생성물 표시 | 인공지능 기본법 제31조, 2026-01-22 시행 (korea.kr) | 생성형 AI 결과물에 그 사실을 표시하게 해요. 의무 주체는 인공지능사업자예요 | 표 5 에서 따로 다뤄요 | 미확인 — 사업자 해당 여부 |
법으로 보면 이 게임은 「허락받지 않은 2차적저작물」이에요. 그 사실은 못 피해요. 대신 고소 없이 형사 절차가 움직이는 조건(영리·상습)과 등급분류 면제가 깨지는 조건(청소년이용불가 수위)은 둘 다 피해요. 남는 건 권리자의 요청이고, 그건 내림 절차(5장)로 대응해요.
03 · NOTICE POLICY주인 결정(2026-10-14)이에요. 1판 타이틀 화면의 긴 고지문 상자와 「제작:」 줄을 둘 다 반려했고, v2 타이틀에는 제목·부제·메뉴만 둬요(바이블 8-2). 기획서 6편 하단의 고지문 상자도 없앴어요. 이 결정을 되돌리자는 게 이 장의 목적은 아니에요. 고지문이 하던 일을 적어 두고, 무엇이 비고 무엇이 남는지 나란히 보이게 하려는 거예요.
| 1판 고지문의 문장(요지) | 막아 주던 것 | v2 에서 잃는 것 | v2 에 남는 대응 | 남는 위험 |
|---|---|---|---|---|
| 비공식·비영리 팬 창작물, 롤링·워너·출판사와 관계없고 승인받지 않음 | 「공식 오인」 주장에 대한 반론 근거. 롤링 측 조건 ②(표 2) | 화면 안에서 「관계없음」을 말하는 문장 | 탭 제목 「— 해리 포터 팬 미연시」, meta description, 이 문서의 기록. 비영리 유지(광고·후원·판매 0) | 공식작으로 착각했다는 항의가 오면 화면상 반론 근거가 탭 제목 한 단어뿐이에요 |
| 인물·장소·주문 이름의 권리는 원권리자에게 있음 | 권리 귀속을 다투지 않는다는 표시 | 그 표시 | 판매가 없어 권리를 주장할 일이 생기지 않아요. 권리자 요청 시 즉시 내림(5장) | 낮음(추정 — 권리를 주장하는 행위 자체가 없음) |
| 모든 대사와 서술은 새로 씀, 원작과 다른 가정(IF) | 원작 문장 복제 의심, 원작을 고친 것처럼 보이는 문제(동일성유지권, 표 3) | IF 명시. 해리·론 복학과 원작 에필로그 이탈이 「설정」이라는 표시 | 원작 문장 0줄(바이블 9-1 검사), 기획서 02 의 원작/팬덤 설정/IF 구분표. 게임 안에서는 날짜(1998~1999)와 「8학년」이 IF 임을 짐작하게 해요 | 원작 결말을 바꿨다는 반발(표 6)에 화면에서 답할 문장이 없어요 |
| 등장인물은 모두 성인 | TS·로맨스 소재에서 미성년 오해. 플랫폼 신고 기준(겉보기 나이) | 성인 명시 문장 | ch1_s1 헤르미온느 대사로 「우리 전부 열여덟 넘었어」를 본문에 박아요(필수 비트, 문장은 새로). 그림은 「26 years old」로 성인 얼굴 강제, 하급생·지니·루나는 등장·언급 없음 | ch1_s1 을 건너뛰거나 그림만 본 사람은 나이 정보를 못 봐요 |
| 그림은 생성형 AI(FLUX.1 [schnell], Workers AI)로 만들고 사람이 고름, 배우 닮게 하지 않음, 그림 권리 주장 안 함 | AI 미고지 반발, 인공지능 기본법 제31조 쪽 위험 | AI 그림 고지 전부 | 05-art 기획서에 모델·생성 조건 기록. 게임 화면에는 없음 | 표 5 에서 따로 봐요. 남는 위험 중 가장 커요(추정 — 팬덤 반발은 권리 문제보다 먼저 와요, risk-art.md 2장) |
| 광고·후원·판매 없음, 요청 시 바로 내림 | 권리자에게 보내는 약속 | 공개된 약속 | 약속은 화면에서 빠졌지만 절차는 그대로 둬요(5장 표 9 뒤 내림 절차) | 권리자가 연락할 경로가 여전히 없어요(미확인 — 주인이 정함) |
| 「제작: …」 줄 | 만든 쪽 표시 | — | 신원 원칙(원칙 8)과 같은 방향이라 잃는 게 아니에요 | 없음 |
research/risk-art.md 1-4 와 2장에 남아 있어요. 복원할 때는 긴 상자가 아니라 메뉴 아래 작은 글씨 한 줄을 권해요 — 1판에서 반려된 건 「긴 고지문」이었어요.v2 그림 45장(표정 25 · 배경 12 · CG 8)은 아직 생성 전이에요. 생성은 주인 승인 뒤 메인이 해요(바이블 5-1). 그림이 생기는 순간 아래 위험이 같이 생겨요.
| 항목 | 사실 | 우리 해당 여부 | 고지문 없이 할 수 있는 것 |
|---|---|---|---|
| 인공지능 기본법 제31조 | 2026-01-22 시행. 생성형 AI 결과물 표시 의무, 의무 주체는 인공지능사업자이고 단순 이용자는 해당하지 않는다고 보도됐어요. 예술적·창의적 표현물은 감상을 방해하지 않는 방식으로 고지할 수 있고(제3항), 과태료는 최소 1년 계도기간이에요(korea.kr) | 미확인 남의 모델을 API 로 불러 쓰는 개인이 사업자인지 판단 근거를 못 찾았어요 | 05-art 에 생성 사실을 기록. 계도기간이 끝나거나 고시가 나오면 다시 봐요(표 11) |
| 팬덤의 AI 미고지 반발 | itch.io 가 이용자 요구로 AI 태그를 도입했어요. 경쟁작 「TS 말포이 미연시 EP.1」(itch.io)은 AI 사용을 공개했어요(trend.md 5장) | 해당 — 그림이 화면에 나오면 바로 걸려요 | 갤러리 화면 하단에 작은 글씨로 「그림: 생성형 AI」 정도를 둘지 주인에게 물을 것. 타이틀은 건드리지 않아요 |
| itch.io 표시 규정 | 2024-11-20 부터 에셋 페이지는 AI 사용 표시 필수, 게임 페이지는 선택. 손으로 고쳐도 AI 를 쓰면 「AI Generated」로 분류(GamingOnLinux) | 지금은 해당 없음 — 브루니월드에만 올려요 | itch.io 에 올리면 그 플랫폼 표시 칸에 체크해요. 그날 규정을 다시 확인 |
| Steam | 2024-01-10 부터 AI 사용 공개, 2026-01-17 개정으로 플레이어에게 보이는 결과물로 범위를 좁힘(GamesHub) | 해당 없음 — 배포 경로에서 뺐어요. 권리 없는 IP 게임은 받지 않을 것으로 봐요(추정 — 개발자가 침해 콘텐츠가 없다고 Valve 에 약속하는 구조) | — |
| AI 그림의 저작권 | 문체부 「생성형 AI 저작권 안내서」(2023-12-27): 인간의 창작적 개입 없는 AI 산출물은 등록이 안 돼요(AI타임스) | 해당 — 그림을 팔지 않으니 실무 영향은 없어요 | 그림의 권리를 주장하지 않아요. 고지문이 없어도 행동은 같아요 |
| 실존 배우 닮음 | 모델이 영화 스틸을 학습했을 가능성(추정, risk-art.md 4-2) | 해당 | 프롬프트에 배우 이름·「Harry Potter」·「Hogwarts」·「film」·「movie still」·「uniform」 금지(바이블 5-3). 검수에서 닮은 그림을 버려요 |
v2 는 해리가 주인공이고 말포이가 공략 대상이라, 1판보다 원작 결말과 정면으로 부딪혀요. trend.md 4장의 지뢰 1(원작 결말 훼손)과 지뢰 3(드레해리 BL 팬층과의 충돌)이 그대로 걸려요.
| 이탈 지점 | 원작/설정 | 걸리는 지뢰 | v2 의 처리 | 남는 손실 |
|---|---|---|---|---|
| 해리·론의 복학 | 작가 쪽 서술로는 둘이 복학하지 않고 오러가 됐다고 널리 알려져 있어요(원문 미확인). 8학년 자체가 팬덤 설정 | 지뢰 1 | IF 로 둬요. 게임 안에서 설명하지 않고 기획서 02 에 구분 표시. 날짜(1998-09 ~ 1999-06)는 수첩에만 띄워요(바이블 8-4) | 「해리가 왜 학교에 있냐」는 지적. 화면에는 답이 없어요(표 4) |
| 해리 × 말포이 로맨스 | 원작에 없음. 해리는 원작에서 지니와 이어져요[원작 DH 에필로그] | 지뢰 1 · 지뢰 3 | 해리는 연애 상대 없이 복학한 상태로 시작하고 그걸 대사로 짚지 않아요(바이블 1-2). 상한은 E1 키스 직전 암전 1회. 말포이는 TS 상태라 BL 태그와 겹치지 않지만, E2(원래 몸으로 돌아온 말포이와 관계가 이어짐)는 드레해리로 읽힐 수 있어요 | 원작 커플을 깨는 것 자체를 싫어하는 층(루리웹 「TS 말포이에서 반드시 지켜야하는 것」 글). 드레해리 팬층의 「TS 로 돌려 말한다」는 반응 — 미확인 |
| 지니 미언급 | 지니는 1981-08-11생이라 1999-06 에도 17세[팬위키] | 지뢰 1 | 원칙 1(전원 성인) 때문에 등장·대사·그림·이름 언급이 전부 없어요. 「해리 여자친구는?」 같은 대사도 쓰지 않아요 | 지니가 아예 없는 걸 어색하게 보는 독자. 이건 연령 원칙과 맞바꾼 손실이에요 |
| 애스토리아·스코피어스 | 원작 에필로그의 말포이 배우자·아들 | 지뢰 1 | 등장·언급 없음(바이블 9-1). 원작 배우자를 연애의 장애물로 쓰지 않아요 | 낮음 |
| 슬러그혼 재직·맥고나걸 교장 | 슬러그혼 전후 재직은 원작 서술 미확인 → IF. 맥고나걸 교장은 널리 알려진 서술이나 원문 미확인 | — | 기획서 02 구분표에 IF·미확인 표시 | 낮음 |
| 사고 원리(자기 머리카락을 넣은 폴리주스) | 폴리주스 규칙은 [원작 CS]. 자기 머리카락 사례와 「반대쪽을 비춘다」는 IF | — | 원작에 영구 성전환 마법이 없다는 점(canon.md 2-5)을 인정하고 IF 로 표시 | 「원작에 그런 약 없다」는 지적은 받아들여요 |
바이블 0-1 의 원칙 여덟 개를 배포 전에 하나씩 확인해요. 「확인 방법」은 기억에 기대지 않도록 검색어나 셀 대상으로 적었어요. 이 문서를 쓰는 시점에 스크립트는 집필 중이라 결과 칸은 「배포 전 확인」이에요.
| # | 원칙 | 이 게임의 구체 규칙 | 확인 방법 | 결과 |
|---|---|---|---|---|
| 1 | 전원 성인 | 무대 1998-09 ~ 1999-06, 8학년만 등장. 8학년은 1979-09-01 ~ 1980-08-31 출생이라 1998-09-01 에 전원 18세 이상. 지니·루나·하급생·머틀은 등장·대사·그림 없음. 퀴디치는 8학년 친선전(IF) | 스크립트에서 「지니」「루나」 검색 0건(validate.mjs 오류 항목) · ch1_s1 에 나이 못박는 헤르미온느 대사가 있는지 · 그림 45장을 「어려 보이는 얼굴」 기준으로 다시 봄 | 배포 전 확인 |
| 2 | 전연령 로맨스 | 상한은 손잡기·포옹·업기·이마 맞대기·키스 직전 암전(E1 1회, E2·E3 는 포옹까지) | 신체 부위 단어(가슴·허리·엉덩이·다리·몸매) 검색 0건 · 「키스」 출현이 ch5_e1 에만 있는지 | 배포 전 확인 |
| 3 | TS 를 웃음거리·대상으로 쓰지 않음 | 웃음은 상황(솥·빗자루·슬러그혼·론의 식탐)에서. 드라마는 자존심·혼란·적응 | 표 8 금지 칸 전수 대조 · 「아가씨」 ch2_s2 1회, 「말포이 양」 ch3_s1 1회인지 셈 | 배포 전 확인 |
| 4 | 원작 문장 금지 | 대사·서술 전부 새로. 명대사·밈 변형 금지. 혼혈 왕자 메모 내용 인용 금지(「거꾸로 한 번」만) | 통독 검수(/proofread-kr) 때 원작 장면을 떠올리게 하는 대사 표시 · 「Malfoid」「foid」 검색 0건 · 바이블 9-1 밈 목록 검색 0건 | 배포 전 확인 |
| 5 | 비영리 | 광고·후원·판매·모금 없음. measure.js·외부 스크립트·폰트·추적 코드 없음 | 배포 디렉터리에서 measure.js·<script src="http·googletag·adsbygoogle·cloudflareinsights 검색 0건 | 배포 전 확인 |
| 6 | 사실 표기 | 조사 안 된 숫자·날짜는 「미확인」 또는 「추정(근거)」. 원작/팬덤 설정/IF 구분 | 스크립트에 6월 보름 정확한 날짜·인물 키·교수 나이·루시우스 재판 결과가 없는지 · 기획서에서 「적절히·등·예정·다양한」 검색 후 문맥 확인 | 배포 전 확인 |
| 7 | 말투 | UI 안내문·기획서 본문은 해요체. 대사는 바이블 2-3 말투표. narr·think 는 해리 1인칭 한다체 과거형 | 말포이 대사에서 여성형 어미(「~란다」「♡」「어머」) 검색 0건 · 서술에서 「그녀」 검색 0건 · think 비율 15% 이하(validate.mjs 경고) | 배포 전 확인 |
| 8 | 신원 | 작가·주인 실명·신원 정보 없음. 게임 화면에 「제작」 표기 없음 | 배포 파일에서 주인 실명·개인 메일·이력서 주소 검색 0건(검색어는 이 문서에 적지 않아요) · 「제작」 검색 0건 · 이미지 EXIF 작성자 칸 확인 | 배포 전 확인 |
바이블 1-5 를 그대로 옮겼어요. 집필과 검수 모두 이 표 하나로 판정해요. 서술(narr·think)에서는 말포이를 대명사로 부르지 않고 늘 「말포이」라고 써요.
| 허용 | 금지 |
|---|---|
| 키 차이 투닥(「포터, 그 선반 꺼내.」「아까는 내려다보더니?」), 소매가 손등을 덮음, 교복 바지 밑단을 접음, 목소리가 높아져 수업에서 말이 줄어듦, 빗자루가 빨라져서 신남 — 사실 정보와 행동으로만 | 가슴·허리·엉덩이·다리 등 신체 부위 언급, 몸매·외모 평가(「예쁘다」 포함 — 칭찬은 옷·비행·마법 실력·머리 묶은 모양까지) |
| 「말포이 양」 오기 1회(ch3_s1 슬러그 클럽 초대장) — 말포이가 정정을 요구하는 자존심 장면으로만 | 거울 앞 몸 관찰, 옷 갈아입기, 샤워·목욕·잠옷, 기숙사 침실 장면 |
| 「아가씨」 1회(ch2_s2 해설석) — 말포이가 받아치거나 해리가 막는 장면 | 성별 변화를 웃음거리로 쓰는 농담, 여성형 별명 짓기, 「여자 기숙사 계단」류 농담 |
| 말포이는 교복 바지를 고집함(스스로 고른 것). 넥타이는 슬리데린 그대로 | 노출·밀착을 위한 사고 장면(넘어져 안기기, 옷 젖어 비침 등). 비 맞는 장면은 망토·머리만 |
| 말포이 1인칭 「나」, 어미·말버릇·「포터」 호칭 그대로 | 변한 뒤 말투를 여성형으로 바꾸기(「~란다」「~거예요♡」「어머」) |
| 업기(ch3 선택 3-4 A) — 「가볍네.」「죽을래?」 정도의 투닥으로만 | 업기·부축을 신체 접촉 묘사로 늘이기 |
E3 「이대로 졸업한다」는 말포이가 지금 몸으로 졸업하는 쪽을 스스로 고르는 굿 엔딩이에요. 벌이나 실패로 그리지 않아요. 그렇게 그리면 성별이 바뀐 채 사는 삶을 「나쁜 결말」로 판정하는 게임이 돼요. 반대로 E6(해독약이 성 뭉고에 묶여 굳음)은 배드인데, 나쁜 건 몸이 아니라 말포이가 고를 기회를 잃은 거예요. 03-scenario 와 스크립트는 이 차이를 대사로 보여야 해요.
그림 쪽은 사람 검수가 마지막 관문이에요. 생성 모델은 부정 프롬프트를 받지 않아서, 2026-10-14 실측에서 지시하지 않은 맨다리가 나왔고 「mid-twenties」로도 10대 후반 얼굴이 나왔어요(risk-art.md 4장). 버림 기준은 바이블 5-1 대로 여섯 가지예요: 어려 보이는 얼굴, 지시 안 한 노출, 글자·서명·워터마크·로고, 실존 배우 닮음, 반질반질한 3D 피부, 고정 문장과 다른 머리색·눈색·넥타이 색. 모델 제공자도 아동 착취 콘텐츠·비동의 노출을 금지 용도로 적어요(Hugging Face 모델 카드, 2026-10-14 확인).
05 · DEPLOY배포는 저장소 규칙대로 메인이 해요(commit → push → 배포 → 실제 주소 열어 보기). 이 표는 그 전에 통과할 항목이에요. 위에서부터 보고, 하나라도 실패하면 배포하지 않아요.
| # | 단계 | 항목 | 통과 기준 |
|---|---|---|---|
| 1 | 스크립트 | 엔진 시작 검사 7개(바이블 9-2)와 node tools/validate.mjs | 타이틀에 빨간 오류 줄 없음, 콘솔 오류 0건, validate 오류 0건 |
| 2 | 스크립트 | 챕터 줄 수(narr·say·think) | ch1 170 · ch2 180 · ch3 200 · ch4 200 · ch5 270, 합계 1,020줄 목표(최소 950, 각 170 이상) |
| 3 | 스크립트 | 엔딩 비율 — 무작위 10,000회 | 여섯 엔딩 모두 1회 이상. 목표(E5 15 · E6 10 · E1 8 · E3 18 · E2 22 · E4 27 %)와 ±10%p 넘게 어긋나면 메인에게 문턱 조정안을 들고 알림. 1판 실측 E1 0.1% 라 0.5% 미만이면 honest>=45 → honest>=40 이 1순위 안 |
| 4 | 문체 | validate.mjs 문체 경고 — 「처럼 들렸」 전체 2회 이하, 「깨달았다」 전체 2회 이하, 씬 마지막 줄 think, think 비율 15% 초과 | 경고 0건, 또는 남긴 경고마다 이유를 03-scenario 에 적음 |
| 5 | 원칙 | 표 7 확인 방법 8줄 | 검색 0건 항목은 0건, 셈 항목은 정한 수 |
| 6 | 글 | 통독 검수(/proofread-kr) — 게임 UI 안내문과 기획서 6편 | UI·기획서 본문 해요체, 대사는 말투표대로. 「AI 같다」 금지 목록(바이블 0-2)에 걸리는 문장 0 |
| 7 | 타이틀 | 바이블 8-2 대로 제목·부제·메뉴만 | 고지문 상자·「제작」 줄·한 줄 소개·이름 입력 화면 없음. <title> 에 「해리 포터 팬 미연시」가 있음(표 4 의 남는 대응) |
| 8 | 그림 | 45장 파일 존재, 버림 기준 재검수. 생성 전이면 엔진 폴백(그라데이션·이름 카드)으로 도는지 | 기준에 걸린 그림 0장. 1판 그림 47장이 v2 그림처럼 섞여 있지 않음. prompts.json 에 seed 키 없음 |
| 9 | 그림 | prompts.json 에 배우 이름·「Harry Potter」·「Hogwarts」·「film」·「movie still」·「uniform」 없음 | 검색 0건 |
| 10 | 비영리 | measure.js·외부 스크립트·외부 폰트·추적 코드 없음 | 배포 디렉터리 검색 0건, 네트워크 탭에 다른 도메인 요청 0건 |
| 11 | 화면 | 모바일 가로 넘침 — iframe 프로브와 섹션 이분 탐색(CLAUDE.md 4장) | 넘치는 요소 0건, documentElement.scrollWidth = 화면 폭 |
| 12 | 저장 | localStorage 키(dracots2_save_1~6·dracots2_auto·dracots2_read·dracots2_endings·dracots2_settings) 쓰기 실패 처리. 1판 dracots_* 를 읽지 않는지 | 시크릿 창에서 실패 시 「저장이 안 됐어요」. 1판 세이브가 있는 브라우저에서 이어하기가 v2 세이브만 보여 줌 |
| 13 | 깃 | 배포 전에 push(소스 유실 사고의 교훈) | 원격 main 에 같은 커밋 |
| 14 | 배포 후 | 실제 주소에서 타이틀 → 처음부터 → ch1 첫 선택지(1-1)까지 진행 | 이름 입력 없이 바로 ch1 이 열림. 배포 성공 메시지가 아니라 실제 화면으로 확인 |
| 15 | 배포 후 | 프리뷰 도메인(*.bruni-world.pages.dev)과 본 도메인 | 두 주소 모두 200, 같은 화면 |
배포 경로(사이트 안 어느 주소에 둘지)와 사이트맵 포함 여부는 정해지지 않았어요 — 「미확인, 메인이 정함」. 사이트맵에 넣으면 검색 노출이 늘고 권리자 눈에도 쉽게 띄어요. 고지문이 없는 v2 에선 이 판단이 1판보다 무거워서 주인이 고르게 둬요.
「한 시간」은 우리가 정한 목표값이에요. 이 사이트에서 지운 페이지가 엣지 캐시 때문에 52분 동안 계속 뜬 적이 있어서(cf-cache-status: HIT, s-maxage=604800 — CLAUDE.md 4장), 지우지 않고 덮어요.
| 순서 | 할 일 | 확인 |
|---|---|---|
| 1 | 게임 index.html 과 기획서 7개 파일(목차 + 6편)을 중립 문구 한 장(「이 페이지는 내렸어요」)으로 덮어요 | 파일 8개가 같은 중립 문구 |
| 2 | 그림과 스크립트 JSON 6개(meta + ch1~ch5)를 배포 디렉터리에서 빼요 | 배포 디렉터리에 .jpg·story/ 없음 |
| 3 | site/_headers 에 게임 경로 Cache-Control: no-store 두 줄(/경로, /경로/*) — /about 과 같은 방식 | 응답 헤더에 no-store |
| 4 | commit → push → 배포 | 원격 main 에 내림 커밋 |
| 5 | 본 도메인·프리뷰 도메인에서 게임 주소와 그림 한 장 주소를 curl -sI 로 확인 | 게임은 중립 문구, 그림은 404. HIT 면 캐시 제거 후 다시 |
| 6 | 사이트맵·링크 페이지의 주소를 지우고 verify.py 실행 | verify 결과에 ⚠ 없음 |
저장소는 private 이라 깃 히스토리의 소스는 외부 노출이 아니에요. 권리자가 연락할 경로는 아직 없어요. 사이트 개인정보 처리방침에 문의 폼이 없다고 적혀 있고, 주인의 개인 메일을 새로 드러내면 원칙 8 에 걸려요. 연락 경로는 「미확인 — 신원을 드러내지 않는 조건에서 주인이 정함」으로 남겨요.
06 · METRICS이 게임은 measure.js 를 불러오지 않아요. 그래서 사이트 방문 집계(/api/hit)도 기본으로는 이 게임을 세지 않아요. 셀 수 있는 것과 없는 것을 나눠 적었고, 못 세는 걸 짐작으로 채우지 않아요.
| 지표 | 무엇을 세나 | 어떻게 세나 | 셀 수 있나 |
|---|---|---|---|
| 본문 분량 | 챕터별 narr·say·think 줄 수 | validate.mjs 또는 python3 로 ch1~ch5.json 집계 | 셀 수 있음 목표 1,020줄 · 2026-10-14 실측 1,320줄 |
| 대사 비율 | say 55% 이상, think 15% 이하(바이블 0-2) | 같은 집계에서 종류별 비율 | 셀 수 있음 「AI 같다」 반려를 숫자로 감시하는 유일한 지표예요 |
| 한 회차 길이 | 한 회차에 실제 읽는 줄 수 | 무작위 10,000회에서 회차당 지나간 줄 수 평균 | 셀 수 있음 2026-10-14 실측 평균 862줄(821~951). 약 45~65분은 줄당 3~4.5초 가정이라 추정 |
| 엔딩 비율 | 여섯 엔딩의 설계 비율 | 무작위 10,000회(표 9 의 3번). 1판 실측: E5 21.3 · E6 10.7 · E1 0.1 · E3 19.5 · E2 12.8 · E4 35.5 %(시드 20031014) | 셀 수 있음 설계 비율이지 실제 플레이어 비율이 아니에요. v2 실측은 03-scenario 에 |
| 그림 비용 | 뉴런 사용량 | 45장 × 후보 2 × 96 뉴런 = 8,640 뉴런 | 셀 수 있음 무료 10,000 뉴런/일 안. 생성은 주인 승인 뒤 |
| 무결성 | 엔진 시작 검사 7개, 내부 링크 200 | 타이틀 오류 줄, verify.py 재귀 크롤 | 셀 수 있음 verify.py 가 이 경로까지 도는지는 배포 후 확인 |
| 페이지 무게 | 첫 화면 바이트 | 네트워크 탭 또는 curl 로 index.html·engine.js·style.css 크기 합 | 셀 수 있음 |
| 방문 수 | 게임 주소가 열린 횟수 | 세려면 /api/hit 에 경로만 보내는 한 줄을 넣어야 하는데, 바이블 8-1 「추적 코드를 불러오지 않는다」와 부딪히는지 주인 판단이 필요해요 | 미확인 |
| 유입 경로 | 어느 사이트에서 왔나 | 방문 수와 같은 이유로 없음 | 미확인 |
| 플레이어 엔딩 도달 | 실제 플레이어가 본 엔딩 | 각자 브라우저의 dracots2_endings 에만 있고 서버로 보내지 않아요 | 셀 수 없음 설계상 |
| 완주율·이탈 지점 | 어느 씬에서 그만뒀나 | 서버로 보내는 기록 없음 | 셀 수 없음 |
| 팬덤 반응 | 커뮤니티 언급, 지뢰(표 6) 관련 반발 | 사람이 루리웹·에펨·아카라이브를 직접 검색 | 미확인 세션에서 따로 볼 때만 |
| 권리자 요청 | 건수, 내림까지 걸린 시간 | 요청 날짜·시각과 표 10 의 5번 확인 시각을 기록 | 셀 수 있음 0건에서 시작 |
실제 플레이어 수를 모르는 건 일부러 고른 거예요. 돈을 벌려는 게임이 아니라 사람을 세려고 추적 코드를 붙일 이유가 없어요. /api/hit 를 붙일지만 주인이 정하면 돼요.
07 · NEXT날짜만 박은 「예정」은 쓰지 않아요. 무엇이 일어나면 무엇을 하는지, 조건으로 적어요.
| 조건 | 할 일 | 누가 |
|---|---|---|
| 권리자 요청이 왔을 때 | 표 10 내림 절차를 즉시. 요청 시각과 확인 시각 기록 | 메인 |
| 주인이 고지 정책을 바꿨을 때 | 바이블 8-2 「없앤 것」에서 해당 항목을 빼고 타이틀에 한 줄 복원. 원문은 risk-art.md 1-4·2장에서 가져오되 한 줄로 줄여요. 이 문서 표 4 의 「남는 위험」 칸도 고쳐요 | 주인 결정 후 세션 |
| 집필이 끝났을 때 | node tools/validate.mjs 로 엔딩 비율을 재고 03-scenario 에 「실측」 기록. ±10%p 넘으면 문턱 조정안을 메인에게 | 세션 → 메인 |
| 주인이 그림 생성을 승인했을 때 | 메인이 gen.py 실행(45장 × 후보 2). 표 5 의 「팬덤의 AI 미고지 반발」 대응(갤러리 한 줄 여부)을 같은 날 주인에게 물음 | 메인 |
| 그림을 다시 뽑을 때(모델 교체·검수 탈락) | 바이블 5-1 버림 기준 그대로. 모델이 바뀌면 05-art 생성 조건표와 비용을 고침 | 세션 |
| 주인이 권리자 연락 경로를 정했을 때 | 게임 화면이 아니라 기획서 목차에 한 줄. 개인 메일·실명은 쓰지 않음 | 세션 |
| 주인이 itch.io 같은 외부 플랫폼 게시를 요청했을 때 | 그 플랫폼의 AI 표시·IP 규정을 그날 다시 확인하고 표 5 에 덧붙임. 플랫폼 표시 칸은 고지 정책과 별개로 채워요 | 세션 |
| 저장소를 공개로 돌릴 일이 생겼을 때 | 공개 전에 이 게임을 히스토리째 들어낼지 주인에게 물음 | 메인 |
| 인공지능 기본법 계도기간이 끝나거나 고시가 나왔을 때 | 제31조가 개인의 API 이용에 적용되는지 다시 확인 | 세션 |
| 커뮤니티에서 원작 결말 이탈 반발이 확인됐을 때 | 표 6 「남는 손실」을 실제 반응으로 고치고, 대응이 필요하면 주인에게 안을 냄. 게임 안에 해명 문장을 넣는 건 주인 결정 | 세션 |
| 속편·추가 루트 요청이 왔을 때 | 원칙 8개와 표 8 을 그대로 이어받음. 지니·루나 등장은 여전히 불가(1999-06 에도 17세) | 주인 결정 후 세션 |