Run: 2026-03-18-01KM09G9TNMA2X784WG4TDNM66

Run Details

Duration:
15.0s
Cost:
$0.013353
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="4418" name="Nyx" aliases="Nyx, the Shadow, Nightwhisper" pronouns="they/them" species="Shade" storyRole="Wild Card"> <eyeColor>faintly glowing violet</eyeColor> <height>approximately 6'2" in solid form</height> <age>ageless</age> <form>humanoid silhouette of living shadow, can shift between solid and incorporeal</form> <voice>sounds like a whisper carried on the wind</voice> <description>A being of living shadow, existing between the mortal plane and the spaces between realms.</description> <backstory>Nyx was once a human sorcerer named Aldric who became trapped between realms during a failed summoning ritual in 1643. They now exist as a Shade, bound to the mortal plane but able to slip between shadows.</backstory> </character> <character id="4424" name="Isolde Varga" aliases="Isolde, the Seer" pronouns="she/her" species="Half-Fae" storyRole="Oracle"> <eyeColor>pale lavender</eyeColor> <hair>silver, reaching her waist</hair> <height>5'5"</height> <age>300 years old</age> <appearance>ethereal, ageless</appearance> <speech>speaks in riddles</speech> <footprints>leaves no footprints when she walks</footprints> <compulsion>cannot lie (Fae compulsion) but can mislead</compulsion> <description>A Half-Fae seer exiled from the Fae Courts for sharing visions with mortals.</description> <backstory>She now lives in a hidden grove in Richmond Park, offering cryptic prophecies to those who seek her out.</backstory> </character> <location id="853" name="Dymas (Gluttony)" aliases="Dymas, gluttony, Dymasian" realm="Hel" sin="Gluttony"> <ruler>Prince Belphegor</ruler> <skyColor>warm amber</skyColor> <description>A place of excess and indulgence. Sprawling vineyards, orchards, and gardens provide exotic ingredients for master chefs — often helbound souls contracted from Earth. Grand feasts and culinary competitions are common.</description> </location> <location id="861" name="The Fae Grove" aliases="Isolde's grove, Richmond grove, the Grove" realm="Earth (Fae-touched)"> <parkLocation>Richmond Park</parkLocation> <standingStones>ancient oak standing stones mark the boundary</standingStones> <timeBehavior>time moves differently — an hour inside can be minutes or days outside</timeBehavior> <flora>wildflowers bloom year-round</flora> <description>A hidden clearing that exists in a pocket between Earth and the Fae realm.</description> </location> <item id="2001" name="Heartstone Pendant" aliases="the pendant, Heartstone" type="Artifact" origin="Dymas"> <gemstoneColor>deep crimson</gemstoneColor> <chainMaterial>silver chain</chainMaterial> <size>roughly the size of a thumbnail</size> <behavior>pulses faintly with warmth when near a Hel portal</behavior> <glow>faint inner glow</glow> <description>Given to Aurora by an unknown benefactor.</description> </item> <item id="2006" name="Fae-Forged Blade" aliases="the Fae blade, Isolde's gift" type="Weapon" origin="The Fae Courts"> <material>moonsilver</material> <shape>slender, leaf-shaped dagger</shape> <temperature>always cold to the touch</temperature> <glow>faintly luminescent in moonlight</glow> <power>can cut through magical wards; particularly effective against demons</power> <givenTo>given to Aurora by Isolde as a gift</givenTo> <description>A weapon of the Fae Courts, rare and highly coveted.</description> </item> <lore id="7001" name="The Veil" aliases="the Veil, the Barrier, the Boundary" category="Cosmology"> <solsticeEffect>weakens during the winter solstice, strengthens during the summer solstice</solsticeEffect> <appearance>faint shimmering distortion visible only to those with supernatural sight</appearance> <monitoring>rift points (tears in the Veil) are monitored by the Wardens</monitoring> <description>The Veil is the metaphysical barrier separating Earth from Hel and the Fae Realms.</description> </lore> </codex> Continue the story using the following instructions: <instructions> Write a fully fleshed out scene of at least 1000 words in the fantasy genre. A small group enters an ancient, otherworldly place for the first time. The environment is alien and wondrous. Describe their exploration — what they see, hear, and feel as they move deeper. Include moments of discovery, unease, and wonder. Let the world-building emerge through the characters' experience rather than exposition. Use the codex entries above as your world reference for characters, setting, and lore. Only include the prose of the scene without any markdown or commentary. </instructions>

