Work Text:
It started like it always did.
"Don't scorch the fish, dartbrow!" Zoro growled from the deck, swords halfway out of their sheaths.
"Then maybe learn to catch better fish, marimo!" Sanji shouted back from the galley window, a cloud of smoke and spices wafting out behind him.
Usopp groaned dramatically from his sun-drenched perch near the helm. He dragged a hand down his face like a man burdened by the weight of too much knowledge. Which, to be fair, he was. “Here we go again…” he muttered, slumping over the small pile of bolts and wires he was working on.
Zoro and Sanji were at it – again. Because of course they were. You could set your watch to their arguments. Luffy yelling about meat, Robin reading in her chair, and Zoro and Sanji screaming at each other like their lives depended on it. The sacred rhythm of the Thousand Sunny.
Usopp watched them sometimes. Not in a creepy way. More like… scientific curiosity. You couldn’t share a ship with people this long and not start picking up patterns. And those two? They had a pattern.
They didn’t just fight. They gravitated.
No matter where they were on the ship, eventually they ended up in each other's orbit. Zoro could be napping up in the crow’s nest for hours, but as soon as Sanji started shouting in the kitchen he’d grumble his way back to the galley door, tossing in some insult about Sanji’s “fancy-ass lettuce.” And Sanji, for all his screaming, always slid a plate over to the swordsman before he could ask.
They acted like they hated each other. Maybe they thought they did. But Usopp, great warrior of the sea and master observer of all things emotionally repressed, had come to a very important – and somewhat disturbing – realization.
They didn’t hate each other.
Oh no. This was something far more dangerous.
He had the evidence. Years of it, actually. Like the way Zoro’s eyes flicked toward the kitchen when Sanji had been quiet too long or the way Zoro leaned against the galley door when Sanji had a coughing fit from smoking. Like how Sanji always made just a little extra food – one more plate than needed. "For the mossball," he said, like he was disgusted with himself. Or the way he dropped a folded blanket onto Zoro’s chest during a cold night watch, thinking no one saw.
But Usopp saw. He always saw. Observation was kind of his thing.
He’d watched them circle each other like this for years.
A crash from the galley cut his thoughts off. Something shattered. Then Zoro’s voice, “You did that on purpose!”
Sanji’s response came immediately: “You’re the one who slammed into the table, you neanderthal!”
Usopp peeked over the railing just in time to see Zoro stomp down the stairs, scowling and muttering about “the damn cook and his temper,” only for Sanji to storm out of the galley, spatula in hand, cigarette dangling from his lips like a battle flag.
"You’re lucky I don’t poison you, you ungrateful bastard," Sanji snapped, closing in on Zoro.
"How about just doing your damn job," Zoro shot back.
They were chest to chest by now. They always ended up chest to chest. Usopp had a running theory that half of their fights were just badly disguised excuses to invade each other’s personal space.
“Unbelievable,” he muttered to himself, flopping dramatically onto his back. No need to watch the whole show.
He already knew how it would end.
They’d yell until dinner, maybe throw something, maybe scuffle. Then Zoro would sit down and eat every single thing Sanji put in front of him without complaint. Sanji would mutter under his breath and pretend it didn’t matter, but he’d watch Zoro eat like he was memorizing it.
And tomorrow? They’d do it all over again.
It was a cycle. A pattern. Like two idiots orbiting around something they couldn’t name yet.
But Usopp could name it.
He just wasn’t going to be the one to tell them.
--
In Usopp’s humble opinion, there were few things more dangerous than a man in emotional denial.
And unfortunately, the Thousand Sunny had one of them.
He was watching him now – Zoro – sitting cross-legged on the edge of the deck, not sleeping, not training, just sort of... sitting there, staring at the water like he was thinking. Zoro. Thinking.
So Usopp, great warrior of the sea and master of stealthy reconnaissance, crept up behind a barrel and observed from a safe distance.
Zoro was scowling. But not the usual I-hate-you scowl he saved for Sanji. No, this was his rare, confused-but-trying-not-to-look-confused face. Eyebrows furrowed. Jaw tight. Like he’d been punched in the gut and didn’t know who threw it.
Usopp squinted harder, resting his chin on the edge of the barrel he’d claimed as his spy post.
Sanji had already gone below deck about fifteen minutes ago, probably to brood in his own dramatic, leggy way. The tension in the air had been thick ever since dinner, when Zoro muttered some offhanded comment about the “over-seasoned fish” and Sanji didn’t even bite.
Didn’t insult his taste buds. Didn’t call him a gorilla. Just looked at him and said, “Then don’t eat it,” in this low, tired voice, and walked off.
That was when Usopp knew: Sanji was done. He was done throwing spaghetti at the wall of Zoro’s emotional intelligence and hoping something stuck.
Usopp sighed dramatically. “This is gonna be painful.”
Because here was the thing:
Sanji had taken forever, but he had figured it out.
Usopp saw it in the way he watched Zoro when he laughed – not the smug smirk he wore after a fight, but the rare, unguarded laugh when Luffy did something dumb or Chopper accidentally turned into a giant. Sanji would glance over like it physically hurt to be in the same room with it. He saw it in the quiet, resigned fondness. The kind of love that was annoying, inconvenient, but persistent.
Now he was yelling because he thought he should, not because he had to. Like “here’s your lunch, try not to die” instead of “here’s your lunch, choke on it, bastard.” And the way he looked at Zoro sometimes?
Like he was waiting for the guy to catch up.
And now, as if the stars had aligned in some great cosmic joke, it was finally Zoro’s turn to catch up – and Usopp had front row seats.
Zoro muttered something to himself, too low to catch. Then again, louder: “…The hell does he even want from me?”
Usopp perked up, ears metaphorically twitching.
Then, Zoro said even louder, to no one, or maybe to the sea, “Why the fuck does it bother me when he’s not yelling back?”
Usopp froze. His mouth opened. Then closed. Then opened again, but no words came out.
Zoro scratched the back of his head, still frowning at the waves. “Idiot cook,” he muttered. “Dumb curly-haired… stupid face–” He trailed off with a groan, flopping back against the railing like gravity had finally figured out how to defeat him.
And Usopp? He almost choked on his own breath.
Oh my god, it was happening. He was figuring it out. It was actually happening.
Years of shouting. Years of passive-aggressive plate-sliding and excessive fish-judging and medical attention passed off as “bandage-throwing.” And now, finally, Zoro had stepped up to the edge of the truth.
Usopp was witnessing history.
He ducked lower behind the barrel, peeking through a gap in the wooden boards.
Zoro ran a hand down his face, muttering under his breath, “One day he’s screaming at me about breadcrumbs, the next he’s sliding me the last piece of damn pie like he didn’t just call me a waste of oxygen two hours ago.”
Usopp blinked.
“Why does he always look at me like that?” Zoro rubbed the back of his neck, visibly uncomfortable. “Like he’s waiting for something.”
Usopp’s eyes went wide. His jaw dropped an inch.
“Why does he always act like he’s mad at me when he’s the one who-”
Zoro cut himself off. Stared harder at the horizon. Like he was trying to punch the answer out of the sea with pure force.
Usopp slapped a hand over his mouth to stop from gasping aloud.
Zoro growled. “…Damn cook messing with me.”
Then the door leading to the men’s quarters opened.
Usopp held in a squeak.
Sanji stepped out, shirt sleeves rolled up, cigarette glowing, footsteps soft across the deck.
He didn’t even glance at Usopp’s hiding spot as he walked up and stood beside Zoro, arms folded, leaning against the railing.
They didn’t speak at first, just stood there, one of them confused and the other pretending not to be tired.
Sanji exhaled, smoke curling upward. Then said he lightly, “You’ve been out here for a while, mosshead.”
Zoro grunted. “Thinking.”
Usopp could practically feel Sanji raise an eyebrow. “Since when do you do that?”
Zoro didn’t take the bait. “Been wondering something.”
Sanji didn’t answer, just waited.
Zoro threw Sanji a sideways glance, then frowned down at the water. “You… already figured it out, didn’t you?”
A puff of smoke. A pause. Then Sanji shrugged. “Yeah.”
Usopp’s heart stopped.
Holy crap.
Zoro let out a breath like someone had knocked the wind out of him. He turned his head slightly. “How long?”
“Long enough,” Sanji said. “Didn’t think you’d ever get there.”
Zoro turned fully now, squinting at him. “And you just… waited?”
Sanji finally looked at him. Really looked. He flicked the ash off his cigarette. “I wasn’t in a rush.”
Zoro blinked slowly. Usopp could see the moment something clicked behind his eyes, like a single gear finally finding its teeth after years of grinding.
“Oh.” A pause. “You actually like me.”
Sanji just stared at him, unimpressed.
Zoro scratched the back of his head. “…That’s why you made that thing with the noodles last week.”
Sanji took a long drag. “Yes.”
“And why you didn’t kick me when I insulted your soup.”
Sanji exhaled a cloud of smoke. “I was thinking about it, but yes.”
Zoro looked like he’d just found out the world wasn’t round. He blinked again. “…Huh.”
He stared at Sanji for a long time. “So… what now?”
Sanji shrugged. “Guess we date.”
Usopp, from behind his barrel, felt his entire soul leave his body and ascend into the sky. He lay down on the deck, face-up, arms splayed out like a man witnessing the end of an era.
“They got there,” he said to the clouds. “It took five years, four concussions, and thirty-seven near-death experiences, but they finally got there.”
--
Usopp liked to think of himself as a man who could adapt.
After all, he’d survived giant goldfish, carnivorous plants, sky islands, and Zoro’s snoring. He had weathered the absurd chaos of the Straw Hat crew with grace (debatable) and dignity (less so), and had come out the other side stronger. Wiser. More emotionally resilient.
But nothing – and he meant nothing – could have prepared him for Zoro and Sanji dating.
Zoro and Sanji were together now. Like, officially. Like “stumbling out of the men’s quarters ten seconds apart and pretending it was a coincidence” together. Like “Zoro silently napping in the galley while Sanji cooked breakfast and pretending it wasn’t the softest thing Usopp had ever seen” together. And the fighting and yelling was even louder now. More frequent. Laced with an undercurrent of something so smugly domestic that Usopp often had to flee the area just to preserve what was left of his sanity.
Case in point: right now, Sanji and Zoro in the kitchen.
“Don’t cut the damn carrots like that, mosshead! You’re gonna poison someone!”
“It’s a carrot, not a sea king, you lunatic. What, they gonna die from too much crunch?”
“It’s called knife technique, you prehistoric vegetable!”
Usopp, curled a little into himself where he was sitting at the galley table, gently bonking his forehead against the wood. “Please,” he whispered to no one. “Just let me drink tea in peace.”
Across the room, Nami stirred her tea like she was tuning them out by force of will alone. Robin turned a page in her book, looking completely unfazed. Luffy was upside down in a chair, ogling the pieces of meat sizzling in a pan.
“Are they mad?” Chopper whispered from beside Usopp, eyes wide.
Usopp sighed. “No. This is foreplay now.”
Chopper made a horrified sound.
Zoro and Sanji, meanwhile, were standing far too close for two people allegedly furious with each other. Sanji had a knife in one hand and a tomato in the other; Zoro was gripping a cutting board with enough force to dent the wood and glaring down at the counter like it had personally insulted him.
“You’re breathing weird,” Sanji said suddenly, nose wrinkling in distaste.
“I’m breathing,” Zoro snapped. “That’s how people stay alive, in case you’ve forgotten with all the damn smoke in your lungs.”
Sanji sneered, scooting a little closer to Zoro. “Don’t act like you know biology, dumbass. You probably think arteries are sword parts.”
Zoro let go of the cutting board and turned to glower at Sanji. “You wanna find out the hard way?”
“Oh, I’d love to see you try, moss-for-brains.”
“Anytime, curly. After lunch.”
They stared each other down.
Usopp held his breath.
Then Sanji leaned in with a smirk, plucked the cigarette from his mouth, and kissed Zoro on the corner of his mouth.
Zoro blinked and scowled harder.
Then – and Usopp must be hallucinating – Zoro blushed.
Actually blushed, before he turned to hide it and grumbled, “You're such an idiot.”
Usopp dropped his thankfully empty cup.
Luffy made a noise like a dying bird and flopped onto the floor, kicking his feet in the air. “Zoro’s red! Zoro’s red!”
“I will end you,” Zoro growled, but it lacked any real fire.
Nami stood up, collected her half-empty cup, and walked out of the galley with the air of a woman who had seen too much. Robin followed with a polite, “please excuse us.”
Usopp fully rested his upper body on the table with a long-suffering sigh.
“I was there when this started,” he told the wood. “I watched them circle each other for years. I survived the bickering. The pining. The whole emotional wrestling match. I thought it would calm down once they got together.”
Chopper patted his shoulder. “I think they’re actually worse.”
“They are,” Usopp whispered. “They’re dating now and I’m in hell.”
In the kitchen, Zoro and Sanji were back to arguing about how to slice onions. It didn’t matter. They’d keep arguing all the way through lunch, then sit down and eat shoulder to shoulder, knees brushing under the table like it was normal.
Like love was just another battlefield.
But Usopp knew better. He’d seen the way they looked at each other when they thought no one was watching. The small smiles, the quiet acts of care. Zoro keeping a spare lighter on himself. Sanji sneaking him an extra dumpling. The unspoken mine in every insult.
They still orbited, same as before. But now the gravity between them had a label.
Usopp picked up his cup again, refilled it and sighed.
“Idiots in love,” he muttered.
--
“Oh, look at that,” Nami muttered one morning over her coffee, watching from the upper deck as Zoro and Sanji bickered loudly over who got to use the last bucket of water. “They’re arguing again like a married couple.”
“They’re arguing like a married couple who shouldn’t have gotten married,” Usopp muttered.
“No,” Robin said without looking up, turning a page in her book. “They’re arguing like a married couple who very much deserve each other.”
Fair point.
By mid-morning, Usopp had locked himself in the workshop. For peace.
He’d barely screwed in a single bolt before it started outside the hatch.
“–you don’t need to oil the hinges like that, idiot–”
“I’ve been fixing doors since before you could spell the word ‘tool,’ moss-for-brains–”
“I can spell tool. It’s what I’m looking at.”
Crash.
Bang.
Something definitely fell over.
Usopp sighed, leaned back in his chair, and called out, “You’re fixing the wrong door! That’s the emergency storage!”
A beat of silence.
Then Zoro yelled, “Franky told me this one!”
“He said the blue hatch, you colorblind musclehead!”
“I am not –!”
Usopp pressed the heels of his palms into his eyes. “They’ve been together for three months. How is it worse now?”
Chopper stuck his head in through the window. “It’s like… the same fights, but with more physical contact.”
“And less murderous intent,” Robin offered from above.
Later, they all sat down for lunch, and Sanji (who had clearly been mid-fight with Zoro when he started cooking) slammed a bowl down in front of Zoro with the air of someone declaring war.
“Don’t talk to me until you taste it,” he snapped.
Zoro took a bite. Chewed.
“…This is good.”
Sanji blinked. “…What?”
Zoro looked annoyed, like he hadn’t meant to say it. “I said it’s good, dumbass.”
“Wow,” Sanji muttered, blushing furiously. “Only took you three years.”
“I’ve said it before!”
“Not without calling me a bastard after!”
Usopp watched them from across the table, resting his chin in his hand, eyes narrowed in exhausted awe.
Brook chuckled. “Ah. Young love.”
Love, Usopp thought, is so freaking weird.
--
There were things you could always count on aboard the Thousand Sunny. Luffy would eat more than was reasonable. Nami would charge interest. Robin would smile innocently while saying something horrifying. Franky would cry over something manly. And Zoro and Sanji would not stop arguing.
Usopp had learned to live with this. Like how you learn to live with the sound of waves, or the way your socks never really dry. It was just part of ship life.
So his first conclusion was that they’d broken up.
It had been three whole days since Zoro and Sanji had yelled at each other. No shouting from the galley, no clanging swords, no dramatic slamming of pans or stomping of boots.
Just… silence. So naturally, Usopp assumed the worst.
“Do you think Zoro cheated?” he whispered to Chopper behind a stack of supply crates.
Chopper gasped. “No way! He doesn’t even know how that works!”
“Okay, true,” Usopp admitted. “But still. Something’s up. They’re broken.”
Chopper looked worried. “Should we tell Luffy?”
“No,” Usopp said gravely. “We can’t risk it. If he thinks Sanji’s sad, we’ll end up having another cheer-up dinner.”
They both shuddered.
But when Usopp peeked around the corner of the deck, ready to spy, he caught something strange.
Zoro was sitting against the mast, cleaning his swords. Sanji was leaning next to him, cigarette between his lips, flipping through a small recipe journal.
They weren’t fighting. They were just... sitting. Quiet. Close.
Every once in a while, one of them would mutter something – Zoro grunting something unintelligible, Sanji rolling his eyes and muttering back. But there was no fire behind it.
Then Sanji reached over – reached over – and handed Zoro his water bottle.
Zoro took it. No snark. No sarcasm. Just a nod.
Usopp almost passed out.
“I think…” he whispered. “They’re… soft now.”
Chopper gasped again. “They’re never soft!”
“I know,” Usopp said. “It’s unnatural. It’s like seeing a sea king knit a sweater.”
But that night, during dinner, the illusion shattered.
“Hey, darts-for-eyebrows,” Zoro called across the table, mouth full of rice, “you put salt in this or were you just crying into the pot?”
“Shut up and choke, mosshead! Next time I’ll cook your rice with seawater!”
Ah. There it was. Balance restored.
Luffy laughed so hard he fell off his seat. Franky yelled “THAT’S SUPER LOVE!” and Robin covered her smile with one elegant hand.
Nami just sighed. “Great. The arguing will never stop.”
“They might still be arguing,” Usopp pointed out, spoon halfway to his mouth. “But now there’s, like… kissing sometimes.”
Zoro and Sanji immediately turned toward him, in sync.
“Shut it, long nose,” they both said.
Usopp raised his hands. “Hey, hey! I didn’t say anything about the sneaky hand-holding on night watch, or that time Sanji made Zoro heart-shaped–”
Two knives embedded themselves in the wall behind him.
Usopp slowly lowered his spoon. “Never mind, I didn’t see anything.”
They went right back to arguing – something about the vegetables. Sanji leaned in a little when he shouted. Zoro smirked around a bite of food and nudged Sanji’s foot under the table.
Later, on night watch, Usopp leaned on the rail beside Chopper and said, “I think this is just who they are.”
“Loud?” Chopper asked.
“And terrible at feelings,” Usopp added.
Chopper tilted his head. “Should we do something?”
He looked out over where Zoro and Sanji where bickering their way across the deck, shoulder-bumping and yelling and smiling in a way they didn’t seem to notice.
Usopp snorted. “Are you kidding? They’re having the time of their lives.”
