Copyright © 2026 by Ravan Tempest

All rights reserved.

No portion of this book may be reproduced in any form without written permission from the publisher or author, except as permitted by U.S. copyright law.

Storm of Blood and Bone

Chapter 15: When Wolves Howl

The first wolf-howl of the siege rolled over Moonspire like a curse, dragging every restless eye to the horizon. Caelan heard it through the stone before he heard it through the air, a vibration that started in the arch of his foot and climbed, vertebrae by vertebrae, until it landed behind his eyes. He leaned on the balustrade at the summit of the keep, fingers notching the ancient grooves left by centuries of defenders, and tried to read the color of the day in the sky. It was a hard, pitiless gray, the kind that never surrendered to sunlight but also refused the dignity of darkness.

Below him, Moonspire bristled. Every rooftop and courtyard, every garden and alleyway, had been weaponized, archers nested behind the parapets, children ferried water or kindling, grandmothers patrolled balconies with pots of boiling oil, their eyes sharp as glass. The city’s breath steamed upward in frantic little clouds, each one a testament to the hour’s cold and to the colder certainty that this was the final stand.

Behind Caelan, the great hall had been gutted of all but purpose. Where once there had been banners and velvet and the smug perfume of power, now there were only splintered benches, crates of arrows, and a makeshift war table jammed against the far wall. The surface of it was palimpsest: three generations of battlefield scars, now overlaid with today’s desperate etchings in chalk and wine-damp ink.

Caelan didn’t turn when the first of his lieutenants entered. He knew the sound of Ronan’s limp, the slow drag-and-lurch gait of a wolf whose body was an autobiography of wounds. “Report,” he said, eyes still on the distant line where the enemy’s black banners cut the morning. “Bastards have circled the south quarter,” Ronan grunted, and the effort of breathing seemed to pain him more than the walk up the stairs. “Lost two watch posts last night, one to fire, one to rats.” Caelan grunted. “Human or animal?” Ronan allowed a sliver of pride. “Rats wore rebel insignia. They bit, but we bit harder.”

“Good. Civilian losses?” Ronan paused. “Forty-three dead in the low market. Most too old or sick to run. Selene’s got the bodies stacked by the cistern, says she’ll curse the water if they try to use it.” A sour laugh. “She would.”

“Word is, you want to reinforce the western gate.” Ronan’s voice lowered. “But the men there haven’t slept in two days. The Blackthorn captain’s been stitching his own wounds between attacks. They won’t hold if we spread them thinner.”

“We don’t have a choice,” Caelan said flatly. He let go of the stone, flexed his fingers, and turned at last to face Ronan. “If they take the west gate, the whole line folds. They’re herding us, pushing us toward the river, so they can pin us against our own damn walls and pick us off at their pleasure.” Ronan spat, a neat globule on the rushes. “You think they’re smarter than us?” “I think,” said Caelan, “they’re desperate enough to stop making mistakes.”

He moved to the war table, where a ragged grid of wooden blocks stood for the city’s defenders, and a horde of scorched pebbles swarmed in from three sides. Each time Caelan swept away a spent pebble, he replaced it with one marked in red, a tally of the day’s new dead.

“Double the watch on the west,” he said. “I’ll lead the third myself.” Ronan frowned. “They’ll see you. It’s a death sentence.” Caelan shrugged. “Better mine than the city’s.” He pulled a battered helmet from the table’s edge, thumbed a gouge just above the brow, and jammed it on with a single motion. “I want Blackthorn’s reserves ready at the bell. If I fall, he’s in charge.” Ronan didn’t argue, but the set of his shoulders said he’d have words about it later. He left, and the room seemed colder for his absence.

The next interruption was less predictable. It came in the shape of a boy, no more than thirteen, hair still growing into its wolf-thick adulthood, eyes the color of last year’s sky. He shuffled inside, clutching a rolled scrap of parchment and trying not to meet Caelan’s gaze. “Speak,” Caelan said, already back at the balustrade.

