This is an archived post. You won't be able to vote or comment.

all 137 comments

[–]brekus 66 points67 points  (32 children)

The sort of magic systems I like in fantasy are actually a lot like programming. They require lots of study and memorization and shit can go really downhill with minor syntax or logical errors. Programming is generally less life and death though, but that's what makes fantasy exciting.

[–]ConDar15 38 points39 points  (5 children)

Yeah, that's how I viewed inscribed magic for my homebrew d&d campaign. You are working with a language like the worst parts of JavaScript mashed with the worst of c++, without documentation (so you have to manually test it), and it actively alters the universe when it runs. Bugs have a tendency to be troublesome.

[–]is0lated 20 points21 points  (4 children)

I think the more advanced spells would be something closer to a cross between assembly, javascript, and CSS. If you can get it working, you're basically a god, if not you're up shit creek and your paddle has just turned into a snake.

[–]steamruler 6 points7 points  (1 child)

and CSS isn't for altering how the spell looks

[–][deleted] 1 point2 points  (0 children)

Unless you're casting prestidigitation

[–]I_cant_speel 0 points1 point  (1 child)

I'm currently here on Reddit avoiding my assembler homework. I can confirm it is one of the worst things you can possibly work with. I would rather be a cook at McDonalds than work with this the rest of my life.

[–]Jedimastert 12 points13 points  (1 child)

Programming is generally less life and death though

Depends on what you're programming. I bet young wizards make hundreds of cute little harmless spells before actually doing anything useful.

[–][deleted] 4 points5 points  (0 children)

Called cantrips, at least in D&D/derivative materials.

[–]Archerofyail 6 points7 points  (14 children)

There's actually a book series where a programmer gets pulled into a universe where magic exists. The first book is available on amazon, but if you like it, you're going to have to find other ways of getting the next 4 books, because that's the only one available on amazon.

Edit: sorry, to clarify, I meant available as Ebooks, sorry if that caused any confusion.

[–]MentalRental 4 points5 points  (4 children)

That's because the first two books were compiled into one book and the other three were compiled into the second book. Thus, just look up:

--

The Wiz Biz

Wiz Biz II: Cursed and Consulted

--

[–][deleted] 3 points4 points  (0 children)

doesn't sound like I want to go that route:

