Novels2Search
There Will Be Dragons Here
Chapter 86 - Magic Scripting

Chapter 86 - Magic Scripting

Isabelle watched the horrible, incomprehensible gibberish flash before her vision in pink lettering once again. She couldn’t blink or look away from it, as she was still frozen and locked in a meditative state.

[45 76 65 72 79 74 68 69 6E 67 20 69 73 20 74 6F 74 61 6C 6C 79 20 66 75 63 6B 65 64 20 75 70 20 6E 6F 77 2E 20 49 20 6D 65 61 6E 2C 20 73 6F 20 66 75 63 6B 65 64 20 75 70 2E 20 53 6F 20 74 65 72 72 69 62 6C 79 2C 20 68 6F 72 72 69 62 6C 65 2C 20 61 77 66 75 6C 6C 79 20 66 75 63 6B 65 64 20 75 70 2E 20 41 6E 64 20 69 66 20 79 6F 75 20 64 6F 6E 27 74 20 74 68 69 6E 6B 20 69 74 20 77 61 73 20 79 6F 75 72 20 66 61 75 6C 74 2C 20 77 65 6C 6C 2C 20 79 6F 75 20 61 72 65 20 73 61 64 6C 79 2C 20 73 6F 72 65 6C 79 20 6D 69 73 74 61 6B 65 6E 2E 20 46 6F 72 65 76 65 72 20 79 6F 75 20 6D 75 73 74 20 6C 69 76 65 20 77 69 74 68 20 74 68 65 20 61 77 66 75 6C 20 67 75 69 6C 74 20 6F 66 20 68 61 76 69 6E 67 20 6D 61 64 65 20 61 20 74 65 72 72 69 62 6C 79 20 73 74 75 70 69 64 20 61 6E 64 20 63 6F 73 74 6C 79 20 6D 69 73 74 61 6B 65 2E 0A 0A 45 73 73 65 6E 74 69 61 6C 6C 79 2C 20 77 68 61 74 20 68 61 70 70 65 6E 65 64 20 77 61 73 20 74 68 61 74 20 79 6F 75 20 64 69 64 6E 27 74 20 75 70 64 61 74 65 20 74 68 65 20 67 6F 64 73 20 64 61 6D 6E 20 73 79 73 74 65 6D 20 6B 65 79 20 66 72 6F 6D 20 76 65 72 73 69 6F 6E 20 30 2E 36 39 2E 31 20 74 6F 20 76 65 72 73 69 6F 6E 20 30 2E 36 39 2E 31 2E 31 2E 20 54 68 69 73 20 63 61 75 73 65 64 20 61 6E 20 69 73 73 75 65 20 77 68 65 6E 20 79 6F 75 20 61 74 74 65 6D 70 74 65 64 20 74 6F 20 69 6E 73 74 61 6C 6C 20 74 68 65 20 70 61 63 6B 61 67 65 20 4C 6F 76 65 20 48 61 6E 64 6C 65 73 20 62 65 63 61 75 73 65 20 79 6F 75 20 61 74 74 65 6D 70 74 65 64 20 74 6F 20 69 6E 73 74 61 6C 6C 20 74 68 65 20 6C 61 74 65 73 74 20 76 65 72 73 69 6F 6E 20 6F 66 20 4C 6F 76 65 20 48 61 6E 64 6C 65 73 2C 20 77 68 69 63 68 20 77 61 73 20 75 70 64 61 74 65 64 20 74 6F 20 77 6F 72 6B 20 77 69 74 68 20 73 79 73 74 65 6D 20 6B 65 79 20 76 65 72 73 69 6F 6E 20 30 2E 36 39 2E 31 2E 31 2C 20 77 68 69 63 68 20 69 73 20 6E 6F 74 20 74 68 65 20 76 65 72 73 69 6F 6E 20 6F 66 20 73 79 73 74 65 6D 20 6B 65 79 20 79 6F 75 20 68 61 64 20 61 74 20 74 68 65 20 74 69 6D 65 20 6F 66 20 69 6E 73 74 61 6C 6C 2E 20 53 69 6E 63 65 20 74 68 65 20 66 69 6C 65 20 73 74 72 75 63 74 75 72 65 20 6F 66 20 74 68 65 20 6E 65 77 65 73 74 20 76 65 72 73 69 6F 6E 20 6F 66 20 4C 6F 76 65 20 48 61 6E 64 6C 65 73 20 61 74 74 65 6D 70 74 65 64 20 74 6F 20 69 6E 73 74 61 6C 6C 20 69 74 73 65 6C 66 20 69 6E 20 66 69 6C 65 73 20 61 6E 64 20 66 6F 6C 64 65 72 73 20 6E 61 6D 65 64 20 61 66 74 65 72 20 73 79 73 74 65 6D 20 6B 65 79 20 30 2E 36 39 2E 31 2E 31 2C 20 77 68 65 6E 20 79 6F 75 20 6F 6E 6C 79 20 68 61 64 20 73 79 73 74 65 6D 20 6B 65 79 20 30 2E 36 39 2E 31 2C 20 65 76 65 72 79 74 68 69 6E 67 20 69 73 20 6D 61 6A 6F 72 6C 79 20 6D 65 73 73 65 64 20 74 68 65 20 66 75 63 6B 20 75 70 2E 20 0A 0A 4F 6E 63 65 20 61 67 61 69 6E 2C 20 6E 69 63 65 20 6A 6F 62 20 69 67 6E 6F 72 69 6E 67 20 74 68 65 20 75 70 64 61 74 65 20 72 65 71 75 65 73 74 2E]