The boy hesitated, then said, “There’s a… a problem, sir. With the grain.” The words tumbled out, thin and quick as spilled wine. “Somebody sabotaged the east store. Burned the bags and… ” He gulped. “And they carved the queen’s mark into the walls before they ran. The moon sigil, with the slash.”

The enemy’s sigil, black moon, arrow dividing it. Caelan closed his eyes for half a second, letting the rage surface just long enough to taste it, then banished it with a breath. “Who’s in charge of the store?” The boy’s lip trembled. “Lady Jennise, but she… she’s gone, sir. Didn’t come back from her shift last night.”

So Jennise had turned, or been forced to. Either way, the news was a blade to the ribs. “Get Selene to ward the remaining grain. If anyone tries that again, I want them flayed before breakfast. Understood?” The boy nodded so hard it looked painful, then bolted.

Caelan lingered at the balustrade, taking in the city’s geometry, the threads of smoke that rose from the wounded districts, the way every rooftop now bristled with homemade weapons and hungry eyes. The rebel host was clearer now, their siege lines a thickening shadow beyond the river, banners moving in precise, inhuman synchrony. He could see their discipline in the way the tents arranged themselves, the way no smoke rose from their fires, the way their sentries shifted in lockstep at regular intervals.

He remembered Thorne, how he’d bled out on snow not so different from this, the arrogance in his last words. Caelan wondered if the man who led the siege now was any better, or if all wolves became the same kind of bastard once they were cornered.

Another wolf entered, this one older, gray-muzzled, his armor marked by so many repairs it looked like a mosaic of defeats. He saluted with two fingers to the brow, a habit from a war Caelan had barely survived. “News from the outer line, sir,” he said. “Scouts say the enemy’s massing for a push before noon. They’re using the old culverts to get closer, popping three heads up near the glassmaker’s, then vanishing.”

“Countermeasures?”

“We set traps,” said the old wolf, “but they sent in children. Small enough to wriggle through. One got caught and… well, she begged us to finish it quick.” Caelan ground his teeth. There was no clever response to that. The old wolf drew closer, voice dropping. “My lads are scared, sir. Not of dying, but of what comes after. They say the queen’s a witch, that she eats the dead for strength. I told them it was lies, but… ”

Caelan studied the man, saw the lie in his eyes. “Did you?” The old wolf flinched, then nodded, ashamed. “I told them what they needed, not what I believed.” “Then keep telling it,” said Caelan. “We’ll worry about what’s true after the siege.”

When the old wolf was gone, Caelan looked at the war table again. He rearranged the tokens, aligning them for maximum attrition, trading life for time in the cold calculus of the cornered. He imagined how Aria would have hated this, how she would have thrown the whole table through a window before letting her people be reduced to numbers and wood chips.

He heard footsteps behind him, lighter than Ronan’s, heavier than the boy’s. “What now?” he said, not turning. “Messenger from the north,” said the voice. “He’s injured, but he brought something you need to see.” Caelan waved for them to enter.

The scout was barely conscious, clothes soaked with blood that was not all his own. His left arm hung limp, wrist twisted in a way that would likely never be set right. He knelt, not out of respect but because his knees would not hold him standing.

“Speak,” Caelan ordered.

The boy coughed, a wet, rattling sound. “They’re coming,” he said. “All of them. Every pack from the ice line. Not just rebels, rogue packs, border packs, even the cityless ones.” His eyes rolled up. “They follow the mark. The black moon, with the silver slash. They say she’s the real queen.”

The knowledge hit like a physical blow. Caelan felt his hand drift to his sword, a gesture as old as fear. “How many?” The boy choked. “Thousands. Maybe more. They howl in chorus. Never heard anything like it.” He blinked, and tears tracked down his filthy face. “Are we… do we have a chance?” Caelan did not answer. He nodded for the boy to be carried out and let the silence spread through the hall.

