[MUD-Dev] Looking for a Magic System (inspired by Bartle's book)

David Love dlove at nighton.net
Thu Aug 25 20:26:51 CEST 2005


All of this discussion about magic-crafting has gotten me thinking...

Let's assume we have a programming language that defines functions
for applying elemental force to a target (seems to be a popular
thing to do with magic :)):

(fire target mana)
(water target mana)
(wind target mana)
(earth target mana)
(light target mana)
(dark target mana)
... etc.

And some geometric primitives:

(point x y z)
(point id)
(x (point id))
(vector i j k (point x y z)
(vector (point source-id) (point target-id) magnitude)
(sphere x y z r)
(sphere (point id) r)
... etc.

Now, if we provide players with an interface to that language (if
you've ever played with Lego Mindstorms, it can be done graphically
and done well too), it might be interesting.

e.g.  Fireball

(defun fireball (target r magnitude mana-fire mana-air)
  (defun in-front-of-me
    (point
      (+ (x
          (point me))
         1)
      (+ (y
          (point me))
         1)
      (z
        (point me))))

  (fire (sphere (in-front-of-me)
                r)
        mana-fire)
  (air (vector (in-front-of-me)
               (point target)
               magnitude)
       mana-air))

Composition could get even more fun with wrapper functions for
specific types of fireballs, or other weird effects.  The mana put
in could be proporional to the effects.  If you do not put enough
mana into air, the blowing could stop before the target :) A smart
wrapper function could take a target and mana argument, then do some
math to make sure it reaches the target (if the target is too far
away, the fireball might not be very fiery anymore).  Yeah, the idea
is still fuzzy, but it might be of interest.

-D.Love
_______________________________________________
MUD-Dev mailing list
MUD-Dev at kanga.nu
https://kanga.nu/lists/listinfo/mud-dev



More information about the mud-dev-archive mailing list