Customizable magic

Started by
18 comments, last by Adriac 17 years, 5 months ago
Quote:Original post by Icefox
NotAYakk:
Your glyph system sounds rather cool, though it makes me think more of magic as a circuit diagram than a programming language. Which might be pretty interesting, really... Might be an easier way of visualizing how the spell actually works, at least. It could mean more design work since it's a bit of a departure from the programming languages I've actually built before, but... I'll toy with the idea.


Honestly, I was trying to make it less programming language esque. There are two dimensional programming languages, but they are still pretty much turing machines, just with a wierd tape.

By making it about glyphs that redirect flows of mana, it should stay somewhat understandable. It also allows for "not quite" effects: your flows can be unfocused and scatter, your glyphs can be "not quite" at the right spot, and the result can be more or less what you want it to be like.

Quote:I've never really played Morrowind much, but I'll give it a go. And I've never even heard of Dungeon Master, but it sounds quite interesting. I'll have to do some more research, I see...


Morrowwind's spell generation system is rather stupid, honestly. I didn't go deeply into the sequal's spell generation, but on the surface it looked pretty much the same.

Quote:Oh, I'm trying to stay away from the stereotypical fire/water/earth/air elements, though. They're, well, boring. I'm still messing around with the exact parameters, but the elements or domains of magic I have so far are heat, light, matter, life, space, motion, and power. They aren't all equal; heat, light and matter all sort of work more or less the same, just on different aspects of reality. You can create it, remove it, or otherwise manipulate it. Motion is pretty much what it sounds like, making things go. Life is sensing and manipulating living things, healing, detecting life, seeing through the eyes of a mouse, and so on. Space is shaping objects, teleportation, possibly planar travel of one form or another, doing things at a distance. And power is raw magic; drawing it from the environment, messing with it, percieving it.


So...

Each thread of mana has a heat/light/matter amount (either positive or negative). Using a 3-colour space (RGB, say), you can assign one channel to each of the mana types. So heat is more red, cold is less red. Light is more green, dark is less green. Matter is more blue, void is less blue.

White is "heat, light and matter", Black is "cold, dark and void".

Other spaces could be used to represent this. Sadly, human vision is basically three dimensional, so you can't have 4 dimensions -- intensity, and three mana types -- represented in a single static colour.

The other three kinds of mana carry information about the real world. Ever heard about "sympathetic" magic? Various "variables" could be availiable to your spells. You might want to use a different noun for those last 3 kinds of mana -- spirits maybe?

Quote:Hmmm, it occurs to me though that Space and Motion might be the most important ones, simply because you're ALWAYS going to end up using them one way or another. I'm not quite sure whether that's a downside or not, yet.


We could get grammerish?

Object -- what is doing the manipulation
Subject -- what is being manipulated
Verb -- what kind of manipulation

Object(s): Type of power being used. Fire/Earth/Water/Air, or Heat/Light/Matter, or Alpha/Beta/Gamma

Subject(s): A means to indicate what the spell is being cast on.

Verb(s): What is done. Read/Write <Power> information? Creation or Destruction of <Power> stuffs? Store/Release <Power> stuffs?

See through mouse's eyes:
O(Light), Subject(Eyes of Mouse), Verb(Read) => O(Light), Subject(Eyes of Self), Verb(Write)

Globe of Darkness around mouse:
O(Light), Subject(Mouse, and area nearby), Verb(Destroy)

Freezing Ray:
O(Heat), Subject(Ray along finger), Verb(Destroy)
Burning Ray:
O(Heat), Subject(Ray along finger), Verb(Create)

