• Hi all. We have had reports of member's signatures being edited to include malicious content. You can rest assured this wasn't done by staff and we can find no indication that the forums themselves have been compromised.

    However, remember to keep your passwords secure. If you use similar logins on multiple sites, people and even bots may be able to access your account.

    We always recommend using unique passwords and enable two-factor authentication if possible. Make sure you are secure.
  • Be sure to join the discussion on our discord at: Discord.gg/serebii
  • If you're still waiting for the e-mail, be sure to check your junk/spam e-mail folders

Context Switch (redux)

Spiteful Murkrow

Early Game Encounter
context-switch-banner2.png


A tale of troubling projects, programming, and of glimpses into what Game Freak is up to in the world of Pokémon.

Hello everybody. For those of you who hang out around where I do online, you might recall me saying that I stated that I intended to do some touch-ups of my first two fanfics this year in order give them a new coat of paint with some better writing skills. Originally I was planning on doing them in their order of release, but after realizing that my first fic needed a little more than mere cosmetic surgery to do it justice, I decided to go in order of path of least resistance and start off with a rewrite of Context Switch.

Okay, so for those of you with really long memories, you might remember that in the leadup to ORAS’ launch back in 2015, I released a 6-part short story here following the story of Game Freak making games in games in Hoenn and offloading some fancy pieces of paper on the small handful of trainers that actually bother to complete the Pokédex. That’s still the case this time around, though I’ve gone back and made some structural changes and tweaks to address some criticisms of the original, as well as to update the development gags a bit for new information that’s come out in more recent years regarding the beta and development versions of Ruby/Sapphire.

This series will be targeting per-fortnight releases, though if I feel a chapter needs a bit more time in the oven to do its rewrite justice, it may come a bit later than planned. As an advisory, but once the rewritten version of Context Switch is complete, the link in my signature will lead here instead of to the original version, which you can read by this link labeled 'Original Version' in the table of contents if you want to see a side-by-side for how things evolved, and this opening post will also contain a table of contents to better organize the story relative to its initial version. I would like to take a moment to extend my thanks to @Tangent128 , @Venia Silente , and @Dragonfree for beta reading the first chapter, along with all the readers and reviewers of the original story who motivated me to try and polish my original vision a bit.


And without further ado, let’s get right into this yarn of everyone’s favorite superpowered creatures and programming in a fresh post.
 
Last edited:

Spiteful Murkrow

Early Game Encounter


Part 1 - Adventure adventure = new Disaster();



A man with short and vaguely green-tinted hair followed by an excited Corphish made his way down a metal catwalk from a ship to the ferry terminal it docked up against. He paused for a moment to take in his long-awaited destination in this balmy, strange new land. While dense, the town the ship had taken him to lacked the vertical height of larger seaside settlements he’d seen before in other regions such as Goldenrod City, and was a sea of mid-rises and tightly-clustered houses. East of the urban sprawl, the man could catch glimpses of a beach and sandbars with indistinct figures milling about on the sand and in the surf.

"So… this is Lilycove City, huh?"

The man's attention was diverted from the town beyond the dock by a light but sharp nip at his leg, which prompted him to turn his gaze down towards his Corphish that was attempting to drag him along towards the terminal building.

"Alright, alright! I'm coming, Bracket!"

The Corphish - named ‘Bracket’ by his trainer after one too many sleep-deprived nights - eagerly pulled the young man past the doors of the ferry terminal and deep into a sea of bodies. There, the man saw a passing boy accompanied by a white cloud-like sprite who gawked together at the tiny screen of a yellow device with a folding hinge. Bracket and his trainer carried along through the terminal, snaking their way along pathways lined with stanchions, and made their way down to a baggage claim where suitcases circled about on a conveyor belt.

The man’s attention drifted off as he waited for his baggage to appear, spotting a girl with a net and straw hat walked past accompanied by a yellow chitinous creature that warbled a crisp rhythm with black-and-green rhombal wings on the other end of the carousel. On a nearby seat, an older woman rested next to her luggage as she looked at what seemed to be a case filled with little badges with ribbons along with a purple creature with tiny eyes and cream lop-ears. The Corphish tugged sharply at his trainer’s pant leg, turning the man’s attention to a passing red suitcase labeled ‘Keita’ on the name tag that the man hastily snatched off the conveyor belt and dragged to the ground. After a moment to sigh in relief, Keita looked back down at the Corphish, the trainer’s mouth curling up in a small smile.

"Heh. Sure picked the right place for a tropical vacation, don't you think?"

The two quickly focused their attention on an approaching man in a lei, who cordially greeted Keita and his companion with a sunny "Welcome to Lilycove, where the land ends and the sea begins!"

Bracket tilted his head blankly, while his trainer amusedly guessed that the greeter was surely reciting the town's motto. It struck him as certainly appropriate, but…

"Heh, but isn't all of Hoenn a place where the land ends and the sea begins?"

Keita quickly noticed a dawning realization come over the face of greeter. One that indicated the man with the lei was deducing that he and his Corphish hailed from further afar than initially presumed.

"Oh? Not from here?” the greeter asked. “For a second, I was sure that since you have a Corphish…"

"Nah, he's my partner… and headache for customs," the younger man chuckled back.

"Well, I'd like to think that you two aren't any more of an invasive species than the normal crawdads and tourists around here," the greeter teased. "So keep your eyes open- I think you two will find that Hoenn's a land of surprises after you get a chance to look around a bit!"

"I'll keep that in mind," Keita chuckled back.

It was then that he noticed a worker holding a sign for a bus with an eye-shaped logo and two words underneath that he could just make out. While Keita’s blissfully illiterate Corphish maintained his cheerful demeanor, a cloud seemed to settle over the trainer.

"Though… getting a chance to look around might be a bit tougher than I'd like it to be."

Alas, as much as Keita wished he were there as a tourist, it wasn’t leisure that had brought him and his Corphish to this distant land.



The two had come to Hoenn for work, specifically to help develop computer software. A short bus ride later, Keita soon found himself and his Corphish in the common room of a motel that had been furnished with low tables and cushions for use as a makeshift conference room.

Idle chatter floated around in the background as Keita took a seat in the middle of the room and gaped up at a patch of blank wall that was lit up with text and images from projector slides. After a man with a head full of healthy-looking blond hair stepped up to the front, the room quieted as all eyes and ears in the room trained their attention towards the speaker. Given the speaker's relative age to most of the rest of the crowd, whether that color was natural, a trick of the lighting, or simply the product of liberally-applied hair dye was anyone's guess.

"Good afternoon, everyone. And welcome aboard to the dev team for the next generation of Capsule Monsters games."

Keita couldn't help but feel that this presentation was perhaps a bit less impressive than he had expected. After all, a dingy "Cove Lily Motel" was hardly the prestigious office environment that he thought he would be working in to help develop the third installment of a smash hit video game franchise. The blond-haired speaker continued on with his surprisingly dry introduction to developing video games, as Bracket started to pick up on his trainer’s disappointment and began to fidget restlessly.

"As I'm sure you all know, this is an exciting opportunity for all of us. When the first Capsule Monsters games were released, none of us ever anticipated that they'd bring such joy to children’s lives across our nation, much less across the world."

Video games, television shows, comic books, trading card games, an ill-fated musical production… perhaps it really would’ve been daft to have expected a series to become a phenomenon capable of moving a pile of merchandise and toys the size of Mt. Moon in just a few short years. Keita wondered if that success’ unexpectedness would explain the lack of ceremony to this debriefing as the speaker carried on.

"As Capsule Monsters now ranks among the world's largest multimedia franchises, it places some rather unique burdens upon our team in order to ensure that our fans are satisfied with the experiences we provide them."

The speaker seemed to pause reluctantly for a moment before continuing on with his speech, "Given the… erm… various hurdles that were encountered during the development of past games, senior management has decided that it made a bit more sense for our present project to follow a different paradigm than the ones we grew accustomed to in the past."

The speaker’s comment puzzled the young man. The earlier Capsule Monsters games had been fairly simplistic and developed for primitive machines. Then, the question was just what were these…

"Hurdles?"

Keita found himself answered by no shortage of takers, all of them more versed practitioners of his same trade.

"Surely you’ve heard the stories if you’re in this business. Why, the first games were glitchy messes that were prone to save corruption if you so much as surfed down the wrong patch of water!"

"And there was that whole flap about the localization office in Unova wanting to redraw all of the sprites to make them more 'audience appropriate'."

"Those blasted games almost put this house into the ground. We spent six years just getting it ready for the initial release! If it weren't for the help from our publisher, the other developer they tapped to help us out, and all the Eevee that they gave us to give away to shoo out people coming into our office in Celadon City, we'd probably all be making spreadsheets right now."

The direction of the speech began to stray a bit, as some arguments broke out among the audience and Bracket began to grow restive and attempted to scuttle off to pinch at a table leg. The speaker was not terribly enthused with the various interruptions, and hastily attempted to re-rail the debriefing.

"Ahem. While I see that we all seem to have a healthy knowledge of those past hurdles, as I was saying, it is the intent of the firm to advance beyond them-"

Which didn’t go quite as the speaker had hoped, as the young developer noticed that the chatter in the audience had actually grown louder as an increasingly-agitated Bracket was resisting Keita’s attempts to restrain him without resorting to drawing his Pokéball.

"Hey, I was there in the trenches developing the second Capsule Monsters games- we got through it with just four guys and a little outside help!"

"Having to bring in one of the board members from the firm that handles our merchandising and licensing after two years to refactor the source code is not a 'little outside help.'"

It was at that point that the speaker decided that he had had enough, and blurted out, "Would you all stop being a bunch of rude children and let me finish?!"

The blond-haired man’s outburst proved to be just the thing needed to deflate the uncontrolled chatter, and incredibly even helped to settle Keita's Corphish down.

"Anyways, that is why for this development cycle they are bringing the team responsible for our previous successes along. Bringing a team of people from all around the world is hard, yes, but we didn’t flinch from that challenge. For example we chose to host development in a place new for everyone-"

"Not me. I grew up in Petalburg," a lone voice protested.

"For almost everyone on the team," the speaker added in a somewhat irked tone. "We have been asked to develop these games for brand-new hardware that launches in a matter of months, and has a massive audience to cater to. So it seemed only fitting to choose a relatively new development venue to host a project with so much uncharted water to cover."

The speaker further qualified the challenge. "Make no mistake, this will not be an easy project to be a part of, regardless of whether or not you stay the course for it. There will be late nights, aggravating bugs to squish…"

Bracket gave a small cry at the speaker's last comment, and hastily retreated behind his trainer's legs. Keita chuckled a bit and patted the crustacean to reassure him. "Don't worry, he doesn't mean you. You're a crustacean, not a bug."

The speaker carried on, oblivious to the incident towards the middle of the room. "But I'm sure you'll also discover that there will be camaraderie, and that the bonds that you form during this project live on well past release. To top it all off, you will be handsomely rewarded for your work…"

Some murmurs went about the room after the topic of bonuses came up. After all, this was a prestigious project, so surely the reward for completing it promptly would be generous.

"If you can deliver on the concept and design work that has already been done for you and stick to the twelve-month timetable that the publisher has given us."

Almost immediately, there was an outcry from the other programmers in the room.

"Twelve months?!"

"Are you nuts?!"

"We didn’t even have a playable build in twelve months for the last set of games!"

Keita melted into his seat, as he began to get a sinking feeling that he had perhaps gotten himself further in over his head than he’d imagined. Bracket also seemed to share the same sentiment, as he pawed about with his claws and chittered uneasily.

"Some tropical vacation this is shaping up to be, huh?"
 
Last edited:

Blackjack Gabbiani

Clearly we're great!
That's a really cute perspective! Are they still called Game Freak like they are in the games?
 

Spiteful Murkrow

Early Game Encounter
That's a really cute perspective! Are they still called Game Freak like they are in the games?

Yup. This is the incarnation of Game Freak from the devroom in the Cove Lily Motel from the original Hoenn games. So even if the staff roll doesn't look fully like reality, the name is the same since that's game canon.

And I'm running a little later than planned, but I'm here with the second installment of this series. Special thanks to @Tangent128 , @Venia Silente , and @Dragonfree for beta reading the first chapter, which will go live for your viewing pleasure in the post right after this one.
 

Spiteful Murkrow

Early Game Encounter


Part 2 - $ source /etc/Extraneous.Variables█



11 month(s), 29 day(s), 21 hour(s), 28 minute(s), 9 second(s) to deadline

One tense meeting later and the development of Capsule Monsters AGB officially kicked off, a release name shelved off to sometime after more crucial deliverables such as a playable build were finished. After the meeting cleared out, it came time for Keita and his Corphish to depart the makeshift conference room for their lodgings. Much like the entrance, the lobby, and the conference room he’d already seen at this “Cove Lily Motel”, there was not a hint of grandeur to his surroundings on the walk over to his room.

The garish, peeling paint and weathered shingles on the roof did little to spruce up the building’s dated architecture, and the occasional patches of rust on the metal railing of the semi-exposed hallway that the rooms had been built along similarly didn’t help. Beyond the cosmetic imperfections, the fact that its owners still relied on metal keys to lock the rooms was just another sign the motel hadn’t been renovated recently. At the ground level, there was a deserted puddle of a pool surrounded by some sun-faded patio furniture downstairs that Bracket eyed in between pinches at the base of the second floor railing. The Corphish’s amusement and curiosity entirely failing to transmit over to his unimpressed trainer.

"This is going to be our home for the next 12 months?"

Keita sighed and slipped his room key in, twisting it to the right and, after a short struggle, hearing a dull click as the door unlocked. The sound of Keita’s fight with the door caught his Corphish's attention as Bracket turned up to see Keita with his hand on the doorknob.

"Guess we'd better see who our two roommates are…"

