[MUD-Dev] Re: let's call it a spellcraft
Vadim Tkachenko
vt at freehold.crocodile.org
Tue Sep 22 22:13:04 CEST 1998
Vladimir Prelovac wrote:
[and quzah added later, I will refer to his post as well]
> The spells are one of my concerns. I am looking for a spell system, that > would be possible to code, and would let the spellcasters create new spells > in the game.
Basic question:
OK, I want to create the 'Apocalypse' spell, destroying every player in
the area of effect, except myself.
And at the same time I joined the game 5 minutes ago.
How are you going to define the limitations on the spell being created?
> Something like spell researching. What I, so far, have in mind
> is making a base of 50 or 100 various effects that a spell may produce.
Again, why limit yourself with numbers like 50? Why not 500? Why not
just X?
> Then making a base of 50-60 basic spells (as a combination of those
> effects)
What about the side and cumulative effects of the variouse spell
components?
How about creating a complex spell by sequencing some simpler spells and
setting a proper timing for them (I guess, that was discussed here
before)?
Like, I can feel the opponent going to cast a fireball on me, so I fire
the sequence of "magic mirror" on myself and "Dispel heat resistance" on
him?
> which the player can start with (finding runes near his village, a
> local wizard teacher, a wandering mage... ).
Ultima Underworld? I liked it very, very much (by the way, never played
the Ultima series (up to VIII), does it have the same magic system?)
> ALL the other spells shall become to existance by the spellcasting players > themselves (ie. after some time spend on research, mixing various material > and such, a mage could come up with a new spell).
How would you define the necessity of some material component for the
spell? See, if you just say "I want this spell to require the feather"
and that's it, it's not fun, but if you say "This spell requires a
feather because...", it's completely different.
> He would then give it a name, write it to his spellbook, and maybe teach it > to his friends. That way the new spell, carrying the name he gave it, would > be tought in the lands for generations after.
Good idea, tough to implement, though ;-)
Now, some afterthoughts.
[Quzah]
> I have in mind a much simpler effect list. Basically, there are
> only a very very few things that a spell can do:
> Lower X
> Raise X
> Set X to Y
I presume that X and Y are properties (for clarity sake, sometimes
they're called attibutes, or stats).
Now, can you give me a real example when Y can be _set_ to X, unless
it's boolean? Also, let's consider this:
1. You scratch your hand, have some temporary disability (can't put your
hand into boiling water), but it will heal off by itself.
2. You accidentally miscalculate your axe swing and chop off your hand.
You can't fix it unless you go to the surgeon with a lump sum and he
sews it back, or you use magic to grow a new hand.
Here you have the example of the vanishing effect and permanent effect.
Unfortunately, the vanishing effect could be pretty
calculation-intensive (especially if you go into extremes like the
trajectories - say, it may be half-decay, or linear, or whatever else),
but I believe the abovesaid is a good _generic_ way to handle the
property changes and hopefully can be optimized (here's a callback to
the event handling discussion).
[actually, all abovesaid is a simplified version of property handling in
Gradient MUD, dormant at the time]
Also, there are effect dependencies, like - if you chop off your hand,
you start bleeding until you either fix it or die from the blood loss,
not counting the original effect ;-)
Comments, anyone?
[Quzah]
> 1) area of effect needed
> 2) range needed
> 3) component list
> 4) sylibus list
> 5) spell trigger/action
Actually, can it be generalized as
"action results are a function of (action, actor, target, context)",
and every component may change properties through the action. For
example, if you try to cast a fireball in a small room, you definitely
get some ashes on the walls and ceiling, and expect some backfire, too
;-) and just prey that the ceiling doesn't collapse on you.
Every component can influence the course of action, too - what happens
if you cast a fireball underwater? Or in a presence of explosive gases?
And again, I'd propose to include the response actions along with the
property changes into the action results (touch that plant I don't know
the English name for (mimose?), and it squeezes its leaves).
> Vladimir.
--
Still alive and smile stays on,
Vadim Tkachenko <vt at freehold.crocodile.org>
--
UNIX _is_ user friendly, he's just very picky about who his friends are
More information about the mud-dev-archive
mailing list