He looked at the map again. He saw the lines of defenders shrinking, the gaps widening, the endless tide of enemies pressing inward. For the first time since the siege began, he felt not just the inevitability of loss, but the weight of what it would mean. He braced himself on the edge of the table, and when his scarred jaw tightened, it felt like the only part of him still capable of resisting.

“Reinforce the western gate,” he said to no one, to everyone. “Tell Blackthorn to use the last of the archers there. If they break through, I want the wards ready to collapse the bridge.” He paused, then added, “And send word to the queen. I want her safe, whatever it takes. If the enemy reaches the keep, she’s to be evacuated. No arguments.”

The hall was empty but for the dying echoes of his command.

For a long minute, Caelan stared at the horizon, where the enemy’s campfires dotted the valley like fallen stars. Then he straightened, wiped the blood and sweat from his brow, and forced himself down the stairs. He would meet the day on his feet, even if it was the last one he had to offer.

~~**~~

Ronan’s mood soured with every step he took from the keep’s shadow to the city’s hollowed center. The morning’s first light made little impression on Moonspire’s courtyards, where the walls rose too high, and the alleys twisted in on themselves like the guts of a dying animal. Even the pigeons, those unkillable witnesses to war, had the sense to stay silent.

He stalked through the passageways, boots smacking the stones loud enough to clear the path before him. The city’s wolves, his wolves for now, waited in clusters at every corner, backs against the wall, heads together in conspiratorial knots. Some bore the scars of last night’s fighting, bandages already blood-soaked, eyes rimmed in purple and black. Others had the look of conscripts, not warriors: hands too clean, jaws too slack, posture all wrong for anything but dying fast.

He took the first knot by surprise, coming up behind a pair of squabbling alphas who circled each other with the lazy menace of dogs at a garbage heap. Their teeth were bared, hands twitching, voices pitched to that dangerous low that meant the insults had just turned real. Ronan stepped between them and slammed their skulls together, hard enough to make the echo ring off the bricks.

“Save it for the enemy,” he barked. “Or I’ll finish it for you.” The larger wolf, his nose already leaking, tried to stand his ground. “He insulted my bloodline. Said my pack ate the leftovers from your… ” Ronan cut him off with a flat palm to the chest. “Your bloodline means nothing now. You want to die for an ancestor who never even met you? Go ahead. Otherwise, you fight for your queen or you die alone, out in the street, where no one will even remember your name.”

The second alpha, smaller but meaner, spit a fleck of blood at Ronan’s feet. “Queen’s a traitor,” he muttered. “Omega bitch wasn’t born to lead, she only got here because the real king died.” Ronan’s hand shot out, catching the alpha by the collar. In one brutal motion, he lifted the man off his feet and slammed him against the wall. The impact left a starburst of blood on the stone, a flower with the man’s head for a stem.

He leaned in, so close the tip of his nose grazed the other’s. “That ‘omega bitch’ walked the ramparts last night while you hid in a wine cellar. She stood watch while you pissed yourself in the dark. She’s the only reason the city still stands, and you’re only here because she let you live through your own cowardice.” The alpha’s snarl turned to a whimper, the anger draining out of him like water from a cracked jar.

Ronan let him go, the man sliding to the ground in a puddle of his own dignity. He rounded on the rest of the pack, who watched, eyes wide and unblinking, as if waiting for the next head to hit stone. He raised his voice, the words meant for every wolf within earshot. “I don’t care what you did before. I don’t care who your daddy was, or what oaths your dead grandmothers swore. That world is gone, and the only thing that matters is what you do today. You fight together or you die, one by one, until the rats wear your skins for coats.”

The silence that followed was so deep Ronan could hear the wind whistling between the chimneys.

He stalked through the courtyard, cuffing a younger wolf who dared to meet his eye, straightening the armor of another whose hands shook too hard to do it himself. He worked the perimeter, smashing through every excuse, every whine, every last trace of the old order. It was ugly, but it was the only way he knew.

In the far corner of the yard, a knot of fresh-faced betas tried to look invisible. Ronan singled out the biggest, a boy with shoulders like a butcher’s block and the acne to match. He jabbed a finger at him. “You. You got a name?” The boy swallowed, Adam’s apple bobbing. “Tarn, sir.” “Good,” Ronan said. “You’re squad leader now. You fuck up, the whole squad dies. You do well, I might let you see tomorrow. Got it?” The boy nodded, his fear instantly replaced by a new, predatory glint. His pack clustered to him, and for a moment, Ronan saw what a real leader could do: create purpose out of nothing but a threat and a promise.

A commotion at the gates drew Ronan’s attention. Two more alphas, these barely masking their contempt for each other, shoving their way inside, each trying to speak over the other. The first wore the patched furs of the border packs, the second the silvered wolf’s-head brooch that marked him as city-born nobility.

“He refuses to fight under my command,” the border wolf spat, arms crossed over a chest rippled with old scars. “I refuse to fight for a savage who can’t read a map,” the noble shot back. Ronan didn’t bother with words. He stepped up and grabbed the border wolf by the hair, dragging him down until their faces were level. “You ever see what a noble’s blood looks like when it mixes with yours? You will, if you don’t shut up and do what you’re told.”

He turned to the noble, who’d gone white at the display. “As for you, go ahead, give me one good reason I shouldn’t gut you right now for insubordination.” The noble tried to stammer out an excuse, but it died on his lips. Ronan dropped the border wolf, who scrambled to his feet, face set in a mask of fury. “You hate each other? Fine. Use it. The first one to take an enemy banner gets command of the next assault wave. You die in the process, you get a hero’s funeral. You win, you get your names written in the city’s stone. Now get out of my sight and figure out who wants it more.”

He watched as they stalked away, each glancing over their shoulder with equal parts hate and respect. That was all Ronan needed. He moved among the rest of the wolves, hands on shoulders, on weapons, on the nape of a neck when someone needed a reminder who was in charge. He heard the grumbling, felt the old rivalries simmer, but beneath it all he saw the spark of something new: a hunger to live, to matter, to not die in vain.

He called them together, all of them, until the courtyard was thick with the stink of sweat and tension. When he spoke, his voice carried over the walls, a thunder that brooked no argument. “Moonspire is the last of us,” he said. “If we fall, our kind falls with it. I don’t care if you like each other. I don’t care if you hate me. But you will fight as one pack, or I will kill you myself.”

He paused, letting the threat settle in, then softened his gaze just enough to make the next words believable. “And if you do what I say, if you stand the line and hold this city, then no one, not even the gods, will forget your names.” One by one, the heads nodded, the stance of every wolf straightening, hands drifting to weapons in a gesture that was less threatening and more readiness.

He saw the unity begin to take hold. For the first time all morning, Ronan allowed himself the luxury of hope. He dismissed the packs, watching as they fell into units, each led by a wolf who’d earned the role by brawn or by brain or, more likely, by surviving longer than anyone else.

As the courtyard emptied, he caught sight of Tarn, the boy he’d made squad leader. Tarn was already drilling his unit, voice gone gravelly with authority, fists tight around the haft of a battered pike. Ronan smiled, the expression hidden by the scar that split his upper lip. He turned and made his way back toward the keep, the knowledge sitting easy in his gut: today, at least, they had a fighting chance.

~~**~~

Aria’s blood was already seeping through her tunic by the time she reached the eastern rampart. She kept her pace steady, her steps measured, unwilling to let the defenders see how each breath scorched a line of pain from her ribs to her spine. The morning wind had picked up, carrying with it the sour reek of burning pitch from the north and, less noticeably, the iron tang of the river where the enemy’s dead had started to bloat.

She wore a battered silver circlet no heavier than a thumb’s worth of coin to serve as the crown today; it pressed cold against her brow. It caught the light, even here, even now, and more than once Aria wished she could pry it off and hurl it into the enemy lines just to see if they would break to chase it.

She walked the wall as she always did: alone, unguarded, an impossible figure to miss. The guards along the rampart turned as she passed, some straightening to attention, others unable to mask the exhaustion that hollowed their faces. There was no parade-ground discipline here, every salute was a trembling improvisation, a handshake with survival.

She stopped beside a pair of archers who huddled behind a scorched battlement. One was a boy, no older than fifteen, whose cheeks bore the remnants of a tear he’d wiped away with a sooty hand. The other was a woman, old enough to be the boy’s mother or perhaps his last living aunt, who leaned against the stones as if they were the only thing still holding her up.

Aria bent and picked up the bow the boy had dropped. She tested the string, then handed it back to him, curling his fingers around the grip. He looked up, terrified that she might see how badly his hands shook. “Your aim is true,” she said, not a question, but a statement of future fact. “Remember that.”

She moved on, refusing to let the faces blur into one. Each person she touched, literally sometimes, she remembered. The next two guards were bandaged, eyes bloodshot, armor hastily patched with bits of wire and what looked like leather from a torn apron. Aria straightened a pauldron on the taller one, who tried to thank her but only managed a grunt.

A cry went up from the inner wall. Aria followed it down a narrow flight of stairs, where the defenders from the lower city had gathered in a makeshift refuge. The air was thick with woodsmoke and the low, constant whine of fear. Children pressed against mothers, old men wrapped in blankets, the city’s whole heart reduced to a single, pulsing, terrified chamber.

She found the source of the noise: an old woman, hair gone white with age or shock, was clutching a battered tin cup in one hand and the wrist of a young boy with the other. “They’re in the lower city,” the woman said, voice barely above a hiss. “I saw them, shadows on the rooftops. They’ll come for us next.” Aria knelt, ignoring the way the wound in her side protested. “We’re holding them at the river,” she said. “The bridges are cut. They won’t reach the inner wall tonight.”

“But the children… ” The old woman’s eyes flicked to the huddle behind her. “We can’t run. They’ll slaughter us.” Aria glanced at the boy, who was staring at his feet, unable to look at either woman or queen. “There’s an evacuation plan,” she said. “Selene is setting up a path through the catacombs. At sundown, we’ll move everyone who can’t fight.” “And if they’re waiting at the other side?” the woman whispered, as if the enemy could hear her all the way up here.

Aria hesitated. This was the question she could not answer honestly, not if she wanted the city to stand another day. “We’ll have an escort,” she said, as gently as she could. “I promise you. I’ll see your grandchildren to safety myself.” The old woman started to cry, but this time, she did it quietly, the sound buried against the boy’s shoulder. Aria stayed with them until the shaking stopped, then rose and returned to the wall.

She reached the section manned by the wolf warriors, her mother’s pack, still loyal even after the council had called them traitors for backing an omega queen. They stood at rigid attention, fangs bared in what might have been a smile or a warning. Their armor was mismatched, some in the ceremonial black of the old order, others in scavenged plate from fallen rebels. But they nodded as she passed, the respect deeper and more primal than any salute. “Alpha,” one whispered, and the word did not sting as it once had.

Aria climbed the final parapet and surveyed the battlefield. The enemy had advanced. Banners marked with the rebel queen’s sigil, black moon, silver slash, waved from improvised towers along the north bank. Siege weapons, built in the open without fear of reprisal, now formed a semicircle that pointed straight at Moonspire’s heart.

A fresh wave of nausea hit her. Not just from the pain, or from the blood, but from the certainty that she could not win this fight. Not as it was. She let the mask slip, just for a moment. Her eyes closed, lips pressed tight. She could smell her own sweat, the salt of it mixing with the iron on her tunic, the leather of the bandolier, the faint, bitter trace of whatever ointment Selene had smeared on the wound in the last desperate hour.

When she opened her eyes, the mask was back in place, but the resolve beneath it was raw and bright. She turned, ready to finish her circuit, and that was when she saw the flicker, just a momentary spark along the outer wall. Selene’s wards, barely visible in daylight, pulsed in sync with Aria’s heartbeat, silver-blue and alive. The pattern rippled down the stone, a wave of protection drawn in the old tongue, woven into the mortar by a thousand midnight hours.

Aria pressed her palm to the wall, and for a second, the magic buzzed in her skin, not pain, but a memory of comfort from childhood, before the wars, before the city had become a grave for hope. She let her hand linger for a moment before walking on. The defenders watched her, the knowledge of her passage solidifying their own resolve.

Behind her, the wards glimmered, and even the enemy banners seemed to waver in the face of that stubborn, beautiful light.

~~**~~

The siege’s first real blow landed as Aria neared the north tower, a sizzle of torchlight along the rebel line and then a ripple of arrows so dense it looked, for one lunatic instant, like the morning had grown feathers. The world shrank to the hiss of flights overhead and the staccato impact as they slammed into stone, shield, or, all too often, flesh.

Aria pressed her shoulder to the rampart, feeling the wind shear through the gap where her armor had split, and then she was running, legs forgetting the pain in deference to the far more immediate business of survival. She ducked beneath a toppled section of battlement, rolled, and came up at the intersection of two walls just as Caelan burst into view, his helmet missing and his sword drawn in one hand, the other slick with blood that seemed to belong to half a dozen other men.

They saw each other, hesitated, and for a second the whole battlefield stilled, a little bubble in which only their breathing counted. Then the next volley arrived. Aria moved to fling herself sideways, but Caelan moved faster, and dragged her behind a stone outcropping as the arrows chipped the wall to powder above them. A chunk of masonry, dislodged by the impact, crashed down and grazed Caelan’s temple, leaving a stripe of red. He grunted, more in annoyance than pain.

“You’re bleeding,” she said, breathless. “So are you,” he answered, pulling a cloth from somewhere and pressing it to her ribs. “Why are you on this side?” “Why are you?” she shot back, but there was no anger, only the unspoken understanding that neither would ever leave the wall to the other.

From below, the enemy howls doubled, a chorus of wolf voices so perfectly synchronized it made the city’s own defenders sound like children. Caelan’s jaw flexed, the scar there whitening as he set his teeth. He pressed her hand over her wound and leaned out to survey the line. “They’re massing at the breach,” he said. “They’ll try the scaling ladders next. We have maybe a minute before they hit in force.” Aria nodded, eyes sweeping the defenders along the wall. “We’re spread too thin.” Caelan’s laugh was a sharp, metallic thing. “We always are.”

The moment was interrupted by a scream from the far side: a ladder, taller than any they’d seen so far, was being hauled into place by a dozen rebels in painted masks. Aria yelled to the nearest archers, pointing, and a ripple of arrows cut the front ranks down. The rebels behind didn’t even hesitate, they stepped over the dead, planted the ladder, and started up, hands and feet flying.

Caelan barked an order to his men, who met the first climbers with polearms and boiling oil. The ladder rocked and bucked, but held; soon there were too many rebels on the wall to count, and the line dissolved into a knot of clawing, stabbing bodies.

Aria drew her sword, ignored the flash of pain in her side, and waded in. Her first blow caught a rebel across the wrist, sending his blade spinning into the air, along with the hand that still held it. The second landed in the soft notch of a neck, and she did not stop to see the aftermath. It was only when a masked woman lunged at her from behind that Aria realized her hand was slipping, the hilt greasy with blood, her own or the enemy’s she didn’t know, nor did it matter.

She grappled with the woman, locking wrists as they tumbled together along the walkway, crashing against the rampart with such force that the air left Aria’s lungs. The rebel was strong, but Aria was desperate, and she twisted until her opponent’s head smacked the stone and went limp. Aria shoved the body over the edge, barely resisting the urge to follow it down to the quiet.

She felt Caelan at her back, the familiar rhythm of his strikes almost soothing amidst the carnage. He fought with the same relentless economy he always did, each blow measured, nothing wasted. At some point his shirt had been ripped open, exposing the old scars that crisscrossed his chest, a map of past failures and victories, proof that he was better than his enemies.