Keita walked into a small hallway and was immediately struck by the relative size of the room. The first thing he noticed was that the place had been laid out as a suite, clearly meant for customers that planned on staying for an extended period of time. The second was the fact that a good deal of the room’s free space had been taken up by added desks. On them various papers, PC towers, and bulky and boxy monitors were strewn about, along with oblong handheld devices tethered to squat white boxes with ribbon cables that the man presumed were the devkits.

Keita’s examination of the suite was interrupted by a small voice squeaking, as he and his Corphish saw a small, mostly-blue mouse with rounded ears bouncing in on a tail orb roughly the same size as its body. There was a moment between the man's Corphish and the surprise Azurill as the two cautiously sized each other up, leaving Keita to stop and wonder to himself where the little Normal-type’s trainer might be.

Before he could raise his voice to speak, Keita’s questions were answered by the sound of approaching footsteps from the room and an older man with bluish-black hair entering the hallway. When the two met each other's gaze, the first thing that struck Keita’s mind was his counterpart had probably worked at the firm for a good while… or at least his age certainly made him look the part.

"Oh, hello! Are you that programmer who's sharing the room?"

Keita blinked back in surprise, as he hadn’t anticipated that he would be paired with roommates that were visibly older than him, much less ones that wouldn’t be sharing tasks with him. Additionally, the papers on the man's desk and the contents of a boxy monitor on it, although ruining an otherwise unimpeded view of the sea, seemed to be unusually colorful, to which the young man spoke up, "Yeah, that’s right. I’m Keita from the new team. And you're…?"

"Why, your maestro of turning ink and paper concept sketches into sprites, of course. I'm Satoshi from the graphics design team," the roommate responded.

With that mystery cleared up, the young man briefly caught a glance of the blue mouse cautiously nearing his Corphish. Bracket had not quite devoted his attention to the Azurill and was cautiously clicking his pincers, clearly sharing his trainer's curiosity for the mouse’s purpose here.

"And the Azurill?"

"She’s a bit of a newer friend I made out here,” the graphics artist answered. “You could say that she's become a bit of a muse. And what about you? Bring anyone along to fit the role?"

Bracket took the opportunity to cut in and answer the artist with a sharp chitter, waving a pincer cheerily at the man at the other end of the doorway.

"Yeah, I did, actually. That’d be my Corphish, Bracket."

No sooner than Keita’s words had left his mouth, Bracket scuttled forward in an attempt to nip at the mysterious orb attached to the blue mouse. The Azurill, narrowly dodging the Corphish's grip, squeaked and bounded up onto a counter in the other room. Keita quickly tugged his Corphish back, and after an awkward pause, sheepishly attempted to excuse his Pokémon's behavior.

"Sorry about that, Bracket's just a bit feisty."

"I can see that," the artist grumbled.

Keita attempted to clear the air with small talk, only to notice that there were three beds set out in the suite. Now that he remembered it, he could’ve sworn that in orientation, it’d been mentioned that...

"Weren't we supposed to have three people in this room?” he asked. “So then who's our other roommate?"

"You didn't already know?"

Keita heard the door open again, and as he turned, Satoshi motioned over his shoulder and said, "It's the guy in charge of this entire project."

Much to Keita's horror, it truly was the blond-haired speaker from the debriefing. The young programmer's face rapidly drained of color as it began to sink in that he would be spending a full year in the same room as the project's leader, with him hovering over his shoulder to scrutinize every little potential snag and pass it directly on to his immediate superiors.

Keita attempted to put on a brave, if obviously blanching, face and hesitantly put out an arm to offer a handshake to his senior.

"Er… n-nice to meet you, sir."

The Director for his part seemed to not be wholly unfazed by Keita’s discomfort as he reciprocated his handshake. All the while, a small teal Pokémon with a protuberance coming from its head, two arms on the sides of its face, and a black tail marched in with a commanding air headed over towards the Corphish.

"While I'm sure you were expecting someone a bit lower on the ladder to be rooming with you, I hope that it helps take some of the edge off of the experience,” the Director said with a wry smile. “After all, I don't bite."

It was at that exact moment that the teal Pokémon in the background let out an abrupt cry. All eyes in the room turned to see Bracket playfully grabbing one of the Wynaut's arms with his pincers, and the teal Pokémon abruptly slamming the Corphish into a wall to break free.

As the stunned crustacean hastily retreated behind his owner, Keita became acutely aware that the Director was leveling a withering glare over towards him.

"Apologies sir,” he insisted. “I swear that he's normally better behaved."



10 month(s), 20 day(s), 12 hour(s), 45 minute(s), 49 second(s) to deadline

Keita’s work typically consisted of a series of two-week cycles, in which the final product of a functional game to be sold to customers was inched towards little by little. Each cycle, new objectives were decided on, and then implemented to build out more and more of the games’ engine and its underlying logic.

There was a good deal of group conferencing, crude whiteboard sketches attempting to visualize logical flows for data and events, and division of tasks among Keita and his fellow programmers. However, in the end, the bulk of the work consisted of typing out text to be added to an agglomeration of computer code in a development environment and watching varying messages flash in a terminal. From there, the source code would be forced through the compiler, and all Keita could do was watch as the program turned his little snippets of text into instructions to be interpreted by one piece of hardware or another.

Indeed, even before the first cycle started up, Keita already knew that the process which was so fundamental to his craft probably would have struck an average passerby as less interesting to watch than the Taillow preening itself on his window balcony at that very moment. The man pored over some text in his terminal, pawing at his head in confusion over a stubborn bug when he noticed his Corphish tugging at the back of his pant leg.

"Oh. Hey Bracket… did you come to help me find out what’s going wrong with this callback?"

Bracket visibly paused at his trainer’s question. After all, what his trainer seemed to be doing appeared rather unremarkable, while his tone of voice sounded strangely playful. The Corphish, perhaps against his better judgment, humored his trainer’s request and gave a cheerful call as he awaited whatever his trainer had on his mind.

"Heh… I suppose it couldn't hurt to describe what I'm working on."

The programmer stooped down and lifted his charge up onto the desk, where the contents of a text editor were visible on his monitor.

Code:
///////////////////////////////////////////

void init_menu_callback(menu_evt * event) {

    if (event -> active == TRUE) {

        menu_type = event -> subtype_ID;
        render_menu(menu_type);
        lock_map_controls();

    } else {

        unlock_map_controls();

    }

}

///////////////////////////////////////////

"So this is the block that handles how the callback for the menu works,” Keita explained. “I'm pretty sure that this logic is correct, but the error messages say that something's coming from here. Basically, every time that the game detects that there’s a menu event, it updates a global static variable with the new type of menu, and then it uses it to-"

Keita trailed off into a brief silence as he noticed that the entire time, Bracket had not made a sound, but was eyeing the screen blankly.

"You didn't understand a word that I just said, did you?"

Bracket responded with a call that Keita could have sworn had a sheepish tone to it.

"Of course. Uhm… Should I use one of the dev kits to demonstrate?"

The Corphish then decided that perhaps it would be better to leave his trainer alone until he was less preoccupied with work and cheerfully scuttled off to go pester Satoshi's Azurill and the Director's Wynaut in the other room of the suite.

"Yeah, I didn't think that would help much either. I guess I'm on my own here," Keita sighed.



9 month(s), 1 day(s), 18 hour(s), 15 minute(s), 57 second(s) to deadline

Keita’s craft was one characterized by fits and starts of productivity, much as a writer finds himself oscillating between near-total lack of accomplishment on one day and great progress on the next. Alas, this day was of the former sort as the programmer attempted to puzzle out a strange error message from the compiler.

"Bah…"

Keita noticed that Satoshi, while on his way out from the room with his Azurill, seemed to hesitate as a faint sound from outside occasionally reverberated. After a moment watching the graphics artist linger, Keita in light of his lack of progress decided to give his mind a short break to go see what his coworker was looking at. On his way to the door, he was joined by Bracket, who had taken the opportunity to free himself from an attempt by the Director’s Wynaut to badger him into parting with an Oran Berry.

"Hmm? Did you see something out there, Satoshi?"

There, Keita looked down towards the motel’s unimpressive pool and saw a brown and green sauropod with what appeared to be a clump of yellow fruit attached to the base of its neck walking about in circles. The creature would periodically look about and call out, seemingly expecting a response from something.

"Is that little Tropius still pacing around the pool?"

"Eh?"

"You didn't see her this morning? She was pacing around and calling out just like this then, too."

As the Tropius continued her ritual, it dawned on Keita that the Pokémon seemed rather disoriented, as if she had gotten lost and wasn’t sure where to go. His attention lingered on the young Grass-type for a moment, and he couldn't help but feel some pity for her as she paced about.

"She’s been doing this since the morning?” he asked. “Where have the hotel staff been during all of this and why haven't they brought her to her trainer?"

The graphics artist said nothing, before shaking his head back with a sigh.

"I'm certain it will sort itself out, Keita. Just leave her be."

As the graphics artist and his charge departed, Keita watched the Tropius for a little longer before returning to his post. After all, Satoshi was a senior coworker, and if he was convinced the matter would blow over, there was no sense in making waves over it.



9 month(s), 1 day(s), 10 hour(s), 58 minute(s), 12 second(s) to deadline

That evening, Keita found himself making a run over to a convenience store to pick up some small snacks and a few drinks after a long meeting with his fellow programmers. The twilight trek back with Bracket and his purchases from the store was an underwhelming end to an underwhelming day, with the only excitement that he’d encountered thus far on his journey being a few local children engaging in an impromptu stunt competition with Acro Bikes right when he’d started his journey back to the motel from the convenience store.

The programmer made his way back through the motel lobby, and then back out into the open-air hallway. There, on his way to the stairs, he chanced to run into the graphics artist from his room.

"Heading back so soon?” Satoshi asked. “I'm surprised you're not off at one of the after-hours socials."

"Meh, I had a little more work to finish up-"

Keita trailed off after his attention turned towards the motel pool, where saw that the Tropius he and Satoshi had spotted at around noon was still there. She was no longer pacing about as she had earlier in the day and appeared visibly exhausted and distraught. Every now and then, she would crane her head upward towards the sky, seemingly waiting in anticipation for something or someone that kept failing to come. The pair’s Corphish and Azurill stopped and similarly looked through the bars of the hallway’s railing, as the two Pokemon and their trainers couldn't help but trade pitying looks with each other for the poor creature.

"Her trainer still hasn't come to pick her up after all this time?" Satoshi murmured.

"It feels strange that someone would just misplace a Pokémon that big,” Keita mused to himself. “Maybe she should spend the night with us."

The graphics artist turned his head back to his junior coworker. While his face betrayed obvious discomfort with the Grass-type’s plight, even then he couldn’t help but hesitate over the suggestion.

"I don't know… taking in a Pokémon that we don't have a Poké Ball for?” Satoshi asked. “In a room full of computers and devkits?"

"I'm sure that we'll be able to manage."

With his mind made up, Keita walked over to the gate to the motel pool and undid it. The young man strode forward onto the pool concrete with his crustacean in tow, and called out to the young Tropius as he approached.

"Hey!"

The creature instinctively got to her feet, and began to backpedal nervously, beating her four leafy wings a bit and fanning them out to try and make herself look larger. The programmer noticed that one of them seemed to be stiff and moving slower, if lacking external signs of injury. Perhaps the Tropius had sprained it from overwork, or clipped it against a hard object while her caretakers were out.

Still, Keita knew better than to try and force another trainer's Pokémon into an encounter it was uncomfortable with, and hesitated a moment. After looking down at his bag from the convenience story, he dug out a soft drink and approached the creature with a noticeable berth. The programmer stooped down and undid the top of the drink, before presenting it to the Grass-type as Bracket waved to the young Tropius with a congenial chitter.

"Come on, don't be shy… you want a better place to sleep tonight than on that hard pool concrete, don't you?"

The Tropius paused for a moment, and then slowly approached the man before seizing the soft drink with her mouth and beginning to drink its contents. The Grass-type's guard had been lowered, and she lowered her wings, seemingly soothed as the programmer gave her long neck a cautious pat.

"Heh. See, we're not so scary, right?"



9 month(s), 1 day(s), 7 hour(s), 14 minute(s), 43 second(s) to deadline

Later that night, Keita backed away from his keyboard, deciding to leave his after-hours battle with the current sprint’s tasks aside and take them up again at a better hour. He turned over his shoulder, where the Tropius from the pool gawked around curiously at the room’s furniture and the various monitors and electronic equipment strewn about it, much as she had when he and Satoshi brought her in. The programmer heard the door to the suite unlock, and he looked over just in time to see the Director come in through the hallway, who at once noticed the young Tropius and raised a brow.

"Ah. Caught a local companion for your Corphish?"

"Er… Technically, I didn't. I found her down by the pool,” Keita sheepishly admitted. “I left a call for the front desk to ask around for her trainer, but I hadn’t heard anything back yet."

The comment caused Satoshi to look up from some papers he was sketching on, an uneasy look spread all over his face; his Azurill seemed to pick up on it as the Pokémon shrank into a corner in response.

"Right, about that...” the graphics artist began. “According to the front desk, the Tropius is apparently a female stranded from a herd that flew through about a day ago."

Keita blanched and stiffened up, wondering to himself if he had misheard his colleague's words.

"Wait, what?"

"You didn't know? Tropius can fly,” Satoshi explained. “I mean, they have to exploit updrafts and glide for most of it, but they can cover some decent distance while airborne."

"So then… this Tropius doesn't have a trainer?", the Director asked as his eyes narrowed into a deepening scowl.

The graphics artist hesitated for a long moment, before speaking up with a grudging sigh.

"It doesn't sound like it, no."

