Rules
-----

_Demands_on_new_quests_
* A nice and coherent background.
* Random moment that prevents the use of scripts.
* Testplay by fellow wizard.
* Testplay by mortal, i.e NOT only your test char or 2nd.
* Documentation (specifications and how to solve) for the game archive.
* It must be approved before you open it. Beware, your area might be checked
  for Quality at this point.
* The quest should be Nanny original, i.e. not be open on any other accessible
  Mud. 
* The quest should be coded in a way that keeps it alive, even after the 
  creator has left Nanny. It should be easy to maintain and if the quest
  requires code from another wizard's area, the name of that wizard should 
  be noted in a special file, together with the nature of the link and the 
  names of the files used.


Guide lines
-----------

_Puzzles_
Puzzles are here to reward the player for doing things the first time they do
it. Puzzles need no approval and aren't mandatory to solve to become wizard.
There are two functions to remember in /obj/player.c: set_puzzle() and
query_puzzles().
See puzzles.r for more information.

_Quests_
A quest is a problem to solve for the mortals. NannyMUD have lots of quests and
not only require the mortal to solve them to become wizard, but also to advance
in levels. Any wizard may set up quests.

_Multi_area_quests:
To install a quest requiring code from several wizards areas, the responsible
wizards have to consider the following things:
  * permission from the other wizards to use their code
  * control over the code used, or in some other way make the quest solvable 
    even if one or more of the contributing wizards leave Nanny

_Rewards_for_solving_a_quest_
A quest gives the player some quest points. You don't have to have any other
reward. If you give a useful item, give it the first time only. If it's not
useful, give it every time.

_The_mechanics_of_making_a_quest_
0/ Come up with a idea. Write a doc. Mai, the doc to the quest coordinator.
1/ Create the objects, random part, testplay it and assign quest points to it.
2/ Get it approved.
3/ Give the quest a unique name starting with your name, and write a hint
   that will be given to the players as information.
4/ In your castle, add code to put a quest object ("/obj/quest_obj") in
   the quest room ("/room/quest_room") once each reboot.

_Functions_to_remember_
Here is a brief list of useful functions. Take a look in the files for more
details.

/obj/player.c :       set_quest()
                      query_quests()
/obj/quest_obj.c :    set_name()
                      set_hint()
                      set_short()
                      set_points()
                      query_points()
/obj/quest_mailer.c : set_mailtext()  
                      set_other_wiz()

_An_example:_padrone_
This example was written by Padrone once upon the time. It is still (February
6:th 1995) a valid piece of code, which shows that carefully written things
will last longer.

    object qobj;

    qobj = clone_object("obj/quest_obj");
    qobj->set_name("padrone");
    qobj->set_hint("Padrone is sad. He built a beautiful walking castle,\n" +
        "but a gang of pirates stole it and now he cannot\n" +
        "find it any more. Help him to get it back!\n" +
        "You don't have to be big and dangerous to solve this quest,\n" +
        "but it's always a good idea to bring a weapon and some armour...\n");
    qobj->set_short("Find Padrone's walking castle");
    qobj->set_points(30);
    move_object(qobj, "room/quest_room");

To mark that a quest is solved, call the function "set_quest" in the player
object. Example:

    if (this_player()->query_quests("padrone")) {
         write("Padrone says: What? Have you solved the quest again?\n");
         write("Padrone says: But Ok, I won't be angry.\n");
    }
    else {
         write("Padrone says: You found my castle! I am so happy!\n");
         this_player()->set_quest("padrone");
    }


Historic note
-------------
Below follow some of the NannyMUD history. Read it for your enjoyment; the
parts that look like rules are either obsolete or covered above. The text was
created by Padrone a long time (several years) ago.

_Quest_points_
In the original LPmud, you had to solve all the quests (or all except some
number, like 2) to become a wizard. All quests were considered equal.

On NannyMUD, each quest gives a certain number of points.
Angmar's quest is used as the "prototypical quest", and gives 100 points.
Easier quests give less points, harder quests give more.
The default, i. e. what you get if you don't set the quest points
in your quest, is 50.

