Run: 2026-03-18-01KM08BYQTHB8BZY33XTHSC10B

Run Details

Duration:
16.0s
Cost:
$0.014096
Provider:
OpenAI

Model input

System
You are an expert fiction writer. Always keep the following rules in mind: - Write in past tense and use General English spelling, grammar, and colloquialisms/slang. - Write in active voice - Always follow the "show, don't tell" principle. - Avoid adverbs and cliches and overused/commonly used phrases. Aim for fresh and original descriptions. - Convey events and story through dialogue. - Mix short, punchy sentences with long, descriptive ones. Drop fill words to add variety. - Skip "he/she said said" dialogue tags and convey people's actions or face expressions through their speech - Avoid mushy dialog and descriptions, have dialogue always continue the action, never stall or add unnecessary fluff. Vary the descriptions to not repeat yourself. - Put dialogue on its own paragraph to separate scene and action. - Reduce indicators of uncertainty like "trying" or "maybe" When writing text: - NEVER conclude the scene on your own, follow the beat instructions very closely. - NEVER end with foreshadowing. - NEVER write further than what I prompt you with. - AVOID imagining possible endings, NEVER deviate from the instructions. - STOP EARLY if the continuation contains what was required in the instructions. You do not need to fill out the full amount of words possible.
User/Human
Take into account the following glossary of characters/locations/items/lore... when writing your response: <codex> <character id="4412" name="Aurora Carter" aliases="Rory, Laila, Aurora, Carter, Malphora" pronouns="she/her" species="Human" storyRole="Protagonist"> <eyeColor>bright blue</eyeColor> <hair>straight shoulder-length black</hair> <height>5'6"</height> <age>25</age> <scar>small crescent-shaped scar on her left wrist from a childhood accident</scar> <description>Aurora, referred to by her friends as Rory, is cool-headed, intelligent, and known for quick out-of-the-box thinking.</description> <backstory>Born in Cardiff to an Irish barrister father (Brendan Carter) and Welsh teacher mother (Jennifer Carter née Ellis), Rory reluctantly pursued Pre-Law at Cardiff University. She fled to London at the behest of her childhood friend Eva after leaving an abusive ex named Evan. By day, Rory works part-time as a delivery person for Yu-Fei Cheung's Golden Empress restaurant. She lives in a flat above Silas' bar.</backstory> </character> <character id="4415" name="Lucien Moreau" aliases="Lucien, Luc, the Frenchman" pronouns="he/him" species="Half-Demon" storyRole="Ally"> <eyeColor>heterochromatic — one amber, one black</eyeColor> <hair>slicked-back platinum blond</hair> <height>5'11"</height> <age>32</age> <cane>ivory-handled cane that conceals a thin blade</cane> <dress>tailored charcoal suits</dress> <description>An impeccably dressed fixer and information broker in London's supernatural underworld. He speaks four languages fluently.</description> <backstory>Born in Marseille to a human mother and a demon father from the realm of Avaros.</backstory> </character> <location id="858" name="Eva's Flat" aliases="Eva's place, the flat on Brick Lane" realm="Earth"> <cat>tabby cat named Ptolemy</cat> <security>three deadbolts on the front door</security> <description>A cramped one-bedroom flat above a curry house on Brick Lane, East London. Every surface is covered with books, scrolls, and research notes.</description> </location> </codex> Continue the story using the following instructions: <instructions> Write a fully fleshed out scene of at least 1000 words in the romance genre. Two people who parted on complicated terms are forced together again when one shows up unannounced at the other's flat. There's history between them — attraction, hurt, and things left unsaid. Write the scene from the moment the door opens. Use the codex entries above as your world reference for characters and setting. Only include the prose of the scene without any markdown or commentary. </instructions>

Model response