That enemy was pressing harder now; more ladders appeared, while more bodies piled up on both sides. A fresh wave broke the line, scattering the defenders. Aria found herself alone, three rebels advancing on her, blades out, eyes wild. She backpedaled, feeling the world narrowing, and then one of the rebels froze, surprise flickering across his face as a crossbow bolt buried itself in his spine.

Ronan’s bellow reached her next. The old wolf appeared at the head of a wedge of city wolves, his arms slick with blood, a grin splitting his face. “Get down!” he roared, and the pack crashed into the rebels, smashing them flat. The sheer violence of the charge scattered the enemy, and within seconds the wall was theirs again.

Ronan grabbed Aria by the shoulder, ignoring the blood and the way she winced at his grip. “Told you we’d hold,” he said, voice rough as gravel. She tried to thank him, but her mouth was full of the taste of copper. She spat, wiped her lips, and smiled back. “Never doubted it.” Caelan appeared beside them, his hand pressed to the gash at his temple. Ronan glanced at him, then at Aria, and the three of them stood there, the wall quiet for the moment, the enemy regrouping below.

“You two always did have a flair for the dramatic,” Ronan said, rolling his neck until it cracked. Caelan laughed, low and hoarse. “You’re just jealous we get all the attention.” Before they could trade more words, a new howl rose from the rebel ranks, louder, and more frenzied. The enemy was lining up a battering ram, a great timber capped with steel and covered in shields. Behind it, a mass of rebels formed a living wall, their numbers dwarfing anything the city could field.

Aria felt the familiar despair rising, but this time she beat it back. She looked at Caelan, at Ronan, and drew herself up straight. “We hold here,” she said. “No matter what.” They nodded, no argument needed. Caelan’s voice carried down the line, crisp and certain. “Form on me! Shields up! Pikes forward!” Ronan turned to the wolf packs, his voice a rumble. “You see those bastards? You eat them alive or I’ll do it for you!”

Aria, feeling the heat from her wound and the wild spark of something she hadn’t known in weeks, climbed to the edge of the parapet and raised her sword. “For Moonspire!” she shouted, her voice slicing through the chaos. The defenders roared in answer, and the city shook with the force of it.

The enemy hit the wall like a tidal wave. The battering ram crashed against the gates, the ladders rose anew, and the walkways became a tangle of blood and sinew and the scream of steel on steel. At the center, Caelan, Aria, and Ronan stood shoulder to shoulder, a knot of defiance in the storm. The fighting closed around them, a blur of red and gray, and for a moment Aria could not tell where she ended and the others began.

A ladder broke free and slammed onto the parapet at their feet. Ronan kicked it back, sending a half-dozen rebels tumbling into the moat. Caelan caught a spear meant for Aria with his bare hand, snapped the shaft, and drove the butt into the attacker’s throat. Aria swung her blade in a wide arc, carving a path for the defenders to follow.

The world shrank to the rhythm of attack and defense, the endless cycle of hope and terror. Aria felt her wound reopen, hot blood running down her side, but she kept moving, kept fighting. Somewhere behind them, the city’s bells began to ring, not the slow, tolling doom of the night before, but a wild, frenzied clamor that lifted the hearts of those who could still hear.

They held, and held, and held.

When at last the surge broke, when the enemy pulled back to regroup, the wall was thick with the dead. The defenders, what remained, slumped against the stone, gasping, too exhausted even to celebrate. Ronan was first to break the silence. “Not bad,” he grunted, then slumped to sit, arms dangling over his knees.

Caelan checked Aria’s wound, his fingers gentle despite the blood. “Still with me?” he asked, voice soft. She smiled, eyes closing. “Always.” They sat together, backs to the rampart, watching as the enemy tried to regroup for another assault. For the first time in memory, Aria felt not just hope, but certainty, a knowledge that whatever happened next, they would meet it together.

Above them, the bells of Moonspire rang out, defiant and clear, as the city’s last defenders readied for the next round.