To be able to advance to wizard, a player must - except from one million
normal experience points - have collected a certain percentage,
currently 70%, of the maximum number of quest points. This percentage
is defined by the constant QUEST_POINTS_PERCENT_TO_WIZ in "/room/tune.h".

But wait, it's more complicated than that!
Earlier, many high-level players (on level 19 or so), used to be upset
when new quests were added, since they then suddenly had to solve even
more quests than they had thought they would.
Because of that, each player will "remember" what the max number of
quest points was when that player was created.  To advance to wiz, he
needs to have 70% of THAT number of quest points, instead of of the current
max number.
This means that the players will be happy instead of angry when a wizard
installs a new quest, since they don't have to do more quests, they'll
just have more of them to choose from!

But wait (again), it's actually even more complicated than that!
Since the max number quest points could decrease, for example if a wizard
removes a quest or lowers the points for it, the player actually needs
70% of the smallest number of "max number when he was created" and
"current max number".

For players who - for some reason - don't want to kill a megapoint
of monsters, there is an alternative: if you solve ALL the quests
you can become immortal even without the experience points.
As a "sanity check", this only works if the total number of quest
points is at least 1000.


_Deciding_how_many_quest_points_to_give_for_your_quest_
Each wizard must decide (in cooperation with the other wizards and the arch
wizards) how many quest points a quest he has made should give.

Angmar's quest is used as the "prototypical quest", and gives 100 points.

*** ATTENTION! WARNING! READ THIS:
    Start with a very conservative estimate of the value of your quest,
    i. e. set the number of quest points very low!
    You can always raise it later. Players who have already solved it
    will get the extra points too, since a player's number of solved
    quest points is re-calculated every time it is needed.

*** ATTENTION! WARNING! READ THIS:
    Before you install a quest, the number of quest points
    (and the quest itself!) must be approved (see above).

Easier quests should give fewer points, harder quests give more.
How difficult a quest is to solve is of course hard to judge, and
it depends on many things, but here is a list with some suggestions
on things to consider:

        + Trickyness ("yes, of course, if I give the bone to the dog it'll
          start eating and become my friend and I can pass it into the
          treasury...")
        + Fighting (how many monsters you have to kill, and how big they are)
        + Dispersal (how much you have to run around in different parts of
          the game)
        + Time (just how much time it takes - maybe this is a function of
          dispersal and fighting?)
        + Programmed variation -- that is, can you ask someone how to solve
          Korkbert's quest, and then write a macro "solve-korkberts-quest"
          in your client, or are labyrinths and spells different each time?
        ? Stupid difficulties ("sigh! - you have to write 'pull the big black
          longsword from stone' instead of 'get sword'") - but then again,
          maybe you shouldn't give points for things like that, just fix them?
        - Is it possible to cheat -- i. e. can you let someone else solve the
          quest, buy the magic sword from him for 100 kilogold, and then you
          just give it to the king and get the princess and half the kingdom?
        - Availability on other muds -- the orc_slayer quest, which is present
          on every LPmud in the world, and everyone can solve in his sleep,
          should maybe not give as many points as a quest that only exists
          on this one mud?
        + Special requirements on the player - ("to kill the demon you must
          use this magic sword, and then your alignment must be over 1000")
        ? Difficulties getting started (the hint in the guild?)

Examples of points for some quests on NannyMUD:
        Orc slayer                      10
        Padrone's walking castle        30
        Angmar's treasury               100
        Padrone's chaosdemon            110
        Kobayashi (by Chrisp)           200

- EOT -

Help topics available:
README area.r armour.r behave.r clubs.r
container.r debug.r general.r guilds.r heal.r
monster.r paragon.r pub.r puzzles.r quests.r
room.r shop.r spells.r testplaying.r weapon.r
word_list

[START|BACK ]




[ NannyMuds main page | FAQ | Contact us ]

You are guest number 237 since November 2019.
This file was last modified: June 2000.