# 플롯 모드 프로토콜 > **버전:** 1.0.0 > **최종 수정:** 2026-01-25 > **호환:** CWS Writing Guide v4.2.0+ > **용도:** 플롯 작성 및 타임라인 검증 (설계 단계 품질 보증) --- ## 📋 CHANGELOG ### v1.0.0 (2026-01-25) - 초기 버전 **배경:** - 문제: 플롯 자체에 타임라인 역행 존재 - 예시: 8화(11월) → 9화(10월), 20화(4월) → 21화(3월) - 결과: 작성 단계에서 역행 발생 → FIX 모드 재배치 필요 - 근본 원인: **설계 단계(플롯)에 검증 프로토콜 없음** **추가:** - 📌 플롯 작성 시 타임라인 검증 프로토콜 - 이전 화 종료일 ≤ 다음 화 시작일 강제 검증 - 전체 플롯 타임라인 일관성 체크 - 회상/병렬 서사 명시 규칙 - 플롯 형식 표준 **철학:** ``` PLOT 모드 = 설계 단계 품질 보증 WRITING 모드 = 1차 방어선 (예방) VERIFICATION 모드 = 최후의 보루 (검증) → 설계가 올바르면 작성도 올바르다! ``` --- ## 🎯 플롯 모드 개요 **플롯 모드는:** - 신규 플롯 작성 또는 기존 플롯 수정 - 타임라인 일관성 필수 검증 - 회상/병렬 서사 명시 - 플롯 완성 후 전체 검증 **진입 명령:** - "플롯 작성" - "플롯 검증" - "X-Y화 플롯 작성해" - "plot-master.md 타임라인 검증해" --- ## 📝 플롯 작성 프로세스 ### Phase 1: 준비 ``` 1. 플롯 범위 확인 - 신규: X-Y화 (보통 5화 단위) - 수정: 특정 화 또는 전체 2. 필수 파일 읽기 - volumes/vol-XX/plot-master.md - volumes/vol-XX/timeline.md - volumes/vol-XX/characters.md 3. 이전 화 마지막 날짜 확인 - plot-master.md에서 이전 화 타임라인 추출 - 예: 7화 종료일 = 1945.9.20 ``` ### Phase 2: 각 화 플롯 작성 ``` 1. 화수 및 제목 설정 예: ### 8화: 금괴 탈취 작전 2. 🚨 타임라인 설정 및 검증 (필수!) ❌ **이 절차를 건너뛰면 타임라인 역행이 발생합니다!** ✅ **반드시 아래 3단계를 순서대로 확인하세요:** --- **Step 1: 이전 화 종료 날짜 확인** ```bash # plot-master.md에서 이전 화 검색 grep "7화" plot-master.md # 출력 예시: # ### 7화: 금괴 탈취 작전 # - **타임라인:** 1945.9.11-9.20 → 이전 화 종료일: 1945.9.20 ``` **Step 2: 현재 화 타임라인 설정** ``` 현재 화: 8화 플롯 내용: 건준 활동, 신탁통치 준비 → 예상 기간: 1945.9.21-9.30 (10일) 시작일: 1945.9.21 종료일: 1945.9.30 ``` **Step 3: 타임라인 역행 체크 (필수!)** ``` 비교: - 이전 화 종료일: 1945.9.20 - 현재 화 시작일: 1945.9.21 판정: → 9.20 < 9.21 ✅ 정상! → 타임라인 설정: 1945.9.21-9.30 ``` **역행 감지 예시:** ``` 비교: - 이전 화 종료일: 1945.11.10 - 현재 화 시작일: 1945.10.1 판정: → 11.10 > 10.1 ❌ 역행! ⚠️ 즉시 중단! 원인 파악: 1. 회상 장면인가? → 제목에 "[회상]" 추가 2. 병렬 서사인가? → 제목에 "[병렬]" 추가 3. 플롯 순서 오류인가? → 순서 재조정 조치 후 다시 검증 ``` --- 3. 주요 내용 작성 - 날짜, 장소, 등장인물 - 핵심 내용 (3-5개 불릿) - 주요 장면 (구체적으로) 4. 형식 준수 ```markdown ### X화: 제목 - **타임라인:** YYYY.M.D-M.D - **장소:** 위치 - **등장인물:** 이름1, 이름2 - **주요내용:** * 내용1 * 내용2 ``` 5. 다음 화로 이동 ``` ### Phase 3: 전체 타임라인 검증 (필수!) ``` 플롯 작성 완료 후 반드시 실행: 1. 타임라인 추출 ```bash grep "타임라인:" plot-master.md | grep -v "^**타임라인:" ``` 2. 순서대로 검증 ```python # 의사 코드 timelines = extract_all_timelines("plot-master.md") for i in range(1, len(timelines)): prev_end = timelines[i-1].end_date curr_start = timelines[i].start_date if curr_start < prev_end: # 역행 감지! if is_flashback(timelines[i].title): # 회상이면 OK continue elif is_parallel(timelines[i].title): # 병렬 서사면 OK continue else: # 역행 오류! report_error(i, prev_end, curr_start) ``` 3. 검증 결과 보고 ``` ✅ 타임라인 검증 통과 - 총 52화 - 역행 0건 - 회상 2건 (명시됨) - 병렬 3건 (명시됨) 또는 ❌ 타임라인 역행 발견! 8화 → 9화: - 8화 종료: 1945.11.10 - 9화 시작: 1945.10.1 → 11월 다음에 10월 ❌ 조치 필요: - 9화가 회상이면 제목에 "[회상]" 추가 - 아니면 8화/9화 타임라인 재조정 ``` ``` --- ## 🔄 회상/병렬 서사 처리 ### 회상 장면 **명시 규칙:** ```markdown ### 21화: [회상] 1945년 가을 - **타임라인:** 1945.10.1-10.15 - **주요내용:** * 과거 회상 * 플래시백 장면 ``` **특징:** - 타임라인이 이전 화보다 과거여도 OK - 제목에 반드시 `[회상]` 또는 `[플래시백]` 표시 - WRITING 모드에서도 회상 처리 - VERIFICATION 모드에서 역행 검증 제외 ### 병렬 서사 **명시 규칙:** ```markdown ### 24화: [병렬] 만주에서 - **타임라인:** 1946.3.20-3.22 - **주요내용:** * 만주 사건 (메인 서사와 동시 진행) * 다른 장소, 같은 시간 ``` **특징:** - 메인 서사와 시간대 겹침 OK - 제목에 반드시 `[병렬]` 표시 - 지리적으로 다른 장소에서 동시 진행 - VERIFICATION 모드에서 역행 검증 제외 --- ## ✅ 플롯 작성 체크리스트 ### 각 화 작성 시 ``` - [ ] 이전 화 종료일 확인 - [ ] 현재 화 시작일 ≥ 이전 화 종료일 - [ ] 타임라인 형식: YYYY.M.D-M.D - [ ] 회상이면 제목에 "[회상]" 명시 - [ ] 병렬이면 제목에 "[병렬]" 명시 - [ ] 장소, 등장인물 명시 - [ ] 주요내용 3개 이상 ``` ### 전체 플롯 완성 후 ``` - [ ] 전체 타임라인 추출 - [ ] 순서대로 역행 검증 - [ ] 역행 발견 시 회상/병렬 확인 - [ ] 회상/병렬 아니면 수정 - [ ] 최종 검증 통과 - [ ] Git 커밋 ``` --- ## 🚨 플롯 타임라인 검증 명령어 ### Bash 스크립트 예시 ```bash #!/bin/bash # plot-timeline-check.sh # 타임라인 추출 (화수 제외) grep -n "### [0-9]" plot-master.md | while read line; do chapter=$(echo "$line" | grep -oP '\d+화') timeline=$(grep -A 5 "$line" plot-master.md | grep "타임라인:" | grep -oP '\d{4}\.\d+\.\d+-\d+\.\d+') echo "$chapter: $timeline" done # 수동 검증: # 1. 각 화의 종료일 < 다음 화 시작일 확인 # 2. 역행 발견 시 "[회상]" 또는 "[병렬]" 확인 ``` --- ## 📊 플롯 형식 표준 ### 필수 형식 ```markdown ### X화: 제목 - **타임라인:** YYYY.M.D-M.D - **장소:** 위치 - **등장인물:** 이름1, 이름2, 이름3 - **주요내용:** * 핵심 내용 1 * 핵심 내용 2 * 핵심 내용 3 ``` ### 회상 형식 ```markdown ### X화: [회상] 제목 - **타임라인:** YYYY.M.D-M.D (과거 날짜 OK) - **장소:** 위치 - **등장인물:** 이름1, 이름2 - **주요내용:** * 회상 장면 설명 ``` ### 병렬 서사 형식 ```markdown ### X화: [병렬] 제목 - **타임라인:** YYYY.M.D-M.D (메인과 겹침 OK) - **장소:** 위치 (메인과 다름) - **등장인물:** 이름1, 이름2 - **주요내용:** * 병렬 서사 설명 ``` --- ## 🔧 플롯 수정 프로토콜 ### 타임라인 수정 필요 시 ``` 1. 문제 파악 - 어느 화에서 역행 발생? - 회상/병렬이 맞는가? 2. 영향 범위 확인 - 해당 화만 수정? - 이후 모든 화 조정? 3. 수정 방법 선택 **옵션 1: 해당 화를 회상/병렬로 변경** - 제목에 "[회상]" 또는 "[병렬]" 추가 - 빠르고 간단 - 서사적으로 타당한 경우 **옵션 2: 타임라인 재조정** - 이전 화 또는 현재 화 날짜 수정 - 이후 화들도 영향받을 수 있음 - 서사 흐름 유지 **옵션 3: 화 순서 변경** - 플롯 순서 자체를 재배치 - 가장 큰 변경 - 필요시에만 사용 4. 수정 후 전체 재검증 5. Git 커밋 "plot-master.md: X화 타임라인 수정 문제: X화(날짜A) → Y화(날짜B) 역행 조치: [선택한 옵션] 전체 타임라인 검증: 통과 ✅" ``` --- ## 📋 Best Practices ### 1. 타임라인 간격 ``` ✅ 권장: - 화 간격: 최소 1일 이상 - 긴 기간: 명시 (예: 1946.1.1-3.31) - 짧은 기간: 시간 명시 (예: 1946.5.15 오후-저녁) ⚠️ 주의: - 같은 날짜 연속 사용 가능 (시간 구분) - 예: - 32화: 1946.5.15 오전 - 33화: 1946.5.15 오후 ``` ### 2. 회상/병렬 사용 ``` ✅ 회상 사용 케이스: - 과거 사건 설명 - 캐릭터 백스토리 - 플래시백 장면 ✅ 병렬 사용 케이스: - 다른 장소 동시 사건 - 멀티 시점 서사 - 동시다발 전개 ``` ### 3. 플롯 작성 순서 ``` 권장: 1. 전체 타임라인 스케치 - 1부: 1945.8-10 (10화) - 2부: 1945.11-12 (10화) - 3부: 1946.1-6 (20화) - 4부: 1946.7-12 (12화) 2. 각 부별 상세 플롯 작성 - 1부 1-10화 작성 → 타임라인 검증 - 2부 11-20화 작성 → 타임라인 검증 - ... 3. 전체 통합 검증 - 1-52화 전체 타임라인 체크 - 역행 0건 확인 ``` --- ## 🔄 다른 모드와의 연계 ### PLOT → WRITING ``` PLOT 모드에서 타임라인 검증 완료 → WRITING 모드에서 타임라인 체크포인트 통과 가능 → 작성 단계 역행 0건 ``` ### PLOT → VERIFICATION ``` PLOT 타임라인 정상 → WRITING 정상 작성 → VERIFICATION 타임라인 검증 통과 → FIX 모드 재배치 불필요 ``` --- ## ⚠️ 금지사항 ``` ❌ 타임라인 없이 플롯 작성 ❌ 역행 무시하고 진행 ❌ 회상/병렬을 명시하지 않고 역행 사용 ❌ 전체 검증 없이 플롯 완료 ❌ 날짜 형식 불일치 (YYYY.M.D-M.D 필수) ``` --- ## 📊 플롯 타임라인 검증 예시 ### 정상 케이스 ```markdown ### 7화: 금괴 탈취 작전 - **타임라인:** 1945.9.11-9.20 ### 8화: 건준 활동 - **타임라인:** 1945.9.21-9.30 ✅ 9.20 < 9.21 ### 9화: 신탁통치 준비 - **타임라인:** 1945.10.1-10.15 ✅ 9.30 < 10.1 ``` ### 역행 케이스 (오류) ```markdown ### 7화: 금괴 탈취 작전 - **타임라인:** 1945.9.11-9.20 ### 8화: 건준 활동 - **타임라인:** 1945.11.1-11.10 ### 9화: 신탁통치 준비 - **타임라인:** 1945.10.1-10.15 ❌ 11.10 > 10.1 역행! ``` ### 회상 케이스 (정상) ```markdown ### 20화: 만주 진출 - **타임라인:** 1946.4.1-4.30 ### 21화: [회상] 1945년 가을 - **타임라인:** 1945.10.1-10.15 ✅ 회상으로 명시됨 ### 22화: 희토류 확보 - **타임라인:** 1946.5.1-5.10 ✅ 20화 이후 정상 ``` --- *플롯이 올바르면 작성도 올바르다. 설계 단계 품질이 모든 것의 시작!*