Files
novel-writing-guide/templates/standards/plot-mode.md
Alex e6962cb577 plot-mode.md v1.0.0 추가: 설계 단계 타임라인 검증 프로토콜
배경:
- 문제: 플롯 자체에 타임라인 역행 존재 (8화 11월 → 9화 10월)
- 근본 원인: 설계 단계(플롯)에 검증 프로토콜 없음
- 결과: 작성 단계에서 역행 발생 → FIX 모드 재배치 필요

추가 사항:
- 📌 PLOT 모드 프로토콜 신규 작성 (v1.0.0)
  - 플롯 작성 시 타임라인 검증 (3단계 체크포인트)
  - 이전 화 종료일 ≤ 다음 화 시작일 강제 검증
  - 전체 플롯 타임라인 일관성 체크
  - 회상/병렬 서사 명시 규칙 ([회상], [병렬] 태그)
  - 플롯 형식 표준 및 수정 프로토콜

- 📌 3단계 방어선 체계 확립
  - 1차 방어선: PLOT 모드 (설계 오류 차단)
  - 2차 방어선: WRITING 모드 (작성 시 예방)
  - 3차 방어선: VERIFICATION 모드 (최후의 보루)

- 📌 README.md 업데이트
  - 설계 모드 섹션 신규 추가
  - 워크플로우에 PLOT 모드 추가 (0단계)
  - 버전 관리 테이블에 PLOT v1.0.0 추가
  - FAQ 업데이트 (플롯 타임라인, 회상 처리)
  - 사용 가이드 개선 (신규 작품 vs 기존 작품)

철학:
```
PLOT 모드 = 설계 단계 품질 보증
WRITING 모드 = 1차 방어선 (예방)
VERIFICATION 모드 = 최후의 보루 (검증)

→ 설계가 올바르면 작성도 올바르다!
```

효과:
- 설계 단계에서 타임라인 역행 원천 차단
- FIX 모드 재배치 작업 대폭 감소
- 작성 효율성 향상

변경 파일:
- plot-mode.md: 신규 작성 (v1.0.0)
  - 플롯 작성 프로세스
  - 타임라인 검증 체크리스트
  - 회상/병렬 서사 처리
  - 전체 타임라인 검증
  - 플롯 수정 프로토콜
  - Best Practices
- README.md: 업데이트
  - 설계 모드 섹션 추가
  - 워크플로우 재구성
  - 버전 테이블 업데이트
  - FAQ 및 사용 가이드 개선

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-25 10:03:53 +09:00

11 KiB

플롯 모드 프로토콜

버전: 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. 플롯 순서 오류인가? → 순서 재조정

조치 후 다시 검증

  1. 주요 내용 작성

    • 날짜, 장소, 등장인물
    • 핵심 내용 (3-5개 불릿)
    • 주요 장면 (구체적으로)
  2. 형식 준수

    ### X화: 제목
    - **타임라인:** YYYY.M.D-M.D
    - **장소:** 위치
    - **등장인물:** 이름1, 이름2
    - **주요내용:**
      * 내용1
      * 내용2
    
  3. 다음 화로 이동


### Phase 3: 전체 타임라인 검증 (필수!)

플롯 작성 완료 후 반드시 실행:

  1. 타임라인 추출

    grep "타임라인:" plot-master.md | grep -v "^**타임라인:"
    
  2. 순서대로 검증

    # 의사 코드
    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 모드에서 역행 검증 제외

병렬 서사

명시 규칙:

### 24화: [병렬] 만주에서
- **타임라인:** 1946.3.20-3.22
- **주요내용:**
  * 만주 사건 (메인 서사와 동시 진행)
  * 다른 장소, 같은 시간

특징:

  • 메인 서사와 시간대 겹침 OK
  • 제목에 반드시 [병렬] 표시
  • 지리적으로 다른 장소에서 동시 진행
  • VERIFICATION 모드에서 역행 검증 제외

플롯 작성 체크리스트

각 화 작성 시

- [ ] 이전 화 종료일 확인
- [ ] 현재 화 시작일 ≥ 이전 화 종료일
- [ ] 타임라인 형식: YYYY.M.D-M.D
- [ ] 회상이면 제목에 "[회상]" 명시
- [ ] 병렬이면 제목에 "[병렬]" 명시
- [ ] 장소, 등장인물 명시
- [ ] 주요내용 3개 이상

전체 플롯 완성 후

- [ ] 전체 타임라인 추출
- [ ] 순서대로 역행 검증
- [ ] 역행 발견 시 회상/병렬 확인
- [ ] 회상/병렬 아니면 수정
- [ ] 최종 검증 통과
- [ ] Git 커밋

🚨 플롯 타임라인 검증 명령어

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. 역행 발견 시 "[회상]" 또는 "[병렬]" 확인

📊 플롯 형식 표준

필수 형식

### X화: 제목
- **타임라인:** YYYY.M.D-M.D
- **장소:** 위치
- **등장인물:** 이름1, 이름2, 이름3
- **주요내용:**
  * 핵심 내용 1
  * 핵심 내용 2
  * 핵심 내용 3

회상 형식

### X화: [회상] 제목
- **타임라인:** YYYY.M.D-M.D (과거 날짜 OK)
- **장소:** 위치
- **등장인물:** 이름1, 이름2
- **주요내용:**
  * 회상 장면 설명

병렬 서사 형식

### 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 필수)

📊 플롯 타임라인 검증 예시

정상 케이스

### 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

역행 케이스 (오류)

### 7화: 금괴 탈취 작전
- **타임라인:** 1945.9.11-9.20

### 8화: 건준 활동
- **타임라인:** 1945.11.1-11.10

### 9화: 신탁통치 준비
- **타임라인:** 1945.10.1-10.15  ❌ 11.10 > 10.1 역행!

회상 케이스 (정상)

### 20화: 만주 진출
- **타임라인:** 1946.4.1-4.30

### 21화: [회상] 1945년 가을
- **타임라인:** 1945.10.1-10.15  ✅ 회상으로 명시됨

### 22화: 희토류 확보
- **타임라인:** 1946.5.1-5.10  ✅ 20화 이후 정상

플롯이 올바르면 작성도 올바르다. 설계 단계 품질이 모든 것의 시작!