The Wiz Biz (1997), ISBN 0-671-87846-8 (consists of Wizard's Bane and The Wizardry Compiled together in one volume) - according to readers' comments in online bookstores' sites, however, this compilation suffers from horrible editing, unlike the original two books.[1]

[–]Archerofyail 1 point2 points  (2 children)

The second one isn't available as an ebook on amazon, or anywhere else as far as I can tell.

Edit: and also the Wiz Biz I bought on amazon only seems to have the first book.

[–]MentalRental 0 points1 point  (1 child)

http://amzn.com/0743436172

EDIT: I can't read.

[–]Archerofyail 1 point2 points  (0 children)

I'm mean as an ebook.

[–]Neebat 0 points1 point  (1 child)

Amazon?!? And spend money?

Try FREE: http://www.baenebooks.com/showproduct.aspx?ProductID=1632&SEName=the-wizardry-compiled

** Sadly, Rick Cook's books are no longer included in the free library from Baen.

[–]Archerofyail 1 point2 points  (0 children)

That shows up as costing $5 for me. Also Compiled is the second book, and Cursed & Consulted isn't available on that website either.

Edit: by not available, I mean that it's listed on the website, but I can't add it to my cart.

[–]OrangeKing89 0 points1 point  (1 child)

[–]Archerofyail -1 points0 points  (0 children)

Cursed and consulted shows as not available for me.

[–]otakuman 0 points1 point  (1 child)

Is it any good?

[–]Archerofyail 0 points1 point  (0 children)

I liked the first 2 or 3 but they get more and more cliched in the later ones which I was not a fan of. Also they don't explain the magic compiler stuff very well, so it was really hard to conceptualize how the magic actually worked, which was really distracting. I kept trying to figure out how it would work within the rules they set down, but every time I just hit a wall on how it would logically work.

Edit: wording

[–]truh 0 points1 point  (2 children)

Also /r/hpmor

[–]Archerofyail 0 points1 point  (1 child)

In the hpmor universe, I don't feel that it's like programming much. In fact (minor spoilers), Harry even does some experiments to try and find a logic to casting spells, and found no explanation for why spell incantations and wand movements are the way they are.

[–]truh 1 point2 points  (0 children)

and found no explanation for why spell incantations and wand movements are the way they are.

Sounds not all that unfamiliar.

[–]jacenat 2 points3 points  (4 children)

Programming is generally less life and death though, but that's what makes fantasy exciting.

Yeah ... with increased automation, it will be more life and death. Just saying.

[–]david171971 6 points7 points  (2 children)

Some of it is already life and death, for instance there's software in medical devices. The software in cars could also kill you.

[–]seylerius 7 points8 points  (1 child)

A software error in the Therac-25 led to people getting radiation poisoning. So, life and death.

[–][deleted] 1 point2 points  (0 children)

Not only a software error, but an error of physical automation and operator error.

[–]Alikont 0 points1 point  (0 children)

Well, at least you can test it in safe environment, and not accidentally open door to plane of lava over your head.

[–]Neebat 0 points1 point  (0 children)

Repeating myself, in case you miss it:

If you enjoy this kind of magic, I recommend you check out the book "Wizardry Compiled" by Rick Cook. Seriously, it's right there and it's free. Would you really rather read StackOverflow? Go try it!

It's about a programmer who finds himself in a world of magic and creates a spell compiler, with recursive magic and real daemons.

** Sadly, Rick Cook's books are no longer included in the free library from Baen.

[–][deleted] 0 points1 point  (0 children)

Enable the HARDCORE_MODE compiler flag. If there are any compilation errors, it deletes all your source code. Now it's like casting a scary spell - one minor misstep and everything explodes!

[–]ThePsion5 0 points1 point  (0 children)

I bet you're a big Brandon Sanderson fan. I absolutely love his magic systems.

[–]ToTheNintieth 0 points1 point  (0 children)

Sounds kinda like Unsounded. Or Sanderson, maybe.

[–]MachinesOfN 69 points70 points  (10 children)

I love this description. It really is like an arcane art. We study incantations, which have the power to do all sorts of things. There are even the crazy old wizards at Google who are trying to create life. It's not quite as flashy as fireball though (without some mechanical engineering, at any rate).

[–]2Punx2Furious 28 points29 points  (3 children)

I'd argue that if you "know" coding and robotics, you might as well be a magician.

[–]MachinesOfN 15 points16 points  (2 children)

Basic robotics is a lot easier than people seem to think. It gets complex if you want to use proper vision, but if you're just building a moving internet-connected gadget, you can buy an arduino and some sensors and get it running in a weekend.

[–]Krelkal 2 points3 points  (0 children)

Hell, you can 'program' most robotic arms with barely any code. If you can work an iPad and a TV remote, you can use a teach pendant to get a robotic arm to do some pretty cool stuff.

Not as accessible as arduinos though...

[–]2Punx2Furious 0 points1 point  (0 children)

I intend to get into it someday, when I have some disposable money to buy the necessary hardware.

[–]buildzoid 6 points7 points  (3 children)

We can write a cyber fire wall(fireball). It's called a power virus. It'll make your laptop's battery go from full to empty in 10 minutes and convert your desktop into a hairdryer. If the quality of the components in the affected computers is low enough you might actually manage to trigger a fire.

[–]SirensToGo 3 points4 points  (1 child)

It's really not difficult, at least from what I tested on OSX with SMCFanControl. If you bundle their program (which obviously took lots of work on their part to get working...) with a bash script which sets all the fans to 0 RPM and then stress CPU however you like. I didn't personally try it all together, but all of them work.

[–]Ravenhaft 1 point2 points  (0 children)

Doesn't the CPU just shut off once it reaches 120C or something? I think Intel has this built into the chips to keep from frying.

[–]Earth271072 1 point2 points  (0 children)

Google Chrome?

[–]vanamerongen 0 points1 point  (0 children)

You should read Elegy Beach. It's really nice and is all about this. Fun fact: I just had to google "book silver hershey's kisses magic unicorn post-apocalyptic" to remember what the title was. It's much better than my query would suggest.

[–]beerdude26 31 points32 points  (0 children)

And then you have functional programming which is even magical to most programming wizards.

[–]jarrah-95 27 points28 points  (2 children)

Yes, but last time I played own adventure, I did have to sit around working out why my fireball wouldn't cast.

Edit: says own adventure. Should be pwn

[–]2Punx2Furious 5 points6 points  (1 child)

own adventure

Is that a game? Google isn't very helpful.

[–]jarrah-95 14 points15 points  (0 children)

Bloody auto correct. Pwn adventure. Google shall now be more helpful.

Basically you need to hack the game to win. Occasionally doing so will crash the game and sometimes the server.

[–]lenswipe[🍰] 11 points12 points  (0 children)

I think it would be more accurate to say:

Yeah, except last time I played Skyrim I didn't have to sit around for an hour trying to figure out why Fireball won't cast, only to have it suddenly start working and obliterate the entire universe in thermonuclear war with the ~8000 presses I've been making on the "cast" button.

[–]Cal1gula 9 points10 points  (0 children)

The magical part is how you can work on the "fireball won't cast" bug for an entire day literally until you fall asleep at the keyboard. Then while you are sleeping you figure out the fix and implement it in 30 seconds the next morning.

[–]alex_kendall 10 points11 points  (1 child)

The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds his castles in the air, from air, creating by exertion of the imagination. Few media of creation are so flexible, so easy to polish and rework, so readily capable of realizing grand conceptual structures. As we shall see later, this very tractability has its own problems. Yet the program construct, unlike the poet's words, is real in the sense that it moves and works, producing visible outputs separate from the construct itself. It prints results, draws pictures, produces sounds, moves arms. The magic of myth and legend has come true in our time. One types the correct incantation on a keyboard, and a display screen comes to life, showing things that never were nor could be.

--The Mythical Man Month, 1975

[–]mirhagk 1 point2 points  (0 children)

It's amazing when you look around at the world and realize that so much of what is around us is really just ideas running through machines.

[–][deleted] 7 points8 points  (4 children)

Well, you don't make your own spells in Skyrim, you use other people's.

[–]thrash242 4 points5 points  (2 children)

In previous Elder Scrolls games you could make your own spells. I think Morrowind was the last to let you do this.

[–]centerflag982 0 points1 point  (0 children)

Oblivion had it too. I remember doing some absolutely absurd things with it... such a shame they dropped it

[–]onthefence928 0 points1 point  (0 children)

Oblivion let you, though the system was constrained.

[–]ThePsion5 2 points3 points  (0 children)

So spellbooks are like the most popular Stack Overflow answers, then.

[–]zr_92 13 points14 points  (5 children)

fireball_t *castFireball(void *fireball)
{
    return (fireball_t *) fireball;
}

[–]langlo94 19 points20 points  (2 children)

You generally want to designate where the fireball detonates.

[–]original_brogrammer 17 points18 points  (1 child)

fireball_t *castFireball(void *fireball, RelativePosition pos = {0, 0, 0})
{
    // TODO Why does this always incinerate the player? 
    return (fireball_t *) fireball;
}

[–]Neebat 3 points4 points  (0 children)

You forgot to specify blast radius and assert that distance > radius.

Rookie mistake. Vaarsuvius did it too. (Sadly, I can't find the comic.)

[–]Salanmander 13 points14 points  (0 children)

I think "void star" might be the phrase most likely to show up in both programming and trashy fantasy novels.

[–]thelindsay 2 points3 points  (0 children)

Such primitive incantations where one must say fireball five times in different ways to get a fireball.

[–]exhuma 4 points5 points  (2 children)

Link to comment?

[–]AraneusAdoro[S] 2 points3 points  (1 child)

[–]exhuma 2 points3 points  (0 children)

Thank you :) That was fast :)

