Run: 2026-10-27-01M5YEAA13Q7MF5XMEF7EZT71P

Run Details

Duration:
8m 42s
Cost:
$0.132198
Provider:
Moonshot AI

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 ward appeared when Aurora’s dagger was still an inch from the stone. A hairline of light ran from the standing stone to the nearest oak, dividing the trees with such precision that the frost on one side looked painted on. The moonsilver blade ached with cold against Aurora’s palm. Beside her, Isolde lifted one bare foot over a root and set it down without disturbing so much as a blade of grass. “Cut along the grain.” “Stone doesn’t have grain.” “This one has opinions. Cut between them.” Aurora drew the leaf-shaped dagger across the light. A note rang through Richmond Park, too deep for the slender blade to have made. Frost jumped from the grass. The space between stone and oak folded aside, and warm air spilled over them, carrying wet earth, crushed petals and the green sweetness of sap. Nyx’s violet eyes brightened. “It has been listening to us.” “It has been listening longer than that.” Isolde’s silver hair lifted in a breeze that touched nothing else. “Politeness prevented an interruption.” Aurora kept the dagger out. “You’ve really never been through?” “I have asked every spring for three centuries.” “And today?” “Today you brought a knife.” Isolde stepped through. Aurora followed, and winter vanished from her skin. Wildflowers crowded the ground beneath trees whose trunks twisted into one another high overhead. Bluebells grew beside white poppies; foxgloves opened among star-shaped blossoms with transparent petals. Each flower held a different measure of light. Some glowed at their hearts. Others cast tiny shadows upwards. A bee blundered past Aurora’s ear. Its drone arrived after it had gone. She stopped. Somewhere beyond the boundary, a dog had been barking and tyres had hissed on the wet road. Neither sound crossed with her. Nyx came through last. Their tall outline separated at the edges, smoke peeling from their shoulders. They pressed their hands together until their fingers became solid again. On the ground, their shadow remained outside for three steps, then slipped beneath the standing stone and hurried after them. “Stay in one piece,” Aurora said. “An excellent suggestion.” Their voice brushed her ear like wind through a keyhole, though they stood several paces away. Isolde moved ahead. Where Aurora’s boots left dark impressions in the flowers, the seer left nothing. Nyx’s footprints smoked faintly and filled with blue petals. The path descended between banks of fern. Aurora took out her phone. No signal. The clock read 08.17. By the time they reached a stream, the light had changed from pearl to gold, and her arms ached from carrying a jacket she no longer needed. She checked the phone again. 08.12. “Either I’ve walked backwards into breakfast, or your grove’s nicked five minutes.” “It returns what it does not use.” Isolde stooped beside the water. “Usually.” The stream climbed a staircase of exposed roots. Water moved uphill with unhurried care, gathering itself on each step before rising to the next. Where it spilled over the final root, the drops unfolded white wings and became moths. They drifted into the ferns. Farther along, moths settled on the streambed and melted into clear water. Aurora crouched. One moth crawled over a pebble, its wings transparent and dripping. “Is it alive?” “Before or after it gets wet?” Nyx asked. “Yes,” Isolde answered. Aurora looked at her. The seer’s pale lavender eyes held no trace of apology. They followed the stream until the path bent away from it. Aurora tore a loose red thread from her cuff and tied it around a fern. The trees were too alike otherwise: silver bark, black knots, branches disappearing into a canopy that seemed farther away each time she looked up. Twenty paces later, she found the red thread tied around a fern ahead of her. Nyx examined the frayed ends. “We have not turned.” “So has the path.” Isolde brushed a flower from her sleeve. “It enjoys company.” Aurora pulled the thread free. The fern beneath it was dry. The stem in her hand was wet. A faint chiming sounded overhead. Three moths emerged from the canopy, flying in a line against the slope. Another joined them, then another. None followed the path. Aurora stepped off it. “The path can loop,” she said. “They haven’t.” Isolde’s mouth curved. Nyx’s shadow stretched after Aurora before the rest of them moved. They pushed through ferns taller than Aurora’s waist. Fronds closed behind them, wiping out the path. Pollen clung to her sleeves in glowing handprints. Once, something small ran across Nyx’s boot and vanished into their ankle; they became smoke long enough to shake it loose, then solidified with a look of profound offence. The moths led them uphill. Aurora’s phone lost another eleven minutes, gained an hour, then displayed a date that made her switch it off. The ferns ended at a wall of roots. Aurora pushed between two hanging curtains and entered a round chamber open to the sky. Roots formed its walls and vaulted overhead, meeting around a circle of night. A full moon hung there, surrounded by stars. Beyond the chamber, golden daylight still filtered through the trees. The dagger in Aurora’s hand woke with a faint luminescence. “Your morning has improved,” Isolde said. “My morning’s having an identity crisis.” Stones ringed a pool at the chamber’s centre. Their carvings shifted at the edge of Aurora’s vision: antlered figures bending over human sleepers, vines threading through open mouths, a table set beneath a sky full of unfamiliar constellations. When she fixed her attention on one line of symbols, the symbols slid around the stone. Nyx stopped at the threshold. Their shadow continued without them. It crossed the chamber, stretched up the opposite wall and stood among the carvings, half a head taller than it should have been. Nyx remained where they were. The shadow lifted an arm. So did the carvings. “Do not trust the dark between the roots,” Nyx said. Aurora glanced at their face. “You are the dark between the roots.” “Not here.” The pool made a sound then: a single, delicate clink, like a knife touching fine china. Isolde crossed the chamber. For the first time since Aurora had met her, the seer hurried. Aurora approached the pool from the other side. Its surface held an amber afternoon. There was no moon in it, no reflection of the roots above. Vineyards descended beneath a sunless amber sky, their terraces folding over one another in geometries that made Aurora’s eyes slip. Pear trees grew from the roofs of tiled pavilions. Their branches bent under fruit the colour of copper and glass. A table ran through the middle of the vision, so long that haze swallowed its far end. Cooks hurried between silver dishes. One wore scorched medieval linen; another wore trainers and a sauce-stained apron. A woman with six hands plated a tower of custard, each hand performing a different task. Fine red writing encircled her wrists and disappeared into her sleeves. A bell rang. The cooks moved faster. The smells reached Aurora: roasted garlic, hot bread, honey scorched to bitterness. Her mouth watered. The response disgusted her more than the sight of the red writing. “Those people aren’t cooking because they want to.” “Want is a poor coin in Dymas.” Isolde stood rigid at the pool’s rim. “Debt spends better.” “Dymas,” Nyx repeated. Their shadow had returned to them. It lay across the ground facing the pool, though the moonlight came from behind. Beneath the amber sky, servants filled goblets from a bunch of grapes. Each grape yielded a different colour. Music plucked itself from instruments hanging in the trees. Empty platters sailed down the table and returned laden with food, while the people working around them grew thinner with every course. Aurora’s pendant warmed through two layers of cloth. One pulse. Then another. She unfastened the silver chain and held the Heartstone away from her body. The crimson gem, no larger than her thumbnail, glowed around a dark centre. Its warmth beat against her fingers in time with the red writing on the cooks’ wrists. Lines of crimson light spread beneath the pool. Isolde’s hand closed around Aurora’s wrist before the pendant could swing lower. “Do not let it drink.” “It’s a stone.” “So is a doorway, until you give it hinges.” Aurora stepped back. The pulses slowed. She took three more steps and the crimson lines faded beneath the water. “It reacts to distance.” “Or distance has learned to react to it.” Nyx bent over the pool without crossing its rim. “Can they hear us?” A clatter answered from below. Aurora froze, but it was only a cook dropping a ladle. The woman with six hands picked it up, washed it in wine and returned to her custard. “Not yet,” Aurora said. The vision tilted. Or the chamber did. She planted her boots wider and looked away from the impossible terraces. For a moment she smelled Richmond frost beneath the honey and bread. Then a breeze moved through the pool’s amber sky, though no wind stirred Isolde’s hair. The vines all leaned towards the water. Nyx drew back. “There is no wind in that sky.” “No,” Isolde said. The seer’s certainty chilled Aurora more than a warning would have. She folded the Heartstone into her jacket pocket and wrapped the chain around it. Its heat still pulsed against her hip, muted but insistent. Around them, the chamber had gone silent. No bees, no chimes, no uphill water. Even the carvings had stopped moving. The antlered figures on the stones now faced the pool. Aurora plucked a translucent flower from her sleeve, where it had caught among the pollen. Its stem weighed almost nothing. She rolled it between finger and thumb, then held it over the vision. Isolde’s gaze fixed on the blossom. “A small thing may make a large invitation.” “Then it can go before we do.” Aurora let it fall. The flower struck the pool without a ripple. It continued downwards through the amber sky, turning over and over above the vineyards. Smaller and smaller it became, a white fleck spinning towards the endless table. Far below, a breeze caught it and carried it sideways over the copper pears. Nyx leaned closer. Isolde did not. The pendant pulsed against Aurora’s hip. She reached for another flower.
created_at"2026-10-27T10:25:55.367Z" 10/27/2026, 10:25:55 AM
model"moonshotai/kimi-k3.1-pro-20261023"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency6666
moderation_latency(null)
generation_time521542
tokens_prompt1763
tokens_completion14259
native_tokens_prompt1804
native_tokens_completion12859
native_tokens_completion_images(null)
native_tokens_reasoning10547
native_tokens_cached0
num_media_prompt(null)
num_input_audio_prompt(null)
num_media_completion0
num_search_results(null)
num_fetches(null)
web_search_engine(null)
origin"https://ncbench.com/"
is_byokfalse
finish_reason"stop"
native_finish_reason"stop"
service_tier(null)
usage0.132198
router(null)
user_agent"langchainjs-openai/1.0.0 ((node/v24.22.1; linux; x64))"
http_referer(null)
request_id"req-1793096755-9pLGVg8fCoqLTzjzItYv"
session_id(null)
preset_id(null)
api_type"completions"
id"gen-1793096755-FTKmzZVaCHeCFAnjDtCF"
upstream_id"chatcmpl-6ae07c34be599f3ecd49a493"
provider_responses
0
endpoint_id"a3fafaac-f097-4ef1-86b3-842854dad5c6"
id"chatcmpl-6ae07c34be599f3ecd49a493"
is_byokfalse
latency6666
model_permaslug"moonshotai/kimi-k3.1-pro-20261023"
provider_name"Moonshot AI"
status200
total_cost0.132198
cache_discount(null)
upstream_inference_cost0
provider_name"Moonshot AI"
response_cache_source_id(null)
data_region"global"
workspace_id"97e315e5-d303-487d-83c1-83180e8a13d4"