Keita and Satoshi traded looks with each other as the Director buried his face into an open palm. All the while, the Tropius carried on poring over the equipment in the room as Bracket sidled up, blissfully unaware of the conversation between the three trainers. Keita blanched as a sinking expression settled over his face, while his senior colleague shot back a small glare reminding him that their present embarrassment was completely avoidable.

"You brought a wild Pokémon into our room?" the Director fumed before turning his attention to the graphics artist, "And you didn't stop him?"

"Well, I didn't know she was a wild Pokémon!” Keita protested. “And she's been really well behaved all this time!"

Just then that uneasy quiet in the room was broken by a sharp cry from the Tropius. Keita whirled around and saw that Bracket had latched onto one of the Tropius' wings, causing her to dash about wildly trying to knock him free.

After upending some furniture, she eventually succeeded at dislodging the Corphish after swatting him into the side of the bulky monitor at Keita’s workstation. The screen fell from the desk to the floor with a loud crash as the glass tube inside imploded and spewed shards onto the carpet. Back at the other side of the desk, the Tropius hastily retreated to the side of the programmer baying as Bracket hissed back indignantly at the new stranger and her overreaction to what was merely a friendly nip.

"Probably not the best timing there," Satoshi whispered. Keita gulped, turning back to the now-seething Director, who quite obviously had had enough of the chaos in the room.

"That monitor's coming out of your paycheck. Either get a Pokéball for her or else get her out of here!" he barked at the junior programmer.

"Ulp. Yes, sir."
 
Last edited:

Blackjack Gabbiani

Clearly we're great!
Ooh I wonder how the Tropius is going to play into their development.
 

Venia Silente

[](int x){return x;}
Congrats on the new release! And it's good to work that the code snippets work well.

Most of my commentary (both in-development and on release version) on this story would likely match my commentary for the old version, but one thing I wanted to more overtly state is that it's a good work to mention and have things work that make the story look and feel *specifically dated*. A good example is the "crude whiteboard sketches attempting to visualize logical flows for data and events", which not only calls back to a pencil-and-paper stage of development (and "un-finality" of the work) but also makes one reflect in comparison to more "modern" works that require lots more work to get the same final effect (*eyes hissingly at Umbrello*).

How to Try and Get Rid of a Tropius:

Director: "Either get a Pokéball for her or else"
- Famous Last Words o3o
 

Spiteful Murkrow

Early Game Encounter
Ooh I wonder how the Tropius is going to play into their development.

All in due time, good sir. But she definitely winds up leaving her mark on these games by the end of the story. ^^

Congrats on the new release! And it's good to work that the code snippets work well.

Most of my commentary (both in-development and on release version) on this story would likely match my commentary for the old version, but one thing I wanted to more overtly state is that it's a good work to mention and have things work that make the story look and feel *specifically dated*. A good example is the "crude whiteboard sketches attempting to visualize logical flows for data and events", which not only calls back to a pencil-and-paper stage of development (and "un-finality" of the work) but also makes one reflect in comparison to more "modern" works that require lots more work to get the same final effect (*eyes hissingly at Umbrello*).

Well I’m glad to hear that the story seems to be feeling period-appropriate to you. Since it’s really easy to wind up slipping into anachronism when doing a period piece in even relatively recent history.


- Famous Last Words o3o

Yeah… that didn’t quite work out quite how the Director was expecting. o3o;

Also, scheduling wound up shaking out a bit weird since the new installment wound up getting published with some… ahem other work. But the third installment of Context Switch (redux) is finally here! Special thanks to @Tangent128 , @Venia Silente , and @Dragonfree for beta reading this chapter, with Venia Silente providing additional help sanity checking some code through by running it through some old versions of the GCC and LLVM C compilers. As usual, today’s chapter will go live for your viewing pleasure in the post right after this one.
 

Spiteful Murkrow

Early Game Encounter


Part 3 - try { Project->WithResources(&Time(), &Money()) } catch { Features_May_Vary(); }



6 month(s), 28 day(s), 10 hour(s), 2 minute(s), 12 second(s) to deadline

As the weeks went by and the shock of the encounter with the Tropius wore off, Keita found himself once again hard at work in front of a hastily purchased replacement monitor. With time, even the visibly mismatching monitor had melted into the normal order of things as the first quarter of the project gave way to the second and the team was on the cusp of finishing a playable build.

In the midst of the flurry of change over the past two months, there was yet another change to the programmer's routine. Against his better judgment, Keita had taken up the Director on his ultimatum, if not in the way his superior expected: he had sourced a Pokéball to keep the Tropius in and even, after a more sleep-deprived night, dubbed her 'Paren' in much the same fashion as he'd named Bracket. The Pokéball was a green-topped capsule with yellow rings, a design originating from a project by the local Devon Corporation that was fine-tuned for the needs of younger Pokémon.

To Keita's relief, his initial worries of how well Paren would adjust to life under a trainer's care had been premature, as it quickly became evident that she'd taken an unexpected shine to her trainer's environs. This particular day was but another point that reinforced his sentiments, as Paren drew near to the young man's workstation in the middle of a balmy Hoenn day.

"Eh? You're not going to go out to stretch your wings? I left the door open for you and everything."

Much to Keita's surprise, Paren seemed more entranced with the strange box and button-covered strip her new trainer was interacting with. The Tropius had already deduced in the past that he manipulated it somehow every time he sat in front of it, and seemed curious about what the greenish-haired man found so interesting about the screen and the multicolored glyphs that popped up in different boxes on it. Keita tilted his head back at the Grass-type for a moment, not fully sure as to why the Tropius had taken a shine to his handiwork now of all times…

"Oh, this? This is just some code that I'm trying to debug. Nothing special, really."

Perhaps the novelty of the human world had yet to wear off for Paren, perhaps she wanted to get to know her trainer better, or perhaps the Tropius had been motivated by the small rivalry she had developed with Bracket for their trainer's attention since her stay began. Whatever the cause, Paren's interest in Keita's work certainly made programming much less solitary for the young man, especially on days such as this one where Satoshi was busy with his peers from the art and sound teams down the hall.

Keita was quietly grateful for Paren's companionship, especially now when he was busy reviewing some new snippets he'd written up. In his field, programmers occasionally would sanity-check their work by explaining it aloud to an inanimate object like a rubber Psyduck, or in other cases to their Pokémon. And unlike Bracket's usual fickleness, Paren had always proven to be a fairly reliable muse, and even gotten Bracket to suddenly take an interest in sitting in on his work, leaving Keita to pull up a file he was working on for the viewing pleasure of his audience of two.

"Not sure how you got interested in this, Paren," Keita murmured. "Let alone how you managed to get Bracket interested in sitting still watching me code... but let me take things from the top."

Code:
///////////////////////////////////////////

#define SELECT_MON 0
#define WAIT_OTHER_SELECTION 1
#define CONFIRM_SELECTION 2
#define WAIT_OTHER_CONFIRM 3
#define SEND_MON  4
#define RECEIVE_MON 5

///////////////////////////////////////////

Keita began to scroll through line after line of code with subtle taps on his keyboard as Paren and Bracket followed along with their eyes. While the pair surely could not understand the characters on the screen, Paren seemed enthused with the differing colors that the text editor rendered different statements as, and Bracket was keen to project an outward sense of excitement to match her in front of his trainer.

Code:
///////////////////////////////////////////

while (_trading) {

    switch (trade_state.mode) {
        case SELECT_MON:
            update_selectmon(trade_state);
            break;
        case WAIT_OTHER_SELECTION:
            trade_idle();
            break;
        case CONFIRM_SELECTION:
            trade_conf();
            break;
        case WAIT_OTHER_CONFIRM:
            trade_idle();
            break;
        case SEND_MON:
            send_data(trade_state);
            break;
        case RECEIVE_MON:
            update_data(trade_state);
            break;
    }

}

///////////////////////////////////////////

The programmer explained the shifting lines to his charges, scanning the code with his eyes to ensure that his explanation matched up with the actual functionality of the lines of code on the screen.

"And this is a state machine for trading. That part there checks if the player wants to trade, and then waits on another player," he explained. "Normally the event that triggers the different cases here would be sent from a second console through a Link Cable, but we're allowed to cheat a bit for now. Anyhow, my problem is that something is going wrong with the last-"

As Keita continued his explanation, he was interrupted by the sound of the room door opening from outside. The Director walked into the room and made his way over to Keita's workstation, giving him a skeptical frown along with his Wynaut after seeing the programmer and his two Pokémon crowded at the desk. He momentarily scanned his subordinate and his charges before speaking up with a quiet clearing of his throat.

"Hard at work, I see."

"Oh! Er… yes, of course. I was just reviewing the changes that I made to the state machine for trading," Keita explained while hastily turning to face his blond-haired superior. Bracket and Paren seemed to be taken aback themselves, as the pair traded sheepish looks with the Director's disapproving Wynaut.

The Director for his part was a bit more cordial towards the young man than his blue companion, too cordial perhaps. It became apparent in short order that there was more than it appeared behind the Director's amiable demeanor, as he had approached the programmer with an ulterior motive.

"Trading, eh…? In that case, perhaps you'd like to take a bit of a break from your current task," the Director suggested. "I actually just got a heads-up from some of the other programmers that they're presently having some issues with the monster data structure."

"Oh…?"

"If you could pitch in and help with their problem, I'm sure that they'd deeply appreciate it."

The programmer paused and thought for a bit. It seemed peculiar for such an abrupt change of work, but the Director wouldn't have approached him directly about this matter without a good reason.

"I suppose that I could help for a bit," Keita finally replied. "I mean, I think the problem that I'm encountering right now shouldn't be too hard to fix later…"



6 month(s), 28 day(s), 9 hour(s), 49 minute(s), 9 second(s) to deadline

A little over ten minutes later, Keita and his Pokémon walked the last few steps up to the doorway to the conference room where their project's initial debriefing took place. Bracket and Paren traded puzzled looks with each other for a moment as Keita stepped forward and pushed the door open.

"Hello, I heard that you guys needed some help with the-"

...only to find the room packed from one end to the next with monitors and whiteboards, along with roughly a third of the programmers on the development team, far more than Keita had expected.

"-monster data structure?" he asked. Keita stepped forward and entered the room with his Pokémon, the lot looking about their surroundings with freshly-evoked unease and suspicion that something was dreadfully amiss.

An older bespectacled man with an accompanying Porygon beckoned the younger programmer to come in and lend his aid towards what was quickly becoming evident to be some manner of serious quagmire.

"Pull up a chair, kid," the Porygon trainer insisted. "It's not like we've been making any progress lately."

"Eh? Why not?"

"Take a look at this."

Code:
///////////////////////////////////////////

typedef uint8_t Uint24_t[3];

typedef struct Party_mon {

    uint8_t mon_index;
    uint8_t h_item_index;
    uint8_t move1_index;
    uint8_t move2_index;
    uint8_t move3_index;
    uint8_t move4_index;
    uint16_t ot_id;
    Uint24_t exp;
    uint16_t hp_ev;
    uint16_t atk_ev;
    uint16_t def_ev;
    uint16_t spd_ev;
    uint16_t spe_ev;
    uint16_t indiv_val;
    uint8_t move1_pp;
    uint8_t move2_pp;
    uint8_t move3_pp;
    uint8_t move4_pp;
    uint8_t frnd_val;
    uint8_t cprs;
    uint16_t catch_dat;
    uint8_t mon_lv;
    uint8_t status_cond;
    uint8_t swap;
    uint16_t cur_hp;
    uint16_t max_hp;
    uint16_t atk;
    uint16_t def;
    uint16_t spd;
    uint16_t spa;
    uint16_t spd;

};

///////////////////////////////////////////

The Corphish, Tropius, and their trainer all traded blank looks as the man explained the meaning of the long block of characters on a boxy screen not unlike the one at Keita's workstation.

"That is what the data structure for Capsule Monsters from the last set of games looks like. We have this blasted thing kicking around still to support trading up from the last games."

"Yes? What's so strange about that?" Keita asked. "Wouldn't we logically be using a data structure not too different from this one for compatibility reasons?"

Some other programmers nearby interjected from their computers after hearing the question.

"Tch, you wish. We're supposed to throw in a bunch of hidden personality values onto this. Change the way that maximum stats for a monster are seeded, and give them abilities to make them different in battle on top of it all."

"And don't forget that set of stats for that side mode based off of Contest circuits the Director thought of. For guys who want every player's monster to be one-of-a-kind, they sure aren't helping with giving us 48 bytes to work with!", a man offered between exasperated rubs of his brow.

Ah… Keita had heard that the concept behind Capsule Monsters had been based around its creators' experiences training Pokémon when younger. So then it sounded like one of the goals of the new games was to make them more accurate mimicries of the Pokémon training that inspired it.

Even so, the young programmer still couldn't understand why this would be such a big bottleneck.

"But aren't you making the new data structure larger to accommodate all of this?" Keita asked. "I thought that's what you did for the last set of games."

"We've been trying," the elder programmer snapped. "Expanding the structure isn't the problem."

"It's getting everything down to 48 bytes for trading a monster over to the previous games, and then putting all of those extra bytes back when you trade it back up."

Keita fell silent, as Bracket and Paren traded worried looks with each other and the color drained from their trainer's face. Somehow, even they seemed to pick up the programmer's terrible realization of just why everyone was stuck here.

"I think I can see how that'd be a problem."



5 month(s), 29 day(s), 14 hour(s), 32 minute(s), 58 second(s) to deadline

Two development cycles later, the problem of what to do with the new games' data structure remained unsolved. The team had made attempts to dance around the issue and continue working on other parts of the project, such as ironing out bugs with the trading data states, but there was only so far that they could kick the can down the road before the bottleneck started to stymie their progress entirely.

The air was tense that day, a full month later of futile battling with the monster data structure. The lack of a breakthrough weighed heavily on everyone in the room, not least the Director, who was visibly racking his mind to try and present difficult words to the gathering.