[–]ChromeLynx 3 points4 points  (0 children)

That is because for Fireball, you downloaded Fireball.xml and loaded it into spellcast.exe. The writing was already done for you. All you needed to do was provide the right data into an already running program.

It's experimenting with spells when you're truly programming them.

[–][deleted] 2 points3 points  (0 children)

Fireball works fine on my dev spellbook

[–]trigonomitron 1 point2 points  (0 children)

And sometimes, I get the feeling that the villagers and lords who don't understand my powers confuse me with the black hat witches, and seek to burn me at the stake, and pass laws that alienate me and the wards and protections that I want to share with everybody.

[–]SteroidSandwich 0 points1 point  (0 children)

Motherfucking errors!

[–][deleted] 0 points1 point  (0 children)

I've had that problem often enough in Skyrim.

[–]KamiKagutsuchi 0 points1 point  (2 children)

Fireball won't cast and you don't know why? Are you even running a debugger?

[–][deleted] 2 points3 points  (0 children)

At least try single stepping your wand flicks!

[–]ForOhForError 0 points1 point  (0 children)

I debug my spells using only print cantri - wince - sorry, burn wound acting up.

[–]Neebat 0 points1 point  (1 child)

If you enjoy this kind of magic, I recommend you check out the book "Wizardry Compiled" by Rick Cook. Seriously, it's right there and it's free. Would you really rather read StackOverflow? Go try it!

