diff --git a/OLD.d.polar b/OLD.d.polar
new file mode 100644
index 0000000..5f84520
--- /dev/null
+++ b/OLD.d.polar
@@ -0,0 +1,13796 @@
+Unser Morgengrauen hat endlich einen Nordpol:) (Freund, 30. Apr 1993, 13:22:02):
+Gruess Gott,
+
+Nach langwoechiger:) Arbeit ist nun der Weg von der Lichtung im
+Sueden der Polarregion bis hin zum Nordpol fertiggestellt.
+
+Doch VORSICHT!
+Der Pol selbst liegt mitten in einer Eiswueste, in der es nicht nur
+sehr schwierig ist, sich zu orientieren (Boings Dschungel laesst
+gruessen;-), sondern es auch von Eisbaeren und anderen Ge-
+soecks nur so wimmelt...
+
+Wer also schon weiter mit den Stufen ist und vor allem eine gute
+Waffe hat, der kann sich schon mal hineintrauen.
+
+Mit FREUNDlichen Gruessen
+                          Ein FREUND fuer alle Faelle.
+
+-----------------------------------------------------------------------------
+
+
+
+Neues Gebiet - Neue Monster (Pilgrim,  7. Apr 1994, 20:43:12):
+Hi,
+
+wie mir soeben meine treuen Helfer berichten, haben einige Orks
+oestlich vom Friedhof Ihr Lager aufgeschlagen.
+
+Also auf, tapfere Heldinen und Helden (u.a), macht Euch auf, und
+erwerbt Euch Ruhm und Ehre (insbesodere aber Erfahrungspunkte
+und Ausruestung), indem Ihr diesen fiesen Orks kraeftig was hinter
+die Loeffel gebt.
+
+
+
+Pilgrim
+
+PS: Aber Achtung, wer sich leichtsinnig in Gefahr begibt,
+    kann darin umkommen!
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+"Eskimo" oder vielleicht doch lieber "Inuit"??? (Beldin, 14. Apr 1994, 18:23:40):
+Es mag ja spitzfindig sein, aber ich finde, auch und gerade im MorgenGrauen
+sollte man auf die korrekte Bezeichnung von Volksgruppen achten.
+So stoert mich der Ausdruck "Eskimo" den ich unlaengst in der Beschreibung
+der Eisscholle entdecken musste doch massiv.
+Dieses Schimpfwort (uebersetzt in etwa: "Roh-Fischfleisch-Fresser") steht
+fuer mich auf derselben Ebene wie andere einschlaegige Begriffe zur
+Rassendiskriminierung.
+Wenn ihr hier im MorgenGrauen einen Schwarzafrikaner (beispielsweise einen
+Zulu in der Wueste :-) einrichten wuerdet (Ihr Magier...) dann wuerdet ihr
+ihn doch auch nicht mit "Nigger" titulieren oder????
+Mein Vorschlag ist, den "Eskimo" durch "Inuit" zu ersetzen, was die
+Bezeichnung dieser Menschen fuer sich selbst in ihrer eigenen Sprache
+darstellt.
+Also - nehmt diesen Artikel nicht so schwer wie er klingt sondern nur als
+Anregung... Ich wusste einfach nicht wie ich dieses haette lustiger
+formulieren sollen....
+
+Ich freue mich ueber jegliche Art von Antwort oder Reaktion... Bye
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Inuit (Rumata, 15. Apr 1994, 12:05:19):
+Hmm, das Problem ist wohl, dass Eskimo im Allgemeinen nicht als
+Diskriminieren erkannt wird. Dashalb habe ich gewisse Bedenken, dort
+einen Namen, mit dem Niemand etwas anfangen kann einzusetzen.
+Ok, dann heissen die Kerle im Polar Inuit, aber die Leute sollen sich
+ja etwas vorstellen, was so ausssieht wie das, was einem Immer als
+Eskimo vorgestellt wird. Wenn wir Bilder haetten, haette ich keinerlei
+Bedenken gegen den Namen Inuit.
+Ich bin gerne Bereit, mich bei jedem Inuit fuer den Namen Eskimo zu
+entschuldigen!
+Aber vielleicht hat ja jemand eine Idee, wie man diesen Konflikt aufloesen
+kann. "Ein dick eingepackter Polarmensch."
+unt polarmensch
+"Das ist ein Inuit (manchen unter dem Namen Eskimo bekannt).
+Er schut ziemlich grimmig drein, da ihn alle "Eskimo" nennnen, Du
+soltlest es lieber nicht tuen."
+Oder so :-)
+
+Rumata
+PS: Danke fuer den Hinweis.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Inuit (Yendi, 15. Apr 1994, 12:43:15):
+Gute Idee! :)
+
+-----------------------------------------------------------------------------
+
+
+
+Trari Trara die Post ist da ;-) (Troy, 20. Apr 1994, 12:26:36):
+Aufgrund von einschneidenden Strukturaenderungen im Post- und Fernmeldewesen
+des MorgenGrauens mussten auch einige Personalkuerzungen vorgenommen werden.
+Gluecklicherweise konnten etwa 90% der Freistellungen mit Vorruhestands-
+regelungen und Umschulungskursen zufriedengestellt werden. Da nun aber
+immer noch die Post auszutragen ist, hat die Oberpostdirektion Moulokin
+beschlossen, diese Aufgabe jungen dynamischen Aushilfskraeften aus dem
+gesamten MorgenGrauen zu uebergeben. Wer sich an dieser wunderbaren
+Aufgabe beteiligen moechte, kann sich beim Postmeister in Moulokin melden
+und dort eine Muetze und die Tasche mit den Briefen in Empfang nehmen.
+Der Job bietet eine EINMALIGE GELEGENHEIT, die Gegenden des MorgenGrauens
+kennenzulernen und mit den Einwohnern in Kontakt zu kommen. Meldet Euch
+noch heute!
+
+Die Oberpostdirektion der Koeniglich Moulokin'schen Post
+  i.A. Troy
+
+-----------------------------------------------------------------------------
+
+
+
+Der Weihnachtsmann (Troy, 20. Apr 1994, 20:15:15):
+Juengsten Korrespondentenberichten zufolge hat der Weihnachtsmann nun
+endlich am Nordpol seine Firma aufgemacht. Weiterhin ist er privat im
+Gletschergebiet anzutreffen, geschaeftlich wende man sich jedoch am
+Nordpol an ihn.
+
+Troy - Polarregionsmagier
+
+-----------------------------------------------------------------------------
+
+
+
+Geige gesucht (Troy, 13. Jun 1994, 17:13:43):
+                 oo  oo  ooo  oo  oo ooooo
+                 oo  oo ooooo oo  oo ooooo
+                 oo  oo oo oo oo  oo oo
+                 oooooo oo oo oooooo oooo
+                 oooooo oo oo oooooo oooo
+                 oo  oo oo oo oo  oo oo
+                 oo  oo ooooo oo  oo oooooo
+                 oo  oo  ooo  oo  oo oooooo
+
+                    (moralische)
+
+ooooo  oooooo oo      ooo  oo  oo oo  oo oo  oo oo  oo  ooo
+oooooo oooooo oo     ooooo oo  oo oo  oo oo  oo oo  oo ooooo
+oo  oo oo     oo     oo oo oo  oo ooo oo oo  oo ooo oo oo oo
+oo  oo oooo   oo     oo oo oooooo oooooo oo  oo oooooo oo
+ooooo  oooo   oo     oo oo oooooo oooooo oo  oo oooooo oo oo
+oo  oo oo     oo     oo oo oo  oo oo ooo oo  oo oo ooo oo oo
+oooooo oooooo oooooo ooooo oo  oo oo  oo oooooo oo  oo ooooo
+ooooo  oooooo oooooo  ooo  oo  oo oo  oo  oooo  oo  oo  ooo
+
+fuer den- oder diejenige(n), der(die) mir meine ueber alles geliebte
+Geige wiederbring[t/en]. Ein gar garstiger Raeuber hat sie mir heute
+gestohlen. Das gute Stueck ist unersetzlich! Wer sie mir wiederbringt
+kann meines Dankes sicher sein. Wer immer sich an der Suche beteiligen
+moechte, komme bitte zu mir ins Konservatorium von Moulokin. Dort kann
+ich naeheres zu dem Vorfall sagen.
+
+Die erste Geige im Streichquartett (nun nicht mehr)
+
+-----------------------------------------------------------------------------
+
+
+
+Orklager in Inspektion (Pilgrim, 14. Jul 1994, 16:10:13):
+Hi,
+
+ich gebe hiermit bekannt, dass sich das Orklager z.Z. einer Generalinspektion
+unterziehen muss und somit bis auf weiteres geschlossen bleibt.
+
+Generalinspekteur Pilgrim
+
+-----------------------------------------------------------------------------
+
+
+
+Orklager wieder offen (Pilgrim,  1. Aug 1994, 23:56:37):
+Hi,
+
+ich hab zur Zeit eigentlich zu wenig von selbiger, desshalb gehen die
+Umbauarbeiten zu langsam voran.
+Vorlaeufig ist das lager in seiner ALTEN Form wieder zu erreichen....
+
+Pilgrim
+
+-----------------------------------------------------------------------------
+
+
+
+Massuer ist staerker geworden! (Rumata,  4. Aug 1994, 19:27:05):
+
+Nachdem der Masseur wiederholt von Spielern angegriffen und ziemlich
+uebel behandelt wurde, hat er jetzt ein Fittness-training absolviert.
+
+Also, sehr Euch vor!
+
+Rumata, Couch vom Masseur
+
+BTW: Man muss ihn nicht angreifen ... :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Couch? (Catweazle,  4. Aug 1994, 21:21:58):
+Man kann sich auf Dich setzen Rumata?????
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Couch? (Asmodis,  4. Aug 1994, 23:15:32):
+hmm, im allgemeinen ist es ja nicht so, dass man selbst den Masseur angreift,
+sondern, der Masseur den Spieler, wenn er ein Handtuch mitgehen lassen will :)
+
+                         Ciao, Asmodis
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Couch? (Caradhras,  5. Aug 1994, 23:35:36):
+		Kuckuck
+
+Hmmm, waer doch schon eine passende Idee fuer eine HLM- Quest.
+(HLM = High Level Magier :) Wenn Rumata schon eine Couch ist, wie waers
+dann, wenn auf dem Treffen alle HLM Couch spielen muessen und nachher
+wird drueber abgestimmt und die besten kommen in eine Endausscheidung
+und der Gewinner darf sich setzen und kriegt nen Keks. Und die anderen
+muessen natuerlich den ganzen Abend als Couch zur Verfuegung stehen.
+Sicherlich koennte man das noch einiges weiter ausbauen :-))
+
+Schade dass ich diesmal nicht dabei bin, haette gerne Jof und Kirk auf
+allen Vieren auf dem Boden knien sehen... und Hate.. *lachend rumkuller*
+
+Caradhras der ewige Prophet :) - grinsend
+
+-----------------------------------------------------------------------------
+
+
+
+Entschuldigung (Boing, 26. Aug 1994, 15:55:16):
+Entschuldigung an alle, die etwas Probleme mit den 4 Namensteilen in den
+Katakomben des Friedhofs hatten, ich denke jetzt sind alle Fehler behoben.
+
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Jimmy (Boing, 29. Aug 1994, 18:56:57):
+Bevor sich jemand ueber nicht angekuendigte Veraenderungen beschwert:
+Ich habe Jimmy geaendert.
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Verstaerkung fuer die Stadtwache (Troy, 15. Sep 1994, 17:16:52):
+Der Magistrat der Stadt Moulokin hat nun endlich beschlossen, die lange
+ueberfaellige Verstaerkung der Stadtwache zu finanzieren. Hierzu folgt
+ein Auszug aus dem Amtsblatt von Moulokin:
+
+[Zitat Anfang:][...][Auf] Beschluss des hohen Rates vertreten durch
+seine ehrenwerten Mitglieder [...] wurde der Tagesordnungspunkt 5
+debattiert und [...] zur Abstimmung gebracht. Die durch sich in der
+letzten Zeit immer mehr haeufenden Barbarenueberfaelle schon arg
+in Mitleidenschaft gezogene, aber nichts desto trotz wackere,
+Stadtwache wird mit 88000 (achtundachzigtausend) Muenzen aus der
+Stadtkasse neu ausgeruestet und durch Eliteeinheiten der koenig-
+lichen Garde von Moulokin verstaerkt. Wir hoffen [...] durch
+diesen Schritt etwas fuer die Sicherheit von Moulokin getan zu
+haben [...].[Zitat Ende]
+
+Proklamation des Rates zu Moulokin.
+i.A. Troy
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Verstaerkung (Grimmborn, 16. Sep 1994, 05:28:01):
+
+So, nu iss aber zappenduster! Das ist keine Verstaerkung mit Eliteeinheiten,
+das ist Verstaerkung mit Panzern und Granatwerfern von der Wirkung her! Dass
+die alten Soldaten modifiziert wurden, OK. Ich erinnere mich, wie Troy
+schrieb, er haette eine Bank geproggt und dann ne Reederei draus gemacht. Die
+Seherbank gabs trotzdem in Moulokin, leicht bewacht aber fair. Nun ist aus
+dieser Bank ein Fort Knox geworden, dass kaum zu knacken ist. Wenn ich richtig
+gezaehlt habe, sind bisher 4 Seher (darunter nicht die schlechtesten...)
+draufgegangen, das ist unverhaeltnismaessig. Mann muss doch auf dem Teppich
+bleiben! Gut, Elite ist schoen und gut. Aber woher? Aus der Bevoelkerung,
+quasi aus den Spielern. Nun bin ich in einer (!) Runde von 90 auf 28 lp
+gesackt. Welcher Charakter kann das? Ich nicht, wuerde ich sagen, selbst mit
+Zauberei. Ich schlage nicht (mehr) mit dem Geraeusch krachender Knochen, ich
+kann niemanden niederreiten. Wenn man "menschliche Monster" anbringt, sollten
+sie sich in ihren Werten an den Spielern orientieren! Oder eine GUTE
+Erklaerung haben...
+Die Idee an sich ist gut, auch wenn die Soldaten anfangen zu kooperieren ist
+das nur logisch. Aber so wie dashier gelaufen ist... :-(
+Dann sollte in der Beschreibung stehen: Die Wachen sind mit ihren eigenen
+Beinen beritten, da sie zur Rasse der Pferdedrachen gehoehren.
+
+Live aus Moulokin:
+                  Grimmborn der Prophet
+
+P.S. Die neue Todessequenz kann wirklich nerven. und ich vermisse den Kerl
+mit den GROSSBUCHSTABEN...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Verstaerkung (Toeter, 16. Sep 1994, 10:34:53):
+Nach meiner Rechnung warens sogar 5 Seher...wobei noch zu erwaehnen bleibt,
+dass allein ich fuer 2 Reiter ueber 30000 versoffen habe:).
+
+Ewig breit: Toeter (der davongekommene)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Re: Verstaerkung (Troy, 16. Sep 1994, 13:03:15):
+Die Verstaerkung der Wachen in Moulokin wurde von VERSCHIEDENEN Sehern
+GEFORDERT. Wer die Reiter angreift, ist selber schuld. Es sind ja noch
+genug andere Soldaten in Moulokin, die zwar auch staerker sind als vorher,
+aber noch weit unter dem Zwergenwaechterniveau liegen. Wenn es ploetzlich
+irgendwo neue Monster gibt, muss das noch lange nicht heissen, dass diese
+ohne weiteres toetbar sind. Unter Beruecksichtung der neuen Stats ist es
+naemlich durchaus moeglich, die Reiter zu falten. Dass sie sich dagegen
+wehren sollte ja wohl klar sein.
+
+Troy - hat was gegen wilde Metzelei in der Stadtwache.
+
+-----------------------------------------------------------------------------
+
+
+
+Nochmal: Verstaerkung (Grimmborn, 16. Sep 1994, 13:10:16):
+
+
+Also, Troy, tut mir leid aber wenn die berittenen Stadtwaechter bessere
+Kampfwerte haben als ein Mitglied einer beliebigen Rasse mit Stats 20, einer
+Lanze, den Stiefeln und dem Panzer dann verstehen wir das System
+unterschiedlich.
+Niemand verbietet Dir, andere Rassen einzusetzen, aber dann sollte das
+beschrieben werden
+Und sollten das normale Spielerrassen sein: Ich melde mich sofort zum
+Eintritt in die Gilde der berittenen Stadtwaechter...
+
+                                  rimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Re:...Re: Verstaerkung (Troy, 16. Sep 1994, 13:17:34):
+Ich verstehe nicht, was die Diskussion soll:
+Wenn man die nicht angreift, tun sie doch garnix.
+Und: es gibt nirgendwo eine Quest oder was Vergleichbares, was verlangt,
+dass man sie angreift. MUSS DEN JEDES MONSTER IM MUD BESIEGBAR SEIN???
+UND: IST DENN EIN SEHER SO DEFINIERT, DASS ER JEDES MONSTER SCHAFFT???
+
+Troy - Monster aller Laender vereinigt Euch!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re:...Re: Verstaerkung (Li, 16. Sep 1994, 13:20:59):
+Zu diesem Thema faellt mit ein Artikel aus einem alten "White Dwarf" (einem
+engl, Fantsaymagazin). Da ging es um Monster uns NPC im Rollenspiel, mit dem
+passenden Titel:
+Monsters have feelings too!
+
+Li (der sich nicht in diese Diskossion einmischen moechte)
+
+-----------------------------------------------------------------------------
+
+
+
+Und: Verstaerkung (Grimmborn, 16. Sep 1994, 13:27:26):
+
+Nun ja, Troy, ich dneke, wir reden von verschiedenen Dingen. Nebenbei haben
+Toeter und ich die Sache so im Kopf, dass wir die normale Wache angegriffen
+haben und die Berittenen daraufhin uns.
+Merke: JEDES MONSTER MUSS BESIEGBAR SEIN! Natuerlich nicht von einem Seher
+alleine, das war nie die Frage. Wir haben zu Sechs Sehern auf denen
+rumgekloppt...
+Nun ist prinzipiell gegen "starke" Monster nix einzuwenden (siehe Hydra),
+aber was hier fehlt ist LOGIK!!!
+WO sind die her? Diese Frage solltest Du beantworten koennen, nicht unbedingt
+den Spielern aber generell. Ansonsten finde ich muesstest Du halt die Staerke
+verringern und die Anzahl erhoehen...
+Was ich nicht akzeptieren will sind nicht Monster, die staerker sind als ich
+(oder wer auch immer) sondern Spielerrassen mit Monsterwerten.
+Hab ich das (trotz dieses Mist-Mac...) verstaendlich machen koennen?
+
+Diesmal hoffentlich mit "G":
+
+                            Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Verstaerkung (Yendi, 16. Sep 1994, 15:21:48):
+Also, Troy, ich denke, dass Grimmborn recht hat.
+
+Erstens sollten ALLE Monster schlagbar sein (auch wenn man dafuer 10 Seher
+  braucht; schliesslich muss man gegen Monster wie Smaug oder einen
+Ringgeist
+  auch zu mehreren antreten)
+Zweitens sollte man den Monstern in etwa ansehen koennen, wie stark sie sind:
+Wenn da eine Stadtwache steht, dann erwarte ich nicht, dass sie im Alleingang
+eine komplette Brigade plaetten kann, Feuer speit und mit taktischen Atom-
+sprengkoepfen um sich wirft... Das faellt einfach aus dem Rahmen, verstehst
+Du?
+
+Also, wenn es sich um Menschen handelt, lieber die Kampfkraft pro Person in
+realistischen Grenzen halten, aber dafuer mehr Leute einsetzen.
+
+(SENF OFF)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re:...Re: Verstaerkung (Tryfan, 16. Sep 1994, 16:38:23):
+Hi Leute,
+ also jetzt muss ich doch auch mal meinen Senf zu der Thematik loswerden.
+Warum in aller Welt muessen alle Monster schlagbar sein?? Ausserdem, was ist
+denn die Definition von 'schlagbar' wenn es 10 voll ausgeruestete Seher
+schaffen, oder wenn es 1000 schaffen?
+ Es gibt im MG genug Monster, die sich gar nicht angriefen lassen. Das ist
+auch gut so, denn viele von ihnen sollen nur Informationen oder Objekte
+herausgeben oder ein Quest bestaetigen usw.. Gelten die auch als 'unschlag-
+bar'?
+ Andere Monster sollen den Zugang zu bestimmten Gebieten bewachen und wurden
+also mit Absicht unschlagbar gemacht. Was ist denn daran so schlimm?
+Muss denn alles niedergemelzelt werden? Wenn Troy nicht will, dass man die
+gesamte Stadtwache besiegen kann, dann eben nicht. Es wuerde mein Quest
+
+auch auf den Kopf stellen, wenn man die gesamte Steinwaechtertruppe schlagen
+koennte. Sie wird auch immer 'unschlagbar' bleiben!
+ So, die Senftube ist leer
+		Tryfan
+
+-----------------------------------------------------------------------------
+
+
+
+Bravo! (Hardil, 16. Sep 1994, 16:48:06):
+
+SENF on
+
+Ich muss hier den Magiern einfach mal Recht geben. Sorry. Aber ich sehe die
+Vollendung des Seherdaseins eigentlich nicht darin, immer neue, noch groessere
+Monster zu metzeln, sondern schiebe eigentlich lieber eine ruhigere Kugel im
+Seherniorenstift... :)
+Wenn es jetzt soweit kommt, dass selbst meine Lieblingsmonster (Dunkelelfen)
+irgendwann staerker gemacht werden, nur weil einige Abonnenten der Ebenen
+Moerder und Tod nicht genug bekommen koennen und immer neue Herausforderungen
+suchen, dann: Stop!
+Wer den Ruestungswettlauf ankurbelt, indem immer schneller die besten
+Ruestungen und Waffen angekarrt werden, der sollte sich nicht daran stoeren,
+wenn die Monster sich richtig wehren.
+Ich bin gegen beides: Ruestungswettlauf UND Super-Monster.
+Wem es hier im MG zu langweilig wird, weil er alles toeten kann, der soll
+doch einfach auswandern. Es gibt noch 1000 andere MUDs, wo 1000 andere Monster
+und Gefahren lauern.
+
+SENF off
+
+Hardil (friedfertiger als die meisten anderen Seher)
+
+-----------------------------------------------------------------------------
+
+
+
+Senf? (Catweazle, 16. Sep 1994, 18:38:10):
+Ich wuerd ja auch gern was dazu schreiben, aber ich muss
+erst Senf kaufen gehn.....
+
+    Catweazle
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Bravo! (Isnogood, 17. Sep 1994, 01:14:01):
+Hi,
+
+Also ich bin weder Seher, noch habe ich vor, mich mit den berittenen
+anzulegen, aber ihr diskutiert einfach aneinander vorbei.
+Grimmborn hat recht, wenn er sagt, das Menschen nur eine bestimmte Staerke
+haben duerfen, solange das ganze halbwegs logisch bleiben soll.
+Das hindert Troy ja nicht daran, als Stadtwache 5 Gorillaelfen mit
+Drachenpferden einzusetzen, nur halt keine Menschen mit solchen unlogischer
+Staerke.
+
+In der Hoffnung, dass die Diskussion ein bischen nuechterner Verlauft
+
+Isnogood
+
+-----------------------------------------------------------------------------
+
+
+
+Verstaerkung: Ende (Grimmborn, 17. Sep 1994, 02:51:09):
+
+Troy hat nun die Beschreibung der berittenen Stadtwache geaendert, es handelt
+sich um Minotauren. Damit ist ihre Staerke hinreichend erklaert. Dass ich
+persoenlich um die Schliessung der Seherbank trauere ist eine andere Sache...
+;-)
+Weiterhin hatte ich den Eindruck, dass ihre Anzahl WESENTLICH erhoeht worden
+sei, aber das zu ueberpruefen konnte ich nicht mehr, weil die ploetzlich
+anfingen, mir lp ohne Angriff (der mein Tod gewesen waere) abzuziehen und mich
+sogar beim teleportieren verfolgten. Das war gar nicht gut fuer meine Nerven
+nach dem Erlebnis gestern *feix*...
+
+Ansonsten steht es Troy frei Moulokin so zu schuetzen wie er es fuer richtig
+haelt, und im Rahmen eines realistischen Spiels ist eine Wache, die zusieht,
+wie man den Offizier in ihrer Mitte killt, vielleicht tatsaechlich nicht so
+gelungen. Andererseits, wer weiss, wie das Verhaeltnis zu den Offizieren ist,
+waere lustig, wenn die Soldaten noch helfen wuerden.
+
+Ja, ich hoffe, ich hab mich trotz frueher Stunde verstaendlich gemacht. In
+Moulokin hat (bis auf kleinere bugs, das verfolgen war doch ein bug, bitte
+Troy?) alles seine Ordnung.
+
+Sein Geld nun zusammenhalten muessend:
+                                       Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+moulokin (Kaig, 17. Sep 1994, 05:57:22):
+Also ich verstehe die ganze Aufgeregtheit um Moulokin echt nicht..... Was ist
+denn schon geschehen, die Stadt war massiven Angriffen ausgesetzt und musste
+sich ja schliesslich mal wehren, oder? Und man muss ja die Wachen wohl nicht
+plaetten, gibt ja noch genug andere Stellen :-).
+
+Ex-Seher Kaig, nun das Magierdasein geniessend :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: moulokin (Asmodis, 19. Sep 1994, 12:48:24):
+Hmm, also mich stoert es nicht, wenn da EIN Monster herumsteht, das man nur
+in Gruppen plaetten kann, aber es ist doch schon sehr aergerlich, wenn ALLE
+Monster so stark sind, da machts doch gar keinen Spass mehr ueberhaupt da hin
+zu gehen, weil man sowieso etwas auf die Muetze bekommt.
+Wenn sich die Monster schon gegenseitig helfen, dann mach wenigstens den
+groessten Teil von ihnen etwas schwaecher, sodass man nicht unbedingt selbst
+bei Vorsicht 100 in Lebensgefahr geraet.
+
+            Ciao, Asmodis(Level 26, und hat etwas gegen Massierungen von
+Supermonstern)
+
+P.S.: Fuer 88000 Muenzen kann man sicher nicht eine SOLCHE Truppe anwerben :)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Hickhack (Thorin, 19. Sep 1994, 13:25:27):
+Also hier muss ich mal Troy unterstuetzen : Ich weiss echt nicht, was ihr
+wollt, Asmodis und Grimmborn. Seit doch froh, dass es mal wieder neue Monster
+gibt, auf denen ihr einhacken koennt/ an denen ihr euch testen koennt. Und
+auch wenn sie so stark sind:
+WER ZWINGT EUCH DENN, SIE ANZUGREIFEN ???
+Ich finde die Monster sehr gut und muss trotzdem davon abraten, sie 'mal nur
+so anzugreifen'.
+Thorin
+
+-----------------------------------------------------------------------------
+
+
+
+Gletscher (Grimmborn, 23. Sep 1994, 09:35:18):
+
+So, ich bin endlich gluecklich beim Weihnachtsmann, NATUERLICH auf der Suche
+nach einem zt und NATUERLICH mit Liste. Was ebenso natuerlich ist: Ich hab
+promt den Weg verfehlt. Also musste ich sehen, ob ich auch so mit dem
+Gletscher fertigwerde. Ergebnis: Nein. Nun mag ich nicht der begabteste Denker
+hier im mud sein, aber ich hab alles ausprobiert um rauszufinden, reiner
+Zufall, dass ich statt auf das vierte Mammut auf die Spalte gestossen bin.
+Keine Hinweise, nicht kartographierbar, toedlich (Tip: Mit wandernden Mammuts
+kriegt man auch noch den letzten Ueberlebenden), kurz: ein lab zum Abgewoehnen
+und wie es nicht sein sollte! Das muss doch wirklich nicht sein. Ich denke da
+an Vorbilder wie den Dschungel in Titiwu oder die Tundra. Oder wenns sein muss
+ein tabellierbaras lab mit 4 Ausgaengen; sonst wird das zu umfangreich.
+Dieses Spiel soll Spass machen, auch den Spielern. Solange ich aber durch
+solche Gegenden planlos irre, macht mir das erstaunlich wenig Spass, zumal ich
+weiss, dass wenn ich etwas knapp ueberlebe das der Tod von 90% der restlichen
+mud-Bevoelkerung waere.
+
+Wie gesagt, ich schliesse nicht aus, dass es eine einfache Art gibt, sich
+hier zurechtzufinden und ich sie einfach nur nicht gefunden habe. In dem Fall
+bin natuerlich ich an der Situation voellig selber schuld und bitte, diesen
+Artikel einfach als frustabladen zu verstehen...
+
+Mit blaugefrohrenen Fingern (Boing, die Waermeisolierung der silbernen
+Handschuhe muesste nochmal diskutiert werden...),
+
+     Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Re:Gletscher (Ketos, 23. Sep 1994, 16:38:52):
+Der Gletscher ist teilweise nicht karteographierbar. Aber man findet sich
+auch
+so zurecht, wenn man nicht kopflos rumrennt und hofft wo raus zu kommen,
+sondern sich gruendlichst um sieht. Es lohnt sich und es gibt einiges zu
+entdecken. Uebrigens gehoert der Gletscher zum Gebirge, ist aber auch vom
+Polargebiet erreichbar.
+                              - Ketos - spielt Fuessetreten mit Yetis...
+
+-----------------------------------------------------------------------------
+
+
+
+re-hunnar (Toeter, 26. Sep 1994, 20:18:50):
+Hi Boing !
+Warum war denn kein Vorschlag dabei, Hunnar schwieriger (nicht unbedingt
+staerker) zu machen? So ist das Seher-Privileg Slanderscree zur blossen
+Kaffeefahrt verkommen. Schade...
+
+ein Herausforderungen liebender Toeter
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Hunnar - Toeter (Boing, 26. Sep 1994, 20:36:20):
+Der Vorschlag war nicht dabei, weil schon alleine eine derartige Ansammlung
+von Top-Ruestungen an einem Ort (sprich: bei einem Monster) nicht meinen
+Vorstellungen von Game-Balance entspricht. Gegen eine gleiche Anzahl von
+mittelmaessigen Ruestungen geballt bei einem Monster habe ich nichts, nur
+die besten Ruestungen sollen schwierig zu erreichen und nicht zu oft im
+Spiel sein.
+
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Seher-Problem auf dem Friedhof (Boing, 26. Sep 1994, 23:39:22):
+Hallo,
+
+es wird demnaechst ein paar Aenderungen auf dem Friedhof geben:
+
+- Der zerbrochene Schluessel, wird nur noch fuer die Leute autoladend,
+  die das Abenteuer noch nicht geloest haben.
+- Fuer Leute, die das Abenteuer schon haben, wird es einen zweiten Weg
+  in die Gruft geben, dieser Weg wird mit etwas Gemetzel verbunden sein.
+
+Auf diese Weise hoffe ich, die Behinderung von Spielern, die die Katakomben
+loesen wollen, durch solche, die nur das BS-Schwert holen wollen, zu ver-
+meiden. Ausserdem wird das gute BS-Schwert dadurch schwieriger zu erlangen
+sein.
+
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Friedhof (Boing, 27. Sep 1994, 22:26:59):
+Die im letzten Artikel beschriebenen Aenderungen sind jetzt aktiv.
+
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Masseur hat Kickboxen gelernt! (Rumata, 18. Okt 1994, 14:42:07):
+The subject says it all....
+
+Rumata
+PS: Es hat einen Grund, dass man den Massuer nicht toeten soll...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Masseur hat Kickboxen gelernt! (Flintnail, 19. Okt 1994, 17:36:30):
+(Bezug: Artikel von Rumata, Die, 18. Okt 1994, 14:42:07)
+Hmmm....ich denke 'the subject said nuthing!' ...Rumata!
+Frage: wird man immer noch erschlagen UND GEHINDERT DEN RAUM ZU VERLASSEN
+(!!!) , wenn man versucht das Handtuch mitzunehmen???
+
+ ein damals ziemlich veraergerter Flintnail, der gar nicht kaempfen wollte,
+aber kaempfen gegen den Masseur das Leben aushauchte, BEVOR der Kickboxer
+wurde!!!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Masseur hat Kickboxen gelernt! (Halea, 21. Okt 1994, 18:10:53):
+(Bezug: Artikel von Rumata, Die, 18. Okt 1994, 14:42:07)
+*auweia*
+
+  Halea
+nn
+
+-----------------------------------------------------------------------------
+
+
+
+Zombieschwert (Boing, 18. Nov 1994, 17:39:37):
+Das 'Zombieschwert' ist nun auch endlich als solches anzusprechen (auf
+Anregung von Yantro, wenn ich mich recht erinnere).
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Neuer RM (Zardoz,  1. Feb 1995, 18:12:37):
+Tja, aehmmmm... wie soll ichs sagen... *denk*
+Also frei heraus: Jemand (blieb aus Verlegenheit unsichbar) hat mich.
+Aehm, mich zum Regionsmagier Polar gemacht. Na gut, ich weiss, dass es
+keinen interessiert, aber ich wollte es wenigstens mal gesagt haben.
+
+Ciao              Zardoz
+
+P.S. Aufgrund zahlreicher Anfragen: Nein, es wird wohl (vielleicht) keine
+Eis-, Fros- oder Kaeltedaemonen in der Eiswueste geben!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neuer RM (Yantro,  1. Feb 1995, 18:57:42):
+#! rn=Zardoz rt=791658757
+
+Hast Du die Rubrik eigentlich auch ausgestaubt, bevor Du den Artikel
+geschrieben hast??? Oder macht das auch der Teufel ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Neue Regionsmitarbeiterin (Zardoz,  1. Feb 1995, 19:14:55):
+Hallo nochmal! :-)
+
+Ich freue mich ganz besonders hier ankuendigen zu duerfen, dass
+Schrumpfi Regionsmitarbeiterin in der schoenen Region Polar geworden
+ist! Und an alle anderen: Geht nicht in die Wueste! Die Wueste lebt
+schon lange nicht mehr! Kommt lieber zu Polar und erfrischt euch an
+der belebenden Kaelte dieser Region. Wenn euch der Wuestensand zwischen
+den Zaehnen knirscht, dann denkt immer daran: Polar lebt!
+
+Ciao
+                 Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neue Regionsmitarbeiterin (Gundur,  1. Feb 1995, 19:24:09):
+#! rn=Zardoz rt=791662495
+Gundur bibbert bei dem Gedanken das sein Schwesterchen in die Polar-
+region gelockt wurde...
+Oh Graus was wird unser armer Papi dazu sagen...die Schnurrhaare wird
+er sich vor gram ausreisen denk ich..
+Weiterhin kann ich nur empfehlen doch mal die warme Wueste zu besuchen...
+Da bekommt man keine erfrorenen Glieder oder verirrt sich in seltsamen
+Eiswuesten...Dem Weihnachtsmann wuede es da bestimmt auch besser gefallen,
+weil er dann mehr Besuch kriegen wuerde und er nicht mehr so allein waer..
+Naja auf jeden Fall wuensch ich Dir (Schrumpfi) alles gute..moegen
+Dich die Geister des Wuestensands auf deinem kalten Weg beschuetzen
+Gundur
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neue Regionsmitarbeiterin (Puma,  1. Feb 1995, 19:49:20):
+#! rn=Zardoz rt=791662495
+Ist das jetzt eine Kriegserklaerung an die Wueste Zardoz :)))) ????
+
+
+PUMA
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Neue Regionsmitarbeiterin (Rochus,  1. Feb 1995, 20:05:55):
+#! rn=Puma rt=791664560
+Die Wueste steht mit fast allen Regioen im Krieg...
+Wald, Polar...
+Nur die friedliebende Ebene haelt sich aus allem raus :-)
+
+-----------------------------------------------------------------------------
+
+
+
+ (Schrumpfi,  1. Feb 1995, 20:10:28):
+Regionsmitarbeiterin
+Hallo
+Als erstes moechte ich mich mal bei Zardoz bedanken der mich heute zu seiner
+Mitarbeiterin im Polar gemacht hat! Als alte Gruftlerin is es mir in der
+Wueste eindeutig zu heiss und der Polar ist da wohl genau das richtige fuer
+mich ;-) und mein heiss geliebtes Untier ist jetzt auch ganz in meiner Naehe
+:)
+Papi ich hoffe Du verzeihst Deiner abtruenigen Tochter ;-)
+Danke nochmal an alle GratulantInnen und ich freu mich auf eine
+Zusammenarbeit mit Zardoz.
+Schrumpfi die auf ihre blasse Gesichtsfarbe achten muss :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Neue Regionsmitarbeiterin (Wargon,  2. Feb 1995, 09:39:11):
+#! rn=Rochus rt=791665555
+Warum nur?
+Antwort: Weil die friedliebende Ebene alle Seiten mit
+Waffen versorgt und sich mit der Versorgung der durchziehenden
+Truppen ne goldene Nase verdient. ;)
+Ausserdem soll ja schon so mancher Soeldner zu Monster-
+und Fallentestzwecken abberufen worden sein. ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Neue Regionsmitarbeiterin (Durian,  2. Feb 1995, 10:53:06):
+#! rn=Rochus rt=791665555
+Nun mal moment, jetzt muss ich als oberster Sandbuddler aber doch mal
+energisch einschreiten und mir vor meine Skl ... Mitarbeiter stellen.
+Rochus hat gerade in einem Anflug von Jof gegebener Ahnung behauptet,
+die Wueste stuende mit allen anderen Regionen im Krieg. Dem ist mitnichten
+so!
+Es ist vielmehr so, dass vor lauter Neid die anderen Regionen, allen voran
+der Wald (gelle, Mika), unsere Vormachtstellung durch Verleumdung und
+Luege zunichte machen wollen. Das dies angesichts der heissen, sandigen
+trockenen Schoenheit der Wueste nicht moeglich ist, wird dabei ungeachtet
+gelassen.
+Und was Polar angeht: Nein, wir haben nie etwas gegen die Polarregion gesagt.
+Ja, es gaebe viel gegen sie zu sagen, aber da das eh jeder selber weiss,
+muss ich jetzt nicht erwaehnen. Vielmehr hat Zardoz in einem Anflug von
+durch seine Machtposition hervorgerufenem Groessenwahn versucht, die Wueste
+schlecht zu machen. Dass er sich damit auf das niedrige Niveau des Waldes
+begibt, scheint ihm nicht klar gewesen zu sein.
+
+Lange Rede, kurzer Sinn: die Wueste ist und bleibt die trockendste,
+heisseste,
+kuschligste, sandigste Region des Morgengrauens!
+
+- Durian, der Oberbuddler
+
+
+
+
+
+
+
+
+
+
+
+:-)
+*grins*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Neue Regionsmitarbeiterin (Puma,  2. Feb 1995, 12:29:33):
+#! rn=Durian rt=791718786
+Moment mal, Durian. Was heisst hier Vormachtsstellung der Wueste? Wenn ich
+Dich daran erinnern darf, dass die Wueste vor einem halben Jahr kaum mehr als
+ein staubiger Pfad nach Valgessa war.. .
+
+Eindeutig fuehrend sind in Sachen Beliebtheit (gemessen an Besucherzahlen)
+immer noch das Gebirge und die Ebene....
+
+:-))
+
+
+PUMA
+
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Neue Regionsmitarbeiterin (Durian,  2. Feb 1995, 12:36:31):
+#! rn=Puma rt=791724573
+Laege die Wueste in der Mitte, wuerden die anderen Regionen ueber erheblichen
+Besuchermangel leiden! Und im Uebrigen, offensichtlich ist Dir das entgangen,
+ist die Wueste nicht mehr das, was sie frueher mal war. Sie kann vielmehr
+jetzt mit einer noch nicht angeschlossenen Stadt und einer noch nciht
+angeschlossenen Region aufwarten ... jaha ... und Dancer und Catweazle,
+da bin ich sicher, schaffen es noch dieses Jahrtausend diese beiden
+Orte fertig zu stellen!
+
+Da bin ich mir echt voellig sicher ... *schluck*
+
+- Durian
+
+
+
+:-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neuer RM (Orktoeter,  2. Feb 1995, 13:05:24):
+#! rn=Zardoz rt=791658757
+Herzlichen Glueckwunsch !!
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Neue Regionsmitarbeiterin (Mika,  2. Feb 1995, 13:41:49):
+#! rn=Durian rt=791724991
+Aehem,
+Durian, wenn Du deinen staubigen Sandhaufen damit aufbessern willst, das da
+in einiger Zeit ein paar neue Flecken dazukommen (die Pyramiden deines
+Ghostwriters waren ja auch lange nur angekuendigt;) ) dann kann in der Wueste
+wirklich nicht viel los sein.
+Ansonsten steht immernoch das Angebot in alle Wuestenraeume ein paar schoene,
+grosse, gruene, schattenspendende Waldbaeume zu pflanzen ! (kostenlos
+natuerlich !)
+Also denk noch mal drueber nach :)
+
+Mika, Vizewaldmeister
+
+-----------------------------------------------------------------------------
+
+
+
+ebene (Nixihou,  2. Feb 1995, 15:04:51):
+Also zur Ebene ist ja wohl nur zu sagen, dass sie
+ausser friedliebend zu seien
+auch nur noch aus einem Wald besteht, der keine Baeume hat!
+Das sagt ja wohl alles.
+
+Nini
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Neue Regionsmitarbeiterin (Hate,  3. Feb 1995, 22:05:40):
+#! rn=Puma rt=791724573
+Die Attraktion Nummer eins bin immer noch ich auf den Inseln ;)
+Hate.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Neue Regionsmitarbeiterin (Anthea,  4. Feb 1995, 03:28:51):
+#! rn=Durian rt=791718786
+Ich sehe schon, Durian, in Deinen Angriffen erwaehnst Du wohlweislich die
+Inseln nicht. Wahrscheinlcih hast Du rechtzeitig genug bemerkt, dass Du gegen
+uns Inselmagier einfach nicht bestehen koenntest. Ist wohl auch besser so.
+Wenn sich diee Inseln naemlich gegen die Wueste richten wuerden bliebe davon
+nicht mehr als etwas unebener Meeresgrund uebrig.....
+
+Wenn ich es mir ueberlege... die Ebene duerfte wohl genauso leicht zu fluten
+sein wie die Wueste.... dann haetten wir endlich mehr Platz fuer weitere
+Inseln :)
+
+          Anthea, ueberzeugte Inselmagierin.
+
+-----------------------------------------------------------------------------
+
+
+
+Eisdaemonen (Zardoz,  6. Feb 1995, 18:49:28):
+Ihr habt es nicht anders gewollt! Sehr widerstrebend und widerwillig sah ich
+mich aufgrund zahlreicher Anfragen gezwungen Eisdaemonen in der Eiswueste
+anzusiedeln. Ich betone!!!, ich habs nicht freiwillig gemacht!
+Naja, nun ist es passiert und ich hoffe, ihr koennt damit leben.
+Viel Spass beim Suchen, sie sollen sich angeblich in einer Hoehle versteckt
+haben.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Neue Regionsmitarbeiterin (Durian,  7. Feb 1995, 09:52:28):
+#! rn=Anthea rt=791864931
+Nein, Anthea, ich habe die Inseln ausgelassen, weil ich Gegner suche, keine
+Opfer!!
+
+- Durian
+
+:-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Eisdaemonen (Orktoeter,  7. Feb 1995, 14:07:58):
+#! rn=Zardoz rt=792092968
+Oh ja, ic stelle mir gerade Zardoz's wiederwillen vor...
+rotfl :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Neue Regionsmitarbeiterin (Anthea,  7. Feb 1995, 23:50:52):
+#! rn=Durian rt=792147148
+Ich glaube, das Opfer, das Du Dir mit einem Angriff auf die Inseln ausgesucht
+haettest, waerest Du selbst gewesen :)
+Von Deinen Regionsmitarbeitern haettest Du sowieso bei einem Angriff auf uns
+nicht viel Unterstuetzung gehabt: Katzen (respektive Tiger) sind ja
+bekanntlich Wasserscheu!
+
+     Anthea
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Neue Regionsmitarbeiterin (Gundur,  8. Feb 1995, 01:02:00):
+#! rn=Anthea rt=792197452
+Aber Wuestenzwerge sind gute Kaempfer!!!
+...auch wenn Sie sich meistens Friedlich verhalten :-)
+Gundur
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Neue Regionsmitarbeiterin (Hate,  8. Feb 1995, 08:59:18):
+#! rn=Durian rt=792147148
+Lieber Durian,
+
+eigentlich habe ich keine Lust, mich direkt mit Dir beschaeftigen zu
+muessen, aber angesichts der im vorigen Artikel geaeusserten Meinung
+koennte es u.U. auch DAZU kommen. Dann moechte ich mal sehen wo die Opfer
+stehen.
+Hate.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Neue Regionsmitarbeiterin (Yantro,  8. Feb 1995, 11:22:20):
+#! rn=Anthea rt=792197452
+
+Aehmmm nur zur Klarstellung.. TIGER sind alles andere als wasserscheu.. eher
+im Gegentum ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Neue Regionsmitarbeiterin (Puma,  8. Feb 1995, 13:39:21):
+#! rn=Yantro rt=792238940
+Natuerlich sind Tiger wasserscheu, sonst wuerden sie ja auch nicht feuchte
+Jeans foenen...
+
+:-)
+
+
+PUMA
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Neue Regionsmitarbeiterin (Loco,  8. Feb 1995, 16:16:44):
+#! rn=Yantro rt=792238940
+Den Tiger moechte ich sehen, der bei 12 Grad Wasser- und noch niedrigerer
+Lufttemperatur die mindestens hundert Kilometer bis nach Svolvaer schwimmt :-)
+Und wenn schon - ein paar Moewen reissen darfst Du meinetwegen ruhig...
+
+-----------------------------------------------------------------------------
+
+
+
+Tundraweg (Kaig,  8. Feb 1995, 17:05:08):
+Neuer Weg entdeckt
+
+Nach endloser Suche ist nun endlich in der Polarregion ein neuer Weg
+entdeckt worden. Geruechteweise soll er den Polarweg mit Moulokin
+verbinden und eine erhebliche Abkuerzung sein. Dummerweise sind
+die Wandrer, die in bis jetzt benutzt haben, nie wieder aufgetaucht.
+Aber das wird DICH ja nicht abschrecken, oder?
+
+Weitere Geruechte besagen etwas ueber hungrige Raubtiere und einen
+kleinen Punker dort....
+
+Ein Eingang ist nahe eines Schneemannes entdeckt worden...
+
+
+gez. Die Polarverwaltung
+
+-----------------------------------------------------------------------------
+
+
+
+punker (Kaig, 10. Feb 1995, 22:24:47):
+Hi,
+
+der kleine Punker lernt nun etwas sprechen. Er kennt schon einige Namen
+von Regionsmagiern in Polar, fragt ihn mal.
+Er steht uebrigens in der Lilientundra rum (neuer Polarweg).
+Er muss aber noch ganz viel lernen......dauert noch ;-).
+
+Viel Spass
+
+KaiG
+
+-----------------------------------------------------------------------------
+
+
+
+Unheimliche Gruft im Polar gesichtet. (Catweazle, 20. Apr 1995, 21:33:38):
+[Verlegt von allgemeines, Schrumpfi, 20. Apr 1995, 17:55:51]:
+Meine treue Begleiterin, meine Fledermaus, kam heute von ihrem taeglichen
+Rundflug zurueck und hat mir von einer unheimlichen Gruft berichtet, die sich
+im Polar, in der Naehe der Eisprinzessin, befinden soll.
+Angeblich gehen dort recht seltsame Dinge vor. Sie breichtete mir von
+schwarzen Messen die sie dort beobachtet haben soll.
+Wer mutig genug ist, kann ja mal kucken gehen...
+Aber huetet Euch, denn das Boese lauert dort an allen Ecken!
+
+Viel Spass
+Polarhexchen Schrumpfi
+
+
+-----------------------------------------------------------------------------
+
+
+
+Mal wieder ein paar Friedhofsflueche ... (Boing, 23. Apr 1995, 00:20:26):
+Hier mal wieder eine Auswahl der besten Katakombenflueche, ich kann leider
+nicht alles posten, da das den Rahmen wohl etwas sprengen wuerde, Magier
+koennen sich ~boing/log/flueche.bestof anschauen, Spielern kann ich die
+Liste auf Anfrage per email schicken.
+
+Mon,  4. Jul 1994, 08:57:13 Hardil flucht: Du Effenberg!
+Sam,  9. Jul 1994, 20:19:47 Toeter flucht: hartes gemaecht!
+Sam,  9. Jul 1994, 20:50:36 Toeter flucht:
+hunderttausendzehnmillionenbloededaemonenwixgesichter!
+Son, 17. Jul 1994, 00:36:18 Caradhras flucht:
+scheissmittloggereihierdadarfmanjanochnichtmalfluchenwasmanwillundausserdemdarfkeinspacedabeisein*seufz*
+
+[ Gar nicht wahr ... :) ]
+
+Son, 17. Jul 1994, 19:45:08 Caradhras flucht:
+was_schon_wieder_ein_reboot_und_ich_hol_mir_diese_dumme_waffe_immer_wieder?Mensch_bin_ich_bloed_auch_noch_so_einen_langen_satz_schreiben
+Son, 17. Jul 1994, 21:32:29 Celebdil flucht:
+undjetztmussmanauchnochdoofeCaradhrasauseinemRaumbefreien-grummelgrummel-
+
+Fre, 29. Jul 1994, 11:40:07 Zardoz flucht: Boing ist doot
+Fre, 29. Jul 1994, 11:40:17 Zardoz flucht: Ich meine Boing ist doof
+Fre, 29. Jul 1994, 12:01:15 Zardoz flucht: Boing ist immer noch doof...vor
+allem wenn er immer das Lab aendert...ich will doch nur ein Blutsaugerschwert
+Fre,  5. Aug 1994, 19:03:56 Zardoz flucht: Boing ist doof! Nimms nicht
+persoenlich, ist der besste Fluch, der mir einfaellt ;)
+
+Fre,  5. Aug 1994, 12:13:28 Knoerry flucht: so ein arschgef*cktes Suppenhuhn
+!
+
+Mit, 10. Aug 1994, 12:10:36 Majere flucht:
+WerDiesesVerfluchteLabyrithVonKatakombenAngelegtHatGehoertGetretenBisIhmDerBildschirmWegscrollt!
+UndWennMirWiederEinerMeinDynamitWegklautGibtsNenDuellInDerArena!!!!!!!
+Mit, 10. Aug 1994, 12:52:55 Majere flucht: AlleNaseLangWirdHierReseted
+WieSollManDennDaDieQuestSchaffen????
+Mit, 10. Aug 1994, 13:46:38 Majere flucht:
+WoZumTeufelSindDieNamenDerHandVersteckt????
+
+Son, 14. Aug 1994, 19:15:23 Toeter flucht: dicker doedel!
+Son, 14. Aug 1994, 20:26:18 Toeter flucht: dicker doedel V 2.0
+Son, 14. Aug 1994, 22:06:08 Toeter flucht: dicker doedel V 3.0
+Die, 16. Aug 1994, 16:24:21 Toeter flucht: dicke doedel v 4.0
+Die, 16. Aug 1994, 18:09:26 Toeter flucht: dicker doedel v5.0
+Die, 16. Aug 1994, 20:18:14 Toeter flucht: dicker doedel v 5.0
+
+[ da hat er wohl Probleme mit dem Zaehlen bekommen ... ;) ]
+
+Don, 18. Aug 1994, 04:13:10 Bloodgore flucht: das euch hoeren und sehen
+vergehen und ihr tausend aeonen in den klauen der teuflischten daemonen der
+hoelle einen langsamen tod erleidet!
+Don, 18. Aug 1994, 14:10:21 Khorne flucht: scheissunfaehige typen hier
+Die, 23. Aug 1994, 19:31:53 Flintnail flucht:
+verdammtesBlutsaugerschwerthinterdemallehersindgaebsdichdochnicht
+Fre, 26. Aug 1994, 19:10:49 Mephisto flucht:
+VerdammterMistWiesoSchliessenSichAlleFuenfSekundenDieseTueren?
+Die, 30. Aug 1994, 20:51:56 Grimmborn flucht: Dieser himmelschreiende
+Makroscheiss gehoert in den tiefsten Tiefen der Schlucht versenkt, wo die
+bloedsinnigen
+Daemonen sich mit dem abgefuckten neumodischen Kram vergnuegen koennen! Va fa
+har saant haer i det haer jaekla spelet att goera!!!
+Don,  1. Sep 1994, 10:48:17 Nietzsche flucht: ihr seid alles tunten und
+schlampen
+Mit,  7. Sep 1994, 21:27:44 Grimmborn flucht: Verdammte Makrohetzerei mit
+Unterbrechungen! Und wenn ich die Mistsocke erwische, die diese
+unuebersichtlichen Fenster erfunden hat fuehre ich ihr eine SUN nasal ein!
+Mit, 14. Sep 1994, 13:09:40 Grimmborn flucht: Mir gehen diese Katakomben ja
+so dermassen auf den Keks und das Schlimmste: ich bins jedesmal selber schuld!
+Mit, 14. Sep 1994, 21:37:27 Grimmborn flucht:
+KruzituerkennocheinmalKannManAlsWiederholerNichtEinfachDasSchwertAmEingangVomPfoertnerBekommen!!!!
+Fre, 16. Dez 1994, 03:03:26 Bibo flucht: /so laut, dass auch die zatongs sich
+erschrecken
+Don, 29. Dez 1994, 15:43:57 Oetti flucht: Boing is langweilig und doof,
+verdammichscheissschrumpfifrauenlilapausenmuell
+Mit, 12. Apr 1995, 11:15:49 Craig flucht: Boing, ich raeche mich!
+
+[ Angst ... :) ]
+
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Mal wieder ein paar Friedhofsflueche ... (Schrumpfi, 23. Apr 1995, 00:48:43):
+#! rn=Boing rt=798589226
+Oetti das kriegste zurueck!! ;-))
+Schrumpfililapausenmuell :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Mal wieder ein paar Friedhofsflueche ... (Grimmborn, 23. Apr 1995, 18:31:22):
+#! rn=Boing rt=798589226
+
+Hmm, seit der Oeffnung des Nebeneingangs hat ja wohl die Kreativitaet
+deutlich nachgelassen. Da sieht man wieder: Nichts hat nur Nachteile.
+Ob man vielleicht ein fluchen im Nebeneingang einbauen sollte? ;-)
+
+Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Eiswueste (Zardoz, 26. Apr 1995, 17:46:20):
+Auf vielfachen Spielerwunsch hat sich ueberraschender weise der Weg
+zum Nordpol durch die Eiswueste ein klein wenig geaendert. Also, wenn
+irgend jemand so freundlich waere den neuen Weg herauszufinden so waere
+ich ihm sehr dankbar. Um zwei Fragen, die sicherlich immer wieder gestellt
+werden, vorzubeugen: Ja, ich hab die Eiswueste geaendert. Nein, das Untier
+ist nicht staerker geworden und es stehen auch keine Eisdaemonen auf
+dem Weg zum Nordpol.
+Ciao
+                   Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Eiswueste (Dancer,  1. Mai 1995, 12:26:08):
+#! rn=Zardoz rt=798911180
+...Du laesst nach, Zardoz ;-)
+
+Dancer - rueckt auf seiner Opabank ein Stueck zur Seite..fuer Zardoz...
+
+
+-----------------------------------------------------------------------------
+
+
+
+Gruft (Schrumpfi,  6. Mai 1995, 04:09:27):
+So, nun hab ich die Gruft ein wenig veraendert. Wie, wo und was duerft Ihr
+selber rausfinden :-)
+Schrumpfi
+
+P.S Vielen Dank an Laurin fuer die Ideen, auf die ich beim snoopen gekommen
+bin und allen anderen fuer die Typos.
+
+-----------------------------------------------------------------------------
+
+
+
+Neues in der Gruft. (Schrumpfi, 19. Jun 1995, 03:47:39):
+Ich hab Lilith auf den Wunsch einiger Leute, was schoenes gegeben. Allerdings
+hab ich ihr auch einen Beschuetzer dazu gestellt, genauso wie Abdul.
+Viel Spass! ;-)
+Schrumpfi
+
+-----------------------------------------------------------------------------
+
+
+
+Neues aus der Gruft. (Schrumpfi, 19. Jun 1995, 06:07:12):
+Ich hab was vergessen; die Hexe am Eingang ist jetzt nicht mehr so
+schweigsam. Bellicus, Dich kennt sie glaub ich auch, frag sie mal ;-)
+Schrumpfi
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neues in der Gruft. (Flintnail, 20. Jun 1995, 11:02:48):
+#! rn=Schrumpfi rt=803526459
+hmm...hier gibt's Lilith???
+...und sie brauch 'nen Beschuetzer???...wozu?:)
+
+Flintnail
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neues aus der Gruft. (Kretek, 21. Jun 1995, 19:01:44):
+Phhhhhh!
+Ist die Gruft jetzt also noch moerderischer fuer arme, hilflose und
+vertrauensvolle Level-19-Spieler, die sich durch freundliches Magier-
+Gerede in die Gruft locken lassen? ;)
+
+Kretek
+(wird sich die Aenderungen NICHT anschauen!)
+(Nix fuer Ungut, Schrumpfi!)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Neues in der Gruft. (Schrumpfi, 23. Jun 1995, 00:05:38):
+#! rn=Flintnail rt=803638968
+Dann geh mal kucken wozu sie den brauchst und wo sie sich rumtreibt! ;-)
+Schrumpfi fies grinsend
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Neues aus der Gruft. (Schrumpfi, 23. Jun 1995, 00:06:58):
+#! rn=Kretek rt=803754104
+Kann ich verstehen. ;-)
+Schrumpfi hat schon so einige auf dem Gewissen ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Neues aus der Gruft. (Caradhras, 23. Jun 1995, 11:42:45):
+#! rn=Schrumpfi rt=803858818
+Argl, ja, hat sie. Zum Beispiel mich. :-)
+Kommt davon wenn man mit Vorsicht 60 zu Lilith reingeht.
+Haette es ja ueberlebt, aber mein eigener Bummi (von Lilith geworfen)
+hat mich ja dann erwischt im Nachbarraum.
+
+   Caradhras - moechte nicht wissen welche Vorsicht man jetzt bei
+               Lilith braucht
+
+-----------------------------------------------------------------------------
+
+
+
+Neues, niedliches Monster in Polar (Zardoz, 29. Jun 1995, 21:10:34):
+Halloechen Leute.
+Um wieder etwas Leben ins Polargebiet zu bringen habe ich dort ein
+nettes und witziges Monster versteckt. Viel Spass damit :-))
+
+-----------------------------------------------------------------------------
+
+
+
+Abdul und das Kreuz (Schrumpfi, 15. Jul 1995, 19:00:53):
+Hi,
+Ich habe das Kreuz geaendert, es ist leider nicht mehr ganz so gut wie
+frueher.
+Schrumpfi
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Abdul und das Kreuz (Roadrunner, 17. Jul 1995, 10:03:13):
+#! rn=Schrumpfi rt=805836657
+wuerde mich interessieren wieso :)
+			RR
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Abdul und das Kreuz (Boing, 17. Jul 1995, 10:20:44):
+#! rn=Janice rt=805969180
+Das Kreuz war besser als die beste Ganzkoerperruestung (!!!), aus diesem
+Grunde wurde es entschaerft.
+   Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Abdul und das Kreuz (Grimmborn, 17. Jul 1995, 14:52:59):
+#! rn=Boing rt=805969244
+
+Wow, wenn ich sowas versuche kommt immer nur ein "Ungueltiger Ruestungstyp,
+bitte Erzmagier verstaendigen" (was auch nix nuetzt).
+Den Trick will ich auch koennen! ;-)
+
+Grimmborn der Atheist. Ja doch, kennt da einige Tricks...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Abdul und das Kreuz (Asmodis, 17. Jul 1995, 21:32:36):
+#! rn=Grimmborn rt=805985579
+Lag vielleicht dran, dass nur der RANDOM-Wert, den das Kreuz aufweist
+darueberlag, ausserdem ist es ja keine richtige ruestung
+(magischer schutz und so)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Abdul und das Kreuz (Schrumpfi, 18. Jul 1995, 17:44:31):
+#! rn=Roadrunner rt=805968193
+Weil es zu gut war.
+Schrumpfi
+
+-----------------------------------------------------------------------------
+
+
+
+Muell (Zardoz, 19. Jul 1995, 08:32:33):
+Argl! Dieses Zumuellen der Zeitung geht mir tierisch auf den Geist!!
+Zum Glueck darf ich als RM hier Artikel loeschen :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Neues in Polar (Zardoz, 14. Aug 1995, 17:37:53):
+In den unendlichen Weiten der Eiswueste ist ploetzlich eine duestere Festung
+aufgetaucht. Was es damit auf sich hat, konnte mir noch niemand sagen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neues in Polar (Zardoz, 14. Aug 1995, 19:29:13):
+#! rn=Zardoz rt=808414673
+Naja, die Ankuendigung ist vielleicht etwas schwach. Also hier mal was
+deutlicher:
+In der Eiswueste gibts ne neue Gilde.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Neues in Polar (Jerrico, 14. Aug 1995, 19:32:18):
+#! rn=Zardoz rt=808421353
+Die Eiswueste ist aber verdammt gross, oder ?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Neues in Polar (Kaenguruh, 14. Aug 1995, 19:37:17):
+#! rn=Jerrico rt=808421538
+Noe. Nur wenn man sich nicht auskennt :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Neues in Polar (Jerrico, 14. Aug 1995, 19:38:36):
+#! rn=Kaenguruh rt=808421837
+und was machen die, die sich nicht auskennen ?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Neues in Polar (Kaenguruh, 14. Aug 1995, 19:42:34):
+#! rn=Jerrico rt=808421916
+Karte malen?
+Weg markieren?
+Mit "ede" rausgehen wenn nichts mehr hilft?
+*argl* "ende" natuerlich :)
+
+      Kaenguruh - war das jetzt Spielerhilfe? :))
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Neues in Polar (Hate, 14. Aug 1995, 19:46:17):
+#! rn=Kaenguruh rt=808422154
+Sicher verlaufen und jaemmerlich draufgehen, erfrieren verhungern oder
+von irgendwelchen Tieren aufgefressen werden.
+Hate.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Neues in Polar (Rochus, 14. Aug 1995, 19:47:18):
+#! rn=Kaenguruh rt=808422154
+Man kann auch mit "toete eisbaer" oder "toete untier" ganz
+schnell aus der Eiswueste herauskommen... :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Neues in Polar (Kaenguruh, 14. Aug 1995, 19:49:56):
+#! rn=Rochus rt=808422438
+Och, da langts auch wenn man einfach wartet :))
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Neues in Polar (Jerrico, 14. Aug 1995, 19:56:01):
+#! rn=Kaenguruh rt=808422596
+oeffne tuer
+n
+lege in bett 2
+ich warte lieber bis der weg bekannt ist, und hier geposted wird.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Neues in Polar (Jerrico, 14. Aug 1995, 19:57:10):
+#! rn=Jerrico rt=808422961
+argl
+und beobachte mein skript, wie es keine fehler macht.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Neues in Polar (Kaenguruh, 14. Aug 1995, 20:04:42):
+#! rn=Jerrico rt=808423030
+Viel Spass dabei... Poste mal einer nen falschen weg :))
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Neues in Polar (Mupfel, 14. Aug 1995, 22:09:04):
+#! rn=Jerrico rt=808422961
+sollte der weg hier gepostet werden wird zeit ihn zu aendern :-)
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Neues in Polar (Dancer, 14. Aug 1995, 22:44:12):
+#! rn=Mupfel rt=808430944
+Siehste Zardoz...ich sag doch: wenn Du nur ne kurze Ankuendigung machst, dann
+wird die Rubrik vollgemuellt!
+Schwallst Du Dir jedoch eine 10-Seiten-Story aus dem Fell, wirds garantiert
+kein Re geben...weils keiner liest. Dann noch den Titel des Artikels a la
+'Superneue Gilde mit klasse Features und Unsterblichkeitsbutton eroeffnet!'
+und es kann gar nix mehr schiefgehen.
+
+Dancer - Marketingtiger.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Neues in Polar (Orktoeter, 15. Aug 1995, 09:37:11):
+#! rn=Rochus rt=808422438
+War das jetzt ein klassischer Rochus ?    (will heissen hat Rochus einen
+Rochus auf Spieler ?)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Neues in Polar (Schrumpfi, 15. Aug 1995, 12:43:28):
+#! rn=Jerrico rt=808421916
+Ich hab da ein nettes Haustierchen, kannste ja mal fragen ob es Dir ne
+Wegbeschreibung oder ne Karte von der Eiswueste gibt. Es heisst: Untier! ;-)
+Schrumpfi
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Neues in Polar (Orktoeter, 15. Aug 1995, 14:03:48):
+#! rn=Schrumpfi rt=808483408
+Also Schrumpfi, was denn nun ? Haustier oder Untier ?
+OrkT.
+
+-----------------------------------------------------------------------------
+
+
+
+Kampf in der Gilde (Zardoz, 15. Aug 1995, 19:28:20):
+Nach anfaenglichen "Unfaellen" hab ich die Kaempfe fuer die Chaosgilde mal
+gruendlich ueberarbeitet. Sie sollten jetzt eigentlich machbar sein.
+Wer jetzt noch stirbt bekommt trotzdem keine EPs zurueck :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Eisdaemonen-Koenig (Zardoz, 17. Aug 1995, 15:55:49):
+Der Eisdaemonen-Koenig hat jetzt etwas dabei, was vielleicht ein Paar
+Krieger des Chaos gebrauchen koennten...
+
+-----------------------------------------------------------------------------
+
+
+
+Neues aus der Gruft (Schrumpfi, 28. Aug 1995, 03:58:44):
+Ich habe die Gruft ein wenig ausgebaut. Die Chaoten muessen jetzt nicht immer
+zu Mecki oder zum Schrat rennen um boese zu werden. :-)
+Die Tierchen sind lieb, Abduls Gesinnung ist noch besser geworden und zwei
+exorzisten versuchen ihr Glueck in der Gruft. Die anderen sind so boese wie eh
+und  jeh. :-)
+Ausserden glaub ich, dass es sich lohnt, die Gruft nochmal in allen Details
+zu bewundern. ;-)
+Schrumpfi
+
+-----------------------------------------------------------------------------
+
+
+
+Nadeln  (Schrumpfi, 21. Sep 1995, 23:31:50):
+Die Nadeln sollten jetzt Eure Daemonen nicht mehr treffen.
+Schrumpfi
+
+-----------------------------------------------------------------------------
+
+
+
+Weg zur Gilde (Roesti, 27. Sep 1995, 13:35:41):
+n,n,o,o,s,o,o,n,w,w,s,n,oeffne Falltuer
+Viel Spass beim eintragen...Mann sollte uebrigens unbedingt einen Schinken
+fuer den Gildenhund mitbringen...Ausserdem sollte mann frech oder lieb sein
+sonst wird der Pfoertner flapsig...
+Alle Angaben ohne Gewehr.
+Roesti.
+
+-----------------------------------------------------------------------------
+
+
+
+Neues in Polar (Zardoz, 27. Sep 1995, 19:29:48):
+Man glaubt es kaum, aber es ist wirklich war. Irgendein Idiot hat doch
+tatsaechlich mitten in der nebeligen Tundra des Polargebietes auf einem
+einsamen Berg eine Rodelbahn errichtet, auf der bis zu 5 Spieler
+gegeneinander Rennen fahren koennen. Ob da ueberhaupt jemand hinfindet?
+Wohl eher nicht und der Mann mit dem Bauchladen (ja es ist der Zwillings-
+bruder des Arena-Bauchladen-Verkaeufers) wird wohl nicht viel Umsatz machen.
+
+Zardoz, der sich mal wieder in der Tundra verlaufen hat.
+
+P.S. Diverse Kommata sind im obigen Text einzufuegen :-)
+
+-----------------------------------------------------------------------------
+
+
+
+COOLE RODELBAHN (Buddelflink, 28. Sep 1995, 00:15:47):
+hey ho die rodelbahn is echt klasse am anfang zwar weng schwer aber mit der
+zeit ganz gut gell
+
+buddelflink
+
+-----------------------------------------------------------------------------
+
+
+
+Rodeln (Zardoz, 28. Sep 1995, 10:52:33):
+Es hat einen Preissturz im Laden des Schlittenverkaeufers gegeben. Jetzt
+sollten die Schlitten auch fuer "normale" Spieler erschwinglich sein.
+
+Ciao          Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Rodeln (schon wieder) (Zardoz, 28. Sep 1995, 11:04:28):
+Die Rodelrennen kosten jetzt eine Startgebuer von 500 Muenzen.
+Der Sieger eines Rennens bekommt dafuer 90% der Einnahmen. Sollte keiner
+im Ziel ankommen, so wird das Geld in den Topf fuers naechste Rennen
+gelegt.
+
+Ciao      Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Schlitten-Verkaeufer (Zardoz, 29. Sep 1995, 13:10:01):
+Der Schlitten-Verkaeufer kann jetzt auch die Panzerung des Schlittens
+reparieren. Dies gilt allerdings erst fuer NEUE Schlitten und NEUE
+Panzerungen!
+Wie immer reicht es dann, dem Haendler den Schlitten zu geben und er schaut
+selbst nach, was er alles am Schlitten reaprieren/nachladen kann.
+
+Ciao       Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Rodeln (Zardoz,  2. Okt 1995, 09:25:07):
+Mitteilung der Rodel-Bahn-Verwaltung
+
+Die Betreiber der Rodelbahn haben keine Kosten und Muehen gescheut und
+haben nun auch eine graphische Darstellung der Rodelbahn eingebaut. Diese
+laesst sich mit "unt bahn" aufrufen. Sie ist noch recht primitiv, an einer
+verbesserten Darstellung wird gearbeitet.
+
+Viel Spass wuenscht stellvertretend fuer die Verwaltung
+
+             Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Top-Liste (Zardoz,  4. Okt 1995, 12:18:25):
+
+Hallo Leute!
+
+Hier kommt die erste Top-Liste der Rodler. Es wurden die Ergebnisse
+vom 27. Sep bis 2. Okt beruecksichtigt. Fuer einen Sieg gab es 
+die Anzahl an Gegnern als Punkte. Hat man also 4 Spieler besiegt,
+so gab es 4 Punkte...
+
+    1. Ryne         31
+    2. Zuerileu     22
+    3. Yeti         20
+    4. Asmodis      19
+    5. Rxtech       15
+    6. Khidar       12
+    7. Jaf          11
+    8. Kaenguruh    10
+       Bambulko     10
+   10. Odo           7
+       Hardil        7
+   12. Mars          6
+       Anakin        6
+   14. Nikolaus      4
+       Buddelfink    4
+       Locutus       4
+   17. Hakkikkt      3
+       Schrumpfi     3
+       Warlord       3
+   20. Larissa       2
+   21. Jerrico       1
+       Pyromella     1
+       Nairolf       1
+       Xera          1
+       Golum         1
+
+Ich hab versucht Testrennen mit Zweities aus der Wertung zu nehmen.
+Ausserdem gab es da einige Magier, die durch hohe Werte in Staerke gewonnen
+hatten; der Fehler ist beseitigt und auch diese Rennen kamen nicht in
+die Wertung. Ich selbst hab mich aus der Wertung genommen. Wer gegen mich
+gewonnen hat, hat natuerlich auch einen Punkt bekommen :-)
+
+
+Ciao            Zardoz
+
+
+-----------------------------------------------------------------------------
+
+
+
+Neuste Rodel-Top-Liste (Zardoz,  4. Okt 1995, 12:46:42):
+Rodel-Top-Liste bis 4. Oktober, 12 Uhr.
+
+     1. Asmodis         79
+     2. Warlord         37
+     3. Ryne            31
+     4. Rxtech          26
+        Zuerileu        26
+     6. Kaenguruh       23
+        Zardoz          23
+     8. Yeti            20
+     9. Khidar          12
+    10. Jaf             11
+    11. Bambulko        10
+    12. Odo              7
+        Hardil           7
+    14. Mars             6
+        Anakin           6
+    16. Nikolaus         5
+    17. Buddelfink       4
+        Locutus          4
+    19. Hakkikkt         3
+        Schrumpfi        3
+        Nasim            3
+    22. Larissa          2
+        Vanir            2
+    24. Jerrico          1
+        Pyromella        1
+        Nairolf          1
+        Xera             1
+        Golum            1
+        Hobo             1
+        Highlander       1
+        Nial             1
+        
+-----------------------------------------------------------------------------
+
+
+
+Rodeln (Zardoz,  4. Okt 1995, 17:57:13):
+Die Bahn wurde auf 9 Spuren und damit maximal 7 Spieler erweitert. Viel
+Spass damit und weitere Ideen an mich
+
+Ciao Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+idee zu rodeln (Zuerileu,  5. Okt 1995, 02:54:50):
+Sali,
+Wie waer wenn man Kettensaegen mit denen man den schlitten des anderen wenn
+man nah drann ist zersaegen kann anstad in zu rammen, im waffenarsenal
+aufnehmen wuerde ?. Nun mehgr ausruestung und waffen find ich sind sicher
+immer erwuenscht und so eine saege darf nicht zu billig sein und muss einen
+verherenden Schaden anrichten =:))
+
+Play a Game, Play a Game, play....   Zuerileu
+
+-----------------------------------------------------------------------------
+
+
+
+Re: idee zu rodeln (Yantro,  5. Okt 1995, 07:40:53):
+#! rn=Zuerileu rt=812858090
+
+Zueri, stellt sich nur die Frage, was eine Kettensaege mit Fantasy und
+Mittelalterlicher Technik zu tun hat... sind da lauter kleine Orks drinne, die
+das Teil dann antreiben?? Also bitte denk doch erst mal, bevor Du wiedermal
+einen Vorschlag in die MPA setzt....
+
+                Nur ich, der Depp.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: idee zu rodeln (Zuerileu,  5. Okt 1995, 16:39:42):
+#! rn=Yantro rt=812875253
+Sorry yantro,
+Aber erklaer mir mal was ein raketentraeger oder ein Flammenwerfer im Mud zu
+suchen hat ? Hey yantro wenn in deinem Hirn mehr hirnzellen als luft waere
+koennte evtl. auch Dir etwas fantasievolles einfallen, da demm anscheind nicht
+so ist kannst du nur numnoergeln und motzen was das zeug haelt und das ist
+warscheinlich auch die einzigste faehigkeit die du besitzt !
+
+In demm Sinne, wisch zuerst den eignen Muell in deinen 4 Waende weg bevor du
+dich um meinen kuemmerst !
+
+Zuerileu (*stink* wuedent !)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: idee zu rodeln (Warlord,  5. Okt 1995, 19:49:30):
+#! rn=Zuerileu rt=812858090
+
+ja ja, zueri*, das ist ja klar, das diese saege teer sein soll, damit du sie
+dir als magier kaufen kannst und wir als spieler nicht ;)) oder willst du sie
+nur haben, damit du wieder ne chance gegen mich hast ? :))))
+
+	Warlord, der rodelnde Chaot
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: idee zu rodeln (Yantro,  6. Okt 1995, 07:56:01):
+#! rn=Zuerileu rt=812907582
+
+
+Hallo Zueridarling,
+
+ich will es hier wirklich nicht auf einen Flamewar (das ist englisch)
+einlassen, darum waer mir lieb, wenn das der letzte Artikel zu dem Thema ist.
+Kannst mir ja mailen, wenn Du Dich traust ;)
+
+Zum einen kenne ich Zardoz so gut, dass ich sicher bin, dass er darauf
+achtet, dass es zu keinen unlogischen oder ins MG nicht passenden Objecten
+kommt, denn er liebt das Rollenspiel ueber alles und will es nicht
+kaputtmachen. Wenn Du an dem Sinn von Raketen und Flammenwerfers zweifelst,
+dann frag doch mal Li ein bisschen ueber die alten Techniken der Fernwestler
+aus (die haben naemlich schon Raketen gebastelt, als wir morgengraeulichen
+'Normalcreaturen' noch stammelnd ueber die Hochebene gekrochen sind.
+
+Zu Deinem Vorwurf ueber meine Kreativitaet kann ich nur betonen, dass ich da
+so eine kleinigkeit angeschlossen habe, was die Phantasie sehr anregt.
+Natuerlich erkennt nicht jeder sofort den Wert, aber das liegt an der
+Qualitaet der Spieler (wer sich nicht umschaut hat Pech).
+
+Ansonsten: Wenn Du auch mal was angeschlossen hast und was anderes tust als
+hier Leute zu nerven, dann meld Dich mal wieder ;)
+
+Yantro, der Depp der Deppen.
+
+P.S.: Und nu Husch zurueck zu Deinen Drogen, damit Du die Kritik auch
+irgendwie verarbeitest ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: idee zu rodeln (Ketos,  7. Okt 1995, 10:51:24):
+#! rn=Yantro rt=812962561
+Ja zadroz,
+koenntest du nicht die Magierbefehle splah und flame einbauen ins rennen
+(natuerlich nur fuer magier...)
+splash = X spritzt dich patsch nass. Du vereist und schliederst aus der Kurve
+flame= X zueckt sein Flamenwerfer und fackelt dein schlitten ab.
+
+zum thema kettensaege: ein fuchsschwanz (saege) tut es doch auch. mann muss
+sich nur fuer ein 2 runden nebem dem opfer halten und an seinem schlitten rum
+zu
+saegen.
+
+- Ketos -
+P.S. splash & flame war Ironie,   die Saege ein Vorschlag
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: idee zu rodeln (Baron,  7. Okt 1995, 10:54:33):
+#! rn=Ketos rt=813059484
+Wie waers mit einem kleinen, transportablen Minidrachen als Flammenwefer.
+Wenn man seinen Schwanz quetscht spuckt er Feuer (manchmal natuerlich auch auf
+seinen Besitzer :). Die Saege ist dann kleiner Steinbeisser, dem man mit etwas
+Glueck die Steine abgewoehnen und ihn auf Schlittenkufen konditionieren kann
+:).
+Baron - muss auch endlich mal rodeln.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: idee zu rodeln (Baron,  7. Okt 1995, 10:57:38):
+#! rn=Ketos rt=813059484
+ARGL, Teppfihler !
+
+-----------------------------------------------------------------------------
+
+
+
+Top-Liste (Zardoz,  9. Okt 1995, 12:16:55):
+Rodel-Top-Liste bis 5. Oktober, 16 Uhr.
+
+     1. Asmodis         79
+     2. Rxtech          54
+        Zardoz          54
+     3. Warlord         37
+     4. Ryne            31
+     5. Kaenguruh       30
+     6. Zuerileu        26
+     7. Yeti            20
+     8. Pampers         17
+     9. Hardil          16
+    10. Hakkikkt        13
+        Guybrush        13
+    11. Khidar          12
+    12. Jaf             11
+    13. Bambulko        10
+        Nasim           10
+    15. Odo              7
+        Highlander       7 
+    17. Mars             6
+        Anakin           6
+    19. Nikolaus         5
+    20. Buddelfink       4
+        Locutus          4
+    22. Schrumpfi        3
+    23. Larissa          2
+        Vanir            2
+        Li               2
+    26. Jerrico          1
+        Pyromella        1
+        Nairolf          1
+        Xera             1
+        Golum            1
+        Hobo             1
+        Nial             1
+        
+-----------------------------------------------------------------------------
+
+
+
+Top-Liste (Zardoz, 10. Okt 1995, 14:39:32):
+Die Top-Liste der besten Rodler aller Zeiten haengt jetzt auf der Tribuene
+der Rodelbahn.
+
+-----------------------------------------------------------------------------
+
+
+
+schlittenfahn (Yeti, 12. Okt 1995, 16:48:51):
+Werte MitrodlerInnen, hi Zardoz !
+
+Vieleicht ist Euch das Problem auch schon aufgefallen:
+Man moechte nach ner Spritztour mit den Schlitten mal wieder etwas Geld zu
+finanzierung dieses Hobbys erplaetten und da der schlitten doch recht schwer
+ist, diesen sicher in seiner Kiste|Truhe|Nische etc. in seinem sauerverdienten
+Seherhaus verwahren. "Fein, lege Schlitten in Kiste", DENKT man, aber denkste,
+nix is, man muss vorher alles abmontieren und einzeln in die Kiste packen, was
+bei nem schweren Kampfschlitten mit diversen Beschleunigern und Waffeln aeh
+Waffen schon gewaltig in tipperei ausartet, ca 5x entferne blablubber von
+schlitten, dan 6x lege xxx in kiste. wenn man den schlitten rausnimmt, geht
+der spass andersrum... Ich will ja nich schon wieder meckern, aber koennte man
+dies Verfahren nicht etwas vereinfachen ??
+NEIN, ich will KEIN TF-Skript dafuer schreiben.
+JA, ich koennte mir 2 Dinge vorstellen:
+ 1. Den Schlitten oder meinetwegen auch die Kiste so zu veraendern, das man
+den Schlitten KOMPLETT in die Kiste kriegt.
+ 2. Wenn obiges zu lange dauert, als Uebergangsloesung auch etwa: montiere
+alles an schlitten | entferne alles von schlitten
+
+P.S. Wie waers mit nem gib alles an SpielerX , das vieleicht das "behalte"-
+Propertie beruecksichtigt ??
+warn halt nur so'n paar Ideen, um das Mud schoener zu machen.
+*wink*, Yeti
+
+-----------------------------------------------------------------------------
+
+
+
+Re: schlittenfahn (Asmodis, 12. Okt 1995, 19:41:54):
+#! rn=Yeti rt=813512931
+Leg den Schlitten doch einfach so in dein Haus und schliess die Haustuer ab
+:)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: schlittenfahn (Yeti, 12. Okt 1995, 20:18:34):
+#! rn=Asmodis rt=813523314
+ is ja nich sinn der sache, wozu brauch man nen Haus, wenn keine reinkommt
+
+Yeti, sich wundernd
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: schlittenfahn (Mars, 13. Okt 1995, 11:24:34):
+#! rn=Yeti rt=813525514
+
+Ich habe aehnliche Probleme, wenn ich beliebige Behaelter, wie z.B.
+das Postpaket, in die Truhe legen will. Da ich gluecklicherweise
+ueber 10 Raeume verfuege, habe ich einen nicht-zugaenglich gemacht,
+und bei Bedarf schaffe ich mir einen Durchgang, lege die Sachen in
+den Raum, und mache den Durchgang wieder dicht.
+Hmm, vielleicht sollte ich den Raum als Rumpelkammer einrichten :)
+
+  Mars
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: schlittenfahn (Aranya, 16. Okt 1995, 12:22:49):
+#! rn=Mars rt=813579874
+Aha, vermauerst du den Raum und reisst dann wieder ein Loch?
+Und wer macht dann die Sauerei weg? Haesch ne Putzhilfe?
+
+Aranya
+     Heut ziemlich schmarrig drauf. Ab nach Muell.
+
+-----------------------------------------------------------------------------
+
+
+
+Rodelbahn (Zardoz, 19. Okt 1995, 16:51:22):
+Auf der Rodelbahn koennen jetzt ein paar Hindernisse rumstehen, die man
+dann auch in der graphischen Darstellung sieht. Spaeter wird man solche
+Hindernisse selber abwerfen koennen... ich bastel dran
+
+Ciao        Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Ersatzregionsmagierin im Polar (Mupfel, 14. Dez 1995, 19:11:54):
+#! rn=Schrumpfi rt=818964472
+och du machst das ganz gut schrumpfi. wenn z. mal wiederkommt, wollen die
+goetter ihn vielleicht garnicht mehr als rm weil du das viel besser machst :-)
+
+-mupfel- (haelt zu schrumpfi. immer.)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Ersatzregionsmagierin im Polar (Schrumpfi, 14. Dez 1995, 19:16:42):
+#! rn=Mupfel rt=818964714
+Nix! Zardoz ist und bleibt RM vom Polar und es gibt niemanden der das besser
+machen kann als er. Schon gar nicht ich.
+Schrumpfi (ohne Zardoz nur die haelfte)
+
+-----------------------------------------------------------------------------
+
+
+
+Darkovertal (Bendeigid, 11. Jan 1996, 16:51:25):
+Hallo zusammen!
+
+Das wunderschoene Polargebiet ist um eine Attraktion reicher:
+
+          Das darkovertal!
+
+Ich freu mich und bin ziemlich nervoes, aber dennoch: viel Spass damit!
+
+Danke an alle, die geholfen haben: Zardoz (Papi, Lehrer, Regionsmaggi)
+ Schrumpfi ( Mami, Testerin und mehr), Gruuh (:) ), Zephyr (nette Ideen
+gehabt), Wargon, Toeter, Boing u.v.a , die ich mit Programmierfragen genervt
+hab.
+ Viel Spass,
+                Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Fruehling im Darkovertal (Bendeigid, 26. Jan 1996, 15:34:03):
+Hallo zusammen!
+
+Als ich eben so ganz allein (wie immer :) ) durch das Darkovertal spazierte,
+da fiel mir doch auf, dass der Fruehling langsam aber sicher Einzug haelt. Die
+Blumen beginnen zu bluehen...
+
+Viel Spass damit,
+                 Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Bansheebug behoben (Bendeigid,  2. Feb 1996, 09:40:33):
+Hallo liebe Darkoverfreunde und Bansheekiller!
+
+Leider hab ich in meiner Hektik in der ersten Woche nach Anschluss meines
+Tals einen klitzekleinen Fehler (genaugenommen waren es zwei Klammern)
+gemacht, der dazu fuehrte, dass die Banshee nicht all ihr Koennen zeigte...
+seitdem. Inzwischen ist das aber aufgefallen und sofort behoben worde.
+Wenn also jetzt eine etwas hoeher Vorsicht noetig sein sollte, wisst ihr,
+woran es liegt.
+
+Bendeigid, sein Haustier haetschelnd
+
+-----------------------------------------------------------------------------
+
+
+
+Neues aus Neskaya (Bendeigid, 13. Feb 1996, 02:49:33):
+Vai Domyn,
+
+Die Leronis in Neskaya hat ein neues Tool dabei. Schaut's Euch doch einfach
+mal an...
+
+Z'par Servu,
+             Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neues aus Neskaya (Asmodis, 13. Feb 1996, 11:45:34):
+~#! rn=Bendeigid rt=824176173
+~#! tid=824176173
+Hmm, heisst es dann wieder Leronis sehen und sterben ?
+lohnt es sich, dafuer sein geld in der kneipe zu verpulvern?
+viel zu stark, das vieh
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Neues aus Neskaya (Caradhras, 14. Feb 1996, 07:56:12):
+~#! rn=Asmodis rt=824208334
+~#! tid=824176173
+Eine Leronis ist kein Vieh, Asmodis!
+
+         Caradhras - grummelnd
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Neues aus Neskaya (Bendeigid, 14. Feb 1996, 11:16:25):
+~#! rn=Caradhras rt=824280972
+~#! tid=824176173
+Hmmmmpf, Vieh?
+Na warte ich bau ihr noch eine persoenliche Abneigung gegen Familie Asmodis
+ein. :)
+Sonst seid ihr doch immer auf der Suche nach Herausforderungen. Also versucht
+euch doch mal an ihr. Ist sicher witziger als Gardewaechter oder Killerpopel.
+
+Z'par Servu,
+           Bendeigid
+
+P.S.: Vielleicht gefaellt euch ja das neue Tool von ihr :)
+
+-----------------------------------------------------------------------------
+
+
+
+Eiswueste (Zardoz, 20. Feb 1996, 17:54:45):
+Hallo ihr kaelteliebenden Bewohner des MG!
+
+Ich habe mir fuer die naechste Zeit vorgenommen, die Eiswueste komplett
+zu ueberarbeiten. Wie sie spaeter aussehen wird, weiss ich noch nicht
+100%ig, ich hab nur so ein paar Ideen. Jedenfalls soll sie nachher kein
+Labyrinth mehr sein! Wer noch Ideen dazu hat, kann mir ja mal mailen.
+
+Ciao   Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Eiswueste (Abendrot, 20. Feb 1996, 19:18:18):
+~#! rn=Zardoz rt=824835285
+~#! tid=824835285
+Sie war doch so ein schooooeeenes Labyrinth!
+Hat richtig Spasz gemacht, das zu kartographieren.
+Warum laeszt Du das denn nicht so?
+
+AbendRot im MorgenGrauen
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Eiswueste (Asmodis, 20. Feb 1996, 23:08:21):
+~#! rn=Abendrot rt=824840298
+~#! tid=824835285
+Ein Lab kann sie ruhig bleiben, nur soll es etwas schluessig sein.
+Kartographieren liess sie sich ja bisher nicht richtig.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Eiswueste (Fyt, 20. Feb 1996, 23:12:20):
+~#! rn=Asmodis rt=824854101
+~#! tid=824835285
+
+Also auf meiner Karte passt die Eiswueste auf ein rechteckiges Gitter.
+Waere schade um die Arbeit, wenn sie ploetzlich kein Lab mehr waere ;)
+
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Eiswueste (Catweazle, 21. Feb 1996, 11:36:02):
+~#! rn=Asmodis rt=824854101
+~#! tid=824835285
+Wenn Du meinst, die Eiswueste liesse sich niht kartographieren, dann
+hast Du Dich schwer getaeuscht :)
+YTC (hat schon mal eine Karte der Eiswueste gesehen!)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Eiswueste (Paracelsus, 21. Feb 1996, 11:44:27):
+~#! rn=Catweazle rt=824898962
+~#! tid=824835285
+Ne Karte von der Eiswueste ? Ist doch nun wirklich kein Problem.
+Ich hab mir zu Spielerzeiten auch eine gemacht.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Eiswueste (Abendrot, 21. Feb 1996, 12:18:34):
+~#! rn=Asmodis rt=824854101
+~#! tid=824835285
+Doch, die Eiswueste laesst sich gut kartografieren.
+Und das jetzige Lab der Eiswueste ist auch schluessig.
+Ich kann das bestaetigen, denn ich habe die Eiswueste kartografiert und sogar
+eine ASCII-Karte von der Eiswueste angefertigt.
+
+Soll ich sie hier posten?
+
+AbendRot im MorgenGrauen
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Eiswueste (Freund, 22. Feb 1996, 19:59:14):
+~#! rn=Abendrot rt=824901514
+~#! tid=824835285
+Hallo,
+
+ja, und ob die Eiswueste sich kartographieren laesst.
+Danach habe ich sie naemlich entworfen! :)
+Ich gebe ja zu, dass sie nicht perfekt programmiert ist, aber, so richtig
+ganz doll veraendern, dass nix mehr von ihr uebrig bleibt?
+
+*seufz*
+
+Da geht mir doch glatt ein Stueck Sentimentalitaet verloren.
+
+Wie waere es, die Eiswueste an einer Ecke zu vergroessern? :)
+
+Ein um sein groesstes zusammenhaengendes Gebiet* besorgter Freund
+
+* natuerlich nur, dass ich programmiert habe ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Eiswueste (Asmodis, 23. Feb 1996, 03:37:37):
+~#! rn=Freund rt=825015554
+~#! tid=824835285
+Hupps, wusste gar nicht, dass du auchh Polarchef bist, naja, so
+lernt man dazu. Ich sehe trotzdem keinen Zusammenhang in der
+Eiswueste, durch den man eine MAP zeichnen koennte, ist
+irgendwie bloed, wenn man erst nach norden ggeht und dann nach sueden und
+trotzdem nicht in den gleichen Raum kommt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Eiswueste (Asmodis, 23. Feb 1996, 03:39:32):
+~#! rn=Asmodis rt=825043057
+~#! tid=824835285
+Sorry fuer die Typos, ich werfe gleich diese bloede Tastatur
+aus dem Fenster.
+
+
+
+ *SCHEPPER*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Eiswueste (Freund, 23. Feb 1996, 20:56:35):
+~#! rn=Asmodis rt=825043057
+~#! tid=824835285
+Gruess Gott,
+Naja, EIGENTLICH kommt man schon im gleichen Raum heraus, wenn man
+erst nach Norden und dann nach Sueden geht, aber leider wird man nicht
+so richtig mit dem Schneesturm fertig, der da herrscht.
+
+Wahrscheinlich geht man gar nicht geradeaus und zurueck, obwohl man meint,
+man taete es... ;)
+Mit polarem und FREUNDlichem Gruss... ein (ehemaliger) Polarchef... :)
+
+-----------------------------------------------------------------------------
+
+
+
+Eiswueste (Zuerileu, 24. Feb 1996, 07:50:55):
+Sali Zardoz,
+Hmm neue ideen zur Eiswueste ?
+Lass Jof anstelle des Untiers in der eiswueste Frei rumlaufen =:))
+
+Tschuess Zuerileu
+
+Auua.. nicht schlagen ich nehme ja alles zurueck und es war bestimmt nicht
+boese gemeint !! =:)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Eiswueste (Amonsul, 24. Feb 1996, 13:16:27):
+~#! rn=Zuerileu rt=825144655
+~#! tid=825144655
+Och so wie der immer idlet merkt Jof bestimmt nix davon.
+
+    AmonSul
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Eiswueste (Asmodis, 26. Feb 1996, 10:03:58):
+~#! rn=Zuerileu rt=825144655
+~#! tid=825144655
+Jof laeuft doch nicht frei rum, der wird hoechstens mal von
+Larissa gassigefuehrt, wenn er nicht in der Gegend rumsteht und
+rumidelt :)
+
+ Aua, nicht zappen :)
+
+-----------------------------------------------------------------------------
+
+
+
+Urlaubsende (Bendeigid, 26. Feb 1996, 13:58:26):
+Der Schmied von Neskaya hat seinen Urlaub wie erwartet bei einem befreundeten
+Schmied verbracht und von ihm einiges gelernt. Nun ist er wieder in seine
+Schmiede zurueckgekehrt und hat seinen Dienstleistungsbetrieb wieder
+aufgenommen.
+
+Z'par Servu,
+           Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Regionsmagier (Zardoz, 27. Feb 1996, 16:59:30):
+Da ich zur Zeit wegen eines Praktikums ueberhaupt keine Zeit habe, wendet
+euch in naechster Zeit bei Bugs/Ideen zur Polarregion bitte an Schrumpfi,
+sie wird euch gerne weiter helfen :)
+
+Ciao     Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Regionsmagier (Mupfel, 27. Feb 1996, 19:51:06):
+~#! rn=Zardoz rt=825436770
+~#! tid=825436770
+Na toll. Nix gegen Schrumpfi aber wenns komplexer wird, vielleicht besser an
+Bendeigid.
+
+-mupfel-
+(Sorry Schrumpfi)
+
+-----------------------------------------------------------------------------
+
+
+
+Zardoz Praktikum (Freund, 27. Feb 1996, 20:15:49):
+Tja, wenn Zardoz jetzt ins Praktikum geht, dann ist meine Eiswueste
+ja erst einmal gerettet, oder?
+
+=)
+
+Ein FREUND der Polarregion.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Zardoz Praktikum (Bendeigid, 28. Feb 1996, 10:16:51):
+~#! rn=Freund rt=825448549
+~#! tid=825448549
+Aeh, Danke Mupfel fuer die Ehre! *erroet, krieg Panik*
+Mach hier bloss nicht meine Mama schlecht, die ist FIT!
+
+Freund, vertu Dich da mal nicht, Zardoz hat zu Hause einen Compi, nur eben
+abends keine Zeit, sich hier im RZ die Haende wund zu tippen. Aber zum
+Eiswueste abschmelzen und anschliessendem Neuschneeschippen reicht es
+sicherlich.
+
+Bangend,
+        Bendeigid
+
+P.S.: Hab eh keine Schreibrechte, also bloss keine RZGs finden :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Eiswueste (Cauno,  1. Mar 1996, 16:57:48):
+~#! rn=Zardoz rt=824835285
+~#! tid=824835285
+Bitte, bitte nicht die Eiswueste aendern!
+Das ist meine einzige Karte, die noch stimmt!
+
+	C. No
+
+	:-)
+
+-----------------------------------------------------------------------------
+
+
+
+Lofwyr (Mupfel,  6. Mar 1996, 00:59:14):
+Hallo
+
+Ich habe mal den Lofwyr etwas ueberarbeitet (hauptsaechlich interna, die
+Spieler nicht sehen (sollten)). Sollten irgendwelche merkwuerdigen Sachen
+passieren oder so, mail an mich.
+
+-mupfel-
+P.S.: Ja, ich habe einen Teil vin Troys Hinterlassenschaft im Polar
+'uebernommen'. Nein, ich wurde nicht gezwungen. Nein, Zardoz steht nicht
+hinter mirrrarglllroechel... :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Lofwyr (Schrumpfi,  6. Mar 1996, 19:31:11):
+~#! rn=Mupfel rt=826070354
+~#! tid=826070354
+Stimmt! ICH steh hinter Dir und zwar mit der Peitsche. ;-)
+
+Schrumpfi die Sklaventreiberin
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Lofwyr (Mupfel,  7. Mar 1996, 19:23:42):
+~#! rn=Schrumpfi rt=826137071
+~#! tid=826070354
+Aber selber'n lauen lenz machen was? :-)
+
+-mupfel- (mit gewalt geht bei mir nix)
+
+-----------------------------------------------------------------------------
+
+
+
+Zwei klitzekleine Neuerungen (Bendeigid,  8. Mar 1996, 14:12:16):
+Hi, Fans des Darkovertals!
+
+Also, ihr drei, wenn ihr euch umschaut werdet ihr evtl zwei winzige
+Neuerungen entdecken. Eine davon ist eher was fuer Metzler, die andere eher
+was fuer die Eitlen bzw. die, die an schoenen Dingen Spass haben.
+
+Z'par Servu,
+               Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Nochwas Neues (Bendeigid,  8. Mar 1996, 17:24:33):
+Hm, aufgrund zahlreicher Noergeleien von Gaesten hat der Wirt des "Falken"
+seine Speisekarte etwas ueberarbeitet.
+
+Z'par Servu,
+            Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Lofwyr (Schrumpfi,  8. Mar 1996, 19:16:08):
+~#! rn=Mupfel rt=826223022
+~#! tid=826070354
+Tja, die haben mich jetzt im Holy Mission zum proggen eingeteilt, also muss
+ich mir hier meine Sklaven suchen. ;-)
+Schrumpfi jagt dann halt Smirk mit der Peitsche durch den Polar.
+
+-----------------------------------------------------------------------------
+
+
+
+Lofwyr (Mupfel,  9. Mar 1996, 06:03:05):
+Hallo
+
+Muss man irgendwelche kleinen Neuigkeiten ankuendigen? Keine Ahnung. Auf
+jeden Fall steht jetzt bei Lofwyr's Dunghaufen eine kleine Gedenktafel....
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Allgemeine Abruestung (Bendeigid, 14. Mar 1996, 15:58:42):
+Hi.
+Wie der Titel schon ankuendigt, richtigerweis, habe ich beschlossen, im Zuge
+der allgemeinen Abruestung den ersten (oder zumindest zweiten) Schritt zu tun.
+Ich habe ALLE Monster des Darkovertals, wie ich meine, "realistischer"
+gemacht: Sprich, ihre Ruestungen sind nun auch mit Waffen fuer
+Normalsterbliche zu knacken und nicht nur mit Magie. Das war groesstenteils
+zwar bisher auch so, aber die paar, bei denen es nicht so war, sind geaendert.
+Wundert Euch also nicht, wenn ihr jetzt "auf einmal" auch mit Schwertern und
+Knueppeln besser trefft.
+Ich hoffe, ich habe "zum Ausgleich" die HP und die Waffen der Monster nicht
+zu hart gemacht, sollte aber in etwa passen. Beschwerden/Anregungen nehm ich
+gern entgegen.
+Mein Tip: Muellt die Rep-Files der anderen Magier, bei denen ihr ohne
+Feuerbaelle etc keine Schnitte kriegt ruhig voll, damit mal auch dort was
+geschieht.
+
+Z'par Servu,
+          Bendeigid
+
+P.S.: Die Banshee ist nicht so viel leichter, nein nein... :))
+
+-----------------------------------------------------------------------------
+
+
+
+Umbau... (Bendeigid, 15. Mar 1996, 11:52:22):
+Der Falknerladen in Neskaya ist wegen Umbau kurzfristig geschlossen.
+Wir bitten um Ihr Verstaendnis!
+
+Im Auftrag,
+          Bendeigid, z'par servu.
+
+P.S. Wieso schreib ichs eigentlich? Haette ja eh keiner gemerkt.. ;(
+
+-----------------------------------------------------------------------------
+
+
+
+Neueroeffnung des Falknerladens (Bendeigid, 20. Mar 1996, 14:40:18):
+Hallo zusammen!
+
+Wie der Titel richtigerweise ankuendigt ist der Falknerladen jetzt wieder
+zugaenglich.
+Auf vielfachen Wunsch von Spielern habe ich mit dem Falkner geredet, ob es
+nicht doch moeglich waere, ab und zu Falken zu verkaufen. Recht widerwillig
+hat er nun zugestimmt. Beim Preis liess er kaum mit sich reden, aber immerhin
+gibt es dort jetzt den einen oder anderen herrlichen Verrin-Falken zu kaufen.
+
+Viel Vergnuegen,
+   z'par Servu,
+               Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Nachtrag (Bendeigid, 20. Mar 1996, 14:50:16):
+Hab noch ne Kleinigkeit auf dem Weg geaendert. kommt euch zugute, ist aber
+echt nur eine Klitzekleinigkeit. ;)
+
+Z'par Servu,
+           Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Neues fuer Parallelwelt (Bendeigid,  2. Mai 1996, 16:17:36):
+Da offensichtlich die neue "Anschlusswelle" rollt moechte ich nicht
+zurueckstehen. Suedwestlich von Dyan befindet sich ein klitzekleiner Berg in
+der Tundra, der besonders fuer Seher interessant sein duerfte. Der berg ist
+selbstredend auch fuer Normalsterbliche zu erreichen, aber nicht in voller
+Pracht.
+Es wird dringend gebeten, etwas Vorsicht walten zu lassen. Fuer die mutigen
+Bezwinger der gradezu laeppischen Monster warten natuerlich Belohnungen.
+
+Z'par Servu,
+            Bendeigid
+
+P.S. Nein, ich will von Beschwerden nix hoeren. Lob nehm ich aber gern an :))
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neues fuer Parallelwelt (Mupfel,  2. Mai 1996, 21:52:35):
+~#! rn=Bendeigid rt=831046656
+~#! tid=831046656
+Boahhh ey, und ich hab EINEN Raum in die Parawelt geklotzt, auch mit NPCs
+drin... (schon am 30.4.)
+
+-mupfel- (vielleicht wird er ja nie gefunden :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Aenderung der Darkovanerdolche (Bendeigid,  3. Mai 1996, 13:46:19):
+Hallo Freunde des Darkovertals!
+
+Ich habe auf die draengende Bitte von Spielern die Dolche umgeschrieben. Sie
+koennen jetzt ein paar neue Funktionen:
+Zum einen lassen sie sich jetzt autoload machen, damit der Eid der Bredin
+auch ueber einen Reboot gerettet werden kann. Das geht natuerlich nur mit
+EINEM Bredu (oder einer Breda, klar). Beenden laesst sich dieser Eid durch
+zerbrechen des Dolches.
+Weiterhin kann man eine kleine Gravur anbringen, die den Griff des Dolches
+schmueckt.
+Ich bitte zu beachten, dass das mit dem Autoload WAHLWEISE geschehen kann.
+WENN er allerdings auf autoload ist, dann taugt der Dolch selbstredend nicht
+mehr als Waffe.... waer ja noch schoener.
+Die alte Funktionalitaet ist voll erhalten geblieben.
+
+Viel Spass damit.
+
+Z'par Servu,
+               Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Es geschehen noch Wunder (Zardoz, 10. Mai 1996, 11:29:49):
+Man glaubt es kaum, aber ich hab doch tatsaechlich mal die Top-Liste der
+Rodelbahn ueberarbeitet. Tja, haettet ihr wohl nie gedacht, dass es jemals
+gemacht wird :))))
+
+Ciao Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Bansheeaenderung (Bendeigid, 15. Mai 1996, 10:11:08):
+Hallo FreundInnen der Banshee!
+
+Ich habe ein paar geringfuegige Aenderungen an der Banshee vorgenommen. Sie
+haelt jetzt etwas laenger durch, ist dafuer aber "verwundbarer" durch Waffen
+von Normalsterblichen.
+
+Z'par Servu,
+             Bendeigid
+
+P.S.: Sie liefert auch ein bissel mehr EP jetzt, isssss klaaar!
+
+-----------------------------------------------------------------------------
+
+
+
+Kanaele (Zardoz, 15. Mai 1996, 13:24:50):
+Hallo, Freunde des Polargebiets!
+
+Es gibt durch das neue Kanalsystem jetzt folgende Kanaele:
+-Eiswueste  Nettes zum kaeltesten Urlaubsgebiet des MGs
+-Moulokin  Diese Stadt verdient einen eigenen Kanale
+-Gruft    Wer ist nicht ein Fan von Lilith?
+-Orklager Gruesse an Orktoeter etc.
+-Sauna   Wer nicht immer seine Sachen ausziehen will, kann diesen Kanal nehmen
+-Slanderscree  Natuerlich nur fuer Seher
+-Neskaya   Fuer die, die den Pass fuerchten
+-Friedhof  Selbst der Vampir soll diesen Kanal anhaben.
+-Postquest   Fragen zur Postquest, was sonst.
+
+weitere Kanaele sind in Arbeit.
+
+Ciao Zardoz
+P.S.: Ach ja, natuerlich gibts auch -Polar, ist doch logisch.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kanaele (Morgoth, 15. Mai 1996, 13:26:19):
+~#! rn=Zardoz rt=832159490
+~#! tid=832159490
+hmm, gehoert pegasus stall nicht auch dazu?
+oder der weissfroschtuempel ?
+
+-----------------------------------------------------------------------------
+
+
+
+Neuerungswut (wust?) (Bendeigid, 15. Mai 1996, 14:46:12):
+Hallo nochmal,
+
+In guter M*****h-Manier moechte ich kundtun, dass sich noch zwei kleine
+Aenderungen in Neskaya ergeben haben. Es laesst sich nu ein wenig Geld da
+verdienen. 
+Schaut mal bei der Stadtgarde oder in der Post vorbei.
+
+Z'par Servu,
+              Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kanaele (Mupfel, 15. Mai 1996, 15:04:06):
+~#! rn=Zardoz rt=832159490
+~#! tid=832159490
+Bist du in all diesen Kanaelen drin? Die neuen Kanaele 'leben' doch nur
+solange, wie einer drin ist. Kennst du IRC? Schreib Dir nen ComBot oder sowas,
+also nen NPC/Objekt, das staendig im Kanal ist und nach einem Reboot/Crash als
+erstes den Kanal 'eroeffnet'. Dann kann immer einer rein...
+
+-mupfel-
+P.S. und pass auf Hate auf, der meinte was von 'annen Hals geben', wenn er
+einen ChannelBot erwischt :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Baum in Polar eingefroren! (Bendeigid,  3. Jun 1996, 21:07:02):
+Abgesehen von der ungeheuren Kaelte, die das Polargebiet erfreulicherweise zu
+bieten hat moechte ich kurz zwei Aenderungen bekanntgeben:
+a) Die Banshee hatte (mal wieder) einen Spleen in letzter Zeit. Muss wohl ein
+altes file draufgerutscht sein, jedenfalls ist sie jetz wieder ein wenig
+"fitter"
+b) Die Matrix hab ich ueberarbeitet, da die alte Version aufgrund der neuen
+Kanaele absolut sinnlos geworden ist. Ich hoffe, die kleine Aenderung ist
+hilfreich. Vermutlich wird sie in der naechsten Zeit noch eine Erweiterung
+bekommen, dann aber ohne Ankuendigung.
+Uebrigens bin ich Anregungen betreffend neuer Tools sehr aufgeschlossen,
+hoerte ich doch zuletzt Gemaule von Karatekas ueber mangelnde Moeglichkeiten.
+Gute Ideen werden honoriert....
+
+Z'par Servu,
+           Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Preissturz bei Schlitten und Zubehoer (Zardoz, 13. Jun 1996, 13:14:46):
+Da das Interesse am Rodeln stark nachgelassen hat, gab es jetzt einen
+Preissturz im Schlittenladen. Alles kostet jetzt nur noch die Haelfte! Nagut,
+interessiert eh keinen, aber immerhin wichtiger als umgefallene Baeume... :)
+
+Ciao Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Preissturz bei Schlitten und Zubehoer (Raffi, 13. Jun 1996, 13:47:15):
+~#! rn=Zardoz rt=834664486
+~#! tid=834664486
+Wiebitte ? fallen jetzt in Polar auch schon Baeume um ? Das MG wird ja immer
+Uniformer!
+
+Gruss
+H.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Preissturz bei Schlitten und Zubehoer (Myself, 13. Jun 1996, 14:30:50):
+~#! rn=Raffi rt=834666435
+~#! tid=834664486
+Hi Rodelfans,
+
+vielleicht macht man ja Schlitten aus umgefallenen Baeumen? ;-)
+
+Aber eigentlich ging's mir darum, 1. Zardoz fuer die Preissenkung
+zu danken und 2. zum Intensiven Rodeln aufzurufen - es macht wirklich
+Spass!!! :-)   -Wenn genuegend Interesse da ist, wuerde ich auch gerne
+mal einen Rodelwettbewerb im Grossen Stil organisieren.  -Ggf mail an
+mich  -vielleicht finden sich ja auch noch ein paar Leute die, nachdem
+die reboot-folgen der letzten Zeit ueberwunden sind, Spielern niedrigerer
+level helfen wuerden, so dass wir ein paar Stunden oder sogar Tage lang
+die Rodelbahn unsicher machen koennten....
+Wenn sich was tut, werde ich das hier posten.
+
+Bis dann,
+
+Guten Rutsch
+
+Myself  - rodelt gerne aber viel zu wenig
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Preissturz bei Schlitten und Zubehoer (Fyt, 13. Jun 1996, 16:46:57):
+~#! rn=Raffi rt=834666435
+~#! tid=834664486
+
+Ach was, die baeume in Polar waren doch die ersten, die jemals 
+umgefallen sind, oder kann sich noch jemand dran erinnern, da
+welche gesehen zu haben?
+
+Fyt.
+
+PS: Oder verwechsel ich das mit Wueste? Oder Unterwelt?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Preissturz bei Schlitten und Zubehoer (Grimmborn, 13. Jun 1996, 17:27:41):
+~#! rn=Fyt rt=834677217
+~#! tid=834664486
+
+Du verwechselst das mit dem alten Grimmswald. ;-)
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Preissturz bei Schlitten und Zubehoer (Asmodis, 13. Jun 1996, 18:51:27):
+~#! rn=Grimmborn rt=834679661
+~#! tid=834664486
+Ich glaub, die einzigen Region, in der keine Baeume umfallen, ist die
+Unterwelt, da stehen keine :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Preissturz bei Schlitten und Zubehoer (Laila, 13. Jun 1996, 19:15:41):
+~#! rn=Asmodis rt=834684687
+~#! tid=834664486
+Ja klar, die sind schlisslich auch schon alle umgefallen !!!
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Preissturz bei Schlitten und Zubehoer (Felagund, 13. Jun 1996, 22:34:46):
+~#! rn=Laila rt=834686141
+~#! tid=834664486
+Also dass in Unterwelt keine Baeume stehn, halt ich fuer ein Geruecht, meinem
+2ti is da sogar letztens einer in ner Hoehle begegnet ;)
+Ausserdem gehoert auch ein Stueck zur Unterwelt, das viele immer fuer Wald
+halten..und da stehn auch Baeume ;)
+gruss..Fela
+-Unterweltmitarbeiter (auch wenn von der Arbeit noch nedd viel zu sehn is ;)))
+
+-----------------------------------------------------------------------------
+
+
+
+Ganze Waelder umgefallen! (Bendeigid, 25. Jun 1996, 09:57:20):
+Hi Freunde des Darkovertals, FP-Sucher, Scripties, Obermetzler, Ignoranten und
+der ganze Rest!
+
+Ich habe gestern mal mein Rep-File durchgesehen und die Ergebnisse der
+fruchtbaren Arbeit eingebaut. Vielen Dank an die (doch ueberraschend
+zahlreichen) Absetzer von Ideen und (ungewollt?) Log-Infos der Monster. 
+Also, konkret:
+    - Die banshee ist ein wenig geaenderet, seit besser zu anfangs etwas
+vorsichtiger (*grins Kotzbrocken und Valarian*)
+-Allart sollte Bugfrei sein. Falls nicht --> Sofort melden! Beei mir traut er
+sich evtl nicht
+-Dyan hat wieder was gelernt... er wird noch Chilana um Laengen schlagen!
+Fragt ihn weiter, aber bitte sinnvolles
+- Die Matrix ist um ein paar kleine Dinge ergaenzt worden. Dank an Nichts und
+Myself.
+- Aeh... wasnoch? naja paar Kleinigkeiten hier und da.
+
+Z'par Servu,
+              Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Im Polar ist wieder ein Eiszappfen abgefallen (Mupfel,  5. Jul 1996, 14:42:55):
+Hallo
+
+Noch ein Beitrag von mir zum Polargebiet (und wieder ist es die Parallelwelt):
+ein Elch. 
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Elch (Mupfel,  9. Jul 1996, 19:07:14):
+Huhu!
+
+Wer sich schonmal ueber den Elch geaergert hat: unter gewissen Umstaenden ist
+er jetzt friedlich...
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Elch (Anatol, 10. Jul 1996, 13:54:14):
+~#! rn=Mupfel rt=836932034
+~#! tid=836932034
+
+
+Pflanzt Baeume!
+
+Anatol
+
+
+-----------------------------------------------------------------------------
+
+
+
+Kein RM fuer den Polar. (Schrumpfi, 15. Jul 1996, 00:32:38):
+Der Polar hat im Moment keinen Regionsmagier. Ich weiss nicht wo Zardoz ist
+undich zieh mich zurueck. Ich werd Spielpause -1 eingeben und ich werd erst
+dann wieder meine Arbeit aufnehmen wenn sich hier einiges geaendert hat. Zu
+erreichen bin ich als Amazora im Anderland oder als Amazora hier. Falls jemand
+in meinen Files rumpfuscht, dann nur Mupfel oder Zardoz. Es sei denn, es
+handelt sich umBugs da ist es dann natuerlich klar. 
+Schrumpfi
+
+P.S Alle Raeder stehen still, wenn Dein starker Arm es will.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kein RM fuer den Polar. (Freund, 17. Jul 1996, 18:35:45):
+~#! rn=Schrumpfi rt=837383558
+~#! tid=837383558
+Hi,
+
+da ich noch VRM Polar sein duerfte, da ich mal RM Polar war,
+bitte komiisarisch alle Mails an mich...
+
+Falls jemand anderes dieses Amt uebernimmt, ziehe ich mich sofort
+und drastisch zurueck. ;)
+
+Ein Freund fuer alle Faelle - Knuddeleisbaer mit Fell by default.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kein RM fuer den Polar. (Bendeigid, 17. Jul 1996, 18:57:08):
+~#! rn=Freund rt=837621345
+~#! tid=837383558
+Wiewaswieso?
+Zardoz still lives! (Sofern Daemonen ueberhaupt leben)
+Du kannst also wieder in der Versenkung verschwinden, Freund, aber danke fuer
+die Hilfe :))
+Z'par Servu,
+            Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Wir faellen noch den letzten Baum! (Bendeigid, 17. Jul 1996, 19:53:35):
+Nur fuer Seher: klitzekleine Kleinigkeit in der Parawelt. Viel Spass.
+
+Z'par Servu,
+          Bendeigid.
+P.S.: Rennt mir da nicht blind rein, ich hab euch gewarnt...
+
+-----------------------------------------------------------------------------
+
+
+
+Rodelbahn (Zardoz, 24. Jul 1996, 16:51:53):
+So, jetzt hab ich endlich mal die TopListe ueberarbeitet. Sie wird automatisch
+nach jedem Rennen aktualisiert. Asmodis fuehrt eh uneinholbar, also hat die
+Liste sowieso keinen Sinn :)
+
+Ciao Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Schneelawine ins Rollen gekommen. (Schrumpfi,  3. Aug 1996, 00:41:15):
+Hi 
+
+In der Gruft hat sich etwas veraendert. Die Kraeuterfrau kann Euch jetzt
+helfen, wenn Ihr blind seid oder Euch ne Hand fehlt.
+Schrumpfi
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Friedhof (Schrumpfi,  4. Aug 1996, 05:27:46):
+~#! rn=Boing rt=838760437
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:12:53]:
+[Verlegt von d.polar, Schoko, 30. Jul 1996, 23:02:01]:
+
+Jau !!! definitiv!
+Ich warte jetzt schon seit 3 Tagen, endlich mal allein die Quest machen zu
+koennen ...
+
+schoko
+(wartet immer noch)
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:02):
+~#! rn=Boing rt=838760437
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:13:28]:
+[Verlegt von d.polar, Mahatma, 30. Jul 1996, 23:02:59]:
+Damit waer es moeglich, dass ein Spieler die Katakomben eine Weile blockiert. 
+Ausserdem gibt es Gelegenheiten, zu denen ein Spieler, der die Quest schon
+hat, da noch mal rein muss (ZT holen, Quotzlipeck toeten, FPs sammeln, was 
+weiss ich). Wenn der dann auf einen lahmen Quester warten muss, waer das nicht
+gut.
+
+Mahatma
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:04):
+~#! rn=Mahatma rt=838760579
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:13:44]:
+[Verlegt von d.polar, Schoko, 30. Jul 1996, 23:05:38]:
+
+schon wieder ich ...
+
+Jau das schon, aber genau DAS ist es was nervt ...
+Ich wollte diew Quest machen und war grad dran durchzusteigen, welche Hebel
+ich dreucken muss etc... da saust Mahatma an mir vorbei oeffnet alle Tueren
+und ich steh da und hab ueberhaupt keine Raffung mehr, was ich jetzt schon
+gemacht hab und was net ...
+
+Ein Tip war ich sollte doch einfach durchgehen und mir den Rubin schnappen und
+dei Quest fertig machen.
+Naja waere ne Loesung aber .....
+
+schoko
+(wartet immer noch)
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:04):
+~#! rn=Schoko rt=838760738
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:13:48]:
+[Verlegt von d.polar, Zardoz, 30. Jul 1996, 23:15:53]:
+Mach doch nen virtuellen Compiler draus, dann hat jeder seine eigenen
+Katakomben :)
+
+Ciao Zardoz, der Boing fuer einige Wochen beschaeftigen will...
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:06):
+~#! rn=Zardoz rt=838761353
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:13:51]:
+[Verlegt von d.polar, Grimmborn, 30. Jul 1996, 23:32:07]:
+
+Was hat das in d.polar zu tun, seit wann ist denn der Friedhof in der
+Polarregion? ;-)
+
+GdA sollte auch besser schlafen. Und nciht Jariels Telefonrechnung aergern.
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:08):
+~#! rn=Boing rt=838760437
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:14:27]:
+[Verlegt von d.polar, Hadra, 31. Jul 1996, 00:35:16]:
+hmm, die idee das lab fuer sich alleine zu haben hat was, aber da man beim
+ersten anlauf doch recht lange brauchen kann, faende ich so was wie in tarko
+reub nicht schlecht (obwohl man dafuer natuerlich fast alles auf den kopf
+stellen muesste ;)
+
+gruss
+  hadra
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:08):
+~#! rn=Hadra rt=838766116
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:14:31]:
+[Verlegt von d.polar, Eros, 31. Jul 1996, 03:43:27]:
+Hm also ich glaub ned das des nur ums fp suchen geht.
+Es soll ja auch noch Spieler geben, die sowas gemeinsam machen wollen,
+bzw. die sich auch helfen lassen wollen. Also wuerde ich vorschlagen
+es so zu lassen wie es is, bzw. man koennte vielleicht so ne Art Parawelt
+
+zu machen, der der die Quest noch ned hat is eben in ner Art Parawelt,
+damit wuerde man ihn auch ned stoeren, kann aber z.b. helfen
+und des duerfte doch auch ned ein all zu grosser
+Arbeitsaufwand sein.
+
+Eros
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:10):
+~#! rn=Boing rt=838760437
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:14:33]:
+[Verlegt von d.polar, Aline, 31. Jul 1996, 09:37:16]:
+Hallo Boing,
+
+also ich bin der Meinung es sollte so bleiben wie es ist. Erstens bist
+Du nicht nur von der Friedhofsquest fuer Deine aussergewoehnlichen
+Resetzeiten bekannt (beruechtigt).
+Zweitens finde ich es immer etwas laestig, wenn ich bei einer Quest
+warten muss bis ich weitermachen kann, weil gerade ein anderer in 
+dieser Quest ist (Beispiele: Konfusius, Soruth oder Pyramiden). Vor
+allen Dingen kommt es ja auch oft genug vor, dass der 1. Quester 
+eigentlich gar nicht mehr in der Quest ist, sondern sich ausgeloggt hat.
+Die Katakomben zu erkunden dauert aber auch so schon seine Zeit (ich
+war damals ungefaehr ne Woche drin) und da stell ich mir das besonders
+laestig vor wenn ich da drin bin und es warten draussen schon ein
+paar Leute die die Quest auch machen wollen :(
+
+So das ist meine Meinung
+
+Aline
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:12):
+~#! rn=Boing rt=838760437
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:16:45]:
+[Verlegt von d.polar, Guybrush, 31. Jul 1996, 09:49:53]:
+Hm, nachdem ich die replys mal so durchgelesen habe, lass ich mich auch nicht
+senfen und gib meine Bitte dazu:
+Der Reiz der Katakomben besteht gerade darin, dass ein Reset zwischendrin
+kommt und man nochmal von vorne anfangen muss. Deswegen wuerd ich das mal
+lassen ;)
+(Zur Erklaerung: Ich habs damals erst im 4ten Reset geschafft.)
+Zum anderen gibt es nicht nervigeres als wenn Leute, die die Quest schon
+mehrfach gespielt haben durch die Katakomben duesen und alle Tueren oeffnen,
+moeglicherweise noch reset-abhaengige Quest-Objekte mitnehmen, nur um an ein
+Spiegelschild oder aehnliches zu kommen. Ich erinner mich, als Slyfoz mich
+damals ueberscriptet hat und ich nicht mehr weitermachen konnte. Irgendwann
+wurde dann ja auch der zweite Weg in die Vampirgruft gebaut, um den Leuten
+einen weiteren Weg zum BSS zu ebnen. Dass dieses teil heut keinen mehr
+interessiert ist wohl in der Entwicklung des MG begruendet (Nicht traurig
+sein, Papi ;) )
+
+Deshalb waere die optimale Idee, die ich mit Zardoz teile, VC_Katakomben
+einzurichten, so wie bei Wargons Lab z.B. Allerdings ist das grosser Aufwand. 
+Eine andere Moeglichkeit waere es, die "wertvollen" Teile wie Spiegelschild
+und Handschuhe auch anders verfuegbar zu machen. Die FP's sind allerdings nur
+durch nochmaliges SPielen zu holen.
+
+Ein Kompromiss koennte vielleicht sein, eine zweite Ebene zu bauen, die der
+ersten gleich ist, allerdings nur fuer diejenigen zu betreten ist, welche die
+Quest schon einmal gespielt haben. Damit gearten sich diese und neue Quester
+bicht in die Bahn. Waere sozusagen die Parawelt, welche auch schon
+vorgeschlagen wurde. Dann muessten nur die FP in beiden Welten die Raeume
+teilen, oder die gleiche Nummer bekommen. Vielleicht geht das.
+
+So, das war viel zu lang fuer nen anstaendigen Artikel, aber ich hatte grad
+keine Lust was zu schaffen, also muell ich hier rum.
+Guybrush mag Pommes lieber mit Ketchup als mit Senf
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:14):
+~#! rn=Guybrush rt=838799393
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:16:47]:
+[Verlegt von d.polar, Nirdavo, 31. Jul 1996, 10:01:34]:
+  Ich hab mir auch grad die Diskussion ueber den Friedhof durchgelesen. Ich
+hab ihn noch nicht gespielt, einfach aus dem grunde, weil er mir bisher viel
+zu gefaehrlich war. Wenn man die Quest nur mit Metzelhilfe schafft, dann ist
+man einfach noch nicht gut genug dafuer. punkt. Dann soll man es halt eben
+lassen. Ich bin der Meinung, dass die Katakomben dann fuer jeden, der die
+Quest macht einzeln erschaffen werden (aehnlich wie bei Tarko Raeub), damit
+einem andere bei der Quest nicht in die Quere kommen koennen.
+  Hmmm, war ein wenig wirr, aber ernst meine ich es trotzdem,
+
+                        Nirdavo
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:14):
+~#! rn=Nirdavo rt=838800094
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:16:49]:
+[Verlegt von d.polar, Orktoeter, 31. Jul 1996, 11:44:23]:
+Also, wenn man da fuer sich alleine rumsuche kann waere schon nett.
+Ich habe damals (*traeum von vergangenen Zeiten*) auch recht lange gebraucht,
+bis ich es weitgehend raus hatte.. und dann kam mal wieder (insgesamt bestimmt
+2stellig) jemand durchgerast...
+Jaja, damals gab es den "Nebeneingang" zum BSS noch nicht..
+Von wegen der Hilfe : Da muss man doch "nur" fuer einen ZT metzeln, das sollte
+man dann halt erst versuchen, wenn man gross und stark ist :)
+Also fuer jeden seine eigenen katakomben waere schon was.. (wohl vor allem
+Arbeit fuer Boing :) )
+OrkT, sicher das er nicht einen FP aus den katakomben hat !
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:16):
+~#! rn=Boing rt=838760437
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:17:07]:
+[Verlegt von d.polar, Cauno, 31. Jul 1996, 13:46:33]:
+Das waere in meinen Augen sehr sinnvoll.
+Dann gibt es auch nicht mehr so viele Tote durchs Hoellenfeuer ...
+
+C. No
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:18):
+~#! rn=Mahatma rt=838760579
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:17:07]:
+[Verlegt von d.polar, Cauno, 31. Jul 1996, 13:47:59]:
+Ich bin der Meinung, der "lahme quester" hat immer noch vorrang vor dem
+ZT-Sammler, der die gegend schon kennt. Der blockiert die Quest dann
+schliesslich auch.
+
+C. No
+nn
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:18):
+~#! rn=Aline rt=838798636
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:17:09]:
+[Verlegt von d.polar, Cauno, 31. Jul 1996, 13:49:44]:
+Beim Ausloggen sollte man natuerlich rausgeschmissen werden. Bei den Pyramiden
+klappt das ja auch.
+
+C. No
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+boing, mach es ! (Schrumpfi,  4. Aug 1996, 05:28:20):
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:17:11]:
+[Verlegt von d.polar, Miraka, 31. Jul 1996, 22:53:42]:
+
+genau das richtige!
+
+hoer nicht auf einige meckerlieseln, die sich nur um ihre stats oder die FP
+kuemmern, denke an die
+neuen quester, die den friedhof noch nie gemacht haben...
+
+ich will die anderen ja nicht verspotten, aber wer die quest schon mal gemacht
+hatte, der kann
+ruhig ein bisserl hinter den 'lahmen' neuen questern anstehen.
+
+das ist doch fair, oder?
+
+zur not steht man eben nicht an, sondern verbringt seine zeit mit was
+nuetzlicherem...
+
+...wie zum beispiel: karate ueben :-)
+
+Miraka ;^)
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:22):
+~#! rn=Cauno rt=838813784
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:17:11]:
+[Verlegt von d.polar, Azzuro,  1. Aug 1996, 11:06:12]:
+Wie waer es wenn Du nicht einfach die Durchgaenge freigibst, sondern der
+Spieler einen Schluessel oder Amulette oder oder oder erhaelt, die ihn durch
+die magische Barriere durchlassen. (Bsp.:Du drueckst einen Knopf -> Ein
+kleiner Schluessel faellt aus
+einer Luke; Du sagst XXXXXX -> ein kleiner Zombie fuehlt sich in seiner
+Totenruhe gestoert und schmeisst Dir einen magischen Diamanten an den Kopf)
+Wenn du diese Dinge vergaenglich machst, dann kannst Du fuer jeden einzelnen
+Spieler seine eigenen Resetzeiten ohne grossen Aufwand realisieren.
+Ich hoffe es ist einihgermassen klar was ich meine, aber ich kann z.Z. nicht
+klar denken, da ich in 2 Stunden Klausur schreibe.
+
+Azzuro (hatte beim ersten mal loesen magische Hilfe)
+
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:24):
+~#! rn=Azzuro rt=838890372
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:17:13]:
+[Verlegt von d.polar, Cauno,  1. Aug 1996, 12:11:31]:
+Ich fuerchte, das gaebe eine voellig neue quest.
+
+C. No
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: boing, mach es ! (Schrumpfi,  4. Aug 1996, 05:28:24):
+~#! rn=Miraka rt=838846422
+~#! tid=838846422
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:17:15]:
+[Verlegt von d.polar, Mahatma,  1. Aug 1996, 14:11:29]:
+Hmm, Vorsicht, _nur_ um FP kuemmern erscheint mir etwas vorschnell 
+dahergesagt, schliesslich bringen die in den Katakomben versteckten FPs fast
+genauso viele Stufenpunkte wie die Abenteuerpunkte fuer die Quest. Und da
+die alten Spieler, die die Quest schonmal gespielt haben, durch die 
+Levelreform etwas benachteiligt wurden, wuerd ich den FP-Sucher durchaus auf
+eine Stufe mit dem Neuquester stellen wollen. Ein Spott erscheint mir da
+tatsaechlich unangebracht.
+
+Mahatma
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: boing, mach es ! (Schrumpfi,  4. Aug 1996, 05:28:26):
+~#! rn=Miraka rt=838846422
+~#! tid=838846422
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:17:17]:
+[Verlegt von d.polar, Asmodis,  1. Aug 1996, 14:56:43]:
+hehe, das nuetzt euch aber gar nix, weil die fp-sucher dann auch die
+Katakomben blockieren.
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:28):
+~#! rn=Cauno rt=838894291
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:17:17]:
+[Verlegt von d.polar, Azzuro,  2. Aug 1996, 16:29:38]:
+Warum gaebe das eine neue Quest? Ob die Wege jetzt durch magische Felder
+blockiert werden und sich dann oeffnen oder ob sie sich einfach so oeffnen,
+das ist doch das selbe in gruen.
+Aaaeeehhhhh ...das selbe in blau!
+Gruss Azzuro
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:28):
+~#! rn=Schrumpfi rt=839012111
+~#! tid=838760437
+[Verlegt von d.gebirge, Schrumpfi,  2. Aug 1996, 23:17:19]:
+[Verlegt von d.polar, Acrimon,  2. Aug 1996, 21:34:07]:
+Alles Schmarrn :-)
+
+Warum? Na weil ich was Besseres weisz:
+
+Die Quest bleibt dieselbe, die Resetzeiten bleiben dieselben, die Raeume
+bleiben dieselben.
+Mit zwei Unterschieden:
+1. Die resetabhaengigen Questtools gibts fuer Leute, die die Quest gerade
+machen, in jedem Fall (dh wenn sie den Gegenstand nicht schon haben), und fuer
+die, die die Quest schon haben, bleiben sie resetabhaengig.
+
+2. Die Tueren stehen fuer die, die die Quest schon haben, offen und fuer die,
+die die Quest gerade machen, bleiben sie resetabhaengig.
+
+Vorteile?
+1. Ein Skripter kann den Quester nicht mehr in seiner Quest behindern,
+2. Ein Erfahrener kann vom Quester in die Katakomben zu Hilfe gerufen werden,
+3. Man begegnet sich weiterhin in der Quest,
+4. Man kann die Quest zu Mehreren machen.
+usw. usf.
+
+Acrimon, der Rote Ritter
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Friedhof (Schrumpfi,  4. Aug 1996, 05:28:30):
+~#! rn=Schrumpfi rt=839020345
+~#! tid=839020345
+[Verlegt von d.gebirge, Morgoth,  3. Aug 1996, 15:08:50]:
+jau, gute sache. is zwar laaaaange her, aber der reset hat doch sehr genervt.
+(nach dem vierten hab ich die loesung rausgekramt) 
+Morgoth
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Friedhof (Asmodis,  4. Aug 1996, 06:21:40):
+~#! rn=Schrumpfi rt=839129310
+~#! tid=839020345
+Argh, nehmt Schrumpfi das Bier weg, bevor sie nochmal diese Artikel
+verlegt :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Friedhof (Schrumpfi,  4. Aug 1996, 06:27:34):
+~#! rn=Asmodis rt=839132500
+~#! tid=839020345
+Ich bin ja schon friedlich. In Zukunft ueberlass ich das verlegen Grimmborn
+und ich trink auch nie wieder was beim mudden ;-)
+Schrumpfi die Dumpfbacke
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Haltet den Polar sauber! (Fyt,  5. Aug 1996, 06:21:20):
+~#! rn=Schrumpfi rt=839127931
+~#! tid=839021151
+
+Hm, Schrumpfi, heisst das, dass Du mit Mudden aufhalten willst?
+
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Haltet den Polar sauber! (Schrumpfi,  5. Aug 1996, 06:22:31):
+~#! rn=Fyt rt=839218880
+~#! tid=839021151
+Muesst ihr immer alles so woertlich nehmen, was ich da schreibe? ;-)
+Furchtbar! ;)
+Schrumpfi hoert weder mit mudden noch mit saufen auf!
+
+-----------------------------------------------------------------------------
+
+
+
+Ein Panzer fuer Kroatien (Schrumpfi,  6. Aug 1996, 01:38:25):
+Hi Ihrs
+Cthulhu hat jetzt zwei von seinen Krallen. So soll das gemeinsam metzeln fuer
+Euch ein bisschen atraktiver werden. Staerker gemacht hab ich nix, denn nach
+ausreichendem testen und nachgruebeln, bin ich zu der Erkenntnis gekommen,
+dass die Paragruft eigentlich eh ganz nett stark ist :)
+In diesem Sinne: Cthulhu fhtagn, Cthulhu fhtagn!
+
+S.d.O.v.P
+
+-----------------------------------------------------------------------------
+
+
+
+Radikale Abstufung aller Ruestungen (Bendeigid,  9. Aug 1996, 11:50:04):
+Hi Freunde,
+
+ein neuerlicher Schlag gegen die Spieler! Nieder mit allen Vorteilen! Schickt
+sie zu Lars!
+
+Nein, keine Panik! ;))
+Ich habe mich mal einiger Dinge (Waffen/Ruestungen) in Polar angenommen und
+ein paar kleinere Aenderungen vorgenommen. Nix schlimmes. Zum Teil sind sogar
+Waffen verbessert (!) worden, zum Teil sind die Beschreibungen (waren ja
+wirklich duerftig) etwas verschoent. Auch sind nun ab und zu Details zu
+finden. 
+Das meiste dieses Gewaeschs bezieht sich auf Moulokin, aber wer weiss? ;)
+
+i.k.A, Z'par Servu,
+               Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Radikale Abstufung aller Ruestungen (Zardoz, 12. Aug 1996, 18:02:59):
+~#! rn=Bendeigid rt=839584204
+~#! tid=839584204
+Ich hoffe, du hast die Aenderungen auch in die Objekt-Liste von Polar
+eingetragen...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Radikale Abstufung aller Ruestungen (Bendeigid, 12. Aug 1996, 19:48:37):
+~#! rn=Zardoz rt=839865779
+~#! tid=839584204
+Aeh, ja sicher das... ich mein, wenn ich sie finde werde ich das gleich und
+sofort nachholen... aehmja. 
+Jedenfalls steht jeweils ein kleiner header dabei.
+
+Verlegen grinsend,
+              Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Eiswuerfel (Mupfel,  2. Sep 1996, 23:01:40):
+Hallo
+
+Die Meldungen, die kommen, wenn das Aktivieren des kleinen Eiswuerfels (ihr
+wisst schon ... :-) schiefgeht, sind jetzt etwas aussagekraeftiger (hoffe ich
+mal :-)
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Eiswuerfel (Caradhras,  3. Sep 1996, 16:13:42):
+~#! rn=Mupfel rt=841698100
+~#! tid=841698100
+Eiswuerfel? Kazorra? *gruebel* *verdutzt kuck*
+
+          Rothorn Caradhras 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Eiswuerfel (Hardil, 13. Sep 1996, 10:20:44):
+~#! rn=Caradhras rt=841760022
+~#! tid=841698100
+
+Aehm, Rothorn:
+
+Kuzzorra, nicht Kazorra. Das war damals, als der S 04 noch Sympathietraeger
+hatte. :)
+
+-Hardil. Koenigsblau statt Knappenblau.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Eiswuerfel (Caradhras, 13. Sep 1996, 12:04:17):
+~#! rn=Hardil rt=842602844
+~#! tid=841698100
+Pfffffffffh, Fussballer!
+
+  Rothorn Caradhras - wills trotzdem koennen (nicht Fussball)
+
+-----------------------------------------------------------------------------
+
+
+
+Baeume in Polar??? (Bendeigid, 13. Sep 1996, 17:19:45):
+Neue Baeume in Polar gesichtet. Vermutliche Fluchtrichtung Moulokin. Um
+Ergreifung der Pfalnzen oder sachdienliche Hinweise wird gebeten. 
+gez. Bendeigid, i.A. Fuerst Ainos
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Baeume in Polar??? (Grimmborn, 13. Sep 1996, 17:32:27):
+~#! rn=Bendeigid rt=842627985
+~#! tid=842627985
+
+Huch, ein Umsturz? Die Waldmagier uebernehmen Polar? Also, da muss ich mich
+aber doch sehr wundern, dass ihr Spieler braucht, um den vorrueckenden Wald zu
+baendigen...
+
+Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Baeume in Polar??? (Bendeigid, 13. Sep 1996, 17:33:27):
+~#! rn=Grimmborn rt=842628747
+~#! tid=842627985
+Jaja, ich schenk mir schon diese Baumgeschichte:
+Also normal: es gibt eine Miniquest mit netter Belohnung in Moulokin.
+Zufrieden, Grimm?
+Z'par Servu,
+        Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Baeume in Polar??? (Caradhras, 13. Sep 1996, 20:37:17):
+~#! rn=Bendeigid rt=842628807
+~#! tid=842627985
+Schwach, Bendei! Lass Dich nicht so von anderen so beeinflussen!
+Es ist immer noch weitaus schoener wenn echte Phantasie hinter einer
+solchen Geschichte steckt als so wie in dem letzten Artikel.
+
+       Tschuess       Rothorn Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Baeume in Polar??? (Paracelsus, 13. Sep 1996, 21:46:53):
+~#! rn=Caradhras rt=842639837
+~#! tid=842627985
+
+    Und der Wald kommt doch !
+
+Paracelsus.
+->schmarrn()
+
+-----------------------------------------------------------------------------
+
+
+
+falkner weg (Bendeigid, 19. Sep 1996, 16:49:02):
+Ich musste mal den Falkner abhaengen. Bis auf weiteres, es wird renovieert.
+
+Z'par servu,
+                 Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Nein kein Baum :-) (Mupfel, 24. Sep 1996, 21:37:33):
+
+Im Polar ist wieder ein Eiszapfen abgefallen.
+
+-mupfel-
+(mach sich da einen Reim drauf wer will :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Schmiede geschlossen (Bendeigid, 15. Nov 1996, 18:36:54):
+Musste uebers WE mal Allarts Schmiede abhaengen. Bug drin, keine Ahnung was,
+keine Zeit. Sorry.
+
+Z'par Servu, Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Allart aus Urlaub zurueck (Mupfel, 19. Nov 1996, 17:58:42):
+~#! rn=Bendeigid rt=848344032
+~#! tid=848344032
+
+Erst wars Mode, alle moeglichen NPCs Karateka werden zu lassen, dann Zauberer,
+jetzt also Trves...? (wahrscheinlich immer *die* Gilde, von der man sich die
+hoechste Kampfkraft erhofft...) Bandegid, sag Bescheid, wenn auch dein letztes
+Karnickel den anderen Karnickeln Rueckendeckung gibt... :-)
+
+-mupfel- (grinst nur noch)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Allart aus Urlaub zurueck (Lug, 20. Nov 1996, 03:21:37):
+~#! rn=Grimmborn rt=848428166
+~#! tid=848344032
+Tsss,
+
+vor allem der Gedanke wie die Kaninchen sich "decken"...
+Heisst das Kaempfer, aeh ja, also...ruckeln aneinader rum?
+
+Fragwuerdig
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Allart aus Urlaub zurueck (Lug, 20. Nov 1996, 03:35:21):
+~#! rn=Anatol rt=848456616
+~#! tid=848344032
+
+Also ANATOL! Wer denkt denn an sowas?
+
+Schockiert
+lug
+
+-----------------------------------------------------------------------------
+
+
+
+Ich schaem mich ja so ;( (Ronda, 29. Nov 1996, 17:15:43):
+Oehm, mir ist grade ne Panne passiert .... *schaem* --.- ich hab auf "la"
+nicht "lies artikel" sonderbn "loesche artikel" gehabt... und dann fleissig
+und schnell 5 Artikel geloescht....
+Tut mir furschtbar leid - war ne echte Panne....
+Immer nochleicht roetlich angelaufen... 
+                 Ronda
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Ich schaem mich ja so ;( (Anatol, 29. Nov 1996, 17:16:40):
+~#! rn=Ronda rt=849284143
+~#! tid=849284143
+
+Macht nix, hierauf bekommst Du soviele Flames, dass da schnell wieder
+5 neue Artikel zustande kommen.
+
+Anatol .... 1
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Ich schaem mich ja so ;( (Sique, 13. Dez 1996, 04:20:13):
+~#! rn=Anatol rt=849284200
+~#! tid=849284143
+Ausserdem hat ein anstaendiger Mudder auf "la" "look at" (oder die ent-
+sprechend nationalisierte Version) liegen.
+
+                                                 Sique (konservativ)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Ich schaem mich ja so ;( (Wurzel, 13. Dez 1996, 14:17:29):
+~#! rn=Sique rt=850447213
+~#! tid=849284143
+"look at"? dann gibt es wohl nur noch wenige anstaendige mudder...
+
+wurzel wird schon wieder nostalgisch :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Ich schaem mich ja so ;( (Felagund, 16. Dez 1996, 13:28:09):
+~#! rn=Wurzel rt=850483049
+~#! tid=849284143
+Look at??? bei mir is das immer x wie exa, tippt sich auch schneller ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Ich schaem mich ja so ;( (Methedras, 17. Dez 1996, 18:58:10):
+~#! rn=Felagund rt=850739289
+~#! tid=849284143
+Nee, x ist unt boden in MG. :) Eigentlich ist x ja das casten vom shock
+aus den alten 2000er Muds, so wie m missile war und f fireball.
+
+ Caradhras - nimmt seit 1990 nur ll fuer 'unt' || 'look at'
+
+-----------------------------------------------------------------------------
+
+
+
+Polargasthaus (Mupfel, 17. Dez 1996, 21:26:20):
+
+Das Polargasthaus 'Amundsen & Scott' hat jetzt nicht mehr ununterscheidbare
+Sorten Gluehwein :-)
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+POLAR? (Sandi, 30. Dez 1996, 20:25:27):
+Was/Wo ist denn die Region "Polar" ?
+
+MFG Sandi
+
+..
+,
+
+-----------------------------------------------------------------------------
+
+
+
+Re: POLAR? (Asmodis, 30. Dez 1996, 21:01:51):
+~#! rn=Sandi rt=851973927 rg=d.polar
+~#! tid=851973927
+Im Norden :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: POLAR? (Mysterious, 30. Dez 1996, 23:56:39):
+~#! rn=Sandi rt=851973927 rg=d.polar
+~#! tid=851973927
+
+moin, sandi...
+
+die region befindet sich im norden des mg und dort ist es kalt.....
+bisweilen so kalt, dass dir einzelne koerperteile abfrieren
+der weihnachtsmann und die chaosgilde sind auch dort ansaessig....
+sodele..duiiiiiiiiiiiiiii
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: POLAR? (Sandi, 31. Dez 1996, 16:29:28):
+~#! rn=Mysterious rt=851986599 rg=d.polar
+~#! tid=851973927
+Und was kann man gegen das Arschwegfrieren tun? Mantel anziehen?
+
+MFG SANDI
+
+,
+..
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: POLAR? (Mysterious,  2. Jan 1997, 13:08:03):
+~#! rn=Sandi rt=852046168 rg=d.polar
+~#! tid=851973927
+gruenau :)
+
+-----------------------------------------------------------------------------
+
+
+
+Geigerquest: Heilerin (Mupfel,  8. Jan 1997, 17:00:30):
+Hallo
+
+Die Heilerin hat anscheinend nie funktioniert (zumindest legt der Programmcode
+diesen Schluss nahe); jetzt sollte sie aber tun. Achtung Scriptspieler: das
+Handling der Heilung hab ich geringfuegig geaendert, also muesst ihr das
+aendern :-)
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+***magiewesen (Zardoz,  3. Feb 1997, 11:12:21):
+Ich hab mal das ***magiewesen dahingehend geaendert, dass jetzt alle Gilden
+ihre Chancen haben. Sogar Karateka, wenn sie es richtig machen.
+
+Ciao Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: ***magiewesen (Sidolin,  3. Feb 1997, 11:15:26):
+~#! rn=Zardoz rt=854964741 rg=d.polar
+~#! tid=854964741
+Sogar Karateka, wenn sie es richtig machen.
+
+WAS? Buh! Das ist gemein....
+Karateka duerfen auch metzeln?
+nene, Zardoz, so gehts nicht. :-)
+
+Sidolin. Findet, dass die Karategild eh viel zu gut ist. ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: ***magiewesen (Dhojakt,  3. Feb 1997, 11:51:09):
+~#! rn=Zardoz rt=854964741 rg=d.polar
+~#! tid=854964741
+Hatten Karatekas nicht immer schon ihre Chance?
+Dhojakt denkt . o O (mit 20 eisstaeben...)
+
+-----------------------------------------------------------------------------
+
+
+
+RM (Schrumpfi,  4. Feb 1997, 19:58:28):
+Ich hab meinen RM abgegeben weil ich aus Zeitgruenden nicht mehr so viel hier
+sein kann. Mein Nachfolger ist Yantro also geht ihm mal schoen genauso auf die
+Nerven, wie ihr mir auf die Nerven gegangen seid. :) *grins Bendeigid an*
+Ich hoffe Du hast genauso viel Spass und so wenig zu tun wie ich, Yantro. ;-)
+Sei ein guter Sklaventreiber und bring Deine Untertanen so zur Verzweiflung
+wie ich es gemacht hab, hoehoe. ;-)
+Schrumpfi  *schnief*
+
+
+-----------------------------------------------------------------------------
+
+
+
+Lag und Eisamulett (Schlips, 29. Mar 1997, 14:12:38):
+Hmm, weiss leider net an wen ich mich genau wenden soll, deshalb schreib
+ichs hier.
+Ich hab in letzter Zeit den Eindruck, dass ich immer dann ein kurzfristig
+hohes Lag krieg, wenn mein Eisamulett resettet. Ich weiss net ob man das
+aendern kann, aber ich wollt es hiermit mal kundgetn haben.
+Vielleicht kann ja einer der Polar-Magier was dran aendern.
+
+Danke, Schlips
+>**
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Lag und Eisamulett (Yantro, 29. Mar 1997, 14:36:34):
+~#! rn=Schlips rt=859641158 rg=d.polar
+~#! tid=859641158
+
+Ich habs mir mal angeschaut, aber es muss Zufall sein, dass Du dann immer Lag
+kriegst.... kennst Du Murphy?
+
+Yantro
+
+P.S.: Aehm... solche Anfragen muessen eigentlich auch nicht in die Zeitung,
+sondern eine Mail an einen der PolarRMs tut es auch.... Das sind im Moment
+Zardoz und ich... aeh also der poese Yantro. :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Lag und Eisamulett (Acrimon, 29. Mar 1997, 16:59:09):
+~#! rn=Schlips rt=859641158 rg=d.polar
+~#! tid=859641158
+Hmm ... versuche mal folgendes:
+-bierschuettler+
+Dann teste nochmal das Lag
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Lag und Eisamulett (Zorro, 29. Mar 1997, 18:33:59):
+~#! rn=Acrimon rt=859651149 rg=d.polar
+~#! tid=859641158
+Ja das ist es ! Muss eine Topliste pro reset aktualisiert werden ?
+Ich find das ganz schoen bekloppt da wir eh schon genug lag haben ...
+Und definitiv erzeugt bruno lag ... 
+
+Sing: Haengt den Bruno in der Nordkurve auf Nordkurve auf ...
+
+Gruss Zorro 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Lag und Eisamulett (Valarian,  1. Apr 1997, 13:31:58):
+~#! rn=Yantro rt=859642594 rg=d.polar
+~#! tid=859641158
+
+Das ganze liegt aber nicht an dem Eisamulett, sondern daran, dass man fast
+jeden Reset unter Linux durch Lag erkennt.
+
+V.
+
+-----------------------------------------------------------------------------
+
+
+
+Pass geaendert (Bendeigid, 21. Apr 1997, 09:56:49):
+Hallo, Freunde und Verflucher des Darkover-Tals,
+
+Wie mir bereits seit langem bekannt ist habt ihr alle ja unglaublich viel
+Freude daran, den grandiosen Kilghrad-Pass zu erforschen. Dies trifft in
+gehobenem Mass natuerlich auf die Gluecklichen unter Euch zu, die wegen der
+fantastischen Gildenquests dorthin laufen. Der Rest darf jetzt "q" tippen,
+denn die gehen ja eh nicht da rueber.
+
+Apropos gehen: Ich habe unter anderem aus den in etikette, artikel 3 genannten
+Gruenden den Pass GEAENDERT. Alle alten Laufmacros koennt ihr also genuesslich
+mittels rm vernichten.
+
+Ich wuensche schoenes Wetter zum erneuten kartographieren. Friert Euch nicht
+die Fuesse ab.
+
+Z'par Servu,
+            Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Pass geaendert (Fyt, 21. Apr 1997, 09:57:40):
+~#! rn=Bendeigid rt=861609409 rg=d.polar
+~#! tid=861609409
+
+Mein Jof bin ich froh, die richtige Gilde erwischt zu haben...
+
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Pass geaendert (Patryn, 21. Apr 1997, 10:26:14):
+~#! rn=Issomad rt=861610850 rg=d.polar
+~#! tid=861609409
+hey, ich hatte nen schnelleren weg :)
+
+------
+patryn
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Pass geaendert (Anatol, 21. Apr 1997, 12:12:54):
+~#! rn=Bendeigid rt=861609409 rg=d.polar
+~#! tid=861609409
+Ich glaube, es ist der falsche Weg, wenn die Magier den Code aendern, weil
+irgendein Spinner das MG bei sich Zuhause liegen hat. Der Spinner ist bekannt,
+frueher oder spaeter ist das Ding geloescht und/oder derjenige Name
+veroeffentlicht (was ihm, bei der Zahl derjenigen, die sich durch das Dump
+gearscht fuehlen, erheblich schaden wird).
+
+Jedenfalls sind jetzt wieder die die Dummen, die sich die Arbeit machten und
+den Pass erkundeten... oder bekommt man eine Karte zugeschickt? :)
+
+Anatol
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Pass geaendert (Valarian, 21. Apr 1997, 12:37:25):
+~#! rn=Anatol rt=861617574 rg=d.polar
+~#! tid=861609409
+
+Ich habe stundenlang den bloede Pass erforscht und da jetzt alles wieder
+geaendert wurde, bekunde ich meinen Protest, indem ich Neskaya aus meinem
+Gedaechtnis streiche und es nicht mehr besuchen werde. 
+
+Val.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Pass geaendert (Cauno, 21. Apr 1997, 12:41:41):
+~#! rn=Valarian rt=861619045 rg=d.polar
+~#! tid=861609409
+Tja, das war wohl ein Schuss in den Ofen.
+Auch wenn ich fuer meine Karte nur eine Stunde gebraucht habe. (Oder wars
+weniger?)
+
+C. No
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Pass geaendert (Issomad, 21. Apr 1997, 13:06:57):
+~#! rn=Issomad rt=861620615 rg=d.polar
+~#! tid=861609409
+So, mal gucken, wie lange das hier steht.
+Der Weg durch die Kilghards lautet :
+linksvor,vor,vor,vor,rechtsvor,vor,vor
+
+Viel Spass :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Pass geaendert (Mahatma, 21. Apr 1997, 14:51:21):
+~#! rn=Issomad rt=861620817 rg=d.polar
+~#! tid=861609409
+Und der Rueckweg?
+
+Mahatma (faul)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Pass geaendert (Issomad, 21. Apr 1997, 15:23:49):
+~#! rn=Mahatma rt=861627081 rg=d.polar
+~#! tid=861609409
+vor,vor,linksvor,vor,vor,vor,rechtsvor
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Pass geaendert (Grimmborn, 21. Apr 1997, 15:23:51):
+~#! rn=Mahatma rt=861627081 rg=d.polar
+~#! tid=861609409
+ende
+
+Grimmborn der Atheist. Tip des Tages fuer ganz Faule.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Pass geaendert (Acrimon, 21. Apr 1997, 17:33:22):
+~#! rn=Issomad rt=861620817 rg=d.polar
+~#! tid=861609409
+Das war doch der alte Weg.
+Hat sich wohl doch nichts geaendert?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Pass geaendert (Lindir, 21. Apr 1997, 21:27:27):
+~#! rn=Acrimon rt=861636802 rg=d.polar
+~#! tid=861609409
+
+Hey Ben... wie waers mit nem VC a la Tarko... jedem Spieler seinen ganz
+persoenlichen Weg... jaja ich bin ja schon ruhig :-)
+
+
+Lindir der 11
+
+-----------------------------------------------------------------------------
+
+
+
+Zukunftsvisionen (Mupfel,  4. Jul 1997, 09:31:00):
+
+Ich sehe..... ich sehe... der Nebel lueftet sich... ich seh... es wird ein
+Eiszapfen abfallen (ich habe Yantro schon mal die Eissaege gegeben :-)
+
+(nur das nachher keiner sagt ich hatte nix gesagt :-)
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Zukunftsvisionen (Yantro,  4. Jul 1997, 13:55:52):
+~#! rn=Mupfel rt=868001460 rg=d.polar
+~#! tid=868001460
+Hi, 
+EISSAEGE??? Mehr ne Nagelfeile, aber ich hab das Teil ab! :)
+
+Wenn es zu schwierigkeiten kommen sollte, dann immer schon an Mupfel mailen :)
+Oder mich... oder zardoz... oder amazora... oder wer sonst noch ;)
+
+Yantro
+
+P.S.: Klartext... Mupfel hat Schrumpfis Gruft ueberarbeitet... das sagt
+eigentlich alles...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Zukunftsvisionen (Nasim, 10. Jul 1997, 14:30:06):
+~#! rn=Yantro rt=868017352 rg=d.polar
+~#! tid=868001460
+Aber die vielen Typos in der Beschreibung des Grabsteins am Eingang hat er
+(noch) nicht beseitigt ... hab sie schon per "typo" gemeldet, aber Schrumpfi
+ist ja nicht mehr da (was sehr schade ist, wo sie doch so suess war).
+
+Nasim
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Zukunftsvisionen (Key, 10. Jul 1997, 16:08:37):
+~#! rn=Nasim rt=868537806 rg=d.polar
+~#! tid=868001460
+Tsts das sind mir Forscher ... koennen noch netmal nen Haus sehen ... :)
+Der Grabstein ist mein kleines Haeusle und ich steh zu meinen Typos .. =;)
+
+Key
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Zukunftsvisionen (Acrimon, 10. Jul 1997, 16:49:05):
+~#! rn=Key rt=868543717 rg=d.polar
+~#! tid=868001460
+Huch? Key ist die neue Reinkarnation von Schrumpfi?
+
+LARS, du hast gepfuscht!!!
+
+Acrimon, der Rote Ritter
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Zukunftsvisionen (Mupfel, 11. Jul 1997, 09:56:14):
+~#! rn=Acrimon rt=868546145 rg=d.polar
+~#! tid=868001460
+Hmja Acrimon, wer im Glashaus sitzt...
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Zukunftsvisionen (Amazora, 29. Jul 1997, 14:40:43):
+~#! rn=Yantro rt=868017352 rg=d.polar
+~#! tid=868001460
+Ja toll. Waer allerdings ne nette Geste mich auch davon zu informieren.
+Eine Mail mit den ueberarbeiteten Files haett ich schon gern gehabt aber wen
+ineressierts.
+Amazora - sauer
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Zukunftsvisionen (Mupfel, 29. Jul 1997, 17:44:28):
+~#! rn=Amazora rt=870180043 rg=d.polar
+~#! tid=868001460
+Ich HABE Dir gemailt. Kuck Dir einfach Deinen Mailfolder n bisschen genauer
+an!
+
+-mupfel- 
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Zukunftsvisionen (Caradhras, 30. Jul 1997, 09:31:29):
+~#! rn=Mupfel rt=870191068 rg=d.polar
+~#! tid=868001460
+An welchen haste denn gemailt? An Amazora oder an Schrumpfi?
+Wenns Schrumpfi war, duerfte Dich nicht wundern, dass es nicht ankam,
+schliesslich hat sie lang und breit erklaert, dass sie diese Mails
+nicht mehr lesen kann, da sie gesperrt ist.
+
+   Gespannt auf des Laetsels Roesung
+
+         !Sonntag?
+Oh, was wollte das Sonntag da? :)
+
+      Tschoe        Rothorn Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Zukunftsvisionen (Anatol, 30. Jul 1997, 14:27:40):
+~#! rn=Caradhras rt=870247889 rg=d.polar
+~#! tid=868001460
+Hm, ich weiss ja nicht, wie DU mit Mails umgehst, Caradingens, aber bin mir
+ziemlich sicher, dass es selbst Mupfel mit der Auferbietung aller 55er-Maechte
+und Kraefte nicht schafft, an einen gebanishten Spieler eine Mail zu schicken
+("Mit dem Namen gibt es hier niemanden.").
+
+Einen grossen Haufen Mineralien taetschelnd,
+Anatol
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Zukunftsvisionen (Caradhras, 30. Jul 1997, 18:31:31):
+~#! rn=Anatol rt=870265660 rg=d.polar
+~#! tid=868001460
+Oh, aeh, ja, sicher, Anatroll, wo Du recht hast, hast Du natuerlich
+recht. :-) Ich hatte erst gedacht, dass es eine Spielpause von -1 war,
+aber beim banish gehts ja nimmer, das schreiben.
+Danke fuer die Korrektur.
+
+       *wink herzig*      Caradingens datt Bergsche
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Zukunftsvisionen (Lug, 31. Jul 1997, 02:04:48):
+~#! rn=Caradhras rt=870280291 rg=d.polar
+~#! tid=868001460
+
+Ach ja,
+
+man merkt doch sofort: Anatol ist wieder da!
+
+Jubel
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Zukunftsvisionen (Amazora, 31. Jul 1997, 16:45:55):
+~#! rn=Caradhras rt=870247889 rg=d.polar
+~#! tid=868001460
+Ja, dass Du Schreibrechte hast, Mupfel aber nicht was und wie und ueberhaupt
+veaendert worden ist.
+Amazora wuesste sowas naemlich auch gern
+
+-----------------------------------------------------------------------------
+
+
+
+WAS SOLL DAS ???? :-))) (Nairolf,  5. Aug 1997, 02:34:10):
+aehm naja ich wollte Nachtwind beweisen, dass Cthulhu ne Wurst is... und dann
+das :-) ......
+
+
+Du hast jetzt 210 Lebenspunkte und 2 Magiepunkte.
+  Du greifst Cthulhu mit der Kralle an.
+  Du verfehlst Cthulhu.
+  Cthulhu greift Sharias Schutzengel mit fuerchterlichen Krallen an.
+  Cthulhu trifft Sharias Schutzengel sehr hart.
+Cthulhu saugt Dir die Lebensenergie aus dem Koerper.
+Du hast jetzt 210 Lebenspunkte und 3 Magiepunkte.
+Du hast jetzt 3 Lebenspunkte und 3 Magiepunkte.
+  Sharias Schutzengel greift Cthulhu mit Engelszungen an.
+  Sharias Schutzengel trifft Cthulhu hart.
+Du teilst Nachtwind mit: hmm cthulhu is immernoch ne wurst :-)
+.....
+ Die Angst ist staerker als Du ... Du willst nur noch weg hier.
+[Tod:Lars] Yibb-Tsstl hat gerade Sharia umgebracht.
+[Tod:Yibb-Tsstl] Die Zeit ist gekommen! Wir sind wieder da!
+
+
+
+
+Nairolf, der sich fragt was DAS soll... 207 LP mit einem schlag.. das
+ueberlebt NIEMAND... und wenn DA nen Kleriker so dumm da steht... 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: WAS SOLL DAS ???? :-))) (Nachtwind,  5. Aug 1997, 02:52:51):
+~#! rn=Nairolf rt=870741250 rg=d.polar
+~#! tid=870741250
+Hm, anzumerken ist das ich an der gleichen Stelle auf die
+gleiche Weise draufgegangen bin, 10 minuten vorher.
+mupfel verwendet offenbar reduce_hitpoints oder do_damage, um
+die lp des opfers auf 1-3 runterzubringen. das geht natuerlich
+glatt durch alle abwehrzauber durch. das ist 
+a) uebertrieben
+b) schlechter stil (imho)
+
+besser waere wohl ein ordentlicher spell.
+
+nachtwind
+der inquisitor der kandri.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: WAS SOLL DAS ???? :-))) (Fyt,  5. Aug 1997, 09:43:55):
+~#! rn=Nachtwind rt=870742371 rg=d.polar
+~#! tid=870741250
+
+Noe, eigentlich ist es 'gerecht', es trifft naemlich alle gleichhart...
+
+Fyt.
+
+PS: Hatte ich schon erwaehnt, dass ich ein Absenken der LP auf... sagen wir
+30 fuer fairer halten wuerde...
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: WAS SOLL DAS ???? :-))) (Mupfel,  5. Aug 1997, 13:21:44):
+~#! rn=Fyt rt=870767035 rg=d.polar
+~#! tid=870741250
+Noe weder do_damage noch reduce_hitpoint (btw woher wisst ihr schon wieder
+diese technischen sachen, hae? :-), sondern die lp/mp werden einfach je auf 3
+gesetzt... vielleicht n bisschen hart... naja ich werd den wert wohl etwas
+erhoehen
+
+-mupfel-
+p.s. der hintergrund war dass ich mich mal erkundigt habe wer oder was
+"cthulhu" eigentlich ist... fuer dessen anspruch ist das monster eigentlich
+noch zu schlapp :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: WAS SOLL DAS ???? :-))) (Anatol,  5. Aug 1997, 14:22:20):
+~#! rn=Mupfel rt=870780104 rg=d.polar
+~#! tid=870741250
+
+Wer hat den bloss wieder zum Weisen gemacht?
+Faellt einen Baum,
+Anatol
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: WAS SOLL DAS ???? :-))) (Wurzel,  5. Aug 1997, 18:46:02):
+~#! rn=Mupfel rt=870780104 rg=d.polar
+~#! tid=870741250
+hm, wenn man h.p. lovecraft glauben schenken soll, dann muesste cthulhu
+eigentlich die() aufrufen... und zwar im init(). aber so viel realismus
+muss ja nun auch nicht sein :)
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: WAS SOLL DAS ???? :-))) (Key,  5. Aug 1997, 21:28:13):
+~#! rn=Wurzel rt=870799562 rg=d.polar
+~#! tid=870741250
+Hmm wie waere es mit der Theorie das Cthlhu zwar Cthulhu heisst aber net
+unbedingt Cthulhu sein muss???
+Ach nein sorry das waere viel zu weitgreifend, wird sind ja hier in einem Mud.
+Das heisst natuerlich das alles genauso stimmen muss wie vorgeben.
+
+Mensch Leute ich bitte euch, das ist doch wieder sowas wie die Begruendung:
+Das ist Rl net so also vl auch net.
+
+Wobei die naturlich auch sehr gerne anderstrum angewendet wird:
+Was Rl ist muss noch lange nicht vl genauso sein.
+
+Tja auslegungssache ... nur komisch das diese 2 begruendungen meist von
+denselben benutzt werden.
+
+Ausserdem .... 3 LP sind da unten der Tod, da kannste dran drehen wie du
+willst. Vorallem da Cthulhu danach noch einen Schlag hat.
+
+
+Key *sauer wegen daemlichen Begruendungen*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: WAS SOLL DAS ???? :-))) (Silvana,  5. Aug 1997, 22:40:42):
+~#! rn=Wurzel rt=870799562 rg=d.polar
+~#! tid=870741250
+Tja, Mupfel, wenn Du Spieler unbedingt einfach umlegen willst, dann
+ruf ruhig direkt die() auf. Kommt aufs gleiche raus.
+  Silvana
+
+-----------------------------------------------------------------------------
+
+
+
+Re: WAS SOLL DAS ???? :-))) (Asmodis,  5. Aug 1997, 23:35:54):
+~#! rn=Nairolf rt=870741250 rg=d.polar
+~#! tid=870741250
+So sind eben die NPCs in Schrumpfis Gruft, koennen dir schon mal fast alle LPS
+absaugen :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: WAS SOLL DAS ???? :-))) (Li,  6. Aug 1997, 07:24:37):
+~#! rn=Mupfel rt=870780104 rg=d.polar
+~#! tid=870741250
+Hmm, ja Mupfel, das stimmt, fuer Chtullhu ist das monstereigentlich zu
+schwach. Das gleiche gilt sicherlich fuer den Balrog. solche monster muessten
+eigentlich die Spieler innerhalb einer runde vernichten. Da das aber nicht
+Sinn der monster ist (oder etwa doch?) sollte man auf solche "Uebermonster"
+lieber verzichten, oder "kleinere" Verwandte einfuehren. Bei Chtullhu waere
+das z.B. das Gezuecht von Chtullhu, die zwar genauso aussehen, aber um einiges
+schwaecher sind. (Aber dennoch eigentlich nur von maechtigen Sehern zu
+bezwingen).
+Li
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: WAS SOLL DAS ???? :-))) (Patryn,  6. Aug 1997, 07:47:20):
+~#! rn=Li rt=870845077 rg=d.polar
+~#! tid=870741250
+also ich finde mupfels idee gut. ich mach mir tagelang nen kopf, wie ich
+son nem seher in einer runde moeglichst plausibel moeglichst viele
+lebenspunkte abziehe und mupfel findet die simple endloesung:
+ einfach auf 3 LP setzen :)
+das spart viel zeit und quellcode und stellt eine elegante loesung des
+oben genannten problems dar- auch die zahl 3 ist recht einleuchtend,
+stellt sie doch ein zentrales element unseres zahlenverstaendnisses dar:
+ nicht bis 3 zaehlen koennen.
+ hab ich doch schon 3 mal gesagt.
+ eins-zwo-drei-check
+diese beispiele zeigen die allgemeine alltagstauglichkeit der 3 und somit
+waer bewiesen, dass sich mupfel auch bei der whl der zahl etwas gedacht
+hat. also leute: jammert nicht, nehmt es sportlich ;)
+
+------
+patryn, findet mupfel grad irgendwie sympatisch
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: WAS SOLL DAS ???? :-))) (Mupfel,  6. Aug 1997, 12:24:53):
+~#! rn=Anatol rt=870783740 rg=d.polar
+~#! tid=870741250
+Hach das hab ich jetzt wieder gebraucht. Danke Anatol :-) :-)
+
+-mupfel-
+ps: ich habs ein bisschen entschaerft
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: WAS SOLL DAS ???? :-))) (Anatol,  6. Aug 1997, 14:34:10):
+~#! rn=Mupfel rt=870863093 rg=d.polar
+~#! tid=870741250
+Reply auf den letzten Artikel, das hat nichts mit dessen Inhalt zu tun...
+
+Ich muss Khij wohl im grossen ganzen Recht geben, bitte, wo kaemen wir hin,
+wenn jedes Monster so stark waere, wie es einer beliebigen Sage nach sein
+muss? Jeder Drache der Schreckensspitze, nehmen wir den Wasserluis mal aus,
+waere dann um ein Vielfaches zu schwach, Gardewaechter wuerden Anfaenger nicht
+10, sondern ALLE Lebenspunkte abziehen - und von Spielerseite her muessten
+Zauberer um ein zigfaches staerkere Angriffe und um ein ebensolches "zig"
+schwaechere Abwehr. Nur so als Beispiele.
+
+Na, unser Glueck, dass wir ueber ausreichend Fantasie und Freiheit verfuegen,
+Monster den Verhaeltnissen anzupassen... :)
+
+Ach ja: Warum wurde die Gruft eigentlich ueberarbeitet? Nur, damit der Code
+kuerzer/effizienter/unleserlicher wird? ;-)
+
+Das Flamen nicht lassen koennend,
+Anatol (gibt Mupfel, was er braucht. Gelegentlich.)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: WAS SOLL DAS ???? :-))) (Kretek,  6. Aug 1997, 20:19:38):
+~#! rn=Silvana rt=870813642 rg=d.polar
+~#! tid=870741250
+Muesste sowas dann nicht von Balance genehmigt werden? :-)
+
+K.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: WAS SOLL DAS ???? :-))) (Patryn,  6. Aug 1997, 20:20:51):
+~#! rn=Kretek rt=870891578 rg=d.polar
+~#! tid=870741250
+die balance hat schon genug damit zu tun, gegen die spieler zu arbeiten,
+soll sie nun auch noch fuer sie arbeiten? *grins* ;)
+
+------
+patryn schmarrt herum
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: WAS SOLL DAS ???? :-))) (Silvana,  6. Aug 1997, 23:42:23):
+~#! rn=Kretek rt=870891578 rg=d.polar
+~#! tid=870741250
+Ich wuerde das gar nicht mal als so einen Scherz hinstellen, Kretek.
+Bei dem, was einige Magier in letzter Zeit hier anschliessen, kann
+ich jeden Spieler verstehen, der da nach der Balance schreit. Allerdings
+sollten das nicht die gleichen sein, die fuer Balance bei Waffen etc
+zustaendig sind. Para hat a) so schon zu viel zu tun und
+b) selbst einen Hang, seine Monster _etwas_ ueberzudimensionieren. :)
+
+  Silvana (schmeisst im Steinhaus mit Glaesern, oder so)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: WAS SOLL DAS ???? :-))) (Mupfel,  7. Aug 1997, 12:18:28):
+~#! rn=Kretek rt=870891578 rg=d.polar
+~#! tid=870741250
+Ich moechte nochmal drauf hinweisen, fuer alle dies nicht wissen: das ist die
+PARAllelwelt (quasi paras welt :-), da muss keiner hin, der aufenthalt ist
+rein freiwillig, und die monster sind 'etwas' andere als in der normalen welt.
+seht sie euch doch an, die paradrakonier, paravlaender etc... ich knuepfe da
+nur an eine tradition an :-)
+
+-mupfel-
+p.s.: ein monster ist eh nur dann gut, wenn key dran stirbt :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: WAS SOLL DAS ???? :-))) (Key,  7. Aug 1997, 12:19:39):
+~#! rn=Mupfel rt=870949108 rg=d.polar
+~#! tid=870741250
+Paravland lassen wir mal aus dem Spiel ...
+
+Paradrakonien ... soso ... nenn mir mal einen npc der dir die lp auf 3 setzt
+und dann noch nen schlag macht .... nur einen einzigen
+
+Key
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: WAS SOLL DAS ???? :-))) (Denti,  7. Aug 1997, 12:21:27):
+~#! rn=Mupfel rt=870949108 rg=d.polar
+~#! tid=870741250
+
+Danke fuer den Hinweis, aber der Aufenthalt ist leider _nicht_ rein
+freiwillig, wenn man zu deinem Monster laeuft wahrscheinlich schon, 
+aber es ist mir auch schon passiert, dass ich nicht gemerkt habe, dass
+es ein fehlteleport war, und das ist dann schon uebel. Ich haette also 
+wenig gegen superstarke oder rein nervige Monster, wenn es keinen fehl-
+tepeleport mehr gaebe. Allerdings halte ich es schon fuer etwas 
+unsportlich, einfach lps oder stats runter zu setzen.
+
+Denti
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: WAS SOLL DAS ???? :-))) (Schoko,  7. Aug 1997, 12:27:57):
+~#! rn=Key rt=870949179 rg=d.polar
+~#! tid=870741250
+
+Bleibt festzuhalten, dass die Normalwelt auch nicht viel besser ist.
+Aber eigentlich, wenn ichs mir so recht ueberlege ist das inzeischen hier doch
+schon normal einfach Portale komplett abzuhaengen. Wenn man das natuerlich von
+diesem Standpunkt aus sieht, dann wird man sicherlich verschmerzen, wenn FW
+nuhrmehr durch die Karawane oder Pegasus zu erreichen ist. Und
+selbstverstaendlich kommt das so gut wie nie vor ...
+
+Schoko (wartet jetzt drauf, dass als letztes auch noch vor Portal 25 ein
+agressives -190LP/Runde Monster gesetzt wird)
+
+P.S.: Ach ja das ganze bezog sich natuerlich NICHT auf die Parawelt, DAS ist
+ein besondres Schmankerl von Padreic fuer die Normalwelt...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: WAS SOLL DAS ???? :-))) (Boing,  7. Aug 1997, 12:56:28):
+~#! rn=Schoko rt=870949677 rg=d.polar
+~#! tid=870741250
+Ihr diskutiert uebrigens ueber olle Kamellen, Cthulhu wurde bereits
+gestern wieder geaendert. Allerdings hat Mupfel wohl 'vergessen' das
+zu erwaehnen ... naja.
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: WAS SOLL DAS ???? :-))) (Boing,  7. Aug 1997, 12:57:38):
+~#! rn=Boing rt=870951388 rg=d.polar
+~#! tid=870741250
+Oh, er hat es doch nicht vergessen ... ging nur etwas unter weil es
+ziemlich unauffaellig im PS stand.
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: WAS SOLL DAS ???? :-))) (Schoko,  7. Aug 1997, 12:58:35):
+~#! rn=Boing rt=870951458 rg=d.polar
+~#! tid=870741250
+Ich glaub das ging nur unter, weil subjektiv kein Unterschied festzustellen
+war? :))
+
+Schoko 
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: WAS SOLL DAS ???? :-))) (Anatol,  7. Aug 1997, 14:16:37):
+~#! rn=Denti rt=870949287 rg=d.polar
+~#! tid=870741250
+Ich ergaenze Denti sogar. Es gibt Stellen, da _merkt_ man gar nicht, dass man
+in eine Parallelwelt versetzt wurde. Die, wie man mir sagte,
+Patryn-Argumentation, dass jeder freiwillig in der Parallelwelt waere und eh
+des Lebens ueberdruessig, kann ich beim besten Willen nicht verstehen.
+
+Anatol
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: WAS SOLL DAS ???? :-))) (Orktoeter, 11. Aug 1997, 14:00:51):
+~#! rn=Patryn rt=870846440 rg=d.polar
+~#! tid=870741250
+Hmm also es ist doch allgemein beknnat (oder etwa nicht ?) das die Zahl der
+Zahlen die 42 ist :)
+
+Desweiteren moechte ich an dieser stelle nur mal so erwaehnen, das es hier
+durchaus NPC gibt, dei tatsaechlich so hart sind, wie ihre Vorbilder, Tower
+hat es mit AFR und Vollen LP und Klasseausruestung in einer Runde beimHaiavaha
+zerlegt.
+
+Sorr fuer Typos und Format, sitze gerade in England und habe eine miese
+Leitung, sehe nicht was ich tippe und kann daher auch nur schlecht Fehler
+korrigieren.
+
+OrkT (immer noch im Urlaub) :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: WAS SOLL DAS ???? :-))) (Amazora, 11. Aug 1997, 16:51:11):
+~#! rn=Silvana rt=870813642 rg=d.polar
+~#! tid=870741250
+Aber NICHT mit meinen NPC's!
+Amazora.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: WAS SOLL DAS ???? :-))) (Amazora, 11. Aug 1997, 16:51:36):
+~#! rn=Asmodis rt=870816954 rg=d.polar
+~#! tid=870741250
+Du meinst Mupfels Gruft oder?
+A.
+
+-----------------------------------------------------------------------------
+
+
+
+Gruft weg. (Amazora, 12. Aug 1997, 18:17:01):
+Es tut mir leid, Euch mitteilen zu muessen, dass ich die Gruft rausgenommen
+hab.
+Eigentlich wollte ich sie schon rausnehmen bevor Schrumpfi sich geloescht hat.
+ann hab ichs mir allerdings anders ueberlegt und Mupfel meinte, wenn er die
+Scheibrechte hat, dann wuerde er sie debugen ect.
+Da er aber die Gruft teilweise grundlegend veraendert hat, wie zB Cthulhu
+erhebich haerter und Langbeschreibung von Cthulhu veraendert hat und das
+definitiv ncht im Interesse von Schrumpfi liegt, wird die Gruft auch
+geloescht.
+Es tut mir leid fuer Euch Spieler aber offensichtlich geht es nicht anders.
+Amazora.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Gruft weg. (Kretek, 12. Aug 1997, 18:29:55):
+~#! rn=Amazora rt=871402621 rg=d.polar
+~#! tid=871402621
+Schade eigentlich! Die Gruft war das erste (und einzige!) Teil von 
+Schrumpfi, wo ich gestorben bin... Nachdem eine gewisse Regionsmagier-
+Stellvertreterin mir versichert hatte, die Gruft sei "ganz ungefaehrlich"
+**grins**
+Aber verstehen tu ich's... Schade eigentlich!
+
+
+KreteK
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Gruft weg. (Sharia, 12. Aug 1997, 23:54:47):
+~#! rn=Kretek rt=871403395 rg=d.polar
+~#! tid=871402621
+WAS ???????
+Naja Schru aehm Amazora ich verstehe Dich auch, aber ich finde es wirklich
+SEHR SEHR schade.. gerade fuer uns Kleriker ist ein besonders schoenes
+Metzelgebiet verlorengegangen.....tja und das Gebiet, was mir schon als kleine
+Spielerin ans Herz gewachsen war.... naja fragt mal Bibo ;)....
+
+Sharia, die jetzt mal kraeftig um "ihre" Gruft trauert und einige Gebete zu
+Lembold extra spricht.
+
+-----------------------------------------------------------------------------
+
+
+
+gruft (Nonne, 13. Aug 1997, 10:06:54):
+Ist das definitiv und endgueltig, dass die gruft weg ist???? 
+Man nimmt den Klerikern die schoenste Spielwiese, die sie im MG hatten?
+Gibt es da nicht eine andere Moeglichkeit? Die alte Gruft wieder anschliessen
+und nur debuggen, ohne gleich die Gefuehle des Urhebers zu verletzten? Ich
+finde es sehr, sehr Schade.
+Mir hat die Gruft gefallen und ich weiss ueberhaupt nicht, warum die geaendert
+wurde.
+Schade.
+
+In tiefer Trauer und zu Lembold fuer Besserung betend
+Nonne
+
+-----------------------------------------------------------------------------
+
+
+
+Re: gruft (Grimmborn, 13. Aug 1997, 10:15:03):
+~#! rn=Nonne rt=871459614 rg=d.polar
+~#! tid=871459614
+Hmm, im neuesten Linux-Magazin gibt es einen Artikel ueber die Entwicklung von
+freier Software, wo drin steht, dass es die letzte Pflicht eines Entwicklers,
+der sich aus einem Projekt zurueckzieht ist, dafuer zu sorgen, dass jemand
+anders da ist, der sich weiter um die Sache kuemmert, es also in andere Haende
+zu legen. Denn wenn praktische Dinge (im Artikel geht es um fetchmail)
+verschwinden, nur weil der (Haupt-) Entwickler aufhoert, leiden sehr viele
+drunter, die nichts damit zu tun haben (und was wuerden die ganzen Leute
+machen, wenn Liinux verschwinden muesste, nur weil Linus Thorvalds in Rente
+geht?).
+Allerdings kann man das nur begrenzt vergleichen, im Artikel geht es um
+Projekte mit vielen Entwicklern (deren Arbeit man dann auch gleich mitnehmen
+wuerde) und um ein copyright, das man bewusst "freigegeben" hat. Insofern eine
+andere Situation.
+
+In anderen muds (Nightfall beispielsweise) ist es Bestandteil des
+Magiervertrages, dass aller code auch dem mud gehoert und nicht einfach so
+mitgenommen werden kann. Natuerlich darf der Magier seinen code anderswo auch
+verwerten, aber wenn er geht, kann er nicht einfach sein Zeuch mitnehmen. Man
+stelle sich nur mal vor, wie es hier aussaehe, wenn Jof oder Hate auf diese
+Weise gehen wuerden. Aber das ist hier nicht der Fall und ist wohl juristisch
+auch... aeh, nicht unumstritten.
+
+Grimmborn der Atheist ist schon der Meinung, dass praktisch alles ausser
+/players den Spielern "gehoert". Wenn Magier sich zurueckziehen ist der RM
+zustaendig (und kann das delegieren), und der urspruengliche Urheber hat da
+nichts mehr mit zu tun...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: gruft (Fyt, 13. Aug 1997, 10:22:38):
+~#! rn=Grimmborn rt=871460103 rg=d.polar
+~#! tid=871459614
+
+Es ist afaik nichts im Magiervertrag geregelt. Schrazora kann also ihr
+Zueg abhaengen. Leute, die die Backupbaender bedienen koennen, koennten
+es anhaengen. So what? Das MG kann ohne die Gruft ueberleben und das
+ist ein wichtiger Punkt.
+
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: gruft (Grimmborn, 13. Aug 1997, 10:30:14):
+~#! rn=Fyt rt=871460558 rg=d.polar
+~#! tid=871459614
+Falls das nicht klar geworden sein sollte: Genau das habe ich gesagt, dass es
+im MG im Gegensatz zu anderen muds nichtmal juristisch fragwuerdig so geregelt
+ist (bischen was laesst sich wohl aus driver/lib-Lizenz ableiten, aber das
+betrifft das System und nicht die "Spielergegenden". Und ich faende es bei der
+Lage extrem unfeinen Stil, die Sachen ungefragt wieder anzuhaengen.
+
+Aber ich finde schon, man sollte versuchen, das zu regeln, denn nicht alle
+Sachen sind so gelegen, dass sie problemlos abgehaengt werden koennten (von
+wem war noch Port Vain?). Und daher denke ich, sollte man sich Gedanken
+machen. Nicht wegen der Gruft, sondern, um fuer die Zukunft eine Loesung zu
+finden.
+
+Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: gruft (Fyt, 13. Aug 1997, 10:34:59):
+~#! rn=Grimmborn rt=871461014 rg=d.polar
+~#! tid=871459614
+
+Sicher waere es unfein, es wieder anzuhaengen. Ich galub auch nicht, dass
+jemand auch nur entfernt dran denkt, etwas derartiges zu tun, ich hatte
+es mehr als 'es ist technisch moeglich und juristisch m.E. nicht verboten'
+gemeint. Aber ich denk mal, solange man den Magiervertrag nicht RL
+unterschreibt, ist mit Juristerei eh nix zu machen...
+
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Gruft weg. (Tangalur, 13. Aug 1997, 10:38:53):
+~#! rn=Amazora rt=871402621 rg=d.polar
+~#! tid=871402621
+Tja schade drum...aber wahrscheinlich haette ich sie auch abgehaengt.
+
+Tangalur
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Gruft weg. (Key, 13. Aug 1997, 10:39:25):
+~#! rn=Amazora rt=871402621 rg=d.polar
+~#! tid=871402621
+Halloe ... Tja also um die Gruft ist es verdammt Schade :((
+DANKE MUPFEL! :(
+
+Naja an der Gruft haengen nun mal Erinnerungen .. Meine ersten Tode .. :)
+
+Hmm Amazora wenn es Dir nur darum geht das die Gruft einen brauch der sich
+drum kuemmert aber net veraendert ... Vielleicht werde ich ja doch Magier :)
+Wuerdeste sie dann wieder zulassen? :)
+
+Kez bereit sich zu opfern .)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Gruft weg. (Schoko, 13. Aug 1997, 11:21:34):
+~#! rn=Key rt=871461565 rg=d.polar
+~#! tid=871402621
+
+Hmm mal was andres: wie siehts denn aus mit den ganzen Sachen, die in der
+Gruft zu holen waren? Ich denke jetzt nich daran, einfach das Kreuz und so
+einfach woanders wieder zugaenglich zu machen, das waere etwas plump. Vielmehr
+denke ich da an gewisse Magier, die sich beim Entwurf ihrer Gegenden und
+Monster darauf verlassen, dass bestimmte Artefakte im MG existieren (war das
+deutlich genug? :))
+
+Schoko (ziemlich traurig ueber den Weg, der hier eingeschlagen wird)
+
+P.S.: Hmm Artefakte sollte glaub ich Artillerie oder so heissen :))
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Gruft weg. (Larissa, 13. Aug 1997, 11:59:16):
+~#! rn=Amazora rt=871402621 rg=d.polar
+~#! tid=871402621
+Och, Schrumpfi...
+
+Du wolltest nicht mehr Mag sein und hast Mupfel "Betreuung" der Gruft
+uebertragen. Dass er nicht in Deinem Sinne 'debuggt' hat ist schade, aber
+sowas lsesst sich doch sicher besprechen. ich glaube nicht, dass Mupfel so
+einfach ins blaue proggt, wenn er weiss wie Du die Gruft weitergefuehrt haben
+wolltest.
+Kannst Sie nicht wieder anhaegen und _genau_ beschreiben wie es dort
+bleiben/werden soll? Das muss doch wohl gehen!
+
+Lari, moechte die schoene Gruft zurueck! ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Gruft weg. (Raffi, 13. Aug 1997, 14:28:50):
+~#! rn=Key rt=871461565 rg=d.polar
+~#! tid=871402621
+Hmm, jo, Key (oder Kez ?:).
+
+Die Gruft ist mein absolutes Superlieblingsgebiet im MG
+gewesen. Und zwar nich weil sie so uebermaessig gross, 
+super detailiert oder extra reichhaltig ausgestattet war,
+nein, im Gegenteil, der Reiz lag in der Einfachheit und
+dem Raum fuer eigent Deutungen und Ideen.
+
+Die _ORIGINAL_ Gruft waehre warscheinlich auch fuer
+mich das einzige mit dem man mich dazu zwingen koennte
+Magier hier zu werden. (Nein, ich habs nicht vor mir
+anzutun).
+
+Gruss
+H.
+
+P.S.: es existiert uebrigens, in einem nicht naeher zu
+      nennenden Mud eine (fast) originale Kopie, nur
+      etwas debugt. (Nein, ist im moment auch nicht
+      angeschlossen, da ein hier ebenfalls ungenannter
+      RM immer noch nicht den zugehoerigen Sumpf
+      fertig hat :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: gruft (Kretek, 13. Aug 1997, 15:09:38):
+~#! rn=Fyt rt=871461299 rg=d.polar
+~#! tid=871459614
+Tja, soviel ich weiss, haben wir im Gesetz (BGB, genauer gesagt) den
+Grundsatz der Vertragsfreiheit geregelt, wo unter anderem festgelegt
+wird, dass Vertraege (mit wenigen Ausnahmen) _nicht_ der Schriftform
+beduerfen, und dass deswegen auch eine Unterschrift, egal in welcher
+Form (ob RL oder VL) eigentlich _nicht_ relevant sein duerfte.
+Korrigiert mich bitte jemand, wenn ich mich da irre, ich bin eben kein
+Jurist...
+
+KreteK
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Gruft weg. (Key, 13. Aug 1997, 16:07:00):
+~#! rn=Raffi rt=871475330 rg=d.polar
+~#! tid=871402621
+Hmm Raffi das bringt mich auf eine Idee ....
+
+Wie waere es wenn du die Gruft "drueben" endlich mal anschliesst, und dann
+eine Art Seherportale geproggt werden :)
+Naja das man von einem Mud ins anderen "transen" kann :)
+
+Nee aber ernsthaft die Gruft drueben bringt uns hier null.
+
+Ich will die hier wiederhaben ... egal wie :) Wenn Amazora einverstanden ist
+...
+
+Key, Kez nur wenn bloede Amitasten unter die Finger kommen :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Gruft weg. (Amazora, 13. Aug 1997, 18:15:24):
+~#! rn=Key rt=871481220 rg=d.polar
+~#! tid=871402621
+Es steht fest fuer mich, die Gruft ist weg. Ich habs aber gestern schon
+anklingen lassen, dass ich etwas aehnliches dafuer mache.
+Denn, ich hab sie nicht rausgenommen um Spieler zu aergern oder frustrieren
+oder was auch immer.
+Also geduldet Euch noch ein wenig, morgen bin ich wieder in Linz und werd ein
+Tostpflaster proggen.
+A.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Gruft weg. (Silvana, 14. Aug 1997, 00:12:58):
+~#! rn=Amazora rt=871488924 rg=d.polar
+~#! tid=871402621
+Auf eines warte ich schon die ganze Zeit:
+Wieso werden die armen Spieler, besonders die Kleriker, bestraft,
+wenn Mupfel Mist baut? (Fuer Acrimon: IRONIE OFF!)
+Ich finds schade, Schrumpfi, aber verstehen kann ichs...
+
+  Silvana
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Gruft weg. (Asmodis, 14. Aug 1997, 07:19:59):
+~#! rn=Raffi rt=871475330 rg=d.polar
+~#! tid=871402621
+Meinst du mich ? aehem, dass der in den Sumpf gehoert, war ja noch
+gar nicht klar ....
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: gruft (Grimmborn, 14. Aug 1997, 09:54:10):
+~#! rn=Kretek rt=871477778 rg=d.polar
+~#! tid=871459614
+Du irrst nicht. Aber Vertraege beduerfen des Einverstaendnisses beider Seiten,
+was man am besten schriftlich regelt. Oder persoenlich, "mit Handschlag" unter
+Zeugen. So richtig rl. Ich kann mir kaum vorstellen, dass da ein paar Zeilen
+auf dem Bildschirm, die auch nur vom Hoerensagen her existieren und letztlich
+beliebig manipulierbar sind, ein deutsches Gericht beeindrucken.
+Augra, Adson, Tasha, any comments?
+
+Grimmborn der Atheist weiss gerade knapp genug von Jura, um nicht zu
+auffaellig damit in Konflikt zu kommen
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: gruft (Key, 14. Aug 1997, 10:10:13):
+~#! rn=Grimmborn rt=871545250 rg=d.polar
+~#! tid=871459614
+Hmm also wenn ich net irre wurde vor kurzem mal ueber ein Gesetz dikutiert das
+Unterschriften auch vl rechtlivh sind. Also das man sich daran halten muss :)
+Naja aber wie des numa so is bei den polis da oben des kann noch dauern bis es
+verabschiedet wird .. :) Im mom ist es wohl eher noch ne weisse Zone auf ner
+riesigen Karte, oder wie auch immer ;))
+
+Key
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: gruft (Anatol, 14. Aug 1997, 13:19:23):
+~#! rn=Key rt=871546213 rg=d.polar
+~#! tid=871459614
+Ich stelle es mir generell sehr schwer vor, einer virtuellen Unterschrift von
+ein paar Bytes, die nicht mit Sicherheit einer Person zugeordnet werden
+koennen, rechtliche Geltung zu verschaffen. Wer garantiert denn, dass der, der
+dies hier schreibt, auch der ist, den das Gros von den Mudparties kennt?
+Arroganten Stil kann man uebrigens auch kopieren ;-)
+
+Anatol
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Gruft weg. (Raffi, 14. Aug 1997, 15:42:14):
+~#! rn=Asmodis rt=871535999 rg=d.polar
+~#! tid=871402621
+Nee, anderer Sumpf, kleiner, und VIIIIIEL spielerfreundlicher ... aeh oder so
+:)
+
+H..
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: gruft (Jimdigriz, 14. Aug 1997, 19:00:09):
+~#! rn=Anatol rt=871557563 rg=d.polar
+~#! tid=871459614
+Moin,
+
+so schwierig ist das nicht. Der PGP Ansatz ist IMHO schon
+gut durchdacht. 
+Zur Info: Ein Dokument wird mit dem Private Key signiert,
+die Unterschrift ist dann eindeutig, das heisst, sie kann
+nur erfolgreich mit dem public key verifiziert werden
+wenn das Dokument unveraendert ist.
+Die Zuordnung der Keys zu lebenden Personen geschieht
+durch sogenannen Certification Authorities
+(wenn mans offiziell machen will), bzw durch den persoenlichen
+fingerprint, oder aber informeller auf
+PGP signing Parties, in denen die Teilnehmer sich
+gegenseitig die Zuordnung zu den schluesseln
+bestaetigen, weil sie sich ja auch persoenlich davon
+(zB per Perso) ueberzeugen koennen.
+Certification Authority ist zB das DFN-CERT.
+
+my 0.02 $
+ Jim DiGriz
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: gruft (Key, 14. Aug 1997, 19:02:35):
+~#! rn=Jimdigriz rt=871578009 rg=d.polar
+~#! tid=871459614
+Aeh wieso redest du staendig von mir?? ;))
+
+Private-Key
+
+-----------------------------------------------------------------------------
+
+
+
+Lovecraft (Dante, 16. Aug 1997, 15:55:53):
+Ich finde es absurd, ja geradezu idiotisch , wenn jemand in Zusammenhang mit
+Cthulu oder Lovecraft das Wort Realitaet auch nur erwaehnt.
+Hier passt hoechstens das Wort Relitaetsfern, denn Lovecraft war ein schwerer,
+wenn auch teilweise genialer, Psychopath , der sein ganzes Leben so gut wie
+nie aus seinem Haus gegangen ist.
+Ob er so geworden ist, weil er nie ausser Haus gegangen ist oder vice versa,
+weisz man nicht.
+Ist mir auch ziemlich egal, der Typ ist auf jeden Fall faszinierend.
+D.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Gruft weg. (Schlips, 18. Aug 1997, 10:44:50):
+~#! rn=Key rt=871481220 rg=d.polar
+~#! tid=871402621
+In andere Muds transen?
+Wollte ich schon immer mal ...
+
+Schlips
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Lovecraft (Cauno, 19. Aug 1997, 13:40:20):
+~#! rn=Dante rt=871739753 rg=d.polar
+~#! tid=871739753
+Jetzt geb ich doch mal meinen Saft, aeh Senf dazu ...
+Sollte ich demnaechst mal hier Magier werden (im Moment schieb ichs noch vor
+mir her, warum bloss?) programmier ich am besten ein Giger-Alien. So richtig
+schoen realistisch, wie Hansruedi es in seinem Buch vorgestellt hat ... und
+wems gefaellt, der kriegt noch eine Sil als Gefaehrtin obendrauf.
+Na, waer das was?
+
+C. No
+
+(Wenn jetzt einer darauf antwortet, erklaere ich ihn fuer unzurechnungsfaehig
+...)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Lovecraft (Key, 19. Aug 1997, 13:58:12):
+~#! rn=Cauno rt=871990820 rg=d.polar
+~#! tid=871739753
+Auja mach mal ;))
+
+Kez, unzurechnungsfaehig, oder eher berechenbar? ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Lovecraft (Paracelsus, 19. Aug 1997, 21:31:43):
+~#! rn=Key rt=871991892 rg=d.polar
+~#! tid=871739753
+Hmm, ich haette da auch noch eine handvoll NPCs, die gemessen an ihren 
+'literarischen Erscheinungsformen' viel zu schwach geraten sind.
+Also die koennte ich noch aufpeppeln ...
+
+Para->schmarrn()
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: gruft (Caradhras, 20. Aug 1997, 22:31:05):
+~#! rn=Key rt=871578155 rg=d.polar
+~#! tid=871459614
+Nee, Slueeli, fuer mich biste noch ein Foreign Key. :-)
+Mal schauen, wo die Constraints bei Dir rumliegen.
+
+          Bergchen Caradhras - SQL-geschaedigt
+
+-----------------------------------------------------------------------------
+
+
+
+Rodelbahn (Zardoz, 28. Aug 1997, 15:02:28):
+Die Rodelbahn sollte jetzt _etwas_ leichter zu finden sein. Einfach den
+zahlreichen Hinweisschildern und Wegweisern folgen :)
+
+Ciao Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Rodelbahn (Asmodis, 28. Aug 1997, 15:33:01):
+~#! rn=Zardoz rt=872773348 rg=d.polar
+~#! tid=872773348
+Stell doch noch einen 'Follow-me' beim Orklager auf, dann findets auch
+wirklich jeder :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Rodelbahn (Phobos, 28. Aug 1997, 15:34:28):
+~#! rn=Asmodis rt=872775181 rg=d.polar
+~#! tid=872773348
+Ich war ja schon immer fuer eine Hundeleine als Questbelohnung,
+mit der man dann Anfaenger durchs Mud schleifen kann :)
+
+i.a. Mars
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Rodelbahn (Zardoz, 28. Aug 1997, 15:40:33):
+~#! rn=Asmodis rt=872775181 rg=d.polar
+~#! tid=872773348
+Ok. Man kann nun wirklich den Hinweischilden folgen. Viel Spass :)
+
+Ciao Zardoz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Lovecraft (Hardil, 29. Aug 1997, 12:41:22):
+~#! rn=Cauno rt=871990820 rg=d.polar
+~#! tid=871739753
+
+Auch wenn Du mich fuer unzurechnungsfaehig erklaerst, CauNo, programmier doch
+lieber statt eines Giger-Alien ein Ginger-Ale. Das gibts hier naemlich noch
+nicht.
+
+-Hardil.
+Trinkt Canada Dry viiiiieeeeel lieber als Schweppes.
+
+-> d.kochrezepte
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Lovecraft (Cauno, 29. Aug 1997, 13:36:39):
+~#! rn=Hardil rt=872851282 rg=d.polar
+~#! tid=871739753
+Hm. Das ware mal eine Idee. Wenn ich mal meinen Mond proggen sollte (den ich
+schon genauso lange plane, wie das Magierwerden.), hab ich gleich schon das
+erste gertaenk fuer die kneipe ...
+
+C. No
+
+ - Jetzt muss ich mich wohl selbst fuer uzr erklaeren ...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Rodelbahn (Kretek,  1. Sep 1997, 20:04:52):
+~#! rn=Phobos rt=872775268 rg=d.polar
+~#! tid=872773348
+Oh, toll! Das ist ja dann endlich wieder 'ne Moeglichkeit, nervige
+Spieler in die Arena zu schleifen und dort PK-frei zu killen! :-)
+
+KreteK
+
+-----------------------------------------------------------------------------
+
+
+
+Erinnerungen (Key,  7. Dez 1997, 14:30:21):
+So es ist soweit :)
+
+Fuer alle Gruftlieberhaber gibbet jetzt eine Art kleine Kopie :)
+Da die Gruft nunmal zerfallen ist sollte man evtl probieren eine Ruine zu
+betreten. ;)
+
+Key vermisst sein Schatzi. .)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Erinnerungen (Trekan,  7. Dez 1997, 16:17:13):
+~#! rn=Key rt=881501421 rg=d.polar
+~#! tid=881501421
+vielleicht kann man ja wargon (oder nachfolger) ueberreden, da NPC's
+reinzustellen.
+Das waere doch was ;)
+Trekan -> in erinnerungen schwelgend
+
+-----------------------------------------------------------------------------
+
+
+
+Betrug! :-) (Hardil, 19. Dez 1997, 10:22:02):
+
+Der haendler im Rodelladen bescheisst!
+> zeige waf
+
+Du kannst hier folgende Bewaffnung kaufen:
+
+11. Eine kleine Armbrust (15 Schuss)...........50
+12. Ein kleiner Katapult (10 Schuss)...........75
+13. Eine Sandschleuder (5 Schuss).............100
+
+> kaufe 13
+Du kaufst eine Sandschleuder und zahlst 422 Muenzen.
+
+Hmmm. Nennt man das den Ausgleich von ANgebot und Nachfrage? :-)
+
+-Hardil. Tief in seinem Inneren getroffen und noch tiefer empoert. :-)))
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Betrug! :-) (Key, 20. Dez 1997, 17:00:25):
+~#! rn=Hardil rt=882523322 rg=d.polar
+~#! tid=882523322
+Tja das ist ne Webestrategie :)
+Im Prinzip hast Du es sogar zu billig bekommen ...
+
+Zur Erklaerung:
+Der Preis von 100 Muenzen bezieht sich natuerlich nur auf einen Schuss.
+Aufgrund des Angebotes kann man aber als mindestmenge 5 Schuss kaufen.
+Demnach ergibt sich ein Preis von 500 Muenzen :)
+Tja scheinbar haste Menebrabatt bekommen ;)
+
+Key
+
+-----------------------------------------------------------------------------
+
+
+
+Ein Stein wankt :) (Terrorist, 18. Feb 1998, 11:09:47):
+Soeben habe ich erfahren das ein Stein ins Wanken geraten ist und dadurch
+etwas laengst vergessenes wieder an die Tagesoberflaeche geraten ist. 
+
+Wie ging noch gleich die eine Hymne? Auferstanden aus Ruinen?
+
+Na schaut mal selber nach
+
+TERROR!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Ein Stein wankt :) (Lug, 18. Feb 1998, 14:30:46):
+~#! rn=Terrorist rt=887796587 rg=d.polar
+~#! tid=887796587
+
+Aeh,
+
+JA JAAAAAAA JAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA!
+
+1000000000 Knuddeler *scroll* an die beteiligten Mags!
+
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Ein Stein wankt :) (Terrorist, 18. Feb 1998, 17:52:08):
+~#! rn=Lug rt=887808646 rg=d.polar
+~#! tid=887796587
+Hmm ich habe da noch ein kleines Problem ....
+Lilith wird wohl keine Nadeln mehr bekommen, aus balancetechnischen Gruenden
+...
+Naja aber so ganz ohne alles wollte ich sie auch nicht lassen.
+
+Also ernstgemeinte Vorschlaege bitte per mail an mich
+
+Terror
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Ein Stein wankt :) (Lug, 18. Feb 1998, 19:51:52):
+~#! rn=Terrorist rt=887820728 rg=d.polar
+~#! tid=887796587
+Aeh,
+
+die nicht ernstgemeinten Vorschlaege bitte in die MPA an Terror.
+
+Terror
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Ein Stein wankt :) (Terrorist, 19. Feb 1998, 10:24:58):
+~#! rn=Lug rt=887827912 rg=d.polar
+~#! tid=887796587
+Hmmm gibts nur Kaempfer mit offenen Wuenschen? :)
+Oder traut sich sonst keiner?
+
+TERROR
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Ein Stein wankt :) (Lug, 22. Feb 1998, 04:41:04):
+~#! rn=Terrorist rt=887880298 rg=d.polar
+~#! tid=887796587
+
+Sooosiehddas aus Terror!
+
+
+Wie waere es mit einer Ernuechterungstablette? Einem Abfuehrmittel? Das kaeme
+allen zugute.
+
+FidKG
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Ein Stein wankt :) (Therin, 22. Feb 1998, 04:44:47):
+~#! rn=Lug rt=888118864 rg=d.polar
+~#! tid=887796587
+
+> Wie waere es mit einer Ernuechterungstablette? Einem Abfuehrmittel?
+
+Das wuerde wirklich die ....Verstopfungen... bei der Metzeltaetigkeit
+reduzieren. pro Abfuermittel, pro prostagut!
+
+T.
+
+-----------------------------------------------------------------------------
+
+
+
+Gruftkneipe :) (Terrorist, 14. Mar 1998, 23:54:26):
+So die Kneipe in der Gruft tut es wieder ....
+Was genau war weiss ich nicht ... Und danke fuers Bescheidsagen :)
+
+TERROR
+
+-----------------------------------------------------------------------------
+
+
+
+Wankende Steine (Terrorist, 18. Mar 1998, 15:36:31):
+So .... es hat sich nochmal eine Kleinigkeit in der Gruft getan ...
+Sie traegt zwar nicht zum sterben bei, wird es fuer ein paar aber auch net
+einfacher machen ...
+
+TERROR
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Wankende Steine (Terrorist, 18. Mar 1998, 15:38:14):
+~#! rn=Terrorist rt=890231791 rg=d.polar
+~#! tid=890231791
+Aeh achja .... gilt nur fuer die Parawelt :)
+
+TERROR
+
+-----------------------------------------------------------------------------
+
+
+
+Der Stein rollt :) (Terrorist, 20. Apr 1998, 12:26:47):
+Sodele ... noch einmal nen paar Aenderungen in der Gruft ...
+Achja ... und eine abwertung ...
+
+Viel Spass
+TERROR
+
+P.S.:Fuer Lilith ist inzwischen ne Idee da, muss ich nurnoch umsetzen :)
+Danke fuer die Ideen :)
+
+-----------------------------------------------------------------------------
+
+
+
+Neuer RM (Boing, 15. Jun 1998, 16:53:43):
+Neuer Polar Regionsmagier ist ab sofort Bierchen, viel Glueck. :)
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neuer RM (Trekan, 15. Jun 1998, 20:16:19):
+~#! rn=Boing rt=897922423 rg=d.polar
+~#! tid=897922423
+Trekan kuehrt Bierchen zum aufsteiger des Jahres.
+Trekan winkt freudig zuy Bierchen rueber.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neuer RM (Teddy, 15. Jun 1998, 22:56:53):
+~#! rn=Boing rt=897922423 rg=d.polar
+~#! tid=897922423
+Grats, hat ja doch noch geklappt ;)
+
+Teddy
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Neuer RM (Asmodis, 17. Jun 1998, 18:47:50):
+~#! rn=Trekan rt=897934579 rg=d.polar
+~#! tid=897922423
+Wenn er so weitermacht, ist er in 2 Wochen Gott :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Neuer RM (Feuerwehr, 17. Jun 1998, 18:50:14):
+~#! rn=Asmodis rt=898102070 rg=d.polar
+~#! tid=897922423
+
+Feuerwehr wedelt mit einem 'Bierchen for Obergott'-Faehnchen.
+
+-----------------------------------------------------------------------------
+
+
+
+HiHo (Feuerwehr,  8. Jul 1998, 20:16:00):
+Hi!
+
+*Huestel*. Irgendwie hat Boing es nicht weiter erwaehnt, aber es gibt jetzt
+einen zusaetzlichen RM Polar. Und das bin ich. Aehaem.
+
+In dem Zusammenhang moechte ich gleich mal Werbung fuer diese wunderschoene
+Region machen:
+
+ An alle Magier unter euch: Kommt in den Polar, hier ist die Luft noch
+ sauber und die Atmosphaere gut. Habt Teil an dieser wirklich ...
+ coolen Region.
+
+Danke Danke.
+
+     Feuerwehr.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: HiHo (Catweazle,  8. Jul 1998, 20:17:46):
+~#! rn=Feuerwehr rt=899921760 rg=d.polar
+~#! tid=899921760
+Poeh, coole Gegend ....
+Alles leeres Geschwaetz. Die einzige Region wos richtig heiss her geht 
+ist ja wohl die Wueste .
+
+YTC
+
+-----------------------------------------------------------------------------
+
+
+
+Re: HiHo (Gando,  8. Jul 1998, 20:28:42):
+~#! rn=Feuerwehr rt=899921760 rg=d.polar
+~#! tid=899921760
+Wat kriege ich denn dafuer?
+
+Gando
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: HiHo (Feuerwehr,  8. Jul 1998, 20:29:40):
+~#! rn=Gando rt=899922522 rg=d.polar
+~#! tid=899921760
+
+Du wirst es tun, weil Papa es so sagt.
+
+   Feuerwehr (boese mit dem Finger winkend)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: HiHo (Gando,  8. Jul 1998, 20:36:41):
+~#! rn=Feuerwehr rt=899922580 rg=d.polar
+~#! tid=899921760
+Im Papatool steht aber wurzel
+
+Gando ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: HiHo (Ark,  8. Jul 1998, 20:42:33):
+~#! rn=Catweazle rt=899921866 rg=d.polar
+~#! tid=899921760
+Sorry, 112, aber wo Cat recht hat, hat er recht :-)
+Versau die Region nicht allzu sehr, ok?
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+WWW-Hauptseite (Swift, 13. Aug 1998, 01:01:40):
+Hi,
+
+die WWW-Hauptseite der Polarregion hat sich etwas geaendert.
+Weitere Aenderungen der angefuehrten Themen/Gebiete werden in absehbarer Zeit
+folgen.
+
+ ...fuer die, dies interessiert! :)
+
+swift
+
+-----------------------------------------------------------------------------
+
+
+
+Mal was neues :) (Tilly, 31. Aug 1998, 23:19:17):
+Ein daemonisches Hallo an die Seher unter Euch!
+Auf Euren Streifzuegen durch das wunderschoene Polargebiet wird Euch wohl
+etwas superneues und -tolles auffallen. Ich wuensche Euch frohes Sterben in
+der Para-Welt. Wo muesst Ihr selber rausfinden, nur soviel sei gesagt: Es ist
+keine komplett neue Gegend!
+Mit daemonischen Gruss,
+                              Tilly *schalt -Tod ein*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Mal was neues :) (Feuerwehr, 31. Aug 1998, 23:21:24):
+~#! rn=Tilly rt=904598357 rg=d.polar
+~#! tid=904598357
+
+Es ist in der Parawelt und es ist von Tilly.
+Zieht euch warm an. Geht nicht allein. Spart Munition.
+
+    Feuerwehr.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Mal was neues :) (Teddy, 31. Aug 1998, 23:22:54):
+~#! rn=Feuerwehr rt=904598484 rg=d.polar
+~#! tid=904598357
+und nehmt einen Magier eures Vertrauens (?) mit, damit er euch aus den
+buggenden Raeumen raustransen kann oder wie? ;)
+
+Teddy
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Mal was neues :) (Songoku,  4. Sep 1998, 10:22:17):
+~#! rn=Feuerwehr rt=904598484 rg=d.polar
+~#! tid=904598357
+And never deal with dragons!
+
+-----------------------------------------------------------------------------
+
+
+
+Matrixaenderung (Bendeigid,  9. Sep 1998, 10:26:47):
+Hallo zusammen,
+
+nur eine kurze Meldung, damit jeder seine tf-trigger umstellen kann:
+Die Matrix ist ein wenig geaendert, sollte jetzt weniger Lag machen (das merkt
+ihr eh nicht, aber insgesamt...) und ausserdem sind die Meldungen leicht
+veraendert (darum das mit den Triggern)
+Um dem grossen Gejammer vorzubeugen: das ist hoechstens die erste Aenderung,
+es werden noch ein paar folgen, die aber die Matrix selber nicht betreffen,
+wohl aber ihren Fundort.
+
+Z'par Servu,
+              Bendeigid
+
+P.S.: Nein, ich weiss nicht wann das fertig wird.....
+
+-----------------------------------------------------------------------------
+
+
+
+Nix fuer hohe Seher, aber... (Tilly, 30. Sep 1998, 21:02:54):
+Moin moin,
+
+dieser Artikel wendet sich an all die Spieler unter uns, denen die
+Hochebene auf die Dauer zu langweilig wird und die sich noch nicht
+nach Orkhausen zum metzeln trauen.
+Unweit eines Schildes welches auf ein winterliches Vergnuegen
+hinweist, ist etwas Neues fuer Euch.
+Habt viel Spass daran und sterbt mir nicht zu oft. Aber das sollte
+auch wirklich schwer werden.
+
+ - Tilly -
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Nix fuer hohe Seher, aber... (Feuerwehr, 30. Sep 1998, 21:04:40):
+~#! rn=Tilly rt=907182174 rg=d.polar
+~#! tid=907182174
+Hi!
+
+Ich wollte an dieser Stelle nur kurz Boing und auch Rumata fuer ihre schnelle
+und unbuerokratische Hilfe bei der Eintragung der Dutzenden von FPs danken
+:-).
+
+Die Welt mag in Truemmer fallen, aber auf unsere Goetter ist .. aehm.
+
+   Feuerwehr.
+
+-----------------------------------------------------------------------------
+
+
+
+Wackere Recken gesucht! (Tilly,  4. Okt 1998, 21:34:28):
+Moin moin,
+
+ich habe doch tatsaechlich noch zwei gemeine Kreaturen gefunden,
+die ihren Dienst in Para-Moulokin versehen moechten.
+Wackere Helden aller Gilde (obwohl natuerlich jeder weiss, es gibt nur
+eine Gilde die Helden hervorbringt >:), kommt her, versucht Euer
+Glueck oder sterbt.
+
+ - Tilly -
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Wackere Recken gesucht! (Grimmborn,  4. Okt 1998, 21:50:51):
+~#! rn=Tilly rt=907529668 rg=d.polar
+~#! tid=907529668
+Darf ich auch mal? Jajaja?
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Wackere Recken gesucht! (Key,  5. Okt 1998, 08:19:18):
+~#! rn=Tilly rt=907529668 rg=d.polar
+~#! tid=907529668
+*gaehn*
+Noch mehr solcher Luschen? .)
+
+Key kitzelt Tilly :9
+
+-----------------------------------------------------------------------------
+
+
+
+Wollmantel (Bendeigid,  5. Okt 1998, 11:29:18):
+Hi Neskayafreunde,
+
+es gab wohl beim Wollmantel Probleme, wenn man mit ihm gestorben ist. Selbige
+sollten jetzt weg sein.
+
+Z'par Servu,
+             Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Fuer Neskayatouristen (Bendeigid,  7. Okt 1998, 12:37:10):
+Hallo liebe Leute,
+
+die beiden Kneipiers in Neskaya haben mich darueber informiert, dass sie ihr
+Angebot den Neuerungen der Kneipeninnung des MorgenGrauen angepasst haben.
+Ich gebe diese information mal wertneutral weiter....
+
+Z'par Servu,
+           Dom Bendeigid, Bewahrer von Neskaya
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Fuer Neskayatouristen (Bendeigid,  8. Okt 1998, 13:50:10):
+~#! rn=Bendeigid rt=907756630 rg=d.polar
+~#! tid=907756630
+Nochwas Neues, oder besser was altes:
+Der Falkner verkauft wieder Falken :)
+
+Viel Spass, z'par Servu,
+                        Bendeigid
+y
+
+-----------------------------------------------------------------------------
+
+
+
+Passaenderung (Bendeigid,  9. Okt 1998, 12:58:44):
+Eine kleine Warnung: Der Pass hat sich ein wenig geaendert. 
+Ich warne sicherheitshalber mal davor, unbedarft "wie bisher" zu kamepfen, da
+es zu boesen (wenn auch meiner Meinung nach logischen) Ueberraschungen kommen
+koennte....
+
+Nein, der Weg hat sich NICHT gaendert.
+
+Z'par Servu,
+                Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+chaosfrosch (Bierchen, 21. Nov 1998, 03:18:47):
+an dem chaosfrosch hat sich eine kleinigkeit geaendert. obwohl, falsch. der
+ist noch so, wie er immer war, nur sollte er jetzt so sein, wie mupfel ihn
+sich vorgestellt hatte. das ist uebrigens mit mupfel abgeklaert und sollte ich
+dabei irgendwie einen fehler gemacht haben, wird er mir das sicherlich selbst
+sagen. flames nach /dev/null.
+- Bierchen -
+
+-----------------------------------------------------------------------------
+
+
+
+Re: chaosfrosch (Key, 21. Nov 1998, 22:19:41):
+~#! rn=Bierchen rt=911618327 rg=d.polar
+~#! tid=911618327
+Naja Fehler net unbedingt ...
+Aber koenntest es vielleicht so machen das man net vollgescrollt wird von
+seinem getanke?
+Also ich halte 2 Seiten fuer leicht uebertrieben.
+
+Key
+
+-----------------------------------------------------------------------------
+
+
+
+Neue Eismine (Tsunami, 24. Nov 1998, 14:51:08):
+Es ist soweit!
+
+In der Polarregion wurde in letzer Zeit fleissig gearbeitet. In der Naehe
+von Zacharias Eispalast findet man nun eine interessante, tief in das
+ewige Eis gegrabene Eismine. Was genau abgebaut wird, kann man am 
+besten vor Ort und Stelle besichtigen. Tief unten in der Mine sollen
+uebrigens schreckliche Monster hausen. Ein paar Gauner koennten sich
+ebenfalls in der Mine eingenistet haben. Deshalb werden speziell mutige 
+Kaempfer und weise Zauberer gesucht, um den Vorkommnisen auf den Grund zu 
+gehen. Mehr darueber koennt ihr bei euren entsprechenden Gilden erfahren.
+Alle anderen sind natuerlich auch herzlich eingeladen, es ist fuer alle
+etwas da ;)
+
+Laut gut unterrichteten Kreisen soll es keine Stellen geben, an denen man 
+einfach so und total unmotiviert sein Leben lassen kann: hier wird man noch
+persoenlich und in Handarbeit von gutgelaunten Monstern auseinandergenommen.
+
+
+Viel Spass wuenscht euch:
+
+Tsunami (freudig auf die 1. Kerbe wartend)
+
+-----------------------------------------------------------------------------
+
+
+
+Vorsicht! Intelligentere Eisunholde :) (Tsunami, 26. Nov 1998, 18:10:27):
+Huhu!
+
+Wollte nur bekanntgeben, dass die Eisunholde in der Eismine nun nicht mehr
+einfach so zuschauen, wie sie einzeln abgemetzelt werden. Dafuer wird es
+in naechster Zeit was zu holen geben, dort.
+
+Ich halte euch auf dem laufenden,
+
+
+Tsunami.
+
+-----------------------------------------------------------------------------
+
+
+
+Eismine -- kleiner Zwischenbericht. (Tsunami,  2. Dez 1998, 19:16:03):
+Huhu Leute,
+
+Erst mal vielen Dank fuer die fleissigen Rep-File-Schreiber unter
+Euch. Soweit ich gekommen bin, habe ich alles eingebaut, was noch
+so gewuenscht wurde, wenn's nicht gerade total schraeg war :)
+
+Eine wichtige Neuerung betrifft die Eiselfenwaechter: auf vielseitigen Wunsch
+sind sie nun etwas weniger stabil. Zusaetzlich kann man nun versuchen, an 
+ihnen vorbeizutaenzeln. Kleinere Leute haben natuerlich eine groessere Chance,
+uebersehen zu werden...
+
+Haltet weiterhin eure Ohren warm,
+
+Tsunami.
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Eismine -- kleiner Zwischenbericht. (Acrimon,  2. Dez 1998, 20:56:20):
+~#! rn=Tsunami rt=912626163 rg=d.polar
+~#! tid=912626163
+> Eine wichtige Neuerung betrifft die Eiselfenwaechter:
+> auf vielseitigen Wunsch sind sie nun etwas weniger stabil.
+
+Stuerzen sie jetzt oefter ab? :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Eismine -- kleiner Zwischenbericht. (Belgariad,  2. Dez 1998, 21:21:52):
+~#! rn=Tsunami rt=912626163 rg=d.polar
+~#! tid=912626163
+Aehm ich wollte eigentlich das die staerker werden.
+
+Belgariad sterbend.
+
+-----------------------------------------------------------------------------
+
+
+
+Neues aus der Eismine (Tsunami,  7. Dez 1998, 14:57:48):
+Huhu,
+
+dass immer mehr Leute in die Eismine kommen, haben auch die geschaefts-
+tuechtigen Zwerge erkannt. Als erster hat ein findiger Zwerg eine
+kleine Imbissbude aufgemacht.
+
+Frohes Metzeln weiterhin,
+
+Tsunami.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neues aus der Eismine (Novastorm,  7. Dez 1998, 14:58:47):
+~#! rn=Tsunami rt=913042668 rg=d.polar
+~#! tid=913042668
+Iiiiiih, ne Zwergenkneipe ?
+
+    Nova, ruft zum Boykott auf .)
+--> schmarrn
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Neues aus der Eismine (Tsunami,  7. Dez 1998, 15:00:38):
+~#! rn=Novastorm rt=913042727 rg=d.polar
+~#! tid=913042668
+Nix Kneipe, bloss ein kleiner Bauchladen :) und lasst euch von dem kleinen
+Zwerg nicht ueber's Ohr hauen :)
+
+Tsunami
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Neues aus der Eismine (Sharia,  7. Dez 1998, 15:11:48):
+~#! rn=Tsunami rt=913042838 rg=d.polar
+~#! tid=913042668
+Zwerge hauen doch NIE jemanden uebers Ohr !!
+
+Sharia
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Neues aus der Eismine (Ringor,  7. Dez 1998, 15:13:00):
+~#! rn=Sharia rt=913043508 rg=d.polar
+~#! tid=913042668
+Wie willst ausgerechnet *Du* das beurteilen?
+
+Ringor. 
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Neues aus der Eismine (Morgoth,  7. Dez 1998, 15:13:37):
+~#! rn=Ringor rt=913043580 rg=d.polar
+~#! tid=913042668
+Genau, Zwerge sind dazu da, sie zu killen, damit sie nicht mehr lange stinken.
+
+M*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Neues aus der Eismine (Hreidmar,  7. Dez 1998, 15:14:23):
+~#! rn=Ringor rt=913043580 rg=d.polar
+~#! tid=913042668
+Ganz einfach, Zwerge kommen nicht an die Ohren der anderen heran. Wie also
+wollen sie dann noch "ueber" das Ohr hauen? ;-)
+
+Nein, nicht die Axt!
+
+Hreidmar, schonmal in Deckung springend.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Neues aus der Eismine (Bendeigid,  7. Dez 1998, 15:14:53):
+~#! rn=Morgoth rt=913043617 rg=d.polar
+~#! tid=913042668
+Hm, das mit dem uebers Ohr hauen haette ich eher mit ihrer laecherlich
+geringen Reichweite erklaert. An was ausser Kniescheiben kommen die denn ran?
+
+Z'par Servu,
+            Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Neues aus der Eismine (Sharia,  7. Dez 1998, 15:16:34):
+~#! rn=Bendeigid rt=913043693 rg=d.polar
+~#! tid=913042668
+wenn wir bei den Kniescheiben anfangen eure langen Koerper zu kuerzen sind wir
+gaaaanz schnell bei den Ohren
+Sharia
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Neues aus der Eismine (Ringor,  7. Dez 1998, 15:16:46):
+~#! rn=Bendeigid rt=913043693 rg=d.polar
+~#! tid=913042668
+Was meinst Du wohl, wozu ein richtiger Zwerg immer eine gut geschaerfte Axt
+mitfuehrt?
+
+Erst wird der hochgewachsene Gegner "gefaellt", dann, einmal am Boden liegend,
+weiterbearbeitet.
+
+Ringor denkt . O O(warum diese langbeinigen Geschoepfe immer alles
+verkomplizieren muessen ...)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Neues aus der Eismine (Novastorm,  7. Dez 1998, 15:17:55):
+~#! rn=Ringor rt=913043806 rg=d.polar
+~#! tid=913042668
+Novastorm denkt . o O (Zwerge....)
+Wer laesst sonen doofen Stinker schon bis zu den Kniescheiben...
+Selbst schuld!
+ 
+    Nova, unterlaeuft Zwerge aus Prinzip nicht...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Neues aus der Eismine (Morgoth,  7. Dez 1998, 15:18:25):
+~#! rn=Ringor rt=913043806 rg=d.polar
+~#! tid=913042668
+also Du widersprichst dir selbst:
+'Ringor denkt . O O(...' 
+Du bist Zwerg, Du kannst nicht denken...
+
+M*
+
+-----------------------------------------------------------------------------
+
+
+
+Noch was neues in der Naehe der Eismine (Tsunami,  7. Dez 1998, 15:33:45):
+Huhu,
+
+An der Anlegestelle fuer Frachtschiffe wurde heute Nachmittag ein kleiner
+Marktstand eroeffnet.
+
+
+Tsunami (heute besonders fleissig).
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Noch was neues in der Naehe der Eismine (Azzuro,  7. Dez 1998, 18:13:03):
+~#! rn=Tsunami rt=913044825 rg=d.polar
+~#! tid=913044825
+Da ist der Standort gut gewaehlt. Bei dem Fischgestank faellt der Zwerg
+hinterm Tresen nicht mehr so auf.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Noch was neues in der Naehe der Eismine (Lug,  8. Dez 1998, 02:11:06):
+~#! rn=Azzuro rt=913054383 rg=d.polar
+~#! tid=913044825
+
+Bah Humbug,
+
+Spitzohren lassen sich leicht auf Zwegengroesse kuerzen und diverse Menschen
+sollten sich in die KLerikergilde verzischen...
+
+Hasse es, wenn sie ueber meinen Ziehpappi herfallen...
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Neues aus der Eismine (Tsunami,  8. Dez 1998, 15:28:05):
+Huhu Leute,
+
+
+Zuerst muss ich ankuendigen, dass in der zweiten Etage der Eismine eine
+Treppe durch die ewigen Bewegungen im Eis verschoben wurde und zwar um
+einen Raum. Alle Leute, die bis jetzt am Zeichnen einer brauchbaren Karte
+gescheitert sind, duerfen mir sanft ans Schienbein treten :)
+Zum Glueck bin ich die naechsten zwei Wochen weg...
+Als Entschuldigung fuer diesen Patzer darf man nun die Karte im Verwaltungs-
+buero lesen. Selbstverstaendlich haben die Eiselfen nur eine Aufzeichnung
+der Mine bis zu dem Punkt, wo ihr Stosstrupp hopps genommen wurde. Die
+Aenderung der Treppe ist uebrigens in Raum 22.
+
+
+Ok, und nun kommt was Neues: Der Koenig der Eisunholde traegt nun seinem 
+Stand entsprechend eine nette Kopfbedeckung. Damit man die aber nicht zu
+einfach bekommt, wurde der Raum darunter etwas 'angepasst'... :)
+
+Viel Spass weiterhin wuenscht euch
+
+
+Tsunami
+
+
+-----------------------------------------------------------------------------
+
+
+
+Weihnachtsgeschenk vom lieben Tsunami :) (Tsunami, 23. Dez 1998, 11:01:39):
+Hi folks,
+
+Die Schreckenswesen sind nun so ausgeruestet, wie es von Anfang an geplant
+war. Freut euch, oder auch nicht, jenachdem ;->>>>>>
+
+      >>> Tsunami <<<
+
+-----------------------------------------------------------------------------
+
+
+
+PEM (Para-Eismine) eroeffnet! (Tsunami, 27. Jan 1999, 15:48:22):
+Hallihallo ihr lieben Leut,
+
+mir ist zu Ohren gekommen, dass die Schreckenswesen eine Attacke auf das
+geliebte Morgengrauen planen. Von der Parallelwelt aus haben sie mittlerweile
+eine kleine Armee williger Diener in die Eismine geschickt, um ihr finsteres 
+Vorhaben zu verwirklichen.
+
+Metzelt alles nieder, was euch vors Messer laeuft, und jagt die finstren
+Schergen wieder in ihre Schreckensdimension zurueck. 
+Aber seid gewarnt: sind die Monster zu stark, seid ihr zu schwach ... ;)
+Will sagen: formiert euch, gruppiert euch, bildet Teams.
+
+Das war's eigentlich schon. Viel Spass beim Trophaeensammeln.
+
+
+  >>Tsunami.
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Der Frosch (Mupfel,  7. Feb 1999, 21:56:35):
+Da ich gerne mal wegrenne im Kampf, hat mir Mupfel im Kampf wieder das "alte
+Verhalten" gesetzt.
+
+Der Frosch
+
+-----------------------------------------------------------------------------
+
+
+
+Verrinfalken (Bendeigid, 10. Feb 1999, 14:52:43):
+Liebe Falkenfreunde,
+
+aufgrund von hohen Verlusten bei den Falken, hervorgerufen durch ungewollte
+Angriffe ("toete alle") sind die Falken nun ein wenig schlauer und
+(hoffentlich) immun gegen dies. Ausserdem bei "Flaechenspells" wie Erdbeben
+usw.
+Wir hoffen, dass nun mehr interessierte Falkenfreunde sich ein solch herrliche
+Tier zulegen!
+Wer will schon Maeuse? Oder Papageien?
+
+i.A. Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Verrinfalken (Morgoth, 10. Feb 1999, 15:56:32):
+~#! rn=Bendeigid rt=918658363 rg=d.polar
+~#! tid=918658363
+Dann entschaerf mal Deine bloede Banshee, die is nervig. SO bekommst Du nie
+Leute dazu, Deine Falken zu kaufen.
+
+M*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Verrinfalken (Bendeigid, 10. Feb 1999, 16:00:13):
+~#! rn=Morgoth rt=918662192 rg=d.polar
+~#! tid=918658363
+Wie war das? Irgendwas mit "Glashaus" und "Steinen" ;)
+
+Ne, aber mal im Ernst, da waren ein zwei Bugs in der Banshee, netterweise
+einer von Anfang an, und die hab ich ausgebaut. Dabei aber nen anderen
+eingebaut; kurz: in den letzten Zwei Wochen oder so benahm das Tierchen sich
+nicht unbedingt so wie sie sollte. JETZT gehts aber wieder ;)
+
+Z#Par Servu,
+             Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Verrinfalken (Mahatmu, 10. Feb 1999, 16:35:23):
+~#! rn=Bendeigid rt=918662413 rg=d.polar
+~#! tid=918658363
+Wer fuerchtet schon die Banshee? :)))
+*saus*
+
+Mahatmu
+aehm ... Gloin
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Verrinfalken (Alpha, 10. Feb 1999, 23:31:27):
+~#! rn=Mahatmu rt=918664523 rg=d.polar
+~#! tid=918658363
+Jajaja Gloin, die Banshee ist schneller als Saus (zumindest schneller als das
+Magdeburger Netzlag-Saus) und papalarisysiriert.
+Aber viel Schaden macht sie ja nicht.
+Alpha.
+
+-----------------------------------------------------------------------------
+
+
+
+Neues aus dem Polargebiet (Tsunami,  2. Mar 1999, 19:13:56):
+Der Saphiraubbau in der Eismine laeuft nun auf Hochtouren. Damit die Saphire
+moeglichst effizient in das ganze Morgengrauen verschifft werden koennen,
+wurde eine gewaltige Hafenanlage an der Kueste errichtet. Mittlerweile
+hat sich eine regelrechte Siedlung um den Hafen herum gebildet, mit einem
+eigenen Markt, Hafenkneipen, Laeden und einem Postamt. Der kleine Marktstand
+an der Kueste ist also einer ganzen Stad gewichen.
+
+Besondere Sehenswuerdigkeiten sind der Aussichtsturm und der 
+Marktplatz mit den drei grossen Statuen, die zu Ehren der letzen
+Schreckensdrachentoeter aufgestellt wurden.
+
+Verschiedene Schiffsrouten laufen nun ueber den Saphirhafen und eine neue
+Handelsroute nach Moloukin wurden errichtet.
+
+Kommet alle, sehet und staunet!
+
+
+fuer die Hafenverwaltung,
+
+  >>Tsunami.
+
+-----------------------------------------------------------------------------
+
+
+
+Leben in der Tundra (Noel, 25. Mar 1999, 04:25:11):
+Hi!
+
+Oestlich der Lilientundra wurde kuerzlich ein neues Gebiet entdeckt.
+
+Leider ist es noch nicht erforscht aber man sagt, dass es dort manches
+zu sehen gibt!
+
+Viel Spass,
+Noel
+
+-----------------------------------------------------------------------------
+
+
+
+Neues von der Para-Eismine! (Tsunami,  7. Mai 1999, 10:58:39):
+Hallo Liebhaber harter Herausforderungen,
+(Waschlappen und Weicheier->Bitte nicht weiterlesen!)
+
+Nach harten und zaehen Verhandlungen konnten sich die verantworlichen Goetter
+der Schreckensdimension endlich dazu durchringen, dem Schreckensdrachen
+einen wirklich netten Gegenstand mit auf den Weg zu geben.
+
+Es lohnt sich nun also endlich, nicht nur wegen Ruhm und Ehre (siehe
+Statue in der Eissiedlung) den Schreckensdrachen zu bekaempfen, sondern auch
+der Stats wegen (huch, hoffentlich habe ich nicht zuviel angedeutet...).
+
+
+Frohes Massensterben wuenscht Euch wie immer, 
+
+Der nette Tsunami. 
+
+-----------------------------------------------------------------------------
+
+
+
+Der Frosch ist weg (Mupfel,  4. Jun 1999, 21:26:01):
+Hallo
+
+Der Chaosfrosch ist jetzt weg. Im Zug der Umstellung der Chaosgilde kommt der
+auf einen neuen Standplatz. Damit der Platz aber nicht ganz leer bleibt...
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Moulokin, Elitesoldaten (Pra,  8. Jun 1999, 13:58:21):
+Moin!
+
+Sind die Elitesoldaten in Moulokin abgehaengt worden? Ich hab' sie
+lange nicht mehr gesehen...
+
+Pra.
+
+-----------------------------------------------------------------------------
+
+
+
+Kilghard-Pass (Bendeigid,  9. Jun 1999, 14:17:57):
+Wegen unerhoert vieler (erklaerlicher) Todesfaelle und einem zuuuu
+magierfreundlichen MG-Random habe ich den Pass GRUENDLICH entschaerft.
+Doch, man kann auch weiterhin erfrieren, und auch sonstige Gemeinheiten sind
+weiter aktiv, aber bei dem beliebten Kampf mit meinem Haustier sind gewisse
+Gefahren jetzt.... entschaerft.
+
+Z'par Servu,
+        Bendeigid
+
+P.S.: Flames an /dev/null, Lob an mich, Abnregung kam vom Kammffzwaersch
+
+-----------------------------------------------------------------------------
+
+
+
+Neues aus der Para-Eismine (Tsunami, 10. Jun 1999, 11:16:45):
+Liebe Freunde :))
+
+Ich habe mal wieder etwas "Housekeeping" an der Eismine gemacht und mein
+Repfile abgearbeitet. An dieser Stelle ein herzliches Dankeschoen an alle
+fleissigen Tyopsucher und Ideenbringer.
+
+OK, zuerst was kleines: Nachdem ich dem Kampfzwerg einen dicken Verweis
+erteilt habe und ihm dann noch einen kraeftigen Tritt in den Hintern 
+verpasste, hat er endlich den Kaempferkragen angezogen und kaempft nun
+noch etwas konzentrierter..... :)))  Das Gleiche gilt fuer den Saphirfresser.
+
+Nun zum neuen:
+
+Die schrecklichen Vorkommnisse ganz unten in der Eismine -- ihr wisst, wo
+ich meine -- haben ein paar Zauberer auf den Plan gerufen (resp. ich habe 
+sie direkt von der Unsichtbaren Universitaet einfliegen lassen), die mit 
+neuartigen magischen Messinstrumenten herumhantieren. Das Zeugs, dass sie
+dabeihaben, koennte das Metzeln in der Eismine erheblich erleichtern....
+
+Mehr verrate ich nicht.
+
+Viel Spass in der Para-Eismine.....
+
+
+Tsunami.
+ 
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Neues Zeugs fuer die Chaoten in der Eismine (Tsunami, 10. Jun 1999, 15:48:46):
+Huhu fleissige Metzler, 
+
+Chaos ist ueber die Eismine hereingebrochen. Ihr findet nun in der Eismine
+(Normal und Para) plus Umgebung 5 Chaoskomponenten. Viel Spass beim Suchen
+und Zerstoeren!
+
+
+i.A. des Chaos: Tsunami (mal wieder so richtig fleissig).
+
+P.S. eine Komponente, und das darf ich verraten, besitzt der Schreckensdrache,
+der immer noch laessig in seiner Schreckensdimension hockt und darauf wartet,
+dass ihn mal ein Chaot herausfordert ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Moulokin, Elitesoldaten, die zweite. (Pra, 16. Jun 1999, 12:20:43):
+Moin nochmal!
+
+Erneute Frage (liest hier kein Polar-Mag?):
+
+Sind die Elitesoldaten aus Moulokin verbannt worden? Kommen sie
+irgendwann wieder? 
+
+Pra. Vermisst sie.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Moulokin, Elitesoldaten, die zweite. (Householder, 16. Jun 1999, 12:31:24):
+~#! rn=Pra rt=929528443 rg=d.polar
+~#! tid=929528443
+hm soweit ich mich erinnere waren die den kaempfern zu hacht ...
+vielleicht hat sich bierchen ihrer erbarmt und sie einfach abgeklemmt :-)
+HH
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Moulokin, Elitesoldaten, die zweite. (Bierchen, 17. Jun 1999, 18:37:04):
+~#! rn=Pra rt=929528443 rg=d.polar
+~#! tid=929528443
+Hiho,
+
+auch ein Elitesoldat hat scheinbar ein Recht auf Urlaub.
+Nachdem ich von deren Gewerkschaft angeschissen wurde, hatte
+ich mich dazu entschlossen, sie ein paar Tage auf Kosten der
+Zentralbank zum Ballermann zu schicken. Wenn auch etwas
+verkatert, nun sind sie wieder zurueck.
+
+Aber die naechste Tarifrunde kommt bestimmt. Aus gut unterrichteten
+Kreisen weiss ich, dass sie demnaechst Loehne verlangen wollen und deren
+Weiterzahlung im Krankheitsfall, Risikozuschlaege fuer Nachtarbeit
+fordern und sogar ein Recht auf Schwangerschaftsurlaub soll im
+Gespraech sein...
+
+Die werden echt immer frecher, diese Lumpen...
+Gruss,
+       - Bierchen -
+
+-----------------------------------------------------------------------------
+
+
+
+Neuigkeiten aus dem Polar (Feuerwehr, 17. Jun 1999, 20:32:19):
+Merkwuerdige Dinge gehen vor im kalten Polar.
+
+Erdbeben erschuettern das Gebiet noerdlich der Eiswueste. Waren sie vor
+kurzem noch kaum wahrzunehmen, erschuettern sie den Polar nun in seinen
+Grundfesten. Es scheint fast so, als wuerden sich gewaltige Dinge unter
+dem Eis bewegen, ja erheben.
+
+Geruechte verbreiten sich mit grosser Geschwindigkeit: Die Chaoten haben
+ein maechtiges Wesen beschworen, welches die Welt verschlingen wird. Die
+Chaoten haben ein maechtiges Wesen beschworen, welches sie selbst
+verschlingen wird. Die Chaosgilde wird von himmlischen Maechten angegriffen.
+Die Chaosgilde zerfaellt, Stein fuer Stein. Die Chaosgilde wird verlegt,
+Stein fuer Stein. Die Kleriker ziehen in den Polar, um der Gilde ein fuer
+alle Mal den Garaus zu machen. Alle Chaoten haben sich in Daemonen verwan-
+delt und leben nun tief unter der Erde. Die Daemonen haben sich gewehrt und
+ihre Herrscher vernichtet. Die Chaoten beschwoeren ein gewaltiges Monster,
+welches die gesamte Klerus-Gilde vom Erdboden vertilgen soll.
+
+Die Verunsicherung ist gross. Tief in der Wueste formiert sich eine Reihe  
+maechtiger Krieger und Priester, um den Ereignissen auf den Grund zu gehen
+und drohendes Unheil abzuwenden. Sie ziehen gen Polar und werden nie wieder
+gesehen.                                
+
+Die Chaoten indes schweigen, verharren in tiefer, boesartiger,
+beunruhigender Stille.
+
+Die Beben werden staerker. Ganz offensichtlich geschehen Dinge in dieser
+Gilde. Ganz offensichtlich scheint sie zu zerfallen. Was bewegt sich, was
+erhebt sich dort?
+
+Die naechsten Tage werden es ans Licht des Tages bringen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neuigkeiten aus dem Polar (Trug, 17. Jun 1999, 21:18:11):
+~#! rn=Feuerwehr rt=929644339 rg=d.polar
+~#! tid=929644339
+nette geschichte.
+
+Trug auch einzeilernd. 
+
+(waere nett, wenn das die spieler auch live mitmachen koennten)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Neuigkeiten aus dem Polar (Sting, 17. Jun 1999, 21:18:43):
+~#! rn=Trug rt=929647091 rg=d.polar
+~#! tid=929644339
+Da Du keine Ahnung von nix hast, aber davon jede Menge, sei lieber still :)
+
+Sting, arrogant.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Neuigkeiten aus dem Polar (Padreic, 17. Jun 1999, 21:21:07):
+~#! rn=Sting rt=929647123 rg=d.polar
+~#! tid=929644339
+Tststs.. nicht so unqualifiziert bitte.
+Wenn hier ein Spieler seinen Wunsch aeussert dann sollte man das tolerieren
+und versuchen ihn diesem zu erfuellen, zumindest wenn es darin besteht das ihm
+erst ein Gebaeude auf den Kopf faellt, anschliessend zahlreiche Kleriker ihn
+wiederholt mehrfach verkloppfen und zu guter letzt einige Daemonen ihm auch
+noch einige Tode verschaffen. Alles in allem sicher einige dutzend Tode...
+Wie stehts? Noch interesse Trug?
+
+Padreic, immer hoeflich und zuvorkommend.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Neuigkeiten aus dem Polar (Feuerwehr, 17. Jun 1999, 21:21:08):
+~#! rn=Trug rt=929647091 rg=d.polar
+~#! tid=929644339
+Also.
+
+Ist Sting heute arrogant.
+
+Na klar kannst Du da live mitmachen. Gehe folgendermassen vor.
+1) Bewege Dich in die Wueste.
+2) Poliere Deinen Heiligenschein
+3) Bewege Dich in Richtung Polar
+4) Verschwinde auf mysterioese Weise
+   Hinterlasse keine Spuren.
+   Kehre niemals zurueck.
+
+  Feuerwehr.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Neuigkeiten aus dem Polar (Anatol, 17. Jun 1999, 21:22:01):
+~#! rn=Feuerwehr rt=929647268 rg=d.polar
+~#! tid=929644339
+Ist es zuviel verlangt, wenn ich darum bitte, dass Trug live mitmachen
+MUSS? :o) 
+
+Anatol - heute mal lieb! 
+
+
+-----------------------------------------------------------------------------
+
+
+
+Neuigkeiten aus dem Polar (Feuerwehr, 18. Jun 1999, 17:25:24):
+Ein gewaltiges Krachen erfuellte gerade den Polar.
+
+Und nun bricht etwas aus dem ewigen Eis noerdlich der Chaosgilde. Etwas
+dunkles. Etwas schwarzes. Etwas bedrohliches. Und es wird groesser, als mehr
+und mehr aus dem Eis zum Vorschein kommt. Gewaltige Beben erschuettern den
+Polar in seinen Grundfesten.
+
+Und wieder erfuellen die wildesten Geruechte das Morgengrauen, doch einige
+herrschen vor. Man spricht von einem gewaltigen, schwarzen Vulkan, welcher
+sich dort erhebt und das Morgengrauen in Staub und Asche huellen wird, es in
+ewige Finsternis stuerzen wird, und alles Leben auf ihm zum Erloeschen
+bringen wird. Man erzaehlt sich, Kruuolq und Wuqour, die Oberhaeupter der   
+Gilde, waehren selbst beim Vulkan gewesen, als er durchgebrochen ist. Man
+erzaehlt sich von einer langen Karawane uebelster Daemonen, welche sich von 
+der Chaos-Festung bis zum Vulkan zieht. Hunderte von Daemonen, welche Dinge 
+zum Vulkan schleppen, um diese zu opfern. Die Festung des Chaos soll sich   
+zuesehends leeren. 
+
+Und sie wird fallen, so sagt man. Sie, die den Unwillen des Polar seit
+Anbeginn der Zeit getrotzt hat, soll lediglich von boesartigen Maechten noch 
+aufrecht gehalten werden, und auch dies nicht mehr lange. Die Chaoten
+wuerden sich selbst toeten, sich selbst opfern, um alles Leben
+auszuloeschen, um den Tag des juengsten Gerichts herbeizufuehren und ein
+fuer alle Mal zu beweisen, dass es kein solches gibt, denn das Chaos
+herrscht.
+
+Und der pechschwarze Berg waechst. Die Karavane der Daemoen bringen weiter
+Dinge zu ihm, und die Chaosgilde erbebt und erbebt.
+
+Willkommen in den letzten Tagen. Dies ist die Endzeit. Erwartet den Morgen,
+denn dann wird dieses Kapitel vollendet, und es koennte das letzte sein.
+
+-----------------------------------------------------------------------------
+
+
+
+Neuigkeiten aus dem Polar. (Feuerwehr, 19. Jun 1999, 16:20:44):
+Ein letztes, gewaltiges Beben erschuettert den Polar und verhallt.
+
+Tiefe Stille senkt sich auf das Morgengrauen. Die Welt haelt den Atem an,
+wartet. Es liegt eine Spannung in der Luft, die man fast fuehlen kann. Etwas
+wird noch passieren. Etwas ... schlimmes?
+
+Die Festung des Chaos bricht zusammen. Wie ein Kartenhaus zerfallen ihre
+Reste. Gaenzlich unspektakulaer, aber auf eine ganz merkwuerdig grandiose
+Weise stuerzt sie ein. Es ist, als haette jemand einen Schalter betaetigt,
+wie etwa um das Licht auszuschalten.
+
+In kuerzester Zeit erobert sich der Polar sein Gebiet zurueck und huellt die
+Ruinen der Gilde in eine Decke aus Schnee und Eis. Still und bedrohlich
+liegt sie dort, waehrend durch ihre Ruinen ein Weg weiter nach Norden
+fuehrt. Und dort im Norden ragt der gewaltige schwarze Berg auf, kein
+Vulkan, sondern ein Eisberg aus pechschwarzem Eis, drohend aufragend wie
+ein Fingerzeig, der Tod und Verwuestung prophezeit.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Neuigkeiten aus dem Polar (Wim, 22. Jun 1999, 12:29:16):
+~#! rn=Feuerwehr rt=929647268 rg=d.polar
+~#! tid=929644339
+Na klar kannst Du da live mitmachen. Gehe folgendermassen vor.
+1) Bewege Dich in die Wueste.
+STOP RUN.
+
+Wueste, tolle Region...
+Wim, verfaellt wieder in CoBOL Syntax.
+
+-----------------------------------------------------------------------------
+
+
+
+RM-Polar (Bierchen, 23. Jun 1999, 02:45:34):
+Hiho,
+
+momentan gibt es nur einen RM-polar und das ist Feuerwehr.
+ich bin soeben in rente gegangen...
+einige von euch werden aufatmen, einige werden jubeln und der rest
+wird wahrscheinlich diesen tag im kalender rot ankreuzen...
+aber freut euch nicht zu frueh, 112 kann auch gemein sein :)
+was bedeutet das fuer euch? na, was schon, alle bug-meldungen
+sollten ab sofort nur noch an das rote, kleine auto mit dem
+blauen licht gehen :)
+
+gruss,
+        - Bierchen -
+
+-----------------------------------------------------------------------------
+
+
+
+Re: RM-Polar (Lug, 23. Jun 1999, 04:04:58):
+~#! rn=Bierchen rt=930098734 rg=d.polar
+~#! tid=930098734
+
+Huch?
+
+Haste es endlich erkannt? Du bist zu sehr am Tattern, um noch was
+vernuenftiges zu proggen, stimmts?
+Ab ehrlichgesagt, ich bin ja ueber jeden Abgang froh...
+
+Hau doch ab!
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: RM-Polar (Jasper, 23. Jun 1999, 04:07:51):
+~#! rn=Lug rt=930103498 rg=d.polar
+~#! tid=930098734
+nuja frueher oder spaeter kommt jeder magier zu dem schluss und idlet und
+dummsuelzt nur noch ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: RM-Polar (Jasper, 23. Jun 1999, 04:08:43):
+~#! rn=Jasper rt=930103671 rg=d.polar
+~#! tid=930098734
+...
+
+jasper proggt nur noch gegen rl-sex :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: RM-Polar (Lug, 23. Jun 1999, 04:09:19):
+~#! rn=Jasper rt=930103723 rg=d.polar
+~#! tid=930098734
+
+Ach deshalb proggst Du nix mehr seit Jahren...
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: RM-Polar (Jasper, 23. Jun 1999, 04:09:49):
+~#! rn=Lug rt=930103759 rg=d.polar
+~#! tid=930098734
+jau :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: RM-Polar (Lug, 23. Jun 1999, 04:11:07):
+~#! rn=Jasper rt=930103789 rg=d.polar
+~#! tid=930098734
+
+Eroeffnete mal einer ein Spendenkonto? Poppen fuer Jasper?
+
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: RM-Polar (Bierchen, 23. Jun 1999, 04:12:21):
+~#! rn=Jasper rt=930103671 rg=d.polar
+~#! tid=930098734
+jo, ich fakezappe jetzt nur noch. fuer so eine abstufung, die zudem noch
+freiwillig war, habe ich mind. 10-100 oder sogar noch mehr fakezaps frei :)
+das bringt das so mit sich, steht im kleingedruckten des mag-vertrags, auf der
+rueckseite, unten rechts :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: RM-Polar (Lug, 23. Jun 1999, 04:13:39):
+~#! rn=Bierchen rt=930103941 rg=d.polar
+~#! tid=930098734
+
+Hm,
+
+warum nur FAKE? Hau rein, lass zappen ;)
+
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: RM-Polar (Bierchen, 23. Jun 1999, 04:15:47):
+~#! rn=Lug rt=930104019 rg=d.polar
+~#! tid=930098734
+oeh, mein anwalt untersucht gerade, wieviel fakes einem echten zap
+entsprechen, wir verhandeln noch mit der gegenseite :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: RM-Polar (Jamalski, 23. Jun 1999, 16:22:05):
+~#! rn=Jasper rt=930103671 rg=d.polar
+~#! tid=930098734
+Faengt das nicht bei Level 15 schon an?
+Jamalski
+
+-----------------------------------------------------------------------------
+
+
+
+Feuerwehr hat wieder Verstaerkung bekommen (Tsunami,  2. Aug 1999, 19:43:17):
+Huhu Mitmudder,
+
+Schreckliche, gemeine, boese, finstere, und im Allgemeinen interessante 
+Zeiten stehen euch bevor!!! Feuerwehr hat mich zum Mit-RM Polar erkoren. 
+Gemeinsam werden wir das Gebiet weiterhin hegen und pflegen und uns viele 
+neue nette Sachen aushecken...
+
+Es wird bestimmt lustig.
+
+Tsunami (wie immer voller Tatendrang).
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Feuerwehr hat wieder Verstaerkung bekommen (Feuerwehr,  2. Aug 1999, 19:47:16):
+~#! rn=Tsunami rt=933615797 rg=d.polar
+~#! tid=933615797
+
+Ha!
+
+Ich bin stolz, einen derart kompetenten und aktiven Mit-RM bekommen zu haben.
+Endlich koennen wir meinen grossen Traum verwirklichen: Eine komplette, fiese
+Parawelt fuer den Polar und Dann ... eine Art Flackern ... zwischen Normal und
+Parawelt.... Ja! Ha! Haha!
+
+   Feuerwehr.
+
+-----------------------------------------------------------------------------
+
+
+
+Neues im Polarmoor (Noel,  9. Aug 1999, 20:32:50):
+Nach langwierigen Arbeiten wurde nun ein alter Weg freigelegt, der den Westen
+des Moores mit dem Strand des Nordmeeres verbindet.
+
+Erste neugierige Abenteuerer berichten von einer uralten Anlage, die sich
+direkt an der Kueste befindet. Angeblich treiben sich dort einige sehr
+merkwuerdige Gestalten herum, von denen man nicht weiss, was sie im Schilde
+fuehren.
+
+Kaempfer und Zauberer haben bereits Forschungstrupps ausgesandt, die
+feststellen sollen, ob diese Gestalten eine Gefahr darstellen. Naehre
+Informationen dazu gibt es in den jeweiligen Gilden.
+Aber auch fuer die anderen Gilden koennte es dort interessant sein, denn
+wer weiss ...
+
+Viel Spass und Salve,
+Noel
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neues im Polarmoor (Lena, 10. Aug 1999, 10:06:01):
+~#! rn=Noel rt=934230770 rg=d.polar
+~#! tid=934230770
+Ich will ja kein Spielverderber sein, aber ...
+
+-----------------------------------------------------------------------------
+
+
+
+Paganini (Feuerwehr, 18. Aug 1999, 22:33:41):
+Hi!
+
+Wir kennen sie, wir hassen sie, wir wuerden sie gerne loeschen aber wir
+duerfen es verdammt nochmal nicht, was eine hoellisch schreiende
+Ungerechtigkeit ist!
+
+Die Rede ist von der Paganini-Quest (Hilf dem Violinisten). Morgonate hat es
+auf sich genommen, diese questtechnischen Teile dieses Ungetuems zu
+ueberarbeiten, weshalb sie jetzt hoffentlich sehr viel stabiler laufen wird.
+
+Der Aufwand fuer das Umschreiben der KL-Scripte sollte minimal sein, ich
+wuensche euch viel Spass, meldet Fehler bitte SOFORT und UMGEHEND an MICH und
+Morgonate.
+
+    Feuerwehr.
+
+PS: Ganz vielen Dank an Morgonate. Troy ist ... ein Erlebnis, das man nie
+    vergessen wird.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Paganini (Morgoth, 19. Aug 1999, 05:37:03):
+~#! rn=Feuerwehr rt=935015621 rg=d.polar
+~#! tid=935015621
+Meinst Du jetzt, die Fehler, die in den Scripten auftauchen, oder die der
+Quest an sich? ;-))
+Hey, es ist ganz schoen schwer, Scripte fuer Multi-Player-Quests zu schreiben.
+
+M* ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Paganini (Feuerwehr, 19. Aug 1999, 07:30:10):
+~#! rn=Morgoth rt=935041023 rg=d.polar
+~#! tid=935015621
+Ha!
+
+Jammer hier nicht rum! Dies hier ist der Polar, da wird gegessen, was auf den
+Tisch kommt!
+
+Aeh.
+
+   Feuerwehr.
+
+-----------------------------------------------------------------------------
+
+
+
+Neues aus der Tundra (Gor, 22. Aug 1999, 13:56:05):
+Laut den Berichten von einigen eifrigen Forschern
+ist in der Tundra eine mysterioese Erhebung entdeckt
+worden. Hierbei soll es sich anscheinend um ein 
+Bollwerk aus laengst vergangenen Zeiten handeln.
+
+Die Forscher empfehlen dieses Gebiet nur in groesseren
+Stosstrupps zu untersuchen da man nie wissen kann auf 
+wen oder was man stoesst.
+
+Viel Spass beim entdecken.
+
+
+Mein ganz spezieller Dank geht an: Tsunami 
+                                   Bierchen
+                                   Zook
+                                   Feuerwehr
+                                   und Tilly
+
+-----------------------------------------------------------------------------
+
+
+
+NEU! TOLL! MUSS ICH SEHEN! (Tilly, 28. Aug 1999, 18:21:46):
+Moin moin!
+
+Es wurde viel gebaut in Moulokin, hauptsaechlich abgerissen, zerstoert und
+dem Erdboden gleich gemacht. Nachdem sich nun die Staubwolken ueber der
+Stadt gelegt haben darf wieder munter gestorben werden.
+
+Hoeret, sehet, staunet: Para-Moulokin ist um einige Attraktionen reicher!!
+
+- Tilly -
+
+-----------------------------------------------------------------------------
+
+
+
+Banshee (Bendeigid, 13. Sep 1999, 09:23:39):
+Hallo liebe Freunde des Polargebiets, und
+insbesondere die Freunde der Klighardberge. 
+
+Da in der letzten Zeit (letzten paar Monate) ueberraschende "Bugs" bei der
+Banshee auftraten, die dazu gefuehrt haben, dass dort unberechtigt Spieler
+gestorben waren, habe ich versucht, de Fehler zu finden.
+Mir ist das NICHT gelungen, weil ich den Fehler mit keinem Testie oder Spieler
+reproduzieren konnte. Daher hab ich die Bugreports auf Bedienungsfehler
+wuetender Spieler zurueckgefuehrt, und das wars.
+ABER: Grosser Dank an Tiamak, der sich damit nicht zufriedengab und
+weitergesucht hat. Und siehe da, er fand den Bug, der im Maexchen-Spiel
+unseres geliebten Pa*-Magiers beheimatet war!!! 
+Dieser Bug ist nun ausgebaut, und die bekannten Methoden, sich gegen die
+Banshee zu schuetzen sollten damit funktionieren!
+Danke nochmal an Tiamak fuer die Suche und Padreic fuers prompte Debuggen....
+
+Z'par Servu,
+          Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Banshee (Brandir, 14. Sep 1999, 10:27:14):
+~#! rn=Bendeigid rt=937214619 rg=d.polar
+~#! tid=937214619
+Soll das jetzt heissen, dass die Banshee beim Maexchen immer verloren hat und
+deshalb gefrustet Spieler gekillt hat ? Und nun will Padreic sie womoeglich
+vom Spiel ausschliessen... binmal auf ihre Laune demnaechst gespannt :-)
+
+Brandir
+
+-----------------------------------------------------------------------------
+
+
+
+Postquest (Feuerwehr, 23. Sep 1999, 20:04:26):
+Hi!
+
+Eigentlich ists keinen Artikel wert, aber, es ... es ist ein TROY - Quest! Und
+ICH habe sie fuer euch veraendert! Ich habe fuer euch GELITTEN! Ich ... ich
+... OH DIESE PEIN ...
+
+Auf jeden Fall hat sich die Liste der Brief-Empfaenger etwas verkleinert. Wer
+von euch trotzdem noch Probleme hat, weil gewisse Addressaten durch die
+Veraenderungen des Muds fuer kleine Spieler nicht mehr zu erreichen sind, der
+soll sich bitte an einen Polar-Magier wenden.
+
+Und wenn sich der/die betreffende an Tsunami wendet und nicht an mich, dann
+zahl ich ihm/ihr viel viel Geld!!!
+
+Gruesse!
+
+   Feuerwehr.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Postquest (Streawkceur, 23. Sep 1999, 20:06:50):
+~#! rn=Feuerwehr rt=938117066 rg=d.polar
+~#! tid=938117066
+wie viel geld? :-)
+
+rr
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Postquest (Gnome, 23. Sep 1999, 20:56:42):
+~#! rn=Feuerwehr rt=938117066 rg=d.polar
+~#! tid=938117066
+definiere 'viel geld' :)
+
+gnOme, go^Heldgeil
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Postquest (Feuerwehr, 23. Sep 1999, 21:12:58):
+~#! rn=Gnome rt=938120202 rg=d.polar
+~#! tid=938117066
+
+Ihr geldgieriges, undankbares, sadistisches, nimmersattes PACK!
+
+Schande ueber euch! Asche auf euer Haupt!
+
+Und fuer euch reiss ich mir hier den A*** auf!
+
+    Feuerwehr.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Postquest (Olli, 23. Sep 1999, 21:13:44):
+~#! rn=Feuerwehr rt=938121178 rg=d.polar
+~#! tid=938117066
+Nu komm mal bloss nicht vom Thema ab ;)
+
+Olli
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Postquest (Onyx, 24. Sep 1999, 06:24:54):
+~#! rn=Feuerwehr rt=938121178 rg=d.polar
+~#! tid=938117066
+Jaja, was ist nur aus diesem Mud geworden.
+Anstatt, dass jemand Feuerwehr etwas Schlechtes tut und sich bei
+ihm BEDANKT, fuer die Zeit und die Muehen (hehe) die er inves-
+tiert hat, wird sein Ego weiter gestreichelt, mit vorprogrammier-
+ten Witzen. Wirklich mies!
+Geht Bugs suchen!
+  ****
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Postquest (Zook, 24. Sep 1999, 08:16:00):
+~#! rn=Onyx rt=938154294 rg=d.polar
+~#! tid=938117066
+Hmmm... wobei ich dieses Troy-Quest-Ueberarbeiten ja auch
+etwas kritisch sehe. Wie sollen die kleinen Spieler das 
+noch verstehen, was es hiess eine "Troy"-Quest gespielt
+und auch bestanden zu haben?
+
+Zook, der meint, hier wird alles viel zu einfach... ;)))))
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Postquest (Teddy, 24. Sep 1999, 17:07:57):
+~#! rn=Feuerwehr rt=938117066 rg=d.polar
+~#! tid=938117066
+Danke 112, das war sehr LIEB von dir.
+
+Teddy, angeekelt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Postquest (Foobar, 24. Sep 1999, 17:09:23):
+~#! rn=Feuerwehr rt=938117066 rg=d.polar
+~#! tid=938117066
+Juhu!
+
+Danke Feuerwehr, das war echt suess von Dir :o)
+
+Foobar - hofft, dass Tox Utat jetzt raus ist
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Postquest (Anatol, 24. Sep 1999, 17:09:29):
+~#! rn=Teddy rt=938192877 rg=d.polar
+~#! tid=938117066
+Da siehst Du es! Mit den hinterhaeltigsten Tricks der
+Liebenswuerdigkeit erzeugt Feuerwehr Ekelgefuehle in
+Dir! Was fuer ein Chaot! Was fuer ein maechtiger Geist
+verglichen mit jenen Stuempern, die mit aufgesetzter
+Boesartigkeit im grossen Spiel des grausamen Lebens
+zu punkten versuchen!
+
+Anatol ;o)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Postquest (Teddy, 24. Sep 1999, 17:13:15):
+~#! rn=Anatol rt=938192969 rg=d.polar
+~#! tid=938117066
+Hat nicht ganz geklappt, durch diese Liebenswuerdigkeit gegenueber kleineren
+Spielern und das Gejammere nach Aufmerksamkeit und Lob steht er fuer mich
+jetzt etwa auf einer Stufe mit Sharia, Lembold oder Saphina.
+
+Teddy, schauderts bei all diesen verweichlichten, jammernden und heiligen
+Gestalten
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Postquest (Anatol, 24. Sep 1999, 17:14:29):
+~#! rn=Teddy rt=938193195 rg=d.polar
+~#! tid=938117066
+Wahre Chaoten verstehen die Subtilitaet solcher Gedanken.
+
+Naja.
+
+
+Du bist Teddy.
+
+
+
+...
+
+Noch Fragen?
+
+Gut.
+
+
+Anatol
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Postquest (Feuerwehr, 24. Sep 1999, 17:15:53):
+~#! rn=Teddy rt=938193195 rg=d.polar
+~#! tid=938117066
+Hi!
+
+Ich moechte in diesem Zusammenhang erwaehnen: Nein, Tox Utat ist nicht raus.
+Das ist Problem der Ebenen-RMs, die will ich ja nicht arbeitslos machen...
+*laechle Ark an*
+
+Ciao!
+
+    Feuerwehr.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Postquest (Teddy, 24. Sep 1999, 17:16:21):
+~#! rn=Anatol rt=938193269 rg=d.polar
+~#! tid=938117066
+Sowas sagt mir jemand, der jahrelang rose Schleifen im Haar trug und derzeitig
+Zuckersocke genannt wird.
+
+Teddy, manche Dinge kann man nicht ernst nehmen ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Postquest (Dieder, 24. Sep 1999, 17:17:33):
+~#! rn=Teddy rt=938193381 rg=d.polar
+~#! tid=938117066
+Er ist Zauberer - schon vergessen? :)
+
+Dieder, fies kichernd
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Postquest (Teddy, 24. Sep 1999, 17:18:09):
+~#! rn=Dieder rt=938193453 rg=d.polar
+~#! tid=938117066
+DAS sowieso, das erklaert an und fuer sich schon alles, aber ich wollte
+nochmal spezielle Nebenaspekte erwaehnen, die es noch schlimmer machen.
+
+Teddy
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Postquest (Anatol, 24. Sep 1999, 17:46:57):
+~#! rn=Teddy rt=938193489 rg=d.polar
+~#! tid=938117066
+Nur stehe _ich_ nicht auf der Nikolaus-Liste.
+
+Anatol :)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Postquest (Teddy, 24. Sep 1999, 17:47:41):
+~#! rn=Anatol rt=938195217 rg=d.polar
+~#! tid=938117066
+Touche
+
+Teddy, kein Nikolaus und kein Weihnachtsmann oder Tannenbaum.
+We wish you a bloody christmas
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Postquest (Wim, 24. Sep 1999, 20:35:31):
+~#! rn=Feuerwehr rt=938193353 rg=d.polar
+~#! tid=938117066
+Damit Du nicht arbeitslos wirst, kann ich ja die Hexerquest von Wald nach
+Polar verschieben..
+*unschuldig guck*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Postquest (Olli, 24. Sep 1999, 22:52:41):
+~#! rn=Foobar rt=938192963 rg=d.polar
+~#! tid=938117066
+Gab es Probleme mit Tox Utat? Ausser, dass der Wolpie-Club immer in die
+Luft gesprengt wird? *g*
+
+Olli, interessiert...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Postquest (Paracelsus, 25. Sep 1999, 19:58:59):
+~#! rn=Wim rt=938205331 rg=d.polar
+~#! tid=938117066
+Jo, mach ruhig.
+
+Para*.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Postquest (Zarniya, 28. Sep 1999, 06:44:04):
+~#! rn=Feuerwehr rt=938117066 rg=d.polar
+~#! tid=938117066
+Hmm da muss ich mich dann doch mal zu Wort melden: ich hab Troy-Questen
+getestet, hat als Polarmagier hier und als Em hier und im Wunderland sehr viel
+mit seinem Code zu tun gehabt und muss sagen, dass der gar nciht soooo schlimm
+ist. Ich kenn da ganz andere Spezies :). Kann natuerlich sein, dass hier
+einige Magier schon ein wenig verweicht sind. Dabei ist LPC so schoen und
+einfach, wenn man den Gehirnkasten anschaltet. 
+
+Marc, muss Troy mal verteidigen, der VIEL, wirklich VIEL fuer dieses und
+andere Muds geleistet hat und das meine ich positiv.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Postquest (Tsunami, 28. Sep 1999, 10:48:57):
+~#! rn=Zarniya rt=938501044 rg=d.polar
+~#! tid=938117066
+Troys Code ist gar nicht soooo schlimm???? 
+
+Waaaaaaaasssss???? *SCHNAPP NACH LUFT! -- *ABSITZ!* -- *BLEICHWERD!*
+
+Wage das nicht noch einmal zu wiederholen, Du Wurm!! 
+Troys Code ist Spaghetti aus der Hoelle! :))
+Jeder RM mit einem +/troy Verzeichnis in seinem Gebiet
+weiss das...
+
+Wenn ich dran denke, dass Feuerwehr mir das Ganze unterjubelnd wollte...
+brrrr!!! Ich zahle noch mehr Geld, wenn ihr alle Bugs 112 statt mir meldet
+:>>> 
+
+Tsunami. Klimpert mit dem Geldsack.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Postquest (Anatol, 28. Sep 1999, 12:17:56):
+~#! rn=Tsunami rt=938515737 rg=d.polar
+~#! tid=938117066
+Vrai. Genial und gefuerchtet.
+
+Anatol
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Postquest (Streawkceur, 28. Sep 1999, 14:29:26):
+~#! rn=Tsunami rt=938515737 rg=d.polar
+~#! tid=938117066
+Hm... hier muss ich Zarniya mal recht geben...
+
+rr (murmelt was von "visual basic generation heutzutage" :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Postquest (Wurzel, 28. Sep 1999, 18:20:27):
+~#! rn=Streawkceur rt=938528966 rg=d.polar
+~#! tid=938117066
+jo, wenn ueberhaupt visual basic... die meisten koennen doch heutzutage nur
+noch mit der maus umgehen. ich plaediere dafuer, nur noch objekte in
+assembler anzuschliessen, weg mit dem ganzen objektorientierten quatsch :)
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Postquest (Caillean,  1. Okt 1999, 22:57:13):
+~#! rn=Anatol rt=938195217 rg=d.polar
+~#! tid=938117066
+teddy auch nicht, wir wollen rochus doch in keinem fall arbeitslos machen:9
+
+caillean, immer noch und bis zur party ihr "rochus for nikolaus" faehnchen
+schwenkend
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Postquest (Rochus,  4. Okt 1999, 09:36:53):
+~#! rn=Caillean rt=938818633 rg=d.polar
+~#! tid=938117066
+Schon gut, ich mach das ja schon freiwillig...
+...wie mir am Freitag nahegelegt wurde...
+
+  Rochus
+
+PS: Hat noch jemand eine Sense fuer mich?
+HO. HO. HO.
+
+-----------------------------------------------------------------------------
+
+
+
+Der schreckliche Schreckensdrache ist lieb und nett! (Tsunami,  6. Okt 1999, 15:58:14):
+Huhu Profimetzler,
+
+Der schreckliche Schreckensdrache ist euch etwas entgegengekommen und 
+ist nun gegen zwei statt nur einer Schadensart anfaellig. So haben alle 
+Gilden mehr oder weniger eine Chance gegen ihn. Natuerlich sind die
+sonstigen Werte nicht veraendert worden, sonst wuerde er zuviel von 
+seinen Schrecken einbuessen.
+
+Tsunami. Heute mal lieb und nett.
+
+-----------------------------------------------------------------------------
+
+
+
+Neue Raeume in der Eismine (Tsunami,  6. Dez 1999, 18:35:15):
+HO-HO Suchties,
+
+Mein Sankt-Nikolaus-Geschenk an euch:
+
+In der Eismine kann man nun dort, wo ein grosses Warnschild steht, ein
+neues Gebiet betreten. Das Warnschild sollte man vorher aber erst mal
+lesen :)
+
+Sind nur ein paar Raeume aber ruestet euch trotzdem gut aus, bevor ihr
+da reingeht. Und sagt mir hinterher nicht, ich haette euch nicht gewarnt.
+
+Es gibt dafuer was Nettes zu holen!
+
+Viel Spass beim anschauen,
+
+Tsunami, der Quabbelschleimblub-Baendiger.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neue Raeume in der Eismine (Pardauz,  6. Dez 1999, 18:37:41):
+~#! rn=Tsunami rt=944501715 rg=d.polar
+~#! tid=944501715
+> Tsunami, der Quabbelschleimblub-Baendiger.
+
+warst Du bei Boing in der Lehre?
+
+PArdauz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Neue Raeume in der Eismine (Zook,  6. Dez 1999, 18:38:01):
+~#! rn=Pardauz rt=944501861 rg=d.polar
+~#! tid=944501715
+Zook grinst wissend.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Neue Raeume in der Eismine (Tsunami,  6. Dez 1999, 18:38:03):
+~#! rn=Pardauz rt=944501861 rg=d.polar
+~#! tid=944501715
+Nein,
+
+Bei Bendeigid ....
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Neue Raeume in der Eismine (Bendeigid,  7. Dez 1999, 11:22:16):
+~#! rn=Tsunami rt=944501883 rg=d.polar
+~#! tid=944501715
+Petze :)
+
+Naja, die Quabbelschleimblubs sind so eine Art Geburtsgeschenk fuer Tsu
+gewesen. Ein Monster, dass ich ihm fuer sein "Ich-werde-Gross"-Projekt Eismine
+geschrieben habe.
+ABER: Die wirklich hinterlistigen Biester dieser Gattung sind hoechstens
+teilweise ideentechnisch auf meinem Mist gewachsen. Jegliche fiese
+Implementation ist voll und ganz Tsu anzulasten :)
+
+Viel Spass!
+
+Z'par Servu,
+            Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+meine paar raeume... (para-polar) (Mupfel, 29. Dez 1999, 00:29:30):
+ich wurde zu einer renovierung "ueberredet", waehrend der zeit sind die raeume
+fuer spieler nicht erreichbar. spaeter mehr.
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Tiger entlaufen (Mupfel,  5. Feb 2000, 20:54:35):
+Im Zuge einiger Arbeiten in einem Teil des Polargebietes ist ein sibirischer
+Tiger entlaufen. Zuletzt wurde er von einigen zutiefst erschrockenen Wanderern
+in der Naehe des Klippentempels gesichtet. Sachdienliche Hinweise nimmt der
+zustaendige Polarmagier entgegen ;)
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+Aenderungen Eismine (Tsunami, 17. Feb 2000, 14:08:19):
+Aenderungen in der Eismine
+--------------------------
+
+Ich habe auf haeufigen Wunsch (eines Einzelnen...) die Gildenquest
+'Rettungsaktion in der Eismine' technisch (nicht aber inhaltlich) etwas
+umgebaut. Man kann nun auch ohne zu fragen die Quest beenden, was speziell
+gewisse Zauberer freuen wird.
+
+Wenn ihr noch Vorschlaege zur Truhe habt, werde ich mir die gerne mal
+anhoeren.
+
+Und nein, es wurde kein einziger NPC umgebaut. Die Werte usw. bleiben so,
+wie sie waren.
+
+Tsunami. Fleissig.
+
+-----------------------------------------------------------------------------
+
+
+
+Gruft (Boing, 18. Feb 2000, 10:19:02):
+Ich hab nen kleinen Initialisierungsbug in der Gruft gefixed. Da ich
+dabei noch auf einen weiteren Fehler gelaufen bin, hab ich das auch
+gleich mit erledigt, dadurch kann es passieren dass jetzt in der 
+Parawelt zwei Necromanten mehr als normal rumstehen. Das war so 
+beabsichtigt, nur der Pfad war falsch.
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Kleiner Bug (Gor,  3. Apr 2000, 05:06:08):
+Hiho,
+komischer Weise ist wieder ein alter Stand der Festung Momentan im Mg. D.h. es
+buggen die Tueren fuer die man Schluessel braucht. Also Vorsicht!!!!!! Bleibt
+am besten einfach aus dem suedlichen Teil komplett raus. Ich hoffe ich komme
+bald wieder an meine Daten ran... :(
+
+Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kleiner Bug (Gor,  7. Apr 2000, 00:25:09):
+~#! rn=Gor rt=954731168 rg=d.polar
+~#! tid=954731168
+So ihr duerft wieder! :)
+
+Gor der seine Files wiedergefunden hat. 
+
+-----------------------------------------------------------------------------
+
+
+
+Euer RM ist mal kurz abwesend (Tsunami,  8. Apr 2000, 14:13:15):
+Huhu Freunde,
+
+am 11. April ist es soweit: ich flieg in die Staaten (und bleib dort mind.
+2 Jahre). Bis ich mich dort so richtig eingenistet habe, werde ich jeweils
+nur kurz im Mud vorbeischauen. In *polar* laeuft alles rund, macht mir also
+in der Zwischenzeit nix kaput!! *schiel zu Gor*
+
+Ich denke, so ab Ende April bin ich wieder regelmaessig hier.
+
+Bis denne,
+         
+Tsunami.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Euer RM ist mal kurz abwesend (Lug, 10. Apr 2000, 01:50:38):
+~#! rn=Tsunami rt=955195995 rg=d.polar
+~#! tid=955195995
+
+Stell mal einer den Foen an...
+
+Herzerwaermend
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Geruechtekueche... (Amaryllis, 15. Mai 2000, 19:28:28):
+Lange, lange Zeit existiert bereits das Elfendorf, das den Zwergen immer
+schon ein Dorn im Auge war. Und ebenfalls vor einiger Zeit wuchs die
+Eiselfenfestung aus dem Boden, die sich mittlerweile nun selbst bei den
+nicht gerade intelligenzstarken Zwergen als potentielles Ziel
+herumgesprochen hat.
+
+Geruechten zufolge soll eine Horde dieses Zwergengesindels regelmaessig
+versuchen, die Eiselfenfestung zu stuermen. Es waere also schoen, wenn sich
+tapfere Recken finden wuerden, diesen Angriff zu stoppen.
+
+Ein kleiner Elf kann Euch vielleicht mit Informationen weiterhelfen.
+
+Amaryllis
+
+PS: Bugmeldungen bitte sofort an mich, Bugs sind leider nicht
+ausgeschlossen. Ansonsten: Viel Spass.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Geruechtekueche... (Householder, 15. Mai 2000, 19:44:28):
+~#! rn=Amaryllis rt=958411708 rg=d.polar
+~#! tid=958411708
+
+
+
+
+aufhalten ??? haeh ?? ich will da MITMACHEN !
+HH (grunzend)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Geruechtekueche... (Nevok, 15. Mai 2000, 19:45:10):
+~#! rn=Householder rt=958412668 rg=d.polar
+~#! tid=958411708
+genau, Elfenohren sammeln....wie Obelix die Legionaershelme...
+
+Herrrrrrrrrrrrrrrrr Asterix....aeh Nevok
+
+-----------------------------------------------------------------------------
+
+
+
+Willkommen, Amaryllis! (Tsunami, 15. Mai 2000, 19:46:00):
+Amaryllis ist nun Regionsmitarbeiter in Polar.
+Herzlich willkommen, Amaryllis!
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Geruechtekueche... (Amaryllis, 16. Mai 2000, 00:03:27):
+~#! rn=Nevok rt=958412710 rg=d.polar
+~#! tid=958411708
+naja, wierum es laeuft, bleibt Euch ueberlassen :-)
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Geruechtekueche... (Nevok, 16. Mai 2000, 02:52:57):
+~#! rn=Amaryllis rt=958428207 rg=d.polar
+~#! tid=958411708
+Is es nu eigentlich usus gegen Zwerge und so?
+Just wondering...
+Die Gladiatiorenschule die Zwerge net haben will, die dummen Spitzohren die
+aus der Patsche geholfen kriegen muessen, is das Anschlusskriterium oder wie?
+
+Nevok, den Eiselfen gleich wieder eine aufs Maul geben muessend. Was haben die
+auch in nem Bergwerk verloren. Das is Zwergengebiet.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Geruechtekueche... (Amaryllis, 16. Mai 2000, 02:53:42):
+~#! rn=Nevok rt=958438377 rg=d.polar
+~#! tid=958411708
+Geh pennen, Zwerschle.
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Geruechtekueche... (Apsu, 16. Mai 2000, 02:55:08):
+~#! rn=Nevok rt=958438377 rg=d.polar
+~#! tid=958411708
+Naja solang die Zwerge fuer die Eiselfen ackern bin ich sogar einverstanden.
+Sollten sich nur oefter waschen, die kleinen Stinker. ;-)
+
+Apsu
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Geruechtekueche... (Deepblue, 16. Mai 2000, 10:31:36):
+~#! rn=Amaryllis rt=958411708 rg=d.polar
+~#! tid=958411708
+Wieso sollte man das stoppen?
+Ist doch schoen, wenn sich das Gesocks gegenseitig die Birne einschlaegt.
+
+-----------------------------------------------------------------------------
+
+
+
+Zwergenangriff (Amaryllis, 16. Mai 2000, 19:18:46):
+Da sich einige durch die Shouts belaestigt fuehlten, habe ich diese ausgebaut.
+Information, wann der naechste Angriff ungefaehr stattfindet, gibt euch der
+kleine Elf - interpretieren muesst ihr sie selber :-)
+
+Das Feechen
+
+-----------------------------------------------------------------------------
+
+
+
+Todestagebuch (Amaryllis, 16. Mai 2000, 21:08:42):
+$subject wurde einer kleinen Schoenheitsoperation unterzogen (nein, kein Bug,
+fuer alle Laestermaeuler :-)).
+Wer schon eines hatte, kriegt es wieder, wenn er den kleinen Elfen fragt.
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Todestagebuch (Leibniz, 16. Mai 2000, 21:10:10):
+~#! rn=Amaryllis rt=958504122 rg=d.polar
+~#! tid=958504122
+will haben :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Todestagebuch (Matis, 16. Mai 2000, 21:10:36):
+~#! rn=Leibniz rt=958504210 rg=d.polar
+~#! tid=958504122
+Hol es Dir! :o)
+
+Matis, hat schon
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Todestagebuch (Amaryllis, 16. Mai 2000, 21:10:38):
+~#! rn=Liara rt=958504188 rg=d.polar
+~#! tid=958504122
+umschauen, Zaubine, umschauen... :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Todestagebuch (Amaryllis, 17. Mai 2000, 17:27:59):
+temporaer abgehaengt wegen Bugs, die bisher noch keiner finden konnte :(
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Todestagebuch (Harakiri, 17. Mai 2000, 17:31:00):
+~#! rn=Amaryllis rt=958577279 rg=d.polar
+~#! tid=958577279
+*SCHLUCHZ*
+
+
+-----------------------------------------------------------------------------
+
+
+
+Namensstempel (Amaryllis, 17. Mai 2000, 19:38:26):
+Gefixt und verschoenert. Wer ihn schon hat muss ihn sich neu beim Elfen
+abholen.
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Todestagebuch (Amaryllis, 18. Mai 2000, 14:55:41):
+scheint jetzt zu funktionieren und ist wieder dran. Wenns bei irgendjemandem
+nicht geht (komischerweise gings bei den meisten, bei einigen aber nicht)
+bitte sofort Meldung an mich.
+
+Abzuholen ist das Teil am gewohnten Ort :)
+
+Ama
+
+-----------------------------------------------------------------------------
+
+
+
+Zwergenangriff (Amaryllis, 19. Mai 2000, 15:31:01):
+Hi,
+
+nachdem bei etlichen Spielern hier grosse Verwirrung herrscht und es
+anscheinend ausser den paar, die bisher mitgemacht haben, keiner kapiert wie
+es funktioniert, habe ich dem kleinen Elf nochmals zusaetzliche Informationen
+gegeben. Ausserdem von mir noch ein paar Hinweise:
+
+- ja, es ist eine reine Metzelquest.
+- ein Team ist wohl notwendig, ausser man ist Profi-Zaubi oder aehnliches (hat
+auch schon jemand alleine geschafft *grins*)
+- man sollte sich in der Eisfestung schon bissl auskennen und den Elf mal
+genau zu allem ausfragen.
+
+So, viel Spass beim Ster^H^H^H^HMetzeln :-)
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Weicheier (Gor, 21. Mai 2000, 22:15:21):
+Ich moechte an dieser Stelle einmal bemerken, das NIRGENDS steht, dass man
+einen Npc toeten koennen muss (ALLEINE). Sucht euch ein Team und heult nicht
+rum. Wem die Moorhuehner ALLEINE zu stark sind... SUCHT EUCH EIN
+TEAM!!!!!!!!!!!!!!!
+Ausserdem gibt es sogar fuer Abenteurer die MOeglichkeit diese Npcs zu toeten.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Weicheier (Tatjana, 21. Mai 2000, 22:17:43):
+~#! rn=Gor rt=958940121 rg=d.polar
+~#! tid=958940121
+Kann ich nur unterstuetzen. Die Viecher sind zwar stark, aber durchaus zu
+schaffen.
+Notfalls sogar alleine, fuer den der unbedingt braucht.
+Ich finde das Gebiet auf jedenfall Spitze.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Weicheier (Trance, 21. Mai 2000, 22:41:55):
+~#! rn=Tatjana rt=958940263 rg=d.polar
+~#! tid=958940121
+jo, als Chaotin hast du da gut reden! :)
+
+Trance, kein Weichei (und mit Chaot in Reserve)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Weicheier (Tatjana, 21. Mai 2000, 22:42:33):
+~#! rn=Trance rt=958941715 rg=d.polar
+~#! tid=958940121
+Auch als Nichtchaot gibt es da die entsprechenden
+Mittlechen
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Weicheier (Hight, 22. Mai 2000, 00:40:57):
+~#! rn=Tatjana rt=958941753 rg=d.polar
+~#! tid=958940121
+TEAM is ne nette erfindung 
+
+auserdem paralysiern kann jeder
+
+mir gefaellt es da auch ganz gut 
+
+Hight hat die moorhuehner mit hilfe erledigt
+
+-----------------------------------------------------------------------------
+
+
+
+Zwergenangriff (Darkwing, 22. Mai 2000, 12:35:48):
+Hiho,
+
+Ich hab gehoert dass die Quest dem ein oder anderen nicht besonders gefaellt
+... und dass Amaryllis und Gor kurz davor sind das alles wegen ein paar
+"netten" Kommentaren wieder abzuhaengen.
+
+Dazu kann ich nur sagen, dass es mir dort einen Riesenspass macht die Zwerge
+wegzuhaun. Ist nicht gerade wie Metzeln auf der Hochebene, aber das kann ich
+sonstwo haben :>
+Die Quest ist optional und wers nicht mag soll es eben lassen oder auf spaeter
+verschieben. Oder im Team dahin. 
+Da steckt viel Arbeit drin, wenn ich dann sehe wie Leute mit der Lupe fehlende
+Details bei ner Metzelquest suchen ... klasse. 
+
+Nunja, have Fun ;)
+
+Darkwing
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Weicheier (Anatol, 22. Mai 2000, 13:01:59):
+~#! rn=Hight rt=958948857 rg=d.polar
+~#! tid=958940121
+Der zu Anfang kritisierte Punkt war nicht der, dass der NPC zu stark
+ist, sondern dass er a) fuer ein *Moorhuhn* zu stark ist, b) dass die
+Warnung bzgl. des Moorhuhns Freunde nicht oder nur sehr spaerlich
+vorhanden war (eine Zeile im Kampf), c) dass Gildenfaehigkeiten ohne
+im Spiel ersichtlichen Grund ausgeschaltet waren. Der Umstand, dass
+das Biest gefundenes Fressen fuer Chaoten ist (Paralyse funktioniert
+naemlich und gegen satanischen Schaden ist das Schnuckelchen auch 
+noch anfaellig) wurde im Blutrausch der Kritiker (mea culpa :() 
+ebenfalls deutlich gemacht, ist aber eigentlich weder wirklich korrekt
+noch von Relevanz.
+
+Amaryllis hat die Punkte a) und b) inzwischen korrigiert, den Rest
+werd' ich nur noch nicht gefunden haben...
+
+Anatol
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Zwergenangriff (Deepblue, 22. Mai 2000, 13:18:01):
+~#! rn=Darkwing rt=958991748 rg=d.polar
+~#! tid=958991748
+Nun ja, fehlende Details sind nix feines, aber statt laut rumzumosern kann man
+auch entsprechende Idee-Meldungen hinterlassen. Und Amaryllis ist ja auch ab
+und an da und kann die sachen sich anschauen. Also nix abhaengen, Konstruktiv
+sein...y
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Zwergenangriff (Gloin, 22. Mai 2000, 13:21:10):
+~#! rn=Darkwing rt=958991748 rg=d.polar
+~#! tid=958991748
+Ob Metzelquest oder nicht, ein Gebiet muss auch mit Details versorgt
+sein. Und zwar genuegend. Das mal grundsaetzlich.
+Um es jetzt aber nicht als Angriff werten zu lassen: Nein, ich habe es
+mir bisher nur oberflaechlich besehen und habe deshalb auch noch keine
+Idee abgesetzt, weiss also nicht um den genauen Stand der Details.
+
+Gloin
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Zwergenangriff (Darkwing, 22. Mai 2000, 13:55:07):
+~#! rn=Gloin rt=958994470 rg=d.polar
+~#! tid=958991748
+Oberflaechlich besehn... prima. Vielleicht schaust Du es Dir mal genauer an
+bevor Du anfaengst rumzuflamen :-) 
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Zwergenangriff (Hood, 22. Mai 2000, 14:46:34):
+~#! rn=Darkwing rt=958996507 rg=d.polar
+~#! tid=958991748
+er hat nicht geflamed, da stand eindeutig EIN gebiet, nicht DAS gebiet.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Weicheier (Amaryllis, 22. Mai 2000, 15:16:04):
+~#! rn=Anatol rt=958993319 rg=d.polar
+~#! tid=958940121
+Der "Rest" ist von mir noch in Ueberlegung, aber in Ueberlegung ist eben auch,
+die NPCs vor der Festung einfach abzuhaengen und sich dadurch nen Haufen
+Aerger zu ersparen. Die Warnungen bei den Viechern sind mehr als eindeutig
+(uebrigens auch beim Schneesturm).
+
+Was die Details anbetrifft: Das sollten die meisten vorhanden sein, ich habe
+mich wirklich bemueht, die Raeume ordentlich zu beschreiben und mein Repfile
+weist bisher auch nur sehr wenig missing details auf. Die Raeume etc. waren
+mir eben wichtig, obwohl es "nur" eine Metzelquest ist.
+
+Ansonsten sollten sich manche Spieler vielleicht mal ueberlegen, mich direkt
+mal anzusprechen, bevor sie sofort den RM zuheulen. Ich find es nicht grad
+gelungen, wenn ich das dann erst hintenrum erfahre und deswegen dumm dastehe -
+zumindest ein CC an mich koennte da ruhig sein.
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Weicheier (Ark, 22. Mai 2000, 22:14:27):
+~#! rn=Amaryllis rt=959001364 rg=d.polar
+~#! tid=958940121
+Ts, liebe Fee, Du hast das Konzept des "Mobbings" wohl nicht verstanden. Aber
+warte, ich erteile da gerne Entwicklungshilfe ;^)
+
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Weicheier (Ark, 22. Mai 2000, 22:24:47):
+~#! rn=Ark rt=959026467 rg=d.polar
+~#! tid=958940121
+Ausserdem hat Zook angeschlossen, Beschwerden an ihn *duck*
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Weicheier (Tatjana, 23. Mai 2000, 00:33:54):
+~#! rn=Anatol rt=958993319 rg=d.polar
+~#! tid=958940121
+Irgendwie ist das mal wieder eine typische Zauberereinstellung.
+Wie stark bitte schoen darf ein Moorhuh sein? Genauso stark, dass ein
+mittelmaessiger Zauberer es ohne zu tanken schafft? 
+Dann bitte liebe Magier, wertet den Weghier ab, da muss der arme Anatol ja
+sonst 2 mal tanken gehn
+Und die vielen schoenen Spezialfaehigkeiten der Zauberer. Oh Gott,
+da gibt es wirklich ein Monster, dass eine davon blockiert. Skandaloes.
+tp 32
+nw
+betrete portal
+4 sofort aufwerten.
+Mir kommen echt die Traenen.
+Oder wie Lug sagen wuerde Heul doch Anatol
+
+P.S. Ich weiss, Objektivitaet ist nicht gerade deine Staerke, aber
+vielleicht versuchst du mal dich an das ein oder andere Monster zu
+erinnern, dass die Spezialfaehigkeiten anderer Gilden blockt
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Weicheier (Hood, 23. Mai 2000, 00:35:24):
+~#! rn=Tatjana rt=959034834 rg=d.polar
+~#! tid=958940121
+ich weiss nicht, an welcher stelle du anatol objektivitaet absprichst,
+aber zumindest kann man deinen artikel (genauso wie den meinigen hier)
+keinesfalls mit konstruktivitaet in konjugation bringen *g*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Weicheier (Matis, 23. Mai 2000, 00:36:44):
+~#! rn=Tatjana rt=959034834 rg=d.polar
+~#! tid=958940121
+Ohne auf die Kritikpunkte ueberhaupt einzugehen, denn die sind - wie
+fast immer - Ansichtssache: eine Schwaeche laesst sich nicht durch 
+andere Schwaeche rechtfertigen. Das sag ich unter der Annahme, dass
+Du den Fakt, dass Paralyse mittlerweile leider viel zu oft abgewehrt
+wird, als Schwaeche ansiehst.
+
+Matis
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Zwergenangriff (Lug, 23. Mai 2000, 02:08:54):
+~#! rn=Darkwing rt=958991748 rg=d.polar
+~#! tid=958991748
+Aeh Darky?
+
+Isset denn wie Gardies hauen?
+
+Interessiert
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Weicheier (Lug, 23. Mai 2000, 02:13:17):
+~#! rn=Tatjana rt=959034834 rg=d.polar
+~#! tid=958940121
+
+Es ist eine glatte Luege, dass ich sagen wuerde: Heul doch Anatol. Ich wuerde
+naemlich aeussern: Loesch Dich Anatol. Anatol wiederum, wuerde sagen: Heul
+doch Anatol, was Anatol im Fall von Anatol aber wohl auch nicht tun wuerde...
+
+Korrekturanmerkung 1
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+NPCs in Zwergenangriff (Tsunami, 23. Mai 2000, 03:02:05):
+Wegen dem Gesellenstueck von Amaryllis (das uebrigens sehr gelungen ist!!):
+ich habe die Diskussion in der MPA, viele 'teile-mits' und diverse Mails an
+mich verfolgt. 
+
+BERUHIGT EUCH!!
+
+Um allfaelligem Unmut vorzubeugen: es hat im Vorfeld ein paar 
+Missverstaendnise zwischen Amaryllis und mir gegeben. Einige NPCs wurden
+nach der Abnahme durch mich nicht so geaendert wie gewuenscht. Dieser Faux pas
+wird nun von Amaryllis behoben. Und nein, die Zwerge bleiben so, wie sie sind.
+
+Welche NPCs das sind, koennt ihr euch denken.
+
+Tsunami.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Zwergenangriff (Darkwing, 23. Mai 2000, 10:18:38):
+~#! rn=Lug rt=959040534 rg=d.polar
+~#! tid=958991748
+nicht ganz Lug. Zwerge scheppern so schoen wenn sie auseinanderfliegen -
+vieeeel besser als Gardies :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Weicheier (Vector, 23. Mai 2000, 11:33:11):
+~#! rn=Hood rt=959034924 rg=d.polar
+~#! tid=958940121
+Hey, Hood,
+solche Artikel wie np.34 von Tatjana kommentiert man doch nicht.
+Solche geistigen "miss"-erguesse sprechen doch fuer sich selber.
+Lesen, stehen lassen und sich drueber kaputt-lachen.
+
+--Vector-- (sich-kaputt-lachend)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: NPCs in Zwergenangriff (Amaryllis, 23. Mai 2000, 16:33:08):
+~#! rn=Tsunami rt=959043725 rg=d.polar
+~#! tid=959043725
+Die genannten NPCs sollten jetzt alle soweit geaendert sein, nur  zur Info.
+
+Ama*, die hofft dass jetzt ihre Nerven nicht mehr mit Geheule und Geschimpfe
+belastet werden.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Weicheier (Yendi, 23. Mai 2000, 18:27:09):
+~#! rn=Hight rt=958948857 rg=d.polar
+~#! tid=958940121
+Paralysieren kann jeder, Hight?
+Da muss ich wohl was verpasst haben.
+
+YTY
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Weicheier (Amaryllis, 23. Mai 2000, 19:36:19):
+~#! rn=Yendi rt=959099229 rg=d.polar
+~#! tid=958940121
+jepp, hast Du :-)
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Weicheier (Belgariad, 23. Mai 2000, 19:39:53):
+~#! rn=Yendi rt=959099229 rg=d.polar
+~#! tid=958940121
+Bei deinem Level haste wohl noch nicht viel verpasst. :)
+
+-----------------------------------------------------------------------------
+
+
+
+Quabbelschleimblubgrotte (tolles Wort :) ) (Tsunami, 24. Mai 2000, 02:40:35):
+Huhu Metzler,
+
+ich habe die Quabbelschleimblubgrotte etwas umgestrickt. Die Quabbelschleim-
+blubs halten einem jetzt nicht mehr so oft fest und man kommt nun besser an
+die Schatzkiste heran.
+
+Viel Spass,
+
+Tsunami
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Quabbelschleimblubgrotte (tolles Wort :) ) (Lug, 24. Mai 2000, 02:41:43):
+~#! rn=Tsunami rt=959128835 rg=d.polar
+~#! tid=959128835
+
+SUPI!
+
+Begeistert
+Lug
+
+-----------------------------------------------------------------------------
+
+
+
+ich vermisse was :) (Ashan, 27. Mai 2000, 17:28:58):
+Hi,
+ich war in den vergangenen Tagen mehr oder weniger abwesend .. und nachdem ich
+nun d.polar gelesen habe vermisse ich eines:
+Ein Grats an Amaryllis zum Neuen Gebiet 
+Ich habe schon im Team Zwerge gejagt, und auch ein Moorhuhn um die Ecke
+gebracht. Klar sind die Viecher hart, aber wer bin ich um darueber zu jammern.
+Also,  nochmal: Grats. Ich freue mich dass die Polarregion waechst und es
+wieder ein paar NPCs mehr zum metzeln gibt.
+
+Ashan
+
+-----------------------------------------------------------------------------
+
+
+
+magiewesen (Tsunami, 13. Jun 2000, 02:31:08):
+Bis ich alles umgestrickt habe, gibts keinen Zahn.
+Sollte morgen (abend) wieder laufen.
+
+Tsunami.
+
+-----------------------------------------------------------------------------
+
+
+
+Magiewesen-Zahn (Tsunami, 13. Jun 2000, 20:00:28):
+OK, der Zahn ist wieder angeschlossen.
+Die Verteilung funktioniert nun aehnlich wie bei anderen euch bekannten
+Uniques. Ich bin gespannt auf eure Meinung. Wenn ihr noch Ideen dazu habt,
+emailt mir.
+
+Viel Spass, 
+
+Tsunami.
+
+P.S. nein, weder an den Werten vom Wesen noch an Zahn wurden
+'herumgeschraubt'.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Magiewesen-Zahn (Lyra, 14. Jun 2000, 09:36:12):
+~#! rn=Tsunami rt=960919228 rg=d.polar
+~#! tid=960919228
+'herumgeschraubt'? Ich stlle mir gerade vor, wie eine Horde Tinkergnome ueber
+den Zahn herfallen und dran 'herumgeschrauben' :-)
+
+Lyra sucht auch schon mal einen Schraubenschluessel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Weicheier (Frerin, 16. Jun 2000, 13:01:19):
+~#! rn=Hight rt=958948857 rg=d.polar
+~#! tid=958940121
+Wie die Moorhuehner metzelt wer im Team?
+Das sind doch nun leider nur noch Luschen .. die mache ich immer nur alleine
+..
+ausser bei besonderen Umstaenden *eg*
+
+Frerin .. der diesen NPC staerker will
+
+-----------------------------------------------------------------------------
+
+
+
+Todestagebuch (Amaryllis, 16. Jun 2000, 13:59:19):
+Hi,
+
+in $subject war noch ein logischer Bug, drum nicht wundern, wenn die Eintraege
+jetzt anders aussehen - aber ab jetzt sollten sie hoffentlich so bleiben :)
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Es geschah letzte Nacht ... (Tilly, 18. Jun 2000, 17:49:29):
+dass in ein Haus in einem kleinen Waeldchen im Polar eingebrochen
+wurde. Was geschah, ist noch nicht ganz sicher. Aber es wartet eine
+hilflose Krankenschwester auf maechtige Hilfe von unerschrockenen
+Abenteurern (oder anderen). Es stimmt mich sehr nachdenklich, dass
+ausgerechnet ein Chaot sich der Sache annahm und sie publik macht,
+aber das ist eine andere Geschichte ...
+
+Gruss an alle Rentner!
+
+                             - Ein Zivi -
+
+
+p.s.:   Tillys chaotischer Gruss geht an Lurchi, Beauty, Liara, Rani,
+        Tsunami, Zook und Zephyr, die sich mutig durchgetestet haben!
+        Danke >:))
+
+p.p.s.: Und wehe, er findet noch einen Eintrag ins RepFile von Dir, Zephyr.
+        Dann gibts keine Kekse mehr ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Es geschah letzte Nacht ... (Dieder, 18. Jun 2000, 23:32:35):
+~#! rn=Tilly rt=961343369 rg=d.polar
+~#! tid=961343369
+Hilflose Krankenschwwester? Pffft... da lob ich mir doch meine emsige und
+knackige Pflegerin :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Es geschah letzte Nacht ... (Makish, 18. Jun 2000, 23:50:08):
+~#! rn=Tilly rt=961343369 rg=d.polar
+~#! tid=961343369
+LobLobLob !
+Eine schoene Quest.. so herzhaft gelacht...
+Schoene Details...
+Jaaa ! Mehr davon *kicher*
+
+So macht Questen wieder Freude *freu*
+
+Makish, nur mal kurz ausgelassen...
+
+-----------------------------------------------------------------------------
+
+
+
+Willkommen Sting! (Tsunami, 23. Jun 2000, 21:10:54):
+Willkommen Sting, neuer Regionsmitarbeiter in Polar!
+Moegest Du viele tolle Sachen basteln. Wir freuen uns darauf.
+
+Tsunami
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Willkommen Sting! (Ark, 23. Jun 2000, 21:15:11):
+~#! rn=Tsunami rt=961787454 rg=d.polar
+~#! tid=961787454
+Ts, dabei wirbt Rikus doch ab und an immer wieder. Da sieht man mal wieder,
+was fuer ein Kluengel die Polar-/Chaosmagier doch wirklich sind. Long live our
+plains ...
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Willkommen Sting! (Sting, 23. Jun 2000, 21:16:13):
+~#! rn=Ark rt=961787711 rg=d.polar
+~#! tid=961787454
+Das ich jetzt Polarmitarbeiter bin, heisst ja noch lange nicht das ich auf
+ewig nur in Polar und bei Chaos was machen werde :)
+
+Danke fuer die Begruessung :)
+Sting
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Willkommen Sting! (Ark, 23. Jun 2000, 21:18:59):
+~#! rn=Sting rt=961787773 rg=d.polar
+~#! tid=961787454
+HA, das ist ja noch verraeterischer, also wohl nur den Weg des geringsten
+Widerstands gewaehlt, was? Du, Du, Chaot, Du!
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Willkommen Sting! (Paracelsus, 23. Jun 2000, 21:22:35):
+~#! rn=Ark rt=961787939 rg=d.polar
+~#! tid=961787454
+Ach Ark. Lass' den armen Sting doech erstmal ein wenig im Polar ueben.
+Anschliessend kann er ja immer noch in eine anstaendige Region (wie
+z.B. den Wald) wechseln.
+
+Paracelsus.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Willkommen Sting! (Ark, 23. Jun 2000, 21:26:45):
+~#! rn=Paracelsus rt=961788155 rg=d.polar
+~#! tid=961787454
+*Freu* Fangen wir nen Thread an "Welche Region ist die Beste?" -> also meine
+:-)
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Willkommen Sting! (Paracelsus, 23. Jun 2000, 21:28:10):
+~#! rn=Ark rt=961788405 rg=d.polar
+~#! tid=961787454
+Nee, brauchen wir nicht. Ist eh der Wald. ]:->
+
+Paracelsus.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Willkommen Sting! (Ark, 23. Jun 2000, 21:32:16):
+~#! rn=Paracelsus rt=961788490 rg=d.polar
+~#! tid=961787454
+Ok, das war's dann wohl. Wer schreibt die Quest, die wo da die Orks mit
+Kettensaegen im Wald herumbummeln?
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Willkommen Sting! (Tsunami, 24. Jun 2000, 00:35:24):
+~#! rn=Ark rt=961788736 rg=d.polar
+~#! tid=961787454
+Sting hat gewaehlt. Abgewogen, verglichen, abgewogen und nochmals verglichen.
+Er hat weise gewaehlt. Oder ganz einfach: *das Richtige*.
+
+Tsunami, verteilt 'Polar, find ich gut!'-Buttons
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Willkommen Sting! (Tiamak, 24. Jun 2000, 00:36:36):
+~#! rn=Tsunami rt=961799724 rg=d.polar
+~#! tid=961787454
+Wer haette auch anders gewaehlt, wenn Du mit gezueckter Waffe hinter einem
+stehst, um bei der schweren Entscheidung zu helfen?
+
+
+Tiamak
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Willkommen Sting! (Tsunami, 24. Jun 2000, 00:37:35):
+~#! rn=Tiamak rt=961799796 rg=d.polar
+~#! tid=961787454
+Ich bin halt 'hilfsbereit'.
+
+Tsunami, verteilt auch 'Polar, das will ich!'-Buttons.
+
+-----------------------------------------------------------------------------
+
+
+
+to artikel 17 (Muadib, 24. Jun 2000, 22:25:40):
+~#! rn=Ark rt=961788736 rg=d.polar
+~#! tid=961787454
+ui ne quest mit die wo da die ;) wann ? *geifer* 
+
+-----------------------------------------------------------------------------
+
+
+
+Beim Aufraeumen ... (Tilly, 26. Jun 2000, 22:45:00):
+habe ich doch tatsaechlich etwas gefunden, was ich schon vor
+einiger Zeit dem knuffigen Kjarazzi geben wollte. Er war hoch
+erfreut bei meinem Besuch und nahm mein Geschenk dankend an.
+
+Jagt es ihm wieder ab, zeigt Mut und Tapferkeit! Traut auch,
+oder auch nicht. Alle schlechten Geruechte ueber Para-Moulokin
+sind erstunken und erlogen (die Guten natuerlich nicht >:).
+
+Chaotischer Gruss!
+                        - Tilly -
+
+-----------------------------------------------------------------------------
+
+
+
+Neueroeffnung (Seewirt, 17. Jul 2000, 20:31:58):
+Hi Leute 
+Hiermit moechte ich kundtun, das ich im Bereich des Polars meine Kneipe 
+eroeffnet hab. Sie befindet sich in der Naehe der Stadt Sirajan.
+Ich beantworte gerne Fragen zu meiner Umgebung und bin bei guten Vorschlaegen
+auch geren Bereit meinen Speiseplan zu erweitern.
+
+Seewirt
+
+P.s.: wenn ich was nicht wissen sollte sagt mir das ich mach mich dann schlau
+bzw bring den Trollen das bei.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Neuer Regionsmitarbeiter. (Tsunami, 17. Jul 2000, 20:34:54):
+Herzlich Willkommen, Fizban, neuer Regionsmitarbeiter Polar.
+
+Sein neues Gebiet findet ihr in der Naehe der Eisprinzessin.
+Viel Spass damit,
+
+Tsunami
+
+-----------------------------------------------------------------------------
+
+
+
+nur ein Tipp (Fizban, 18. Jul 2000, 23:47:42):
+Also da das zu einiger Verwirrung gefuehrt hat der Raum in der Zollstation
+oben ist _nicht_ mein Workroom. Es ist ein stink normaler Raum.
+Gruss Fizban
+
+-----------------------------------------------------------------------------
+
+
+
+interessante Information (Tsunami, 19. Jul 2000, 03:05:15):
+In im Verwaltungsbuero der Eismine wurde eine interessante Tafel
+installiert.
+
+i.A. Tsunami
+
+-----------------------------------------------------------------------------
+
+
+
+Sooo ;) (Gor, 11. Aug 2000, 15:31:13):
+Hui-Buhs Geschenk funktioniert jetzt auch.
+
+Have fun!
+
+Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Bug in den Speeren (Gor, 24. Aug 2000, 15:02:33):
+Hiho ich musste eben leider alle Speer aufgrund eines Bugs destructen...
+Sorry.
+Aber die Elfen haben bestimmt wieder neue. ;)
+
+Gruessle Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Schreckensdrache (Tsunami,  6. Sep 2000, 23:06:29):
+Hiermit ist der Schreckensdrache wieder freigegeben. Diejenigen, die ihn
+vor kurzem versucht haben zu metzeln, wissen, worum's geht (Zook toetet Gnome,
+statt Drache toetet Gnome... :)) )
+
+P.S. ich habe seine Werte nochmals leicht(!) nach unten korrigiert (nur die
+vom Drachen, nicht von seinen Koepfen).
+
+Tsunami. Fleissig.
+
+-----------------------------------------------------------------------------
+
+
+
+Polarbutton (Tsunami, 20. Sep 2000, 01:44:51):
+Die Polarbuttons wurden von emsigen Eiselfen eingesammelt. Neue gibts wie
+immer in der Eismine zu holen. Viel Spass damit. Ihr koennt euren
+Lieblings-Polar-Text nun z.B. fixieren.
+
+Tsunami. Chefbuttonbastler.
+
+-----------------------------------------------------------------------------
+
+
+
+Eisfestung kurzfristig geschlossen (Tsunami, 22. Sep 2000, 23:01:42):
+Hallo Profimetzler, 
+
+Bis Gor wieder gruenes Licht gibt, bleibt die Eisfestung kurzfristig
+geschlossen. Die Zwerge verhalten sich im Moment etwas seltsam, deshalb 
+bleibt die Tuer zu.
+
+Tsunami. Chefschliesser.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Eisfestung kurzfristig geschlossen (Amaryllis, 22. Sep 2000, 23:32:08):
+~#! rn=Tsunami rt=969656502 rg=d.polar
+~#! tid=969656502
+Hi,
+
+aus dem gleichen Grund hab ich den Zwergenangriff im Moment deaktiviert,
+sorry. Ich weiss noch nicht woran es liegt, vor allem, weil die Quest jetzt
+viele Monate lang gut lief...
+Ich geb Bescheid wenns wieder tut :-)
+
+WARNUNG: Nach Crash/Reboot kann der Angriff theoretisch wieder automatisch
+loslaufen, fuer evtl. Bugs, Lars-Besuche o.ae. uebernehme ich in diesem Fall
+keine Verantwortung!
+
+Amaryllis, bemueht, den Bug schnell zu beheben.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Eisfestung kurzfristig geschlossen (Ark, 22. Sep 2000, 23:52:23):
+~#! rn=Amaryllis rt=969658328 rg=d.polar
+~#! tid=969656502
+Zwerge verhalten sich immer seltsam, besonders, wenn es darum geht, dummen
+Elfen die Loeffel noch laenger zu ziehen.
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Eisfestung + Zwergenangriff... (Amaryllis, 24. Sep 2000, 22:16:55):
+... sind wieder dran, bei Problemen (insbesondere wenns um die Raeume oben auf
+der Mauer geht!) bitte _sofort_ Meldung, aber eigentlich sollte jetzt alles
+klar sein :-))
+
+Gruss,
+
+Ama*
+
+PS: Dank an diejenigen, die mir dabei geholfen haben.
+
+-----------------------------------------------------------------------------
+
+
+
+Neues? :) (Gor,  5. Okt 2000, 11:26:05):
+Man munkelt, das von Zeit zu Zeit Spieler im Innenhof der Festung
+verschwinden. Man koennte dem ja einmal auf den Grund gehen und vor allen
+Dingen saemtliche Warnungen ernst nehmen. Viel Spass beim Metzeln und schaut
+immer, dass euer Ruecken gedeckt ist.
+
+Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Todestagebuch (Amaryllis,  5. Okt 2000, 13:32:35):
+$subject wurde debugt (den Bug duerften nur wenige "Vielsterber" bemerkt haben
+:-)).
+
+Ausserdem wurden 2 neue Funktionen hinzugefuegt. Danke den Spielern  fuer die
+Anregung.
+
+Gruss,
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Namensstempel (Amaryllis,  5. Okt 2000, 15:04:41):
+Hiho,
+
+da es teilweise sehr spielerfreundliche Gegenden gibt, in denen die
+Ausruestung beim Tod schneller zerstoert wird, als man aus der Sequenz kommt
+und sie wieder einsammeln kann, hab ich auf mehrfachen Spielerwunsch in den
+Stempel noch eine Moeglichkeit eingebaut, dass man - vergleichbar dem
+'erlaube' in den Seherhaeusern - auch anderen Spielern erlauben kann, eigene,
+bestempelte Objekte aufzuheben.
+
+Viel Spass,
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neues? :) (Gor,  6. Okt 2000, 09:27:08):
+~#! rn=Gor rt=970737965 rg=d.polar
+~#! tid=970737965
+Leider muss ich das gute Stueck nochmal fuer einige Zeit abhaengen. Es gibt
+noch einiges zu tun...
+
+Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Umzug (Gor, 19. Okt 2000, 02:46:45):
+Den Schatten gefiel es nicht mehr.... deshalb haben sie von ihrem Makler eine
+neue Dimension bekommen..
+
+Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Hehe :) (Gor,  7. Nov 2000, 00:15:11):
+Gor empfiehlt 'liste' und vorsichtiges Forschen.
+
+Falls es irgendwelche Probleme mit Syntaxen oder aehnlichem gibt, bitte direkt
+eine Mail an mich. 
+
+Die Katakomben sind btw. auch wieder offen.
+
+Viel Spass
+
+Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Zwergenangriff (Amaryllis,  7. Nov 2000, 01:40:35):
+$subject wegen Bugs temporaer deaktiviert.
+
+Gruss,
+Amaryllis
+
+PS: Nein, ist nicht meine Schuld. Bedankt Euch bei denjenigen, die Gilden
+aendern ohne entsprechende Informationen herauszugeben.
+
+Amaryllis, wird dann einige Zwerge wohl gildenmaessig umstellen - funktioniert
+gut und erspart nen Haufen Aerger.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Zwergenangriff (Anatol,  7. Nov 2000, 01:41:55):
+~#! rn=Amaryllis rt=973557635 rg=d.polar
+~#! tid=973557635
+Zwerg Nase faellt unter den wuchtigen Hieben von einem Zwerg.
+...
+Ein chaotischer Zwerg faellt unter den wuchtigen Hieben von einem Rudel
+Zwergenkinder.
+
+Guessed right? ;)
+Anatol
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Zwergenangriff (Yendi,  7. Nov 2000, 11:27:19):
+~#! rn=Anatol rt=973557715 rg=d.polar
+~#! tid=973557635
+Muesste das nicht heissen "... faellt unter den wuchtigen Hieben eines Rudels
+Zwergenkinder" bzw. "...eines Zwergs"?
+
+YT,
+Konrad Yendi Duden
+
+
+-----------------------------------------------------------------------------
+
+
+
+Wow! Das gibts doch nicht!! (Tilly,  7. Nov 2000, 22:33:21):
+In aller Stille brach vor einiger Zeit eine geheime Expedition neugieriger
+Magier und Spieler in das noerdliche Polargebiet auf, um Geruechten nachzu-
+gehen, die von einem vergessenen Dorf berichteten.
+
+Ausgemergelt von den zahlreichen Entbehrungen kaempfte sich diese Gruppe
+durch Schnee und Eis und sah ihre Muehen schlussendlich doch vom Erfolg
+gekroent.
+
+Hoeret, staunet, sehet:
+
+Das friedfertige Voelkchen der Innuit bewohnt ein kleines Dorf auf Chaechma
+Briim'tar. Neugierig warten sie auf den Besuch zahlreicher Abenteurer, die
+ihnen bei einigen kleinen Problemen evtl. behilflich sein koennten.
+
+Der aufrichtige Dank des Expeditionsleiters gilt an dieser Stelle vor
+allem Liara, Zephyr, Xenada, Jenandra, Firehawk, Cinderella, Tsunami, Borka,
+Armitage, Thor und Zook, die sich um die Entdeckung des Dorfes wirklich ver-
+dient gemacht haben.
+
+Viel Spass, und nehmt Euch Zeit mit :-)
+                                              - Tilly - 
+
+p.s.: 1) Die Auszeichnung 'Erzmagier der Woche' geht diesmal an Zook ;-)
+      2) Die Auszeichnung 'Regionsmagier der Woche' geht an Tsunami :)
+      3) Im Zuge dieser Entdeckung hat ein hier nicht naeher benannter
+         Schwarm Wildgaense beschlossen, dieses Dorf mit in die 'Flugroute'
+         aufzunehmen
+      4) Eiskrieger sind nicht schwach
+      5) Lob (oder auch Beschwerden, Anregungen) bitte per Mail an mich
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Wow! Das gibts doch nicht!! (Tsunami,  8. Nov 2000, 22:19:51):
+~#! rn=Tilly rt=973632801 rg=d.polar
+~#! tid=973632801
+Der Titel sagt es bereits. Ich habe das gleiche gedacht, als ich mich auf
+die Suche nach diesem vergessenen Dorf gemacht hatte. 
+
+Das Polargebiet ist in der Tat um eine ganz tolle Neuerung reicher geworden.
+
+Ich wuensch euch allen ebensoviel Spass beim Forschen, wie ich hatte.
+
+P.S.:  1) Die Auszeichnung 'Magier des Monats' geht an Tilly. :)
+       2) Eiskrieger sind nicht schwach.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Wow! Das gibts doch nicht!! (Tsunami,  8. Nov 2000, 22:26:43):
+~#! rn=Tsunami rt=973718391 rg=d.polar
+~#! tid=973632801
+Es geht noch weiter ;)
+
+Man koennte in der Tat meinen, das gibt's doch nicht. Aber das Polargebiet
+ist um noch eine weitere Attraktion reicher geworden. Eine, wo das Blut nur
+so spritzt und Eingeweide massenweisse auf den Boden klatschen. Wetzt eure
+Klingen und blast das Kriegerhorn (Zauberer duerfen alternativ auch mit ihrem
+Zauberstab wedeln).
+
+Ein Toast auf Gor, 'Magier des naechsten Monats'.
+
+Tsunami, stolz auf seine vielen, hochmotivierten Polar-Mitarbeiter.
+
+P.S.   1) Polar rulez.
+       2) Polar ist toll.
+       3) Polar. Find ich gut.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Wow! Das gibts doch nicht!! (Grimmborn,  8. Nov 2000, 22:32:39):
+~#! rn=Tsunami rt=973718803 rg=d.polar
+~#! tid=973632801
+Und die Fragen des Monats sind:
+
+1) Wieviel ist Dir fuer diese Lobeshymnen gezahlt worden?
+2) Welche Drogen nimmst Du (und was kosten sie *auch haben will*)?
+3) Wer sponsort Deine Kaelteschutzkleidung?
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Wow! Das gibts doch nicht!! (Tsunami,  8. Nov 2000, 22:35:43):
+~#! rn=Grimmborn rt=973719159 rg=d.polar
+~#! tid=973632801
+1) nix, bin von Natur aus freundlich
+2) die Droge heisst Kalifornien (bin immer guter Laune, da hier das Wetter
+   klasse ist -- renne immer noch in kurzen Hosen rum)
+3) siehe 2) wieso brauch ich Kaelteschutzkleidung?
+
+Tsu*, munter.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Wow! Das gibts doch nicht!! (Firehawk,  8. Nov 2000, 22:36:43):
+~#! rn=Grimmborn rt=973719159 rg=d.polar
+~#! tid=973632801
+Die Antworten des Monats sind:
+
+1) Wieso sollte er Geld kriegen, er macht doch Werbung fuer die eigene Region.
+3) Der Laden im Innuitdorf.
+
+Firehawk
+
+Ps: Tillys Gebiet ist toll.
+PPS: Wirklich.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Wow! Das gibts doch nicht!! (Grimmborn,  8. Nov 2000, 22:37:19):
+~#! rn=Tsunami rt=973719343 rg=d.polar
+~#! tid=973632801
+1) Falls wir uns begegnen sollten: weiche mir aus oder warne mich.
+2) Nicht richtig waehlen koennen, aber kurze Hosen. Schon klar.
+3) Polar in kurzen Hosen? Naja, muss jeder selber wissen.
+
+Grimmborn der Atheist
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Wow! Das gibts doch nicht!! (Tsunami,  8. Nov 2000, 22:39:58):
+~#! rn=Grimmborn rt=973719439 rg=d.polar
+~#! tid=973632801
+1) Du siehst mich schon von weitem, wenn ich auf dich zurolle (bin etwa
+   10-30 Meter hoch, weiss schaeumend und ziemlich laut. Und du weichst mir
+   besser aus. Noch besser, du FLUECHTEST.
+2) Ich waehle Vanille-eis.
+3) Ich weiss es.
+
+Tsu*, vergnuegt.
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Wow! Das gibts doch nicht!! (Grimmborn,  8. Nov 2000, 22:45:59):
+~#! rn=Tsunami rt=973719598 rg=d.polar
+~#! tid=973632801
+1) Keine Sorge, ich weiche aus. Mit Leuten, die sich fuer eine Lawine 
+   halten (oder whatever) diskutiere ich doch nicht. Alle mir bekannten
+   psychiatrische Krankenschwestern sind mit prominenten Linuxkernelhackern
+   verheiratet. Nicht mein Job.
+2) Ah, so einer bist Du. Danke fuer die Warnung. Pistazie rulez.
+3) Gruss an Descartes (ach nee, dafuer war noch "denken" notwendig).
+
+Grimmborn der Atheist (ein Glueck dass das hier nicht meine Rubrik ist)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Wow! Das gibts doch nicht!! (Tsunami,  8. Nov 2000, 22:51:23):
+~#! rn=Grimmborn rt=973719959 rg=d.polar
+~#! tid=973632801
+1), 2), 3) sind mal wieder leicht vom Topic abgekommen ;)
+4) viel Spass bei den neuen Quests
+
+Tsunami. Traegt einen Polar-Button.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Wow! Das gibts doch nicht!! (Grimmborn,  8. Nov 2000, 22:57:54):
+~#! rn=Tsunami rt=973720283 rg=d.polar
+~#! tid=973632801
+1) etc. Was ist "topic"? Das mud ist in .de, red' gefaelligst deutsch in 
+   dieser online community.
+4) Wozu? Ich bin Magier.
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Wow! Das gibts doch nicht!! (Yendi,  9. Nov 2000, 14:46:55):
+~#! rn=Grimmborn rt=973719959 rg=d.polar
+~#! tid=973632801
+1) Aber der Begriff "Tsunami" sagt Dir was, ja? So a la "richtig richtig
+RICHTIG   G R O S S E    WELLEN...
+
+ObPolar: Ein bisschen spaet jetzt, ich weiss, aber schreibt sich Inuit nicht
+mit nur einem "n"? Zumindest habe ich den Begriff bis jetzt in keiner Sprache
+mit Doppel-n transkribiert gesehen.
+
+YTY
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Wow! Das gibts doch nicht!! (Tilly,  9. Nov 2000, 14:49:43):
+~#! rn=Yendi rt=973777615 rg=d.polar
+~#! tid=973632801
+*seufz*
+
+Ja,
+Innuit schreiben sich im RL mit einem n. Aber wir sind nicht im RL hier :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Wow! Das gibts doch nicht!! (Anatol,  9. Nov 2000, 14:54:54):
+~#! rn=Yendi rt=973777963 rg=d.polar
+~#! tid=973632801
+Ja, finde ich auch. Der eine oder andere NPC dort ist wirklich aus dem
+wahren Leben gegriffen. Ich finde, das geht zu weit, vie zu weit.
+
+Anatol, Den-Ohne-Das-E-In-Der-Mitte angrinsend
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: Wow! Das gibts doch nicht!! (Householder, 10. Nov 2000, 19:21:02):
+~#! rn=Anatol rt=973778094 rg=d.polar
+~#! tid=973632801
+hm meines wissens haben tsunamis bis kurz vor ihrem ende nur eine hoehe von
+einigen dezimetern :-)
+HH klugscheissend
+
+-----------------------------------------------------------------------------
+
+
+
+Re^13: Wow! Das gibts doch nicht!! (Grimmborn, 10. Nov 2000, 19:26:24):
+~#! rn=Householder rt=973880462 rg=d.polar
+~#! tid=973632801
+Kommt auf den Tsunami an. Der letzte, wo sie auf Hawaii die halbe Insel auf
+die Berge gescheucht hatten, hatte auch am Ufer eine Hoehe von wenigern
+Dezimetern. 
+
+Aber "Naturkatastrophe" passt schon...
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Wow! Das gibts doch nicht!! (Tilly, 17. Nov 2000, 20:51:47):
+~#! rn=Tilly rt=973632801 rg=d.polar
+~#! tid=973632801
+Moin moin,
+
+aufgrund eines kleinen Fehlers hat Soeren beschlossen, das kommende
+Wochenende zu verreisen und alle seine Speere mitzunehmen. Hoffen
+wir mal, dass er den Fehler findet :-)
+
+Neuigkeiten dazu an dieser Stelle wenn er wieder da ist.
+
+ - Tilly - 
+
+-----------------------------------------------------------------------------
+
+
+
+Namensstempel (Amaryllis, 22. Nov 2000, 17:49:43):
+Hiho,
+
+$subject muss neu geholt werden... *hust*
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Zwergenangriff (Amaryllis, 23. Nov 2000, 23:55:06):
+$subject ist wieder dran.
+
+Ausserdem gibts ein paar wenige neue Raeume an der Mauer.
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Soooooooooo (Gor, 29. Nov 2000, 02:37:32):
+Hiho,
+ich moechte hier an dieser Stelle einige Namen nennen, um eventuell etliche
+Missverstaendnisse und Geruechte aufzuklaeren.
+
+Zu Testspielern meiner Quest:
+
+Mesirii mit 6 vollen Questdurchlaeufen.
+Del mit 6 vollen Questdurchlaeufen und vielen Korrekturlesestunden.
+Arancia mit einem Questdurchlauf.
+Matis mit aehm sagen wir einem halben ;) (wegen Urlaub abgebrochen)
+Cisou und Golas gaben vielleicht etwas frueh wegen einigen
+Umbauarbeiten auf.
+
+Ja, ich habe mir die Freiheit nach einem ganzen Jahr proggen herausgenommen
+und die Quest als Erster gespielt. Was unter anderem auch dazu diente einige
+letzte Bugs aufzudecken. Dabei habe ich weder irgendwen behindert oder einem
+ehemaligen Testie geholfen.
+
+
+Gor hat die Schnauze voll!
+
+-----------------------------------------------------------------------------
+
+
+
+neuerung (Fizban, 29. Nov 2000, 19:51:17):
+Hi
+Nein Die Waechter sind staerker und sie verlangen nicht mehr Zoll aber ich hab
+mir von Seewirt berichten lasen, dass jetzt Elche westlich seiner Kneipe
+rumlaufen, zu finden sind.
+i.A.: fuer Seewirt Fizban (der ueber seinen Rechner flucht)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Elch (Fizban, 30. Nov 2000, 10:58:00):
+sorry ich hatte ein klitze kleine Kleinigkeit vergessen gestern Abend deswegen
+musst ich noch mal den Ausgang deaktivieren jetzt ist er offen und es sollte
+alle in ordnung sein.
+Fizban
+P.s.: Danke Rikus
+
+-----------------------------------------------------------------------------
+
+
+
+Morpheus & Co (Gor,  1. Dez 2000, 13:29:24):
+Hiho ihr lieben Metzler.
+a) Man bekommt das Kamar wirklich nur noch sehr selten.
+b) Wenn man stirbt ist es jetzt auf alle Faelle weg.
+
+Gruss Gor
+
+-----------------------------------------------------------------------------
+
+
+
+aeh... (Amaryllis,  1. Dez 2000, 18:41:13):
+...durch einen irreparabel dummen Befehl *hust* sind eure Orkanspeere
+weg...muesst also neue holen.
+
+Ama*, in die Ecke stehend.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: aeh... (Gor,  2. Dez 2000, 14:24:29):
+~#! rn=Amaryllis rt=975692473 rg=d.polar
+~#! tid=975692473
+Schreib dir halt mal nen Ali du Seppl ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Questbelohnung (Gor, 14. Dez 2000, 16:05:47):
+Ihr solttet die Belohnung nochmal etwas genauer unter die Lupe nehmen.
+Syntaxschwierigkeiten sollte es somit nicht mehr geben.
+
+Gruss Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Neulich bei den Innuit (Tilly, 18. Dez 2000, 00:22:03):
+Moin moin,
+
+scheinbar hat die lange Abwesenheit von Soeren doch etwas Gutes bewirkt.
+Denn nun ist er erholt und ausgeruht wieder hier. Und er hat Euch auch
+etwas mitgebracht, naja, nichts Neues.
+
+Sondern etwas, das nun hoffentlich ohne Fehler laeuft :-)
+
+Gruss,
+              - Tilly - 
+
+-----------------------------------------------------------------------------
+
+
+
+Bierchen und geloeschte Files (Tsunami, 10. Jan 2001, 02:27:01):
+Hallo liebe Mitmudder,
+
+leider hat Bierchen, ohne mich vorher zu informieren, alle 'seine' Files
+in der Polarregion geloescht. Es waren zwar nur sehr wenige, aber unter
+ihnen war ein Raum, in denen sich mehrere Seherhaeuser befinden, die nun
+nicht mehr erreichbar waren, bis das Problem von einem Erzmagier geloest
+wurde (schnell einen neuen Raum schreiben, und unter gleichem Namen an die
+entsprechende Pfadstelle gelegt). Ich moechte mich an dieser Stelle bei den
+EMs fuer das schnelle Eingreifen bedanken -- Onkel Zook ist halt wirklich
+lieb und nett. 
+
+Ich moechte mich auch bei allen Spielern fuer den entstandenen Schaden
+entschuldigen, waere ich von Bierchen direkt informiert worden, haette man
+eventuell eine sauberere Loesung finden koennen.
+
+Nun, hier nun meine Info an euch, was ich als RM Polar in der Sache zu tun
+gedenke:
+
+hier mein offener Brief an Bierchen, und die Goetter, die es betrifft:
+
+*************************
+
+Lieber Bierchen,
+
+Mit Schrecken habe ich heute abend feststellen muessen, dass du saemtliche
+Polar-Files geloescht hast, ohne mich vorher zu informieren.
+
+Ich haette zumindest eine Ankuendigung von dir erwartet, damit ich moegliche
+Interferenzen haette abklaeren koennen. Es stehen ja zum Beispiel mehrere
+Seherhaeuser in einem der von dir geloeschten Raeume.
+
+Nun, ich habe mich inzwischen bei unserer Rechtsabteilung an unserem Institut 
+schlau gemacht. Ich befinde mich hier im groessten privaten Forschungslabor
+von ganz Amerika. Wir produzieren Produkte und Software fuer den Non-Profit
+und den industriellen Bereich, deshalb ist unsere Rechtsabteilung ziemlich
+gross und aeusserst hilfsbereit.
+
+Die Sache sieht nach amerikanischem Recht so aus: da ich in Amerika arbeite
+und
+von hier aus Daten bearbeite, falle ich unter amerikanisches Recht, auch wenn 
+der Mudserver in Deutschland steht. Soweit so gut. Da ich als Regionsmagier
+das Polargebiet verwalte und deine Files ueberwache und auch aendere, habe ich
+auch Anspruch auf den Code. z.B. als ich Seherhaeuser in den 'kamelotraum.c'
+gelegt hatte oder als ich deine Raeume gebietsmaessig abnahm, habe ich nun
+nach
+amerikanischem Recht ebenfalls Anspruch auf diese Raeume. Um es dir ganz klar
+zum machen: ein bisschen von meinem geistigen Eigentum steckt in deinem Code,
+deshalb ist es nicht mehr dein Code. Die Beweislage ist ziemlich kompliziert:
+du muesstest nachweisen koennen, dass niemand, aber auch gar niemand zu keiner
+Zeit irgendwann einmal Input zu deinem Code geliefert hat. Und das duerfte
+nicht einfach werden. Hast du deine Repfiles nie abgearbeitet und die Ideen
+von Spielern in deine Raeume eingebaut? Hat nie ein Erzmagier Properties
+in den Raeumen gesetzt? Hat nie der RM auch nur eine Zeile in deinen Code
+eingefuegt? Hmmm... viel Spass beim 'beweisen'. Es steht dann Aussage gegen
+Aussage. Ich stehe felsenfest dazu, dass ich jede einzelne deiner Dateien mit
+Ergaenzungen versehen habe. Versuch da mal, das Gegenteil zu beweisen, es wird
+dir nicht gelingen!
+
+Was ich nun tun werde: alle deine geloeschten Polardaten werden von mir
+hoechstpersoenlich wieder angeschlossen, in einem Verzeichnis wo du keinen
+Schreibzugriff hast. Die Empfehlung meiner Rechtsabteilung zu der ganzen Sache
+war: ... 'so sue me'... 
+
+In diesem Sinne,
+
+Tsunami aus Amerika.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Bierchen und geloeschte Files (Nevok, 10. Jan 2001, 02:39:36):
+~#! rn=Tsunami rt=979090021 rg=d.polar
+~#! tid=979090021
+*Pruuuuuuuuuuuuuust*
+........aaaaaaaaand the hoooooooooooooooooome of the braaaaaaaaaaaaaaaaaaaave!
+
+
+Ich wusste doch, dass auch aus Schweizern was ordentliches werden kann :)
+
+
+Nevok, derzeit auf Auslandssemester in Deutschland
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Bierchen und geloeschte Files (Anacrion, 10. Jan 2001, 03:12:28):
+~#! rn=Tsunami rt=979090021 rg=d.polar
+~#! tid=979090021
+In diesem Sinne ...
+
+wuerde ich vorschlagen, diese Politik im ganzen Mud zu vertreten.
+Es kann nicht angehen, dass ganze Landstriche in den Bithimmel geblasen haben,
+in die auch Spoieler groesseren Aufwand gesteckt haben, nur um solche Aktionen
+als Munition in irgendwelchen Privatfehden zu missbrauchen. Da in jedemGebiet
+auch (zumindest meistens) die Arbeit oder die Ideen von anderen stecken,
+duerfte die Beweislage (insbesondere hinsichtlich der Zurverfuegungstellung
+des Codes) recht uebel fuer den Magier sein ... 
+
+Ausserdem: Soviele Schlagzeilen wie so ein Prozess wuerde das MG nie wieder
+kriegen :)
+
+Anac*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Bierchen und geloeschte Files (Golas, 10. Jan 2001, 03:24:40):
+~#! rn=Anacrion rt=979092748 rg=d.polar
+~#! tid=979090021
+voraussetzung von tsunami war, dass er in amerika hockt. wenn also wargon auch
+in usa ist, dann geht das ... sonst nehme ich an, dass das wieder mal etwas
+schwerer wird ...
+aber ich bin auch dafuer, dass das in zukunft so gehandhabt wird.
+und um bierchen mal vorzugreifen ...
+der verdient so viel patte, dass er sich so einen prozess problemlos leisten
+kann.
+
+golas auf den zap wartend ...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Bierchen und geloeschte Files (Catweazle, 10. Jan 2001, 11:12:13):
+~#! rn=Tsunami rt=979090021 rg=d.polar
+~#! tid=979090021
+Danke Tsunami,
+endlich tut mal jemand das einzig richtige.
+Wo war doch  gleich das backup von /players?
+
+YTC
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Bierchen und geloeschte Files (Satanas, 10. Jan 2001, 11:14:55):
+~#! rn=Catweazle rt=979121533 rg=d.polar
+~#! tid=979090021
+Wenn ihr schon dabei seid, koennt ihr ja mal Boschante restaurieren :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Bierchen und geloeschte Files (Deepblue, 10. Jan 2001, 11:24:48):
+~#! rn=Satanas rt=979121695 rg=d.polar
+~#! tid=979090021
+Ja, und das Haus der Farben, und das Skowedorf, und...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Bierchen und geloeschte Files (Gnome, 10. Jan 2001, 12:09:40):
+~#! rn=Tsunami rt=979090021 rg=d.polar
+~#! tid=979090021
+:klatscht in die Haende.
+
+gnOme meint: wargon, uebernehmen sie!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Bierchen und geloeschte Files (Padreic, 10. Jan 2001, 12:16:03):
+~#! rn=Gnome rt=979124980 rg=d.polar
+~#! tid=979090021
+Zunaechst dachte ich doch tatsaechlich das es sich im Polargebiet
+tatsaechlich um ein Gebiet handelt und Bierchen nur vergessen/uebersehn hat,
+das dort einige Seherhaeuser stehn. Aber wenn ich das richtig sehe handelt
+es sich da um genau _einen_ Raum der soweit ich weiss eigentlich nur fuer
+Seherhaeuser geschrieben wurde und entworfen auch noch von einem Spieler!
+Sorry Bierchen, das hat in meinen Augen nichts mehr mit abhaengen zu tun,
+sondern wirklich nur noch mit gezielt moeglichst viel Schaden anrichten.
+Haettest Du die Haeuser in Ruhe verlegt und das ganze ordentlich abgeklemmt
+ok, aber so...
+Ich glaube ich gehoere zu denjenigen die bisher sehr viel Verstaendnis fuer
+Dich hatten und der auch nach wie vor der Meinung war, das Du durchaus das
+Recht zum abklemmen hast, aber nun solltest Du die Konsequenz ziehen und
+Dich schleunigst zum Spieler abstufen oder loeschen lassen. Haeng ab was Du
+abhaengen willst und dann lass Frieden einkehren und zieh die Konsequenz.
+
+Pad*
+
+P.S.: Und Sorry Tsunami, Entscheidungen ueber Restaurierung von Code ist in
+meinen Augen immer noch Sache der Erzmagier. Im Zweifel bist naemlich nicht
+Du derjenige der in seinem feinen Amerika eine anzeige abbekommt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Bierchen und geloeschte Files (Anacrion, 10. Jan 2001, 13:31:04):
+~#! rn=Padreic rt=979125363 rg=d.polar
+~#! tid=979090021
+Ja und Nein, Padreic.
+
+Ich denke mal, dass wenn es zu einer Klage kommt, der Verein das Ziel ist. Auf
+Unterlassung der Nutzung von Bierchens Code.
+
+Vor diesem Hintergrund ist es meiner MEinung nach aeusserst problematisch,
+dass die Entscheidungen bezueglich der Codenutzung usw. nicht von gewhlten
+Vereinsvertretern gefaellt werden, die der Verein auf der Hauptversammlung
+auch ENTLASTEN koennte. Insbesondere muessten wohl die Vorstandsmitglieder des
+Vereins alle Handlungen der Erzmagier gegen sich gelten lassen, da es in den
+Aufgabenbereich des Vorstands faellt, den Verein nach aussen zu vertreten.
+
+Ich glaube nicht, nicht, dass es im Normallfall zu Strafen kommen wird (asser
+evtl. bei Wiederholung), jedoch weiss ich nciht, w Justitia im Falle eines
+Falles hineilen wird. IMHO kann man sowohl den anschliessenden (wenn nicht
+EM), jegliche EM als auch den Vereinsvorstand und den Verein selber mit
+irgendwelchen Strafen belegen.
+
+Waee es nicht sinnvoll, mal ein paar juristische Gutachten einzuholen bzgl.
+
+a) Was ist worst-case, wenn ein magier klagen sollte 
+b) was ist worst-case fuer die Vorstaende/Erzmagier/Magier (die anschliessen)
+
+Abhaengig von diesen Informationen ist es IMHO sinnvoll (zumindest, wenn das
+so aussieht wie ich denke und das maximumdie prozesskosten und unterlassung
+sind, da keine bereicherung vorliegt, da wir non-kommerz sind) durchaus
+vertreten, gnadenlos eine Nicht-bhaeng-Politik zu vertreten. 
+
+Ich meine: Istirgendwer der Meinung, z.B. wenn Boing verlangen wuerde, seinen
+Kram abzuhaengen, das auch zu tun ?? Danach koennte das MUD dichtmachen. Es
+gibt durchaus einige Faelle von MAgiern, die entweder sehr wenig oder einiges
+programmiert haben und die ihrem Kram abhaengen wollen/es haben. Wo ist die
+Grenze fuer Schaden am MUD? Wann wird es nicht toleerierbar, den KRam
+abzuhaengen ? Wenn nur die Mudlib nciht betroffen ist ? Was, wenn ein MAgier
+SEINE Gilde abhaengen will? Die rechtslage ist ueberall gleich (IMHO). Die
+Frage ist nur, wo man den Schlussstrich zieht.
+
+Ich plaediere nachdruecklich (und laenglich, wie man sieht), dafuer, den
+SChlussstrich zu ziehen, bevor man irgendwas abhaengt (insofern die legale
+Analyse nicht moegliche schwerwiegende Folgen ergibt).
+
+my 22.5 cents
+Anac*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Bierchen und geloeschte Files (Raidri, 10. Jan 2001, 17:40:15):
+~#! rn=Anacrion rt=979129864 rg=d.polar
+~#! tid=979090021
+Wieso schwere Beweislage? Ich nehme mal an, dass im Code oben ungefaehr etwa
+folgendes stehen (sollte?):
+// Aenderungsgeschichte
+// Datum           Magier          Aenderung
+// irgendwann          Jemand              Neu
+-Raidri, jetzt total verwirrt . o 0 (Mal int erhoehen)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Bierchen und geloeschte Files (Garnix, 10. Jan 2001, 20:56:23):
+~#! rn=Tsunami rt=979090021 rg=d.polar
+~#! tid=979090021
+oh, soweit ich mich erinnere, war bierchen rm, als dieser besagte raum
+angeschlossen wurde, so um den zeitraum, als er deine eismine abnahm. gehoert
+die eismine jetzt auch bierchen?
+wird ja spannend, nach amerikanischem recht :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Bierchen und geloeschte Files (Nevok, 10. Jan 2001, 21:02:20):
+~#! rn=Garnix rt=979156583 rg=d.polar
+~#! tid=979090021
+Wer zu feige ist den eigenen Namen zu gebrauchen aber clever genug keinen Gast
+zu nehmen erschafft sich kurz nen Spielerchen. Klug und feige, tolle
+Kombination :)
+
+Nevok
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Bierchen und geloeschte Files (Wurzel, 10. Jan 2001, 21:03:33):
+~#! rn=Tsunami rt=979090021 rg=d.polar
+~#! tid=979090021
+speziell zu dem raum mit den seherhaeusern:
+ich hatte vorher mit bierchen abgesprochen (und er hatte mir das definitiv
+zugesagt), dass dieser raum erhalten bleibt. ansonsten haette ich da
+laengst was unternommen.
+man sieht, an solche absprachen, die erst vor wenigen tagen getroffen
+wurden, glaubt bierchen sich auch nicht mehr halten zu muessen.
+es wurden schon leute fuer wesentlich weniger geloescht, wollte ich
+an dieser stelle nur mal bemerken.
+
+wurzel (heute mal ziemlich sauer)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Bierchen und geloeschte Files (Raidri, 10. Jan 2001, 21:08:15):
+~#! rn=Wurzel rt=979157013 rg=d.polar
+~#! tid=979090021
+Wie konnte Bierchen die Raeume ueberhaupt loeschen? Nachdem was ich gehoert
+habe, wurden ihm doch so ziemlich saemtliche Schreibrechte entzogen.
+-raidri
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Bierchen und geloeschte Files (Weatherwax, 10. Jan 2001, 22:20:54):
+~#! rn=Gast1 rt=979160625 rg=d.polar
+~#! tid=979090021
+Aehh, abgesehen davon, dass noch nicht klar ist, ob ueberhaupt EU- oder
+amerikanisches Recht anzuwenden ist, seid Ihr Euch sicher, dass Ihr hier
+rechtliche Massstaebe anlegen wollt. Die richten sich naemlich im Zivilrecht,
+und das sowohl in den Staaten als auch hierzulande nur nach oekonomischen
+Gesichtspunkten.
+
+Wenn ich etwas fuer eine Gemeinschaft mache, der ich mich freiwillig
+angeschlossen habe, ehrenamtlich - zugegeben - und ohne Bezahlung und
+beschliesse eines Tages, ihr den Ruecken zu kehren, hinterlasse ich dann
+verbrannte Erde?
+
+Wie man so hoert, ist die Frage des Eigentums an den bewussten Dingen ja
+durchaus strittig, aber ich halte diese Frage fuer rein akademisch.
+
+Mir ist wichtig, dass jemand, der eine Haltung einnimmt wie der bewusste
+Magier, dann auch seine Koffer packt und bitte nicht mehr hier aktiv wird. Das
+Thema Gemeinschaft, Kommunikation, und Kooperation hat sich wohl erledigt.
+Andererseits vertraue ich darauf, dass andere das ersetzen, was kaputt gemacht
+wurde (vielen Dank an dieser Stelle, kann mir vorstellen, dass das viel Arbeit
+ist) und lege vor allem auch keinen Wert darauf, Raeume zu betreten, die
+unwiederbringlich weg sind. Die kann ich verschmerzen.
+
+Ich will nicht den Schaden verharmlosen, den einige Spieler sicherlich zu
+spueren bekommen haben, der wahr sicherlich in einzelnen Faellen nicht ohne.
+Ich moechte nicht eines Tages da stehen und mein Haus ist nicht mehr da.
+Unterm Strich geht es mir nur darum dass hier zu oft zu viele den Spass des
+Spiel mit BLUTIGEM Ernst verwechseln. Und was Bierchen gemacht hat, ist nur
+ein Beispiel. Fast jeden Tag liest man in der Zeitung und vermeint bereits am
+Tonfall zu erkennen, dass es eigentlich nicht mehr nur um Spass gehen kann.
+
+Seid lieb, und versucht, Euch ein bisschen zu entspannen. Auch wenns Spinner
+gibt.
+
+Viele Gruesse
+
+Wx
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Bierchen und geloeschte Files (Wurzel, 11. Jan 2001, 00:30:28):
+~#! rn=Anacrion rt=979129864 rg=d.polar
+~#! tid=979090021
+immer dann wenn der verein ins spiel gebracht wird, muss ich wohl oder
+uebel mich zu wort melden.
+ohne jetzt jurist zu sein, sehe ich die rechtslage da etwas problematisch.
+der verein hat eine satzung, die jeder auf der webseite ansehen kann.
+darin steht nichts davon, dass der verein in irgend einer form auf
+die inhaltliche ausgestaltung des muds einfluss nimmt. und bisher
+war das auch immer so. der verein stellt lediglich die plattform bereit,
+auf der das mg laeuft.
+meiner meinung nach ist das auch okay so und sollte so bleiben. ich
+moechte vermeiden, dass auf der hauptversammlung darueber abgestimmt
+wird, ob die zaubis nun auf- oder abgewertet werden.
+es kann aber passieren, dass das von einem gericht etwas anders gesehen
+wird, dass der verein als betreiber des mg auch eine verantwortung fuer
+den inhalt, sprich den code, uebernehmen muss. das ist wie gesagt nicht
+in unserem vereinszweck enthalten und meiner meinung nach auch nicht
+wuenschenswert.
+worst case, wenn ein magier klagt, ist dass das gericht die schliessung des
+mg verfuegt. aber das erwarte/vermute ich nicht. nach allem, was hier
+diskutiert wurde, ist die rechtslage bei den teilen, die nicht zur
+magieinsel gehoert haben, sowieso recht wackelig, da sie nicht allein von
+bierchen entwickelt wurden. insofern erwarte ich auch nicht, dass im
+(hoffentlich hypothetischen) fall eines prozesses es eine wie auch
+immer geartete verurteilung des vereins geben koennte und sehe dem dann
+doch gelassen entgegen. und ich vermute auch nicht, dass speziell mir
+als vorstandsmitglied eine strafe aufgebrummt wird :)
+
+also: cool bleiben. juristische gutachten kosten geld, das ich lieber fuer
+was anderes ausgegeben sehen wuerde. in der derzeitigen situation sehe
+ich keine veranlassung dazu. wir koennen das gerne auf der naechsten
+mitgliederversammlung diskutieren.
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Bierchen und geloeschte Files (Golas, 11. Jan 2001, 01:39:48):
+~#! rn=Wurzel rt=979169428 rg=d.polar
+~#! tid=979090021
+ich hab heute mal ein wenig mit freunden ueber das thema geredet.
+konsens war, dass eine verfuegung gegen das mg von bierchen nur erwirken kann,
+dass sein quellcode in deutschland nicht mehr zur verfuegung gestellt werden
+darf.
+tsunami ... habt ihr noch nen outlet frei? ;)))
+
+winke winke
+Golas
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Bierchen und geloeschte Files (Vincent, 11. Jan 2001, 11:04:58):
+~#! rn=Golas rt=979173588 rg=d.polar
+~#! tid=979090021
+Ich glaube, die Gerichte wuerden im Falle einer Klage in dem Betreiber von
+MG den Beklagten sehen. Und das koennte evt. diejenige Person sein, die
+den Rechner, auf dem MG laeuft, aufgestellt hat, und die dem MG-Rechner den
+Zugang zum Internet zu Verfuegung stellt. PDen Begriff Person verwende ich
+hier im juristischen Sinne - es kann also auch eine Institution, Firma,
+Gemeinschaft etc. sein. Irgendwo muss der MG-Rechner ja stehen und am
+Internet angeschlossen sein.
+
+Gruss
+Vincent
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Bierchen und geloeschte Files (Silvana, 11. Jan 2001, 11:15:01):
+~#! rn=Vincent rt=979207498 rg=d.polar
+~#! tid=979090021
+Hmmm... ich stell einfach einmal eine ganz ketzerische Frage: Wer sagt
+eigentlich, dass Bierchen diesen Polarraum geloescht hat? Wir wissen doch
+eigentlich nur folgenden:
+- Bierchen wollte die Magie-Insel loeschen und hat das getan.
+- Bierchen wollte _nicht_ die Chaosgilde (bzw seine Beitraege) loeschen und
+die ist auch noch da. (Bis auf eine Kleinigkeit, die Sting gestern auffiel,
+die aber nicht in den Gildenverzeichnissen gespeichert war. Das hake ich mal
+als Versehen ab.)
+- Bierchen hat seine Teile der Feuerinsel geloescht und das auch zugegeben.
+Dies ist die Stelle, an der er wirklich Schaden angerichtet und anderen Magier
+wie Spielern Arbeit gemacht hat. OK, ist schade um die Magie-Insel, aber damit
+hat er anderen nicht _so_ sehr geschadet.
+- Vom Polarraum wissen wir eigentlich nur, dass Bierchen Wurzel gesagt hat,
+dass er erhalten bleiben soll, und das der Raum jetzt weg ist. WER ihn
+geloescht hat, wissen wir nicht. Klar, das es Bierchen war, ist
+wahrscheinlich. Aber sicher? Njet.
+
+Also bitte, bevor Ihr Steine werft, fragt Euch bitte, wieso Ihr sie werft.
+
+  Silvana
+
+-----------------------------------------------------------------------------
+
+
+
+HuestelHuestel (Gor, 11. Jan 2001, 17:16:57):
+Aehm also ... aehm kleinen Bug behoben leider wurden dabei saemtliche Clones
+des Schluesselbundes zerstoert. *raeusper*
+Also nochmal holen.... sorry
+
+Gruss Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Re: HuestelHuestel (Amaryllis, 11. Jan 2001, 17:19:17):
+~#! rn=Gor rt=979229817 rg=d.polar
+~#! tid=979229817
+Ich koennte ja jetzt jemanden zitieren, der mir - nachdem mir vor Wochen das
+Gleiche passiert ist - ein "schreib Dir halt mal nen Ali dafuer, Du Sepp!" an
+den Kopf geworfen hat :-)
+
+Da der Artikel nicht mehr vorhanden ist, scheint da jemand Glueck gehabt zu
+haben :)
+
+scnr,
+Ama* :)
+
+-----------------------------------------------------------------------------
+
+
+
+Zwergenangriff (Amaryllis, 14. Jan 2001, 19:39:24):
+$subject im Moment deaktiviert, da ich erst ein paar neue Bugs (entstanden
+u.a. aus den ganzen Querelen der letzten Zeit, ihr wisst schon) fixen muss.
+
+Ama*, sich fuer die Aufmerksamkeit und insbesondere bei Jemandem ganz
+besonders bedankend.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Bierchen und geloeschte Files (Teddy, 15. Jan 2001, 19:00:58):
+~#! rn=Vincent rt=979207498 rg=d.polar
+~#! tid=979090021
+Da in der Regel wohl mitlerweile erstmal der Betreiber und nicht der Provider
+angegangen wird, waere eine Verfuegung gegen den "Provider" wohl sehr
+unwahrscheinlich.
+Damit kommen wir wohl oder uebel doch wieder zum Verein zurueck.
+
+Teddy, freut sich schon riesig. :-(
+
+-----------------------------------------------------------------------------
+
+
+
+Quest nicht mehr spielbar (Gor, 16. Jan 2001, 12:02:55):
+Hiho ihr lieben,
+nachdem Bierchen und einige seine Files uns verlassen haben ist die Quest
+nicht mehr spielbar, bis ich den Chaoten beigebracht habe keine Chaoten mehr
+zu sein.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Quest nicht mehr spielbar (Gor, 16. Jan 2001, 13:38:11):
+~#! rn=Gor rt=979642975 rg=d.polar
+~#! tid=979642975
+Sollte wieder gehen :)
+
+-----------------------------------------------------------------------------
+
+
+
+Zwergenangriff (Amaryllis, 21. Jan 2001, 16:51:21):
+Hi,
+
+der Zwergenangriff ist wieder dran. Durch diverse Umstaende *hust* mussten
+teilweise die NPCs geaendert werden, also nicht wundern, wenn die jetzt
+teilweise ein bisschen anders aussehen :)
+
+Bugmeldungen bitte per Mail an mich.
+
+Gruss,
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Zwergenangriff (Patryn, 21. Jan 2001, 16:52:35):
+~#! rn=Amaryllis rt=980092281 rg=d.polar
+~#! tid=980092281
+ist das eigentlich ne automatische nachricht...zwerge ab, zwerge dran... ;)
+
+------
+patryn
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Zwergenangriff (Amaryllis, 21. Jan 2001, 16:53:45):
+~#! rn=Patryn rt=980092355 rg=d.polar
+~#! tid=980092281
+Ne Woche warn die Zwerge weg,
+jetzt stinken sie wieder - so ein Dreck.
+
+Ama* :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Zwergenangriff (Amaryllis, 21. Jan 2001, 19:43:29):
+~#! rn=Amaryllis rt=980092281 rg=d.polar
+~#! tid=980092281
+aufgrund zahlreicher Rueckfragen moechte ich anmerken, dass beim Angriff nun
+aus technischen Gruenden neue EK(s?) dabei sein _koennten_ :)
+
+Ama*, auf eine Rueckkehr ihrer Chaoszwerge hoffend :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Zwergenangriff (Tsunami, 23. Jan 2001, 20:06:06):
+~#! rn=Amaryllis rt=980092425 rg=d.polar
+~#! tid=980092281
+Der Dichter, der Dichter,
+der kriegt was auf die Lichter!
+
+Keine Prosa in d.polar!
+
+Tsunami. Don't even think of poetry here!
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Zwergenangriff (Amaryllis, 23. Jan 2001, 20:06:55):
+~#! rn=Tsunami rt=980276766 rg=d.polar
+~#! tid=980092281
+Es dichtet Ama* auf die Schnelle,
+noch schnell was von 'ner Plaetscherwelle...
+
+*duck* 
+Ama* :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Zwergenangriff (Ark, 23. Jan 2001, 20:09:42):
+~#! rn=Amaryllis rt=980276815 rg=d.polar
+~#! tid=980092281
+Hm, ein Thread, in dem ich ebenfalls rummuellen kann?
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Zwergenangriff (Tsunami, 23. Jan 2001, 20:11:15):
+~#! rn=Ark rt=980276982 rg=d.polar
+~#! tid=980092281
+Dies ist die offizielle Polarseite in der gaar nicht, ja also ueberhaupt
+nie und nimmer rumgemuellt wird. Von Regionsmagiern aus anderen Regionen
+sowieso nicht.
+
+Tsunami, gaaaanz ernst ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Zwergenangriff (Zook, 23. Jan 2001, 20:45:36):
+~#! rn=Ark rt=980276982 rg=d.polar
+~#! tid=980092281
+Zook schlaegt Ark ein Vermass um die Ohren und harrt der Dinge, die
+da kommen moegen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Zwergenangriff (Nevok, 23. Jan 2001, 22:55:01):
+~#! rn=Zook rt=980279136 rg=d.polar
+~#! tid=980092281
+denk ich an tsunami in der nacht, bin ich um den schlaf gebracht. wissen ob
+des stromes mangel, denk ich nur mit grossem bammel an die arme kleine welle,
+die es hat so gar nicht helle, muss sogar im dunkeln knechten, ohne 'net
+durchs Leben hechten...
+
+Gibts jetzt die ersten interpolaren Reimkriege? Ja? :)
+
+Nevok, die Tastatur wetzend
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Zwergenangriff (Yendi, 24. Jan 2001, 17:39:47):
+~#! rn=Zook rt=980279136 rg=d.polar
+~#! tid=980092281
+Damit das "Versmass" sicher stimmt,
+Zook besser ein "s" mehr noch nimmt...
+
+YTY
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Zwergenangriff (Anatol, 24. Jan 2001, 17:43:28):
+~#! rn=Yendi rt=980354387 rg=d.polar
+~#! tid=980092281
+Des Verses Mass ist was fuer Pfuscher,
+der Kuscher nur und der, der's verklemmt nur las
+- oder gar noch lesen muss -
+beharrt auf des rechten Reimes Wohlgenuss.
+Oder...
+was?
+
+
+-----------------------------------------------------------------------------
+
+
+
+zollschein (Fizban,  4. Feb 2001, 15:54:05):
+Tach
+Ich hab mal mit den Zollwaechtern verhandelt und bessere Konditionen
+herausgehandelt was die haltbarkeit angeht. beim preis liessen sie leider
+nicht mit sich reden.
+Fizban
+
+-----------------------------------------------------------------------------
+
+
+
+Re: zollschein (Gor,  4. Feb 2001, 17:12:06):
+~#! rn=Fizban rt=981298445 rg=d.polar
+~#! tid=981298445
+Mir waere es lieber gewesen, wenn du einige von ihnen entlassen haettest. :)
+
+-----------------------------------------------------------------------------
+
+
+
+Man munkelt... (Amaryllis, 27. Feb 2001, 21:16:57):
+... dass nun auch der grosse Moorhuhn-Koenig seinen Weg in diese Welt gefunden
+hat.
+
+Gruss,
+Ama*
+
+PS: Warnung:
+Das Vieh hats in sich - es empfiehlt sich, erstmal bissl zu forschen und ihn
+auszufragen, ansonsten garantier ich fuer nix :-)
+
+Bugmeldungen bitte asap an mich, falls was sein sollte :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Man munkelt... (Amaryllis, 27. Feb 2001, 21:26:00):
+~#! rn=Amaryllis rt=983305017 rg=d.polar
+~#! tid=983305017
+aeh noch ne kleine Bemerkung:
+ohne Team laeuft da gar nix... vgl. Morpheus :)
+
+Ama'mehr sag ich jetzt abba nich'ryllis :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Man munkelt... (Vardion, 28. Feb 2001, 18:09:50):
+~#! rn=Amaryllis rt=983305560 rg=d.polar
+~#! tid=983305017
+Hi.
+
+Nett, dass Deine Moorhuhn-Waechter gegen alle Schadensarten, die ein Zauberer
+per 'verletze' erzeugen kann _immun_ sind. Haeng ihnen doch einfach ein Schild
+um den Hals "Zauberer muessen leider draussen bleiben". Danke.
+
+Vardion
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Man munkelt... (Heromcfly, 28. Feb 2001, 18:31:24):
+~#! rn=Vardion rt=983380190 rg=d.polar
+~#! tid=983305017
+
+gut so weiter so
+
+-->schmarrn ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Man munkelt... (Amaryllis, 28. Feb 2001, 18:34:22):
+~#! rn=Vardion rt=983380190 rg=d.polar
+~#! tid=983305017
+Da ich Zaubis kaum kenne, habe ich da wohl zufaelligerweise genau die dummen
+Anfaelligkeiten gesetzt. Mea culpa, mea maxima culpa. Das Problem sollte nun
+geloest sein.
+
+Was seine Helfershelfer angeht, koennen da durchaus der eine oder andere noch
+"unguenstige" Anfaelligkeiten haben, hier muesste es aber jede Gilde mal
+treffen.
+
+Ama.
+
+PS: Es waere nett, wenn man mich (erst recht, wenn ich sowieso gerade online
+bin) direkt drauf ansprechen wuerde, anstatt gleich in der MPA loszuwettern.
+Auch wenn mir viele Zaubi-Hass vorwerfen, entspricht das naemlich nicht den
+Tatsachen, und begruendete Kritik an meinen Objekten habe ich in der
+Vergangenheit bereits kooperativ gefixt und werde das auch weiterhin so
+halten.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Man munkelt... (Orktoeter, 28. Feb 2001, 18:44:02):
+~#! rn=Amaryllis rt=983381662 rg=d.polar
+~#! tid=983305017
+
+Ich antworte mal hier, weil es der letze Artikel ist (aktuell)
+
+Dank an Amaryllis, weil er einem Spielerwunsch so schnell nachgegangen ist,
+ABER:
+
+Vardion, wieso musst du dort Schaden machen koennen? Es gibt (gab) dort einen
+NPC, den du nicht alleine hauen konntest? Wenn du die fruehren Artikel von
+Amaryllis gelesen hast, wirst du wissen, das zumindest der Koenig nicht dazu
+gedacht ist, das ihn einer alleine haut. Du brauchst also auf alle faelle ein
+Team. Und wenn du selbst nicht triffst, dann unterstuetz doch dein Team so gut
+wie du es als Zauberer kannst. Wenn ihr den dann nicht nur ein mal macht,
+wirst du sogar dann den Kill bekommen, wenn du "nur" der Rueckhalt des Teams
+warst (Teamkampf sei dank). 
+Auch wenn es in diesem Fall wohl Zufall und keine Absicht war, so soll es doch
+NPC geben, die bewusst fuer einzelne Gilden nicht zu killen sind. Da muss man
+halt mal ueber seinen Schatten springen und sich Leute fuer ein Team suchen.
+
+OrkT.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Man munkelt... (Amaryllis, 28. Feb 2001, 18:45:52):
+~#! rn=Orktoeter rt=983382242 rg=d.polar
+~#! tid=983305017
+Nunja, die Aenderung war auch in meinem Sinne, da in dem NPC wirklich noch ein
+Fehler war. Da er naemlich so gut austeilt, ist meine Meinung, dass er auch
+gut einstecken muss - und so wie er nun gemacht ist, sollten da nahezu alle
+Gilden Schaden machen koennen.
+
+Einfach anschauen und ster^H^H^H^HEKs holen :)
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Man munkelt... (Agony, 28. Feb 2001, 18:46:16):
+~#! rn=Orktoeter rt=983382242 rg=d.polar
+~#! tid=983305017
+dass ein derzeitig hauptberuflicher kaempfer das nicht nachvollziehen kann,
+wissen wir auch ohne deinen moralisierenden querschlaeger.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Man munkelt... (Anacrion, 28. Feb 2001, 20:05:08):
+~#! rn=Agony rt=983382376 rg=d.polar
+~#! tid=983305017
+Danke Agony. 
+
+erpsaret mir ein Flame.
+
+Das ein Kawempfer einem was von Problemen, eine Schadensart erzeugen oder
+abwehren zu koennen erzaehlen will, verwundert mich ja doch etwas.
+
+Ist so, als ob die Kuh nem Huhn das Eierlegen erklaeren will.
+
+Anac* - saerulich.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Man munkelt... (Panic, 28. Feb 2001, 20:15:47):
+~#! rn=Vardion rt=983380190 rg=d.polar
+~#! tid=983305017
+lass mich raten... gegen boesen Schaden extrem anfaellig ? :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Man munkelt... (Anacrion, 28. Feb 2001, 20:16:17):
+~#! rn=Panic rt=983387747 rg=d.polar
+~#! tid=983305017
+Koennte auch Terror oder heilig sein ;)
+
+Anac*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Man munkelt... (Amaryllis, 28. Feb 2001, 20:18:06):
+~#! rn=Anacrion rt=983387777 rg=d.polar
+~#! tid=983305017
+[ ] ihr habt Euch das Vieh angeschaut.
+
+Ama* :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Man munkelt... (Anacrion, 28. Feb 2001, 20:19:34):
+~#! rn=Amaryllis rt=983387886 rg=d.polar
+~#! tid=983305017
+Hab ich das behauptet ? Ich bin nur mal die Schadensarten durchgegangen, die
+ich nciht machen kann ;)
+
+Anac*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Man munkelt... (Wurzel, 28. Feb 2001, 22:10:12):
+~#! rn=Anacrion rt=983387974 rg=d.polar
+~#! tid=983305017
+stellt euch nicht so an, kinder.
+wenn ihr das vieh nicht umhauen koennt, lasst es eben. oder sucht euch
+eben ein team.
+aber wahrscheinlich wollt ihr nur wieder jammerskill ueben... dafuer
+ist das hier allerdings die falsche rubrik.
+
+wurzel meint: pappnasen abwerten!
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Man munkelt... (Heromcfly, 28. Feb 2001, 22:17:20):
+~#! rn=Wurzel rt=983394612 rg=d.polar
+~#! tid=983305017
+richtitsch ... wenn euch das moorhuhn zu stark 
+ist haut doch den necromanten :)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Man munkelt... (Wurzel, 28. Feb 2001, 22:19:45):
+~#! rn=Heromcfly rt=983395040 rg=d.polar
+~#! tid=983305017
+nette idee :)
+es gibt aber genug alternativen, nicht nur in der unterwelt.
+alternativ koennte man auch versuchen, das forscherpunktkonto aufzufuellen :)
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Man munkelt... (Solmyr,  1. Mar 2001, 05:14:41):
+~#! rn=Anacrion rt=983387974 rg=d.polar
+~#! tid=983305017
+Seit doch alle mal froh :) Immerhin gibt es Spieler, so wie ich, die 
+nicht mal wissen, wo das Ding ist und auch das Teil garantiert nicht
+umhaun koennen :)
+
+Solmyr
+
+-----------------------------------------------------------------------------
+
+
+
+Kleiner Bugfix (Gor,  7. Mar 2001, 12:37:54):
+Der Drache sollte nun killbar sein, nachdem man die Quest gemacht hat. Ebenso
+verschindet der gelbe Kopf mit allen anderen Koepfen, wenn der Drache
+wegfliegt und die Wunschfee hilft jetzt auch Froeschen :)
+
+Viel Spass und danke fuerdie Bugmeldungen.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Soeren & SMS (Tilly, 17. Mar 2001, 20:21:36):
+Moin moin,
+
+Soeren zeigt sich ueberaus lernfaehig. So wird er nun die Faehigkeiten,
+im Kampf mit dem Speermeister-Speer umzugehen, etwas genauer ausspucken.
+
+Falls noch jemand Anregungen / Fragen oder dergleichen hat, bitte mailen.
+
+ - Tilly - 
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Soeren & SMS (Daria, 21. Mar 2001, 16:44:14):
+~#! rn=Tilly rt=984856896 rg=d.polar
+~#! tid=984856896
+Seit wann gibts im MG Short-Message-Service?
+-> schmarrn
+Daria
+
+-----------------------------------------------------------------------------
+
+
+
+Man is dat leer! (Terrorist, 17. Mai 2001, 11:47:17):
+Hallo,
+
+Oki, ich habe eine kleine Bitte an euch ... nachdem ich laengere Zeit nicht da
+war, wuerde es mich Interessieren ob an der Gruft im Polar (Lilith und Co)
+irgendetwas verbesserungswuerdig ist.
+Ob es Fehler gibt die euch aufgefallen sind, Items die nicht mehr dem Stand
+der Dinge entsprechen, und aehnliches.
+Ichwerde die Gruft nicht verstaerken oder aehnliches, sondern will sie im
+Urzustand behalten.
+Sollte es jedoch Kleinigkeiten geben die man verbessern kann, wuerde ich mich
+ueber eine Mail freuen :)
+
+
+Gruesse
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Man is dat leer! (Deepblue, 17. Mai 2001, 12:23:21):
+~#! rn=Terrorist rt=990092837 rg=d.polar
+~#! tid=990092837
+Wie waers mit ner Para-2-Gruft?
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Man is dat leer! (Terrorist, 17. Mai 2001, 12:29:22):
+~#! rn=Deepblue rt=990095001 rg=d.polar
+~#! tid=990092837
+Oeh ...
+Es gibt Para2?
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Man is dat leer! (Ark, 17. Mai 2001, 13:21:26):
+~#! rn=Terrorist rt=990092837 rg=d.polar
+~#! tid=990092837
+Mehr Details, die ueber einen "Subjekt-Verb-Adverb" Satz o.ae. Struktur
+hinausgehen ;^)
+War ja klar, dass ich das sagen musste, oder?
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Man is dat leer! (Gloinson, 17. Mai 2001, 13:22:40):
+~#! rn=Terrorist rt=990092837 rg=d.polar
+~#! tid=990092837
+Die Gruft ist doch fuer Kaempfer so popelig geworden - die sollte oefters mal
+Besuch aus dem Schacht bekommen. Ich hab gehoert, dass der/die/das Tarrasque
+ein sehr reisefreudiger/e/r Wyrm ist. Ausserdem koennten die Nekromanten mal
+ein paar Tricks lernen.
+
+Gloin(son)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Man is dat leer! (Gloinson, 17. Mai 2001, 13:23:16):
+~#! rn=Ark rt=990098486 rg=d.polar
+~#! tid=990092837
+Du willst eine Metzelgegend mit Details entweihen? Schaem Dich :)
+
+Gloin(son)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Man is dat leer! (Bambi, 17. Mai 2001, 14:38:35):
+~#! rn=Ark rt=990098486 rg=d.polar
+~#! tid=990092837
+Meinst Du sowas wie ...
+
+Der Raum ist gross,
+der Raum ist leer.
+Geh weg von hier,
+dann siehst Du mehr!
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Man is dat leer! (Anacrion, 17. Mai 2001, 14:40:43):
+~#! rn=Bambi rt=990103115 rg=d.polar
+~#! tid=990092837
+Eher
+
+Der Knopf war klein,
+der Raum war leer,
+dann drueckst Du ihn,
+und lebst nicht mehr ....
+
+
+Als Meldung auf -Tod, freilich ;-)
+
+Anac* - kennt Arks gebiete
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Man is dat leer! (Terrorist, 17. Mai 2001, 14:41:52):
+~#! rn=Gloinson rt=990098560 rg=d.polar
+~#! tid=990092837
+Wie gesagt ... ich wolltesie nicht staerker machen.
+Was ist mit Leuten die nicht max sind? solls nurnoch fuer die was geben?
+
+Gruesse
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Man is dat leer! (Ark, 17. Mai 2001, 14:43:08):
+~#! rn=Anacrion rt=990103243 rg=d.polar
+~#! tid=990092837
+Unnoetige P(r)olemik :-)
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Man is dat leer! (Wurzel, 17. Mai 2001, 14:46:58):
+~#! rn=Ark rt=990103388 rg=d.polar
+~#! tid=990092837
+wieder ein schoenes neues wort gelernt: prolemik... die deutsche sprache
+kann so vielseitig sein :)
+
+wurzel
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Man is dat leer! (Isis, 21. Mai 2001, 09:30:52):
+~#! rn=Terrorist rt=990092837 rg=d.polar
+~#! tid=990092837
+Also ich finde die Gruft verdient fast Denkmalschutz und sollte vor
+eventuellen verschlimmboeserungen verschont bleiben...;-)
+
+Hera
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Man is dat leer! (Sharia, 21. Mai 2001, 10:44:07):
+~#! rn=Isis rt=990430252 rg=d.polar
+~#! tid=990092837
+jawoll!
+
+Sharia wedelt mit eine 'Stellt Schrumpfis Gruft unter Denkmalschutz' -
+Faehnchen
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Man is dat leer! (Terrorist, 21. Mai 2001, 14:38:33):
+~#! rn=Sharia rt=990434647 rg=d.polar
+~#! tid=990092837
+*g* Hab Schrumpf damals nicht umsonst versprochen die Gruft so zu lassen wie
+sie war.
+Also keine Sorge, Lilith wird euch weiter den Hintern verkloppen (*hoff*)
+
+Aber kleine Typos ausbuegeln ist doch erlaubt?
+
+Gruesse
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Man is dat leer! (Mupfel, 23. Mai 2001, 00:49:26):
+~#! rn=Terrorist rt=990448713 rg=d.polar
+~#! tid=990092837
+Nein ist nicht erlaubt ;)
+
+-mupfel- (weiss wovon er spricht ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Man is dat leer! (Amaryllis, 23. Mai 2001, 00:52:44):
+~#! rn=Mupfel rt=990571766 rg=d.polar
+~#! tid=990092837
+solange er sie mittels 'rm <repfile>'[1] bearbeitet, bleibt doch alles beim
+alten, nur keine Aufregung :)
+
+Ama* :)
+
+[1] gern praktiziert Vorgehensweise zur schnellen Abarbeitung von Bugs und
+Typos.
+
+-----------------------------------------------------------------------------
+
+
+
+Klippentempel (Tsunami,  6. Jul 2001, 00:16:11):
+Auf vielfachen Wunsch eines Einzelnen hat der mattglaenzende Panzer von 
+Madellaine nun neu die ID "mattglaenzender panzer". Sollte die vielen 
+Kaempfer berfriedigen, die zig Panzer mit sich rumschleppen.
+
+Lobmails an Tsunami, Beschwerden an Noel :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Klippentempel (Ark,  6. Jul 2001, 11:33:56):
+~#! rn=Tsunami rt=994371371 rg=d.polar
+~#! tid=994371371
+Hoffentlich als Adjektiv, ich weigere mich, unt mattglaenzender panzer
+einzugeben *fies grins*
+
+Kampf der Raeschtchraipunkh.
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Speermeister-Speer (mal wieder) (Tilly, 11. Jul 2001, 00:35:37):
+So, ich hab mal eine neue Version des SMS angeschlossen.
+
+Die Leute, die einen solchen Speer haben, koennen mal ein
+bisschen testen. Um Rueckmeldungen wird gebeten, solange
+ich da nix bekomme, bleiben die Lektionen bei Soeren erst-
+mal deaktiviert.
+
+ - Tilly - 
+
+-----------------------------------------------------------------------------
+
+
+
+Kurzurlaub (Tsunami, 17. Jul 2001, 22:32:33):
+die naechsten zehn Tage bin ich kaum hier, ein alter Freund aus der Schweiz
+kommt mich besuchen.
+
+Tsunami. Braucht Ferien von den Ferien.
+
+-----------------------------------------------------------------------------
+
+
+
+ja, Tsunami gibts noch (Tsunami,  3. Aug 2001, 23:14:58):
+Ich habe total viel um die Ohren in RL. Das heisst aber nicht, dass ich keine
+Zeit mehr habe, ins MG reinzuschauen. Wenn ich mich einlogge dann meist
+unsichtbar damit ich in Ruhe meine Mails lesen und Polarkram abarbeiten kann.
+Wenn es die Zeit erlaubt mach ich mich sichtbar und mudde ein bisschen.
+
+Also bitte keinen Unsinn auf den Ebenen verbreiten wie 'Tsunami kommt nicht
+mehr...' Letze Zeit war ich halt total im Stress (muss Zwischenberichte an
+den Schweizer NationalFonds abliefern damit ich meinen Lohn fuers naechste
+Jahr
+bekomme und andere nicht ganz unwichtige RL-Sachen...) und war drum nur invis
+hier.
+
+Wenns was Wichtiges ist, wie gehabt eine Mail an den guten alten Tsu*
+schicken,
+ich schau's mir schon an, auch wenn es bei 'finger tsunami' heisst, ich sei
+seit 21 Tagen nicht mehr hier gewesen. Invis einloggen setzt das letze login
+Datum absichtlich (fuer Spieler) nicht hoch.
+
+Tsunami. Oefter hier als man denkt :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: ja, Tsunami gibts noch (Deepblue,  3. Aug 2001, 23:41:19):
+~#! rn=Tsunami rt=996873298 rg=d.polar
+~#! tid=996873298
+vis
+invis und das logindatumkram ist erledigt :)
+
+-----------------------------------------------------------------------------
+
+
+
+Rodelbahn Tribuene wieder offen (Tsunami, 17. Aug 2001, 20:16:14):
+Hallo Rodler und Gaffer,
+
+Die Tribuene hat wieder einen Ausgang. Ich habe den neuen Verkaeufer aus der
+Wueste ueberreden koennen, sein Angebot auch hier zur Verfuegung zu stellen.
+
+Danke an mich, Beschwerden an die Verantworlichen der Wueste, die Pfade
+verschieben :)
+
+Tsunami, sich von der Rache der Fee versteckend :))
+
+-----------------------------------------------------------------------------
+
+
+
+BugAttack() (Gor, 20. Aug 2001, 00:42:41):
+Sodala
+
+[1] Der Schaedel sollte nun auch Meldungen, die die folgenden Woerter doppelt
+    enthalten annehmen: ins, in das, in dem, in
+    
+
+[2] Der goldene Drache ist nun nicht mehr fest davon ueberzeugt, dass euch ein
+    hilfsbereiter Magier das eine oder andere Item gecloned hat.
+    Danke an dieser Stelle an Gnome, der sich an die richtige Reihenfolge 
+    erinnerte. ;)
+
+Gruss Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Verhandlungen mit den Trollen (Fizban, 27. Sep 2001, 21:46:28):
+Hi zusammen
+Es tut mir Leid aber hiermit erklaere ich meine Verhandlungen mit den Trollen
+auf Oeffnung von Sirajan fuer gescheitert.
+Wenn sich ein anderer bereiterklaert mit den Trollen weiter zuverhandeln soll
+er sein Glueck probieren.
+fizban
+
+-----------------------------------------------------------------------------
+
+
+
+mikroskopisch winzig kleine Aenderung. (Tsunami,  2. Okt 2001, 19:13:56):
+Gildenquest Rettungsaktion in der Eismine:
+
+Eine klitzekleine Aenderung am Schluessel, den der Hauptmann bei sich 
+traegt: ich empfehle nun, den Schluessel aus der Leiche zu nehmen *bevor*
+ihr die Leiche aufesst (was sowieso igitt! ist).
+
+Falls ihr sterbt ist der Schluessel auch weg. So war es von Anfang an geplant,
+bloss hat der Schluessel nicht so richtig kooperiert :)
+
+Vielen Dank an die, die mir das gemeldet haben.
+
+Tsunami.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: mikroskopisch winzig kleine Aenderung. (Terrorist,  2. Okt 2001, 19:19:54):
+~#! rn=Tsunami rt=1002042836 rg=d.polar
+~#! tid=1002042836
+Das wird ja immer schoener .... 
+
+Der "Schluessel" hat immer richtig funktioniert! Wer sollte das besser wissen
+als ich? ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: mikroskopisch winzig kleine Aenderung. (Zook,  2. Okt 2001, 19:22:48):
+~#! rn=Terrorist rt=1002043194 rg=d.polar
+~#! tid=1002042836
+Richtig funktionieren und mit Tsunami kooperieren kann ja nur bedeuten,
+moeglichst Lars moeglichts viele Besuche auf Tsunamis Konto abzustatten.
+
+Zook.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: mikroskopisch winzig kleine Aenderung. (Zook,  2. Okt 2001, 19:23:03):
+~#! rn=Zook rt=1002043368 rg=d.polar
+~#! tid=1002042836
+Jaja, ich weiss, dass da nen Typo drin ist ;)
+
+Zook.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: mikroskopisch winzig kleine Aenderung. (Tsunami,  2. Okt 2001, 19:24:39):
+~#! rn=Zook rt=1002043383 rg=d.polar
+~#! tid=1002042836
+Ich weiss nicht was du meinst. Der Schluessel ist doch voellig harmlos und
+100% aus Metall. Keine versteckte Magie, kein Mini-Boings-Hoellenfeuer,
+keine Giftstacheln, kein eingeschlossener Daemon, kein garnichts. 
+
+Tsunami. Lieb und nett.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: mikroskopisch winzig kleine Aenderung. (Terrorist,  2. Okt 2001, 19:26:21):
+~#! rn=Tsunami rt=1002043479 rg=d.polar
+~#! tid=1002042836
+Und sowas ist von Dir?
+
+Schaem Dich, Du hast mich bitter enttaeuscht ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: mikroskopisch winzig kleine Aenderung. (Zook,  2. Okt 2001, 19:26:41):
+~#! rn=Terrorist rt=1002043581 rg=d.polar
+~#! tid=1002042836
+Tsunami?
+
+
+Zook.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: mikroskopisch winzig kleine Aenderung. (Tsunami,  2. Okt 2001, 19:27:13):
+~#! rn=Zook rt=1002043601 rg=d.polar
+~#! tid=1002042836
+Haende weg von dieser Rubrik!
+
+Bloedsinn bitte direkt nach Schmarrn.
+
+Tsunami. Schaut streng.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: mikroskopisch winzig kleine Aenderung. (Varlarion,  2. Okt 2001, 19:27:15):
+~#! rn=Zook rt=1002043601 rg=d.polar
+~#! tid=1002042836
+Glaubt nie einem Magier, der behauptet, lieb und nett zu sein!
+
+Varl*, spricht aus Erfahrung
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: mikroskopisch winzig kleine Aenderung. (Zook,  2. Okt 2001, 19:27:37):
+~#! rn=Tsunami rt=1002043633 rg=d.polar
+~#! tid=1002042836
+Verleg doch, verleg doch! ;)
+
+Zook kichert.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: mikroskopisch winzig kleine Aenderung. (Terrorist,  2. Okt 2001, 19:27:49):
+~#! rn=Varlarion rt=1002043635 rg=d.polar
+~#! tid=1002042836
+Ich kenn nur einen der das staendig wiederholt ...
+
+Aber der is nicht mehr wirklich Magier
+
+
+-----------------------------------------------------------------------------
+
+
+
+Aenderung geaendert! (Tsunami,  2. Okt 2001, 19:42:38):
+Auf vielfachen Wunsch eines Einzelnen kann man den Hauptmann weiterhin
+entsorgen (ack, Zaubis!) und der Schluessel ist dann noch da.
+Des weiteren kann man den Schluessel nun endlich loswerden.
+
+Dankes- und Lobesbriefe an mich, Beschwerden an... hmmm... Zook z.B., der
+idlet naemlich staendig nur rum anstatt was zu tun. Jawoll.
+
+Tsunami. Mal wieder fleissig.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: mikroskopisch winzig kleine Aenderung. (Rochus,  2. Okt 2001, 19:43:44):
+~#! rn=Tsunami rt=1002043479 rg=d.polar
+~#! tid=1002042836
+Dafuer aber viele nette Anregungen :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: mikroskopisch winzig kleine Aenderung. (Mupfel,  3. Okt 2001, 00:19:16):
+~#! rn=Varlarion rt=1002043635 rg=d.polar
+~#! tid=1002042836
+ja? 
+
+-mupfel-
+
+-----------------------------------------------------------------------------
+
+
+
+TTB (Amaryllis, 19. Nov 2001, 15:56:36):
+Hi,
+
+nachdem sich das TTB energisch allen "schoenen" Debug-Versuchen wiedersetzt
+hat, habe ich es jetzt ersteinmal "brute-force" debuggt - nicht schoen, aber
+brauchbar.
+
+Soll heissen: Leute mit vielen Toden sollten sich nur noch einzelne anschauen,
+da es sonst bisschen scrollt :-)
+
+Aber ich arbeite bereits an einem Spielervorschlag, der das ganze grafisch
+etwas optimierter ausgeben laesst.
+
+Gruss,
+Ama*
+
+PS: "unt ttb" funktioniert jetzt auch.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: TTB (Gor, 19. Nov 2001, 17:07:59):
+~#! rn=Amaryllis rt=1006181796 rg=d.polar
+~#! tid=1006181796
+Wenn du jetzt den restlichen 90% der Todestagebuchbesitzer erklaerst, dass TTB
+== Todestagebuch is, isset ok. }:-)
+
+Gor im Schnee
+
+-----------------------------------------------------------------------------
+
+
+
+wir heissen alle Vanion willkommen (Tsunami, 11. Dez 2001, 20:46:22):
+herzlich Willkommen Vanion, neuster Mitarbeiter Polar.
+
+Ich hoffe wir werden noch viel von dir sehen/hoeren :)
+
+Tsunami.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: wir heissen alle Vanion willkommen (Mandragon, 11. Dez 2001, 20:46:48):
+~#! rn=Tsunami rt=1008099982 rg=d.polar
+~#! tid=1008099982
+Wahrscheinlich ne Menge Zaps :o)
+
+-----------------------------------------------------------------------------
+
+
+
+Orks und Timing (Vanion, 21. Dez 2001, 12:32:03):
+Hallo Abenteurer,
+
+Nachdem Don Zacharias durch den mutigen Einsatz vieler von euch wieder Herr in
+seinem eigenen Palast war, entschloss er sich, diesen erstmal von Grunde auf
+zu renovieren.
+
+Gestern gab der Don nach langem Warten einen Empfang, der den Abschluss der
+Renovierungsarbeiten zum Anlass hatte. Viele bekannte Magier waren dort:
+Rumata, Zook, Silvana und Tsunami. Aber auch NPCs aus der High Society der
+Polarregion waren unter den Gaesten . Alles in allem war es ein rauschendes
+und gelungenes Fest.
+
+Nun moechte ich aber zu dem Grund kommen, aus dem ich diesen Artikel schreibe:
+
+Einige Stunden nachdem der letzte Gast gegangen war, als Don Zacharias sich
+gerade zu Bett begeben wollte, krachte es an der Eingangstuer, als wuerde da
+draussen jemand Einlass verlangen. Die spaeten Gaeste hielten sich jedoch
+nicht damit auf, auf den Hausherren zu warten, sondern schlugen mit ihren
+Aexten die Haustuer ein.
+
+DIE ORKS WAREN ZURUECK. MIT VERSTAERKUNG.
+
+Der Don konnte den eindringenden Orks knapp mit dem Leben entkommen und haelt
+sich nun wieder im Palast versteckt. Die Orks haben alle Fenster aufgerissen,
+und im Schloss zieht es wie Hechtsuppe. Wenn nicht bald etwas passiert, holt
+sich der Don eine fiese Erkaeltung und wird die Weihnachtsferien im
+Krankenhaus verbringen.
+
+Du siehst: Dem armen Mann muss geholfen werden!
+
+Ich hoffe also auf Deinen Mut und Deine Geschicklichkeit, damit der Don bald
+wieder Herr in seinem eigenen Hause ist.
+
+Im Auftrag,
+V*
+
+PS: Ich danke den oben erwaehnten Magiern fuer ihre Mithilfe und 
+    unermuedliches Testen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Orks und Timing (Morgoth, 21. Dez 2001, 13:47:33):
+~#! rn=Vanion rt=1008934323 rg=d.polar
+~#! tid=1008934323
+Ne Metzelquest ?????
+
+Geil, dann muss ich glatt meine Charaktere mal einloggen um wieder selbst zu
+Questen !
+
+M*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Orks und Timing (Ark, 21. Dez 2001, 14:03:46):
+~#! rn=Vanion rt=1008934323 rg=d.polar
+~#! tid=1008934323
+Hm, ist das jetzt ueberarbeitet worden oder ne Paraversion? ;^)
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Orks und Timing (Zanac, 21. Dez 2001, 14:04:24):
+~#! rn=Ark rt=1008939826 rg=d.polar
+~#! tid=1008934323
+Haette spontan an ne Ueberarbeitung gedacht ...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Orks und Timing (Muaddib, 21. Dez 2001, 14:05:01):
+~#! rn=Zanac rt=1008939864 rg=d.polar
+~#! tid=1008934323
+Paraversion isses nicht :)
+
+-----------------------------------------------------------------------------
+
+
+
+Edda Knutsson ihr Buero (Tilly, 16. Jan 2002, 16:09:39):
+Alle adoptionswilligen Spieler einmal herhoeren:
+
+Edda Knutsson nimmt ab sofort wieder ihre Arbeit auf. Hoffentlich
+erledigt sie diese auch zu meiner (und Euren) vollsten Zufrieden-
+heit.
+
+Magier und Testspieler sind, wie gehabt, von diesem Service ausge-
+schlossen. Da seht Ihrs mal, Magier sein ist doch nicht so toll ;)
+
+ - Tilly -
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Edda Knutsson ihr Buero (Elberet, 16. Jan 2002, 16:10:44):
+~#! rn=Tilly rt=1011193779 rg=d.polar
+~#! tid=1011193779
+was passiert denn wenn adoptierte bzw adoptierende magier werden?
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Edda Knutsson ihr Buero (Tilly, 16. Jan 2002, 16:11:38):
+~#! rn=Elberet rt=1011193844 rg=d.polar
+~#! tid=1011193779
+Ganz einfach, die koennen nicht Magier werden. >:)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Edda Knutsson ihr Buero (Elberet, 16. Jan 2002, 16:12:12):
+~#! rn=Tilly rt=1011193898 rg=d.polar
+~#! tid=1011193779
+coooooooooool :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Edda Knutsson ihr Buero (Firehawk, 16. Jan 2002, 16:37:28):
+~#! rn=Elberet rt=1011193932 rg=d.polar
+~#! tid=1011193779
+Aha, das ist also mal ein Weg, die ganzen leute loszuwerden, die fragen, ob
+ich nicht doch gerne Magier werden will >:)
+
+Firehawk, darauf wartend dass Toechterchen sich wieder einloggt.
+
+-----------------------------------------------------------------------------
+
+
+
+MHK (Amaryllis, 27. Jan 2002, 18:16:41):
+$subject aufgrund berechtigter Beschwerden etwas abgeschwaecht.
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Soeren sein Speer (Tilly,  2. Feb 2002, 13:25:26):
+Soderle, nach langer Abstinenz hat Soeren beschlossen,
+wieder Lektionen im Speerkampf zu geben. Auch die Ab-
+stufungen beim Skill-Info sollten das tatsaechliche
+Koennen wiederspiegeln.
+
+Damit Ihr das alles auch richtig schoen nutzen koennt,
+hat Soeren natuerlich auch wieder einen seiner Speere
+dabei wenn man ihn besucht. Sonst waere das recht sin-
+nlos :-)
+
+Bei der Skillberechnung sind die Bugs ausgebaut, kann
+sein, das sich einige wenige (2-3) wundern werden,
+wieso ihr Skill nicht mehr in so astronomischen Hoehen
+liegt.
+
+Vielen Dank an Eppi, der nicht lockergelassen hat, bis
+ich den Speer debugt hatte und mir dann als aufopferungs-
+williger Testi zur Verfuegung stand.
+
+ - Tilly -
+
+-----------------------------------------------------------------------------
+
+
+
+Langeweile (Gor, 15. Feb 2002, 14:57:11):
+Hiho,
+zusammen, mir war eben ein bisschen langweilig. Die Parawelt hat etwas
+Nachwuchs erhalten. 
+
+Gruesse & frohes Metzeln Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Pitlane speedlimit (Gor, 21. Feb 2002, 16:04:56):
+Hiho,
+beware, scripting in the inner pitlane will cause harmfull damage.
+
+Danke fuer die Hinweise.
+
+Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Zwergenangriff (Amaryllis, 24. Feb 2002, 15:51:47):
+Hi,
+
+das Messer sollte nun auch zu finden sein :-)
+Ich frag mich nur, warum sich ausser _einem_ da keiner beschwert hat, bzw. wo
+die die Information her hatten...
+
+Ama*, fuer den Hinweis dankend.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Zwergenangriff (Gor, 25. Feb 2002, 14:20:29):
+~#! rn=Amaryllis rt=1014562307 rg=d.polar
+~#! tid=1014562307
+Das hab ich schon vor 1,5 Jahren gesacht. Das ich das Messer auch nur finde,
+weil ich weiss wos ist. ;) Aber auf mich hoerste ja eh net.
+
+Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Zwergenangriff (Joshua, 25. Feb 2002, 14:22:45):
+~#! rn=Gor rt=1014643229 rg=d.polar
+~#! tid=1014562307
+Na ja, ich hab halt gedacht ich stell mich zu bloed an. Ich gehe ja
+normalerweise erstmal davon aus, dass der Fehler an mir liegt und nicht am
+Magier. Sehr Magier-freundliche Einstellung oder? Hab' da jedenfalls viele
+Stunden nach gesucht und es nicht gefunden. Aber wenn ich immer, wenn ich was
+nicht finde, ne Mitteilung an nen Magier schreibe, dann bin ich in spaetestens
+zwei Tagen aus dem MG verbannt ;)
+Josh
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Zwergenangriff (Gor, 25. Feb 2002, 14:24:31):
+~#! rn=Joshua rt=1014643365 rg=d.polar
+~#! tid=1014562307
+Uebernimmst du das mal Zook? Das mit dem verbannen? };-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Zwergenangriff (Amaryllis, 25. Feb 2002, 14:24:53):
+~#! rn=Gor rt=1014643229 rg=d.polar
+~#! tid=1014562307
+Jo, stimmt. Aber wenigstens weiss ich jetzt, wer den Spielern dann immer die
+Messer in die Hand gedrueckt hat :)
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Zwergenangriff (Gor, 25. Feb 2002, 14:26:19):
+~#! rn=Amaryllis rt=1014643493 rg=d.polar
+~#! tid=1014562307
+Gor denkt: "Klein, blond, ca. 165, der sich als Elf tarnt?"
+
+-----------------------------------------------------------------------------
+
+
+
+Totenschaedel (Gor, 17. Mar 2002, 18:49:28):
+Hallo liebe Spieler, es waere doch schoen, wenn ein Bugreport an mich gehen
+wuerde, wenn $subject aus irgendeinem Grund nicht mehr geht, anstatt sich das
+Maul zu zeressissen, dass es nicht mehr geht. Hier nocheinmal die Syntax fuer
+die KL-Spieler unter euch. mail gor\ntotenschaedel\ndein schaedelgeht nicht
+mehr\n. Laesst sich auch prima in ein Script einbauen. Jedenfalls sollte er
+wieder gehen. 
+
+Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Humni neu RM Polar (Tsunami, 17. Apr 2002, 01:35:00):
+Hallo ihrs,
+
+damit das auch noch in der Polarrubrik steht:
+
+Humni ist per sofort Regionsmagier Polar und ich freue mich riesig dass
+ich Verstaerkung erhalten habe.
+
+Willkommen Humni!
+
+Tsunami.
+
+-----------------------------------------------------------------------------
+
+
+
+Sonderbare Ereignisse... (Humni, 10. Jun 2002, 17:54:49):
+Sonderbare Ereignisse in einer mysterioesen Welt namens RL, die gerade dazu
+fuehren, dass unser allseits beliebter Mudgott Zook sich in einem anderen
+Kontinent aufhaelt, koennen nun angemessen bewettet werden. Hierzu dient eine
+kleine Huette am Polarweg, die wohl nach diesen Ereignissen wieder
+verschwinden wird.
+
+Ich kann leider noch nicht hundertprozentig fuer die Buglosigkeit der Sache
+garantieren. Deshalb geschieht das Abschliessen von Wetten auf eigene Gefahr.
+Ja, das ganze sollte sogar Rebootfest sein. Aber sagt nicht, ich haette Euch
+nicht gewarnt, wenn doch was fehlerhaft laeuft...
+
+Humni macht mal wieder nur Unsinn....
+
+-----------------------------------------------------------------------------
+
+
+
+Nicht der Rede wert .... (Tilly,  3. Jul 2002, 13:53:47):
+Moin moin auch ...
+
+Fuer alle wackeren Seher gibt es nun eine neue, schreckliche
+und gefaehrliche Herausforderung:
+
+      >>>>>>    DIE PARA-POST-QUEST IST DA!    <<<<<<
+
+Natuerlich heisst sie anders, aber das wird den meisten von
+Euch eh egal sein.
+
+Mein innigster Dank gilt Silvana und Paracelsus, die mir bei
+der Entwicklung in der Entstehungsphase (die nun schon 3 1/2
+Jahre zurueckliegt) sehr geholfen haben, wie auch den zahl-
+reichen anderen Magiern, die selbstlos Monster und anderes
+zur Verfuegung stellten.
+
+Aller guten Dinge sind drei. Oder vier. Wer weiss :)
+
+Ich wuensch Euch viel Spass damit.
+
+
+                            - Tilly -
+
+p.s.: Unerwaehnt lassen moechte ich nicht Zephyr, Twingi und
+      Anatol, die mir mit zahlreichen Textfiles ausgeholfen
+      haben. Und natuerlich Ark, dessen erste Questabnahme
+      dies war :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: stati in B (Gloinson,  3. Jul 2002, 14:53:37):
+~#! rn=Gnome rt=1025700336 rg=treffen
+~#! tid=1025700336
+Seher, welche die Quest noch nicht geloest haben muessen zum Mailschreiben
+wieder auf die Postkabinen zurueckgreifen? :)
+
+Gloin(son)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: stati in B (Grimmborn,  3. Jul 2002, 15:04:39):
+~#! rn=Gloinson rt=1025700817 rg=d.polar
+~#! tid=1025700336
+Und das hat jetzt genau was mit dem Berliner Stammtisch zu tun?
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: stati in B (Gloinson,  3. Jul 2002, 15:10:11):
+~#! rn=Grimmborn rt=1025701479 rg=d.polar
+~#! tid=1025700336
+Bei naeherer Betrachtung verbindet beide Artikel nur das bei mir herrschende
+Netzlag.
+
+Gloin(son)
+
+-----------------------------------------------------------------------------
+
+
+
+Wettbuero (Humni, 16. Jul 2002, 11:12:27):
+Huhu,
+
+nachdem nun die Fussball-WM vorbei ist und da immer noch ein Wettbuero
+rumsteht, ist die Frage, ob und wie es damit weitergehen soll. Das Ding war
+(wie ich finde) fuer die Zeit der WM eine lustige und spontane Aktion, als
+solche war es auch konzipiert, und eigentlich wollte ich das danach einfach
+wieder abhaengen (konzipiert ist hier uebrigens ein hartes Wort fuer eine
+kurze Ueberleg- und dann Einfach-drauflosprogg-Phase, daher buggte das anfangs
+auch gut, aber die WM lief ja schon und ich wollte das schnell fertigbasteln).
+
+Nun stellt sich die Frage, ob ueberhaupt generell erwuenscht ist, dass
+RL-Einfluesse hier im MG Platz nehmen - schliesslich geht es hier um Eure
+Muenzen. Ich weiss aber andererseits auch, dass Muenzen natuerlich eigentlich
+scheissegal sind. Andererseits hab ich nicht die Zeit, z.B. jede Woche die
+Bundesligaspiele einzutragen, mitsamt Ergebnissen usw. Wenn es eine Gruppe von
+Leuten gibt (einer ist dafuer IMHO zu wenig) die das uebernhemen will oder die
+das fuer was anderes verwenden will, bitte ich um Vorschlaege. Ebenso um
+Meinungsaeusserungen ob sowas ueberhaupt gewuenscht wird.
+
+Die Zeiten/Modalitaeten/Geldvergabe kann man alles veraendern, ich weiss, dass
+an meiner Geldvergabe sehr viel herumgemosert wurde, und das bestimmt nicht
+nur zu Unrecht. Wie gesagt: Es war ein Schnellschuss. Aber vielleicht findet
+ja jemand Gefallen daran.
+
+Dieserjenige/Diejenigen muessen uebrigens keine Magier sein. Und ich muss die
+Zeit finden das umzubauen, wenn das wirklich weitergehen soll. Aber nun duerft
+Ihr erstmal Eure Meinung sagen ;-)
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Wettbuero (Jameson, 16. Jul 2002, 11:14:50):
+~#! rn=Humni rt=1026810747 rg=d.polar
+~#! tid=1026810747
+Warum muss man unbedingt um RL-Dinge wetten? :) Gibt bestimmt auch einige
+nette Sachen, die im MG stattfinden.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Wettbuero (Elberet, 16. Jul 2002, 11:16:12):
+~#! rn=Jameson rt=1026810890 rg=d.polar
+~#! tid=1026810747
+zB die ergebnisse in der schattenarena :)
+
+Aber kann man da nicht schon wetten?
+
+Elbi
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Wettbuero (Boing, 16. Jul 2002, 11:17:21):
+~#! rn=Elberet rt=1026810972 rg=d.polar
+~#! tid=1026810747
+Natuerlich kann man da wetten ... die Frage ist, ob das noch irgendjemand
+macht ...
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Wettbuero (Elberet, 16. Jul 2002, 11:18:05):
+~#! rn=Boing rt=1026811041 rg=d.polar
+~#! tid=1026810747
+also ich schaus mir auf jeden fall an, wenn ich gerad nicht idle bin
+
+Elbi
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Wettbuero (Cuchullin, 16. Jul 2002, 13:37:01):
+~#! rn=Elberet rt=1026811085 rg=d.polar
+~#! tid=1026810747
+Ich verlier da regelmaessig Cash. Bin mir sehr sicher, dass Durian da
+das Rennen manipuliert, wenn grosse Einsaetze gegeben sind. ;)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Nicht der Rede wert .... (Tilly, 25. Jul 2002, 14:37:34):
+~#! rn=Tilly rt=1025697227 rg=d.polar
+~#! tid=1025697227
+Moin moin auch,
+
+ich habe die ersten Questmails zur ParaPost-Quest ausgewertet
+und einige Aenderungen vorgenommen.
+
+Dank an diejenigen, die mit konstruktiver Kritik nicht ge-
+spart haben.
+
+Die wichtigste und auffaelligste Aenderung ist wohl, das ich
+die einfachsten Briefkaesten verschoben habe. Mittlerweile
+duerften sich die anderen Standorte rumgesprochen haben ...
+
+Falls Probleme auftauchen sollten, mailt es mir bitte unver-
+zueglich.
+
+ - Tilly -
+
+-----------------------------------------------------------------------------
+
+
+
+Kjarazzi ... (Tilly,  5. Aug 2002, 10:48:59):
+... hat seinen Ring wiedergefunden.
+
+ - Tilly - 
+
+-----------------------------------------------------------------------------
+
+
+
+Postkutsche (Tilly, 30. Aug 2002, 23:42:31):
+Moin moin,
+
+die Postkutsche steht nun auch fuer 'reise' zur Verfuegung.
+
+ - Tilly -
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Postkutsche (Tilly,  2. Sep 2002, 14:11:09):
+~#! rn=Tilly rt=1030743751 rg=d.polar
+~#! tid=1030743751
+Slanderscree ebenso.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Postkutsche (Tilly,  4. Sep 2002, 10:39:57):
+~#! rn=Tilly rt=1030743751 rg=d.polar
+~#! tid=1030743751
+Pegasus auch.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Postkutsche (Muaddib,  4. Sep 2002, 18:40:13):
+~#! rn=Tilly rt=1031128797 rg=d.polar
+~#! tid=1030743751
+lade xyz ein auf reise nach fernwest?
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Postkutsche (Roland,  4. Sep 2002, 19:38:35):
+~#! rn=Muaddib rt=1031157613 rg=d.polar
+~#! tid=1030743751
+lade xyz ein zur reise nach fernwest ...(find ich bessa)
+oder
+lade xyz zur reise nach fernwest ein ...
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Postkutsche (Foobar,  4. Sep 2002, 19:40:35):
+~#! rn=Roland rt=1031161115 rg=d.polar
+~#! tid=1030743751
+Oder:
+>sag: Geh zu Fuss, Du Arsch.
+
+Gruss,
+
+   Foobar
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Postkutsche (Amaryllis,  4. Sep 2002, 19:41:20):
+~#! rn=Foobar rt=1031161235 rg=d.polar
+~#! tid=1030743751
+Wieso auf diesem Gossenniveau?
+
+Ama*, entsetzt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Postkutsche (Foobar,  4. Sep 2002, 19:41:56):
+~#! rn=Amaryllis rt=1031161280 rg=d.polar
+~#! tid=1030743751
+Bin Zwerch, hab kein anderes.
+
+Foobar
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Postkutsche (Mandragon,  4. Sep 2002, 19:58:46):
+~#! rn=Foobar rt=1031161316 rg=d.polar
+~#! tid=1030743751
+Ja. Zwerge riechen gleich beim Reinkommen schon nach Gosse. Der restliche Raum
+im Uebrigen auch, zumindest kurze Zeit spaeter.
+
+Ma* (Elf und froh darueber)
+
+P.S.: Weniger froh bin ich ueber meine gute Nase nur, wenn oben beschriebenes
+Ereignis eintritt ....
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Postkutsche (Foobar,  4. Sep 2002, 20:22:53):
+~#! rn=Mandragon rt=1031162326 rg=d.polar
+~#! tid=1030743751
+Tut mir leid, aber das ist schlicht falsch.
+
+Wir riechen schon lange vor dem Reinkommen nach Gosse. Und zumindest ich bin
+stolz drauf.
+
+Foobar
+
+PS: Wer hat Mandragon das Astloch weggenommen? ;o)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Postkutsche (Orktoeter,  4. Sep 2002, 20:24:03):
+~#! rn=Foobar rt=1031163773 rg=d.polar
+~#! tid=1030743751
+ Hatte der letze Elf den du umgehauen hast nur ein Bein? *g*
+
+OrkT.
+
+-----------------------------------------------------------------------------
+
+
+
+Top-Helden-Liste (Gor, 28. Okt 2002, 21:11:42):
+Hallo ihr Edlen,
+ihr werdet nun seit dem letzten Reboot wieder entsprechend gehuldigt. Was son
+paar Ticks mehr ausmachen... };-)
+
+Gor
+
+-----------------------------------------------------------------------------
+
+
+
+Nur weil hier schon so lange nix drinsteht... (Humni, 12. Dez 2002, 16:41:54):
+sonst wuerde ich das nicht erwaehnen.... aber ein uebler, boeser Hack, den man
+mir bitte nicht nachmachen sollte, sorgt nun hoffentlich dafuer, dass ein
+gewisser Gulli oefter anzutreffen ist und man nicht erst beim freundlichen
+Magier darum bitten muss, dass er geladen wird.
+
+Nicht weiter wichtig, wie gesagt, aber die Rubrik war so leer.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+MHK (Amaryllis, 20. Jan 2003, 09:42:36):
+$subject hat nun auch die ID "mhk".
+
+Doll, nich?
+
+Nur weil das soviele gefragt haben...
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Sowas. (Oham, 24. Feb 2003, 18:30:25):
+Hmpf. Ganz schoen nervig, aber ich fange mal vorne an:
+
+Wieder einmal war ich am Polarmeer gelandet und wieder einmal pfiff der Wind
+mir eisig durch die Haare. Wieder einmal schaute ich auf den kleinen Ort, der
+neben dem Saphirhafen gewachsen war und bereitete mich darauf vor, die
+Bevoelkerung dieses kleinen Ortes um einige Leben zu dezimieren.
+
+Das war eines der Hauptprobleme. Die Leute in diesem Ort vermehrten sich wie
+die Karnickel, keine Ahnung was fuer Mittel die immer nahmen. Und dann
+stellten sie so eine bloede Wache vor die Tuer. Ich glaube, der doofste von
+ihnen durfte diesen Posten uebernehmen. Also ging ich hin (oder sonstwer) und
+haute diese Wache kaputt. Das uebt - fuer uns Kaempfer jedenfalls - auch
+unsere Technik, unseren Stil und unsere Kraefte.
+
+Folglich zog ich den Bienenstachel aus der Parallelwelt und grinste die Wache
+an. ,,Hallo eine Wache!'' sagte ich zu ihr. ,,Wie geht es Dir heute?'' -
+,,Beschissen.'' antwortete diese. ,,Ich darf hier den ganzen Tag rumstehen und
+das Tor bewachen. Wie schoen es waere, tot zu sein.''
+
+Das ist kein groesseres Problem.'' erklaerte ich und durchbohrte den
+daemlichen Depp mit meinem Bienenstachel. Seufzend sank er zu Boden
+schaute mich noch einmal mit einem seltsam flehenden Blick an und blieb dann
+liegen.
+
+Ich packte seine Sachen in ein Paket und ging in die Siedlung rein, um dort
+die Dockarbeiter und die uebrigen Wachen umzuhauen. Die nervten naemlich
+gewaltig.
+
+Kurz darauf lag die Bevoelkerung des Dorfes am Saphirhafen tot zu meinen
+Fuessen und ich ging in die Kneipe um mich dort hemmungslos zu betrinken, wie
+es meine Art ist. ,,Verstandesklarheit und Sinnesschaerfe leite unser
+Denken.'' - das hab ich immer schon gewusst. Besonders klar kann mein Geist
+geleitet werden, wenn er im Inneren von Flaschen gefunden wird, vor allem das,
+was den Geist leitet. Wenn jemand meinen letzten Satz nicht verstanden haben
+sollte, das macht nichts, der ergibt auch so keinen Sinn und ist auch nicht
+wichtig.
+
+Naja jedenfalls war ich gerade beim dritten Bier als von draussen ein lautes
+Grollen zu hoeren war. ,,Scheisse'' dachte ich, ,,ein Erdbeben.'' Also ging
+ich raus und schaute den Huegel empor, der sich suedlich des Saphirhafens
+erstreckt, denn von dort kam das unheimliche Grollen.
+
+Mit gewaltigem Donnergetoese kam eine Geroellawine den Berg hinunter. Die
+Lawine begrub die Wache, die am suedlichen Ende der Siedlung gestanden hatte
+und die verzweifelt noch versuchte wegzulaufen.
+
+Ich dachte bei mir . o O (Prima, die Dumpfnase hatte ich ganz vergessen) und
+ging dahin, um ihre Ausruestung mitzunehmen. Ich wuehlte ein wenig in den
+Geroellteilen herum, und tatsaechlich, ich fand die stinkenden, faulenden
+Ueberreste der Wache (jaja, die war noch nicht am faulen, und sie stank nur
+nach Angstschweiss, aber das soll ja nach was klingen hier). Einige der
+Koerperteile waren abgerissen, auch die Ruestung war nicht mehr zu brauchen,
+nur das Eiselfenschwert war noch gut genug, um in mein Paket geschmissen zu
+werden.
+
+Seufzend stand ich da und schaute den Berg hinauf. Das war ja ein toller Tag.
+Erst die bloeden Dockarbeiter hauen. Kannte ich den nix besseres? Durfte ich
+nie mit den grossen Jungs spielen und hauen gehen? Die hauten den Drachengott,
+und ich stand hier, schaute einer Lawine hinterher und suchte die bloeden
+Sachen zusammen, die ich nichtmal selbst ermetzelt hatte. Deprimiert ging ich
+in die Kneipe, um meine Verstandesklarheit wiederzufinden.
+
+Fuenfzehn Bier spaeter wankte ich aus der Kneipe, um erstmal in den Struv
+zurueckzukehren. Leider verwechselte ich links und rechts und lief so nicht
+aus dem Saphirhafen, sondern ging nach Sueden. Naja, haette ja nix gemacht, da
+gehts ja nach kurzer Zeit nicht weiter.
+
+Dachte man zumindest, doch die Lawine war nun endgueltig den Pfad
+hinabgesegelt, und der Berg suedlich des Saphirhafens muss wohl besteigbar
+sein. Keine Ahnung. Jedenfalls bin ich vermutlich da hochgelaufen und stand
+auf einmal vor einem riesigen Schloss.
+
+Ich betrat das Schloss und fand lauter Merkwuerdigkeiten, doch davon will ich
+lieber nix erzaehlen, denn das kann ich nicht, da ich alles vergessen habe, da
+ich wohl voellig betrunken war. Es endete damit, dass ein grosser, boese
+aussehender Zauberer meinte, die Zeit sei noch nicht reif und mich aus dem
+Schloss warf. Er gab mir eine Schaufel mit, mit dem Auftrag, mir mein eigenes
+Grab zu schaufeln, das wollte ich dann auch tun, war aber leider betrunken,
+und grub so eine Schneewehe. Die baute ich ganz hoch. So hoch, dass keiner
+mehr durchkam und die auch keiner mehr wegraeumen kann. Jedenfalls nicht bis
+ich das will. So.
+
+Tja, das war wohl das erste Mal, dass einer eine Schneewehe gebaut hat, und
+nicht der Wind selbst (in Koproduktion mit dem Schnee) aber hey - so ist das
+Leben nunmal. Ich selbst ging wieder zurueck, als ich langsam ausnuechterte
+(das arbeiten machte ganz schoen warm, und ich schwitzte wie ein tambiarisches
+Schwein, dabei schwitzte ich den ganzen Alkohol aus) und kam noch an einem
+komischen Typen vorbei, der was von einer Hoehle und von einem Zauberer
+brabbelte. Ich erklaerte ihm, zu dem komme er jetzt eh nicht mehr zurueck,
+schliesslich haette ich da ja schon den Schneeberg, den ich mal Schneewehe
+genannet hatte, hingeschaufelt, und damit ging es nicht wieder dahin. Er
+meinte, sein alter Kumpel sei gefangen genommen worden und blah, war mir aber
+auch egal, ich ging nach Hause und besoff mich ziemlich.
+
+Naja, und dem Depp, der mir eine MPA in die Hand gedrueckt hat, sollte man
+auch nochmal in alles Ruhe schimpfen. Ich schreibe da ja wirklich nur Scheisse
+rein. Das ist ja unglaublich.
+
+Oham der Avatar, nicht nuechtern.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Sowas. (Oham,  7. Mar 2003, 14:05:16):
+~#! rn=Oham rt=1046107825 rg=d.polar
+~#! tid=1046107825
+Noe. Sowas aber auch.
+
+Was soll ich nun sagen? Ich ging nochmal daher. Und mit meinem grossen Holze
+wollte ich sie hauen. Naja, nicht hauen, aber ich hab mal geschaut was es tut.
+Und es vibrierte.
+
+Manchmal vibrieren Dinge, die vorher nicht vibriert haben, sagte schon
+irgendwann so ein komischer Typ (Lembold? Keine Ahnung.) Und nicht nur
+Pinguine.
+
+Wenn mich keiner versteht, bin ich vermutlich schon wieder betrunken.
+
+Sowas aber auch.
+
+Oham
+
+-----------------------------------------------------------------------------
+
+
+
+Tja... (Humni,  2. Apr 2003, 14:19:54):
+eigentlich dachte ich, Zauberer waeren die grossen Jammerer. Aber troestet
+Euch, Eure Erwartungshaltung, jegliche Viecher von mir sollten einfach so
+umfallen wenn Ihr alleine den Raum betretet, nur weil Ihr Kaempfer seid und
+das bei Zauberern auch geht, wird sich immer mehr erfuellen. Bevor mir noch
+mehr Leute in den Ohren liegen und mir Mails schreiben: Shnivla ist
+mittlerweile was leichter geworden. Dafuer wird sie auch nie mehr interessante
+Items kriegen als sie jetzt schon hat. So.
+
+Und mehr Stupse wirds fuer sie auch nicht geben.
+
+Humni geht auf Spielerwuensche ein - IHR lebt mit den Folgen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Tja... (Hisasul,  2. Apr 2003, 14:23:26):
+~#! rn=Humni rt=1049285994 rg=d.polar
+~#! tid=1049285994
+Hmpf, so hart war die kleine aber auch nich :)
+Du solltest Namen nennen, dann kann Briesel Verweise wgn Jammern verteilen
+oder solche Leute aus der Gilde schmeissen ;)
+
+His* kopfschuettelnd.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Tja... (Fenriz,  5. Apr 2003, 23:08:26):
+~#! rn=Hisasul rt=1049286206 rg=d.polar
+~#! tid=1049285994
+
+Frauen zuerst...
+
+-----------------------------------------------------------------------------
+
+
+
+Kurzinfo (Humni, 23. Apr 2003, 14:10:06):
+Huhu,
+
+gibt nen neuen NPC im Polar. Wichtig ist er fuer die Werwoelfe. Kann sein,
+dass irgendwo noch mehr solche auftauchen. Nur dass keiner sagt, ich haette
+nix gesagt ;-)
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Schoener Mist. (Hugalf, 14. Mai 2003, 22:32:17):
+Mitten in der Tundra. Nur Nebel um mich rum. Und dann diese ewigen Fata
+Morganas. Kann mal jemand bitte diese doofe Tundra abstellen? Die nervt
+wirklich. Vor allem, wenn man Berge sieht, wo vorher keine waren.
+
+Hugalf ist ernsthaft sauer.
+
+-----------------------------------------------------------------------------
+
+
+
+Parapostquestgrabsteine (Humni, 21. Mai 2003, 15:42:55):
+Huhu,
+
+es gab eine kleine Aenderung bei der Parapostquest. Ab sofort sollte es schon
+ein Seher sein, der da gestorben ist, sonst ist das ja schliesslich albern,
+wenn ihr einen Grabstein aufstellt. Selbstverstaendlich koennt ihr nach wie
+vor Grabsteine aufstellen wie ihr lustig seid.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Parapostquestgrabsteine (Humni, 21. Mai 2003, 15:51:28):
+~#! rn=Humni rt=1053524575 rg=d.polar
+~#! tid=1053524575
+Noch einer: 
+
+Faketode werden auch ausgebaut. Einen hab ich schon, fuer weitere Hinweise bin
+ich dankbar.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Parapostquestgrabsteine (Humni, 21. Mai 2003, 16:08:45):
+~#! rn=Humni rt=1053525088 rg=d.polar
+~#! tid=1053524575
+OK Ok das war ein Fehler.. bitte keine Hinweise auf Faketode mehr, ich komm
+sonst gar nicht mehr zum arbeiten. Ich versuchs anders.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Na super. (Zook, 12. Jun 2003, 11:01:09):
+~#! rn=Catweazle rt=1055403987 rg=gejammer
+~#! tid=1055403987
+Manches Gejammer.... ach, was erzaehl ich da? Kuemmert Euch doch um Euren
+eigenen Mist! ;)
+
+Zook.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Na super. (Catweazle, 12. Jun 2003, 11:04:13):
+~#! rn=Zook rt=1055408469 rg=d.polar
+~#! tid=1055403987
+Du musst ja auch nicht ueberall deine Finger im Spiel haben, gell?
+
+Du bist Gott, was interessiert es dich da, ob Werwoelfe in Eismienen stehen.
+Oder ob darueber gejammert wird ...
+
+YTC
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Na super. (Zook, 12. Jun 2003, 11:05:11):
+~#! rn=Catweazle rt=1055408653 rg=d.polar
+~#! tid=1055403987
+Das war auch nur ein Artikel im Rahmen des Dienstaufsicht ueber die vorschnell
+handelnden [W] ;)
+
+Zook.
+
+-----------------------------------------------------------------------------
+
+
+
+Neulich, auf einer wohlbekannten Insel... (Gabylon, 15. Jun 2003, 23:22:57):
+Ein riesengrosses Schneefeld.
+Es gibt einen sichtbaren Ausgang: sueden.
+Es wird merklich kuehler. Ein leises Summen ertoent.
+Ploetzlich fliegt eine kleine Waldfee herein und kuesst Dich auf die Nase.
+Sie fluestert: 'Seid gegruesst, Gabylon!'
+Du schaust etwas verwirrt.
+ Alsdann bilden sich kleine goldene Sternchen aus dem Nichts zu einem Wirbel,
+der langsam menschenaehnliche Gestalt annimmt, bis nach einigen Momenten vor
+Dir eine wunderhuebsche Frau knapp ueber dem Boden schwebt.
+ Sie hat ein langes weisses Gewand an, welches so hell strahlt, dass Du die
+Augen zusammenkneifen musst, um etwas zu erkennen.
+Ihre Lippen bewegen sich kaum, als sie anfaengt zu reden:
+ 'Hallo Gabylon. Ich bin Cherlindrea, Hueterin von Ti Aslin.'
+Ihre Stimme klingt melancholisch und geheimnisvoll, so dass Dir ein leichter
+Schauer ueber den Ruecken jagt.
+Du wagst nicht wirklich, etwas zu sagen.
+ 'Wir brauchen Eure Hilfe... Galdakor ist von Koenigin Bavmordas Truppen dem
+  Erdboden gleichgemacht worden, und ihre Macht wird staendig groesser.
+  Ti Aslin ist auch nicht mehr sicher, seitdem Bavmorda Raziel verbannt hat.'
+Cherlindrea macht eine kleine Pause. Dabei schwirrt sie mal hier, mal dahin,
+gerade so, als ob sie ueberlegen muesste, was sie als naechstes sagen soll.
+
+Dann faehrt sie fort:
+'Ich weiss, dass Ihr selber nicht in das Gefuege eingreifen duerft. Drum
+ bitte ich Euch, Euch mindestens drei, doch besser vier tapfere und erfahrene
+ Recken zu suchen, die Bavmorda Einhalt gebieten koennen. Wenn sie es nicht
+ schaffen, ist Ti Aslin dem Untergang geweiht...'
+Du schluckst.
+Du sagst:
+ 'Und da kommt Ihr gerade zu mir, Cherlindrea? Wer sagt Euch, dass ich der
+  Richtige bin, um diese Eskorte zusammenzustellen?'
+Cherlindrea wispert:
+ 'Ich weiss, dass Ihr der Richtige seid, Gabylon. Ihr seid eine gute Freundin
+  der Herrin des Sees. Also habe ich Vertrauen in Euch. Lasst Bavmorda
+  vernichten, befreit Raziel und der Lohn fuer die Muehen der tapferen Helden
+  wird gross sein!'
+Du ziehst eine Augenbraue hoch.
+Du fragst: 'So? Welcher Lohn erwartet sie denn? Vielleicht kann ich sie
+  damit locken?'
+Cherlindrea laechelt wissend:
+ 'Nunja, ausser der Gewissheit, dass sie Ti Aslin und der ganzen Nordwelt
+  einen grossen Dienst erwiesen haben... lasst Euch ueberraschen...'
+Du seufzst tief.
+Cherlindrea schwirrt etwas naeher heran:
+ 'Ich wuensche Euren Helden viel Glueck, das koennen sie wahrlich
+  brauchen...'
+
+Als der Wirbel wieder kleiner zu werden beginnt und die Sternchen erst
+verblassen, dann zusammen mit Cherlindrea allmaehlich durchsichtig werden,
+meinst Du, aus Richtung der Sternchen noch Wortfetzen zu vernehmen:
+ '...geistigen Beistand... dringend notwendig...'
+
+-----------------------------------------------------------------------------
+
+
+
+Eine Hexe... (Gabylon,  4. Jul 2003, 14:26:17):
+war auf einem Hexenlehrgang und ist jetzt noch boeser und furchtbarer
+geworden.
+
+ich soll euch nur warnen...
+
+gab
+
+-----------------------------------------------------------------------------
+
+
+
+es weihnachtet sehr (Uschi, 23. Jul 2003, 14:21:17):
+es ist hochsommer und wie jeden sommer und winter und fruehjahr und ueberhaupt
+zu jeder zeit, ist bei den innuits weihnachten. darum hab ich mich eben mit
+gluehwein betrunken und massig lebkuchenherzen aufgegessen.
+und gleich halte ich noch ein schwaetzchen mit lotta, die ist naemlich genauso
+blond wie ich!
+
+beste weihnachtliche gruesse
+uschi, 22, frisoese
+
+-----------------------------------------------------------------------------
+
+
+
+Die Zoellner in Fizbans Gebiet im Polar ... (Arathorn, 29. Jul 2003, 23:30:02):
+... sind derzeit leider unpaesslich. 
+
+Aufgrund eines Bugs ist das Teilgebiet ab dem oestlichen Zollhaus vorueber-
+gehend nicht zugaenglich. Wer dort ein Seherhaus gebaut hat, sollte berueck-
+sichtigen, dass der Weg aus dem Gebiet heraus auch nicht funktioniert. ;-)
+
+Sorry dafuer, aber mit den mir zur Verfuegung stehenden Moeglichkeiten geht
+das leider nicht anders.
+Gruss, 
+Arathorn.
+
+P.S.: Der verursachende Bug ist bekannt und wird sehr wahrscheinlich in
+      Kuerze behoben werden.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Die Zoellner in Fizbans Gebiet im Polar ... (Humni,  4. Aug 2003, 14:39:33):
+~#! rn=Arathorn rt=1059514202 rg=d.polar
+~#! tid=1059514202
+Der Bug wurde behoben. Das Gebiet ist wieder da.
+
+Viel Spass,
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Tief im Norden (Stop, 11. Aug 2003, 09:58:14):
+Erschreckend musste ich feststellen, dass sich tief im Norden eine Schneise,
+nennt es auch weg ;o) - geschlagen hat, die kaelter ist, als was man sonst in
+unserer Welt kennt.
+Und mich duenkt das Gefuehl, dass das erst der harmlose Anfang von etwas ist,
+dass in absehbarer Zukunft den Himmel ueber dem Polar in blutrot tauchen wird.
+Denn aus sicherer Quelle habe ich erfahren, dass eine ominoese Heilige eine
+absurde Allianz mit einem boesen schwarzen Drachen geschlossen hat, der
+besonders um Mitternacht in weissen Laken ueber die Lande zieht, um euch
+Freunde das Schrecken zu lehren!
+Nehmt euch in acht, dass Erenc euch nicht das Messer in den Ruecken rammt!
+In voelliger Verstoerung
+Stop
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Tief im Norden (Zarniya, 11. Aug 2003, 15:57:21):
+~#! rn=Stop rt=1060588694 rg=d.polar
+~#! tid=1060588694
+zum glueck ist hier immer MorgenGrauen.... 
+
+-----------------------------------------------------------------------------
+
+
+
+seherhaustiere (Leibi, 13. Aug 2003, 20:00:05):
+lotta hat nun endlich ihre formulare fuer die seherhaustiere geliefert
+bekommen und verteilt nun gerne einzigartige tiere fuers haus mitsamt dem
+kaefig.
+
+viel spass damit.
+leibi
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Tief im Norden (Humni, 16. Aug 2003, 19:48:25):
+~#! rn=Stop rt=1060588694 rg=d.polar
+~#! tid=1060588694
+Solltet ihr auf Stops Spuren bemerkt haben, dass der Weg.. inkonsistent ist:
+Das ist er nun nicht mehr ;-)
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Frustbewaeltigung (Humni, 11. Sep 2003, 23:38:21):
+Huhu,
+
+aufgrund akuter Frustbewaeltigungsnot gibts wen neues zum Umhauen. Bitte alle
+machen. Und moeglichst langsam und blutig.
+
+Ja, ich nutze meinen RM-Posten gerade aus.
+
+Humni
+PS: Stichwort Baerenhoehle.
+PPS: Noch ist er Selbstzweck, er wird noch einen Sinn fuer die Werwoelfe
+kriegen.
+
+-----------------------------------------------------------------------------
+
+
+
+auf dem weihnachtsmarkt.... (Uschi, 19. Sep 2003, 01:13:29):
+ ... hab ich tatsaechlich so blaue dixiklos entdeckt.
+die waren so blau, dass man fast den schmutz nimmer gesehen hat. aber ich
+konnte trotzdem darin meine haare richten. besuch von einer klofrau waere
+nett.
+
+beste blonde gruesse
+uschi - 22 - frisoese
+
+-----------------------------------------------------------------------------
+
+
+
+Re: auf dem weihnachtsmarkt.... (Gloinson, 19. Sep 2003, 01:15:55):
+~#! rn=Uschi rt=1063926809 rg=d.polar
+~#! tid=1063926809
+Mhh. Dixiklos. Damit verbinde ich seit einiger Zeit die Erinnerung an einen
+sehr geschichtstraechtigen Park in Moskau (Kolomenskoje, auf der (grossen)
+Liste der 7 neuen Weltwunder). Der Behaelter war gefuellt. Es ragte die Brille
+hoch. Es war schon um die Brille herum alles zu. Aber man konnte den Raum noch
+benutzen um mit Abstand und Luftanhalten ungesehen die Blase zu entleeren.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: auf dem weihnachtsmarkt.... (Imda, 19. Sep 2003, 01:19:59):
+~#! rn=Uschi rt=1063926809 rg=d.polar
+~#! tid=1063926809
+Da mussich doch gleich mal testen, ob ma die auch umschmeissen kann...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: auf dem weihnachtsmarkt.... (Leibi, 19. Sep 2003, 01:21:31):
+~#! rn=Imda rt=1063927199 rg=d.polar
+~#! tid=1063926809
+neee, klein uschi ist zu schwach, das umzuwerfen. aber vielleicht kann man ja
+bald mal die waende bemalen :)
+
+leibi
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: auf dem weihnachtsmarkt.... (Imda, 19. Sep 2003, 01:21:55):
+~#! rn=Leibi rt=1063927291 rg=d.polar
+~#! tid=1063926809
+erstmal mussich das dumme ding finden. hab mich schonwoeder verlaufen
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: auf dem weihnachtsmarkt.... (Bran, 19. Sep 2003, 01:22:31):
+~#! rn=Imda rt=1063927315 rg=d.polar
+~#! tid=1063926809
+
+
+gaaaaanz falsche gegend :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: auf dem weihnachtsmarkt.... (Amazora, 19. Sep 2003, 10:59:23):
+~#! rn=Bran rt=1063927351 rg=d.polar
+~#! tid=1063926809
+vielleicht kann man die anzuenden? ;-)
+dixiklos erinnern mich immer an das force attack...
+
+-----------------------------------------------------------------------------
+
+
+
+Rodelbahn (Humni, 16. Feb 2004, 22:56:44):
+Huhu,
+
+einen Bug hab ich gefixed. Wenn noch was auffaellt bitte melden, und sorry,
+dass das so lange gedauert hat, aber:
+
+Ich erklaere die Rodelbahn hiermit bis zum Auftauchen des naechsten
+Rodelbahn-Bugs fuer wieder benutzbar. Viel Spass.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Kachelmann (Tilly, 24. Feb 2004, 01:31:23):
+Moin auch,
+
+der Kachelmann ist wieder da. Alle, die die Quest geloest haben, koennen
+ihn nun aufsuchen. Muessen natuerlich vorher noch zu wem anders, wegen ...
+dem .. aeh der .. oder so ... na Ihr werdets schon wissen.
+
+Wer den EK bereits hatte muss ihn sich leider nochmal holen. Aber so
+schwer wars nun auch nicht.
+
+Desweiteren hab ich 3-4 neue Empfaenger fuer die ParaPost-Quest einge-
+tragen. Als naechstes kommen die Briefkaesten dran >:)
+
+ - Tilly -
+
+
+-----------------------------------------------------------------------------
+
+
+
+Kjarazzi (Tilly, 22. Mar 2004, 00:58:05):
+Moin moin.
+
+Ich habe, und mein Dank gebuehrt der spielenden Balance, Kjarazzi
+eine Kleinigkeit zugesteckt. Ist vielleicht fuer die Kleineren
+unter uns von Interesse :-)
+
+ - Tilly -
+
+-----------------------------------------------------------------------------
+
+
+
+Kobolde... (Humni,  6. Jun 2004, 18:34:26):
+.. fallen jetzt eventuell um, nachdem das halbe Mud meint, es waere wirklich
+gemein, boese, schrecklich, furchtbar, grauenhaft, ekelerregend, hundsgemein
+und nur eines schwarzen Drachen wuerdig, NPCs, die nicht umfallen stupsen zu
+lassen.
+
+Nachdem ich diverse drohende Faeuste gesehen und mich an ihren ohnmaechtigen
+Gesten geweidet habe, diverse Spieler die voller Ueberzeugung meine
+Inkompetenz verkuendeten ausgelacht und mich ueber ihre Machtlosigkeit
+innerlich lustig gemacht habe droht nun eine weitere Gefahr: Dass ich mich
+totlache, wenn ich so weiter mache.
+
+Den Gefallen tue ich Euch natuerlich nicht, sonst waere ich ja lieb. Um Euch
+weiterzuquaelen wird also nun ein gewisser Kobold vielleicht mal umfallen.
+Wenn er Euch nicht ,,umfaellt'', wie das in der Fachsprache der NPCs so
+heisst.
+
+Humni, schrecklich, boese und gemein und wills bleiben.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kobolde... (Zook,  6. Jun 2004, 18:38:44):
+~#! rn=Humni rt=1086539666 rg=d.polar
+~#! tid=1086539666
+HOSSA!
+
+Zook.
+
+-----------------------------------------------------------------------------
+
+
+
+Wetten, Wetten, Wetten! (Humni, 12. Jun 2004, 11:31:50):
+Hallo wettgeilies Pack,
+
+das Wettbuero im Polar ist wieder eroeffnt, diesmal mit den Spielen der
+Fussball-EM. Die ersten sind schon eingetragen, den Rest der Vorrunde bau ich
+gleich. Nein, die Quoten haben sich nicht geaendert. 
+
+Die Topliste wird natuerlich weitergefuehrt.
+
+Viel Spass!
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Wetten, Wetten, Wetten! (Zook, 12. Jun 2004, 12:22:52):
+~#! rn=Humni rt=1087032710 rg=d.polar
+~#! tid=1087032710
+Wieso wird die Toplsite "natuerlich" weitergefuehrt? Da steht doch sogar
+noch dran, dass es die Topliste der WM-Tipper sei. Aber wir tippen doch 
+fuer die EM, oder?
+
+Zook quengelt um eine frische EM-Topliste.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Wetten, Wetten, Wetten! (Humni, 12. Jun 2004, 13:20:16):
+~#! rn=Zook rt=1087035772 rg=d.polar
+~#! tid=1087032710
+Na gut.
+
+Humni loescht dann mal.
+
+-----------------------------------------------------------------------------
+
+
+
+Wettbuero (Humni, 12. Jun 2004, 18:06:35):
+Da ich shcon bei der WM darueber stundenlang diskutieren musste und das nicht
+nochmal tun werde:
+
+1. Ich werde die Formeln fuer den Gewinn nicht aendern
+2. Ja, wenn man viel viel Geld auf ein Ergebnis setzt kann es sein, dass man
+wenn man nur die Tendenz richtig hat trotzdem Verlust macht. Das liegt daran,
+dass das Wettbuero keine Geldquelle sein soll, und an den Formeln. Fuer diese
+gilt Punkt 1.
+3. Selbiges kann passieren, wenn andere schon viel auf ein zu erwartendes
+Ergebnis gesetzt haben.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Wettbuero (Humni, 14. Jun 2004, 14:38:52):
+~#! rn=Humni rt=1087056395 rg=d.polar
+~#! tid=1087056395
+Also, da das auch nicht klar zu sein scheint:
+
+Wenn ihr nicht auf der Topliste erscheint, ist das nicht sofort ein Bug.
+Ihr erscheint erst auf der Topliste, wenn ihr INSGESAMT durch Wetten Gewinn
+gemacht habt.
+Sprich: Ihr habt 1000 Muenzen auf ein Ergebnis gesetzt, mit dem eh jeder
+rechnet (z.B. Deutschland gewinnt gegen Saudi-Arabien bei der letzten WM),
+aber das falsche Ergebnis getippt (7:0 statt 8:0). Das Wettbuero zahlt dafuer
+nur 900 Muenzen aus -> Ihr habt 100 Muenzen verlust, da nur die Tendenz
+stimmte, und seid NICHT auf der Topliste.
+Oder ihr habt 3 Spiele gesetzt, jeweils 1000 Muenzen, lagt 2 mal daneben und
+habt einmal 1580 Muenzen gewonnen -> Ihr habt 1420 Muenzen verlust und
+erscheint NICHT auf der Topliste.
+
+Nur zum klarstellen ;-)
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Wettbuero (Catweazle, 14. Jun 2004, 15:05:01):
+~#! rn=Humni rt=1087216732 rg=d.polar
+~#! tid=1087056395
+Prima.
+
+Ich hab gewettet.
+
+Wo war das Wettbuero doch gleich? :-)
+
+YTC
+
+-----------------------------------------------------------------------------
+
+
+
+Speermeister-Speer / Soeren (Tilly, 17. Jun 2004, 15:28:28):
+Wegen Auftragens einer neuen, wiederstandfaehigeren Politur werden
+heute Abend alle im Umlauf befindlichen Speere des Speermeisters
+einer Ueberholung unterzogen.
+
+Aus technischen Gruenden werden alle Lernerfolge die AB 18 Uhr des
+heutigen Tages erzielt werden, NICHT erfasst.
+
+Die Auslieferung der neuen Speere wird durch einen weiteren Artikel
+in dieser Rubrik bekannt gegeben.
+
+ - Tilly - 
+
+-----------------------------------------------------------------------------
+
+
+
+Speermeister-Speer / Soeren, Teil II (Tilly, 17. Jun 2004, 19:50:57):
+Moin moin,
+
+die Rueckrufaktion des Speeres ist soweit erfolgreich verlaufen.
+
+Ich bedanke mich bei den Spielern der Balance die ihn in den
+letzten Wochen ausfuehrlich getestet haben.
+
+Was ist nun neu?
+
+Die Skillberechnung sollte sich etwas einfacher gestalten und
+nicht mehr so anfaellig bei Stecken/Zuecken in Verbindung mit
+Waffenguertel oder anderen Behaeltnissen sein.
+
+Der Stand der naechsten Top-SchuelerInnen-Liste entspricht etwa
+dem Stand von 18:30h heute. Der Lernerfolg in der Stunde bis ca.
+19:30h blieb unberuecksichtigt.
+
+Die Intuition sollte etwas ausfuehrlicher sein, aber immer noch
+weit davon entfernt, den Erfolg in Prozentschritten anzuzeigen.
+Eventuell bekomme ich Soeren dazu, seine Informationen endlich
+auch dem tatsaechlichen Stand entsprechend zu formulieren.
+
+Bei Problemen bitte Mail an mich.
+
+ - Tilly -
+
+p.s.: Das mit der Politur war gelogen :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Moulokin (im gefaehrlichen Teil der Wirklichkeit) (Tilly,  5. Sep 2004, 22:56:58):
+Moin moin,
+
+im Suedosten von Moulokin ist es den Centauren gelungen, noch etwas
+mehr Zerstoerung zu leisten. 
+
+Vielleicht faellt da auch eine Kleinigkeit fuer Euch ab.
+
+Gruss,
+
+ - Tilly - 
+
+p.s.: Wer es als erstes findet (Magier ausgenommen) bekommt nen Keks.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Moulokin (im gefaehrlichen Teil der Wirklichkeit) (Zook,  5. Sep 2004, 22:58:54):
+~#! rn=Tilly rt=1094417818 rg=d.polar
+~#! tid=1094417818
+Explodiert der Keks dann wenigstens?
+
+Zook.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Moulokin (im gefaehrlichen Teil der Wirklichkeit) (Tilly,  5. Sep 2004, 22:59:52):
+~#! rn=Zook rt=1094417934 rg=d.polar
+~#! tid=1094417818
+Wenn Dein Zweiti es als erster findet bekommt er die Knalltuete >:)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Moulokin (im gefaehrlichen Teil der Wirklichkeit) (Tilly,  5. Sep 2004, 23:10:51):
+~#! rn=Tilly rt=1094417818 rg=d.polar
+~#! tid=1094417818
+Der Keks ist wech :)
+
+-----------------------------------------------------------------------------
+
+
+
+Neuer RM (Humni, 23. Nov 2004, 14:34:27):
+Ja, das muss auch hier stehen, auch wenns in Bekanntmachungen schon steht:
+
+Willkommen, Noel, als neuer RM des Polargebietes!
+
+Humni freut sich auf die Zusammenarbeit.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Neuer RM (Noel, 23. Nov 2004, 14:42:43):
+~#! rn=Humni rt=1101216867 rg=d.polar
+~#! tid=1101216867
+
+Danke, danke :-)
+
+Damit hab ich endlich die Moeglichkeit, in meiner liebsten Region
+nicht nur zu proggen, sondern ... *g*
+
+Auf gute Zusammenarbeit und danke Dir und Zook fuer die Befoerderung!
+
+Noel
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Neuer RM (Gloinson, 23. Nov 2004, 14:50:31):
+~#! rn=Noel rt=1101217363 rg=d.polar
+~#! tid=1101216867
+Hui, dann gibt es ja bald wieder eklige Gegenden und ein Tor oeffnet sich und
+Gloin kann da alles bekehren und Cakey kann da wieder sterben ...
+
+
+-----------------------------------------------------------------------------
+
+
+
+Geruechte aus dem Polargebiet (Noel,  2. Feb 2005, 18:53:08):
+
+ Wie Wanderer zu berichten wissen, gehen in der Naehe der
+ alten Torfstecherei oestlich von Umjak merkwuerdige Dinge
+ vor.
+
+ Man sagt, das Moor dort wuerde sich veraendern und neue
+ Wege und Gefahren ans Licht bringen.
+
+ Genaues weiss man nicht, aber nach dem Verschwinden einer
+ Gruppe von Forschern ...
+
+ cu,
+ Noel
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Geruechte aus dem Polargebiet (Zarniya,  3. Feb 2005, 05:28:01):
+~#! rn=Noel rt=1107366788 rg=d.polar
+~#! tid=1107366788
+hmm ist das nicht inzwischen langweilig? Wanderer berichtet, Verschwinden
+einer Forschergruppe.... kann sich noch einer an die wirklich grandiosen
+Ankuendigungen neuer Gebiete erinnern? Kennt noch einer Dancer? :)
+
+Gruss, 
+Marc
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Geruechte aus dem Polargebiet (Deepblue,  3. Feb 2005, 10:30:29):
+~#! rn=Zarniya rt=1107404881 rg=d.polar
+~#! tid=1107366788
+Kannst ja mal im Archiv kramen und was re-senden :-)
+BTW: Der Wanderer weiss garnix :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Geruechte aus dem Polargebiet (Gloinson,  3. Feb 2005, 13:23:51):
+~#! rn=Zarniya rt=1107404881 rg=d.polar
+~#! tid=1107366788
+Liest du eigentlich manchmal noch die Zeitung oder ueberliest du zB Arks
+Questankuendigungen damit dein "frueher war alles besser" ueberzeugender
+klingt?
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Geruechte aus dem Polargebiet (Muadib,  3. Feb 2005, 17:08:59):
+~#! rn=Gloinson rt=1107433431 rg=d.polar
+~#! tid=1107366788
+ich kann mich an die schwerttaenzerankuendigung gut erinnern. obwohl sie gar
+nicht veroeffentlicht wurde
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Geruechte aus dem Polargebiet (Bambi,  4. Feb 2005, 19:12:49):
+~#! rn=Noel rt=1107366788 rg=d.polar
+~#! tid=1107366788
+Ha. Das liegt aber nicht am Sumpf, sondern an der Tatsache, dass ein paar Oger
+die Hydra metzeln wollten. Bloed wie sie sind, haben sie sich aber verlaufen
+und sind auf besagte "Gruppe von Forschern" gestossen. Tja. Die Forscher
+hatten wohl Hydrahoerner dabei, sonst waere natuerlich nie im Leben eine
+derartige Verwechslung moeglich gewesen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Geruechte aus dem Polargebiet (Kellybundy,  4. Feb 2005, 20:48:01):
+~#! rn=Bambi rt=1107540769 rg=d.polar
+~#! tid=1107366788
+Und? haben nu die Forscher die Oger vergewaltigt oder umgekehrt?
+
+-----------------------------------------------------------------------------
+
+
+
+Eisfestung einige Tage abgehaengt (Noel,  6. Feb 2005, 20:53:56):
+
+hallo,
+
+wie einige von euch bemerkt (zu spueren bekommen) haben,
+sind die zwergenangriffe etwas ausser kontrolle geraten.
+
+an der entfilzung der verlaus... aeh behebung des problems
+wird gearbeitet.
+
+lg und cya,
+noel
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Eisfestung einige Tage abgehaengt (Amaryllis,  7. Feb 2005, 15:44:58):
+~#! rn=Noel rt=1107719636 rg=d.polar
+~#! tid=1107719636
+Moin,
+
+der Zwergenangriff ist wieder am Start.
+
+Gruss,
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+In Ermangelung ... (Tilly, 31. Jul 2005, 21:32:40):
+... einer eigenen Gildenrubrik eben an dieser Stelle:
+
+Fuer die Eiskrieger gibts eine neue (die erste! :) Gildenquest. Wow.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: In Ermangelung ... (Tilly,  1. Aug 2005, 22:02:07):
+~#! rn=Tilly rt=1122838360 rg=d.polar
+~#! tid=1122838360
+Na sowas ... was ein Typo alles anrichten kann >:)
+
+Wer von Euch beim ID Lowfyr statt Lofwyr stehen hat moege sich bitte per Mail
+bei mir melden. Ich kann das auch in Eurer Abwesenheit fixen, aber erst wenn
+ihr bei der entsprechenden Aufgabe angelangt seit.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: In Ermangelung ... (Vector,  1. Aug 2005, 22:13:49):
+~#! rn=Tilly rt=1122926527 rg=d.polar
+~#! tid=1122838360
+merci.
+Vector, morgen wieder Drachen jagend
+
+-----------------------------------------------------------------------------
+
+
+
+Re: In Ermangelung ... (Tilly,  4. Aug 2005, 14:33:26):
+~#! rn=Tilly rt=1122838360 rg=d.polar
+~#! tid=1122838360
+So, und nochmal was. Gute Neuigkeiten :-)
+
+Wer durch Typo oder anderes Probleme mit dem Kaestchen und 
+seiner/ihrer aktuellen Aufgabe hat moege sich doch einfach
+zu Lasse Rein begeben und diesem das Kaestchen zeigen.
+
+Er (Lasse) hat mir versichert, den/die Fehler dann zu
+beheben. Hoffentlich macht ers auch >:)
+
+Tilly
+
+-----------------------------------------------------------------------------
+
+
+
+An alle Schueler/-innen von Soeren (Tilly, 24. Aug 2005, 13:46:43):
+Der Lehrmeister Soeren Moerken hat mir aufgetragen Euch mitzuteilen das
+seine Arbeit an einer neuen Generation von Speermeister-Speeren vom 
+Erfolg gekroent sei. Durch eine neuartige Ausbalancierung sei es nun 
+wohl auch moeglich ihn einhaendig zu zuecken.
+
+Nunja, wenn er meint das huelfe Euch weiter :)
+
+Tilly
+
+-----------------------------------------------------------------------------
+
+
+
+Re: An alle Schueler/-innen von Soeren (Darkwing, 24. Aug 2005, 14:48:08):
+~#! rn=Tilly rt=1124884003 rg=d.polar
+~#! tid=1124884003
+Wenn noch eine Blasrohtoption und ein paar Knoepfe fuer verschiedene
+Schadensarten drin waehren ... dann wird es auch nichts helfen. Das einzig
+wahre SMS ist ein Schwert :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Endlich! (Tilly, 11. Nov 2005, 02:32:58):
+Das mag ein mancher von Euch sagen, wenn er/sie/es erfaehrt (letzteres gilt
+fuer Zwerge), das es nun endlich die Belohnung fuer die ParaPost-Quest gibt.
+Nachdem ich mich mehrere Jahre davor gedrueckt habe ... nunja, geht hin - 
+holts Euch :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Noch so einer... (Humni, 12. Nov 2005, 09:45:29):
+Ein gewisser Mensch, der einigen Icewars-Spielern bekannt sein sollte, steht
+im Polar herum. Eigentlich ist er fuer die Werwoelfe gut. Schadet also nichts,
+wenn ihr den jetzt schonmal besuchen geht.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Noch einer! (Humni, 21. Dez 2005, 18:15:01):
+So. Es tut sich was im Polar. Lukand kennt sich ein wenig aus, wenn man ihn
+nach Zukling fragt.
+
+Ja. Da stupst was. Fuer mich. Wenn ihr sterbt... wuahahahaha! (Naja, gut, so
+schlimm isses nicht, wenn man aufpasst).
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Knueppel (Humni, 25. Feb 2006, 01:53:45):
+Ein gewisser Knueppel Bendeidigschen Ursprungs mag nun nicht mehr die volle
+Durchschlagskraft haben. Schlagt bitte nicht den RM Polar, ich war nur
+ausfuehrendes Organ, schlagt die Balance. Argl, Mist..
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Persoenlicher Frust... (Humni,  2. Mar 2006, 20:37:54):
+... fuehrt manchmal dazu, dass man ihn darin abbaut, dass man bescheuerte NPCs
+schreibt. Ein paar sehr betrunkene Leute im Polar haben jemand neues
+dabeistehen. Keine Angst, er greift nicht mit im Team an, haut ihn einfach um.
+Danke.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Poalrhuette... (Humni, 18. Jun 2006, 22:56:18):
+Huhu,
+
+viel zu spaet hab ich diesmal angefangen, sorry, aber die ersten 3 Spiele
+stehen nun in der Polarhuette. Fehler beim Eintragen koennen passieren, bitte
+melden. Ihr koennt nun auf die Spiele morgen setzen, ich bau gleich evtl. noch
+mehr ein, spaetestens jedenfalls morgen ;-)
+
+Viel Spass und viel Erfolg beim Wetten!
+
+Humni
+PS: Wer sie noch nicht kennt, darf sich auf dem Polarweg noerdlich des
+Amundsen und Scott ein wenig umsehen. Ist nicht schwer zu finden ;-)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Tief im Norden (Humni, 29. Jun 2006, 10:48:50):
+Kalt war es, als Rachekralle sich aufmachte. Das "Boese". Ein seltsames
+Konzept, das fand er zumindest. Wie auch immer, seltsam war das schon. Die
+Duesternis, die sich hier ueber die Landschaft gesenkt hatte, diese Kaelte.
+Und diese Wachen, Erenc und Iwein.
+
+Er hatte einen Weg gefunden, sie zu umgehen, und war in die dahinterliegende
+Festung eingedrungen. Schwarze, duestere und dicke Waende umgaben ihn, und
+schon bald hatte er sich beinahe verlaufen. Das lag aber nicht an den Waenden,
+oder an den Gaengen, nein, es lag an den finsteren Gestalten, die ihn
+verfolgten...
+
+Polz, der grosse Hobbit, war hinter ihm her, und auch Beemepopwerda wollte ihn
+kriegen.
+
+Niemand hat seither etwas von Rachekralle gehoert.
+
+Viel Spass.
+
+Ein unbekannter Reisender
+
+-----------------------------------------------------------------------------
+
+
+
+Noch ein paar Hinweise (Humni, 29. Jun 2006, 10:51:38):
+Also:
+
+1. Das ist nur der Anfang. Ja, es wird an einer Stelle weitergehen, ja, was
+dahinterliegt ist zum Grossteil fertig, aber noch nicht ganz.
+2. Ich war das keineswegs alleine. Magdalena hat einen Grossteil davon
+geschrieben. Ja, sie weiss, dass ich das weiterfuehre. Nein, sie hat nix
+dagegen.
+3. Ich warte jetzt erstmal ab, wie ihr da zurechtkommt und passe dann die
+inneren Bereiche noch an ;-) (hehehe...)
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Neue Wette in Humnis Wettbuero (Zesstra, 18. Nov 2006, 21:18:18):
+Huhu,
+
+ich freue mich, verkuenden zu duerfen, dass das Wettbuero im Polar eine neue
+Wette bekommen hat, die man spielen kann. Ich bin mal gespannt, wie gut ihr
+dabei sein werdet. ;-)
+
+Vielen Dank an Humni, der meiner Wettidee Platz in seinem Wettbuero geben hat!
+:-)
+
+Viele Spass wuenscht euch
+Zesstra
+
+P.S. Ich hab die Wette getestet, ich hoffe auch, dass alles in Ordnung ist und
+keine groesseren Probleme auftauchen. Falls doch, sagt bitte Bescheid, kann ja
+sein, dass ich was uebersehen hab.
+
+-----------------------------------------------------------------------------
+
+
+
+Probleme in der Tundra? (Humni, 11. Feb 2007, 21:36:35):
+Huhu,
+
+es kann passieren, das es in der Tundra Probleme gibt. Ich habe noch nicht
+ganz heraus, wieso.
+
+Ich habe jetzt in dem mir vorliegenden Fall eine Meldung eingebaut, die den
+Spieler ins void (jenseits der Welt) bewegt - von da kommt ihr mit "Welt"
+wieder zurueck. Der Fall war fuer mich leider nicht reproduzierbar. Ich bitte
+darum, wenn der Fehler auftritt, sich bei mir zu melden - wichtig ist fuer
+mich, welcher Raum der letzte war, in dem ihr dann gestanden habt oder was
+genau passiert ist.
+
+Danke fuer die Aufmerksamkeit,
+Humni
+PS: Das ganze steht auch in einer Meldung, ich wollte hier nur verkuenden,
+dass das ein neues und kein uraltes Problem ist ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+Grafik entschaerft (Ennox, 27. Apr 2007, 23:19:23):
+Im Weihnachtsmarkt und Ratte debuggt.
+
+Ennox, Grafik--
+
+-----------------------------------------------------------------------------
+
+
+
+Geister in der Festung... (Humni,  3. Dez 2007, 19:19:43):
+Huhu,
+
+nein. Geister sollten nie in die Festung der Daemmerung reinkommen. Dass das
+trotzdem geklappt hat, war ein bug, kein Feature, und geht nun auch nicht
+mehr.
+
+So, bitte mal ein wenig jammern, damit ich merke, dass es Leute gibt, die das
+ueberhaupt bemerken...
+
+Humni, schwarz, boese, fies.
+
+-----------------------------------------------------------------------------
+
+
+
+Extralook der Para-Post-Quest (Zesstra, 14. Dez 2007, 21:58:44):
+Huhu,
+
+ich hab den Extralook der Parapostquest auf den neuen Mechanismus umgebaut,
+der kein unsichtbares Objekt im Spielerinventar mehr braucht. Damit sollten
+betroffene Spieler wieder einen Platz mehr frei haben. ;-)
+
+Zesstra
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Extralook der Para-Post-Quest (Vanir, 14. Dez 2007, 22:16:01):
+~#! rn=Zesstra rt=1197665924 rg=d.polar
+~#! tid=1197665924
+danke.
+V.
+
+-----------------------------------------------------------------------------
+
+
+
+Wettbuero! (Humni,  7. Jun 2008, 15:35:22):
+Juchhu!
+
+Ja, so gerade eben noch rechtzeitig ;-) gilt:
+
+Das Wettbuero im Polar ist wieder eroeffnet! Die ersten beiden Spiele fuer
+heute abend stehen schon drin, die restliche Vorrunde werde ich bald
+eintragen, dann koennt ihr schonmal auf die Spiele setzen. 
+
+Viel Erfolg!
+
+Humni
+PS: Wer nicht weiss wo die Wetthuette ist sollte am einfachsten rumfragen. Sie
+ist nicht weit weg vom Polarweg.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Wettbuero! (Humni, 10. Jun 2008, 13:08:44):
+~#! rn=Humni rt=1212845722 rg=d.polar
+~#! tid=1212845722
+So, es gibt einen kleinen Bug: Auf Spanien - Russland kann nur setzen, wer das
+nicht schon bei der letzten EM/WM-begegnung getan hat... ja, schlau
+programmiert von mir *hmpf*
+
+Ich kuemmer mich bald drum, hab gerade leider Jobstress.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Wettbuero! (Humni, 11. Jun 2008, 08:45:06):
+~#! rn=Humni rt=1213096124 rg=d.polar
+~#! tid=1212845722
+So. Vermeidungstaktik ist, dass ich einige der Nationen nun absichtlich falsch
+schreibe. Hoffe, das nimmt mir niemand uebel - bei der naechsten Veranstaltung
+(WM 2010) wird der Bug gefixt, versprochen.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Wettbuero! (Boing, 11. Jun 2008, 09:31:34):
+~#! rn=Humni rt=1213166706 rg=d.polar
+~#! tid=1212845722
+Dir ist bewusst dass im Halbfinale zwei Vorrundengegner erneut aufeinander
+treffen koennen?
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Wettbuero! (Croft, 11. Jun 2008, 09:39:07):
+~#! rn=Boing rt=1213169494 rg=d.polar
+~#! tid=1212845722
+Das laesst sich mit hinreichend vielen Tippfehlern kompensieren.
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Wettbuero! (Orktoeter, 11. Jun 2008, 19:48:43):
+~#! rn=Boing rt=1213169494 rg=d.polar
+~#! tid=1212845722
+Bist du dir da sicher? Es kommen aus jeder Gruppe 2 Teams weiter und die setzt
+man ueblicherweise einmal in die obere und einmal in die unter Haelfte, damit
+koennen sie aber erst im Finale wieder aufeinandertreffen.
+
+OrkT
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Wettbuero! (Croft, 12. Jun 2008, 09:14:18):
+~#! rn=Orktoeter rt=1213206523 rg=d.polar
+~#! tid=1212845722
+Schau dir den Tunierplan genauer an:
+http://en.euro2008.uefa.com/tournament/matches/index.html
+
+Croft
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Wettbuero! (Orktoeter, 12. Jun 2008, 23:30:40):
+~#! rn=Croft rt=1213254858 rg=d.polar
+~#! tid=1212845722
+Ich sehs mit staunen. Ich kenne es nur so, dass Gruppenerste und Gruppenzweite
+in die ubere und untere Haelfte des KO-Systems kommen und damit erst im
+Endspiel wieder aufeinander treffen koennen (macht in meinen Augen auch mehr
+Sinn).
+
+OrkT.
+
+-----------------------------------------------------------------------------
+
+
+
+ZT (Humni,  9. Jan 2009, 18:09:09):
+Ein ZT-Spruch (es geht um 4 Kraeuter bzw. eine Hexe) funktioniert temporaer
+nicht. Da er vermutlich heute nacht schon wieder funktionieren wird, werdet
+ihr sicher damit leben koennen.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Re: ZT (Zesstra,  9. Jan 2009, 23:59:09):
+~#! rn=Humni rt=1231520949 rg=d.polar
+~#! tid=1231520949
+Der ZT sollte jetzt wieder erreichbar sein.
+
+Zesstra
+
+-----------------------------------------------------------------------------
+
+
+
+Vor gar nicht allzu langer Zeit... (Arathorn, 31. Jan 2010, 01:02:28):
+... in einem gar nicht so unbekannten Land, dem Polargebiet, wuetete der
+grosse, schreckliche, boese Drache Humni und riss eine gewisse Liste von
+der Wand in der Kneipe der Eiselfenfestung. Bisher gingen wir davon aus, 
+dass er sie mit seinem schrecklichen, feurigen Drachenodem abgefackelt habe,
+dem war jedoch nicht so. Er hatte sie "lediglich" gefressen und irgendwann
+einfach vergessen, dass er das getan hatte. Ein Blick in seinen Magen
+foerderte die Liste jetzt wieder zu Tage.
+
+Ich habe sie vorhin "mal eben" wieder rangeklebt.
+
+Gruss, Arathorn.
+
+-----------------------------------------------------------------------------
+
+
+
+Der Polar-Button (Arathorn, 31. Jan 2010, 01:06:15):
+Hallo zusammen,
+
+beim Polar-Button ist neulich eine kleinere Reparatur faellig geworden,
+die es erforderlich gemacht hat, Eure bereits existierenen Buttons
+durch neue zu ersetzen. Falls Ihr sie also getragen hattet, bitte nicht
+drueber wundern, wenn das jetzt nicht mehr so ist. 
+
+Gruss, Arathorn.
+
+P.S.: Bei der Gelegenheit habe ich die Buttons auch gleich frisch poliert,
+      ich hoffe, das gleicht die Unannehmlichkeit des Wieder-Anziehens
+      zumindest ein wenig aus. ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+Briefe in Parapostquest (Ark, 10. Feb 2010, 21:24:19):
+Ich habe die Briefe gerade dergestalt geaendert, dass nur der austragende
+Skla^H^H^H^HPostmeister sie nicht mehr weglegen kann. Man sollte sie nun also
+auch mit sonstwem bergen und ablegen koennen. Falls nicht, bitte um Meldung.
+Dies gilt nur fuer jetzt neu ausgegebene Briefe, nicht fuer solche, die ihr
+schon mit herumtragt.
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Sehertore (Gummiportale) auf Temong (Humni,  1. Jun 2010, 21:59:15):
+Huhu,
+
+die Seherportale (Gummiportale) auf Temong fuehrten zu unerwuenschtem
+Verhalten und schrecklichen Bugs und gruseligen Missverstaendnissen und hatten
+grauenhafte und schreckliche Folgen, die abzuschaetzen die Welt ins Chaos
+gefuehrt haette.
+
+Nachdem ich mich daran ergoetzt hatte, hat mich Gabylon nun doch dazu bringen
+koennen, die Portale wegzuverlegen. Lobt und preiset ihn, sonst haette ich das
+naemlich nie getan, und die Welt waere ein grauenhafterer Ort! Was ja mein
+Ziel ist.
+
+Die Portale, die vorher auf Temong waren, habe ich erstmal nur mit einem
+Fluegelstoss zur Anlegestelle gepustet. Wenn die nun woanders hinsollen, kann
+man in diesem Fall mit einem EM seiner Wahl darueber reden - ihr wolltet die
+ja auf Temong, nur da koennen sie nicht mehr hin.
+
+Ach ja, ueber den letzten Punkt wird auch nicht diskutiert. ;-)
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Parapostquest (Humni, 11. Aug 2010, 00:33:58):
+Huhu,
+
+eine kleine technische Umstellung (vermute ich) machte einen Workaround bei
+der Parapostquest noetig. Nicht ueber Flaschen wundern.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Ein Schwert... (Gabylon, 27. Feb 2011, 00:25:54):
+... darf nun oefter als bisher geholt werden.
+Dank an die Balance fuer die schnelle Bearbeitung.
+
+gab
+
+-----------------------------------------------------------------------------
+
+
+
+Na super! (Oham, 27. Aug 2011, 11:52:11):
+Mir reichts langsam.
+
+Humni, Du bist ein Spinner.
+Was meinst Du mit "neu" und "sollte man sich angucken"? Wer soll das machen?
+Ein Kaempfer? Alleine wohl kaum. Mit "drei anderen dabei"? Was soll das
+bringen?
+Die Viecher sind zu heftig, man kommt ja so schon kaum da durch. Du spinnst
+einfach.
+
+Ich finde, Du solltest das einfach bleibenlassen. Viecher bauen kannst du
+nicht, die sind viel zu hart. 
+
+Hoer einfach auf, solche Gebiete wie die neuen Teile der Festung
+anzuschliessen. Vielleicht redet dann ja endlich wieder wer mit Dir.
+
+In der Festung der Daemmerung siehst Du mich bestimmt so schnell nicht, meinen
+EK kriegst du da nicht. Das sei Dir hiermit versprochen.
+
+Oham
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Na super! (Humni, 27. Aug 2011, 11:54:07):
+~#! rn=Oham rt=1314438731 rg=d.polar
+~#! tid=1314438731
+Das Miniforscher wie Du keine Ahnung haben, und Du immer noch kein General
+bist, sind zwei Fakten.
+
+Und: Wenn Du Dich davor nur mal ein wenig - wirklich nur ein wenig! -
+umschaust, findest Du vielleicht was, was Dir elendem Jammerlappen
+weiterhilft.
+
+Volldeppen.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Auferstehung (Amaryllis,  5. Nov 2011, 02:44:58):
+Hi,
+
+ein lange vermisster Chaot ist wieder auferstanden. Nur fuer die, die ihn
+suchten...
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Es lebe die Tundra! (Caldra, 22. Dez 2011, 16:12:41):
+Die bei Magiern sehr ungeliebte Tundra hat das Zeitliche gesegnet :-)
+Es lebe die neue Tundra!!!!
+
+Fuer Spieler hat das folgende (hoffentlich als positiv empfundene)
+Auswirkungen:
+- Klamotten werden nicht mehr ploetzlich einfach so zerstoert
+  (also erst, wenn man laenger nicht mehr an dieser Stelle gewesen ist)
+- jetzt koennen mehrere Spieler unabhaengig in der Tundra rumlaufen
+
+Folgende Aenderungen koennten als nicht so positiv empfunden werden:
+- In der Tundra rumzurennen, geht jetzt merklich auf die Kondition
+- Ein maechtiges Wesen hat sich in der Tundra ein zu Hause eingerichtet,
+  das zum Ableben von Spielern fuehren wird :-)
+  
+Im unwahrscheinlichen Fall von Problemen bitte Kontakt mir mir aufnehmen!
+
+Caldra
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Es lebe die Tundra! (Humni, 22. Dez 2011, 19:53:36):
+~#! rn=Caldra rt=1324566761 rg=d.polar
+~#! tid=1324566761
+:jubelt!
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Ein Magiewesenzahn (Humni, 11. Jan 2012, 12:39:22):
+Huhu ihr,
+
+ich habe heute ein wenig auf dem Magiewesenzahn herumgekaut und festgestellt,
+dass er meinen Drachenzaehnen vom Haertegrad her Konkurrenz machte.
+
+Das geht nicht, da meine Zaehne grundsaetzlich die spitzesten, schlimmsten und
+grausamsten sind (per Definition).
+
+Darum ist der Magiewesenzahn nun nicht mehr so scharf, spitz, schorfkantig und
+hauptwuselig, wie er mal war, sondern ein wenig faseriger, hornig und
+holzsplitterig.
+
+Lebt damit. Haha.
+
+Humni
+(fieser, abwertender Drache)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Ein Magiewesenzahn (Jimdigriz, 12. Jan 2012, 21:44:29):
+~#! rn=Humni rt=1326281962 rg=d.polar
+~#! tid=1326281962
+Menno, den agiewesenzahn schon wieder abwerten. *noelnoelnoel*
+
+-----------------------------------------------------------------------------
+
+
+
+Zwergenangriff (Amaryllis, 20. Mai 2012, 01:02:35):
+Hi,
+
+der Zwergenangriff sollte nun auch wieder normal spielpar sein.
+
+Weitere Fehlermeldungen gerne an mich.
+
+Gruss,
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Zwergenangriff (Ark, 21. Mai 2012, 00:10:50):
+~#! rn=Amaryllis rt=1337468555 rg=d.polar
+~#! tid=1337468555
+Schaffst Du es jetzt endlich ueber das 0. Mal hinaus? *scnr* :)
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Zwergenangriff (Amaryllis, 21. Mai 2012, 01:25:19):
+~#! rn=Ark rt=1337551850 rg=d.polar
+~#! tid=1337468555
+Noe, das liegt immer noch im Argen ;)
+
+AMa*
+
+-----------------------------------------------------------------------------
+
+
+
+Eilmeldungen zu spaeter Stunde (Caldra, 10. Okt 2012, 21:33:08):
+Ein stinksaurer Henker hat jetzt nach Jahren der stillen Wut ob
+der sinnlosen Entwendung seinen Richtblock ein fuer alle Mal
+festgeschraubt.
+Wir wuenschen ihm weiteres Gelingen bei der Ausuebung seines 
+Handwerks.
+
+Nachdem die Tundra vor einiger Zeit der Welt ihren wahren
+Charakter offenbarte, duerften jetzt auch junge Spieler nicht
+mehr ganz so verzweifelt nach einem Ausweg suchen muessen.
+Vielen Dank an Orangebeard!
+
+Wer beim boesen Polarhasen versagt, muss nun neben
+der Schmach nicht auch noch den endgueltigen Verlust seiner
+Ausruestung verkraften. Ihm sei eine zweite Chance gewaehrt.
+
+Mit diesem Kurznachrichten verabschieden wir uns und
+wuenschen gute Nacht!
+
+Caldra
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Eilmeldungen zu spaeter Stunde (Vanir, 18. Okt 2012, 15:42:27):
+~#! rn=Caldra rt=1349897588 rg=d.polar
+~#! tid=1349897588
+Also einen Teil der Aenderungen finde ich ja nachvollziehbar. Aber wieso
+sollte ein Richblock am Boden festgeschraubt werden? Und so ein Richblock ist
+doch ein wundervoller uns nuetzlicher Gegenstand. Ich habe regelmaessig eine
+tolle Verwendung dafuer gehabt. Ich weiss auch nicht wodurch ich den ersetzen
+koennte. Ich bin dafuer, dass man dann wenigstens irgendwo einen
+Schraubenzieher findet um zur Demontage schreiten zu koennen. 
+Gruss V.
+
+-----------------------------------------------------------------------------
+
+
+
+Verlorenes Herz... (Humni, 13. Jan 2013, 21:00:22):
+sollte nun an ein, zwei Stellen etwas entschaerft sein. Probleme an mich. Und
+toedlich kann so manches immer noch sein.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Roger, die singende Ziege. (Rhovan, 19. Apr 2013, 22:14:50):
+Auf dem kleinen Bauernhof nahe Umjak hat der Sohn des dort lebenden Bauern ein
+grosses Problem in Form einer singenden Ziege.
+Er wartet sehnsuechtig auf mutige Abenteurer, die nicht nur ihn, seinen Vater
+und die dort lebenden Schafe, sondern vermutlich auch ganz Umjak vor dem
+schlimmen Schicksal eines Hoersturzes bewahren koennen.
+Schaut doch mal bei ihm vorbei!
+
+Gruss 
+Rhovan
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Roger, die singende Ziege. (Huraxprax, 15. Mai 2013, 22:14:43):
+~#! rn=Rhovan rt=1366402490 rg=d.polar
+~#! tid=1366402490
+Ich hoffe doch sehr, dass diese singende Ziege ein ordentlicher chaotischer
+und satanischer Ziegendaemon ist, irgendwoher muessen die im Torfmoor ja
+kommen.
+Und wenn nicht, muss die wenigstens stupsen und einen leckeren Ziegenbraten
+droppen.
+
+hurax
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Roger, die singende Ziege. (Ark, 15. Mai 2013, 22:21:34):
+~#! rn=Huraxprax rt=1368648883 rg=d.polar
+~#! tid=1366402490
+1 out of 3 ... well, there are worse odds :-)
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Spruehdose (Humni, 28. Mai 2013, 23:06:30):
+Eine gewisse Spruehdose ist nun ... nicht mehr ... ganz so gut und kein
+Schwert mehr.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Ein Faehnchen... (Humni,  2. Jun 2013, 01:56:35):
+aus der Eismine ist nun in gewissen Abstaenden auch waehrend einer Uptime
+mehrfah zu holen. Aber nur so alle Vierteljahre. Und: Hofft nicht auf
+"durchwechseln". Nein. Keine Chance.
+
+Ein Drache
+
+-----------------------------------------------------------------------------
+
+
+
+T'emong 2.0 (Gabylon,  7. Jul 2013, 01:22:54):
+Hi,
+
+
+puenktlich zum 10-jaehrigen Jubilaeum sind die Renovierungsarbeiten um T'emong
+nun abgeschlossen.
+Diese betreffen ausschliesslich Dinge technischer Art (bisher sporadisch
+auftretende Inkonsistenzen beseitigt, Codeoptimierung, etc.).
+Sollten also Abweichungen vom bekannten Verhalten festzustellen sein, so ist
+dies nicht beabsichtigt und darf gemeldet werden.
+
+Froehliches Sterben wuenscht weiterhin
+
+
+gab
+
+-----------------------------------------------------------------------------
+
+
+
+It's magic! (Ark, 16. Sep 2013, 22:53:03):
+And the wizard spoke up, and he spoke truly yet kind:
+'Lo, behold, look at the tiger of old and despair. He looks so ugly, has a
+club with fine hair. His tail looks so clumsy, let's make it lean.'
+With just one word and a 'PUFF' the tail is now thin. No longer ridiculous, no
+longer a club, the tail is a whip, and the tiger looked up. He licked the
+wizard's hand, thankful and proud. The wizard turned around, waits patiently
+for comments, applause from the crowd.
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: It's magic! (Gloinson, 16. Sep 2013, 22:58:59):
+~#! rn=Ark rt=1379364783 rg=d.polar
+~#! tid=1379364783
+... mit Peitschenknall?
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: It's magic! (Ark, 16. Sep 2013, 23:01:07):
+~#! rn=Gloinson rt=1379365139 rg=d.polar
+~#! tid=1379364783
+Du hoerst es leise puscheln.
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Neuigkeiten aus der Eiswueste (Humni,  8. Jan 2014, 19:28:21):
+Liebe Mitmudder,
+
+warum auch immer da was passiert ist... aber in der Eiswueste lauert jetzt
+etwas im Schnee, das da seit Ewigkeiten haette lauern sollen. Glaube ich
+zumindest.
+
+Dankt nicht mir. Dankt Arathorn. Und Kilar. Und Slax.
+Und Brumni.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Ein uralter Vampir ... (Bugfix, 24. Jan 2014, 11:09:52):
+... sollte jetzt nichtmehr imun gegen alle Arten von Zaubern sein.
+
+Bei Problemen bitte an mich wenden.
+
+BF
+
+-----------------------------------------------------------------------------
+
+
+
+Ein Daemon aus einem Waeldchen ... (Bugfix, 21. Feb 2014, 09:24:27):
+... wurde ein bisschen gefoltert und belohnt seine Helfer jetzt etwas mehr.
+
+BF
+
+-----------------------------------------------------------------------------
+
+
+
+Ein kleines rotes Feuerwehrauto (Bugfix, 22. Feb 2014, 19:56:30):
+Moin,
+
+besagtes Spassobjekt hat soeben eine tiefgreifende Ueberarbeitung erfahren.
+Leider bietet es einen zu grossen Funktionsumfang um vollstaendig sicher zu
+sein, dass dabei nichts kaputt gegangen ist. Ich rechne zwar nicht damit, aber
+bei eventuellem unerwarteten Verhalten bitte ich um Rueckmeldung.
+
+BF
+
+-----------------------------------------------------------------------------
+
+
+
+Schlittenrennen (Tijo, 16. Mar 2014, 18:35:16):
+Hi in die Runde!
+Jedem duerfte per Hinweisschild bekannt sein, dass es im MG ja eine Rodelbahn
+gibt. Ich selber hab mich lange nicht dafuer interessiert, aber irgendwann hab
+ich sie aufgesucht.
+Ich habs nicht bereut. Es ist ein witziger Zeitvertreib, bei dem man hohe
+reaktionsschnelligkeit braucht und eine menge Spass hat. Nach einigen Rennen
+gegen Moonshine und spaeter gegen saray viel mir allerdings auf: Mit 3-6
+Mitfahrern waere das ganze viel cooler. Wenn man ins Ziel kommt, braucht der
+nachfolgende naemlich oft ewig, bis er da ist --- nicht gut.
+Daher wuerde es mich freuen, wenn sich samstags oder sonntags mit mir einige
+bei der Rodelbahn treffen wuerden.
+Die Rodelbahn ist ein richtiges Schlachtfeld --- man versucht den gegnern mit
+Feuerbaellen, Steinen, Felsen, Lag und aehnlichem zu bewerfen, um seinen
+Schlitten zu beschaedigen/verlangsamen. gleichzeitig muss man auch noch lenken
+--- das ist schwierig.
+Die Ausruestung und Waffe kann man daheim im Zimmer/Haus lassen - die braucht
+man nicht. Man sollte nur ein Grundkapital von 5 -10.000 muenzen mitbringen...
+Wenn man gewinnt, erhaelt man 800 muenzen - kein Reichtum, aber ausreichend,
+um die Reperatur- und Anmeldekosten ohne Verlust zu decken.
+LG Tijo
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Traurige Nachricht: Der Spieler Miro hat uns uns fuer immer verlassen... (Tijo, 16. Mar 2014, 18:41:04):
+~#! rn=Zook rt=1394179884 rg=bekanntmachungen
+~#! tid=1394179884
+Achso, mich wies Saray gerade darauf hin, dass es auch mehr als 800 muenzen
+beim Sieg sein koennen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Traurige Nachricht: Der Spieler Miro hat uns uns fuer immer verlassen... (Tijo, 17. Mar 2014, 15:04:15):
+~#! rn=Tijo rt=1394991664 rg=d.polar
+~#! tid=1394179884
+Huch, wieso steht das hier in polar? offenbar bezug vergessen...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Schlittenrennen (Zook, 18. Mar 2014, 12:01:58):
+~#! rn=Tijo rt=1394991316 rg=d.polar
+~#! tid=1394991316
+Ui, die Rodelbahn ist mir ja wieder voellig aus dem Sinn gerutscht... 
+
+Danke fuers Erinnern.
+
+VG,
+Zook.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Schlittenrennen (Tijo, 20. Mar 2014, 19:07:23):
+~#! rn=Zook rt=1395140518 rg=d.polar
+~#! tid=1394991316
+*g* gern geschehn ;-)
+LG tijo
+
+-----------------------------------------------------------------------------
+
+
+
+Ich, Pubert, der tolle Chaot ... (Ark, 21. Apr 2014, 23:48:58):
+... bitte um Eure Aufmerksamkeit. Da gibt es jemanden, der Eurer Hilfe Bedarf.
+Auch wenn wir den Klerus und seine Diener, Guenstlinge und Buecklinge zutiefst
+verachten, wuerden wir uns ... graem^H^H^H^H^Hfreuen, sollten sich ...
+Verbuen^H^H^H^H^H^HHelfer (und aeh dings ... Helferinnen *Bloedsinn*) finden,
+um uns in einer kleinen "Situation" (die das Chaos auch so loesen koennte,
+aber gerade nicht will) unter die Arme zu greifen (das Wort "Hilfe" negieren
+wir hiermit auf das Heftigste!!11El!f!!1!666).
+So, und jetzt kommt endlich bei, sonst ueberziehen wir Eure "Zivilisation" mit
+den Daemonen der Hoelle. Brief und Siegel darauf. Und Exkremente! Verdammt
+noch eins.
+
+
+              *** ARK * the * Magnificent ***
+
+
+-----------------------------------------------------------------------------
+
+
+
+Informationen.... (Humni, 28. Dez 2014, 19:49:23):
+Liebe Mudgemeinde,
+
+ich wage es nun erst schon einmal zu verkuenden: Es gibt einen neuen
+Polarbewohner.
+
+Er hat keinen festen Ort, er beglueckt mehrere davon mit seiner Anwesenheit.
+Und er weiss Dinge.
+
+Welche, muesst Ihr selbst herausfinden.
+
+Ihr koennt ihn auch toeten. Aber dann sagt er Euch nix, da er dann ja tot ist.
+
+Macht, was ihr wollt.
+
+Bugmeldungen und Co an mich, bin hoffentlich auch noch eine Weile hier.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Tiger und ihre Schwaenze... (Humni,  6. Jan 2015, 00:08:31):
+sind fuer so manchen ein Grund fuer ein Aergernis.
+
+Da so manch ein Kaempfer sich ueber eine Umwidmung einer gewissen hinteren
+fellbeschichteten Ausweitung eines Tierkoerpers geaergert hat, sei nun
+verkuendet:
+
+Die Umwidmung bleibt bestehen.
+Die Kaempfer sollten aber wieder in etwa so gut damit klarkommen wie vorher,
+zumindest zu dem eigentlichen Zwecke.
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
+Pegasus (Arathorn,  8. Mar 2015, 23:36:00):
+Hallo zusammen,
+
+ich habe heute im Laufe des Tages in Abstimmung mit den Kollegen Erzmagiern
+eine Aenderung in die Tat umgesetzt, die schon laenger geplant war:
+Pegasus kann jetzt von allen Spielern genutzt werden, um einen Rundflug
+ueber das Morgengrauen zu unternehmen und womoeglich weit entfernte und
+bislang unbekannte Orte zu entdecken!
+
+Dazu wurden die Flugpreise an die Geldboerse der zu erwartenden Reisenden
+angepasst, so dass es fuer jeden erschwinglich sein duerfte, eine solche
+Reise zu unternehmen. Zudem wurde die Flugroute des Rundfluges etwas 
+angepasst, um dem geneigten Mitreisenden attraktivere Reiseziele zu bieten. 
+
+Es ist jedoch weiterhin moeglich, dass ein Seher einen anderen Reisenden
+einlaedt, indem er dessen Flugpreis entrichtet. Allerdings konnten wir
+Pegasus nicht ueberreden, mehr als zwei Reisende gleichzeitig zu tragen.
+Er ist zwar ein grosses, starkes Tier, aber dennoch lehnte er unser
+Ansinnen mit dem Hinweis ab, er koenne zwar sehr wohl drei oder gar mehr
+Dunkelelfen oder Goblins auf einmal tragen, aber wir sollten doch
+bitteschoen bedenken, dass es auch Zwerge und Hobbits gaebe, und drei von
+*denen*, also das waere undenkbar.
+
+Wie dem auch sei, jedenfalls wuenschen wir viel Vergnuegen bei euren 
+Rundfluegen um die Welt.
+
+Gruss, Arathorn.
+
+-----------------------------------------------------------------------------
+
+
+
+Matrixkristall (Zesstra, 29. Mar 2015, 11:39:58):
+Ich habe den Mechanismus des Matrixkristalls umgebaut, das war bisher ein
+unschoener Hack.
+Wenn es da Probleme gibt, meldet euch.
+
+Zesstra
+
+-----------------------------------------------------------------------------
+
+
+
+Das TTB... (Amaryllis,  1. Jul 2015, 20:59:01):
+...liest sich jetzt auch (auf einzelnen Wunsch hin) mit Seitenumbruch, wie man
+das von langen Artikeln hier auch gewohnt ist.
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Das TTB... (Tin,  1. Jul 2015, 20:59:24):
+~#! rn=Amaryllis rt=1435777141 rg=d.polar
+~#! tid=1435777141
+Juhuuuuuuuuu
+danke!
+tin
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Das TTB... (Saray,  2. Jul 2015, 19:39:25):
+~#! rn=Tin rt=1435777164 rg=d.polar
+~#! tid=1435777141
+Ach, so einzeln war der gar nicht, ich hatte nur immer vergessen, ne Mail zu
+schreiben.
+Sehr schoen. Danke!
+Saray
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Das TTB... (Amaryllis,  2. Jul 2015, 20:32:38):
+~#! rn=Amaryllis rt=1435777141 rg=d.polar
+~#! tid=1435777141
+Aus aktuellem Anlass mach ich hier mal die Ingrid:
+
+Leider fehlen dem TTB insofern die "magischen Kraefte", als dass es Eure Tode
+nicht "erfaehrt", wenn es in einer Autoloader-Truhe liegt.
+Sprich: Ihr muesst es schon mit rumschleppen ;)
+
+Ama*
+
+-----------------------------------------------------------------------------
+
+
+
+Bavmordas Upgrade (Gabylon, 21. Sep 2015, 10:44:01):
+Bavmorda verliess neulich ihre Feste fuer einige Tage, um sich in Taramis
+endlich mal die passenden Unterstuetzungen fuer ihre Ausruestung anzaubern
+zu lassen. Einige bemerkenswerte Ergebnisse sind dabei herausgekommen.
+
+Vielen Dank an Elendil fuer die Inspiration und an Chagall fuer die schnelle
+und problemlose Umsetzung!
+
+gab
+
+-----------------------------------------------------------------------------
+
+
+
+Jackomo Carvanossa (Humni, 21. Dez 2015, 17:24:34):
+Hallo ihr,
+
+besagter NPC macht in letzter Zeit komische Dinge. Wenn ich ihn aber neu
+starte, tut er das erst einmal nicht. Sollte er das wieder tun, bitte eine
+Mail an mich, da er das gerade nicht tut, ist das schwierig zu reproduzieren.
+Danke sehr!
+
+Humni
+
+-----------------------------------------------------------------------------
+
+
+