"It has come to our attention that there are some… critical bottlenecks for being able to handle data transfer between the last set of Capsule Monsters games and our present project."

Voices quickly rose up from around the room in protest, their speakers exasperated with the lack of progress in attempting to coax these new features from the base of a legacy data structure that had never been built with them in mind.

"Look, it's been four weeks with no progress," a programmer at the front objected. "We've tried everything. We've tried making caches for the extra data on trading, we've tried injecting data into the unused byte at the 33rd offset to try and rebuild all the extra bytes."

"To be blunt, nothing's working," a voice from the back interjected. "We haven't even gotten one-way trading from the old games to work consistently thanks to that data corruption bug."

Low grumbles filtered about the room along with sharp scowls at the speaker's passing mention of the 'data corruption bug,' which had merely added insult to injury for the team's struggles. In spite of that, the Director remained undeterred and continued on speaking.

"Yes, I understand that. But the office is adamant that these new features be implemented," the Director sternly replied, to a chorus of frustrated groans from the audience. It was then that he presented a possibility that even the audience had not considered.

"Even if it means having to make a few sacrifices."

Keita instantly heard murmurs filter about the room, and began to wonder if his roommate was implying that they should make an entirely new data structure even though that meant...

"Wait, you're not seriously considering gutting backwards compatibility, are you?" the programmer at the front asked.

The Director reluctantly nodded. "Between this and the problems that the rest of your team have been encountering with the clock system, I believe that we will need to make some difficult decisions to make our deadline."

Keita noticed Bracket and Paren had begun to trade concerned glances. Apparently they had seen the visibly sinking expression on his face, and of those of the others in the audience.

"But half the material we've been given to work with assumes tight continuity and connectivity with the last game!" one of the scenario designers cried out.

"I'm aware of that," the Director replied. "And I'm saying that it appears that we're going to have to take a bit of a more uncharted approach to fill those gaps."

Another round of groans went around the room. This was a massive shift in the direction for the game, and the timetable that had been initially given to the team was already half-gone! Satoshi from the hotel suite raised his voice in protest, spelling out just what the Director's suggestions would entail.

"Director, how on earth are we supposed to come up with stopgaps for half a campaign and setting on top of throwing a game together?!" the graphics artist exclaimed.

Keita looked back blankly at the Director. Yes, surely making a setting and new story from scratch in less than six months was an obvious non-starter. After all, where on earth would they get all of that material from?

It was then that his attention was drawn to Paren reflexively batting one of her wings. Like Bracket, the Tropius also grew fidgety when kept deprived of distractions for too long, of which there weren't terribly many lying around in the dimly lit conference room.

Yes, it was as clear a sign as any that she needed some outside air, out in the tropical Hoenn weather. Out in that big region which was supposed to be a haunt for tourists.

Keita paused and blinked for a moment, as a spark of inspiration suddenly crossed the programmer's mind.

"Wait a minute… I think I actually know how we can do that," he interjected.

It was more than a little daft, but at this stage, what did the team have to lose? So it was that the young man stood up from his seat, raised his voice, and made the fateful suggestion that would make or break the project over the course of the remaining six months:

"What if we took some notes from our surroundings? And then used that for the game's setting and campaign?"
 
Last edited:

Spiteful Murkrow

Early Game Encounter
Author's Note: Special thanks to @Tangent128, @Venia Silente, and @Dragonfree for beta reading this chapter.



Part 4 - SELECT * FROM project JOIN Amelioration_Patterns ON pattern is not null;



5 month(s), 28 day(s), 8 hour(s), 41 minute(s), 22 second(s) to deadline

Not long after the fateful conference in which it was decided to scrap the existing campaign plans of Capsule Monsters AGB, Keita and his roommates found themselves far removed from their hotel room for trips out into the field about Hoenn in search of inspiration. Their journey that day had taken their assigned group to a barren waste of sand hemmed in by mountains north of Mauville City. In the distance, a Trapinch could be seen pawing at the ground outside a sand pit, seemingly attempting to doodle something into the earth with its feet.

The desert had some charm with its rolling dunes and ever present glimpses of phantom water just beyond the horizon. But then there was the blistering heat, and the sun beating down on the team and their Pokémon as they stared wearily at rolling dunes ahead of them.

"How on earth did you ever get us into this, Keita?" Satoshi asked while wiping away some sweat from his blueish hairline.

Keita gave a sheepish look back at his coworker, with a quick glance over at Bracket and Paren evidencing that even his own Pokémon were visibly unamused with the current day trip. Sensing that the party as a whole was a bit agitated with their current field work, the programmer spoke up and attempted to check his companions' less-than-welcome reception.

"Well, hey, it's one way to get out of the hotel room, isn't it?"

"Do keep in mind that there is a practical purpose to this. This is field work for getting ideas for the game," the Director reminded. The Director's Wynaut was quick to mimic his trainer's feelings by sternly pointing at Keita and giving what the programmer presumed was a withering scowl just like the one his blond-haired superior was giving him.

Satoshi's Azurill began to tug impatiently at her partner's pant leg. The graphics artist stooped down and attempted to soothe her with water from a plastic bottle, only to find it bereft of all but a few drops.

"Well, what is there to take away from this aside from deserts being terrible to stay hydrated in?" he said in exasperation as Keita began to climb a dune in front of the group.

"The brochure mentioned that there was supposed to be a ruin of an ancient tower somewhere along the route that runs through here," the programmer explained, before raising a hand to his brow. Bracket and Paren traded puzzled looks with one another as they tried to follow their trainer's gaze, only to find nothing but a mound of rocks and a Sandshrew burrowing underneath it.

"If we can find it, maybe we can take inspiration from that-"

As Keita neared the top of the dune, he had the misfortune of having a clod of sand from the ridge thrown into his face by a strong gust. The programmer recoiled, jerking back and cradling his eyes as he attempted to spit sand out of his mouth.

"Ackpth! Okay, so that's why they were selling those goofy-looking goggles back at the rest area!"

As Keita's Tropius and Corphish rushed to his aid, Bracket took a perhaps ill-advised attempt to wash out the sand from his trainer's eyes with a Water Gun. As Keita flailed and protested, the Director glanced at the unfolding chaos, thoughts stirring in his mind.

"Hmm… the sand and wind acting as a barrier…" the Director mused. "We do need some ways to keep players from wandering into parts of the world they're underleveled for. I think something like this might be just up our alley…"



5 month(s), 21 day(s), 4 hour(s), 45 minute(s), 13 second(s) to deadline

A few days later, Keita and his roommates found themselves and their charges walking down a route encrusted in a never-ending rain of light-gray volcanic soot. In somewhat grayed foliage, Spinda with perpetually dazed expressions moved to and fro erratically around their surroundings.

"So… this is where all the ash for those glass-blown flutes comes from…"

Keita had read of this place on yet another travel brochure, but seeing it in person was all the more mesmerizing. The Pokémon with them seemed to likewise find the novelty of the gray land around them entrancing: spending time lazing about drawing patterns in the soot as they traded playful calls with each other.

"It's like a snowy landscape…" Keita mused. "Except it's hot and muggy and much worse for your lungs."

The Director raised a hand to his chin and looked about, and noticed that the Pokémon playing around them were starting to take on shades of the surrounding soot as it clung to their bodies.

"I notice that the ash tends to stick to you as you move through it…"

"Er, well of course," Satoshi explained. "It's how people around here gather the soot in the first place. They carry around a bag and let nature do the hard work."

The Director said nothing in reply at first, before quietly murmuring to himself in realization. They did need some places in their new games' world to show off the power of the new hardware they were developing for. And this strange route, with an almost monochrome appearance that seemed like something straight out of one of the first Capsule Monsters games, could be just what they needed to inspire such content.

"Hmm… we do need a few routes in the setting that are more than just normal tall grass and patches of water. Let's keep something like this place here in mind…"



5 month(s), 15 day(s), 15 hour(s), 6 minute(s), 40 second(s) to deadline

A few days afterwards, Keita and his roommates found themselves in an island town of whitewashed buildings that overlooked a caldera lake at its center. Given the plethora of eateries and souvenir shops, the town appeared to be a popular haunt for tourists, but they all were strangely empty that day.

The reason for the seeming incongruity was quickly discovered after Keita and his roommates found a young child from the area, who told a tale of a particularly stormy night just a couple months before the start of their project that had abruptly upended that year's tourist season.

"And the sky was dark and thundering, and the earth was shaking- And there were these red and blue Pokémon that were all 'Rawr, I'm gonna eat you!' and 'Bump wiggle wiggle' with each other!" he exclaimed. "And then this green sky gecko showed up and the two got bored and left."

Keita and Satoshi traded blank stares with each other after hearing the child. Even the Pokémon with them seemed to feel as if perhaps the explanation the child offered was a bit… incomplete, and not quite telling the full, likely far more worrisome story.

"I'm starting to understand why that news coverage of the big storm last year seemed like it was missing something," Satoshi murmured.

"No kidding," Keita replied.

Meanwhile, the Director seemed to be rather enthralled with the child's story. "'Bump wiggle wiggle,' eh?" he mused aloud to himself, "Very interesting… and I think we have our new plot climax…"



4 month(s), 20 day(s), 5 hour(s), 43 minute(s), 0 second(s) to deadline

After roughly a month, Keita and the others on the development team completed their last-minute inspiration gathering and returned to the thick of virtual battle with the different builds of their project.

The game was at long last beginning to resemble something more than a handful of test results from a compiler, and it was finally robust enough to host a battle between Keita and Satoshi. The pair squared away with two devkits linked by a data cable for the occasion at the former's workstation, both the graphics artist and the programmer selecting monsters for their match through a debug menu that the two had grown increasingly acquainted with.

At that time, the build was sorely lacking in presentation, with all of the sprites other than those for the menu and its icons still filled with placeholder sprites. Still, that did little to dampen Satoshi's smug self-confidence as he moved his selector icon twice to the right over along a 2-line list of attacks and made a final, decisive move.

"And another victim goes down to Champion Satoshi!" the artist crowed.

Satoshi's Azurill happily cheered him on, while Bracket seemed adamant on protesting his trainer's loss. Paren gave an unimpressed glance up at her trainer, before quizzically tilting her head and trying to examine the machines in the hands of the programmer and graphics artist. The young Tropius finding herself as at a loss over just what the two other Pokémon and their trainers had gotten so worked up about.

"Yeah, yeah," Keita grumbled. "When are you ever going to hurry up and implement character sprites instead of these floating question marks?"

"You can't rush art or battle prowess, young grasshopper," the graphics artist tut-tutted in reply.

It was then that the Director, attracted by the racket the two and their audience were making, came in and after a little chin-scratching, turned his attention over towards the still-jubilant graphics artist.

"That's the tenth time that you've been able to defeat him with more than half a team left, Satoshi," he remarked. "Just what is the team that you've been using against him?"

"Ah, just something thrown together with later-game monsters," Satoshi replied, giving a beaming grin back. "That new six-move limit really opens up a lot of possibilities. Why, my team lead has four offensive moves, a recovery move, and a status move!"

"The thing's a blasted juggernaut. I honestly don't know how anyone's supposed to counter it with that sort of type coverage and recovery abilities," Keita harrumphed.

The Director quirked his brow at the programmer's sour expression, as paused and mulled to himself for a moment about Satoshi's string of good fortune.

"Hmm… what would happen if we cut things down to the original system of four moves each again?" the Director asked. "Could you two quickly reset the match so that the last two moves of each monster have no Power Points?"



4 month(s), 20 day(s), 5 hour(s), 32 minute(s), 12 second(s) to deadline

Once the Director's limitations were imposed and the pair progressed through the debug menu, Keita and Satoshi found themselves in virtual battle once again. This time however, fortune had turned against the graphics artist, and Keita was pleasantly surprised to find that luck had for once smiled upon him.

"Ha! Knew that things would finally turn around!"

Keita's glee rubbed off onto his Pokémon, as Bracket and Paren eagerly cheered on their trainer for his success with the mysterious handheld object. The programmer's victory came at the expense of Satoshi's visible dismay, who was still staring down blankly at his own devkit.

"Agh… that one wasn't even close."

While his two subordinates bantered with each other over the outcome of the test battle, the Director rubbed at his chin and mused to himself. If expanding the games' movepool in a casual match could cause such a radical difference in outcome, it couldn't help but make him think that…

"Hrm… maybe it is a little unbalancing to be adding more moves to monsters."



3 month(s), 30 day(s), 11 hour(s), 48 minute(s), 5 second(s) to deadline

Two months after the team's field work completed and the project was rebooted, the dev team's work was finally starting to resemble a game. During a bout of free time, Keita found himself glancing out the window while Bracket and Paren watched a young trainer on the sidewalk below toss small, colorful blocks from a dispenser to a Zigzagoon. The programmer tapped his foot impatiently, seemingly waiting on something, before shuffling over to check up on Satoshi at his workstation where he was poring over his monitor where a pair of dolls depicting black cat-like creatures with bells on them, monsters from the last set of Capsule Monsters games, sat on top.

"Eh? You're still working on those sprites?"

"That's right, I just finished up the base form of one of the starters."

The programmer looked at the screen, and paused with a small frown. On it was a creature that looked vaguely like a Torchic with what looked like a set of prominent head wings. Keita looked on as Bracket and Paren eyed the screen curiously, before giving a puzzled frown at his coworker.

"Eh? That's certainly different," the green-haired man said. "Isn't this supposed to be the starter that turns into that 'Latiiken' thing?"

"Not anymore it's not," Satoshi explained. "I got a memo stating that the line didn't seem to mesh well with the other two, so… we kinda binned everything and started from scratch."