AI
The first deadbolt gave with a hard metallic clack. Then the second. Aurora stood in the narrow hallway of Eva’s flat with her hand still on the lock and the damp of London seeping through the front door seam. Curry smoke drifted up from the shop downstairs. Ptolemy’s nails clicked over the floorboards inside, a sharp little patrol sound. She pulled the door inward. Lucien Moreau filled the frame like he had every right to be there. Charcoal suit cut to his bones. Ivory cane in one gloved hand. Slick blond hair catching the weak hall light. One amber eye, one black, both fixed on her face as if he had walked here with a purpose and not with the kind of nerve that should have got him thrown back onto Brick Lane. Rory’s fingers tightened on the edge of the door. “Of all the doors in London,” she said, “you picked this one.” Lucien’s mouth tilted, not quite a smile. “You opened it.” She glanced past him at the stairwell. Empty. The curry house door below banged shut, a burst of voices and fryer heat rising and then fading. “If this is some dramatic social visit, you can save it.” His gaze dropped, quick and exact, to the scar on her left wrist as her sleeve shifted. Then back to her eyes. “I do not come all this way for social visits.” “Then you came for the wrong thing.” He lifted the cane a fraction and leaned it against the wall beside the door, careful with the motion. “May I enter?” Rory barked a laugh without humour. “That’s adorable. No.” His black eye didn’t flinch. The amber one did something stranger, catching light like a coin turned under water. “Aurora.” The name hit the hall and stayed there. She hated that it still sounded like a hand at the back of her neck. “Don’t,” she said. Lucien stepped in before she could slam the door and he had moved with the easy confidence of a man used to ignoring obstacles. She caught the edge of his coat with two fingers and shoved. He stopped, not from force but from the fact he chose to. Ptolemy appeared from the cluttered kitchen doorway, tail high, and pinned Lucien with a look of grave feline judgement. Lucien glanced down. “Bonsoir.” The cat’s whiskers twitched. He sat in the middle of the hallway like a small disgruntled magistrate. Rory shut the door, shot the bolts across, and only then turned fully to face him. The flat looked smaller with him in it. Eva’s books crowded the shelves and the floor, stacks of occult notes balanced against teetering mugs and rolled scrolls. A half-open atlas rested on a chair. The smell of old paper, curry, and cat fur wrapped around the polished line of Lucien’s suit like he had wandered into some other life and refused to admit it. She crossed her arms. “You have thirty seconds before I decide this is a terrible mistake and put you back in the hallway.” Lucien glanced around the room, taking in the mess, the layered paper trails, the kettle on the hob, the bright red post-it notes stuck to a cupboard door. “Eva’s place still resembles a siege line.” “You came to comment on the decor?” “I came because I had nowhere else to go.” That landed. Not hard. Worse. Soft, and close to the ribs. Rory kept her face flat. “That’s not my problem.” “No.” His jaw tightened by a thread. “It usually was not.” The words sat between them, sharp enough to cut on. She looked at him properly then. No blood on his collar. No torn sleeve. But there was a strain in the set of his shoulders, a tension he wore badly because he usually wore everything like it had been tailored for him. One glove creased at the knuckles. The hand with the cane rested too still. “You’re hurt,” she said. His mouth barely moved. “You noticed.” “I have eyes.” “And I have not had the luxury of pretending this visit felt friendly.” The old spark rose in her chest before she could stamp it down. Attraction had never been the problem. Attraction was easy. Attraction had been the trap, the thing that kept dragging her back into the same shape of disaster with a beautiful face attached. She pointed at the doorway behind him. “Start talking.” He stood there a second, silent, as if weighing which language would hurt least. Then: “May I sit?” “No.” His gaze held hers. “On the floor, then.” “Lucien—” A brief exhale through his nose. Not quite amusement, not quite surrender. He eased down onto the battered sofa beneath the window, cane across his knees. The movement cost him more than he wanted her to see. Rory noticed anyway. She hated herself for that, too. “Fine,” she said. “Now talk.” He looked at Ptolemy, who had hopped onto the arm of the chair and begun washing one paw with ceremonial disdain. “Your cat appears dissatisfied with me.” “Good. He’s got instincts.” Lucien’s mouth curved this time, and for one stupid second she remembered the last time he had smiled at her in a room full of danger, as if danger were a private joke only he understood. Her stomach tightened. “Something happened,” she said. “Yes.” “That’s not an answer.” “It is a beginning.” “Don’t do that.” “Do what?” “Talk like you’re reading from a menu in a very expensive restaurant.” His expression flickered. “You were always impatient with my habits.” Rory let out a slow breath. “And you were always very pleased to have them.” The amber eye stayed on her. “Not always.” Silence pressed in. The fridge hummed. Somewhere downstairs, a pot lid clanged. Ptolemy hopped down and padded over to Lucien, sniffed the hem of his trouser leg, then left as if the scent failed inspection. Rory dragged a hand through her hair and cursed the loose strands that caught at her fingers. “Why are you here, Lucien?” His hand closed once around the cane handle. “Because people are looking for me.” “That sounds like your sort of problem.” “They have extended the search to people I care about.” Her pulse shifted. “That’s a pretty little line.” “It is not a line.” “Then stop sounding rehearsed.” His eyes sharpened. “You think I planned this?” “I think you plan everything.” That got a reaction. Not anger. Something leaner. He leaned back against the sofa, the movement careful now, and his face lost a fraction of its polish. “I did not plan to arrive on your doorstep.” “Then why mine?” “Because your door is harder to follow than the others.” That made her laugh once, short and dry. “You’re hiding.” “I am.” “From who?” He looked at her wrist again. Rory dropped her arm at once. Lucien’s voice lowered. “From someone who knows your name.” The flat went very still. She stared at him. “You’ve got to be joking.” “I rarely joke when my life is inconvenient.” Her mouth went cold. “What name?” He didn’t answer right away. Rory took one step closer. “Lucien.” His eyes slid up to hers. “Malphora.” The word struck like a slap. Not because she feared it. Because she hated how cleanly he said it, like he had tucked it away and kept it polished. Like he had not been one of the handful of people who knew it. Like it had never come from a night she had tried hard to forget and failed. Ptolemy yowled from the kitchen door and bolted under the table. Rory’s skin prickled. “Say that again.” “No.” “You don’t get to walk in here and throw that at me like a knife and then decide not to explain.” Lucien’s gaze didn’t waver. “You opened the door.” She stepped closer until the space between them narrowed to heat and breath and the expensive scent of his cologne cut with rain and street grime. His face looked carved in the flat light, all planes and restraint and the pale line of strain at the corner of his mouth. “You know better than to use that name in my flat.” “I know better than to use it anywhere.” “Then why did you?” His black eye held hers. “Because you needed to understand this was not a courtesy call.” Rory could feel the old hurt stirring, that ugly, familiar mix of wanting and fury that had made them both reckless once. Her chest tightened against it. “You disappeared,” she said. One beat. “You vanished without a word, Lucien. No note, no warning, no smug little speech about your grand and tragic secrets. Nothing.” His jaw worked once. “I left.” “You left me holding the pieces.” “I know.” The two words came out flat and rough, and for a moment they sounded less like a defence than a wound. She wanted to hate him cleanly. That would have been easier. But there he was, too close and too human, the sharp line of his mouth gone harder, the cane held like a brace rather than a weapon. Not pristine. Not in control. Not the man she had learned to mistrust in self-defence. “You don’t get to say that like it fixes anything,” she said. “I did not say it fixed anything.” “What, then?” He looked at her face with a patience that had once felt like seduction and now felt like cruelty. “I said it because it was true.” Rory let out a breath through her nose. “I had no idea whether you were dead.” “I was not.” “You could have told me.” “No.” That single word stung. She gave him a hard stare. “Why not?” His gaze dropped for the first time, not in shame but in calculation, as if he had decided some truths still cost too much to spend. “Because anyone connected to me became useful,” he said. “You became useful.” The words hit, and she hated that part of her had expected them, hated more that they hurt anyway because she had already known how his world worked. He brokered secrets. He dealt in leverage. He moved through the supernatural underworld in tailored cloth and a blade hidden in a cane. None of that had been pretend. Rory folded her arms tighter. “So that was it.” “No.” “It was.” Lucien’s mouth flattened. “If I had remained, you would have been watched. Used. Threatened. I removed myself so your name stopped drawing attention.” Her laugh came out raw. “You think disappearing counts as protection?” “It did in this case.” “Did it?” Something flashed in his face then. Not guilt. Anger, sharp and briefly naked. “You were safer without me.” “That’s convenient.” “It was not convenient.” She stared at him. “You don’t get to decide what’s safer for me.” “No.” He pushed himself up from the sofa. The room seemed to contract around him. “You are quite capable of deciding that yourself.” The top of his cane tapped the floor once. The sound cut through the quiet. Rory tipped her chin up. “And yet here you are.” He held her gaze, unblinking. “And yet.” For a second neither of them moved. The air between them had the old charge in it, the sort that lived in unfinished sentences and the heat of hands not quite touching. Rory hated that she still registered every detail: the pale scar along his knuckle, the faint crease at the edge of his collar, the way his coat sat on him like armour he had long ago turned into habit. Then Ptolemy jumped onto the windowsill and knocked a stack of papers to the floor with one slow, deliberate paw. The spell broke. Rory bent to gather the fallen pages. Lucien did too, reaching for the same sheet. Their fingers missed by an inch. She froze. He froze with her. The paper between them showed one of Eva’s copied diagrams, ink circles and wards crowded with notes in the margins. Lucien’s voice changed, gone low and alert. “This was in the flat?” Rory snatched the page back. “It’s Eva’s work.” “It is more than that.” She looked up, already annoyed. “You’ve got better eyes than that?” His face had shifted into something harder, the easy polish stripped away. He crouched, cane angled against his leg, and picked up another sheet from the floor without looking at her. “This binding sequence is old.” “Meaning?” “Meaning someone has been studying a door they should not touch.” Rory took the page from his hand and scanned the marks. The knot in her gut tightened, but she kept her tone level. “You came in here dragging trouble and now you’re telling me my flat’s full of it?” Lucien straightened. “It was already here,” he said. “I merely arrived before it finished knocking.” Her fingers curled around the paper. Outside, somewhere on Brick Lane, a siren wailed and then faded. The curry smell thinned under the heavier scent of rain, and Ptolemy hissed from the windowsill at something only he could see below. Rory looked at Lucien, at the bruise-shadow under the tailored line of his collar, at the way his hand stayed near the cane without quite gripping it, and the anger she had kept sharp for months began to fray around the edges. “You walked in here after all this time,” she said. “You used that name. You told me my flat was being watched. And you expect me to what, Lucien? Offer you tea?” His eyes stayed on her face. “No,” he said. “I expected you to decide quickly.” She stared at him, heart beating hard enough to pulse in her throat. Then she glanced at the papers, at the deadbolts, at the cat glaring from the window, and back at the man who had left her with silence and returned with trouble on his heels. “Fine,” she said. “Sit back down before you fall over, and start from the part where someone knew to come after you.”
created_at"2026-03-18T10:37:53.799Z" 3/18/2026, 10:37:53 AM
model"openai/gpt-5.4-mini-20260317"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency424
moderation_latency(null)
generation_time15732
tokens_prompt1034
tokens_completion3717
native_tokens_prompt927
native_tokens_completion2978
native_tokens_completion_images0
native_tokens_reasoning0
native_tokens_cached0
num_media_prompt(null)
num_input_audio_prompt(null)
num_media_completion0
num_search_results(null)
origin"https://ncbench.com/"
is_byokfalse
finish_reason"stop"
native_finish_reason"completed"
usage0.01409625
router(null)
provider_responses
0
endpoint_id"9ee065b2-3d1c-43bc-bdd7-28af3b148282"
id"resp_014122994f72ad9f0169ba8081e0148195b56bc85249f943dd"
is_byokfalse
latency197
model_permaslug"openai/gpt-5.4-mini-20260317"
provider_name"OpenAI"
status200
user_agent"langchainjs-openai/1.0.0 ((node/v24.14.0; linux; x64))"
http_referer(null)
api_type"completions"
id"gen-1773830273-dNiYGEj9VnETiHxgeBSU"
upstream_id"resp_014122994f72ad9f0169ba8081e0148195b56bc85249f943dd"
total_cost0.01409625
cache_discount(null)
upstream_inference_cost0
provider_name"OpenAI"

