[MUD-Dev] re: Questing Systems

Todd McKimmey rufus at legendmud.org
Wed Jul 26 10:48:53 CEST 2000


----- Original Message -----
From: Kristen L. Koster <koster at eden.com>
To: <mud-dev at kanga.nu>
Sent: Tuesday, July 25, 2000 10:17 AM
Subject: Re: [MUD-Dev] re: Questing Systems

> Some examples of things done with these flags that couldn't have been done
> easily with the first type:
>
> - You can track how much a player owes for something and update that
amount
> and store it on the player. This way they can pay it in amounts they can
> carry.
>
> - You can require that a quest step be completed in a specific amount of
> time.
>
> - You can allow players a set number of attempts at a quest step in a set
> period of time but allow others to try too.
>
> - Track up to 4 specific item vnums needed to complete a quest step. (or
up
> to 4 of any number necessary.)
>
> - Track up to 2 strings that could include the last person you saw and the
> next person you have to visit.
>
>
> Did I miss anything obvious or even not so obvious on those, Todd?

Actually, I think you can only store 3 integer values, but I think you got
most of them.

The reason these flags came about (I called them Temporal Flags, or TFlags
because they had a timer element in them which the normal flagging system
did not) was because originally the scripting language for LegendMUD had no
component to do math, construct strings out of random elements, etc. Since
the language itself wasn't particularly open to free-form variable creation,
I added in 3 integer variables and 2 string pointers to every NPC. They were
indenpendant of the scripting system, so they could be carried over between
script executions. After a while, I saw a great limitation in this, but
didn't want (nor did I really know how) to tear apart the script system and
add dynamic variable support. So I took our idea of quest flags (a variable
length array bitset idea) and combined it with a copy of the variable set
placed on each npc and added in a timer element. Indeed it probably makes
the original 5 variables out of date, but it all works =).

-Todd





_______________________________________________
MUD-Dev mailing list
MUD-Dev at kanga.nu
http://www.kanga.nu/lists/listinfo/mud-dev



More information about the mud-dev-archive mailing list