"Hrm, a bit of a shame. I kinda liked those overgrown birds," Keita mused while looking over the screen. In another tab, he spotted a glimpse of another monster that appeared to be a creature like a Treecko with a banded stomach and bladed leaves like a Grovyle, a sign that perhaps their field work a few weeks ago had given these new Capsule Monsters games more of a Hoenn theming than he'd initially expected. Satoshi returned to playing with color values in his editing program, only to catch himself and look back at Keita puzzledly after he realized his younger coworker had been idle and away from his work for an uncharacteristically long time.

"Wait, so what are you doing right now?" the graphics artist asked.

"Oh, just waiting on a prank that I prepared for the sound team," Keita explained. "Some joker there tricked me into running a script with a hidden recursive delete command and made me wipe out a night's worth of work, so I figured I'd repay the favor."

Satoshi shot back an unimpressed frown back at his younger counterpart, and turned in his seat to face him.

"You should consider yourself fortunate the Director's out at the moment," the blue-haired man sighed. "And just what does your prank entail anyways?"

Just then, the abrupt sound of a cacophony of MIDI instruments could be heard blaring from the room next door, all tuned to a singular, distinctive instrument. Much to the displeasure of some voices from the neighboring room, which included the cries of displeased Pokémon and their similarly displeased trainers.

"Hey! This is supposed to be a test of the entire soundfont! Play one of the other instruments already!"

"That's what I've been doing!" another voice cried, "Everything's playing brass!"

Just as the graphics artist and the other Pokémon in the room turned towards the programmer and began to piece together just what he had been waiting on, Keita gave a contented smile and chuckled as he explained himself.

"Just gave them a little help editing their soundfont," Keita explained. "I was just waiting to hear their reactions to having some more trumpets in their lives."
 
Last edited:

Spiteful Murkrow

Early Game Encounter
Author's Note: Special thanks to @Tangent128, @Venia Silente, @Dragonfree , @Virgil134 for beta reading this chapter.



Part 5 - if ( Project->Status() != COMPLETE ) do debugging();



2 month(s), 0 day(s), 4 hour(s), 59 minute(s), 1 second(s) to deadline

Soon enough, the development of the new Capsule Monsters games began to draw to a close, but relief proved to be ever-fleeting. On an evening when the rain came down in torrents, and dark blue, wraith-like forms of Shuppet gathered under the eaves of the motel, Keita found himself once again wrapping up a session of typing into his text editor.

Code:
///////////////////////////////////////////

void add_listener(list, callback) {

    int last = LENGTH(list);
    list[last] = callback;
    list[last + 1] = NULL;

}

///////////////////////////////////////////


"Whew… Finally. No errors from compilation,” he muttered. “I never expected that generalizing event handling would turn out to be such a chore."

Bracket and Paren were once again sidled against the programmer watching his progress, and the Corphish and Tropius turned looking quizzically at him. After all, it seemed as if their trainer had finished his work and ought to be free to play outside by the pool with them… and yet his attitude seemed to be every bit as stressed as when he’d started his current task.

"Yeah, I know, we're almost there. But first comes…" the man squinted and furrowed his brow as he braced himself for an oncoming trial, "Merging."

As the man fired up his terminal, he couldn't help but feel some dread for what was about to happen. The team had reached the point of their projects where he and all of the other programmers working on their portions of the games could no longer silo any parts of their work from the playable build, and would have to piece everything together.

It wasn't so much putting all of the code together that worried the programmer. Why it was just a matter of entering a few commands into the terminal and resolving any conflicting snippets of code with each other… except after resolving those conflicts, everything had to work.

"Here goes,” the programmer said. “Once this thing gets all the conflicts sorted out, we should have a complete playable build… I hope."


Keita reluctantly pressed a button on his keyboard, and watched as a wave of messages flew by on the terminal's window. He braced himself after the text stopped outputting to his terminal and scrolled over the messages, where much to his astonishment, he saw none of the conflicts messages he was dreading to find.

"Huh? No conflicts at all? Must be my lucky day."

But as the green-haired man attempted to compile the patchwork of code, he realized that fate had not been nearly as kind to him as he had thought... an inscrutable message flashed onto the screen:

"'Bus Fault'?"

Keita grimaced at the message, which came when programs attempted to access locations in memory that just flatly didn’t exist. A far more arduous task to isolate and sort out than merely reworking text in class files. A sinking realization crept onto the man's face, as his Pokemon began to notice that something was amiss.

"Maybe I should have kept my yap shut…"

And they all began to understand that Keita’s ordeal was far from over, and that even at this late stage of the project, there would still be unpleasant surprises lurking in wait.



1 month(s), 19 day(s), 17 hour(s), 52 minute(s), 53 second(s) to deadline

The root cause of Keita’s bus fault proved to be one of the dreaded logical conflicts, times when the different parts of the patchwork of code would manage to be close enough to each other in form to not yield any errors while merging, but have critical differences in their meaning. A variable here, a function there, each with two or more completely incongruous expectations foisted on it by different portions of the game’s codebase.

After about a week of long and sleep-deprived nights, Keita and his compatriots were able to coax their codebase’s different components into complying well enough. On the day the programmer was able to finally wrangle the game's code into a compiling state, Bracket and Paren were there playfully batting cardboard tubes at each other as he let out a triumphant cry from his workstation.

"Ah! It compiled! It finally compiled again!"

The Tropius and Corphish put their papery distractions aside and cheered for their trainer. After all, he was happy, meaning that surely his problems had come to a close? Right afterwards, the programmer loaded the compiling build onto a devkit, started it up, and immediately after his employer's logo flashed on the screen, promptly watched the game crash to a white screen along with the celebratory atmosphere in his portion of the hotel suite.

"You’re kidding me."



0 month(s), 2 day(s), 0 hour(s), 2 minute(s), 34 second(s) to deadline

After getting the game’s build to compile again, it was time for Keita to join in with his coworkers on the oft-dreaded but ever unavoidable task of every practitioner of his craft, debugging. A time when one unforeseen problem after another would be discovered from the codebase, and would then have to somehow have their culprits teased out and fixed.

It was a sisyphean process, with bugfixes that would expose other components to erratic behaviour, or "improvements" that would spawn completely new bugs, all in the 48-hour race to the finish. And one particular nemesis had been particularly stubborn and time-consuming to put down - a weird stack overflow error that kept creeping up while adding game events to their corresponding listeners.

Keita looked over a list of problems while taking a Lava Cookie from a mostly-emptied box in the hopes that its alleged medicinal properties also worked on migraines. There were problems with attack animations causing the game to freeze, berries somehow giving monsters negative stats, the player character was apparently able to access illegal places on the map…

"There's no way that I'm going to get through all of these…"

The programmer sighed as he leafed through the still-massive list much as a doctor would perform triage, attempting to identify which of the problems were most important to prioritize next in the last two days. It was a crude and inelegant process, but there was only so much that could be done before the publisher’s timetable ran out, not that Bracket and Paren seemed to have much of an awareness of the gravity of the situation as they helped themselves to the unattended Lava Cookie box.

"At least they're all mostly small bugs that QA should be able to catch and send back to us-"

Only for his heart to sink as he attempted to shove aside a boulder on the devkit. Much to his horror, the pixelated boulder not only failed to budge, but the game immediately stopped responding to any of his devkit's buttons.

"What?! Impossible!"

Keita reloaded the build. And then again. And again. Only to find that the same glitch reappeared in each case. He then went to his workstation, and looked over a debugging log:

"How?! I'm clearly sending the correct event flags, and there's no exceptions or errors! So why is-?!"

"Ahem…" a voice interrupted, which immediately caused the programmer to turn from his monitor. His Corphish and Tropius similarly turned from the box of Lava Cookies they were raiding, pieces of their snacks still dangling from their mouths… as the Director had walked up and was staring down with a stern frown.

"Oh… Hello, Director… er…"

"Not to interrupt your work,” the blonde-haired man said. “But there's a bit of an urgent meeting that's going to start in about 5 minutes…"



0 month(s), 1 day(s), 23 hour(s), 43 minute(s), 38 second(s) to deadline

A short time later, Keita found himself watching the Director speaking before a small crowd of people in a familiar dingy room. The programmer looked about the room as his coworkers appeared visibly agitated, and others disheveled and visibly short of sleep much as he had been for most of the past week.

"So… As you all know, it's presently 48 hours until we have to deliver a build for final QA to the office… and… Well."

Keita noted that Bracket and Paren seemed uneasy about the atmosphere in the room. They apparently also felt the thick tension clogging the air as the Director attempted to tease out a way to break some less-than-pleasant news to his audience.

"Last I was aware, we had at least a dozen known bugs that render the game unplayable."

Some murmurs began to go about the room, as varying voices began to complain of the current state of affairs.

"Well, looks like we can kiss those bonuses goodbye," a man towards the back said.

"Grr… This is all the fault of those new programmers!” one of the veteran programmers fumed. “If it was just a team of four like last time, we wouldn't be in this mess!"

"Our fault?” a man with a Chimecho demanded. “We aren't the ones throwing in GOTOs every other function!"

"It's a perfectly acceptable practice when it's properly documented!"

The murmuring quickly evolved into heated bickering as the Director pinched his brow and attempted to rein in the project team with a sharp reprimand from his podium:

"Quiet! Quiet!"

The arguments began to die down as the Director took a sharp breath and started addressing the room.

"Look, it's a challenge, yes,” he reminded them. “But we as a firm have made it through tougher obstacles, and this one is no different."

The Director looked about his audience and, much to his dismay, found his reassurance had failed to lift his subordinates’ spirits. The man let out a quiet sigh and shook his head before continuing on in a quiet, resigned voice.

"All I ask is that until the deadline passes," the man pleaded, "you try your hardest. If we succeed, we succeed. And if not, well…"

There was an uncomfortable silence around the room, which the Director himself finally broke:

"We'll get there when we get there."



0 month(s), 0 day(s), 0 hour(s), 29 minute(s), 57 second(s) to deadline

Just a little over 47 hours later, Keita found himself at his workstation again. He had not slept a wink since the emergency debriefing. And by some stroke of luck all of the game-breaking glitches had managed to be caught and patched…

"Argh! WHY?!"

With one solitary, stubborn exception. The very same glitch he’d discovered with the boulder two days ago, which had eluded all remedy since then.

"I don't believe this!” he fumed. “30 minutes left, and my bonus is going to be withheld over this stupid boulder glitch!"

The programmer set down the devkit and slumped his head against his desk. This was how he was going to spend these last 30 minutes, just sitting and letting the inevitable pass. If there was a Duskull passing by outside which for some reason wanted to cart off the project’s spirit to the underworld, the man would not have resisted. It was then as he rested his head against his workstation that he felt a presence brushing at his arm.

Keita turned, and saw that it was Paren, the same Tropius that had spent most of the last year with him through his ordeal. Its highs, its lows, and now she was here to witness the deadline's expiration without a finished product.

"Hey girl, did I wake you up?" he sighed.

The Tropius curled her neck around Keita's shoulder and nuzzled her audibly troubled trainer, letting out a low, worried whine.

"Yeah… I know,” the programmer sighed. “I thought we were going to be done too…"

Much to Keita’s surprise, Paren nosed at the monitor. It crossed the programmer’s mind that Paren probably wanted to be amused by the images and text from the screen again... only to realize that at an unholy hour like this, she must be trying to egg him on to keep working, thinking a cheer would resolve his down mood.

"Don't worry about it,” Keita murmured. “It's not as if anything can be done about it right now."

The Tropius was not satisfied and proceeded to nip and drag one of her trainer's arms over to the keyboard before looking up at him. Keita shook his arm after Paren let go and looked back at the glow of his monitor, realizing that she must’ve wanted him to explain his work to her again. As foolish and pointless as it probably was after two days of failing to find his bug’s origin, surely there would be no harm in humoring her.

"Eh… Fine, I suppose that one last step through can't hurt…"

The man pushed the devkit aside and opened up his text editor, beginning to go through various files one by one.

"Uh… I guess I'll start from the top."

Code:
///////////////////////////////////////////

struct player player_data;

///////////////////////////////////////////


"This is the player struct, which handles all the information the game needs to keep tabs on about the player character," Keita said, before moving his fingers along his mouse’s wheel as he scrolled down with an audible whir.

Code:
///////////////////////////////////////////

player_data.controls = TRUE;
player_data.event_listeners = game_state -> strength_listeners;

///////////////////////////////////////////


"And this is the part where we actually track the event listeners for the player,” he continued. “It’s really a list from the global state, but it’s still important to do some bookkeeping like this."

Code:
///////////////////////////////////////////

add_listener(player_data.event_listeners, player_strength_callback);

///////////////////////////////////////////


"And here is where we add the Strength callback to the event listeners," Keita explained, before moving his mouse’s pointer on the screen opening another file.

Code:
///////////////////////////////////////////

if (case == STR)
    strength_player_event = dispatch_event(player -> event_listeners[index(STR)], & data);

///////////////////////////////////////////


"And this where the events are dispatched, it checks if the case is equal to the enum for Strength,” he explained. “The save state I left off on on my devkit has me walking back and forth in-game. Each step that I make sends out an event that the player's listeners respond to.

“Everything works. Except for this."

The man quickly loaded up a save state onto the devkit, right before his accursed nemesis for the past two days.

"When I try to move a boulder, I can move the rock just fine."

And indeed the pixelated boulder did move, only for the devkit to become unresponsive.

"But then it paralyzes my character and I have to reset everything just to get it to work again!” Keita exclaimed. “And I for the life of me I just don’t know why this is happening!"

It was then that his Tropius companion nosed at a line on the screen with a terminal cursor blinking beside it.

"Huh? Paren? What's it that you see?"

Code:
///////////////////////////////////////////

void player_strength_callback(hm_evt * event) {

█   if (event -> active = TRUE) {

        lock_all_controls();

    } else {

        unlock_all_controls();

    }

}

///////////////////////////////////////////