Fireball:
O(Heat, Light), Subject(Palm of hand), Verb(Store)
=>
O(Heat, Light), Subject("), Verb(Create)
=>
O(Heat, Light), Subject("), Verb(Move)
=>
O(Heat, Light), Subject("), Verb(Release)

...

However, I think the means of programming is more important than the idea of programming, or the results of programming, itself.

The cost of the spell, and it's difficulty, should be matter of both the amount of power and the complexity of the program. It should be impossible to cast a spell (at least alone) long before you reach the Turning tar pit -- we don't want people casting "microsoft windows", now do we?
Advertisement
A (very) preliminary spec exists at:

http://cec.wustl.edu/~snh1/magic-system.txt

This really isn't 100% complete or sane or well-thought-out, but sorta gives an idea of what I'm aiming for. Maybe. I'll keep working on it. Replies to all the wonderful suggestions will come when I am awake.
-----http://alopex.liLet's Program: http://youtube.com/user/icefox192
I liked Dungeon Masters magic system, although the spells were coded in. Each rune had a meaning. In total there were four sets of runes:

1st Rune: Power, strength of spell.
2nd Rune: Elemental Influence (Fire, Water, etc.)
3rd Rune: Form (Projectile, Potion, etc.)
4th Rune: Alignment (Good, Evil etc.) I think.

To cast "Torch" you pick a power rune, and then pick the "Ful" rune (which means fire) from the elemental list. If you picked a low power power rune the room will lighten slightly, if you picked a higher power one it will become bright, or if the wizard is a lower level the spell will fail. Then to cast a fireball you again pick a power, then the fire rune "Ful" again, and then add an "Ir" form rune which defines that it should be a ball.

I liked how it worked and thought it would be better if you could make up your own spells, swapping around runes to get different elements with different forms etc.

Let us consider the thing from another angle: the angle of the user interface.

A user of your game/program is bound to act as someone who can REALLY produce magic. And magic is just a way to produce an effect that normal human forces cannot produce in that frame of time. It makes use of OTHER natural forces, and binds them to the magician will to produce the desired effect.

I had already exposed, in another thread, a system which I believed would work well for freeform magic. I reconsidered this, and evolved from there.

Let's say that magic is just a flow of energy, and that that energy actually coems from EVERYTHING, litteraly, under different forms. Take a little bit of The Matrix for the flowing lines defining the world, a pinch of Star Wars for the innate Energy that animates the Universe, pepper that with Magic: The Gathering for the different colors of magic one can see, and you've got yourself a concept.

Five colors of energy one can see, coming from everything in your surroundings, in more or less powerful lines. You "tap" into these lines with more or less the same effects as with MtG. It means that you either break the line and use the power it contains, or redirect it and use its power to fuel your spell.

As a beginner sorcerer, you may only use up to three lines (or mana) for your spells, and therefore, only use three SLOTS of spell components.

Your basic spell components are, say, "PUSH", "PULL", or on their more advanced forms, maybe "PRESS" and "DRAW". By using thrice the "PUSH component with three AIR mana lines, you can repell your opponent, or anything directed at you, including spells, that have an inherent strength inferior to three. You can do the same thing with PULL, and redirect a potential buff on yourself instead of the other sorcerer.

If you want to AIM something at the other, you have to use at least one line to channel the spell to your target, and any sorcerer can see that line going from one to the other, and deduce something is bound to leap from one to the other. This deduction can trigger different reactions, like an attempt to cast a wall, or to deflect the spell, or to sever the line, or anything.

PRESS and DRAW would have the same effects as three PUSHs or PULLs, but cast in a third of the time, since it would take three slots.

And as you grow in power, you learn to master more lines at a time, allowing for more powerful spells, and more different forms of spell components, such as DRAIN, or WALL, or what you can think of.

The interest of this system is that the sorcerer can actually SEE how much mana he can draw from the lines, and prepare his battle plan in accordance with that, choosing between fast cast spells that draw little to no mana, and have little to no effect, or longer spells with more raw power, more complexity, and less chances of a recast.

An example of this would be taping into three AIR lines, and then a FIRE line. By putting three PUSH slots and an EXPLODE slot, you get a rush of air and an explosion of heat, which is a fireball. If you click on one AIR line, one HEAT line,a nd two more AIR lines, and then press PULL, EXPLODE, PUSH, PUSH, what you get is a rush of air towards yourself, drawing your ennemy to you, an explosion of heat around yourself, which propels your close enemy further away. Putting two air lines before the HEAT one, and two PULL before the EXPLODE means you can draw more than one ennemy, i.e. Damage with area of effect.
Yours faithfully, Nicolas FOURNIALS
I have been working on a similar spellcasting system for a while.

It started out as a scripting language and then transformed into noncommunative algebra. (Maybe it's because I'm a math major) It's quite a neat system.

Spells can be created out of smaller spells. And then you can make more complicated spells out of those. Spells can be added and multiplied with each other.The most elemental spells do stuff like moving forward, rotating, binding a spell to an object, pushing & pulling, opening & closing, effecting the attributes of an object, evoking fire, cold, electricity, ...

Right now I am working on the mechanisms for mana cost, and other methods of balancing the casting system. As well as a pretty way of expessing spells.

The problem I currently have is that I don't have a decent engine to program this in. I have been thinking of maybe programming something simple at first, and then expanding it as I go along.

You just gave me more incentive to actually finish my project.
The sentence below is true.The sentence above is false.And by the way, this sentence only exists when you are reading it.



Components
Behaviors
Effects
Modifiers
--------------------------------------------[size="1"]Ratings are Opinion, not Fact
this would be cool and it is a growing idea for sure but look at one problem.....unless the game is all about magic you just gave the mage/wizard/sorceror or whatever you wanan call it the superiority. Warriors would have flames shooting out of them from you and they would have no way to protect from the other player's cruelest and most sadistic imagination of killing with this magic. This is one problem which youd havta balance out.
Quote:Original post by Adriac
this would be cool and it is a growing idea for sure but look at one problem.....unless the game is all about magic you just gave the mage/wizard/sorceror or whatever you wanan call it the superiority. Warriors would have flames shooting out of them from you and they would have no way to protect from the other player's cruelest and most sadistic imagination of killing with this magic. This is one problem which youd havta balance out.


Not necessarily. With a system this good, why would you limit it to only one class of the game? The gameplay for simple warrior is never going to match this kind of complexity. Magic could be universal, and everyone/every class would be able to use it. And if you're not that good at creating new spells, you can always use someone else's -- of course only the really smart people are going to have the newest and coolest spells before everyone else. But it's a game and your reward should be proportional to your skill.

About magic formulae running rampant and everyone using the same ubberish spell, there's a simple solution to it: the more a glyph is used, the less powerful it becomes globally. If everyone uses Saruman's formulae for a fireball, it will become ineffective, and another way to create a fireball will have to be found (which shouldn't be hard given such a free-form system). This would shift the search towards new, original or long forgotten spells, instead of just dealing the maximum amount of damage possible.
And by the way the Anonymous Poster was me, forgot to log in :)
I agree with your last section completely about different ways to make spells to make it so everyone is always working hard to discover new ways to make a spell. However i still think that a class that didn't use magic would get left behind and something to make them advanced from other games too should be made.

This topic is closed to new replies.

Advertisement