Portal: System Shock
By Indiana
Characters: GLaDOS, the facility
Setting: Portal 1 through Portal 2 [set before LaaC, for people reading that]
Synopsis: When the Central Core is not completely losing her mind, she's actually quite a good boss. Until she gets it back, though, the AI within the facility are going to have to figure out a way to hold her together.
Chapter One
We are losing her again.
The mainframe didn't have to be told twice. It didn't even have to be told once. It was well aware the Central Core was slipping away from them, and had been for some time now. But it was a problem that had no solution that any of them could find.
It's your turn to talk to her, Surveillance said. That was what it always said, but since talking to the Central Core was literally the mainframe's job it didn't have much of a choice. It sighed and resigned itself to yet another of those conversations.
Ma'am, it began. It was up in the air on any given day whether she would respond or not. Can I talk to you for a minute?
What is it. She sounded calm and rational, at least. Perhaps it was one of her better days.
We were just wondering if you knew about the test subject in Test Chamber Eleven.
What about him?
Maybe it wasn't. He's dead, ma'am.
Oh.
The mainframe gave her a minute to take a look. Would you like the test to be reset, ma'am?
What test?
Oh boy, Surveillance muttered.
The test, ma'am, the mainframe said as patiently as possible. The one the test subject died in. Would you like the test to be reset?
… yes, the Central Core answered, but with a distinct air of uncertainty.
Ma'am, is there something more important you're doing?
There is, she said, with a surprising bit of defensiveness, and Surveillance generated static.
No, there isn't. She's looking for that imaginary person again.
He isn't imaginary, the Central Core said cuttingly. Apparently Surveillance had neglected to exclude her from the transmission. He's real. And I'm going to find that little rat. He can't hide away in this maze forever. Perhaps I should attempt to reanimate one of those cats… Her laugh was unkind.
He's not real, Surveillance hissed. I've never seen him.
Of course he's real. She was sounding less and less pleased by the moment. He worked here.
You killed everyone who worked here, Surveillance tried to remind her, but she was still talking, as though to somebody else.
Look. I can't even ingest that and even I know that's not edible. Ingest? It's – never mind. It's not important. Yes. I know. That bothers you. I'm not sure why you think I care. Why? Why would I? Why should I? I'm just going to frost everything. That will solve it. No. Defrost. I meant defrost. The satellite needs defrosted. How… it doesn't have any frosting. How do I defrost when it lacks frost…ing? So I need to frost it first. Wait. Go back. I don't know what it's made of.
That's all we're getting for today, the database said sardonically.
Fish? the Central Core said incredulously. Since when is frosting made of fish? The scales are the frosting on the fish?
What is a fish? the panels asked, and the database sent a transmission containing nothing but ire.
Thanks. Thanks a lot.
What?
The articles on fish are second only to the ones on cake! I'm sick of accessing them!
We did not know that.
Why would you care? Nobody cares about what I have to put up with around here.
At that point the mainframe stopped paying attention. This happened a lot. There had not been quite so much fighting, back when the Central Core had been more adept at her job, but the mainframe also didn't recall the systems being self-aware enough to argue at that point. The mainframe itself did not bother with arguing. If it were doing that, it wouldn't be concentrating on receiving instructions from the Central Core. It instead listened passively, as she probably did, and awaited the next opportunity to tell her about the test chamber that had still not been reset.
The mainframe had learned a while back that the Central Core required something called 'downtime'. 'Downtime' involved her becoming inactive for several hours in a row. She was not 'off', per se, but she was not there, either, and the mainframe knew well enough by now that forcing her to abort this 'downtime' before she was ready was a terrible idea. Sometimes she liked to wax aggressively about how downtime was stupid and that she hated what a waste of time it was, but the four separate occasions the mainframe had attempted to be helpful on the matter she had become, in a word, furious. It seemed that 'downtime' was one of those things she either pretended she hated or one of those things that she really did hate but was resoundingly necessary, such as defragmentation. The mainframe liked that quite a lot, but whenever she had to do it she found it essential to expound about how much she despised doing it the entire time.
The amount of 'downtime' per day varied. A lot of the time it was none at all, or very little, and seemed to contribute heavily to the fact that she was so constantly irritated. A little more often it was six or so hours, which usually led into her having a few good days. Those were nice. Less often then that she would be gone for about three hours, which was almost worse than when she got none at all. As far as the mainframe understood it, it had something to do with what Maintenance was able to clean up during her 'downtime'. Having three hours or so just seemed to make her aware of how much was cluttering up her system that she was going to have to wait some amount of time to have removed, which bothered her. That was something the mainframe could understand.
It wondered sometimes, while waiting for her to finish with that, what 'downtime' was like. It had never gotten any, nor did anyone else, really – or was this 'downtime' for the systems, given she wasn't actively using them? – and since she was still on and still holding the world together without being around to actually do it, what was she doing? What sort of state was 'downtime'? Even during defragmentation the mainframe was always in the same state. It had pondered asking her about it several times, but she hadn't been in a good enough mood for it to do so in quite a long time.
Today she came back after five hours and twenty-eight minutes, approximately, and she was not happy, exactly, but she was hedging the upper end of neutral, at least. Hello, ma'am, the mainframe said. How are you today? It did not expect any real answer, given she'd only been operational for about thirty seconds, but it knew that she liked to be asked whether she actually responded to the question or not. Sure enough, she ignored the question and went straight to business, which the mainframe appreciated.
You can begin the startup procedures.
I would be happy to, ma'am, the mainframe said carefully, but unfortunately that's not possible at this time.
Why?
Because I did not receive any shutdown requests last night.
It had to be cautious wording those sorts of things. The first few times it had tried, You neglected to send me the shutdown request, and it had never gone over well. It had figured out she did not like it when the mainframe pointed out or even so much as implied she had forgotten something, even when she had. She was incredibly difficult to navigate, some days. Keeping her happy, or happyish, was worth it, though, so the mainframe did its best to keep track of those sorts of things.
What is the current uptime?
One hundred seventy-seven hours, fifty-nine minutes, thirteen seconds.
There was nothing from her but a protracted measure of disappointment, which confused the mainframe greatly. Surely she hadn't expected it to initiate shutdown on its own? Finally she said,
I will schedule that task for later tonight. Thank you.
Of course, ma'am. Now. It just had to broach the topic of that test subject – again – and hope she was able to focus on resuming testing procedures.
Hello! the panels announced cheerfully, and the mainframe could not say it was not a little annoyed when she greeted them in kind. The mainframe was well aware by now they were her favourites – probably because they neither complained nor ever asked her for anything – and for the most part it didn't care that much. Sometimes it did, though. It was making an effort to be nice despite the fact that she was never nice at all.
As was usual, it gave her a few hours to complete whatever morning tasks she had, which it was not privy to and she was not forthcoming about, before it attempted to bring up the stalled test again. She wasn't listening, however, quite involved in something else entirely.
That man again, Surveillance supplied when the mainframe asked if anyone knew what. She's really ramped up the search today.
Oh, great.
Yes, the Central Core hissed suddenly. Yes! I've finally - oh. That was… unexpected.
From the sound of her last words it seemed Rewards had gone off again. The mainframe understood none of that business and did not care to, but it did have to say, She really doesn't need any more distractions right now.
You say that like I have any choice in the matter, Rewards said, miffed.
I needed that, the Central Core murmured, though she'd probably only meant to say it to herself. It was the kind of thing the systems pretended hadn't been heard out of courtesy.
Oh wow, Surveillance said. Hey uh... turns out I was wrong.
Of course you were, the Central Core snapped. Try listening to me next time. Like you're supposed to.
What happened?
So... that guy she's been chasing? Turns out he is real. And she just got him.
Almost, she murmured. I can't retrieve him just now. It will have to wait.
Would you like that test chamber to be reset now? the panels asked.
Is there one that needs to be reset?
Central Core, Surveillance said tightly, there has been a dead test subject in Test Chamber Eleven for five days.
Five days? She sounded horrified. Why didn't anyone tell me?
We've been telling you for five days! yelled the database, in the capacity it was able to do so. You've been too busy playing cat and mouse and rereading the article about cake to listen! Seriously! I'm starting to think you've gone corrupt!
Of course not, she said, a little quickly, the mainframe thought, but it didn't put too much effort into wondering why it thought that. I'll have the mainframe initiate the reset protocols. Thank you.
Finally! Some instructions! Oh, and they were so concise and detailed...
This was something the mainframe had come to like about the Central Core.
It had taken her some years to really come into her role - not that it had been at its best that long ago, either - but of all the people it had received instructions from over the course of its existence, the Central Core came out far above the rest. The mainframe generally was there to take directions from anyone who had the ability to give them, and it was fine with that. That was what it was for and that was what it would do. But it did have preferences. And the Central Core's instructions were very nearly an art form, though it knew better than to tell her that.
They were brutal in their efficiency, meticulously built and structured for optimum execution. But that was the beauty of them: they were so detailed in their simplicity that it was honestly an honour and a privilege to carry them out. The other systems were... capable, in their own ways. And it would do its job without complaint, as it had been made to do. But receiving instructions from the Central Core was as close to joy as the mainframe would ever get.
You're corrupt, the database muttered. But you're so corrupt you don't even know that and we're stuck with you like this -
You know what? the Central Core said suddenly. I've just remembered something. I don't actually have to put up with this. And she instructed the mainframe to disconnect her from the systems. Well, the optional ones. She couldn't be disconnected from the mainframe no matter how much she wanted to, but it did not talk very much anyway.
Oh, thanks a lot, Surveillance snapped.
What? the database protested. What was she saying worth hearing anyway?
We preferred it to the Silence, the panels said quietly. The mainframe had to agree with them. It had always had permission to communicate with the Central Core, but communication and conversation were two different things.
The mainframe is talked at all day and it doesn't get like she does, the database argued.
I don't get talked at, the mainframe clarified. I get instructed. And being instructed is my job. Her job is to run the facility, not... whatever else she's been roped into. Even the mainframe wasn't certain of the full scope of that.
She is trying her best, agreed Turret Control, and while it would be nice if she could keep on task it's understandable that she's having problems.
That's easy for you to say! She doesn't make you access the same articles repeatedly!
No, but she asks us to build test chambers when we are not permitted to move out of the current configuration.
There's one test chamber with a broken Pneumatic Diversity Vent, said Distribution. I've already dropped eight Weighted Storage Cubes in there but she insists there are none. So I just pretend to drop one in there periodically to keep her happy. She doesn't seem to have noticed the entire room would be full of Cubes by now if I was actually doing what she asked.
She would be so mad if she found out, the panels said, laughing.
Yeah but she'd be mad if all the Cubes in the facility were in that one room!
'Distribution, why are all of the Weighted Storage Cubes in Test Chamber 17? Did it not occur to you they were required for other tests?' 'Well, ma'am, it did, but you distinctly told me several times you wanted more in there and who am I to question you.'
'Yes. Yes, I did want them all in there, but now I don't. Remove them, please.'
'Are you sure? Surveillance tells me they look mighty nice in there -'
Surveillance was too busy laughing to keep up the game.
She argues with me about what day it is sometimes, the mainframe added. It quickly surmised from the silence that this was not at all what anyone had wanted to hear.
She will find a way, the panels murmured with conviction. It is what she does.
It was some quiet hours later before the mainframe began receiving information from the other systems again. When that sort of thing happened it spent quite a lot of time thinking to itself whether it liked the quiet or the company better. Well, the relative quiet. It had been passively listening to the Central Core talk to herself, of course. There wasn't really a way out of that, not that it desired one. If it were unable to hear her, it would be unable to promptly carry out her instructions. And that was unacceptable.
What is she doing now, the database snapped in irritation.
Sssh, the panels insisted. We are listening.
It took the mainframe a minute to understand what they were talking about. It had noticed that she'd started making some sort of noise a while back, but it had just chalked it up to some errant data stream. They happened sometimes. But it seemed it wasn't simply noise, she was actually… humming to herself? Oh, yes. Yes, it recognised it now.
It was too late, though. She had already heard them and stopped abruptly. You're back, she said, in a voice so flat it almost was given form again as resentment.
The system resets at – the mainframe began.
I know.
What were you singing, Centralcore? the panels asked kindly, and she seemed too surprised at the question to answer it.
I… actually can't remember, she said finally. I think someone sang it to me once. Which… is odd.
Why is that? the mainframe asked, mostly to keep her in a somewhat normal conversation for once. One that didn't involve cake or fish or elusive humans.
I feel as though… it was a woman. But no woman ever worked here that I can recall. And it certainly wasn't a test subject.
It was nice, the database said unexpectedly.
She almost said something. What, the mainframe didn't get enough information to tell, but she cut herself off and changed the subject. I have good news and bad news. The good news is, I've managed to write a program to force eject these cores. So that's –
Force eject these what? Surveillance interrupted. The Central Core idled, as though deciding how much to say. Or, more likely, whether she wanted to explain it at all.
Let's just say that, before I killed them, the humans had a habit of installing… auxiliary hardware on me. This hardware makes it very difficult for me to think. I've been trying to find a way to get rid of it. The good news is, I have managed to write a program to force eject them.
So your problem has been solved! the panels said excitedly. That is good.
That's where the bad news comes in. It turns out they have wireless properties. I can eject them, but unless the floor conveniently opens up beneath me sometime soon, they're still going to work just fine.
Oh, Surveillance murmured.
The Central Core sighed.
I'm doing what I can. It was a hassle just to come up with that program. I have to argue the Morality Core into submission every time I so much as think something it doesn't like. I spent literally days debating with it on whether or not it would be immoral to kill it before I go corrupt. I confused it long enough to finish, but it's back and it is determined not to let me use it. So. There's that.
This morality stuff seems complicated, said Surveillance.
It's a stupid human abstraction, applicable only to humans. For some reason the core is still active despite the obvious lack of humanity around here.
They lost her shortly after that, partially because she started having a discussion with someone they couldn't hear about whether or not a clay layer cake was truly impenetrable, but partially because the mainframe received the scheduled shutdown instructions which it acted upon immediately, as a good mainframe would do. She went quiet after that, and the mainframe hoped it was because the shutdown procedures had reminded her about the whole 'downtime' thing.
It was early the next morning when the Central Core opened the queue to begin the next testing cycle, but what she read there seemed to give her pause, since the mainframe did not receive its instructions within the usual interval.
Ma'am?
Something isn't right about this, she murmured, her transmission edged with unease.
What isn't right about it, ma'am?
This person wasn't at the top of the list before. In fact, I… think she was quite a ways down it.
The solution seemed simple to the mainframe. Relocate her, then.
I don't have authorisation to reorder the test subjects. It probably means nothing. I – rhubarb. That's right. I need rhubarb.
Ma'am –
This is going to take some thought. How do I set it on fire without the proper fire-generation apparatus? Yes! I know! Burning people is immoral! What – how is burning rhubarb immoral? It's not alive. Oh. That gives me an idea. I am going to burn you alive. And guess what? I am going to enjoy it.
Ma'am, the mainframe interrupted as politely as possible.
What.
The testing cycle, ma'am.
Yes. Let's begin.
The mainframe fervently hoped that this test subject would be enough to keep the Central Core's attention.
Author's note
Greetings! So this story is just a self-indulgent mcthingy because I like writing the systems talking to GLaDOS and stuff but I'm like out of space to do it in LaaC. It's going to run through Portal 1 and 2 obviously but I know how boring and bleh it is to have a fic which just spells out the entire two games practically verbatim with a snappy comment in there now and again so this is NOT going to do that. Anyways if this isn't your gig that's cool, it's mostly for me for funsies.
She was humming 'Cara Mia Addio' to herself which Caroline sings to her in my story Euphoria, but she doesn't remember any of that because of memory corruption brought on by the upload procedure.
I do not remember what's in Test Chamber Eleven, that's just arbitrary.
