novelws 3.1.0 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +115 -564
- package/README.md +81 -598
- package/dist/cli.js +1 -3
- package/dist/cli.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +18 -103
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/upgrade.d.ts.map +1 -1
- package/dist/commands/upgrade.js +18 -52
- package/dist/commands/upgrade.js.map +1 -1
- package/dist/core/config.d.ts +7 -36
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +11 -38
- package/dist/core/config.js.map +1 -1
- package/dist/core/errors.d.ts +0 -31
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js +0 -58
- package/dist/core/errors.js.map +1 -1
- package/dist/utils/diagnostics.d.ts +2 -16
- package/dist/utils/diagnostics.d.ts.map +1 -1
- package/dist/utils/diagnostics.js +7 -73
- package/dist/utils/diagnostics.js.map +1 -1
- package/dist/utils/project.d.ts +1 -1
- package/dist/utils/project.d.ts.map +1 -1
- package/dist/utils/project.js +3 -3
- package/dist/utils/project.js.map +1 -1
- package/package.json +1 -2
- package/templates/commands/analyze.md +65 -265
- package/templates/commands/expand.md +70 -0
- package/templates/commands/plan.md +47 -452
- package/templates/commands/specify.md +43 -869
- package/templates/commands/write.md +49 -556
- package/templates/dot-claude/CLAUDE.md +38 -202
- package/templates/resources/anti-ai.md +16 -0
- package/templates/resources/style-reference.md +19 -0
- package/templates/tracking/character-state.json +1 -76
- package/templates/tracking/plot-tracker.json +3 -60
- package/templates/tracking/relationships.json +1 -68
- package/templates/tracking/timeline.json +1 -47
- package/dist/commands/plugin.d.ts +0 -6
- package/dist/commands/plugin.d.ts.map +0 -1
- package/dist/commands/plugin.js +0 -135
- package/dist/commands/plugin.js.map +0 -1
- package/dist/plugins/identifier.d.ts +0 -13
- package/dist/plugins/identifier.d.ts.map +0 -1
- package/dist/plugins/identifier.js +0 -72
- package/dist/plugins/identifier.js.map +0 -1
- package/dist/plugins/installers/base.d.ts +0 -27
- package/dist/plugins/installers/base.d.ts.map +0 -1
- package/dist/plugins/installers/base.js +0 -30
- package/dist/plugins/installers/base.js.map +0 -1
- package/dist/plugins/installers/github.d.ts +0 -22
- package/dist/plugins/installers/github.d.ts.map +0 -1
- package/dist/plugins/installers/github.js +0 -133
- package/dist/plugins/installers/github.js.map +0 -1
- package/dist/plugins/installers/local.d.ts +0 -16
- package/dist/plugins/installers/local.d.ts.map +0 -1
- package/dist/plugins/installers/local.js +0 -69
- package/dist/plugins/installers/local.js.map +0 -1
- package/dist/plugins/installers/npm.d.ts +0 -20
- package/dist/plugins/installers/npm.d.ts.map +0 -1
- package/dist/plugins/installers/npm.js +0 -99
- package/dist/plugins/installers/npm.js.map +0 -1
- package/dist/plugins/manager.d.ts +0 -77
- package/dist/plugins/manager.d.ts.map +0 -1
- package/dist/plugins/manager.js +0 -349
- package/dist/plugins/manager.js.map +0 -1
- package/dist/plugins/registry.d.ts +0 -48
- package/dist/plugins/registry.d.ts.map +0 -1
- package/dist/plugins/registry.js +0 -111
- package/dist/plugins/registry.js.map +0 -1
- package/dist/plugins/types.d.ts +0 -66
- package/dist/plugins/types.d.ts.map +0 -1
- package/dist/plugins/types.js +0 -2
- package/dist/plugins/types.js.map +0 -1
- package/dist/plugins/validator.d.ts +0 -19
- package/dist/plugins/validator.d.ts.map +0 -1
- package/dist/plugins/validator.js +0 -164
- package/dist/plugins/validator.js.map +0 -1
- package/dist/utils/logger.d.ts +0 -13
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/logger.js +0 -48
- package/dist/utils/logger.js.map +0 -1
- package/plugins/authentic-voice/README.md +0 -31
- package/plugins/authentic-voice/commands/authentic-voice.md +0 -73
- package/plugins/authentic-voice/commands/authenticity-audit.md +0 -37
- package/plugins/authentic-voice/config.yaml +0 -30
- package/plugins/authentic-voice/experts/authentic-editor.md +0 -27
- package/plugins/export/README.md +0 -319
- package/plugins/export/commands/export.md +0 -460
- package/plugins/export/commands/generate-cover.md +0 -256
- package/plugins/export/commands/metadata.md +0 -309
- package/plugins/export/config.yaml +0 -47
- package/plugins/export/experts/publishing-expert.md +0 -171
- package/plugins/export/templates/epub/chapter-template.html +0 -13
- package/plugins/export/templates/epub/cover-template.html +0 -14
- package/plugins/export/templates/epub/stylesheet.css +0 -200
- package/plugins/export/templates/pdf/ebook-style.css +0 -137
- package/plugins/export/templates/pdf/print-style.css +0 -179
- package/plugins/export/templates/platforms/jinjiang-format.md +0 -101
- package/plugins/export/templates/platforms/qidian-format.md +0 -108
- package/plugins/export/templates/platforms/tomato-format.md +0 -95
- package/plugins/translate/README.md +0 -265
- package/plugins/translate/commands/glossary.md +0 -731
- package/plugins/translate/commands/translate-preview.md +0 -543
- package/plugins/translate/commands/translate.md +0 -649
- package/plugins/translate/config.yaml +0 -43
- package/plugins/translate/experts/literary-translator.md +0 -605
- package/templates/commands/character.md +0 -287
- package/templates/commands/checklist.md +0 -744
- package/templates/commands/clarify.md +0 -269
- package/templates/commands/constitution.md +0 -269
- package/templates/commands/expert.md +0 -188
- package/templates/commands/facts.md +0 -552
- package/templates/commands/guide.md +0 -900
- package/templates/commands/help-me.md +0 -221
- package/templates/commands/recap.md +0 -748
- package/templates/commands/relations.md +0 -385
- package/templates/commands/revise.md +0 -450
- package/templates/commands/search.md +0 -531
- package/templates/commands/tasks.md +0 -396
- package/templates/commands/timeline.md +0 -309
- package/templates/commands/track-init.md +0 -149
- package/templates/commands/track.md +0 -704
- package/templates/commands/volume-summary.md +0 -471
- package/templates/config/keyword-mappings.json +0 -226
- package/templates/knowledge/audit-config.json +0 -26
- package/templates/knowledge/character-profiles.md +0 -152
- package/templates/knowledge/character-voices.md +0 -137
- package/templates/knowledge/locations.md +0 -184
- package/templates/knowledge/world-setting.md +0 -121
- package/templates/knowledge-base/README.md +0 -285
- package/templates/knowledge-base/character-archetypes/01-hero.md +0 -233
- package/templates/knowledge-base/character-archetypes/02-mentor.md +0 -177
- package/templates/knowledge-base/character-archetypes/03-shadow.md +0 -221
- package/templates/knowledge-base/character-archetypes/04-ally.md +0 -178
- package/templates/knowledge-base/character-archetypes/05-shapeshifter.md +0 -177
- package/templates/knowledge-base/character-archetypes/06-trickster.md +0 -181
- package/templates/knowledge-base/character-archetypes/07-threshold-guardian.md +0 -177
- package/templates/knowledge-base/character-archetypes/08-herald.md +0 -180
- package/templates/knowledge-base/character-archetypes/09-father.md +0 -249
- package/templates/knowledge-base/character-archetypes/10-mother.md +0 -202
- package/templates/knowledge-base/character-archetypes/11-child.md +0 -183
- package/templates/knowledge-base/character-archetypes/12-sage.md +0 -202
- package/templates/knowledge-base/character-archetypes/README.md +0 -60
- package/templates/knowledge-base/character-archetypes/application-guide.md +0 -222
- package/templates/knowledge-base/character-archetypes/archetype-combinations.md +0 -242
- package/templates/knowledge-base/character-archetypes/config.yaml +0 -28
- package/templates/knowledge-base/character-archetypes/examples-analysis.md +0 -223
- package/templates/knowledge-base/craft/character-arc.md +0 -1153
- package/templates/knowledge-base/craft/dialogue.md +0 -1170
- package/templates/knowledge-base/craft/hook-design.md +0 -345
- package/templates/knowledge-base/craft/pacing.md +0 -1200
- package/templates/knowledge-base/craft/power-system.md +0 -254
- package/templates/knowledge-base/craft/scene-structure.md +0 -1136
- package/templates/knowledge-base/craft/show-not-tell.md +0 -1012
- package/templates/knowledge-base/craft/story-structures.md +0 -134
- package/templates/knowledge-base/craft/tension-management.md +0 -168
- package/templates/knowledge-base/emotional-beats/01-first-meeting.md +0 -145
- package/templates/knowledge-base/emotional-beats/02-bonding-moment.md +0 -226
- package/templates/knowledge-base/emotional-beats/03-declaration.md +0 -284
- package/templates/knowledge-base/emotional-beats/04-triumph.md +0 -240
- package/templates/knowledge-base/emotional-beats/05-reunion.md +0 -396
- package/templates/knowledge-base/emotional-beats/06-forgiveness.md +0 -204
- package/templates/knowledge-base/emotional-beats/07-betrayal.md +0 -204
- package/templates/knowledge-base/emotional-beats/08-loss.md +0 -214
- package/templates/knowledge-base/emotional-beats/09-rejection.md +0 -254
- package/templates/knowledge-base/emotional-beats/10-failure.md +0 -244
- package/templates/knowledge-base/emotional-beats/11-misunderstanding.md +0 -205
- package/templates/knowledge-base/emotional-beats/12-farewell.md +0 -283
- package/templates/knowledge-base/emotional-beats/13-revelation.md +0 -242
- package/templates/knowledge-base/emotional-beats/14-point-of-no-return.md +0 -215
- package/templates/knowledge-base/emotional-beats/15-dark-night.md +0 -244
- package/templates/knowledge-base/emotional-beats/16-sacrifice.md +0 -246
- package/templates/knowledge-base/emotional-beats/17-awakening.md +0 -246
- package/templates/knowledge-base/emotional-beats/18-confrontation.md +0 -217
- package/templates/knowledge-base/emotional-beats/19-bittersweet-goodbye.md +0 -368
- package/templates/knowledge-base/emotional-beats/20-moral-dilemma.md +0 -248
- package/templates/knowledge-base/emotional-beats/21-temptation.md +0 -240
- package/templates/knowledge-base/emotional-beats/22-redemption.md +0 -210
- package/templates/knowledge-base/emotional-beats/README.md +0 -104
- package/templates/knowledge-base/emotional-beats/beat-sequences.md +0 -276
- package/templates/knowledge-base/emotional-beats/config.yaml +0 -30
- package/templates/knowledge-base/emotional-beats/pacing-guide.md +0 -390
- package/templates/knowledge-base/genres/game-lit.md +0 -174
- package/templates/knowledge-base/genres/historical.md +0 -1127
- package/templates/knowledge-base/genres/horror.md +0 -211
- package/templates/knowledge-base/genres/military.md +0 -209
- package/templates/knowledge-base/genres/mystery.md +0 -1123
- package/templates/knowledge-base/genres/rebirth.md +0 -177
- package/templates/knowledge-base/genres/revenge.md +0 -846
- package/templates/knowledge-base/genres/romance.md +0 -948
- package/templates/knowledge-base/genres/sci-fi.md +0 -156
- package/templates/knowledge-base/genres/sports.md +0 -216
- package/templates/knowledge-base/genres/thriller.md +0 -166
- package/templates/knowledge-base/genres/urban.md +0 -170
- package/templates/knowledge-base/genres/workplace.md +0 -214
- package/templates/knowledge-base/genres/wuxia.md +0 -143
- package/templates/knowledge-base/genres/xuanhuan.md +0 -234
- package/templates/knowledge-base/genres/youth.md +0 -219
- package/templates/knowledge-base/references/README.md +0 -96
- package/templates/knowledge-base/references/china-1920s/culture.md +0 -423
- package/templates/knowledge-base/references/china-1920s/daily-life.md +0 -616
- package/templates/knowledge-base/references/china-1920s/overview.md +0 -298
- package/templates/knowledge-base/references/china-1920s/society.md +0 -703
- package/templates/knowledge-base/references/china-1920s/warlords.md +0 -427
- package/templates/knowledge-base/references/cultivation-world/daily-life.md +0 -108
- package/templates/knowledge-base/references/cultivation-world/overview.md +0 -64
- package/templates/knowledge-base/references/cultivation-world/power-system.md +0 -108
- package/templates/knowledge-base/references/cultivation-world/sects.md +0 -104
- package/templates/knowledge-base/references/cultivation-world/world-setting.md +0 -108
- package/templates/knowledge-base/references/modern-workplace/corporate.md +0 -115
- package/templates/knowledge-base/references/modern-workplace/daily-life.md +0 -129
- package/templates/knowledge-base/references/modern-workplace/overview.md +0 -73
- package/templates/knowledge-base/references/modern-workplace/relationships.md +0 -107
- package/templates/knowledge-base/references/modern-workplace/tech-industry.md +0 -131
- package/templates/knowledge-base/references/tang-dynasty/culture.md +0 -135
- package/templates/knowledge-base/references/tang-dynasty/daily-life.md +0 -139
- package/templates/knowledge-base/references/tang-dynasty/overview.md +0 -76
- package/templates/knowledge-base/references/tang-dynasty/politics.md +0 -121
- package/templates/knowledge-base/references/tang-dynasty/society.md +0 -126
- package/templates/knowledge-base/requirements/README.md +0 -240
- package/templates/knowledge-base/requirements/anti-ai-v3.md +0 -46
- package/templates/knowledge-base/requirements/anti-ai-v4-deprecated.md +0 -442
- package/templates/knowledge-base/requirements/anti-ai-v5-balanced.md +0 -203
- package/templates/knowledge-base/requirements/concretization.md +0 -90
- package/templates/knowledge-base/requirements/fast-paced.md +0 -552
- package/templates/knowledge-base/requirements/no-poison.md +0 -60
- package/templates/knowledge-base/requirements/romance-angst.md +0 -102
- package/templates/knowledge-base/requirements/romance-sweet.md +0 -63
- package/templates/knowledge-base/requirements/serious-literature.md +0 -45
- package/templates/knowledge-base/requirements/strong-emotion.md +0 -60
- package/templates/knowledge-base/styles/README.md +0 -302
- package/templates/knowledge-base/styles/ancient-style.md +0 -579
- package/templates/knowledge-base/styles/literary.md +0 -439
- package/templates/knowledge-base/styles/minimal.md +0 -472
- package/templates/knowledge-base/styles/natural-voice.md +0 -930
- package/templates/knowledge-base/styles/web-novel.md +0 -525
- package/templates/memory/personal-voice.md +0 -113
- package/templates/scripts/README.md +0 -187
- package/templates/scripts/bash/analyze-story.sh +0 -170
- package/templates/scripts/bash/check-analyze-stage.sh +0 -108
- package/templates/scripts/bash/check-consistency.sh +0 -463
- package/templates/scripts/bash/check-facts.sh +0 -214
- package/templates/scripts/bash/check-plot.sh +0 -374
- package/templates/scripts/bash/check-timeline.sh +0 -346
- package/templates/scripts/bash/check-world.sh +0 -395
- package/templates/scripts/bash/check-writing-state.sh +0 -854
- package/templates/scripts/bash/clarify-story.sh +0 -117
- package/templates/scripts/bash/common.sh +0 -151
- package/templates/scripts/bash/constitution.sh +0 -114
- package/templates/scripts/bash/generate-tasks.sh +0 -65
- package/templates/scripts/bash/init-tracking.sh +0 -183
- package/templates/scripts/bash/manage-relations.sh +0 -174
- package/templates/scripts/bash/migrate-tracking.sh +0 -183
- package/templates/scripts/bash/plan-story.sh +0 -100
- package/templates/scripts/bash/specify-story.sh +0 -93
- package/templates/scripts/bash/tasks-story.sh +0 -96
- package/templates/scripts/bash/test-word-count.sh +0 -182
- package/templates/scripts/bash/tests/bench-preload-cache.sh +0 -100
- package/templates/scripts/bash/tests/run-all-benchmarks.sh +0 -16
- package/templates/scripts/bash/tests/test-cache-semantics.sh +0 -199
- package/templates/scripts/bash/tests/test-cross-platform.sh +0 -35
- package/templates/scripts/bash/tests/test-edge-cases-bash.sh +0 -60
- package/templates/scripts/bash/tests/test-phase1-bash.sh +0 -28
- package/templates/scripts/bash/tests/test-preload-cache.sh +0 -123
- package/templates/scripts/bash/tests/test-regex-precompile.sh +0 -89
- package/templates/scripts/bash/tests/test-regression-bash.sh +0 -42
- package/templates/scripts/bash/tests/test-task6-verification.sh +0 -200
- package/templates/scripts/bash/text-audit.sh +0 -144
- package/templates/scripts/bash/track-progress.sh +0 -194
- package/templates/scripts/powershell/analyze-story.ps1 +0 -174
- package/templates/scripts/powershell/check-analyze-stage.ps1 +0 -110
- package/templates/scripts/powershell/check-consistency.ps1 +0 -138
- package/templates/scripts/powershell/check-facts.ps1 +0 -195
- package/templates/scripts/powershell/check-plot.ps1 +0 -139
- package/templates/scripts/powershell/check-timeline.ps1 +0 -112
- package/templates/scripts/powershell/check-writing-state.ps1 +0 -486
- package/templates/scripts/powershell/clarify-story.ps1 +0 -107
- package/templates/scripts/powershell/common.ps1 +0 -36
- package/templates/scripts/powershell/constitution.ps1 +0 -145
- package/templates/scripts/powershell/generate-tasks.ps1 +0 -70
- package/templates/scripts/powershell/init-tracking.ps1 +0 -98
- package/templates/scripts/powershell/manage-relations.ps1 +0 -134
- package/templates/scripts/powershell/migrate-tracking.ps1 +0 -145
- package/templates/scripts/powershell/plan-story.ps1 +0 -99
- package/templates/scripts/powershell/specify-story.ps1 +0 -85
- package/templates/scripts/powershell/tests/bench-ps-cache.ps1 +0 -80
- package/templates/scripts/powershell/tests/test-cross-platform.ps1 +0 -27
- package/templates/scripts/powershell/tests/test-edge-cases-ps.ps1 +0 -29
- package/templates/scripts/powershell/tests/test-phase1-ps.ps1 +0 -28
- package/templates/scripts/powershell/tests/test-ps-cache.ps1 +0 -73
- package/templates/scripts/powershell/tests/test-regression-ps.ps1 +0 -40
- package/templates/scripts/powershell/text-audit.ps1 +0 -102
- package/templates/scripts/powershell/track-progress.ps1 +0 -105
- package/templates/skills/analysis/character-analysis/SKILL.md +0 -71
- package/templates/skills/analysis/foreshadow-analysis/SKILL.md +0 -45
- package/templates/skills/analysis/hook-analysis/SKILL.md +0 -111
- package/templates/skills/analysis/logic-analysis/SKILL.md +0 -58
- package/templates/skills/analysis/opening-analysis/SKILL.md +0 -59
- package/templates/skills/analysis/pacing-analysis/SKILL.md +0 -55
- package/templates/skills/analysis/power-analysis/SKILL.md +0 -148
- package/templates/skills/analysis/reader-analysis/SKILL.md +0 -117
- package/templates/skills/analysis/style-analysis/SKILL.md +0 -60
- package/templates/skills/analysis/voice-analysis/SKILL.md +0 -42
- package/templates/skills/auto-tracking/SKILL.md +0 -280
- package/templates/skills/genre-knowledge/fantasy/SKILL.md +0 -355
- package/templates/skills/genre-knowledge/mystery/SKILL.md +0 -337
- package/templates/skills/genre-knowledge/romance/SKILL.md +0 -228
- package/templates/skills/genre-knowledge/sci-fi/SKILL.md +0 -65
- package/templates/skills/genre-knowledge/thriller/SKILL.md +0 -95
- package/templates/skills/planning/volume-detail/SKILL.md +0 -219
- package/templates/skills/quality-assurance/consistency-checker/SKILL.md +0 -412
- package/templates/skills/quality-assurance/continuity-tracker/SKILL.md +0 -157
- package/templates/skills/quality-assurance/facts-checker/SKILL.md +0 -405
- package/templates/skills/quality-assurance/forgotten-elements/SKILL.md +0 -147
- package/templates/skills/quality-assurance/getting-started/SKILL.md +0 -224
- package/templates/skills/quality-assurance/hook-checker/SKILL.md +0 -164
- package/templates/skills/quality-assurance/hook-checker/experts/hook-analyst.md +0 -33
- package/templates/skills/quality-assurance/long-series-continuity/SKILL.md +0 -570
- package/templates/skills/quality-assurance/pacing-monitor/SKILL.md +0 -143
- package/templates/skills/quality-assurance/pov-validator/SKILL.md +0 -135
- package/templates/skills/quality-assurance/pre-write-checklist/SKILL.md +0 -583
- package/templates/skills/quality-assurance/requirement-detector/CONFLICT_RESOLUTION.md +0 -119
- package/templates/skills/quality-assurance/requirement-detector/EXAMPLES.md +0 -146
- package/templates/skills/quality-assurance/requirement-detector/KEYWORDS.md +0 -160
- package/templates/skills/quality-assurance/requirement-detector/SKILL.md +0 -149
- package/templates/skills/quality-assurance/setting-detector/SKILL.md +0 -611
- package/templates/skills/quality-assurance/style-detector/CONFLICT_RESOLUTION.md +0 -126
- package/templates/skills/quality-assurance/style-detector/EXAMPLES.md +0 -206
- package/templates/skills/quality-assurance/style-detector/KEYWORDS.md +0 -207
- package/templates/skills/quality-assurance/style-detector/SKILL.md +0 -264
- package/templates/skills/quality-assurance/voice-consistency-checker/SKILL.md +0 -103
- package/templates/skills/quality-assurance/voice-consistency-checker/experts/voice-analyst.md +0 -21
- package/templates/skills/quality-assurance/workflow-guide/SKILL.md +0 -381
- package/templates/skills/writing-techniques/character-arc/SKILL.md +0 -267
- package/templates/skills/writing-techniques/dialogue-techniques/SKILL.md +0 -366
- package/templates/skills/writing-techniques/multi-thread-narrative/SKILL.md +0 -708
- package/templates/skills/writing-techniques/multi-thread-narrative/experts/thread-analyst.md +0 -226
- package/templates/skills/writing-techniques/pacing-control/SKILL.md +0 -480
- package/templates/skills/writing-techniques/reader-expectation/SKILL.md +0 -1026
- package/templates/skills/writing-techniques/reader-expectation/experts/expectation-analyst.md +0 -209
- package/templates/skills/writing-techniques/revision-polish/SKILL.md +0 -496
- package/templates/skills/writing-techniques/revision-polish/experts/revision-editor.md +0 -221
- package/templates/skills/writing-techniques/scene-structure/SKILL.md +0 -361
- package/templates/skills/writing-techniques/style-learning/SKILL.md +0 -436
- package/templates/skills/writing-techniques/writing-balance/.gitkeep +0 -0
- package/templates/skills/writing-techniques/writing-balance/SKILL.md +0 -460
- package/templates/skills/writing-techniques/writing-techniques/SKILL.md +0 -727
- package/templates/specification-example.md +0 -146
- package/templates/tracking/story-facts.json +0 -5
- package/templates/tracking/summary/characters-summary.json +0 -7
- package/templates/tracking/summary/plot-summary.json +0 -13
- package/templates/tracking/summary/timeline-summary.json +0 -8
- package/templates/tracking/summary/volume-summaries.json +0 -5
- package/templates/tracking/tracking-log.md +0 -110
- package/templates/tracking/validation-rules.json +0 -128
- /package/templates/{memory → resources}/constitution.md +0 -0
|
@@ -1,210 +0,0 @@
|
|
|
1
|
-
# Redemption (救赎)
|
|
2
|
-
|
|
3
|
-
## 核心定义
|
|
4
|
-
|
|
5
|
-
救赎 = 角色通过行动弥补过去的错误,重新获得尊严或他人的信任。
|
|
6
|
-
|
|
7
|
-
救赎是小说中最具道德重量的情感节拍之一。它不是简单的"坏人变好",而是一个角色在充分认识到自己造成的伤害之后,以真实的行动和代价去弥补——即使弥补可能永远不够。救赎的力量在于它同时面向过去和未来:角色必须直面过去的罪过,同时用行动证明自己配得上一个不同的未来。
|
|
8
|
-
|
|
9
|
-
**关键区分:**
|
|
10
|
-
- 救赎 ≠ 洗白(不是抹去过去,而是带着过去前行)
|
|
11
|
-
- 救赎 ≠ 被原谅(原谅是他人的选择,救赎是自己的行动)
|
|
12
|
-
- 救赎 ≠ 惩罚(受苦本身不是救赎,行动才是)
|
|
13
|
-
- 救赎 ≠ 恢复原状(救赎后的人不是回到犯错之前,而是成为一个新的、带着伤疤的人)
|
|
14
|
-
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
## 核心元素
|
|
18
|
-
|
|
19
|
-
### 1. 过去的罪过(必须真实且严重)
|
|
20
|
-
|
|
21
|
-
救赎的重量取决于罪过的深度。如果角色只是犯了一个小错,救赎就没有戏剧张力。读者需要先对角色感到愤怒、失望甚至厌恶,才能在救赎时感到震撼。
|
|
22
|
-
|
|
23
|
-
**具体做法:**
|
|
24
|
-
- 罪过必须造成了不可逆的后果——有人因此受伤、失去了什么、或者生活被永久改变
|
|
25
|
-
- 角色在犯错时必须有选择的余地——被迫犯错的角色不需要"救赎",需要的是"释怀"
|
|
26
|
-
- 不要急于为角色辩护。让读者在相当长的篇幅内看到罪过的全部重量,不要用"他也有苦衷"来提前减轻罪恶感
|
|
27
|
-
- 罪过的后果应该在故事中持续可见——受害者的伤痛、破碎的关系、无法挽回的损失
|
|
28
|
-
|
|
29
|
-
### 2. 悔改的真诚
|
|
30
|
-
|
|
31
|
-
悔改不是一个瞬间的顿悟,而是一个痛苦的认知过程。角色必须真正理解自己做了什么、伤害了谁、为什么那是错的。
|
|
32
|
-
|
|
33
|
-
**具体做法:**
|
|
34
|
-
- 悔改的起点往往是角色被迫面对自己行为的后果——亲眼看到受害者的痛苦、听到他人对自己的真实评价
|
|
35
|
-
- 悔改过程中应该有抗拒和挣扎——角色可能先试图合理化自己的行为,然后才慢慢接受真相
|
|
36
|
-
- 真正的悔改会改变角色看待世界的方式,而不仅仅是对某一件事感到抱歉
|
|
37
|
-
- 避免"顿悟式悔改"——一个梦、一句话就彻底改变了角色。真实的悔改是渐进的、反复的
|
|
38
|
-
|
|
39
|
-
### 3. 救赎的行动(不只是道歉)
|
|
40
|
-
|
|
41
|
-
道歉是语言,救赎是行动。角色必须用具体的、持续的行为来证明自己的改变。空洞的"对不起"不是救赎,它只是悔改的起点。
|
|
42
|
-
|
|
43
|
-
**具体做法:**
|
|
44
|
-
- 救赎行动应该与原罪直接相关——如果角色曾经背叛了信任,救赎行动就应该是在极端情况下证明自己的忠诚
|
|
45
|
-
- 行动必须有风险和成本——安全的、不需要付出任何代价的"好事"不构成救赎
|
|
46
|
-
- 救赎行动不应该是一次性的壮举,而是持续的选择——每天都在选择做正确的事
|
|
47
|
-
- 让行动说话,而不是让角色自己宣布"我变了"
|
|
48
|
-
|
|
49
|
-
### 4. 救赎的代价
|
|
50
|
-
|
|
51
|
-
没有代价的救赎是廉价的。角色必须为赎罪付出真实的、不可逆的代价。这个代价让读者相信救赎是真的,而不是一场表演。
|
|
52
|
-
|
|
53
|
-
**具体做法:**
|
|
54
|
-
- 代价可以是物质的(财富、地位、自由)、身体的(健康、安全)、或情感的(永远无法被原谅、失去最珍视的关系)
|
|
55
|
-
- 最有力量的代价是角色自愿承受的——不是被迫付出,而是主动选择
|
|
56
|
-
- 代价应该与罪过有某种对称性——不一定是"以眼还眼",但读者应该感到一种道德上的平衡
|
|
57
|
-
- 代价不应该被"奖励"抵消——如果角色付出代价后立刻获得了更好的回报,救赎就变成了交易
|
|
58
|
-
|
|
59
|
-
---
|
|
60
|
-
|
|
61
|
-
## 常见套路(应避免)
|
|
62
|
-
|
|
63
|
-
- ❌ **廉价的救赎(一个好行为就洗白):** 角色做了一件好事,所有人立刻忘记了他之前的所有恶行。这种处理方式侮辱了受害者的痛苦,也让角色的转变显得虚假。真正的救赎需要时间、需要反复证明、需要面对怀疑和不信任。
|
|
64
|
-
- ❌ **无代价的救赎:** 角色宣布自己改过自新,然后一切顺利——没有人质疑、没有旧习复发的挣扎、没有任何损失。这种救赎像一场免费的道德升级,读者不会买账。
|
|
65
|
-
- ❌ **被动救赎(别人原谅就算救赎):** 角色什么都没做,只是等到受害者大度地表示原谅,然后就算"被救赎了"。这把救赎的主动权交给了别人,角色本身没有任何成长。救赎必须是角色自己挣来的,不是别人施舍的。
|
|
66
|
-
- ❌ **救赎=死亡(只有死才能赎罪):** 角色在故事结尾英勇牺牲,用死亡完成救赎。这个套路之所以被过度使用,是因为它太方便了——死亡自动赋予角色悲剧英雄的光环,免去了"活着赎罪"的漫长艰难。但活着的救赎比死去的救赎更有力量,因为它要求角色每天面对自己的过去,每天选择做更好的人。
|
|
67
|
-
|
|
68
|
-
---
|
|
69
|
-
|
|
70
|
-
## 新颖变体
|
|
71
|
-
|
|
72
|
-
### 变体1:不被接受的救赎
|
|
73
|
-
|
|
74
|
-
角色真诚地悔改了,付出了巨大的代价去弥补,但受害者拒绝原谅。救赎的行动是真实的,但它没有换来和解。
|
|
75
|
-
|
|
76
|
-
**示例场景:** 一个曾经酗酒家暴的父亲,戒酒十年,默默资助女儿的学业,在女儿公司遇到危机时用自己的积蓄帮她度过难关。但女儿在得知真相后,把钱退了回来,说:"这不能抵消我童年的噩梦。"父亲点了点头,没有辩解,继续过着清醒的、孤独的生活。
|
|
77
|
-
|
|
78
|
-
**为什么有效:** 这种变体打破了"努力就有回报"的叙事惯性。它承认有些伤害是无法弥补的,有些信任一旦破碎就无法重建。但角色的救赎并不因此失效——他的改变是真实的,即使没有人为此鼓掌。这种处理方式对受害者也更加尊重:原谅是受害者的权利,不是义务。
|
|
79
|
-
|
|
80
|
-
### 变体2:漫长的救赎
|
|
81
|
-
|
|
82
|
-
救赎不是一个高潮场景,而是贯穿角色余生的日常选择。没有戏剧性的英雄时刻,只有日复一日的坚持。
|
|
83
|
-
|
|
84
|
-
**示例场景:** 一个曾经贪污的官员出狱后,没有试图东山再起,也没有戏剧性的忏悔。他在社区做志愿者,每周去养老院帮忙,用退休金资助贫困学生。二十年后,有人问他为什么这样做,他只说:"欠的债,慢慢还。"没有人给他颁奖,没有媒体报道,他的名字在公众记忆中早已与丑闻绑定。但他每天早上醒来,选择继续。
|
|
85
|
-
|
|
86
|
-
**为什么有效:** 漫长的救赎拒绝了叙事的便利性。它不给读者一个干净利落的"救赎完成"时刻,而是展示救赎作为一种生活方式的重量。这种变体特别适合现实主义小说,因为它最接近真实生活中赎罪的样子。
|
|
87
|
-
|
|
88
|
-
### 变体3:无声的救赎
|
|
89
|
-
|
|
90
|
-
角色默默地弥补自己造成的伤害,不求被知道、不求被感谢。受害者甚至可能永远不知道是谁在帮助他们。
|
|
91
|
-
|
|
92
|
-
**示例场景:** 一个因为醉驾导致他人残疾的年轻人,出狱后改名换姓,搬到受害者所在的城市。他匿名资助受害者的康复治疗,暗中帮受害者的孩子找到好学校,甚至在受害者的店铺生意不好时,以普通顾客的身份频繁光顾。受害者一家的生活慢慢好转,他们永远不知道背后的人是谁。而那个年轻人,在每一次匿名的善举中,一点一点地与自己和解。
|
|
93
|
-
|
|
94
|
-
**为什么有效:** 无声的救赎剥离了救赎中可能存在的"表演"成分。当没有观众、没有掌声、没有原谅的可能时,救赎行动的纯粹性达到了最高。它也制造了一种独特的叙事张力——读者知道真相,但故事中的角色不知道,这种信息不对称产生了深沉的情感共鸣。
|
|
95
|
-
|
|
96
|
-
### 变体4:不完美的救赎
|
|
97
|
-
|
|
98
|
-
角色赎了一部分罪,但有些伤害永远无法弥补。救赎是真实的,但它是不完整的,角色必须学会与这种不完整共存。
|
|
99
|
-
|
|
100
|
-
**示例场景:** 一个曾经见死不救的消防员,在之后的职业生涯中救了无数人。他成了英雄,获得了勋章,同事们尊敬他。但每年那个日子,他都会去那栋烧毁的楼前站一会儿。他救了很多人,但他没救那一个。勋章和荣誉填不满那个空洞。他学会了带着这个空洞活下去——不是假装它不存在,而是承认它永远在那里。
|
|
101
|
-
|
|
102
|
-
**为什么有效:** 不完美的救赎承认了人类行为的不可逆性。有些事情做了就是做了,再多的好事也无法让时间倒流。这种变体避免了救赎叙事中常见的"道德算术"——好事减去坏事等于零。它告诉读者:救赎不是清零,而是带着负数继续前行。
|
|
103
|
-
|
|
104
|
-
---
|
|
105
|
-
|
|
106
|
-
## 情感真实性
|
|
107
|
-
|
|
108
|
-
如何让救赎场景令读者信服,而不是觉得"作者在强行洗白":
|
|
109
|
-
|
|
110
|
-
### 罪过的重量不能被稀释
|
|
111
|
-
|
|
112
|
-
在救赎开始之前,读者必须充分感受到角色罪过的严重性。不要在角色犯错时就急于展示他的"另一面"或"苦衷"。让罪过的后果在故事中持续发酵——受害者的生活如何被改变、信任如何被摧毁、连锁反应如何波及无辜的人。只有当读者真正对角色感到愤怒时,后续的救赎才有意义。
|
|
113
|
-
|
|
114
|
-
### 改变必须是渐进的
|
|
115
|
-
|
|
116
|
-
真实的人不会一夜之间脱胎换骨。救赎的过程中应该有反复——角色可能在某个压力时刻差点回到旧习,可能在面对诱惑时犹豫不决。这些"差点失败"的时刻反而让最终的坚持更有说服力。设计至少一个"考验"场景:角色面对与当初犯错时相似的情境,这一次他做出了不同的选择——但这个选择是艰难的,不是轻松的。
|
|
117
|
-
|
|
118
|
-
### 身体和行为的细节
|
|
119
|
-
|
|
120
|
-
不要只写角色的内心独白。展示救赎在日常行为中的体现:他如何对待陌生人、如何面对旧日的受害者、如何在无人注意时做出选择。一个正在赎罪的人,他的眼神、姿态、说话方式都会与从前不同——不是变得"更好",而是变得更沉重、更谨慎、更清醒。
|
|
121
|
-
|
|
122
|
-
### 允许怀疑的存在
|
|
123
|
-
|
|
124
|
-
故事中应该有角色对救赎者的改变表示怀疑。"他真的变了吗?""这不过是做样子吧?""等着看,他迟早会原形毕露。"这些怀疑的声音不是障碍,而是让救赎更可信的必要元素。如果所有人都立刻接受了角色的改变,读者反而会觉得不真实。
|
|
125
|
-
|
|
126
|
-
---
|
|
127
|
-
|
|
128
|
-
## 示例分析
|
|
129
|
-
|
|
130
|
-
### 示例1:《悲惨世界》(Les Miserables) —— 冉阿让 (Jean Valjean) 的一生救赎
|
|
131
|
-
|
|
132
|
-
**背景:** 冉阿让因偷一块面包被判入狱十九年,出狱后满怀仇恨。在主教米里哀家借宿时偷走银器,被警察抓回。主教不仅没有指控他,反而说银器是送给他的,还把银烛台也给了他,说:"我买下了你的灵魂,把它从黑暗中赎出,交给上帝。"
|
|
133
|
-
|
|
134
|
-
**救赎的展开:**
|
|
135
|
-
|
|
136
|
-
- **罪过的真实性:** 冉阿让不仅仅是一个"被社会逼迫的好人"。出狱后他确实偷了主教的银器,还抢了一个小男孩的硬币。雨果没有回避角色的道德堕落——十九年的监狱生活确实把他变成了一个危险的人。
|
|
137
|
-
- **悔改的过程:** 主教的宽恕是催化剂,但冉阿让的转变不是瞬间完成的。他在抢了小男孩的硬币后,独自坐在路边崩溃痛哭——这是他第一次真正面对自己变成了什么样的人。
|
|
138
|
-
- **救赎的行动:** 冉阿让用一生来赎罪。他改名换姓成为工厂主,帮助穷人;他收养了芳汀的女儿珂赛特,给了她完整的爱;他在法庭上自首以拯救一个被误认为是他的无辜人;他在革命的街垒上救了珂赛特的爱人马吕斯。每一个行动都有真实的代价——暴露身份的风险、失去自由的可能、与珂赛特分离的痛苦。
|
|
139
|
-
- **救赎的代价:** 冉阿让一生都在逃亡,从未真正拥有过安宁。他最深的恐惧不是被抓,而是珂赛特知道他的过去后会厌恶他。最终他选择主动告诉马吕斯自己的真实身份,明知这可能让他失去珂赛特。
|
|
140
|
-
|
|
141
|
-
**为什么经典:** 冉阿让的救赎之所以成为文学史上最伟大的救赎叙事之一,是因为它拒绝了简单化。救赎不是一个事件,而是一生的旅程。每一次选择都是艰难的,每一次善举都伴随着风险,而角色直到生命的最后一刻都在与自己的过去搏斗。
|
|
142
|
-
|
|
143
|
-
### 示例2:《星球大战》(Star Wars) —— 达斯·维达 (Darth Vader) 的最终救赎
|
|
144
|
-
|
|
145
|
-
**背景:** 安纳金·天行者 (Anakin Skywalker) 曾是绝地武士中最有天赋的一员,但因为恐惧失去爱人而堕入黑暗面,成为西斯领主达斯·维达。他参与了绝地大屠杀,亲手杀害了无数人,包括幼年学徒,成为银河帝国的恐怖象征。
|
|
146
|
-
|
|
147
|
-
**救赎的展开:**
|
|
148
|
-
|
|
149
|
-
- **罪过的严重性:** 维达的罪行是不可辩护的。他不是一个"被误导的好人"——他主动选择了黑暗面,亲手执行了屠杀。二十多年来,他作为帝国的执行者,用恐惧统治银河系。这些罪行的重量让他的救赎充满了张力。
|
|
150
|
-
- **悔改的触发:** 卢克·天行者 (Luke Skywalker) 的存在是催化剂。卢克坚信父亲心中还有善意,这种信念本身就是一种力量。但维达的转变不是因为卢克的说教,而是因为他亲眼看到皇帝用原力闪电折磨自己的儿子——这个画面唤醒了他最初堕落的原因:对所爱之人的保护欲。
|
|
151
|
-
- **救赎的行动:** 维达举起皇帝,将他扔进反应堆深渊。这个行动简单、直接、不可逆。
|
|
152
|
-
- **救赎的代价:** 皇帝的原力闪电摧毁了维达的生命维持系统,他在完成救赎的同时付出了生命。
|
|
153
|
-
|
|
154
|
-
**值得讨论的争议:** 维达的救赎是文学和影视中最著名的救赎之一,但它也引发了一个重要的问题——一个行动能否赎回二十年的罪恶?从叙事效果来看,这个场景极其有力,因为它完成了安纳金从恐惧到爱的完整弧线。但从道德角度来看,维达的救赎更接近"最后的善举"而非"完整的赎罪"。这恰恰是写作者可以探索的空间:救赎的"够不够"本身就是一个值得追问的问题。
|
|
155
|
-
|
|
156
|
-
---
|
|
157
|
-
|
|
158
|
-
## 写作提示
|
|
159
|
-
|
|
160
|
-
### 五个设计问题
|
|
161
|
-
|
|
162
|
-
在写救赎场景之前,先回答以下问题:
|
|
163
|
-
|
|
164
|
-
1. **角色的罪过具体是什么?** 不要用模糊的"他做了坏事"。具体到行为、后果、受害者。读者需要清楚地知道角色在赎什么罪,才能判断救赎是否足够。
|
|
165
|
-
|
|
166
|
-
2. **角色为什么现在开始赎罪?** 是什么打破了他的自我欺骗或麻木?一个具体的事件、一个人的出现、还是累积到临界点的内疚?触发点必须可信,不能是突然的"良心发现"。
|
|
167
|
-
|
|
168
|
-
3. **救赎的行动与罪过之间有什么关联?** 最有力量的救赎行动与原罪之间存在某种对称或呼应。曾经毁掉别人家庭的人,用一生去守护另一个家庭;曾经因为懦弱而沉默的人,在关键时刻选择发声。
|
|
169
|
-
|
|
170
|
-
4. **谁有权"认证"这个救赎?** 是受害者、是社会、还是角色自己?不同的答案会导向完全不同的叙事走向。最复杂的情况是:受害者不原谅,社会不知情,只有角色自己知道自己在赎罪。
|
|
171
|
-
|
|
172
|
-
5. **救赎完成了吗?** 还是它是一个永远进行中的过程?如果你的答案是"完成了",请再想想——真正深刻的救赎叙事往往拒绝给出一个干净的终点。
|
|
173
|
-
|
|
174
|
-
### 五项检查清单
|
|
175
|
-
|
|
176
|
-
写完救赎场景后,用以下清单检验:
|
|
177
|
-
|
|
178
|
-
- [ ] **罪过检查:** 角色的罪过是否足够严重、足够具体,让读者在救赎开始前真正感到愤怒或失望?
|
|
179
|
-
- [ ] **过程检查:** 救赎是否经历了足够的时间和挣扎,还是一蹴而就?
|
|
180
|
-
- [ ] **行动检查:** 角色是否用具体的行动(而非仅仅是言语或内心独白)来证明自己的改变?
|
|
181
|
-
- [ ] **代价检查:** 救赎是否伴随着真实的、不可逆的代价?角色是否为赎罪付出了他在乎的东西?
|
|
182
|
-
- [ ] **尊重检查:** 叙事是否尊重了受害者的感受?受害者是否有权不原谅?救赎是否以赎罪者的行动为中心,而非以受害者的宽恕为终点?
|
|
183
|
-
|
|
184
|
-
---
|
|
185
|
-
|
|
186
|
-
## 进阶技巧
|
|
187
|
-
|
|
188
|
-
### 技巧1:镜像场景 (Mirror Scene)
|
|
189
|
-
|
|
190
|
-
设计两个结构相似但选择不同的场景——一个是角色犯罪的场景,一个是角色赎罪的场景。通过场景的对称性,让读者直观地看到角色的改变。
|
|
191
|
-
|
|
192
|
-
**实操方法:** 在故事前期,角色面对某个情境做出了错误的选择(比如为了自保而出卖同伴)。在救赎弧线的高潮,设计一个几乎完全相同的情境——相似的压力、相似的诱惑、相似的利害关系。但这一次,角色做出了不同的选择。不需要角色自己点明"这次我不会再犯同样的错",场景的对称性本身就会让读者感受到改变的重量。
|
|
193
|
-
|
|
194
|
-
**效果:** 镜像场景是"展示而非讲述"的极致运用。它不需要任何解释性文字,读者会自动将两个场景进行对比,从而在内心完成对角色救赎的评判。这种技巧在长篇小说中尤其有效,因为两个场景之间的时间跨度越长,对比的冲击力越大。
|
|
195
|
-
|
|
196
|
-
### 技巧2:救赎者与见证者 (The Witness)
|
|
197
|
-
|
|
198
|
-
为救赎者安排一个"见证者"角色——一个从头到尾观察救赎过程的人。这个见证者可以是受害者、旁观者、甚至是救赎者的敌人。通过见证者的视角变化,间接展示救赎的真实性。
|
|
199
|
-
|
|
200
|
-
**实操方法:** 见证者在故事开始时对救赎者持有强烈的负面态度(合理的愤怒或鄙视)。随着故事推进,见证者观察到救赎者一次又一次的行动——不是一个戏剧性的大事件,而是无数个小选择的累积。见证者的态度从愤怒到怀疑,从怀疑到困惑,从困惑到不情愿的承认。见证者不需要最终"原谅"救赎者,但他的态度变化本身就是救赎真实性的最好证明。
|
|
201
|
-
|
|
202
|
-
**效果:** 见证者为读者提供了一个情感代理人。读者通过见证者的眼睛来评判救赎是否可信,这比让救赎者自己宣称"我变了"有说服力得多。同时,见证者的内心挣扎("我不想承认他变了,但事实摆在眼前")本身就是一条引人入胜的副线。
|
|
203
|
-
|
|
204
|
-
### 技巧3:不完整的闭环 (The Incomplete Circle)
|
|
205
|
-
|
|
206
|
-
刻意让救赎弧线留下一个无法闭合的缺口。角色完成了大部分的赎罪,但有一件事、一个人、一个后果是他永远无法弥补的。这个缺口成为角色身上永久的伤疤,也成为故事最深沉的情感锚点。
|
|
207
|
-
|
|
208
|
-
**实操方法:** 在救赎弧线接近尾声时,设计一个场景让角色意识到:无论他做了多少,有一样东西是回不来的。也许是一个已经去世的受害者、一段错过的时光、一个孩子失去的童年。角色不崩溃、不自怜,而是平静地接受这个事实——这种平静比任何眼泪都更有力量。最后一个画面可以是角色继续他的日常赎罪行动,带着那个永远无法填满的空洞,继续前行。
|
|
209
|
-
|
|
210
|
-
**效果:** 不完整的闭环拒绝了"大团圆"的诱惑,给读者留下一种持久的、隐隐作痛的情感余韵。它传达了一个深刻的主题:救赎不是消除过去,而是学会与过去共存。这种处理方式比完美的救赎更真实,也更令人难忘——因为读者合上书之后,那个无法闭合的缺口会继续在心里回响。
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
# Emotional Beats Knowledge Base
|
|
2
|
-
|
|
3
|
-
## 什么是情感节拍?
|
|
4
|
-
|
|
5
|
-
**Emotional Beat** = 故事中触发读者情感反应的关键场景
|
|
6
|
-
|
|
7
|
-
**特征:**
|
|
8
|
-
- 情感强度高
|
|
9
|
-
- 角色关系转变
|
|
10
|
-
- 读者共鸣强
|
|
11
|
-
- 推动情节或角色成长
|
|
12
|
-
|
|
13
|
-
## 为什么重要?
|
|
14
|
-
|
|
15
|
-
- **读者记住的是情感:** 情节会忘记,情感会记住
|
|
16
|
-
- **情感驱动投入:** 读者因情感而继续阅读
|
|
17
|
-
- **角色真实性:** 情感场景展示角色深度
|
|
18
|
-
|
|
19
|
-
## 知识库内容
|
|
20
|
-
|
|
21
|
-
### 22 种核心情感节拍
|
|
22
|
-
|
|
23
|
-
| 类别 | 节拍 | 情感类型 |
|
|
24
|
-
|------|------|---------|
|
|
25
|
-
| **正面** | 初遇、联结、告白、胜利、重逢、原谅 | 喜悦、温暖、希望 |
|
|
26
|
-
| **负面** | 背叛、失去、拒绝、失败、误会、告别 | 悲伤、愤怒、绝望 |
|
|
27
|
-
| **转折** | 真相、不归路、至暗时刻、牺牲、觉醒、对峙 | 震惊、决心、转变 |
|
|
28
|
-
| **复杂** | 苦乐参半、道德困境、诱惑、救赎 | 矛盾、挣扎、成长 |
|
|
29
|
-
|
|
30
|
-
### 每种节拍包含
|
|
31
|
-
|
|
32
|
-
1. **核心元素** - 必备组成部分
|
|
33
|
-
2. **常见套路** - 陈旧的写法(应避免)
|
|
34
|
-
3. **新颖变体** - 打破套路的方法
|
|
35
|
-
4. **情感真实性** - 如何让读者相信
|
|
36
|
-
5. **示例分析** - 经典场景解析
|
|
37
|
-
6. **写作提示** - 实用建议和检查清单
|
|
38
|
-
|
|
39
|
-
## 使用方法
|
|
40
|
-
|
|
41
|
-
### 自动激活
|
|
42
|
-
当你设计情感场景时,知识库会自动提供参考
|
|
43
|
-
|
|
44
|
-
### 查找节拍
|
|
45
|
-
```
|
|
46
|
-
我要写一个告白场景
|
|
47
|
-
→ 加载 "Declaration" 节拍知识
|
|
48
|
-
→ 提供模板、变体、避免套路
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
### 节拍序列设计
|
|
52
|
-
```
|
|
53
|
-
我的角色关系应该如何发展?
|
|
54
|
-
→ 建议节拍序列:
|
|
55
|
-
初遇 → 联结 → 误会 → 和解 → 告白
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
## 最佳实践
|
|
59
|
-
|
|
60
|
-
1. **避免套路:** 使用新颖变体,不要陈词滥调
|
|
61
|
-
2. **情感真实:** 基于角色性格和处境,不要为情感而情感
|
|
62
|
-
3. **节拍分布:** 正负情感交替,不要连续多个负面
|
|
63
|
-
4. **强度递增:** 情感节拍强度应逐渐升级
|
|
64
|
-
|
|
65
|
-
## 节拍 vs 情节
|
|
66
|
-
|
|
67
|
-
- **情节:** 发生了什么(事件)
|
|
68
|
-
- **节拍:** 感受到什么(情感)
|
|
69
|
-
|
|
70
|
-
**示例:**
|
|
71
|
-
- 情节: 主角打败了敌人
|
|
72
|
-
- 节拍: 胜利的喜悦、失去战友的悲伤
|
|
73
|
-
|
|
74
|
-
## 文件结构
|
|
75
|
-
|
|
76
|
-
```
|
|
77
|
-
emotional-beats/
|
|
78
|
-
├── config.yaml # 配置
|
|
79
|
-
├── README.md # 本文件
|
|
80
|
-
├── 01-first-meeting.md # 初遇
|
|
81
|
-
├── 02-bonding-moment.md # 联结时刻
|
|
82
|
-
├── 03-declaration.md # 告白
|
|
83
|
-
├── 04-triumph.md # 胜利
|
|
84
|
-
├── 05-reunion.md # 重逢
|
|
85
|
-
├── 06-forgiveness.md # 原谅
|
|
86
|
-
├── 07-betrayal.md # 背叛
|
|
87
|
-
├── 08-loss.md # 失去
|
|
88
|
-
├── 09-rejection.md # 拒绝
|
|
89
|
-
├── 10-failure.md # 失败
|
|
90
|
-
├── 11-misunderstanding.md # 误会
|
|
91
|
-
├── 12-farewell.md # 告别
|
|
92
|
-
├── 13-revelation.md # 真相揭露
|
|
93
|
-
├── 14-point-of-no-return.md # 不归路
|
|
94
|
-
├── 15-dark-night.md # 至暗时刻
|
|
95
|
-
├── 16-sacrifice.md # 牺牲
|
|
96
|
-
├── 17-awakening.md # 觉醒
|
|
97
|
-
├── 18-confrontation.md # 对峙
|
|
98
|
-
├── 19-bittersweet-goodbye.md # 苦乐参半
|
|
99
|
-
├── 20-moral-dilemma.md # 道德困境
|
|
100
|
-
├── 21-temptation.md # 诱惑
|
|
101
|
-
├── 22-redemption.md # 救赎
|
|
102
|
-
├── beat-sequences.md # 节拍序列设计
|
|
103
|
-
└── pacing-guide.md # 节奏指南
|
|
104
|
-
```
|
|
@@ -1,276 +0,0 @@
|
|
|
1
|
-
# Emotional Beat Sequences
|
|
2
|
-
|
|
3
|
-
## 什么是节拍序列?
|
|
4
|
-
|
|
5
|
-
节拍序列 = 一系列情感节拍的组合,构建完整的情感弧线
|
|
6
|
-
|
|
7
|
-
单个节拍是一个点,序列是一条线。好的故事不是随机堆砌情感场景,而是精心设计节拍的顺序、间隔和强度。
|
|
8
|
-
|
|
9
|
-
## 常见序列模式
|
|
10
|
-
|
|
11
|
-
### 模式 1: 关系发展序列(浪漫/友情)
|
|
12
|
-
|
|
13
|
-
```
|
|
14
|
-
初遇 (First Meeting)
|
|
15
|
-
↓
|
|
16
|
-
联结时刻 (Bonding Moment)
|
|
17
|
-
↓
|
|
18
|
-
误会/冲突 (Misunderstanding/Conflict)
|
|
19
|
-
↓
|
|
20
|
-
分离 (Separation)
|
|
21
|
-
↓
|
|
22
|
-
觉醒 (Awakening) - 意识到对方的重要性
|
|
23
|
-
↓
|
|
24
|
-
告白/和解 (Declaration/Forgiveness)
|
|
25
|
-
↓
|
|
26
|
-
胜利/重逢 (Triumph/Reunion)
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
**示例:** 《傲慢与偏见》伊丽莎白与达西
|
|
30
|
-
1. 初遇(舞会上的敌对)
|
|
31
|
-
2. 逐渐了解(多次社交场合的互动)
|
|
32
|
-
3. 达西第一次求婚(被拒——误会+对峙)
|
|
33
|
-
4. 分离(达西写信解释)
|
|
34
|
-
5. 伊丽莎白觉醒(重新认识达西,参观彭伯利)
|
|
35
|
-
6. 第二次求婚(告白——接受)
|
|
36
|
-
7. 圆满结局(胜利)
|
|
37
|
-
|
|
38
|
-
**变体:**
|
|
39
|
-
- **慢热型:** 联结时刻重复多次,逐渐加深
|
|
40
|
-
- **虐恋型:** 误会→和解→新误会,循环多次
|
|
41
|
-
- **暗恋型:** 觉醒在前,告白延迟到很后面
|
|
42
|
-
|
|
43
|
-
### 模式 2: 英雄成长序列
|
|
44
|
-
|
|
45
|
-
```
|
|
46
|
-
初遇导师 (Meeting Mentor)
|
|
47
|
-
↓
|
|
48
|
-
胜利(小)(Small Triumph)
|
|
49
|
-
↓
|
|
50
|
-
失败 (Failure)
|
|
51
|
-
↓
|
|
52
|
-
至暗时刻 (Dark Night)
|
|
53
|
-
↓
|
|
54
|
-
觉醒 (Awakening)
|
|
55
|
-
↓
|
|
56
|
-
牺牲 (Sacrifice)
|
|
57
|
-
↓
|
|
58
|
-
胜利(大)(Major Triumph)
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
**示例:** 《星球大战》卢克·天行者
|
|
62
|
-
1. 遇欧比旺(导师初遇)
|
|
63
|
-
2. 逃离塔图因(小胜利)
|
|
64
|
-
3. 欧比旺死亡(失去+失败)
|
|
65
|
-
4. 第五部手被砍断,得知父亲真相(至暗时刻+真相揭露)
|
|
66
|
-
5. 认识到原力本质(觉醒)
|
|
67
|
-
6. 拒绝杀父亲(牺牲——放弃复仇)
|
|
68
|
-
7. 救赎父亲,帝国覆灭(大胜利)
|
|
69
|
-
|
|
70
|
-
**变体:**
|
|
71
|
-
- **反英雄型:** 觉醒后不是变好,而是接受黑暗面
|
|
72
|
-
- **团队型:** 每个成员有自己的小成长序列,汇聚到集体胜利
|
|
73
|
-
- **悲剧型:** 至暗时刻后觉醒太晚,牺牲无法挽回
|
|
74
|
-
|
|
75
|
-
### 模式 3: 背叛-救赎序列
|
|
76
|
-
|
|
77
|
-
```
|
|
78
|
-
联结 (Bonding)
|
|
79
|
-
↓
|
|
80
|
-
背叛 (Betrayal)
|
|
81
|
-
↓
|
|
82
|
-
对峙 (Confrontation)
|
|
83
|
-
↓
|
|
84
|
-
分离 (Separation)
|
|
85
|
-
↓
|
|
86
|
-
道德困境 (Moral Dilemma) - 背叛者的挣扎
|
|
87
|
-
↓
|
|
88
|
-
牺牲 (Sacrifice) - 背叛者自我牺牲
|
|
89
|
-
↓
|
|
90
|
-
原谅 (Forgiveness)
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
**示例:** 《纳尼亚传奇》埃德蒙
|
|
94
|
-
1. 与兄弟姐妹的关系(联结,但有裂痕)
|
|
95
|
-
2. 投靠白女巫(背叛)
|
|
96
|
-
3. 被救出后面对兄弟姐妹(对峙)
|
|
97
|
-
4. 独自面对后果(分离/反思)
|
|
98
|
-
5. 内心挣扎(道德困境)
|
|
99
|
-
6. 战斗中勇敢表现(牺牲——用行动赎罪)
|
|
100
|
-
7. 被原谅(原谅)
|
|
101
|
-
|
|
102
|
-
**变体:**
|
|
103
|
-
- **不被原谅型:** 牺牲后仍不被接受,更加悲剧
|
|
104
|
-
- **双向背叛型:** 双方都有背叛,需要互相原谅
|
|
105
|
-
- **自我救赎型:** 不需要他人原谅,而是原谅自己
|
|
106
|
-
|
|
107
|
-
### 模式 4: 真相追寻序列
|
|
108
|
-
|
|
109
|
-
```
|
|
110
|
-
谜团建立 (Mystery Setup)
|
|
111
|
-
↓
|
|
112
|
-
线索发现 (Clue Discovery)
|
|
113
|
-
↓
|
|
114
|
-
误导 (Misdirection)
|
|
115
|
-
↓
|
|
116
|
-
部分揭露 (Partial Revelation)
|
|
117
|
-
↓
|
|
118
|
-
不归路 (Point of No Return) - 决定追查到底
|
|
119
|
-
↓
|
|
120
|
-
完整揭露 (Full Revelation)
|
|
121
|
-
↓
|
|
122
|
-
后果 (Aftermath)
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
**示例:** 《嫌疑人X的献身》
|
|
126
|
-
1. 案件发生(谜团)
|
|
127
|
-
2. 调查线索(发现)
|
|
128
|
-
3. 表面证据指向错误方向(误导)
|
|
129
|
-
4. 汤川发现不对劲(部分揭露)
|
|
130
|
-
5. 决定揭开真相(不归路)
|
|
131
|
-
6. 石神的真正计划被揭露(完整揭露——震撼)
|
|
132
|
-
7. 所有人面对真相的痛苦(后果)
|
|
133
|
-
|
|
134
|
-
### 模式 5: 堕落序列
|
|
135
|
-
|
|
136
|
-
```
|
|
137
|
-
诱惑 (Temptation)
|
|
138
|
-
↓
|
|
139
|
-
屈服 (Yielding)
|
|
140
|
-
↓
|
|
141
|
-
短暂胜利 (Brief Triumph)
|
|
142
|
-
↓
|
|
143
|
-
代价显现 (Consequences)
|
|
144
|
-
↓
|
|
145
|
-
更大诱惑 (Greater Temptation)
|
|
146
|
-
↓
|
|
147
|
-
道德困境 (Moral Dilemma)
|
|
148
|
-
↓
|
|
149
|
-
至暗时刻/毁灭 (Dark Night/Destruction)
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
**示例:** 《绝命毒师》沃尔特·怀特
|
|
153
|
-
1. 为家人制毒(诱惑——合理化)
|
|
154
|
-
2. 第一次制毒成功(屈服)
|
|
155
|
-
3. 赚到钱(短暂胜利)
|
|
156
|
-
4. 暴力升级(代价)
|
|
157
|
-
5. 更大的权力和金钱(更大诱惑)
|
|
158
|
-
6. 在家人和帝国之间选择(道德困境)
|
|
159
|
-
7. 失去一切(至暗/毁灭)
|
|
160
|
-
|
|
161
|
-
## 序列组合技巧
|
|
162
|
-
|
|
163
|
-
### 技巧 1: 序列嵌套
|
|
164
|
-
|
|
165
|
-
在大序列中嵌入小序列:
|
|
166
|
-
|
|
167
|
-
```
|
|
168
|
-
大序列: 英雄成长
|
|
169
|
-
└─ 小序列: 关系发展(与伙伴)
|
|
170
|
-
└─ 小序列: 背叛-救赎(与导师)
|
|
171
|
-
```
|
|
172
|
-
|
|
173
|
-
**示例:** 《哈利波特》
|
|
174
|
-
- 大序列: 哈利的英雄成长(7本书)
|
|
175
|
-
- 嵌套: 与罗恩的友情发展(每本书内)
|
|
176
|
-
- 嵌套: 斯内普的背叛-救赎(贯穿全系列)
|
|
177
|
-
|
|
178
|
-
### 技巧 2: 序列交织
|
|
179
|
-
|
|
180
|
-
多条故事线的序列交替推进:
|
|
181
|
-
|
|
182
|
-
```
|
|
183
|
-
A线 Ch1: 初遇
|
|
184
|
-
B线 Ch2: 背叛
|
|
185
|
-
A线 Ch3: 联结
|
|
186
|
-
B线 Ch4: 对峙
|
|
187
|
-
A线 Ch5: 误会 ← A线低谷
|
|
188
|
-
B线 Ch6: 牺牲 ← B线高潮
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
**原则:**
|
|
192
|
-
- 一条线低谷时,另一条线可以是高潮(保持整体节奏)
|
|
193
|
-
- 不同线的节拍可以主题呼应(如同时出现"牺牲"主题)
|
|
194
|
-
- 线程汇合时,节拍强度叠加
|
|
195
|
-
|
|
196
|
-
### 技巧 3: 序列反转
|
|
197
|
-
|
|
198
|
-
打破读者对序列的预期:
|
|
199
|
-
|
|
200
|
-
**常规关系序列:** 初遇→联结→误会→和解→告白
|
|
201
|
-
**反转:** 初遇→联结→告白→**背叛**→至暗→**不原谅**
|
|
202
|
-
|
|
203
|
-
读者期待和解,你给背叛;期待原谅,你给决裂。反转的力量来自对常规序列的了解。
|
|
204
|
-
|
|
205
|
-
### 技巧 4: 序列压缩与拉伸
|
|
206
|
-
|
|
207
|
-
**压缩:** 在短篇或高潮部分,多个节拍快速连续
|
|
208
|
-
```
|
|
209
|
-
一章内: 真相揭露 → 对峙 → 背叛 → 至暗时刻
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
**拉伸:** 在长篇中,一个节拍可以跨越多章
|
|
213
|
-
```
|
|
214
|
-
至暗时刻: 持续3-5章,从不同角度展示绝望
|
|
215
|
-
```
|
|
216
|
-
|
|
217
|
-
## 不同体裁的序列特点
|
|
218
|
-
|
|
219
|
-
### 爽文/升级流
|
|
220
|
-
- **核心序列:** 胜利→小挫折→更大胜利(循环)
|
|
221
|
-
- **频率:** 高频正面节拍
|
|
222
|
-
- **避免:** 长期负面,至暗时刻不宜太长
|
|
223
|
-
- **特点:** 每次胜利都比上次更爽
|
|
224
|
-
|
|
225
|
-
### 悲剧
|
|
226
|
-
- **核心序列:** 胜利→失败→觉醒(太晚)→毁灭
|
|
227
|
-
- **频率:** 更多负面节拍
|
|
228
|
-
- **特点:** 至暗时刻后没有真正复苏
|
|
229
|
-
- **关键:** 让读者看到希望,再摧毁它
|
|
230
|
-
|
|
231
|
-
### 悬疑/推理
|
|
232
|
-
- **核心序列:** 真相追寻序列为主
|
|
233
|
-
- **频率:** 揭露节拍密集
|
|
234
|
-
- **特点:** 每次揭露都改变读者理解
|
|
235
|
-
- **关键:** 铺垫和误导的平衡
|
|
236
|
-
|
|
237
|
-
### 史诗奇幻
|
|
238
|
-
- **核心序列:** 多条英雄成长序列交织
|
|
239
|
-
- **频率:** 平衡,但波动大
|
|
240
|
-
- **特点:** 多线程,节拍交织
|
|
241
|
-
- **关键:** 线程汇合时的节拍叠加
|
|
242
|
-
|
|
243
|
-
### 言情/纯爱
|
|
244
|
-
- **核心序列:** 关系发展序列为主
|
|
245
|
-
- **频率:** 情感节拍密集
|
|
246
|
-
- **特点:** 联结和误会交替
|
|
247
|
-
- **关键:** 每次联结都更深,每次误会都更痛
|
|
248
|
-
|
|
249
|
-
## 设计自己的序列
|
|
250
|
-
|
|
251
|
-
### 步骤 1: 确定核心序列模式
|
|
252
|
-
选择最接近你故事的模式作为骨架
|
|
253
|
-
|
|
254
|
-
### 步骤 2: 标记关键节拍
|
|
255
|
-
在大纲中标记每个关键情感节拍的位置
|
|
256
|
-
|
|
257
|
-
### 步骤 3: 检查节奏
|
|
258
|
-
- 正负交替是否合理?
|
|
259
|
-
- 强度是否递增?
|
|
260
|
-
- 有没有连续太多同类节拍?
|
|
261
|
-
|
|
262
|
-
### 步骤 4: 添加嵌套序列
|
|
263
|
-
为次要关系线添加小序列
|
|
264
|
-
|
|
265
|
-
### 步骤 5: 设计反转点
|
|
266
|
-
在读者预期的地方制造意外
|
|
267
|
-
|
|
268
|
-
### 检查清单
|
|
269
|
-
|
|
270
|
-
- [ ] 有明确的核心序列模式
|
|
271
|
-
- [ ] 关键节拍位置合理
|
|
272
|
-
- [ ] 正负情感交替
|
|
273
|
-
- [ ] 强度逐渐递增
|
|
274
|
-
- [ ] 多线程节拍不冲突
|
|
275
|
-
- [ ] 至少有一个序列反转
|
|
276
|
-
- [ ] 结尾节拍有足够的情感重量
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
name: emotional-beats
|
|
2
|
-
version: 1.0.0
|
|
3
|
-
description: 情感节拍知识库,提供 22 种核心情感场景的设计模板
|
|
4
|
-
type: knowledge-base
|
|
5
|
-
|
|
6
|
-
activation:
|
|
7
|
-
keywords:
|
|
8
|
-
- 情感
|
|
9
|
-
- 节拍
|
|
10
|
-
- 告白
|
|
11
|
-
- 背叛
|
|
12
|
-
- 牺牲
|
|
13
|
-
- 重逢
|
|
14
|
-
- 误会
|
|
15
|
-
- 和解
|
|
16
|
-
- 情感场景
|
|
17
|
-
- emotional beat
|
|
18
|
-
auto_activate: true
|
|
19
|
-
confidence_threshold: 0.7
|
|
20
|
-
|
|
21
|
-
integration:
|
|
22
|
-
works_with:
|
|
23
|
-
- character-arc
|
|
24
|
-
- pacing-control
|
|
25
|
-
- /write
|
|
26
|
-
|
|
27
|
-
metadata:
|
|
28
|
-
word_count: 6000+
|
|
29
|
-
estimated_reading_time: "20分钟"
|
|
30
|
-
complexity: beginner-intermediate
|