October 2003
- Scripting Languages and Magic gbtmud
- Scripting Languages and Magic Edward Glowacki
- Scripting Languages and Magic Freeman, Jeff
- Scripting Languages and Magic Patrick Dughi
- Scripting Languages and Magic Sheela Caur'Lir
- Scripting Languages and Magic Patrick Dughi
- Scripting Languages and Magic Smith, David {Lynchburg}
- Scripting Languages and Magic Jonathon Duerig
On Fri, 3 Oct 2003, gbtmud wrote:
> I am attempting to write a new MUD codebase, and I was wondering
> what people have done as far as magic systems. Specifically, I was
> thinking of letting the players define spells in a custom
> scripting language so that new spells could be created on the
> fly. My question is, has anyone already done this? If so, what
> pitfalls are there to avoid, and what functionality should I
> add/subtract? Any input would be helpful on this.
I have given some thought to this kind of thing. One notion that I
like is to have magic be a series of 'words'. Each 'word' would be
like the next instruction in a very simple byte code. One of the
things I like about this is that one could randomize what the words
mean. Each player would then discover new words and then experiment
to find out what they did.
There are a number of possible problems with this approach. First,
one would have to design the words such that any combination is a
valid spell of some kind. It would be very annoying for the player
constantly receive the message 'that is not a valid spell, try
again'. Second, one would have to design the system so that things
like infinite loops don't result in infinite rewards. Third, one
would have to remove other possible abuses.
Here is a simple example of how somebody might try this out. Let's
assume that the following commands exists:
twice: Execute the following instructions (until endBlock) twice.
fire: Burn target.
endBlock: end the current block of instructions.
Lets assume that each word executed takes time, and costs mana,
depending on the word. This would also be a solution to the infinite
loop problem. The spell ends when they are out of mana.
I am also assuming that in this example system, the end of a spell
incantation has an infinite number of optional endBlocks. And
effects just add to some total until when the spell ends, all of
them are unleashed at once.
Let's say that I see the word for 'fire' as 'teltra', I see the word
for 'twice' as 'loxar', and I see the word for 'endBlock' as 'mel'.
I am a player and I already know what 'teltra' does. I've just
learned the word 'loxar', and I want to know what it does. Here is
how a session might go (the comments after the // is why that
response is given):
chant loxar
--Nothing seems to happen-- // loxar has no effect on its own.
chant teltra at monster
--The monster's fur is charred-- // teltra does some amount of
fire damage
chant teltra loxar at monster
--The monster's fur is charred-- // same damage. The twice
// doesn't modify the fire.
chant loxar teltra at monster
--The monster is badly burned-- // Twice as much damage since
// the fire is added twice.
The last two commands might take longer and cost more manna. After
this session, the player might do something like this:
rename teltra fire
rename loxar enhance
Because teltra does fire damage and loxar seems to enhance the
command after it. After some more experimentation, the player might
realize a more exact meaning for loxar. Once those commands are
done, the player can use 'fire' and 'enhance' in chants rather than
'teltra' and 'loxar'.
This kind of thing could be a lot of fun, but it would take much
work to ensure that no abuse was possible.
---
"...the best tasting food, the most wonderful music, and the most
beautiful picture you have ever experienced..." -Amy Peterson - Scripting Languages and Magic J C Lawrence
- Scripting Languages and Magic Richard A. Bartle
- Scripting Languages and Magic eric
- Scripting Languages and Magic Matthew Estes
- Scripting Languages and Magic Ben Chambers
- Scripting Languages and Magic J C Lawrence
- Scripting Languages and Magic Nathan F. Yospe
- Scripting Languages and Magic Smith, David {Lynchburg}
- Scripting Languages and Magic J C Lawrence
- Scripting Languages and Magic Edward Glowacki
- Scripting Languages and Magic Freeman, Jeff
- Scripting Languages and Magic Crosbie Fitch
- Scripting Languages and Magic Sheela Caur'Lir
- Scripting Languages and Magic Crosbie Fitch
- Scripting Languages and Magic Sheela Caur'Lir
- Scripting Languages and Magic Nathan F. Yospe
- Scripting Languages and Magic Marian Griffith
- Scripting Languages and Magic McDonald, Stephen
- Scripting Languages and Magic Sheela Caur'Lir
- Scripting Languages and Magic Mats Lidstrom
- Scripting Languages and Magic Sheela Caur'Lir
- Scripting Languages and Magic Eric Merritt
- Scripting Languages and Magic gbtmud
- Scripting Languages and Magic gbtmud
- Scripting Languages and Magic Jo Dillon
- Scripting Languages and Magic Kwon J. Ekstrom
- Scripting Languages and Magic Steven Metke
- Scripting Languages and Magic Alex Chacha
- Scripting Languages and Magic Jason Murdick
- Scripting Languages and Magic J C Lawrence
- Scripting Languages and Magic Nicolai Hansen
- Scripting Languages and Magic Sheela Caur'Lir
- Scripting Languages and Magic Adam Burr
- Budget (was size) Michael Sellers
- Graphics engine choice (size) Derek Licciardi
- Graphics engine choice (size) Paolo Piselli
- Graphics engine choice (size) Sheela Caur'Lir
- R: size Ghilardi Filippo
- [TECH] TCP fundamental throughput limits? ceo
- [TECH] TCP fundamental throughput limits? Jeremy Noetzelman
- [TECH] TCP fundamental throughput limits? Sheela Caur'Lir
- [TECH] TCP fundamental throughput limits? Miroslav Silovic
- [TECH] TCP fundamental throughput limits? Jeremy Noetzelman
- [list] Scripting Languages and Magic Scion Altera
- [list] Scripting Languages and Magic Talanithus HTML
- SSH Encryption on data stream Craig H Fry
- SSH Encryption on data stream squid
- SSH Encryption on data stream Mike Shaver
- SSH Encryption on data stream Brian Hook
- SSH Encryption on data stream Amanda Walker
- SSH Encryption on data stream Christopher Allen
- SSH Encryption on data stream Christopher Allen
- SSH Encryption on data stream Mike Shaver
- SSH Encryption on data stream ceo
- SSH Encryption on data stream F. Randall Farmer
- SSH Encryption on data stream J C Lawrence
- SSH Encryption on data stream Amanda Walker
- SSH Encryption on data stream Felix A. Croes
- MUD-Dev Digest, Vol 4, Issue 30 Lee Sheldon
- MUD-Dev Digest, Vol 4, Issue 30 Matt Mihaly
- MUD-Dev Digest, Vol 4, Issue 30 Dave Rickey
- MUD-Dev Digest, Vol 4, Issue 30 Lee Sheldon
- MUD-Dev Digest, Vol 4, Issue 30 Matt Mihaly
- Web vs. Java client Mark 'Kamikaze' Hughes
- Web vs. Java client Torgny Bjers
- Web vs. Java client ceo
- Web vs. Java client Mark 'Kamikaze' Hughes
- Web vs. Java client Elia Morling
- Web vs. Java client Christopher Allen
- Web vs. Java client Baar - Lord of the Seven Suns
- Web vs. Java client Christopher Allen
- Web vs. Java client Kwon J. Ekstrom
- Web vs. Java client Christopher Kohnert
- Web vs. Java client Christopher Allen
- Web vs. Java client ceo@grexengine.com
- Web vs. Java client Baar - Lord of the Seven Suns
- Web vs. Java client Mark 'Kamikaze' Hughes
- Web vs. Java client Matt Mihaly
- Web vs. Java client Christopher Allen
- Web vs. Java client Jeff Fuller
- Web vs. Java client(?) Joshua Judson Rosen
- Web vs. Java client(?) Eric Merritt
- Web vs. Java client Eric Merritt
- Web vs. Java client Mike Shaver
- Web vs. Java client Jeff Fuller
- Web vs. Java client Mike Shaver
- Web vs. Java client Mark 'Kamikaze' Hughes
- Web vs. Java client Matt Mihaly
- Web vs. Java client Mark 'Kamikaze' Hughes
- Web vs. Java client Ben Greear
- Web vs. Java client Jeff Fuller
- Web vs. Java client Ben Greear
- Web vs. Java client Kevin Reid
- Web vs. Java client Joshua Judson Rosen
- Web vs. Java client Jeff Fuller
- Web vs. Java client Adam Burr
- Web vs. Java client Daniel.Harman@barclayscapital.com
- Web vs. Java client Kwon J. Ekstrom
- Web vs. Java client Matt Mihaly
- Web vs. Java client Matt Mihaly
- MudDev FAQ - part 2 Marian Griffith
- MMORPG: where to start for making and running a game Richard Brown
- MMORPG: where to start for making and running a game Eric Lee {GAMES}
- MMORPG: where to start for making and running a game Michael Sellers
- MMORPG: where to start for making and running a gam e Peter Tyson
- MMORPG: where to start for making and running a game Edward Glowacki
- MMORPG: where to start for making and running a game Oliver Smith
- MMORPG: where to start for making and running a game Dave Rickey
- MMORPG: where to start for making and running a gam e Daniel.Harman@barclayscapital.com
- MMORPG: where to start for making and running a gam e Michael Sellers
- MMORPG: where to start for making and running a gam e Jeff Thompson
- MMORPG: where to start for making and running a gam e Sheela Caur'Lir
- MMORPG: where to start for making and running a gam e Derek Licciardi
- MMORPG: where to start for making and running a game Lee Sheldon
- MMORPG: where to start for making and running a game ceo
- MMORPG: where to start for making and running a game Lee Sheldon
- MMORPG: where to start for making and running a game Patricia Pizer
- MMORPG: where to start for making and running a game Lee Sheldon
- MMORPG: where to start for making and running a game Patricia Pizer
- MMORPG: where to start for making and running a game Oliver Smith
- MMORPG: where to start for making and running a game Oliver Smith
- MMORPG: where to start for making and running a game Lee Sheldon
- MMORPG: where to start for making and running a gam e Koster, Raph
- MMORPG: where to start for making and running a gam e Lee Sheldon
- MMORPG: where to start for making and running a game Sheela Caur'Lir
- MMORPG: where to start for making and running a game Damion Schubert
- Open Source Rules Engine Craig H Fry
- Open Source Rules Engine Emil Eifrem
- [NEWS] The Latest in TV Reality Michael Tresca
- [NEWS] The Latest in TV Reality Dave Rickey