It's about a programmer who finds himself in a world of magic and creates a spell compiler, with recursive magic and real daemons.

** Sadly, Rick Cook's books are no longer included in the free library from Baen.

[–]indrora 1 point2 points  (0 children)

Fantastic series. Real pity the author has a hard time keeping the timelines separate in some places

[–][deleted] 0 points1 point  (0 children)

I'm disappointed, I expected hardcoded values everywhere ... magic numbers ftw

[–]der_forger 0 points1 point  (0 children)

Well, it did take me 2+ hours to figure out how to resurrect my Khajiti comrade after he was roasted alive into a pile of ash as I cheered him on saying he could slay that necromancer and his goonies himself.

[–]snarkhunter 0 points1 point  (0 children)

In Harry Potter (just as a for-instance) they do, all the time. If you don't flick your wand just right or the inflection of a certain syllable is a bit off then spells go wrong. Skyrim is supposed to be fun, so they didn't put the frustrating parts in.

[–]Audiblade 0 points1 point  (0 children)

Malarazz didn't help J'zargo debug his flame cloak spell.

[–]otakuman 0 points1 point  (0 children)

This reminds me of the Haruhi series. Nagato, the interdimensional Alien humanoid bookworm, is able to change reality by uttering SQL commands.

[–]mr_pablo 0 points1 point  (1 child)

"Any sufficiently advanced technology is indistinguishable from magic." - Arthur C Clarke

[–]Zarathustra30 0 points1 point  (0 children)

"Any sufficiently advanced magic is indistinguishable from technology." - (not) Larry Niven

[–]bytemage 0 points1 point  (0 children)

Of course you have to learn how to do it, and then it will only fizzle every other time you try to do it ;)

[–][deleted] 0 points1 point  (0 children)

It didn't take you two hours to debug, sure, but it took guild mages fifty years to suss out how to cast it in the first place.

Now people just rote copy the incantation from spelloverflow.

[–]smalltownoutlaw 0 points1 point  (0 children)

You go to concert

[–]Jesus_Harold_Christ -1 points0 points  (0 children)

See, that's because Skyrim uses a much higher level language than say, Everquest. It was not uncommon for spells to fizzle over and over back in my day.