Keita looked for a moment, then realized which line the sauropod was attempting to point out. He did not know whether or not it was a lucky guess, or perhaps Paren genuinely understood the problem, but there was indeed a critical error with the portion of the callback on the screen…

The code didn't say "event->active == TRUE", which would have checked for equality, but rather "event->active = TRUE". It wasn't checking to see if the event was active, it was always making it so!

"Uh… yeah. That… would be a problem."

Keita hastily edited the typo in the code, compiled it, and after what seemed like an eternity, saw that no errors had arisen during compilation. He then sent the build to the devkit, and with bated breath, he pushed the pixelated boulder again.

And then he moved forward. And then backward. And then he accessed the menu. And quickly discovered that all of the buttons and their bindings were properly working.

"Yes!"

Keita threw his arms around Paren, gratefully hugging and patting the Tropius for her help. The Grass-type squirmed initially from Keita’s surprise intimacy, before easing and nuzzling her trainer back with a small smile.

"It's official, you're allowed to pig out on berries until you get sick!"

The programmer quickly stopped himself, realizing that it had been over 50 hours since he last slept and that his body and mind were harshly protesting any further deprivation.

"Er… could we put a pin in this until tomorrow?" he asked with a sheepish smile.

Paren obliged with a small nod, and Keita turned his attention to hastily uploading the fixed build. The upload terminated mere minutes before the deadline rolled over, with the young Tropius leading her trainer to a triumphant and well-deserved rest on his hotel bed, the Grass-type curling beside him as fatigue quickly claimed him.
 
Last edited:

Spiteful Murkrow

Early Game Encounter
Author's Note: Special thanks to @Tangent128 , @Venia Silente , @Dragonfree , and @Virgil134 for beta reading this chapter.



Part 6 - if ( Project->Status() == COMPLETE ) do release(); end;



The following day, after a well-earned rest that extended into the early afternoon, Keita joined other developers in the conference room. There, the Director was once again addressing the team, but with a message far more relaxed in nature than in previous meetings:

"Well, I'm not fully sure how you all managed to do it…" the Director said, pausing for dramatic effect, "But this is it. Congratulations on meeting the publisher's timetable."

The people gathered in the room cheered and hollered. Their ordeal was finally over, and they'd gotten the bonuses they'd coveted all year to boot! Sure, there were bound to be problems discovered later by quality assurance... but that was not their problem anymore! They had somehow made it- the games they made worked well enough, they would go gold in a couple weeks after some final QA, and they would be sold in stores just in time for winter holidays that year.

Bracket and Paren cheered on Keita and his coworkers as the lot basked in their moment of accomplishment. A few of the developers in the room grabbed drinks from a nearby cooler and began to settle into a well-deserved moment of reverie...

Creaaaak

All of a sudden, the door to the room opened and the festive mood abruptly ground to a halt. Much to the gathered workers' surprise, a brown-haired girl with bangs in red-and-white clothes strolled in with a cheerful, if somewhat disoriented smile. Keita and his Tropius and Corphish blinked at the interloping young girl as the three watched a pall fall over the room.

"Oh… Hello! I didn't know that there was a party here! Who are all of you?"

The members of the development team hemmed and hawed, unsure of whether or not they should just get up and shoo the youngster off. They'd had more luck with honey than vinegar when dealing with unwanted visitors in their Celadon office, but it'd been years since they were caught off-guard in such a fashion, so they'd need to think of some tactic on the fly.

After a moment's hesitation, Keita looked back up at the slides projected on the wall and noticed much to his alarm that they contained pre-release data that hadn't been distributed to media outlets yet! From the corner of his eye, he spotted Satoshi approaching the young girl, slipping a foot under a power cord as he approached.

"I'm the graphic artist! Aren't the Pokémon of Hoenn interesting?" he hastily interjected, deftly kicking the cord loose and unplugging the projector to hide their notes from the girl's eyes. He hushedly turned to Keita and whispered, "Psst! Did the publisher give us any Eevee to work with?", desperately hoping for a distraction for the intruding girl.

"Uh… I guess?" the girl said. "Anyways, I came because the hotel staff said-"

Keita shook his head at the graphics artist's question and also joined in on the effort to try and get the intruder out of the room, and plied her with some boring-sounding banter that probably sounded not far removed from a line the script-writers had come up with for some faceless NPC in their games.

"Me? You're talking to me?" Keita asked. “I'm the programmer. I wonder what the slots are like here."

"That's really nice, but-", the girl said while getting a bit flustered, only for the Director to cut in.

"I'm the game designer-", he began.

"They said that I should come here for my Pokédex!" the girl interrupted, frustrated with the way the strange people in the room were complicating her simple errand so much.

"Oh, is that right? You're working on a Pokédex?" the Director asked. “It's tough trying to complete it, but don't give up. If you do complete it, please come to me."

The director attempted to then shoo the girl out of the room, only for her to thrust a small red machine with an LCD screen into his face.

"Ahem."

The man sized up the readings on the machine's screen, staring with a moment's surprise as he realized that the numbers on it indicated that it belonged to a fully logged Pokédex. The Director wondered for a moment how on earth a girl so young could have managed that, only to realize he'd been handed a perfect excuse to be rid of the girl.

"Er… Wow! That's awesome! Yep, it's totally awesome!" he exclaimed while looking around for a pen and something to write on. "This Pokédex is completely filled! You really must love Pokémon! I'm so impressed!" the Director cheered as he hastily grabbed a sheet of Pikachu and Wynaut stationery that was bought from a tourist stand a few months prior.

He quickly scribbled a congratulatory message onto it and thrust the paper into the girl's hand, cheerfully exclaiming, "Let me give you something in recognition for your feat!" before pushing her towards the door.

"Now, do go on," he insisted. “Be sure to show your trophy to your mom and dad!"

"But you just gave me a piece of paper and a st-!"

The Director cut short the girl's protests by slamming the door shut behind her the moment she crossed the threshold back out into the hallway. He quickly turned the lock and turned back to the rest of the people in the room.

"Now… I believe we had a party to continue?"



After the party died down, Keita took the opportunity to treat Bracket to a rare mid-day playtime in the hotel’s pool. The Corphish swam about merrily, happily engaging in a splash war with Paren, not seeming to mind in the slightest that she was churning up far more water with her wings and extra bulk. Keita looked on bemusedly from a pool chair, leaning back with a quiet sigh. Just then he suddenly heard a loud call come from the distance, which jostled him from his rest and seemed to catch the attention of his Pokémon from the pool.

"Huh?!"

The three looked up, where there in the air above them, they saw the peculiar sight of a small herd of sauropods flying overhead. Keita stared blankly at the Grass-types in the air, and the strange sense of grace they seemed to have about them, as his mind turned back to the day he'd first found Paren, and what his graphics artist colleague had told him of the creatures.

"Satoshi was right," he murmured. “They really do fly past here…"

Just then, much to their astonishment, one of the larger Tropius in the group circled back from the group. The Grass-type banked in the air and flew down, coming to rest on the pool patio after knocking down an umbrella and calling out to her smaller counterpart in the pool.

"Eh?!"

Keita's Tropius abruptly clambered out of the pool and ran over to the grown Tropius, eagerly nuzzling her. The programmer was at first at a loss as to what would cause this, when he thought back to about seven months earlier… and realized that although Paren had grown since then, this larger Tropius recognized her, and from their interactions was more than just a mere companion.

"Oh… this is your mother, isn't she?", he murmured.

All this time, he'd assumed that Paren never would've found her herd again, and yet in spite of the odds here it was, along with a choice that neither of the two would have expected to have to make. Over the past nine months, he’d watched the scared and confused Tropius he and Satoshi found on the pool concrete grow, both physically and closer to him and Bracket. She’d been there through rain and shine, at multiple points when the project seemed lost, and was the reason why they were making their publisher’s timetable in the first place!

… could he really just let all of that go?

Paren looked over at Keita and Bracket just as he climbed out of the pool. She then turned her gaze towards the mother Tropius which she was still pressed up against, and began to visibly falter. She must’ve been going through the same gnawing indecision as her trainer, trying to weigh the life she had interrupted after getting separated from her herd that by fate had come back versus the life she’d shared along with Keita and Bracket. The Grass-type stood there blankly for a moment, as if she were standing on the precipice of two worlds, and unsure to which one she ought to go to.

Keita looked down at the green and yellow ball that belonged to the faltering Tropius and, after a long pause, answered her.

"It's alright," he insisted. “If you want to go, go."

Paren appeared surprised by the programmer's attitude, and at first started to head over to Keita, thinking that perhaps the sleep deprivation was affecting him... only to be interrupted by her trainer embracing her tightly and patting her head.

"It's fine. I can see that you two mean a lot to each other," he insisted. “And I'm sure that we'll meet again."

The younger Tropius nuzzled Keita back, and after a moment lingering in their shared embrace, the programmer let go. Paren shuffled back falteringly, before she turned and began to head off. A faint chime rang out, as the Tropius glanced back towards Keita just in time to catch him doing something to her Nest Ball that caused a blue light to connect to her, and then dissipate.

"You stay safe, you hear," Keita called back. “I'm totally putting you back to work debugging the next time we meet!"

Paren gave a bemused toss of her head as Bracket and his trainer waved her off and bade her farewell. She waited for the elder Tropius to jump up and take flight first, and paused to look back at her companions one last time. After a moment's hesitation, she took to the skies with her mother, disappearing into their herd as they headed off into the distance.



While Paren flew off into the blue skies over Hoenn, the Director was kept busy back in the Cove Lily Motel with a teleconference with his superiors, wrapping up his account of the project to a few men gathered around a table on the screen.

"And that’s how the project managed to make the timetable's final deadline."

“Really, from what we'd heard of all the struggles your team faced, plus having to cut half the roster at the last-minute—even my favorite, that Shellos one!—we were starting to get worried," one of the men said. "But I see that Hoenn wound up contributing more than just a convenient place for your team to meet."

"It's quite fascinating, really," another added. "When we started to base game settings off of real-world locations more with the second set of Capsule Monsters games, at first I thought that we'd be making a massive mistake. But maybe the strategy lends itself to development better than we thought."

The Director chuckled, "What can I say? In a big world full of wonderful things, you'll never run short on places and things to draw inspiration from." And it truly was, he thought, especially if his junior roommate's account of the last-minute discovery that saved the project's timeline was remotely accurate.

"That is true, and I think that the team back in our Celadon office ought to be able to plug gaps somewhat with those remakes of the original games we pitched to our publisher," one of the men on the screen replied. “Not that we can really do much about the last-minute cuts – after all, what are we supposed to do? Just add monsters in the middle of a new generation of games?"

A few nervous laughs came from other channels on the videoconference call. The idea was surely a nonstarter. After all, how would they ever update the ROMs of the millions of cartridges that would be produced for data that was flatly not on it? That card reader peripheral their publisher had been trying to drum up interest in? The internet?

"I suppose it'll have to be something we learn from for future projects," the first man said. “I think that perhaps the local weather didn't lend itself well to an orderly development, even if things wound up pulling together at the end."

"Perhaps for the next Capsule Monsters games your team handles, we should consider having the developers work someplace a bit colder," another man jokingly suggested. At once the conference call burst into laughter and the Director couldn't help but join in. Sure, it was premature, but with Hoenn a tropical region, they'd have all the time in the world to narrow down ‘someplace a bit colder'. Perhaps if they were feeling adventurous, they'd try developing in Sinnoh!

Developing in Sinnoh… now there was a thought to keep in mind…



About a week after the work on the new Capsule Monsters games concluded, it came time for Keita to leave Hoenn. He looked out from the deck of a ferry, back out towards Mossdeep City- his home away from home for the past year- vanishing over the horizon.

Yet he could not help but be troubled by something that had been said towards the beginning of that year. Back then, the Director had asserted that the bonds that he would form during his project would far outlast its end. While the man had indeed developed a number of contacts with his partners and roommates during his experience…

He couldn't help but feel as if they somehow rang hollow.

Keita's thoughts were interrupted after he felt his Corphish tugging at his pant leg and pointing off in another direction.

"Huh? Do you see something, Bracket?"

Keita turned, and saw his Corphish was pointing off at a herd of flying Tropius passing nearby. Among them was a smaller individual, who as she passed, made eye contact with him and his Corphish and gave out a joyful call.

"Heh… guess we're not the only ones who took something away from this project."

And in that moment as his and Paren's worlds fleetingly brushed up against each other, the programmer's doubts about the Director's words finally melted away under the Hoenn sun.
 
Last edited:

Spiteful Murkrow

Early Game Encounter
Author’s Note: No, your eyes are not deceiving you, I’m back with a new update, since I’ve got some new content for Context Switch. It’s the eve of the 20th anniversary of Ruby and Sapphire’s original launch in Japan, and it only felt natural to whip up a cute little epilogue for the occasion and to make the FFN version of this story look like it’s been touched more recently than 8 years ago, but let’s not get into that. Said Epilogue wound up turning out a bit longer than expected, and it didn’t feel right to me for an Epilogue to be a full 50% larger than the story’s longest chapter, so I turned it into a double-feature instead and gave it a very R/S titling scheme. The first half of said Epilogue will go live right here and now, on the anniversary of the original Context Switch’s conclusion right before ORAS’ launch back in 2014, with the second half going live at some point on November 21… in Japan Standard Time.

Special thanks goes to @Dragonfree , @Venia Silente , @Tangent128 , who beta read and helped switch over the initial code utilized in the titles and in parts of this Epilogue into a format consistent with C++. Though that’s enough prattling, let’s get straight back into those trumpets… if from a different era.



Epilogue : Series 1 - class Y20_Anniversary_Special : public Context_Switch, Continuation<Context_Switch> {};█