Model response

AI
The oak at the centre of Richmond Park had split open like old bone. Aurora stopped at the edge of the clearing, one hand braced against a birch trunk, the other closed around the silver chain at her throat. The Heartstone Pendant sat warm against her skin, its pulse nudging her ribs with a slow, stubborn rhythm. “Tell me that’s not the entrance,” she muttered. Nyx stood beside her in a shape that kept changing its own mind. One moment they looked like a tall person cut from ink, the next like a spill of darkness hanging upright in the air. Their violet eyes held steady, faint and cold. “The boundary often looked less dramatic from a distance,” they whispered. From behind them, Isolde stepped over a patch of bluebells without bending a single stem. Silver hair slid down her back like poured moonlight. She glanced at the split oak and let the corner of her mouth lift. “The door favoured roots over hinges,” she murmured. Aurora looked at her. “That’s meant to comfort me?” Isolde’s pale eyes flicked to the pendant at Aurora’s throat. “Comfort walks poorly where wonder keeps watch.” “Brilliant,” Aurora muttered. She tightened her grip on the Fae-Forged Blade tucked at her belt. The moonsilver felt like winter wrapped in a narrow edge. “Any last-minute warnings? Apart from the one that sounds like a poem and the one that looks like a thundercloud.” Nyx drifted a step closer to the split in the tree. Darkness gathered around their shoulders. “Do not answer anything that asks for your name.” Aurora snorted once. “That narrow it down?” “It was enough.” Isolde’s gaze passed over the bark, the moss, the ring of standing stones half-hidden under bracken and fern. “The grove did not invite us for polite conversation.” The air changed as Aurora stared at the split in the oak. She felt it on her teeth first, a faint metallic pressure, then in her ears, like the quiet before a storm. The opening between the twisted halves of the trunk did not show wood or hollow. It showed depth. Not darkness. Depth. A layered, breathing dimness lined with glimmers she could not place. The pendant gave a small throb of warmth. Aurora swallowed. “It’s reacting.” Nyx’s head tilted. “To the threshold.” “Or to whatever’s on the other side.” Isolde lifted one hand and touched the bark. No sound came from it. Her fingers rested there, light as ash. “The grove recognised the offering,” she said. Aurora looked between them. “Offering?” Isolde’s smile sharpened. “The one who seeks is always offered something in return.” “That’s not unsettling at all.” Nyx’s whisper brushed the air beside her ear. “You are still standing at the edge.” Aurora drew in a breath, then another. She hated how hard her pulse hammered. She had crossed plenty of thresholds in her life—front doors after bad arguments, station barriers with a ticket in one hand and panic in the other, the line between staying and leaving when Evan had leaned in too close and smiled like a lock clicking shut. This felt different. This felt old. The kind of old that watched. She pushed off the birch and stepped forward. The inside of the oak swallowed her sound. One moment the park breathed around her with damp grass and leaf mould; the next, the world folded into cool shadow scented with rain on stone and crushed wildflowers. The hair on her arms rose. Her boots met a path that should not have fit inside a tree, a narrow ribbon of pale earth between roots that curled overhead like ribs. Aurora glanced back. The opening behind her had shrunk to a slit of daylight fringed with bark, and beyond it Richmond Park looked far away, thin and flat, as if painted onto cloth. “Don’t stand there gawping,” she called. “Come on.” Nyx slipped through without sound, their outline blurring as they crossed. Isolde followed, silver hair catching a light that came from nowhere and everywhere, and the slit sealed behind them with the soft hush of bark drawing breath. Aurora spun. Her heart kicked once, hard. The tree stood whole. She stared at it. “You’ve got to be kidding me.” Isolde touched one of the standing stones a little way ahead. Ancient oak rather than rock, she realised, but it had the same weathered, upright shape. “Time prefers theatre in this place.” Aurora glanced around. The grove had widened around them into a hollow of luminous green and silver. Wildflowers crowded the ground in thick drifts, but not the kind she knew from London parks. Their petals held impossible shades: blue like bruised glass, yellow like fire seen through honey, white that looked almost translucent. The air glimmered faintly, as if dust had been mixed with starlight. Above them, branches arched into a ceiling of leaves so dense and layered that no sky showed through. Yet light moved between them, warm and cool at once, with no clear source. It brushed her skin like fingertips. “This isn’t the park,” she whispered. Nyx’s form thinned as they looked upward. “No.” Aurora took a few steps forward. The earth beneath her boots yielded with a softness that made her uneasy. Not wet. Not dry. Alive, somehow. It shifted with a faint spring, as though roots travelled beneath it in sleep. A narrow stream crossed the grove, no wider than a lane, and the water did not run. It drifted. Clear ribbons slid over smooth black stones, and tiny sparks moved through it, bright as embers. When Aurora crouched by the bank, she caught her reflection in the surface, then lost it. Instead she saw branches bending overhead in a different pattern, older and thicker, and for a breath the pale face of something that was not human turned to look at her from beneath the water. She lurched back. “What was that?” Nyx glided to the stream and stared down. Their glow dimmed, then sharpened. “A memory.” Aurora let out a breath through her teeth. “Great. A haunted river.” “No,” Isolde said. She had moved without leaving a trail, as ever. “A river remembers. It is people who forget.” Aurora rubbed her wrist. The old crescent scar there itched beneath her sleeve. “I’m not in the mood for one of your riddles.” “You already stand inside one.” The answer sat between them. Aurora dragged a hand through her hair and kept moving. The path bent through the wildflowers toward the centre of the grove, where a ring of standing stones rose from the earth. They were not made of granite or slate. They were living oaks, ancient trunks stripped smooth by time or magic, pale and veined with silver. Roots intertwined at their bases, plunging into the ground like knotted fingers. As Aurora approached, she heard it. Not words. Not quite. A hum threaded with low chimes and the rustle of leaves, deep enough to settle in her bones. It came from the stones. Or through them. She could not tell which. Nyx slowed. The shadows around them shifted restlessly. “This place sits near the seam.” Aurora looked over her shoulder. “You mean the Veil.” At the word, the air stuttered. A shimmer rolled through the grove like heat over asphalt, except the day was cold and damp and the distortion shone with silver light. It stretched between the trees in a wavering membrane, half-seen, half-felt. Aurora’s skin prickled. The pendant at her throat grew warmer, the beat under the crimson stone quickening. “The Boundary,” Isolde said softly. “It frays here.” Aurora stared at the distortion. She had never seen the Veil before, not really. Not until now. It looked like the world had been breathed on by something immense and invisible. “It’s thin,” she whispered. Nyx’s head turned toward her. “On the turn of the seasons, it weakens. In the old places, it shows itself.” Aurora huffed a breath that was half laugh and half disbelief. “You say that like everyone knows this stuff.” “Everyone important does.” “Charming.” They moved on, deeper into the ring of oaks. The chime in the air grew stronger with each step. Aurora felt it in her molars. Then she noticed the shapes hanging from the branches above them. Not fruit. Not leaves. Hundreds of little glass-like pods dangled on fine silver threads, each one no bigger than a thumb joint. Inside each pod, faint lights moved. Some blinked in and out. Some drifted like minnows. One flashed a pale gold and, for a heartbeat, formed a tiny face pressed against the shell before it dissolved again. Aurora stopped dead. “What the hell are those?” Isolde’s gaze lifted. “The grove kept what fell through.” “Fell through what?” “The answers,” Nyx whispered. Aurora frowned. “You are both useless.” A sound rippled across the clearing, soft and fast. She turned sharply. One of the pods had split open on its thread. A bright moth slipped free, but it did not have wings. It had a petal-shaped body and a tail of gold light, and it hovered near her cheek before darting to the open air above the stones. Aurora followed it, pulled despite herself. The centre of the ring held a shallow depression filled with white stones and moss. In the middle stood a pool no larger than a washbasin. The surface was clear as polished glass. She could see down into it, down and down, not into water but into a depth layered with scenes that shifted too quickly to catch. A dark city under red sky. A field of flowers bending in a wind she could not feel. A hall of lanterns and long tables heavy with food. A hand, pale and elegant, laid across a map she did not know. The images vanished as soon as she thought she had named them. Aurora leaned closer. “This isn’t water.” Isolde came to stand beside her. “No.” “What is it?” “The place where questions gather when they are not ready to be answered.” Aurora glanced at her. “That’s not a thing.” Isolde’s eyes did not leave the pool. “It is here.” A sudden current of cold swept across the grove. The wildflowers bent all at once. The chime in the air faltered, then deepened into a low, warning note. Nyx’s shape sharpened at the edges, shadows gathering into a defensive line. Aurora straightened. “What?” Nyx looked past her, into the trees beyond the stone ring. “We have company.” Aurora turned. At first she saw only bark and fern, the silver-green density of the grove. Then movement threaded through the trunks, too smooth for any animal she knew. A shape passed between two standing stones and vanished. She caught the glint of an eye, then another. Pale. Watchful. Not human. Her mouth dried. Isolde did not move. “It found us.” “Found?” Aurora whispered. “You brought us to a place that gets found?” “I brought you to a place that notices.” The air thickened. Something moved again, this time nearer, the brush of leaves followed by a soft click of claws against root. Aurora reached for the Fae blade. When her fingers closed around the handle, the moonsilver bit cold into her palm. A faint glow woke along the leaf-shaped edge. Nyx leaned toward the darkness at the edge of the stones. “It does not like steel.” “Good,” Aurora muttered. A figure emerged from between the trunks. It was tall and narrow, draped in something that looked woven from vine shadows and moonlight. Its face had no fixed shape. Sometimes she saw a deer’s elegance in the jaw, sometimes a woman’s cheekbone, sometimes only a blur like fog caught in branches. Pale antler-like horns curved from its head, and on its chest hung a circlet of twisted roots inset with tiny blue flowers that should not have grown in winter. Aurora took one step back. The creature stopped just outside the ring of stones. Its gaze slid over her, then over Nyx, then settled on Isolde with the steady patience of someone meeting an old inconvenience. Isolde inclined her head a fraction. “You took your time.” The creature’s mouth moved, but the sound that came out resembled wind moving through a reed bed. Aurora did not understand the words. Yet the creature’s attention kept returning to her pendant. The Heartstone burned warmer. Aurora pressed her fingers over it. “It wants this.” The creature’s head tilted. Nyx’s whisper brushed close. “Do not let it touch you.” Aurora let out a slow breath. “That was already the plan.” The thing lifted a hand. Its fingers were long, jointed oddly, each nail tipped with a pale shine like frost. A cluster of the hanging pods above them opened at once. Tiny lights spilled out and swarmed in a loose spiral overhead, filling the clearing with drifting sparks. For a second, the grove brightened until every leaf vein and stone edge stood sharp as a cut line. Aurora felt the hairs on her arms rise again. The whole place seemed to inhale. Then, from the far side of the ring, a low thrum answered. The pool in the centre shivered. Aurora glanced down and saw the surface darken. Not with mud. With shadow. Something rose beneath it, slow and deliberate, and the pendant at her throat pulsed hard against her skin as the creature outside the ring lowered its hand toward the stones.
created_at"2026-03-18T10:57:44.803Z" 3/18/2026, 10:57:44 AM
model"openai/gpt-5.4-mini-20260317"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency407
moderation_latency(null)
generation_time14673
tokens_prompt1816
tokens_completion3505
native_tokens_prompt1706
native_tokens_completion2875
native_tokens_completion_images0
native_tokens_reasoning0
native_tokens_cached1280
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.013353
router(null)
provider_responses
0
endpoint_id"9ee065b2-3d1c-43bc-bdd7-28af3b148282"
id"resp_056712e536a85ca70169ba8528dcbc8197a0862a2907ccb171"
is_byokfalse
latency177
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-1773831464-HiDU6guWsh17ggm2tAzB"
upstream_id"resp_056712e536a85ca70169ba8528dcbc8197a0862a2907ccb171"
total_cost0.013353
cache_discount0.000864
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
totalTags13
adverbTagCount1
adverbTags
0"Isolde said softly [softly]"
dialogueSentences64
tagDensity0.203
leniency0.406
rawRatio0.077
effectiveRatio0.031
91.05% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount2234
totalAiIsmAdverbs4
found
0
adverb"softly"
count1
1
adverb"really"
count1
2
adverb"sharply"
count1
3
adverb"quickly"
count1
highlights
0"softly"
1"really"
2"sharply"
3"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)
75.38% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount2234
totalAiIsms11
found
0
word"pulse"
count2
1
word"flicked"
count1
2
word"throb"
count1
3
word"warmth"
count1
4
word"whisper"
count2
5
word"lurched"
count1
6
word"wavering"
count1
7
word"glint"
count1
8
word"pulsed"
count1
highlights
0"pulse"
1"flicked"
2"throb"
3"warmth"
4"whisper"
5"lurched"
6"wavering"
7"glint"
8"pulsed"
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
emotionTells0
narrationSentences206
matches(empty)
100.00% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount0
hedgeCount1
narrationSentences206
filterMatches(empty)
hedgeMatches
0"seemed to"
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences257
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
maxSentenceWordsSeen47
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans0
markdownWords0
totalWords2233
ratio0
matches(empty)
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions16
unquotedAttributions0
matches(empty)
33.33% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions87
wordCount1918
uniqueNames14
maxNameDensity2.03
worstName"Aurora"
maxWindowNameDensity4
worstWindowName"Aurora"
discoveredNames
Richmond2
Park2
Heartstone2
Pendant1
Nyx15
Isolde15
Aurora39
Fae-Forged1
Blade1
Evan1
London1
Veil1
Fae2
One4
persons
0"Heartstone"
1"Pendant"
2"Nyx"
3"Isolde"
4"Aurora"
5"Blade"
6"Evan"
places
0"Richmond"
1"Park"
2"London"
globalScore0.483
windowScore0.333
92.31% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences130
glossingSentenceCount3
matches
0"looked like a tall person cut from ink, t"
1"felt like winter wrapped in a narrow ed"
2"looked like the world had been breathed o"
100.00% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches1
per1kWords0.448
wordCount2233
matches
0"not into water but into a depth layered with scenes"
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount0
totalSentences257
matches(empty)
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs105
mean21.27
std22.59
cv1.062
sampleLengths
014
143
28
344
411
538
68
79
817
945
1025
117
123
1327
1465
158
164
176
187
1927
205
2113
225
2315
2472
258
2669
273
2830
298
3038
317
324
3310
3432
3565
3638
376
388
3939
4086
413
423
4315
4412
4520
4623
475
4874
496
100.00% Passive voice overuse
Target: ≤2% passive sentences
passiveCount2
totalSentences206
matches
0"been mixed"
1"been breathed"
100.00% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount0
totalVerbs306
matches(empty)
100.00% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount1
semicolonCount1
flaggedSentences2
totalSentences257
ratio0.008
matches
0"She had crossed plenty of thresholds in her life—front doors after bad arguments, station barriers with a ticket in one hand and panic in the other, the line between staying and leaving when Evan had leaned in too close and smiled like a lock clicking shut."
1"One moment the park breathed around her with damp grass and leaf mould; the next, the world folded into cool shadow scented with rain on stone and crushed wildflowers."
94.00% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount1926
adjectiveStacks1
stackExamples
0"over smooth black stones,"
adverbCount63
adverbRatio0.03271028037383177
lyAdverbCount9
lyAdverbRatio0.004672897196261682
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences257
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences257
mean8.69
std6.88
cv0.792
sampleLengths
014
125
218
38
413
523
68
711
815
99
1014
118
124
135
1410
157
163
1712
1810
1920
2011
215
229
233
244
253
2618
279
2812
2921
3015
313
322
331
3411
358
362
372
383
393
407
418
425
437
447
454
461
473
4810
495
44.55% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats14
diversityRatio0.2529182879377432
totalSentences257
uniqueOpeners65
95.79% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount5
totalSentences174
matches
0"Instead she saw branches bending"
1"Then she noticed the shapes"
2"Then movement threaded through the"
3"Sometimes she saw a deer’s"
4"Then, from the far side"
ratio0.029
100.00% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount35
totalSentences174
matches
0"Their violet eyes held steady,"
1"She glanced at the split"
2"She tightened her grip on"
3"She felt it on her"
4"It showed depth."
5"Her fingers rested there, light"
6"She hated how hard her"
7"She had crossed plenty of"
8"She pushed off the birch"
9"Her boots met a path"
10"Her heart kicked once, hard."
11"She stared at it."
12"Their petals held impossible shades:"
13"It brushed her skin like"
14"It shifted with a faint"
15"She lurched back."
16"Their glow dimmed, then sharpened."
17"She had moved without leaving"
18"They were not made of"
19"They were living oaks, ancient"
ratio0.201
46.21% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount144
totalSentences174
matches
0"The oak at the centre"
1"Aurora stopped at the edge"
2"The Heartstone Pendant sat warm"
3"Nyx stood beside her in"
4"Their violet eyes held steady,"
5"She glanced at the split"
6"Aurora looked at her."
7"Isolde’s pale eyes flicked to"
8"She tightened her grip on"
9"The moonsilver felt like winter"
10"Nyx drifted a step closer"
11"Darkness gathered around their shoulders."
12"Aurora snorted once."
13"Isolde’s gaze passed over the"
14"The air changed as Aurora"
15"She felt it on her"
16"The opening between the twisted"
17"It showed depth."
18"A layered, breathing dimness lined"
19"The pendant gave a small"
ratio0.828
0.00% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount0
totalSentences174
matches(empty)
ratio0
97.65% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences79
technicalSentenceCount5
matches
0"The opening behind her had shrunk to a slit of daylight fringed with bark, and beyond it Richmond Park looked far away, thin and flat, as if painted onto cloth."
1"Isolde followed, silver hair catching a light that came from nowhere and everywhere, and the slit sealed behind them with the soft hush of bark drawing breath."
2"Instead she saw branches bending overhead in a different pattern, older and thicker, and for a breath the pale face of something that was not human turned to lo…"
3"It was tall and narrow, draped in something that looked woven from vine shadows and moonlight."
4"Pale antler-like horns curved from its head, and on its chest hung a circlet of twisted roots inset with tiny blue flowers that should not have grown in winter."
100.00% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags13
uselessAdditionCount0
matches(empty)
9.38% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags13
fancyCount9
fancyTags
0"she muttered (mutter)"
1"they whispered (whisper)"
2"she murmured (murmur)"
3"Aurora muttered (mutter)"
4"she whispered (whisper)"
5"she whispered (whisper)"
6"Nyx whispered (whisper)"
7"Aurora whispered (whisper)"
8"Aurora muttered (mutter)"
dialogueSentences64
tagDensity0.203
leniency0.406
rawRatio0.692
effectiveRatio0.281
85.9879%