Evaluation details

Result Evaluator Details Meta Data
100.00% Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags13
adverbTagCount0
adverbTags(empty)
dialogueSentences43
tagDensity0.302
leniency0.605
rawRatio0
effectiveRatio0
97.08% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount1715
totalAiIsmAdverbs1
found
0
adverb"really"
count1
highlights
0"really"
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)
82.51% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount1715
totalAiIsms6
found
0
word"profound"
count1
1
word"pulse"
count1
2
word"warmth"
count1
3
word"chilled"
count1
4
word"pulsed"
count2
highlights
0"profound"
1"pulse"
2"warmth"
3"chilled"
4"pulsed"
100.00% Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches0
maxInWindow0
found(empty)
highlights(empty)
100.00% Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells0
narrationSentences163
matches(empty)
100.00% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount0
hedgeCount0
narrationSentences163
filterMatches(empty)
hedgeMatches(empty)
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences193
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
repeatedSegmentCount0
maxSentenceWordsSeen30
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans0
markdownWords0
totalWords1715
ratio0
matches(empty)
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions7
unquotedAttributions0
matches(empty)
36.89% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions74
wordCount1503
uniqueNames9
maxNameDensity2.26
worstName"Aurora"
maxWindowNameDensity3.5
worstWindowName"Aurora"
discoveredNames
Aurora34
Isolde16
Richmond2
Park1
Nyx14
Stones1
Heartstone2
Lines1
One3
persons
0"Aurora"
1"Isolde"
2"Nyx"
3"Stones"
places
0"Richmond"
1"Park"
globalScore0.369
windowScore0.5
100.00% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences103
glossingSentenceCount1
matches
0"seemed farther away each time she looked up"
100.00% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches0
per1kWords0
wordCount1715
matches(empty)
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount1
totalSentences193
matches
0"precision that the"
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs99
mean17.32
std16.12
cv0.931
sampleLengths
013
160
24
34
47
58
645
710
822
910
108
112
125
133
148
1545
1613
1724
1847
196
203
2116
2225
2318
2432
251
2612
2713
2856
2913
303
318
323
3314
3450
3515
369
3714
3818
3927
404
418
4214
4353
4424
458
4646
4710
486
496
100.00% Passive voice overuse
Target: ≤2% passive sentences
passiveCount0
totalSentences163
matches(empty)
100.00% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount0
totalVerbs254
matches(empty)
98.45% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount0
semicolonCount3
flaggedSentences3
totalSentences193
ratio0.016
matches
0"Bluebells grew beside white poppies; foxgloves opened among star-shaped blossoms with transparent petals."
1"Once, something small ran across Nyx’s boot and vanished into their ankle; they became smoke long enough to shake it loose, then solidified with a look of profound offence."
2"One wore scorched medieval linen; another wore trainers and a sauce-stained apron."
100.00% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount1228
adjectiveStacks0
stackExamples(empty)
adverbCount31
adverbRatio0.025244299674267102
lyAdverbCount1
lyAdverbRatio0.0008143322475570033
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences193
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences193
mean8.89
std5.77
cv0.649
sampleLengths
013
128
29
323
44
54
67
78
815
95
1025
114
126
1318
144
155
165
178
182
195
203
218
2214
2313
248
255
265
276
287
292
3017
315
324
3312
3411
3520
366
373
3816
393
4013
419
427
435
442
454
4627
475
481
4912
67.88% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats3
diversityRatio0.4166666666666667
totalSentences192
uniqueOpeners80
90.09% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount4
totalSentences148
matches
0"Somewhere beyond the boundary, a"
1"Once, something small ran across"
2"Then a breeze moved through"
3"Even the carvings had stopped"
ratio0.027
100.00% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount26
totalSentences148
matches
0"Its drone arrived after it"
1"Their tall outline separated at"
2"They pressed their hands together"
3"Their voice brushed her ear"
4"She checked the phone again."
5"They drifted into the ferns."
6"They followed the stream until"
7"They pushed through ferns taller"
8"Their carvings shifted at the"
9"Their shadow continued without them."
10"It crossed the chamber, stretched"
11"Its surface held an amber"
12"Their branches bent under fruit"
13"Her mouth watered."
14"Their shadow had returned to"
15"It lay across the ground"
16"She unfastened the silver chain"
17"Its warmth beat against her"
18"She took three more steps"
19"She planted her boots wider"
ratio0.176
57.97% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount119
totalSentences148
matches
0"The ward appeared when Aurora’s"
1"A hairline of light ran"
2"The moonsilver blade ached with"
3"Aurora drew the leaf-shaped dagger"
4"A note rang through Richmond"
5"Frost jumped from the grass."
6"The space between stone and"
7"Nyx’s violet eyes brightened."
8"Isolde’s silver hair lifted in"
9"Aurora kept the dagger out."
10"Isolde stepped through."
11"Aurora followed, and winter vanished"
12"Wildflowers crowded the ground beneath"
13"Bluebells grew beside white poppies;"
14"Each flower held a different"
15"Some glowed at their hearts."
16"Others cast tiny shadows upwards."
17"A bee blundered past Aurora’s"
18"Its drone arrived after it"
19"Neither sound crossed with her."
ratio0.804
33.78% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount1
totalSentences148
matches
0"By the time they reached"
ratio0.007
100.00% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences66
technicalSentenceCount2
matches
0"The trees were too alike otherwise: silver bark, black knots, branches disappearing into a canopy that seemed farther away each time she looked up."
1"Vineyards descended beneath a sunless amber sky, their terraces folding over one another in geometries that made Aurora’s eyes slip."
100.00% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags13
uselessAdditionCount0
matches(empty)
100.00% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags9
fancyCount1
fancyTags
0"Nyx repeated (repeat)"
dialogueSentences43
tagDensity0.209
leniency0.419
rawRatio0.111
effectiveRatio0.047
92.1553%