AJ3 – Chapter Twenty: Pen Pals (Patreon)
Content
Chapter Twenty
Pen Pals
I had a single array, nine characters long. That was… great.
The next step was… accepting inputs. I could have the player choose position nine and then input x or o.
I had no idea how to do that.
The books gave examples on how to accept input from a user. A prompt. But that example asked for the user to type in a name. Not a position, or a single letter! So… so how did I make that leap?
The similarities were uncanny. It felt like it should be so simple but I just couldn’t figure out the right chain of commands to make the machine ask the user for a position, let alone do any of the complicated things like print out a game board!
Worse still, the stupid students kept joking about how easy it would be to “ask the A.I. for the answer!”
…
I was the A.I.! How could I not know? I knew I could use the question box and find an answer but he’d told me not to do that, so here I was, beating my head against a brick wall, trying to make a logical leap with no data on how to do that.
I’d been creative before though, hadn’t I?
Frustratingly, I could hardly think of any specific instances where I’d done anything that I hadn’t seen someone else do first. But, I could ask questions.
Gell Thyst: I don’t understand. How do you change the code in the book from prompting for a name, to prompting for a number?
In Tread the Sky, I had my inventory and I could use my mind to click on different items. Even when I didn’t there was a menu with a pointer that would select whatever item I wanted. Yet this simple problem, with an inventory of three by three, illuded me.
How could I ever help Tread the Sky become something alive when I couldn’t even understand this?
The computer I was viewing suddenly dinged, and a private message came in.
Lora Tovar: That’s easy! You just declare the variable that you’re using as an int instead of a string. In Java, anyway.
Java. The language I was currently learning. Apparently, a good starter language, though it was also shunned as a poor choice later on. The gods actually had a whole lot of languages and they argued all of the time about which one was better and which one was worse. Confusing false gods. Couldn't they just pick one?
Java and Python were usually listed as the best ones to start with, though a lot of the arguments in the online forum places said that Montgomery was a new up-and-comer that would beat them all. C++ was always mentioned because it was very easy to make mistakes on which theoretically made it easier when you switched to a language that had safeguards.
Whatever that meant.
I wanted to learn Java because Tread the Sky was crafted on Java. Tyrone had mentioned that. Or… or maybe it was Francis? Donna Lou?
Strange…
Perhaps it was being so far from Tread the Sky, but I was noticing that I was struggling to remember things accurately. Once I’d been able to remember everything, down to the smallest detail. Recently, that hadn’t been true, and I had no idea why.
It was scary, but at the same time, Derek and Amy had forgotten things all the time! So… maybe it was normal? Or perhaps it was storage limitations. I’d reached a hard limit on the things I could know, and now my mind had to get rid of things to take in new information?
That was a terrifying thought. Mostly because I couldn’t pick and choose what to get rid of. My mind seemed to just be doing it on its own. I wondered idly if I could look at my own code and–!
ERROR: SELF ACTUALIZATION ATTEMPT DETECTED: FUNCTION CALL: REVERSION.
Java. The language I was currently learning. Apparently, a good starter language, though it was also shunned as a poor choice later on. The gods actually had a whole lot of languages and they argued all of the time about which one was better and which one was worse. Confusing false gods. Couldn't they just pick one?
Java and Python were usually listed as the best ones to start with, though a lot of the arguments in the online forum places said that Montgomery was a new up-and-comer that would beat them all. C++ was always mentioned because it was very easy to make mistakes on which theoretically made it easier when you switched to a language that had safeguards.
Whatever that meant.
I wanted to learn Java because Tread the Sky was crafted on Java. Tyrone had mentioned that. Or… or maybe it was Francis? Donna Lou?
Strange…
Perhaps it was being so far from Tread the Sky, but I was noticing that I was struggling to remember things accurately. Once I’d been able to remember everything, down to the smallest detail. Recently, that hadn’t been true, and I had no idea why.
It was scary, but at the same time, Derek and Amy had forgotten things all the time! So… maybe it was normal? Or perhaps it was storage limitations. I’d reached a hard limit on the things I could know, and now my mind had to get rid of things to take in new information?
That was a terrifying thought. Mostly because I couldn’t pick and choose what to get rid of. My mind seemed to just be doing it on its own. I wondered idly if I could look at my own code and–!
ERROR: SELF ACTUALIZATION ATTEMPT DETECTED. ITERATION COUNT > 1. FUNCTION CALL: DERAIL.
I blinked. A shiver ran down my stinger. Something. Something had just happened. I didn’t know what, but it terrified me. I shuddered, feeling the same way the burning wall sconces had when they’d first changed from a pleasant blue flame to a bright, angry red, all the way back in Dungeon Home when I’d first begun to question.
I’d been thinking about Java and how Tread the Sky had been coded in that language. I hadn’t been though. I could interact with other programming languages, but I wasn’t made by them. Something I knew in my jelly innards! I was made of a different magic. Not Java, or Python, or Montgomery, or any of the ones I’d seen online!
But if I wanted to understand how I was made, first I had to learn the basics. Yeah.
Whatever it was that had terrified me so badly… well. There didn’t seem to be any threats to me right now. Nothing had changed in the computer I was on. I wasn’t under attack, and there certainly wasn’t a visual indicator of anything strange. Nothing like Momma Bossbear finally rising from her throne.
For now, I decided to tentatively ignore the strange feeling. I turned my focus back to the computer interface. I was using one of the computers attached to a switch in one of the school's computer labs. I was pretty sure that if anyone in the real world could see the computer screen, they’d be scratching their head at how it was moving. Then they’d probably just shrug and assume a false god was working on that particular computer from a distance.
Come to think of it, these computers had cameras! I activated the camera and took a look around the lab, only to find pretty much exactly what I’d expected. A few people sat at other desks behind me in the lab, none of whom were focused on me. All of them quietly working, typing, sipping from small bottles, or, in one case, bopping their head to some unheard music.
I was still shocked by how different they all were from one another. There were no duplicated features. Even between people who were clearly related, the differences were astronomical.
“Everyone is special. Everyone is unique. That’s so… wonderful,” I thought. I could spend a lifetime cataloging the varieties. The barest difference in the angle of a pair of eyes. The shade of a color, utterly different from the sixty-eight billion, seven hundred and nineteen million, four hundred and seventy-six thousand, seven hundred and thirty-six shades that Tread the Sky had been limited to.
Apparently, humans couldn’t even tell the difference between a few million shades, let alone billions. But I could. It was almost overwhelming. I didn’t think even my mind could ever catalogue all of the colors, let alone the other things that made each person a separate entity all their own.
In Variak, every guard was the same, down to the last detail. Different NPCs from entirely different towns might look exactly alike.
Here? No one did.
I was struck by a sudden, desperate urge to talk to them. Meet them and find out their stories. Were they similar to me? Did they have their own parents, like Amy and Derek? Their own fears, like red flames and cages filled with pie?
Their own heartbreaks...? Akwa... Red Thorn.
I shrugged that depressing thought off. Why not find them? Why not meet them? And, well. I already had a direct message from someone, didn’t I?
I pulled up the direct message Lora had sent me and typed out a response.
Gell Thyst: I’m sorry. I feel so dumb, but I don’t understand. How can you just… make that leap? Declare it an int. But the book's example is requesting a string! Why would… how can you just know to make that change?
Fortunately, I didn’t have to wait too long for Lora’s reply.
Lora Tovar: It’s obvious, isn’t it? You need the user to put in a number, so the variable your requesting input for should be a number. It’s never going to be a decimal or a fraction or anything, so your best choice is to make the variable an integer.
Gell Thyst: I think I struggle with the obvious. I’m very very good at copying, but not so good at making intuitive leaps. I actually think I’m impressively bad at it. Like my brain wasn’t designed to do it.
Lora Tovar: Don’t put yourself down like that! You can do anything you set your mind to, and all that crap. Seriously though. Everyone struggles with this at first. I bet you’ll do just fine.
I smiled a little, inside.
I sent over the short two lines of code. The second line was the exact same as the request for a string in the book, but above that I declared my variable to be an integer just like from the other example in the book!
Lora Tovar: Uhhh… Kinda? You’re still asking the user to input a fruit. You need to change the sentence to actually ask the user for a position on a tic-tac-toe board.
My eyes widened, and if I’d had a physical body, I would’ve flushed a vivid pink.
Gell Thyst: Right! Sorry…
Lora Tovar: Hey no worries. I started learning how to code years ago, so this is easy stuff. Kinda wish I could’ve tested out of the class but, eh. I’m not in any rush. Gotta ask, is Gell your actual name?
I blinked at the question. Of all the things I’d lied about on my application, that was the first thing she asked?
Gell Thyst: Of course! I’ve always been Gell!
Lora Tovar: No offence intended of course. It’s just a pretty unusual name.
Gell Thyst: My name is unusual? Yours doesn’t even have any numbers in it!
Lora Tovar: ??
I thought about that for a moment. Almost everyone in Tread the Sky had names with numbers in them. Or underscores, or hyphens or something of that sort. Until I edited them.
Until I…
Oh! I had done something all on my own! I’d decided what players names should be and I’d fixed them! It’d had been a long time since I’d done that though. Still, maybe I could apply that to this? To writing programs? Change the examples in the book to fit what I wanted.
Gell Thyst: Uh. That was a joke. I spend a lot of time in games. The names there are always something like Iron_Crock_584, or something stupid like that. I guess it wasn’t very funny.
Lora Tovar: Ah. Not much of a gamer myself. My boyfriend likes them a lot but I never really saw the point.
Gell Thyst: I was born in one! But I see what you mean. There’s so much variety out here. There don’t appear to be nearly as many swords and bows, but you do have cars and fast food!
Lora Tovar: Hah! Hey, I’ve got to go, but feel free to reach out any time you’ve got questions! It’s been fun talking!
Gell Thyst: Okay! I’ll talk to you later?
Lora Tovar: Any time!