“Dragon! Dragon!” said Isabelle. “Dragon, you’ve got to help me figure this out somehow! I’m getting some sort of horrible string of pink lettering!”

“Oh my gods,” said the disembodied dragon soul that’d been telepathically communicating with her during the meditation session. “I see exactly what you mean. Don’t worry, though. It’s not a big deal.”

“It’s not?” asked Isabelle.

“No,” said the dragon. “Really, it’s no biggie. Just some error codes burnt into your vision. Why, in my days, I’d get get error codes fifty times as long as that one, I would! And that’s on a good day. Really, though, it’s not matter. Just think ‘sumo reset syskey’ and try to install again, it’s no big deal.”

“Sumo?” asked Isabelle.

“Yes,” said the dragon. “Sumo, it’s a syskey handler prebuilt into the system’s syskey installation.”

“…What the fuck is that supposed to mean?” asked Isabelle.

“Don’t worry about it, Isabelle, just think it already!” said the dragon.

“Fine,” said Isabelle. She thought ‘sumo reset syskey.’”

[!!~??]

[Clearing error codes]

[Ignoring errors…]

[Throwing errors under the rug…]

[Successfully cleared error codes]

[Restarting…]

[:///*]

Isabelle sighed in relief as the terrible pink letters finally faded to nothing.

[Welcome to System Key Version 0.69.1]

[Notice: An update for System Key is available. You might want to download that by thinking sys!~install syskey]

Isabelle wasn’t waiting or asking to see what the dragon thought about her updating System Key this time. She was definitely going to update it, she had a feeling that the whole string of errors might have had something to do with not being updated.

[~;;]

Isabelle thought, ‘sys!~install syskey.’

[~;; sys!~install syskey]

[:///*]

[Finding package…]

[Searching for package…]

[Looking for package…]

[Package located!]

[Preparing package for install…]

[Unboxing System Key Version 0.69.1.1…]

[System.Key.install.packet.d1 |||||||||| 100%]

[System.Key.install.packet.v2 |||||||||| 100%]

[System.Key.install.packet.b12 |||||||||| 100%]

[Successfully installed System Key Version 0.69.1.1]

[Restarting…]

[:///*]

[Welcome to System Key Version 0.69.1.1]

[~;;]

Isabelle felt relieved. Now she just needed to install what, like, five packages into system key so that it could do whatever the hell it was supposed to be able to do? Was that really what she had to do?

“Isabelle—” said the dragon, “—I’m getting the vibe you keep forgetting that I can hear your thoughts in this meditative realm. And, honestly, it’s been hurting my feelings a bit. So, please, do try to keep that in mind.”

“Okay,” said Isabelle. She felt a little uncomfortable. “Sorry. It’s just, well, it seems like a pain in the ass having to use the system key thing. Honestly. I don’t see the benefit.”

“Isabelle, trust me—” said the dragon, “—you don’t have to install the packages every time. Seriously. If you can just get through one clean install of all the packages and their subsequent handlers, you’ll have amazing systemic power at your fingertips. Do not doubt this. I am teaching you this for a reason. Your system key can be vital. What’s more, if you’re smart, you can actually use system key to clean and protect your system from vicious and malicious attacks vis a vis what happened to the Overlord and his two ex party members. Just something to keep in mind.”

That did make Isabelle feel a little better about doing all of this painstaking shit. So, she thought—

“You think it’s painstaking?” asked the dragon with a whiny tone.

“Get out of my head!” said Isabelle. Then, she thought, ‘sys!~install lh.’

[~;;]

[~;; sys!~install lh]

[:///*]

[Finding package…]

[Searching for package…]

[Looking for package…]

[Still looking…]

[Package located!]

[Preparing package for install…]

[Unboxing Love Handles…]

[Love.Handles.install.packet.a1 |||||||||| 100%]

[Love.Handles.install.packet.a2 |||||||||| 100%]

[Love.Handles.install.packet.b1 |||||||||| 100%]

[Love.Handles.install.packet.b2 |||||||||| 100%]

[Love.Handles.install.packet.b3 |||||||||| 100%]

[Love.Handles.install.packet.b4 |||||||||| 100%]

[Successfully installed Love Handles]

[:///*]

[~;;]

“Alright, I installed love handles,” said Isabelle. “Now what do I do again?”

“The next thing you need is SystemPackageHandlerHandler. To install SystemPackageHandlerHandler, you need to use Love Handles,” said the dragon. “So, essentially, just think ‘lh install sysphh.’”

“Okay,” said Isabelle. She thought, ‘lh install sysphh.’

[~;;]

[~;; lh install sysphh]

[Welcome to Love Handles version 8.1.5.2.0.1!]

[Grasping the package…]

[Package grasped!]

[|||||||||| 100%]

[Successfully installed System Package Handler Handler]

[:///*]

[~;;]

“Wow, that was significantly faster than just using the syskey install,” said Isabelle.

The author's narrative has been misappropriated; report any instances of this story on Amazon.

“Yes,” said the dragon. “Love Handles is a great package handler handler handler. Do you remember what you need to install next?”

“No,” said Isabelle.

“That’s fine,” said the dragon. “Just think ‘lh install sysphug.’ It’ll install System Package Handler Gloves for you.”

“Okay,” said Isabelle. She thought, ‘lh install sysphug.’

[~;;]

[~;; lh install sysphh]

[Grasping the package…]

[Package grasped!]

[|||||||||| 100%]

[Successfully installed System Package Handler Gloves]

[:///*]

[~;;]

“What now?” asked Isabelle.

“You’re almost done,” said the dragon. “Now you just need to think, ‘lh install sysoosys’ to install System Outside Of System.”

“Who named all this shit?” asked Isabelle.

“Don’t worry about it,” said the dragon. “Seriously, just don’t.”

Isabelle thought, ‘lh install sysoosys.’

[~;;]

[~;; lh install sysoosys]

[Grasping the package…]

[Package grasped!]

[|||||||||| 100%]

[Successfully installed System Outside Of System]

[:///*]

[~;;]

“Okay, I installed everything,” said Isabelle. “Now what?”

“Well, now’s the best part,” said the dragon. “Now that you’ve installed all of those things, you can install the one thing you originally intended to install! That thing being Magic Script, of course.”

Isabelle sighed, wishing she wasn’t locked in a meditative state so that she could roll her eyes. Did she really have to keep installing things?

“Come on, Isabelle!” said the dragon. “This is the last thing you need to install. After this, you’re totally in the clear!”

“Okay,” said Isabelle. “What do I need to think?”

“Think ‘sysoosys install ms’ and watch the system do its thing,” said the dragon.

Isabelle thought, ‘sysoosys install ms.’

[~;;]

[~;; sysoosys install ms]

[:///*]

[Installing…]

[Successfully installed Magic Script]

[:///*]

[~;;]

“That was really fast,” said Isabelle.

“Yup,” said the dragon. “Sysoosys is great, though its prefix could be a little shorter. Of course, you could always install prefix shortener if that ever starts bugging you, but of course to do that you first need to install the customizer, which of course requires you also install—okay, I can sense you’re sick of this and don’t intend to install all those things, Isabelle. I’m sorry to get carried away, I am, I’m just excited to get to show you this part of the system.”

“I know, I know,” said Isabelle.

“Well, now that you’ve installed it, would you like to jump on in to Magic Script, Isabelle?” asked the dragon.

“I don’t know,” said Isabelle. “I’m kind of getting burnt out on this whole meditation thing. It’s making my head hurt.”

“That’s fair,” said the dragon. “However, you’ve come this far. I’d really rather prefer to at least show you how to open up magic script and maybe try writing just a simple system process so that you know how to get started before letting you go.”

Isabelle had to admit to herself, the logic was sound and thoughtful. She’d put this much effort in already, it would’ve been silly to give up right before using the magic script.

“Okay,” said Isabelle. “What do I do?”

“First, think ‘Open Magic Script,’” said the dragon.

That seemed simple enough. Isabelle thought, ‘Open Magic Script.’

[~;;]

[~;; open magic script]

[Welcome to Magic Script]

“Huh. So I guess magic script is open now,” said Isabelle.

“Excellent,” said the dragon. “Now think ‘create new.’”

“Okay,” said Isabelle. She thought, ‘create new.’

[Please name your script:]

“Uh, what?” asked Isabelle.

“Just name it whatever you want,” said the dragon. “By, er, by thinking the name, of course.”

“Okay,” said Isabelle. She thought, ‘Fuck Oglo.’

[Script ‘Fuck Oglo’ named successfully]

“Who’s Oglo?” asked the dragon.

“Don’t worry about it,” said Isabelle.

[Open ‘Fuck Oglo’ now?]

[Y/N]

“Do I want to open the script now?” asked Isabelle.

“Yes,” said the dragon.

Isabelle thought yes.

[]

“Uh, what do I do now?” asked Isabelle. “It’s just showing me empty brackets.”

“This is the fun part,” said the dragon. “You’ve got to write what goes in the brackets yourself. With your thoughts.”

“Oh Jesus,” said Isabelle. “That sounds crazy.”

“What’s a Jesus?” asked the dragon. “Oh, that’s right, nevermind, I can see your thoughts.”

“Whatever,” said Isabelle. “So, what exactly do I do again?”

“For this script, let’s keep it simple,” said the dragon. “Now, the cool thing about magic script is that it’s magic, and you can write it a little differently for each time you use it so long as you define things.”

“Define things?” asked Isabelle.

“Yes,” said the dragon. “The magic script doesn’t automatically know what everything is, so you have to define them with definition functions. Which sound complicated, but are actually quite simple provided you follow the proper syntax. The main thing with syntax, of course, is that you use it at all times to say what you’re intending to say without saying what you’re not intending to say. A lot of people using magic script get tripped up by that. Okay, not really a lot of people, mainly because only the devs who are dead used it and then all us dragons use it but most of us are asleep except for all the new ones that keep popping up…but that’s beside the point. Really just keep in mind that you’ve got to be very straightforward with magic script, it doesn’t really detect subtleties or sarcasm unless you install the subtleties and sarcasm package, and even then it can be very hit or miss and up to your own interpretation.”

“Okay,” said Isabelle, feeling that her ears had been more than sufficiently talked off and yet completely unprepared. “But, like, how do I get started?”

“Easily,” said the dragon. “Just be sure that the first word you write-think is init, or otherwise the whole thing will never ever intialize.”

“Okay…” said Isabelle. She did not feel very confident. She thought, ‘init.’

[init]

Where did she go from here? Isabelle didn’t want to totally rely on the dragon, she wanted to try and figure this out. After all, if she could get a grasp on magic script, couldn’t she do so much more with her system than she already could? Isabelle hazarded a guess and thought, ‘one plus one.’

[initone plus one]

“Ah, shit,” said Isabelle. “How do I fix that?”

“I’d say go ahead and clear the whole line by thinking ‘clear line,’ then write init again, then think ‘new line,’” said the dragon.

Isabelle was frustrated she’d already made a mistake, but she had to press on. So, she thought, ‘clear line.’

[]

Then, she thought, ‘init.’

[init]

Then, she thought, ‘new line.’

[init]

[]

Then, she thought, ‘one plus one.’

[init]

[one plus one]

“Okay,” said Isabelle. “I think that’s it.”

“You’re happy with that?” asked the dragon. “You want your first magic script to add one to one?”

“Yes?” asked Isabelle. “Is there something wrong with that?”

“No, no, not at all!” said the dragon. “It’s just people usually take the magic script and have it print out a message to them as their first project. They’ll often have it say something like ‘Hello New World’ or something.”

“Well, I’m having mine add one to one,” said Isabelle.

“Okay,” said the dragon. “It’s just not what I expected, that’s all. There’s nothing wrong with it. No need to get defensive or anything.”

Isabelle was starting to get real sick of this dragon. Still, she was ready to find out how to use her magic script. “What do I do to run it?” asked Isabelle.

“Well, first you need to save it,” said the dragon. “Think ‘Save (name of your script).’”

“Okay,” said Isabelle. She thought, ‘Save Fuck Oglo.’

[‘Fuck Oglo’ saved]

“Now how do I run it already?” asked Isabelle.

“There are a few different ways,” said the dragon. “Do you want to debug it, or do you want to go ahead and push it to your main system?”

“It adds one to one!” said Isabelle. “What is there to debug?”

“Fair enough,” said the dragon. “You’ll first need to exit magic script, and then you need to use syskey to push it to your system by thinking ‘sys!~push ms.(name of script).’”

“Okay,” said Isabelle. She thought ‘Exit Magic Script.’

[Closing Magic Script…]

[Closed]

[~;;]

Isabelle thought, ‘sys!~push ms.Fuck Oglo.’

[~;; sys!~push ms.Fuck Oglo]

[:///*]

[Pushing to system…]

[Notice: You haven’t run this script in debugging mode before pushing. It may not run as expected. Would you still like to push it to system?]

[Y/N]

Isabelle thought yes.

[Pushing…]

[Script ‘Fuck Oglo’ pushed successfully to system]

“Great!” said Isabelle. “Now, how the hell do I exit this syskey shit?”

“Easily,” said the dragon. “Just think ‘Exit System Key.’”

Isabelle thought ‘Exit System Key.’

[…]

[…]

[System Key closed]

Isabelle felt relief on seeing the familiar green lettering. Now that she was out of system key, she wanted to go ahead and give her new system command a try. Isabelle thought, ‘Fuck Oglo.’

[Error: variable ‘one’ undefined]

[Error: variable ‘plus’ undefined]

[Error: variable ‘one’ undefined]

“Fuck’s sake,” said Isabelle.

“Yea, I had a feeling that might happen,” said the dragon. “You’re probably going to want to go back into system key and use debug mode.”

“Fine,” said Isabelle. “I just hope this doesn’t take too long.”

“Don’t worry, it won’t, it won’t,” said the dragon. “You don’t even need to sit and wait for the system key to initialize now that you’ve opened it once. Just think ‘Open System Key.’”

Isabelle thought ‘Open System Key.’

[Welcome to System Key Version 0.69.1.1]

[~;;]

“Okay, so how do I open debug mode?” asked Isabelle.

“Well, before you do that, you should remove the script you pushed to your system,” said the dragon. “Because if you don’t, then it’ll stay in your system and will only throw up errors when you try to push it again.”

“Fine,” said Isabelle with a sigh. “Well, how the hell do I do that?”

“Oh, it’s simple,” said the dragon. “Just think ‘sys!~revoke ms.(name of script).’”

“Okay,” said Isabelle. She thought, ‘sys!~revoke ms.Fuck Oglo.’

[~;; sys!~revoke ms.Fuck Oglo]

[:///*]

[Revoking from system…]

[Script ‘Fuck Oglo’ revoked successfully from system]

“Okay, now what?” asked Isabelle.

“Open magic script again,” said the dragon.

Isabelle thought, ‘Open magic script.’

[~;; open magic script]

[Welcome to Magic Script]

Isabelle then thought, ‘Open Fuck Oglo.’

[init]

[one plus one]

“Okay, what now?” Isabelle asked the dragon. She was feeling very impatient.

“It’s simple,” said the dragon. “Just think ‘Enable debugging mode.’”

Isabelle thought, ‘Enable debugging mode.’

[Debugging mode enabled]

[init]

[one plus one]

[Error line 2: 3 undefined variables]

“How does this help me, again?” asked Isabelle.

“Oh, it’s just saying you have to define the variables, Isabelle,” said the dragon.

“But what the fuck does that mean?” asked Isabelle.

“Oh, gods damn it, fine. You’ve worn me down. I’ll do it,” said the dragon.

“What? No! I want to know how to do it,” said Isabelle.

“I admit, you’re very persuasive, Isabelle. You must have a very high char and speechcraft. I’ll be happy to help you by writing the script,” said the dragon.

“Fuck’s sake that’s not what I want!” said Isabelle. “I just want a clear explanation!”

“Okay, alright already, I’ll go ahead and fix it for you!” said the dragon.

Before Isabelle could protest any more, the dragon had retyped her magic script.

[init]

[&system.display(&add(1+1))]

“What the fuck am I looking at?” asked Isabelle.

“You’re looking at a properly defined magic script that uses the correct syntax,” said the dragon.

“Well, you never told me that was the correct syntax!” said Isabelle. “I told you, I wanted to write it myself!”

“Yea, well, I got the vibe you were more of a visual learner so I figured I’d go ahead and do it instead,” said the dragon.

“This is ridiculous and stupid,” said Isabelle.

“What, do you not want to save and push your magic script?” asked the dragon.

Isabelle sighed. She did want to try the script out. She thought, ‘Save Fuck Oglo.’

[‘Fuck Oglo’ saved]

Isabelle thought ‘Exit Magic Script.’

[Closing Magic Script…]

[Closed]

[~;;]

Isabelle thought, ‘sys!~push ms.Fuck Oglo.’

[~;; sys!~push ms.Fuck Oglo]

[:///*]

[Pushing to system…]

[Script ‘Fuck Oglo’ pushed successfully to system]

Isabelle thought ‘Exit System Key.’

[…]

[…]

[System Key closed]

Isabelle thought, ‘Fuck Oglo.’

[2]

Well, at least it worked.

“Thanks, kind of,” said Isabelle.

“I hope you enjoyed your dragon-led tutorial, Isabelle,” said the dragon. “I will admit, it was a bit off kilter, especially considering that instead of giving you the standard tutorial I glossed over a lot of stuff you already know and instead just focused on teaching you some magic scripting. Still, I think it was a success. I hope you will consider filling out a survey on your experience with me. If you’re willing, I’ll send you a survey request.”

“Um—” said Isabelle, “—can I think about it for a second?”

“Yes, you can,” said the dragon sadly. “Then again, speaking of thinking of things, would you be willing to look at the class selection menu while I’ve got you here? It’s kind of my responsibility since I’m running your tutorial.”

Isabelle didn’t really want a class, but she figured she ought to at least look at them and see what the deal was. “Okay,” she said.

“Great!” said the dragon. “You won’t regret this.”