A man with short and vaguely green-tinted hair made his way forward, the sound of his footsteps clattering against metal ringing out. The man turned back to see his Crawdaunt following him down the metal catwalk, taking his time to gape about excitedly on his way down to the dock it led to. Even if he and his Pokémon were both older and more experienced now, from the way Bracket was reacting, he supposed some things really didn’t change in life.

The man supposed that was to be expected. If the sight of his present surroundings still stirred up familiar feelings for him, of course it would do the same for his Pokémon. It’d been almost a decade since the two of them were last here, but it was still Lilycove City, alright. The sprawl along the seaside had grown a bit since then, both taller and further out, but some things remained the same. The air was still balmy and tropical with a tang of sea salt to it, and the beaches and sandbars were still flecked with the distant figures of visiting people and their Pokémon.

The process of going through the ferry terminal and over to the baggage claim to wait for his luggage went by much as the man remembered it. The terminal had gotten a fresh coat of paint, and the shops had changed around since he’d last seen it.

The technology inside the building had definitely come quite a ways in the span of a decade, too. Flat panels showed advertisements and departure schedules, and there were even a couple of holographic displays set up. Ones of the same sort that that ‘Lysandre Labs’ company in Kalos had been making a splash with in recent years…

But the people and Pokémon milling about inside the ferry terminal somehow seemed familiar, even if they were a bit different. As he waited for his baggage to come, the man let his eyes drift off toward the surrounding travelers. He noted the backpacker checking a flip phone as he rested against his Probopass companion, and also the Exploud a little ways off helping a white-haired old woman along—a pair that felt as if he’d seen them before. Keita snapped back to attention after feeling a sharp tug at the hem of his shirt and turned to see his Crawdaunt raising a claw and pointing over at a man with bluish-black hair with an Azumarill at his side approaching.

“I’m surprised you didn’t just buy a plane ticket, Keita,” the man chuckled. “Ferry tickets aren’t that much cheaper than them these days.”

The two were old colleagues of theirs: Satoshi and his Pokémon, even if she’d evolved since the last time he’d seen her. The Azumarill waved in greeting and drifted off to chatter with Keita’s Crawdaunt, a treat that the two hadn’t been able to enjoy together in some time. But as pleasant as it was to run into old faces again, Keita couldn’t help but blink puzzledly at the blue-haired man.

What was he doing here of all places?

“... Huh? Satoshi? You’re also working on the new project?”

“Well, I figured it was something different from those trading card artworks I’d been making lately,” the blue-haired man explained. “Sounded like as good a reason as any to get out of those offices back in Celadon City, huh?”

Keita cocked a brow back in reply. He knew that the company had gotten into the practice of sending out teams to work on new Capsule Monsters games in the field ever since his first project with them, but…

“Wait, I thought the region for the new games was supposed to be based off of Kalos, and that a team went out there a full year ago,” the programmer remarked. “Though why Hoenn anyways? The company was pretty tight-lipped about why they needed a team out here as well.”

“Gotta keep up with the times, Keita. We’re doing parallel development,” Satoshi chuckled. “When you’re working on a franchise as big as the one we are, you sometimes need to be able to walk and chew gum at the same time.”

A chittering cry turned the pair’s heads as they saw Bracket scuttling after a worn, red suitcase on the carousel with various stickers attached to it, nipping and tugging at it with his claws. Keita clicked his tongue and hurried over as the Crawdaunt began to pull it off, quickly steadying it as he helped his companion guide it to the ground and set its wheels on the floor of the ferry terminal.

Bracket gave a sheepish click of his claws and pat at the suitcase, which had a few scuffs and marks here or there from times in the past when the Water-type had handled it a bit too roughly handling. From the lack of any new blemishes, Keita supposed Bracket was getting more experienced at pulling it around, if only by degrees. The sound of approaching footsteps telegraphed Satoshi and his Azumarill’s arrival. The blue-haired man gaped over the suitcase briefly and turned to Keita with a quizzical frown.

“Didn’t you pack a bit light for a long stay, Keita?” Satoshi asked.

Keita grabbed at his suitcase and set it on its wheels, his Crawdaunt staring up at him with a tilt of his head. The green-haired man looked down at his bag and the worn stickers on it and let his eyes linger over them for a brief moment, before shaking his head in reply.

“Nah, after the last time I was here, I’m not too worried about that.” Keita laughed. “I’m sure I’ll be leaving with a lot more than I came with again when it’s time to go.”

“If you say so,” the older man replied. “Though we should get going, the bus should be pulling in at the entrance any minute now.”

The stickers on the bag spoke of many stories from the years since Keita had last been here, of one improbable place after another that his job had taken him to. There were the stickers from Sinnoh from when what was then called Capsule Monsters NTR was undergoing development, with large chunks of those games coming together in a seaside resort not far from Lake Valor. Many sleepless nights had passed there to get those games finalized, with hurdles like hundreds of gender-specific sprites had to be dummied out late in development and a save system that for much of development just stubbornly refused to work. Then there were the ones from Unova from when what was once Capsule Monsters TWL had been stitched together in repurposed workspaces from the Unovan localization offices, 22 floors above street level in Castelia City. Putting those games together had been a saga in its own right, especially since a good chunk of development coincided with an attempted regional takeover whose effects wound up scuttling plans for the franchise’s first worldwide release.

And yet, somehow, things had all led back here. Where Keita’s journey had initially begun. The programmer supposed it shouldn’t have been that surprising to him. After all, his and Satoshi’s reason for returning was apparent just up ahead: a placard with a sign for a bus with the eye-shaped logo of their employer.

“Funny, it sure doesn’t seem like that much has changed,” Keita remarked.



"Good afternoon, everyone. And welcome to the Anniversary Team for the next generation of Capsule Monsters."

Keita blinked after hearing the words come from the front of a crowded room with low-slung tables and cushions. A bit neater than he remembered it, but it was still the same old conference room from the Cove Lily Motel that he remembered from almost a decade ago.

At the front of the room was a man with brown, vaguely reddish hair standing at a patch of blank wall lit up by a projector, the Director for this project. Keita vaguely remembered him being on the map design team the last time he was in this room. He couldn’t say he’d have ever guessed back then that one day he’d be filling the old Director’s shoes like this.

But even so, a number of things about the gathering felt eerily familiar. Keita was seated next to Bracket again much like he was back for the initial briefing of Capsule Monsters AGB, his Crawdaunt just a bit bigger and a bit less restless than last time. And the way that some of the developers in the room were trading puzzled looks with one another definitely stirred up a sense of deja vu.

“Wait a minute, ‘Anniversary Team’?” a younger man towards the front asked. “Anniversary of what? Aren’t we working on Capsule Monsters CTR here?”

“Nah, that’s the team out in Kalos,” a bespectacled man scoffed. “We’re focused on those remakes that are sharing its same engine.”

“Yeah, where have you been?” a trainer with a Porygon2 from the next table over chimed in. “The last time an Anniversary Team was put together was after Capsule Monsters NTR, when we remade the second set of games from the franchise.”

“Really? Could’ve fooled me with all the attention you gave to the first games’ region,” his neighbor teased.

“Whatever. Anyhow, it’s been close to a decade since then and this is the next set of remakes on the list,” another developer harrumphed. “About time too, if you ask me.”

… Had it really been that long since the last time he and Bracket were here? Keita supposed that ‘lingering nostalgia’ was as good a reason as any for the new Director to decide to develop a new set of games here of all places. Why, the only way things would’ve been more nostalgic would’ve been if the Cove Lily Motel remained the same antiquated relic he remembered it being. But it had caught up with time since then and found itself on the cutting edge of trends and technology… from about ten years ago.

The new Director sternly cleared his throat from the front of the room, briefly narrowing his eyes before he continued on.

“Things aren’t quite so simple this time. Capsule Monsters CTR is a significantly bigger project, since it will be the first set of main games from the franchise to be fully built around 3D models,” the red-haired man said. “That is why management found it appropriate to put our project together in parallel along with the main team’s work out in Kalos. As such, we will be expected to help them refine the engine and generate content that will need to be present in their game at launch.”

The Director’s remarks drew a few grumbles from some of the older members of the crowd. A man with salt and pepper hair towards the back of the room piped up with a sharp scoff.

“I’m sorry, but why are we supposed to do this again?” the man asked. “I heard those developers that make those games with the warring demons and angels, the ones just the next neighborhood over from our Celadon office, were planning on doing a sprite game for their first one on this new hardware. So why should we change what we already know works?”

“Yeah, we just had a set of games sell over 10 million units using overworld sprites and their direct sequels that are about to go gold in a couple months. They have over 600 monsters in them before counting alternate forms and use the same engine just fine,” another older developer chimed in. “The merchandising and media teams need firm delivery dates for our work. If we switch to a new engine that needs larger assets and more complex animations, what are we supposed to do if making them takes more time and resources than our production schedules initially assumed? Just drop entire batches of monsters and moves from the games?”

“Tch, you two are acting like we’re some small indie company or something like that,” the Porygon2 trainer piped. “It’s a remake. How much effort is it just to make the same areas all over again with a fresh coat of paint? Why, the last I checked, the art team even had a model of that area based off the Battle Frontier ready to go!”

“All of you, enough already!

A sharp bark from the red-haired man abruptly settled the conference room down, and even Bracket stiffened up from the man’s chiding. Keita noted to himself that the former map developer must’ve learned a thing or two from the old Director about how to quiet a crowd. Why, he even gave the same piercing glare to communicate his displeasure. The new Director let his scowl linger for a moment, before he relented and shook his head as he continued on.

“I understand that some of you have worked on your share of projects in this firm, some of you right alongside me in the past. But even so, this isn’t a project to be underestimated. This one will require all hands on deck with a broader team of 500 just to handle all the assets and the engine that will be shared between our project and Capsule Monsters CTR,” the new Director insisted. “We even had to tap some of our affiliates would normally be making spinoff games for help. Our publisher is additionally expecting us to take advantage of certain features of their new hardware, including its built-in stereoscopic 3D abilities.”

“But isn’t this just a remake?” a bespectacled developer from the front asked. “We already know exactly what we need to make, so shouldn't this be straightforward?”

“Hardly. Almost everything for the games built from this new engine will have to be built from scratch,” the new Director retorted. “Thanks to needing to support new features such as that new temporary evolution mechanic, we won’t be able to just retread old ground. There will be new assets to make, new scenarios to design, and our work will need to mesh together with one of a team halfway across the world from us right now.”

The red-haired man frowned and shook his head briefly before looking over at the other developers with a stern frown.

“In short, you should all expect to be kept busy for some time,” he said. “This will be the most challenging project that the firm has taken on since the days when the very first Capsule Monsters games were being developed.”

Keita sucked in a breath as nervous murmurs began to float about the room. The firm had always had a way of underestimating how challenging projects would be, but more challenging than a project that took six years of development time and almost bankrupted the company? Things couldn’t possibly be that bad, could they?

Keita felt a tug at his shoulder, looking over to see Bracket staring up at him with a puzzled tilt of his head. The developer paused for a moment, rationalizing that however difficult these new games would be to make, that they’d surely manage to overcome it. Even if he’d joined the company after those chaotic early days, he and his Pokémon had grown since then. As had everything about the games they’d worked on.

And every time, even in the darkest moments such as the woes of getting a working save system together for Capsule Monsters NTR, or the saga of finishing Capsule Monsters TWL amidst part of its team getting caught up in regional turmoil… they’d pulled through.

And surely they would this time, too… even if Keita still found himself subconsciously clinging to the table in front of him as the red-haired man at the front of the room continued speaking.

"Which is why our publisher has quite generously given us an eighteen-month timetable for our initial stage of development,” he said. “After which, they expect us to have our content ready in time for the main games’ release."

At once, the room burst into a loud commotion, as various developers around the room broke out into startled outcries.

“Eighteen months?! Who on earth came up with that schedule?!”

“That’s barely a year after when we’re planning to launch those games that the Unova team’s QA testing right now!”

“Those console spinoffs with the theme park minigames had more development time than that!”

Even Bracket seemed to be taken aback, as the Crawdaunt turned to his trainer with a worried chitter. But strangely enough, Keita couldn’t help but smile. He was sure he’d wind up tearing at his hair on many a night a few months from now, perhaps even sooner than that… but somehow the news of this new deadline didn’t faze him.

Perhaps it was the place, or the way his colleagues were baying in protest… but the announcement felt like old times.

Except, on this occasion, they’d have the luxury of six extra months to work with.

“Heh, well, at least it’s more than twelve. It can’t be that bad, right?”
 

Spiteful Murkrow

Early Game Encounter


Epilogue : Series 2 - for (series& s: Anniversary::getParts() ) { if (s.chapter_id()==2) { s.team() = tuple_cat(s.team(), "()"); } }█



After the initial briefing and formal launch of Capsule Monsters CTR’s Anniversary Team, Keita and his Crawdaunt made their way along the Cove Lily Motel’s hallways for their hotel room and base of operations for their upcoming project. A few things had changed since Keita last remembered them: the paint was no longer peeling and was a more subdued color than last time, and the doors to the motel rooms now sported readers for magnetic keycards. The rooms’ furnishings had also changed a bit, as the televisions were built in mind for better quality video signals and different aspect ratios, even if they were still built around leaded tubes that had increasingly fallen out of favor in recent years. Why, even the glorified puddle of a pool had grown a bit and the patio furniture had gone from sun-faded to just cheap-looking, which had caught Bracket’s eye on the way over. A fresh coat of paint, but in the end, the motel was much the same as Keita remembered it.

That had been a couple hours ago. Now, Keita was seated at a desk with a shoulder bag propped up against a workstation bathed in the glow of a monitor, one of those flat-panels that had started catching on around the time of his stint in Sinnoh. From its squarish aspect ratio and how dim it was, it was probably made sometime around then, too.

