True Magic....
Ok, this post is about discussing magic in games(RPGs only??).
What I was thinking is creating some kind of "Magic Compiler" that will process magic commands and create various magical effects in 3D.
There are lots of explanations of magical systems, such as that main components of it are
Water
Fire
Earth
Air
These are described as initial elements
This was all taken from a fantasy by follower of JRR Tolkien, Nick Perumov.
He also got other things such as
Walking on ground
Growing on ground
Thinking on ground
Living on ground
Lying on ground
And some others.
So, my main concept is to use these components with others, to create complex hierarchies for complex spells which will look and work completely different if you add or remove one of its components.
E.g there must be laws of magic, how to build a spell. Thats what I''m concerned about. How to create or algoritmize such laws??
Thank everyone who was reading my post...
" Do we need us? "
" Do we need us? "Ionware Productions - Games and Game Tools Development
quote: Original post by HellRiZZer
How to create or algoritmize such laws??
Your Lab Total is Int + Magic Theory + Intellego + Vim (+ appropriate knacks and affinities). You can also add the Magic Theory of your apprentice if he is helping you in the lab.
Oooops... wrong problem.
Buy the Ars Magica rulebook (Atlas Games). This RPG has the best magic rules I''ve ever seen (based on a Verb + Noun principle).
"Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." — Brian W. Kernighan
HellRiZZer,
I expect this isn''t much help, but I''ve also become interested in an algorithmic approach to magic. One universe which uses algorithmic magic is the one created by Masamune Shirow in his comic book, Orion, in which spells were governed by "dharmaquations" whose basic elements were "nagas" or lines of force produced by the interaction of fundamental subatomic elements of yin and yang karma. This magic system was interesting because it had its own physics and quantum theory: "psychoscience", which required rigorous study. Of course, throwing a God of Destruction and a giant nine-headed karma reactor together was bound to produce some phenomenal results.
Just saying it''s not a new problem, or one that only you are interested in. I''ll have to check out that Ars Magica book as well, and I''ll also follow this thread with a keen interest. Keep up the good work, and thanks for bringing this up!
---------------------------------------------------
-SpittingTrashcan
You can''t have "civilization" without "civil".
I expect this isn''t much help, but I''ve also become interested in an algorithmic approach to magic. One universe which uses algorithmic magic is the one created by Masamune Shirow in his comic book, Orion, in which spells were governed by "dharmaquations" whose basic elements were "nagas" or lines of force produced by the interaction of fundamental subatomic elements of yin and yang karma. This magic system was interesting because it had its own physics and quantum theory: "psychoscience", which required rigorous study. Of course, throwing a God of Destruction and a giant nine-headed karma reactor together was bound to produce some phenomenal results.
Just saying it''s not a new problem, or one that only you are interested in. I''ll have to check out that Ars Magica book as well, and I''ll also follow this thread with a keen interest. Keep up the good work, and thanks for bringing this up!
---------------------------------------------------
-SpittingTrashcan
You can''t have "civilization" without "civil".
----------------------------------------------------SpittingTrashcanYou can't have "civilization" without "civil".
Well, I haven''t read or even seen that book by Masamune Shirow, but I was just thinking about the following:
in magic you got 4 first elements
So, to create fireball you don''t need any complex system, you simply just "take" fire and "give" it a form of sphere or whatever you want, and limit its area with its opposite - water(my theory);
same with lightning, assuming there is no electricity in RPG worlds (except Fallout and Chrono Trigger and some others)
For other spells such as fire wall, circle etc you can use same principle.
For more complex spell such as teleport or levitation or poison, you''d have to combine first elements with secondary elements in some way (by laws) to get to final spell you wanted.
" Do we need us? "
in magic you got 4 first elements
So, to create fireball you don''t need any complex system, you simply just "take" fire and "give" it a form of sphere or whatever you want, and limit its area with its opposite - water(my theory);
same with lightning, assuming there is no electricity in RPG worlds (except Fallout and Chrono Trigger and some others)
For other spells such as fire wall, circle etc you can use same principle.
For more complex spell such as teleport or levitation or poison, you''d have to combine first elements with secondary elements in some way (by laws) to get to final spell you wanted.
" Do we need us? "
" Do we need us? "Ionware Productions - Games and Game Tools Development
What about spells that effects time-space continuum?
Dark magic? Necromancy? Gating? Imbuing? Detection? You have alot in your hands.
Dark magic? Necromancy? Gating? Imbuing? Detection? You have alot in your hands.
People are not inherently evil, but all of them are guillty of something...
January 15, 2002 01:30 AM
Long time listener, first time poster.
I''ve had the same idea for some time now. It''s rather interesting.
First you have to think how indepth you want to make spells.
You can either prescript much of the work already.
simplistic examples
element(strength).radius(5ft).giveform(wall) (fire/earth wall)
element(strength).throwtarget (fire ball)
complex
summon(magic).changeEnergy(strength).giveform.throwtarget (fireball)
''Rotating discs of ice''
summon(magic).changeEnegery(ice).giveform(disc).selfexist.SPLIT.
path1->restart(5 times)
path2->target(newobject:disc).control.SPLIT.path1->end
path2->moveRadiusCaster(5'').restart(inf)
you would of course have to monitor the loop. The telekenisis you can either put that into premade script, or make the player do all the movements themselves. as for the selfexist. This would create the disc a longterm object. This then can be used later, either by orignal caster ot by enemy.
like ''target(disc).control.throwtarget''. Somthing else you could
do would be.
target(withmouse:water).control(strength).giveform(disc).ect...
this method would require
These are rather abstract concepts though. And may not be to clear in representation of idea.
Here are my results so far.
1. Almost everything has to be broken down to base components, for complex spells or make scripted spells like ''wall of element. Then the only value that changes is the element and strength.
2. If you take the complex road it CAN be more rewarding. But greatly more difficult and frustrating.
3. this will require keeping track of state of the spell. whats in a loop. and so forth.
4. Actualy this is my project right now. But I''m far from the magic stage, and still in 3d Engine stage.
Mind my bad spelling. Grammer classes have never been my strong point.
I''ve had the same idea for some time now. It''s rather interesting.
First you have to think how indepth you want to make spells.
You can either prescript much of the work already.
simplistic examples
element(strength).radius(5ft).giveform(wall) (fire/earth wall)
element(strength).throwtarget (fire ball)
complex
summon(magic).changeEnergy(strength).giveform.throwtarget (fireball)
''Rotating discs of ice''
summon(magic).changeEnegery(ice).giveform(disc).selfexist.SPLIT.
path1->restart(5 times)
path2->target(newobject:disc).control.SPLIT.path1->end
path2->moveRadiusCaster(5'').restart(inf)
you would of course have to monitor the loop. The telekenisis you can either put that into premade script, or make the player do all the movements themselves. as for the selfexist. This would create the disc a longterm object. This then can be used later, either by orignal caster ot by enemy.
like ''target(disc).control.throwtarget''. Somthing else you could
do would be.
target(withmouse:water).control(strength).giveform(disc).ect...
this method would require
These are rather abstract concepts though. And may not be to clear in representation of idea.
Here are my results so far.
1. Almost everything has to be broken down to base components, for complex spells or make scripted spells like ''wall of element. Then the only value that changes is the element and strength.
2. If you take the complex road it CAN be more rewarding. But greatly more difficult and frustrating.
3. this will require keeping track of state of the spell. whats in a loop. and so forth.
4. Actualy this is my project right now. But I''m far from the magic stage, and still in 3d Engine stage.
Mind my bad spelling. Grammer classes have never been my strong point.
Ok, I''ve seen some of you are interested in that idea and some are already doing something to implement it.
Well, I was thinking of some logical way to create spells.
Let''s have a look on the nature.
It was every one of 4 elements : water, fire, earth and air.
What is the river? Water going in bounds (note gravity effect - where it will go)
What is wind? Masses of air given some energy and direction.
So, what we will have to deal with is basic laws of physics and materials.
I partially agree with Anonymous Poster where he shows example of spell building, but my point is to create a chain of either laws of physics or other elements affecting main one. For example, if we have
(Energy->Fire)->Water - we would have steam or heatered water;
Other example - if we would have
(Energy->Air)->Water - we would have wave with size depending on energy of air;
And so on.
So, what I was thinking is creating either a node(main element) so that other "things" can be binded to it; the final result will depend on how that "tree" will "compile"...
" Do we need us? "
Well, I was thinking of some logical way to create spells.
Let''s have a look on the nature.
It was every one of 4 elements : water, fire, earth and air.
What is the river? Water going in bounds (note gravity effect - where it will go)
What is wind? Masses of air given some energy and direction.
So, what we will have to deal with is basic laws of physics and materials.
I partially agree with Anonymous Poster where he shows example of spell building, but my point is to create a chain of either laws of physics or other elements affecting main one. For example, if we have
(Energy->Fire)->Water - we would have steam or heatered water;
Other example - if we would have
(Energy->Air)->Water - we would have wave with size depending on energy of air;
And so on.
So, what I was thinking is creating either a node(main element) so that other "things" can be binded to it; the final result will depend on how that "tree" will "compile"...
" Do we need us? "
" Do we need us? "Ionware Productions - Games and Game Tools Development
i thought about a system like this a while back, when designing a remake of ultima iv. if you know the ultima games (and you should if you are making a fantasy game), the spells used chants or incantations or whatever you wanted to call them, little quasi latin words. for example, fireball was ''vas flam hur'', which literaly translates to ''great flame wind''. using these words of magic i thought that new spells could be created (or attempted to be created) by using a combination of words and reagents. for instance you could use the normal incantation for fireball, but use four times the sulfurous ash to create a superpowerful fireball.
how would you represent this in code? well consider the above example of the fire ball. you can decompose the incantation into three parts, which i will can the ''size'' ''element'' and ''type'' components respectively. for some types the size element is not required. you could then have a class for each type, say projectiles as own, ones that affect bodies as another, and so on. the element would of course relate to which of the four (or five, or however many you want to work with), like earth or fire. the size would obviously be the relative size of the spell, large, small, huge, et cetera.
there are otherways to break this down, but that''d be up to you...
the same thing would go for reagents, if you were to have them. different combinations, or different elements might require different amounts of reagents.
so using this system ''vas flam hur'' would be a large fireball, and ''bet flam hur'' (bet being the word for small) a smaller fireball.
you''ll probably want to define your own ''grammar'' for spells, and your own words, but i don''t think it is too hard to do.
<(o)>
how would you represent this in code? well consider the above example of the fire ball. you can decompose the incantation into three parts, which i will can the ''size'' ''element'' and ''type'' components respectively. for some types the size element is not required. you could then have a class for each type, say projectiles as own, ones that affect bodies as another, and so on. the element would of course relate to which of the four (or five, or however many you want to work with), like earth or fire. the size would obviously be the relative size of the spell, large, small, huge, et cetera.
there are otherways to break this down, but that''d be up to you...
the same thing would go for reagents, if you were to have them. different combinations, or different elements might require different amounts of reagents.
so using this system ''vas flam hur'' would be a large fireball, and ''bet flam hur'' (bet being the word for small) a smaller fireball.
you''ll probably want to define your own ''grammar'' for spells, and your own words, but i don''t think it is too hard to do.
<(o)>
<(o)>
aDasTRa, you've given another useful approach to my idea!
I will post the laws and examples of use here as soon as I will understand them. Don't by shy and post here your examples, we will try to implement them together since its much better doing it in a company. )
Cheers!
" Do we need us? "
I will post the laws and examples of use here as soon as I will understand them. Don't by shy and post here your examples, we will try to implement them together since its much better doing it in a company. )
Cheers!
" Do we need us? "
Ionware Productions - Games and Game Tools Development
Edited by - HellRiZZer on January 16, 2002 4:01:33 AM
" Do we need us? "Ionware Productions - Games and Game Tools Development
Everyone
Since everyone else is posting examples, I suppose I should give some explanation as to the Orion system. As it''s a work of fiction rather than a game system, the details are sketchy, but they go something like this.
The fundamental karmic particles are the yineron(yin energy) and the yangeron(yang energy). Particles interact to form distinct classes of interactions. These create energy strings called "nagas" with a strength expressed in psyche levels and a complexity expressed in harmonic levels. All physical forces arise from naga-type energy strings, and the human psyche also creates nagas through life energy. Thus with focused effort and specific rituals it is possible to alter psychic and physical phenomena, including creating self supporting psychophysical "reactors" which draw and provide their own energy. Gods and demons are one such type of reactor. In more advanced times, it is possible to apply algorithmic and mathematical insight to the rituals, giving rise to the theory of "psycho-science." Using psycho-science, machines can be created to automatically enact rituals.
I realize this is all a little vague, but the system, as I mentioned, was for fictional purposes only and the author was free to make up new spells by himself... The interesting part in my opinion was the idea of casting spells on a quantum level - that magic is actually the manipulation of fundamental forces through one''s own energy, or energy derived from outside sources. Thus a sorceror can create moderate phenomena himself, but must use large groups of helpers or artificially generated psychic power to aid in enacting large or complex phenomena.
I hope this is in some way helpful... if not, forgive my rambling.
---------------------------------------------------
-SpittingTrashcan
You can''t have "civilization" without "civil".
Since everyone else is posting examples, I suppose I should give some explanation as to the Orion system. As it''s a work of fiction rather than a game system, the details are sketchy, but they go something like this.
The fundamental karmic particles are the yineron(yin energy) and the yangeron(yang energy). Particles interact to form distinct classes of interactions. These create energy strings called "nagas" with a strength expressed in psyche levels and a complexity expressed in harmonic levels. All physical forces arise from naga-type energy strings, and the human psyche also creates nagas through life energy. Thus with focused effort and specific rituals it is possible to alter psychic and physical phenomena, including creating self supporting psychophysical "reactors" which draw and provide their own energy. Gods and demons are one such type of reactor. In more advanced times, it is possible to apply algorithmic and mathematical insight to the rituals, giving rise to the theory of "psycho-science." Using psycho-science, machines can be created to automatically enact rituals.
I realize this is all a little vague, but the system, as I mentioned, was for fictional purposes only and the author was free to make up new spells by himself... The interesting part in my opinion was the idea of casting spells on a quantum level - that magic is actually the manipulation of fundamental forces through one''s own energy, or energy derived from outside sources. Thus a sorceror can create moderate phenomena himself, but must use large groups of helpers or artificially generated psychic power to aid in enacting large or complex phenomena.
I hope this is in some way helpful... if not, forgive my rambling.
---------------------------------------------------
-SpittingTrashcan
You can''t have "civilization" without "civil".
----------------------------------------------------SpittingTrashcanYou can't have "civilization" without "civil".
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement