---Richard---
While some ideas were new and some ideas were old, quite a few were somewhere in between. Some discoveries were simply Richard suddenly believing random snippets he had heard but hadn’t fully trusted before.
For example, Richard was now nearly positive that essence was responsible for all life in the universe.
Essence may not have created humans but there was an incredibly high chance it created the first life on earth and there was a non-zero chance it was responsible for a lot of the early mutations.
Everything Richard studied made him more and more convinced of this theory even with the small voice in his head calling it a conspiracy.
Even ‘mundane’ life – even life without active aether abilities seemed to generate microscopic amounts of both forces. Sure, they were currently on a rank 3 world and there was a small chance the animals on Earth were different than the ones here…but that felt like coping. At this point, Richard's theory was that essence mutating cells at a low dose was probably responsible for a lot of evolution in general. Fuck it, why not right?
Richard needed a drink. He felt like laughing when dealing with essence. Life was all one big joke.
Maybe aether and essence were responsible for the big bang and all of existence as well! Matter and anti-matter…and then something happened to the anti-matter to make it not wipe the regular matter out. Why not!
As much as essence first seemed like an ‘evil’ force that created monsters fully formed… the truth was simply that it created life. Nature wasn’t evil, it was simply wild and self-serving. Sure, that initial life was actively hostile towards the person and sort of creature that had generated their essence…and most monsters were sterile or even just unique and thus unable to find a mate…but that wasn’t always the case.
If two monsters were able to mate, they created offspring that for all intents and purposes “weren’t monsters” even if they ‘looked like them’. Those offspring were usually still aggressive, but they fell into a ‘wild animal’ category instead of a ‘rabid wild animal’ category. Typically essence birthed monsters would attack without a care for their life, while monster born ‘creatures’ had enough self-preservation to run or hide.
Presumably you needed several generations to breed the aggression out of a species.
Still, it was something to keep in mind. Proto aether and proto essence canceled each other out but after refinement and time essence and aether were no longer opposites. It was as if aether was a +2 squared into a 4 and essence was a -2 squared into a 4. The final results were similar you tossed the imaginary version that didn’t happen. Many monsters even generated aether and presumably their own essence to fuel supernatural abilities.
It was as if essence was the goal and aether the side effect. Essence created life which created more essence and spread itself.
…
After a while Richard stepped back from all this base studying, to brainstorm ways of building an actual language for spells.
It was like he was decorating a house that hadn’t been built yet. Completely out of order but still. Doing it this way helped with motivation.
To start Richard created a room where glowing lines of light could be controlled by his AI. A thought gave him a glowing ‘brush’ and a second let the brush leave a permanent line of light in the air. Sometimes Richard used his hands to ‘move’ the ‘brush’ about but as their goal was an external manipulation, he tried to keep it in his mind.
First Richard played about with shapes and how they felt. He moved his line around in scribbles and drew some simple pictures and light sculptures as he thought.
Theoretically this potential language didn’t need to use aether at all. You just needed to ‘draw’ a shape and then let an automated system – potentially even ‘the’ system – read it and activate results.
If they couldn’t figure out how to get their custom force existing alongside everything else, this was an option.
For now, Richard used his AI to record what he drew but soon he would upgrade to an external computer analyzing his shapes and the potential meaning hidden inside them.
He didn’t even know how they would upgrade from a room with an AI to the entire planet being monitored at once. Could they store this information in the aether somehow? All aether seemed linked in more ways than one after all. A rule that effected one bit spread instantly to the rest of the attached aether…like ink in water if you skipped the time ink took to spread out? From what Richard could tell, rules propagated faster than the speed of light.
The ideal setup would be to use origin energy to draw a ‘spell’. Have the ‘finished’ spell ‘send’ itself to the processing AI with the shape as information and the amount of energy used as the ‘cost’. And then ‘somehow’ the system would ‘send’ the effect or result back. It seemed much ‘cheaper’ than having a system constantly monitor every square inch of reality for a change.
Maybe they needed to link a separate dimension to this custom system? Like how the skill layer seemed to hold a lot of aether specific mechanisms. That might just be the key to getting both systems to work along side each other!
…
So, language creation! One of the main goals Richard had was to create a low failure system where the AI analyzing his drawings could round and smooth over as many mistakes as possible. A similar methodology to JavaScript where each ‘program’ would run even while full of errors.
To start, Richard wanted a three dimensional language to take advantage of the three dimensional space they would be writing it in. First he locked all potential shapes into cardinal directions as it was easier for a computer to read and output something specific. Even if he wasn’t perfectly drawing these directions, his AI could ‘round’ it into those three dimensions, 87 degrees was basically 90 degrees. ‘Pi is three, change my mind’.
As long as it was ‘close enough’ his AI could convert analog shapes into sharp theoretical lines.
It was incredibly simple to transfer three phase programing into a ‘up, left, inwards’ based language although writing anything more than ‘hello world’ took a long time and used up a huge amount of space.
By extending that into a ‘up, down, left, right, forward, backward’ system, Richard could store even more information and by making up rules as he went along, each language became faster and faster to write at the cost of needing to remember more edge cases. The problem with the six-direction version was that the lines he drew could cross back over itself. He had to figure out if a program should be allowed to perfectly cross itself or if that caused an error of sorts…it wasn’t a problem if the system was watching him ‘draw’ the whole ‘spell’ from scratch, but it failed when looking at the final result. One option was to double back right beside the first line giving any double back or overlap a side by side ‘multi’ line. Another was to increase the size of a line with overlap and remove any indication of direction from the result.
Richard then went on to prototype many different languages all using this three dimensional brush for testing. He started with shapes and rules as simple as possible and worked his way up from there rule by rule, component by component.
One idea was to use ‘up, down, left, right’ and only those four directions to build a shape. If you wanted to ‘cross’ a line, you could head ‘inwards’ or ‘outwards’ to ‘bypass’ sections using the third dimension.
Same system could be flipped so you were looking down on it like a table which felt surprisingly good.
All shapes created with this first ‘language’ were reminiscent of circuit boards and Richard was suddenly struck with the idea of being able to activate these ‘spells’ with machines.
Yes, that’s definitely a trait he wanted to slip in if possible.
The most computer friendly system was to allow constant recording and endless overlaps. A single line moving back and forth in three dimensions was how phase crystals worked after all and by leaving that system available, a phase crystal could output a spell…but phase crystals were the lowest common denominator. Human ease of use was more important for good UX.
For his no overlap ‘drawn’ system Richard decided that the average length of a line was a single unit. So, lines that were two or three times as long could be called ‘up twice’, ‘left three times’. This system could be completely shrunk or grown as long as you shrunk or grew the entire shape at once. A modification to this system allowed you to ‘draw’ a unit line first instead of letting the system guess.
Another system used all 6 ‘directions’ but did not care about how long a ‘line’ was. You couldn’t place several straight lines in a row, but you could use all the different turns just fine. The shapes this language made were either a tangled mess that looked like a ball of yarn, or a group of tidy self-contained shapes connected with long lines between them.
Richard played with a language that cared about the direction of north – this created a fixed shape he could walk around as he ‘wrote’ – then played with languages that used his body as a reference point and moved as he moved. The direction he pointed while drawing was presumably the direction the fireball would fly or whatever.
His fixed direction version worked well when combined with the ‘looking down on a circuit board’ language he had made previously.
One promising system didn’t care about lines or directions. Instead it cared about coordinates. Richard could make a line to X spot and then make a line to Y spot to convey all sorts of simple information.
His AI then ‘rounded’ the surroundings into cubes and turned the two points into coordinates at whatever the cubes size and accuracy was.
Depending on how sensitive this was, you could store a huge amount of information. It wasn’t the best for ‘writing’ a spell, but for activating one? For activating a function? Linking two bits together? For all these cases it thrived.
If every ‘cube’ had a specific spell attached to It, Richard imagined you could draw a line to your waist to draw a pistol or draw a line to a voxel above your head to summon a hat. Besides storing information, it was hard to do much else, but it was still one of the most intuitive languages Richard had made. Head sized voxels gave you a few hundred voxels within reach of your hands.
Find this and other great novels on the author's preferred platform. Support original creators!
It was even easier to use when Richard used his AI to ‘draw’ the grid he was using then overlay it in his vision.
You could even ‘grow’ the complexity by increasing the resolution of the cubes. A simple rank 1 version of the language had grid boxes the size of his head. Increasing the difficulty by splitting each ‘cube’ into three in all directions made a new denser grid. 1 cube to 27 cubes was a pretty large jump, but the cubes were still easy to land on. Same with a ‘rank 3’ version that had cubes the size of a golf ball.
Part way through, Richard realized he was having so much fun making these different languages – and each had pros and cons – that the best solution was to allow them all. The simplest language could be used to – among other things – select the language to ‘process’ the rest of the shape with.
Like a line at the front of an interpreter that said what programming language you wanted to use – along with what includes or version you were using just because. Theoretically you could use whichever ‘language’ you liked the most when drawing your spells…all Richard needed to do was guarantee ways of converting information between the different languages.
All of these coordinate languages were equivalent to an assembly programing language written manually in binary or maybe maybe opp codes if you were being generous.
Switching between languages mid ‘spell’ gave a massive amount of complexity and flexibility as each could display certain information in easier to read ways and write ways.
The way Richard went ‘up a step’ into a ‘more complicated’ language was to take every language he had already made, then relax individual rules or add a rule one at a time usually focused on the system’s strengths or weaknesses. This step usually made a language easier as long as you knew what you were doing. The circuitboard system was changed to have specific layers. Layer one meant X, layer two meant Y and each meaning could be set when the program started. The yarn system was given a circle shape to help ‘pinch off’ and separate parts.
As he made higher ease of use versions, he also began planning out how higher ‘rank’ versions of the languages had more complexity and thus difficulty. More information was in a smaller shape with more rules.
One language allowed backtracking his ‘brush’ to split off again at an older point. Another allowed lines to split at the point in general and required a split attention to draw separate lines at once. This version required Richard to upgrade his entire room before continuing.
One language cared about ‘brush pressure’ allowing him to draw thick and thin lines by mentally pressing a ‘fourth’ dimension.
One language cared about speed of drawing – by slowly moving over an area it ‘drew’ a ‘thick’ line. Same result as brush pressure but linked to a different ‘base’ language and quite a bit different to draw.
Yet another allowed Richard to stop and start his brush – turning it off and on again allowed lines to ‘teleport’. Yet another was one of his three dimensional systems but split into more directions allowing diagonal movements for more information…
Richard gave the barest of attention towards non straight-line systems – curves and circles and loops. They all looked visually different and ‘fun’ but were harder to store information in. If the arc itself mattered, then was it a spline with control points or a Bezier curve? Wasn’t it easier for his analysis software to pick up actually drawing those control points?
Was the only part that mattered that there ‘was’ a curve here instead of a straight corner? If so at what radius did it become a curve?
No Richard liked all his straight-line systems much more. Especially if you took into account the fact that they weren’t all straight lines – just converted into straight lines by the AI. A lot of his drawings had curved corners and smooth transitions as he rolled his brush around. A lot of his lines had slight bends to them. The point was those ‘mistakes’ didn’t matter. His AI could remove them all with some shape analysis. That U over there? Yeah, that was basically a V wasn’t it?
As Richard made these languages, he simultaneously built a suite of tools that made it easier to write each language. The faint grid that appeared with the coordinate system was one such tool. Allowing you to remove or ‘backspace’ parts of the more methodical shapes was another. One of his favourite tools was something that analyzed the shape he drew in real time and coloured it in accordingly.
Green was a perfect line. Yellow was a ‘minor error’. Orange and then red showed ‘big errors’.
What an ‘error’ was could linked to which language he was currently writing. For unit lines if his standard distance was 1 inch then 1.1 inches was yellow and 1.5 was red considering it could round to either 1 or 2.
For all his shapes without arcs, if a line bent too much or shook by accident it would tint yellow with a degree of severity.
Sometimes whether a line was a mistake or not depended entirely on the ‘finished’ program. Something that looked like a mistake was simply leaving an area open for an offshoot when backtracking. All the potential errors could be coloured in with less judgmental tones – maybe errors and unfinished statements were purple and blue.
Richard also wrote a tool to analyze portions of ‘code’ and output rough estimates of what was happening.
After an entire day of language creation Maddy stopped by to watch as Richard showed off all he had made.
“The one part I’m not understanding quite yet is how we plan to convert custom spells into this language.” Maddy spoke up after a bit. “How do we go from new spell to new shape? Is there a reason we aren’t just writing these with words?”
Richard deactivated most of his language specific tools and began to doodle in space as he talked.
“Good questions, all good questions, this is the part where I turn and run out the back…
“Okay but if we are being serious, the reason we aren’t using words is twofold. One, words are heavily linked to language. I bet you were expecting the whole system to be written in English right? We can translate into different languages and let spells be written in any of them… but there’s still a good chance of miscommunication because of that. Two, as far as shapes are concerned, they have quite a lot of wasted complexity. Letters aren’t every possible shape. Letters aren’t the simplest shapes possible...and yet they are complex enough changing a single thing can break them or wildly change the results. So far, any change you make to any of these languages shifts the final result slightly. A spelling mistake on the other hand can shift the meaning of a sentence completely. I can keep going with ways these are all improvements! Words are two dimensional and writing 2D in three dimensions is – Wow I didn’t even realize I cared this much.” Richard took a breath calming down and smiling across at Maddy.
“Basically, the only benefit that letters and words have is familiarity. Finally a third reason I started on this is to make the act of writing these fun. It’s like a puzzle. If you want, I’m sure we can make it more or less fun to work with. We could make failures explode – could link a feeling of exertion or effort so drawing takes work. Could give more neural feedback for what each part means instead of just visual as I’ve been using. I’m trying to make these as nice to write as possible and I’m open to suggestions. If you have some time, you should try writing some of these languages.”
Maddy nodded. “Sure…you know I feel like you ignored how we are going to actually convert these.”
“…I know but I haven’t figured that part out yet. We do have a few different options! What those options are depends heavily on what is possible and what is optimal or easiest but let’s look into absolutes…The absolute easiest option would be for the system to ‘magically’ convert the spell it’s been given into one or all of these languages. That would be ideal but…I’m going to be honest here I don’t think we will get that.” Richard sighed before perking up once again.
“What I would prefer is to set up a minimal number of rules for both this language and the method it uses to gain new spells. Axioms. Boolean logic sort of minimal baseline rules and then we work our way up from there.
“So, for example, one rule that would be amazing to include is a law of equivalence. If two ‘spells’ work in completely different ways but have the same or a similar end result, they should be considered perfectly equal. The system in charge of creating the effect should also be allowed to swap out for whatever is cheapest or easiest for it to perform – at least for imperfect spells. Its magic after all, the implementation is hidden. Setting fire to something by increasing its flammability and sparking it vs dumping a load of heat in the general area? As long as a flame appears and the ‘spell’ to make that flame is simple or lazy enough, then either are fine.
“…considering our test with both of us making black boxes and then swapping them around, I think this is easy for us to achieve. The entire spell system will be a black box. Hopefully the spells inside the system are nested black boxes.”
Maddy nodded slowly. “It's sort of like negative spellwork, write down the result you want and then explicitly say you don’t care how the spell goes about achieving that result.”
Richard looked a bit confused for a moment before nodding slightly. “Sure, it wouldn’t have that much leeway but it’s a property that would help with all sorts of things. We could even take advantage of that to help skim some power off the top of a spell. Spell A costs 10 mana. Spell B works the exact same but costs 5 mana. Someone casts A, System uses B, System gets 5 extra mana as a treat. Could be operating costs. Could be growth or R&D costs. Who knows!”
Maddy squinted slightly at that. “Sounds shady.”
Richard waved a hand slightly “The whole advantage of a combined system like this is to take advantage of some big data, economy of scale levels of efficiency. I’m imagining the strength of a result you get can be linked to how well you draw the spell. I’m also imagining there is a way to see or discover spell B and the system will push it as an option. Personally, I think it would be fun to link how efficient of a spell you get to how well you draw your shape. Better drawing equals better spell. Even if that just means the system nerfs all the bad drawings until you improve.”
Maddy nodded slightly “I guess, I like that idea. I like the idea of options for improvement and a way to keep it open. What I don’t want is a charity system built on or related to fraud even if its benevolent. Conceptually that feels like it will rot it from the inside. Conceptually this is a system that will work on donations. Donations without an expectation on return…we could maybe link donations with cosmetic or side benefits, but the system itself should be free. Everything else seems fine.”
Richard felt…he wasn’t sure how to think. On one hand he had gone off and brainstormed and planned stuff without Maddy and it had been her idea…but on the other hand, humans were selfish. Some would donate of their own free will but if this system was truly going to thrive it had to convince people it was in their best interest to donate.
“I’ll keep that in mind. We can talk about it while you draw. Let me finish the plan first. The second rule or axiom we would need to implement is a way to compartmentalize a so-called spell. Look at a single portion of it at a time and modify only that portion. So many problems become manageable if you split or can split them up into smaller portions. Those smaller portions should also have equivalence. You should be able to take a portion of the spell that performs a specific operation, take it out, replace it with a different bit that performs the same option, and the final result is the same.” Richard continued.
“Is this the most important rule? Or just something you want. Maddy asked for a moment. She still seemed to be hung up on his plans to trick people into donating for their own good.
“It seems harder right? There might be some other options but personally this rule combined with the first would be the easiest way to ‘convert’ an arbitrary spell. Imagine this, A spell is placed here. It’s a black box. We can turn it on or off and that is it.
“Step two is to take some parts we recognize. Indicate the exact part we want to change. Replace it with something we recognize. And then finally see if the results are the same. If they are the same, then we’ve suddenly ‘discovered’ part of the spell. Piece by piece every spell can be dissected like this. The portion we convert into the language becomes the ‘known’ portion of the spell and everything else remains a black box. If we convert every single portion of the spell, then perfect. The conversion is complete. If we convert every single portion except for a tiny bit, we can still use it. That bit we couldn’t figure out just becomes something new. A tiny bit of ‘and then something happens here’ that we write into the spell whenever we cast it. Richard finished.
Maddy seemed to suddenly get it partway through Richard’s description. “That’s perfect! By moving a spell from a person to this setup we kill it. We then dissect it and parade it around,” She grinned when she saw Richard’s face. “Metaphorically of course. So, This is how we could eventually switch a spell that makes 10ml of water into a spell that makes 100ml of water. Just find the portion for size and cost and increase both by ten. If science is the known and magic is the unknown, this is how we slowly drag the unknown into the light? A spell that’s partially understood could be the truest combination of our two sides.”
Richard nodded a bit.
“Equivalence and compartmentalization are my two goals. Anything after that would be to make the whole process easier. If I had to pick a third it would be an easy way to separate out any order dependent information. For anything that’s left, claim the spell is the exact same no matter what order you put it in. Being able to rearrange all the unordered bits can let you write something in a more intuitive manner or combine similar bits and find ways to optimize…” Richard sighed.
“Okay, lets talk about humanity. Give me a bit to try and hook you up with a neural link. We can talk while we get you drawing.”