The developer pawed at a clamshell device with twin screens tethered to a box next to the workstation. There were a few extra buttons and a sliding pad, with a screen on the top that was a little larger than the one on the bottom, but at a glance it didn’t look that different from the last devkits he’d worked with as he turned back to his monitor with his Crawdaunt.

Code:
///////////////////////////////////////////

while (&_monami_ref->ontouch) {
    callback_t* callback= nullptr;
    cb_args_t callback_args {};
   
    auto add_listener = [&] (callback_t* cb) -> void noexcept {
        monami_listeners.add_listener(monami_session.event_listeners, cb);
    };
    switch (touch_pointer.uielem) {
        case monami_flags::IDLE:
            &monami_data->wake();
            add_listener(&monami_active_callback);
            callback= nullptr;
            break;
        case touch_ui::TREAT_MENU:
            add_listener(&treat_mode_callback);
            init_treat_mode(&monami_data);
            callback= nullptr;
            break;
        case touch_ui::TREAT_BAR_OPEN:
            callback= &treat_mode_callback;
            callback_args= make_tuple(touch_pointer);
            break;
        case monami_flags::TREAT_MODE:
            callback= &mon_render_callback;
            callback_args= make_tuple(monami_state, touch_pointer);
            break;
        case touch_ui::TOUCH_GAME_MENU:
            game_menu_load();
            add_listener(&minigame_menu_callback);
            callback= nullptr;
            break;
        case touch_ui::GAME_MENU:
            callback= &minigame_menu_callback;
            callback_args= make_tuple(touch_pointer);
            break;
        case touch_ui::SELECT_EXIT:
            callback= nullptr;
            monami_quit(monami_state, &monami_data);
            break;
        case monami_flags::MON_PET:
            add_listener(&mon_pet_callback);
            callback= nullptr;
            break;
        default:
            refresh_camera();
            callback= &mon_render_callback;
            callback_args= make_tuple(monami_state, touch_pointer);
            break;
    }
    if (callback) {
        apply(callback, callback_args);
    }
}

///////////////////////////////////////////

And yet, here he was, poring over a block of code that while it shared a common pattern with any number of files from projects he’d worked on in the past, controlled processes that their team would’ve never been able to accomplish in a thousand years on any of the devkits he’d used to work on games prior to this one.

The programmer scrolled his mouse, stepping through the text on the screen line-by-line as he spoke up to the Water-type waiting at his side.

“Alright, Bracket, this is the main handler that manages listeners for touchscreen inputs when in the new interactive minigame mode,” Keita began. “All of the cases seem to be triggering as expected, but there’s something that’s going wrong with the touchscreen pointer every now and then. Sometimes, when it registers as petting a monster, the monster will always react the same way regardless of if you pet it in a place where it’s not supposed to like it…”

Bracket tilted his head with a puzzled chitter at the mention of ‘petting’ and brushed up against his trainer. Keita turned over his shoulder and noticed the sky was already turning a shade of orange. He blinked and sighed briefly, turning to run his hand over his Crawdaunt’s head crest. Even patient listeners needed a break from work sometimes, he supposed.

“Not even a day in and already hitting the grind, Keita?”

Keita got up after hearing approaching footsteps and, much to his astonishment, watched Satoshi round the corner along with his Azumarill. The green-haired programmer blinked for a moment before he cocked a brow in surprise.

“Wait, you’re my roommate again, Satoshi?” Keita asked.

“I might have pulled a few strings with room assignments,” Satoshi chuckled. “But hey, it’s not like we’re both going to be here for the full eighteen months. Might as well take advantage of the opportunity to catch up for old times’ sake.”

Keita glanced off at the other workstation in the room and noticed there was a set of orange-and-cream dolls with teal accents that vaguely resembled a Gible and its evolutions. He supposed he should’ve guessed it was Satoshi’s from the way he’d kept dolls of older games’ monsters back in the day. Keita watched as Bracket drifted off towards Satoshi’s Azumarill and couldn’t help but smile for a moment, only to catch himself and shake his head back at his older colleague.

“I mean, I was busy with a bug affecting monster animations in the new minigame mode. I’d worked out most of the kinks before I came over, but there’s still a couple edge cases I’m having trouble hunting down,” Keita said. “I figured that I should square it away before the assignments really start piling up.”

“You’ll have time for that later, Keita. You just came off a ferry, relax a bit!” Satoshi scoffed. “I heard the motel renovated their pool recently, you might as well take the opportunity to let Bracket soak in it while you can.”

Keita let his eyes drift towards his workstation and the terminal window on the screen, before hearing a chitter come from the door. There, Bracket was already at the threshold to the hallway alongside Satoshi’s Azumarill, waving and motioning at his trainer with his claw to follow. The developer traded glances between the two Pokémon briefly, before stepping over and holding a pair of keys down on his keyboard that put the workstation to sleep. He got up and snatched his shoulder bag off the desk before turning back to his roommate with a small smile.

“... I suppose it can’t hurt too much to take things a little easy on the first night.”



The skies flushed burnt orange as Keita and Satoshi sat by the pool, watching their Pokémon trade splashes in the water with each other as the two trainers sipped from canned drinks—freshly purchased from a vending machine in the motel lobby. All the while, the sound of Bracket and Satoshi’s Azumarill playing in the water blended into the background for Keita as his eyes drifted towards the pool patio’s concrete.

“Something up, Keita?”

Keita looked up and saw his older colleague standing beside his pool chair. The green-haired man sighed, setting aside his drink can as he slouched forward and looked off at the setting sun.

“Do you think we’ll be able to pull it off, Satoshi?” the programmer asked.

The graphics artist sat down on the next pool chair over, quirking a brow back in reply.

“What do you mean by that?”

“This whole project,” the programmer insisted. “It sounds like it’s got a much bigger scope than any of our old ones. I get that there’s more people on the team now, but are we really going to be able to get the bones of everything together in eighteen months? With barely a year afterwards to actually make another finished game on top of it?”

There was a brief moment of silence between the two, before Satoshi shook his head in reply and raised his drink to his mouth.

“... We’ll find a way. We always do,” the graphics artist insisted. “Besides, it’s a new hardware generation. It’s not as if we’re going to be expected to stick to a yearly release schedule forever.

Satoshi sipped from his drink as Keita sank back into his pool chair. He supposed that Satoshi’s confidence had never steered him wrong in the past, but with how increasingly complex the games they’d been working on had been getting, the programmer was starting to wonder if perhaps they were getting overstretched.

Keita sighed and reached for his drink can when he noticed a shadow briefly fall over him before drifting off, and then another, and then one over the pool. Bracket and his playmate stopped splashing each other and looked up, the Crawdaunt of the pair gesturing upwards. Keita blinked and followed the Water-type’s claw up into the sky… where he saw them.

A herd of Tropius, flying overhead and headed due north, as one would expect from a migratory flight in the spring.

“Oh right, it’s that time of year again, huh?”

“Yeah, that’s part of the reason why I suggested you take a break. I figured it’d bring back a few memories,” Satoshi said. “The front desk said that since we were last here, the pool is sometimes visited by Tropius during migration season.”

Keita couldn’t help but quirk a brow at the comment. He supposed he’d seen wild Tropius come by this very pool firsthand in the past, but a shallow pool surrounded by concrete still felt like a peculiar choice for a stopover. Before the programmer could ask further, Satoshi caught himself briefly, before briefly raising his drink can and speaking up again.
“Or I guess it’s a Tropius that visits,” the graphics artist corrected himself. “They say there’s one in particular that always seems to come by here.”

It must’ve been from a learned habit or something; maybe a tourist had fed that Tropius one year and it’d associated the place enough with food to make a point of coming back. Keita supposed an explanation like that would make a sort of sense, but…

The programmer cast a glance off at Bracket in the pool as he studied the passing Tropius and clicked his claws. He wasn’t sure how Bracket coming into proximity to a wild Pokémon suddenly swooping in would play out. After all, the Crawdaunt had a way of riling others up sometimes, and if he were to get into a squabble with a Grass-type...

“Not sure how well that’s going to turn out with Bracket,” Keita murmured. “He’s mellowed a bit since evolving, but he’s still a bit of a feisty type-”

A sharp call rang out from behind that made Keita trail off and look up to see a Tropius banking and swooping down in a low arc over the roof of the Cove Lily Motel. The Grass-type fluttered down, coming to a stop along an empty patch of concrete at the other end of the pool. Everyone present, both human and Pokémon, stopped and gaped at the newcomer as the Tropius fanned out its broad wings and craned its neck around.

“Wow, speak of the devil!” Satoshi exclaimed. “Talk about hitting the jackpot!”

In the pool, Keita and Satoshi’s Pokémon stiffened up after hearing the Tropius’ call. There was a moment of stunned silence, before Bracket hurriedly swam over and pulled himself out of the pool, scuttling over while still dripping water off his body’s plates. Keita grimaced and at once reached for his bag. He knew what Bracket seeking out a challenge looked like, and even with his size as a Crawdaunt, Bracket was particularly ill-equipped for the one he was picking right now with the fully-grown Tropius on the pool concrete.

“Oh boy, you sure know how to pick your fights, Bracket…”

Keita hurriedly snatched Bracket’s Pokéball from his bag and darted over. He was ready to recall his Pokémon when much to his surprise, the crustacean stopped a few paces away from the Tropius and gave a wave of a claw. The Tropius, probably a her from the Pokémon’s size, seemed to perk up and gave a cheerful wave of her wings as Keita traded glances between the wild Pokémon and his Crawdaunt with a blank expression.

“... Bracket?” he asked. “What’s going on?”

The Crawdaunt chittered in reply and gestured at the Tropius. Keita stopped and turned back to the Grass-type blankly for a moment, before the Crawdaunt shook his head and raised his pincers, clicking them vertically almost like quotes of some sort.

Wait a minute, quotes? It sounded crazy, but was Bracket trying to tell him that this Tropius was…?

Paren? Is that you?

The Tropius turned her neck around, and after seeing the green-haired man, paused a moment before having a flash of realization. She let out a joyful cry and tromped over, leaning in and nosing at Keita’s chest before he could react. From the side, Satoshi walked over with a disbelieving blink as his Azumarill came up beside him with a similarly awed expression.

“... Oh, so she’s the Tropius that keeps visiting the pool,” Satoshi murmured. “I suppose she’d definitely have more of a reason than most other Tropius to get nostalgic over it, though talk about it being a small world.”

Keita stared up into the Tropius’ eyes, still incredulous at the turn of the events. Even if she’d grown a bit since they’d last met, from the way this Tropius and Bracket had interacted with each other, this was definitely Paren. Keita set aside Bracket’s Pokéball and raised a hand as a smile began to creep over his face. He brought it up to the Tropius’ head with an affectionate pat.

“Oh, so this place brings back memories for you, huh?” he asked. “Well it’s good to see you again.”

The Tropius shifted her head as something seemed to catch her eye. Keita followed along as the Grass-type lowered her snout up against Bracket’s Pokéball, giving it a couple tentative nudges much to the programmer’s confusion.

“Huh? Paren? What are you doing?” Keita asked. “That’s just Bracket’s Pokéball.”

The Tropius hesitated a moment, before pacing over beside Keita’s Crawdaunt and turning around. The Grass-type let out a determined cry, batting her wings out wide as the programmer and his graphics artist colleague looked on with puzzled blinks.

“... I’m not sure if I understand you there, Paren,” Keita murmured.

The Crawdaunt let out a sharp, scolding chitter before moving a claw forward with a swift motion, as if he was throwing something. The programmer blinked briefly before his eyes drifted down to Bracket’s Pokéball and he looked up to see Satoshi looking over at him with his Azumarill.

“I think… Paren wants to join you, Keita,” Satoshi said.

Keita stiffened up briefly as his mind turned back to the time when he’d parted ways with Paren so many years ago at this very pool. A few of the details had grown hazy since then, but after a little time to try and recall it, one thing he’d said before they went their separate ways stood out in particular:

“I'm totally putting you back to work debugging the next time we meet!"

Had Paren really remembered those words after all this time?

“... I suppose I did say I’d put you back to work if we ever met again,” the programmer murmured. “But it’s been so long, and life’s really different from what you’re used to right now.”

The Tropius bobbed her head briefly before walking up and nosing at Keita, giving it an expectant tilt. From the side, Satoshi gave a small chuckle and shook his head.

“Seems like Paren already knows that, Keita. And who knows? Maybe she’ll wind up saving another project down the line,” the graphics artist chuckled. “But it’s your call. You’re the one who’d be taking care of her, and Tropius aren’t exactly small Pokémon.”

Keita looked up at the Tropius and hesitated for a moment. He wasn’t sure how on earth he’d make things work with Paren coming back into his life like this out of the blue, but hadn’t working around the unexpected been the story of his life as a programmer since they’d parted ways?

What was an extra Tropius on top of it?

A broadening smile crept over Keita’s face, as he brought a hand up and stroked at the Tropius’ neck.

“If you’re sure about this, then I suppose I can’t exactly say ‘no’,” he said. “Just don’t say I didn’t warn you, Paren.”

Keita reached for his bag and after a bit of rummaging around, he came across a red-and-white Pokéball. A spare he’d kept for if something ever happened to Bracket’s, like him accidentally crushing it between his claws… again.

The programmer raised the ball up as Paren touched the center, and the expected flash of light followed. There was a brief moment of hesitation as the Pokéball rocked a couple times before going still. Keita tapped the center again to let Paren back out, the Tropius rematerializing in a flash and with an elated cry.

During it all, as Paren pulled him in with her neck and Bracket scuttled up cheering her on, something about Keita’s unease of how the current project would go ebbed away. There would be untold trials and tribulations, but with an old friend helping at his side, all of that seemed so much less daunting.

Even if he didn’t know just yet how he’d manage the space.

“We’ll make it work somehow,” he said, stroking at the Grass-type’s neck. “I just know we will.”
 
Top