Evaluation details

Result Evaluator Details Meta Data
100.00% Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags14
adverbTagCount0
adverbTags(empty)
dialogueSentences116
tagDensity0.121
leniency0.241
rawRatio0
effectiveRatio0
91.43% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount2334
totalAiIsmAdverbs4
found
0
adverb"very"
count3
1
adverb"quickly"
count1
highlights
0"very"
1"quickly"
100.00% AI-ism character names
Target: 0 AI-default names (17 tracked, −20% each)
codexExemptions(empty)
found(empty)
100.00% AI-ism location names
Target: 0 AI-default location names (33 tracked, −20% each)
codexExemptions(empty)
found(empty)
74.29% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount2334
totalAiIsms12
found
0
word"grave"
count1
1
word"tension"
count1
2
word"stomach"
count1
3
word"flickered"
count1
4
word"silence"
count2
5
word"pulse"
count2
6
word"could feel"
count1
7
word"familiar"
count1
8
word"pristine"
count1
9
word"scanned"
count1
highlights
0"grave"
1"tension"
2"stomach"
3"flickered"
4"silence"
5"pulse"
6"could feel"
7"familiar"
8"pristine"
9"scanned"
100.00% Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches1
maxInWindow1
found
0
label"let out a breath"
count1
highlights
0"let out a breath"
100.00% Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells1
narrationSentences177
matches
0"t in shame"
100.00% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount0
hedgeCount2
narrationSentences177
filterMatches(empty)
hedgeMatches
0"seemed to"
1"began to"
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences278
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
maxSentenceWordsSeen43
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans0
markdownWords0
totalWords2334
ratio0
matches(empty)
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions25
unquotedAttributions0
matches(empty)
83.33% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions57
wordCount1693
uniqueNames10
maxNameDensity1.12
worstName"Rory"
maxWindowNameDensity2.5
worstWindowName"Lucien"
discoveredNames
Eva3
London1
Moreau1
Brick2
Lane2
Lucien16
Ptolemy7
One3
Rory19
Attraction3
persons
0"Eva"
1"Moreau"
2"Lucien"
3"Ptolemy"
4"One"
5"Rory"
6"Attraction"
places
0"London"
1"Brick"
2"Lane"
globalScore0.939
windowScore0.833
5.77% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences104
glossingSentenceCount6
matches
0"not quite a smile"
1"sounded like a hand at the back of her nec"
2"as if weighing which language would hurt least"
3"Not quite amusement, not quite surrender"
4"not quite surrender"
5"felt like seduction and now felt like c"
6"felt like cruelty"
7"not quite touching"
100.00% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches2
per1kWords0.857
wordCount2334
matches
0"not from force but from the fact he chose to"
1"not in shame but in calculation, as if he had decided some truths still cost"
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount3
totalSentences278
matches
0"hated that it"
1"hated that part"
2"hated that she"
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs163
mean14.32
std14.3
cv0.998
sampleLengths
09
13
247
35
413
556
69
712
87
93
1026
1111
1222
1310
147
1522
169
1720
188
1915
203
2148
2219
234
2417
2516
2664
274
2819
2935
307
319
3211
339
3411
3510
3656
374
386
393
4013
4145
429
4318
441
458
461
4737
489
495
100.00% Passive voice overuse
Target: ≤2% passive sentences
passiveCount1
totalSentences177
matches
0"been tailored"
100.00% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount0
totalVerbs290
matches(empty)
100.00% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount0
semicolonCount0
flaggedSentences0
totalSentences278
ratio0
matches(empty)
95.30% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount1697
adjectiveStacks0
stackExamples(empty)
adverbCount77
adverbRatio0.04537418974661167
lyAdverbCount12
lyAdverbRatio0.007071302298173247
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences278
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences278
mean8.4
std7.52
cv0.896
sampleLengths
09
13
227
38
412
55
613
76
86
98
1036
119
1212
137
143
157
161
1718
1811
1917
205
2110
227
2319
243
256
263
275
2814
291
308
3115
323
3324
3412
3512
3619
373
381
394
4013
4116
428
4319
447
4530
464
4719
4828
497
45.32% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats13
diversityRatio0.2302158273381295
totalSentences278
uniqueOpeners64
100.00% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount5
totalSentences153
matches
0"Then the second."
1"Then back to her eyes."
2"Somewhere downstairs, a pot lid"
3"Then Ptolemy jumped onto the"
4"Then she glanced at the"
ratio0.033
78.82% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount54
totalSentences153
matches
0"She pulled the door inward."
1"She glanced past him at"
2"His gaze dropped, quick and"
3"He lifted the cane a"
4"His black eye didn’t flinch."
5"She hated that it still"
6"She caught the edge of"
7"He stopped, not from force"
8"He sat in the middle"
9"She crossed her arms."
10"His jaw tightened by a"
11"She looked at him properly"
12"His mouth barely moved."
13"She pointed at the doorway"
14"He stood there a second,"
15"His gaze held hers."
16"He eased down onto the"
17"She hated herself for that,"
18"He looked at Ptolemy, who"
19"Her stomach tightened."
ratio0.353
38.43% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount129
totalSentences153
matches
0"The first deadbolt gave with"
1"Aurora stood in the narrow"
2"Curry smoke drifted up from"
3"Ptolemy’s nails clicked over the"
4"She pulled the door inward."
5"Lucien Moreau filled the frame"
6"Charcoal suit cut to his"
7"Ivory cane in one gloved"
8"Rory’s fingers tightened on the"
9"Lucien’s mouth tilted, not quite"
10"She glanced past him at"
11"The curry house door below"
12"His gaze dropped, quick and"
13"He lifted the cane a"
14"Rory barked a laugh without"
15"His black eye didn’t flinch."
16"The amber one did something"
17"The name hit the hall"
18"She hated that it still"
19"Lucien stepped in before she"
ratio0.843
32.68% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount1
totalSentences153
matches
0"Because she hated how cleanly"
ratio0.007
80.20% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences57
technicalSentenceCount5
matches
0"Attraction had been the trap, the thing that kept dragging her back into the same shape of disaster with a beautiful face attached."
1"Lucien’s mouth curved this time, and for one stupid second she remembered the last time he had smiled at her in a room full of danger, as if danger were a priva…"
2"Rory dragged a hand through her hair and cursed the loose strands that caught at her fingers."
3"Rory could feel the old hurt stirring, that ugly, familiar mix of wanting and fury that had made them both reckless once."
4"The air between them had the old charge in it, the sort that lived in unfinished sentences and the heat of hands not quite touching."
100.00% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags14
uselessAdditionCount0
matches(empty)
100.00% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags12
fancyCount0
fancyTags(empty)
dialogueSentences116
tagDensity0.103
leniency0.207
rawRatio0
effectiveRatio0
87.5194%