Viel Spass! (Padreic, 28. Jul 2003, 22:57:35):
Nun puenktlich zur Party ist es mit der Gilde ja doch noch was geworden. Ich
will auch lieber gar nicht mehr dran denken wieviele Jahre das nun waren,
sondern einfach Humni ein ganz grosses DANKE sagen, das er sich da einfach
durchgekaempft hat und sie nun angeschlossen ist.
Nachdem nun mit dem Gildenanschluss alles fertig ist, werde ich mich auch
relativ bald wieder in meinen Ruhestand stuerzen. Tja und da ein Rentner
allein keine Gilde fuehren kann, darf ich mit Euch zusammen nun einen neuen
Gildenmagier begruessen; Amaryllis.
In der ersten Zeit werde ich mich sicher noch mit ihm zusammen um das ein oder
andere aeh Feature kuemmern, aber so nach und nach werdet ihr feststellen das
mails an mich immer fruchtloser werden werden - also mailt Eure mails im
Zweifel immer an beide :o)

Ansonsten nochmal viel Spass

Pad*

-----------------------------------------------------------------------------



Geisterschloss (Padreic, 30. Jul 2003, 16:55:28):
Das Problem das Delfen Geisterschloss aufgrund Dauerblindheit nicht spielen
konnten ist behoben. Spielen koennt ihr die Quest jedoch erst nach
reboot/ende/renew.

Pad*

-----------------------------------------------------------------------------



Tod in der Sonne (Padreic, 12. Aug 2003, 17:22:56):
Bitte keiner mehr absetzen er wolle eine andere Todesmeldung beim Tod durch
zuviel Sonneneinstrahlung. Erstens haben wir das inzwischen zur Kenntnis
genommen und zweitens ist es bereits eingebaut - wirkt aber erst nach
ende/refresh/reboot. In dem Zusammenhang auch nochmal Danke an Humni dafuer.

Pad*

-----------------------------------------------------------------------------



Raeuber-Haus-Gebuesch (Twilight, 23. Aug 2003, 15:36:47):
Im Haus/Gebuesch der Raeuber verbrennt mich die Sonne auch. Sollte aber innen
sein, oder?

Twilight.

-----------------------------------------------------------------------------



Re: Raeuber-Haus-Gebuesch (Troy, 24. Aug 2003, 10:48:30):
~#! rn=Twilight rt=1061645807 rg=gilden.dunkelelfen
~#! tid=1061645807
das sollte doch je nachdem sein, oder? Haus drinnen, Gebuesch/Baum draussen.

Troy

-----------------------------------------------------------------------------



Basta! (Padreic, 28. Aug 2003, 13:06:50):
Um das ein fuer alle mal klarzustellen: Wenn ein NPC (z.B. Nenaisu) etwas sagt
(wie z.B. Gildenfaehigkeiten) dann hoeren das selbstverstaendlich alle im Raum
anwesenden (Dunkelelfen pflegen nicht immer zu fluestern). Wem das zu sehr
scrollt der soll halt woanders idlen.

Pad*

-----------------------------------------------------------------------------



Der Schmied in der Unterwelt... (Humni,  1. Sep 2003, 16:05:25):
Sollte .... (garantieren tue ich das nicht) nun auch Runenschwerter reparieren
koennen, ohne dass die buggen.

Gruesse, Humni
PS: Damit duerften evtl. auch einige schoene Bugs raus sein... hoffe ich
zumindest.

-----------------------------------------------------------------------------



Re: Der Schmied in der Unterwelt... (Humni,  1. Sep 2003, 16:18:34):
~#! rn=Humni rt=1062425125 rg=gilden.dunkelelfen
~#! tid=1062425125
Also ich meine den Schmied in Wilhelmsburg. Nur damit niemand meint ich wuerde
irgendwen anders meinen ;-)

Humni

-----------------------------------------------------------------------------



so.... (Padreic,  8. Sep 2003, 14:25:22):
Nachdem Amaryllis nun aus dem Urlaub zurueck ist, ist es nun an der Zeit mich
wieder in den Ruhestand zu verabschieden. Ich denke die groebsten Probleme
sind nun behoben und ich wuensch Euch noch viel Spass.
Mails von innerhalb des muds werden zwar an mich weitergeleitet, aber bzgl.
Gildenangelegenheiten werde ich nur noch auf Mails von Amaryllis bzw. Humni
reagieren.

Pad*

-----------------------------------------------------------------------------



Nachtsicht (Padreic,  2. Okt 2003, 09:33:23):
Nach einem ende/reboot/renew wird sich Nachtsicht leichter ueber 95% bringen
lassen.

Pad*

-----------------------------------------------------------------------------



Warte-Topliste (Laermchen,  5. Okt 2003, 03:11:53):
Ich haette gerne eine solche bitte. :)

-----------------------------------------------------------------------------



Gilde (Amaryllis, 15. Okt 2003, 19:26:56):
Hi

danke fuer die zahlreichen Mails mit kleineren Bugs und neuen Vorschlaegen.
Leider bin ich z.Zt. voellig unter Strom (morgen z.B. ganztaegig in Bruessel
etc.), sodass das wohl vor naechster Woche nichts wird.

Deshalb bitte nicht boese sein, man kann sichs nicht immer raussuchen -
vielleicht hat ja Padreic temporaer ein bisschen Zeit und Lust :)

Ama"wegen etlicher Nachfragen"ryllis

-----------------------------------------------------------------------------



Temporaeres Kommando "sonnenfehler" (Zook,  5. Nov 2003, 15:27:33):
Hallo,

den Thread in d.wald aufgreifend habe ich ein temporaeres Kommando in die
Rassenshell der Dunkelelfen aufgenommen. Es lautet "sonnenfehler" und fuehrt
dazu, dass der Dateiname des Raumes, in dem man sich befindet, in ein 
Logfile geschrieben wird. 

Bitte nutzt diese Funktion dort, wo Euch Innen-/Aussenraeume oder die
Sonneneintrahlung merkwuerdig vorkommen. Das Logfile werde ich regelmaessig
auswerten und die Raeume zur Pruefung an die Regionsmagier (oder Weisen)
weiterreichen.

Geht natuerlich nur nach ende/Crash/Reboot.

Gruss, Zook.

PS: Fehlermeldungen bitte schnell per Email an mich ;)

-----------------------------------------------------------------------------



Re: Temporaeres Kommando "sonnenfehler" (Zook,  5. Nov 2003, 15:39:38):
~#! rn=Zook rt=1068042453 rg=gilden.dunkelelfen
~#! tid=1068042453
Wer moechte kann dem Befehl nun auch noch einen Kommentar anfuegen, um den
Magier auf etwas hinzuweisen (zB, falls man mal in Raeumen ist, in denen
man keine Kommandos absetzen kann). Wieder nach "ende" blabla verfuegbar, 
Zook.

-----------------------------------------------------------------------------



Uchlaup! (Amaryllis, 19. Dez 2003, 23:44:24):
Hi,

endlich, ein paar Tage frei, damit 2004 nicht allzuviel Resturlaub ueber
bleibt.

Ich bin ab spaetestens 07.01. wieder da, dann hat sich hoffentlich die
derzeitige Lage etwas beruhigt und kann wieder beruhigt am Spellbook drehen :)
bis dahin gehabt Euch wohl. Frohes Fest, guten Rutsch - 

Ama*

-----------------------------------------------------------------------------



Bibliothek (Morgoth, 19. Apr 2004, 13:26:15):
Wegen erneuten und haeufigen Buggens ist die Bib erstmal abgehaengt. Quengelt
Padreic an, dass er es schnell fixt.

M*

-----------------------------------------------------------------------------



Re: Bibliothek (Padreic, 19. Apr 2004, 13:50:19):
~#! rn=Morgoth rt=1082373975 rg=gilden.dunkelelfen
~#! tid=1082373975
Du bist ein Schwachkopp Moggl, da bugt ueberhaupt nichts, aus diesem Grund ist
das ganze auch wieder zu erreichen. Lass in Zukunft bitte die Finger von den
Dunkelelfen und untersteh Dich da Quests oder sonstwas abzuhaengen.
Und das gerade vom Rekordhalter im dauerbuggen...

Pad*

-----------------------------------------------------------------------------



Re: Re: Bibliothek (Morgoth, 19. Apr 2004, 14:02:08):
~#! rn=Padreic rt=1082375419 rg=gilden.dunkelelfen
~#! tid=1082373975
Traeum ich dann die ganzen Meldungen auf -Debug, oder was? Soviel Kraut hab
ich in letzter Zeit nicht geraucht.

M*

-----------------------------------------------------------------------------



Re^3: Bibliothek (Padreic, 19. Apr 2004, 14:07:52):
~#! rn=Morgoth rt=1082376128 rg=gilden.dunkelelfen
~#! tid=1082373975
Tja, dann schaus Dir mal genau an und Du stellst fest, das nicht die Raeume
buggen, sondern die Bugmeldung faelschlicherweise einen Bug meldet wo keiner
ist. Alles weitere kannst Du gerne mit mir in Magierrubriken ausdiskutieren.

Pad*

-----------------------------------------------------------------------------



Re: Re: Bibliothek (Rikus, 19. Apr 2004, 14:14:14):
~#! rn=Padreic rt=1082375419 rg=gilden.dunkelelfen
~#! tid=1082373975
Nur ein Schwachkopp nennt andere Schwachkopp.

Rikus

-----------------------------------------------------------------------------



Re^3: Bibliothek (Darklor, 19. Apr 2004, 15:18:39):
~#! rn=Rikus rt=1082376854 rg=gilden.dunkelelfen
~#! tid=1082373975
Verdammt und es sah gerad danauch noch interessant zu werden... - wenn
wenigstens erwaehnt worden waere was da nun genau buggen soll... ;)

Darklor

-----------------------------------------------------------------------------



Re^4: Bibliothek (Montanus, 19. Apr 2004, 15:22:25):
~#! rn=Darklor rt=1082380719 rg=gilden.dunkelelfen
~#! tid=1082373975
Naja, wenn der fuer arme Spieler unsichtbare Artikel schon damit anfaengt,
dass der buggende Magier sagt "Vanion ist schuld, der hat da was geaendert",
dann zeugt das (a) von schlechtem Stil, (b) von Unflexibilitaet, sich an
Vanions Aenderungen anzupassen, und (c) von ueblestem Unwissen ueber die
Zustaende im Morgengrauen. Denn selbst Anfaenger wissen, dass Dancer schuld
ist. Generell. 

-----------------------------------------------------------------------------



Re^5: Bibliothek (Darklor, 19. Apr 2004, 15:24:09):
~#! rn=Montanus rt=1082380945 rg=gilden.dunkelelfen
~#! tid=1082373975
Zu viele Koeche verderben den Brei - Zu viele Magier den Code? ;)

Darklor

-----------------------------------------------------------------------------



Re^5: Bibliothek (Zarniya, 22. Apr 2004, 12:26:14):
~#! rn=Montanus rt=1082380945 rg=gilden.dunkelelfen
~#! tid=1082373975
genau.. und wer so nen Ton anschlaegt wie Padreic, der wird eigentlich
entmagiert oder zur Loeschung genoetig... frueher... :)

-----------------------------------------------------------------------------



Re^6: Bibliothek (Anatol, 24. Apr 2004, 15:55:54):
~#! rn=Zarniya rt=1082629574 rg=gilden.dunkelelfen
~#! tid=1082373975
Naja, er ist damals entweist worden, Zarniya... Damit hat er
Dich locker getoppt. Baetsch. ;)

Anatol laesst Padreic die Meriten. :)

-----------------------------------------------------------------------------



Typos (Padreic, 14. Jul 2004, 14:47:43):
Nachdem ich das Spellbook gerad eh in den Fingern hatte, hab ich mal die Typos
im Spellbook entfernt die im repfile standen. Erstaunlicherweise waren das
deutlich weniger, als ich so den Eindruck hatte wenn ich manche Diskussion
aufm Kanal verfolgt hab. Also entweder fielen Euch allen immer dieselben auf -
oder ihr habt sie nicht abgesetzt. Also achtet mal bitte drauf in Zukunft.

Pad*

-----------------------------------------------------------------------------



verschmelze (Padreic, 13. Aug 2004, 13:21:14):
Im Zuge der Attributaenderungen vor einiger Zeit, war eine Anpassung des
Spells verschmelzung notwendig. Im Zuge dieser Umstellung habe ich alle
derzeit vorhandenen Verschmelzungen aufgehoben - sorry hierfuer.
Etwaige Probleme mit dem Spruch bitte via mail an mich melden. Bis zum
naechsten Crash/Reboot bzw. nach einer weiteren Anpassung von Muadib heute
Abend auch ende/renew _kann_ es vereinzelt zu Problemen mit der Endemeldung
des Spells geben (immer dann wenn das Spellbook neugeladen werden muss). Auch
hierfuer bitte ich um Verstaendnis,

Pad*

-----------------------------------------------------------------------------



Pause... (Amaryllis, 20. Okt 2004, 19:14:09):
Hi Delfen,

ich habe leider schon seit Wochen soviel um die Ohren, dass ich hier im Mud zu
nichts mehr komme. Wie nun klar ist, wird sich dieser Zustand auch bis zum
Jahresende nicht bessern. Ich muss deshalb die Gildenbetreuung hier hinten
anstellen (Job geht vor) und hoffe, dass Padreic noch fuer die primaeren Dinge
Zeit hat.

Duerft mich natuerlich nach wie vor mit aufs CC setzen, aber erwartet bitte
nicht zuviel :(

Sorry und Gruesse,
Ama*

-----------------------------------------------------------------------------



Leise Zombies (Amaryllis, 25. Dez 2004, 12:53:51):
Moin,

auf Wunsch eines einzelnen Delfen teile ich hiermit mit, dass als
Weihnachtsgeschenk die beschwoerten Zombie nun auch leise folgen sollten. Dies
muss allerdings beim Beschwoeren bestimmt werden.

Ama*

-----------------------------------------------------------------------------



Re: Leise Zombies (Padreic, 26. Dez 2004, 21:15:10):
~#! rn=Amaryllis rt=1103975631 rg=gilden.dunkelelfen
~#! tid=1103975631
Und wo wir schon dabei sind, gibts von mir auch noch ein Weihnachtsgeschenk:
Nenais'u hat ab nun ihren legendaeren Saphirring dabei - was er macht (und
fuer wen) wird jedoch nich verraten :o)

Pad*

-----------------------------------------------------------------------------



Re: Leise Zombies (Turbo, 28. Dez 2004, 22:54:38):
~#! rn=Amaryllis rt=1103975631 rg=gilden.dunkelelfen
~#! tid=1103975631
s/beschwoert/beschworen/
*meinjanur*

Turbo (Kater)

-----------------------------------------------------------------------------



Verzaubere (Humni, 31. Dez 2004, 14:30:54):
Huhu,

im Zuge von debug-Massnahmen beim Verzaubere-Spruch, der jetzt so tut wie er
sollte, habe ich alle runenschwerter neu geladen. Ja, ein paar von Euch
muessen diese nun neu bauen. Wem das unzumutbar scheint darf sich an mich
wenden, ich helfe dann auch (wenn ich Euch auch nicht alle Arbeit abnehmen
kann).

Humni
PS: Der Spruch macht jetzt das, was er von Anfang an haette machen sollen. ;-)

-----------------------------------------------------------------------------



Nachtsicht (Muadib, 16. Jul 2005, 10:22:17):
Hallo,

ich habe eine Kleinigkeit am Lernmodus der Nachtsicht veraendert. 
Die Aenderung gilt erst nach Ende/Reboot.
Ihr solltet davon keine Beeintraechtigung feststellen koennen.
Wenn doch, so gebt bitte Bescheid.

Gruss

Muadib

-----------------------------------------------------------------------------



Re: Nachtsicht (Darklor, 16. Jul 2005, 16:30:14):
~#! rn=Muadib rt=1121502137 rg=gilden.dunkelelfen
~#! tid=1121502137
Gabs mit dem Lernmodus vorher Probleme?

Darklor

-----------------------------------------------------------------------------



Re: Re: Nachtsicht (Zook, 16. Jul 2005, 19:47:03):
~#! rn=Darklor rt=1121524214 rg=gilden.dunkelelfen
~#! tid=1121502137
Nein, eigentlich keine Probleme. Zook.

-----------------------------------------------------------------------------



Kontinuierliche Abnutzung (Knurps, 24. Feb 2006, 15:44:28):
Da der 'verfluche'-Spell der Dunkelelfen in den Waffen/Ruestungen das Flag
setzt, dass die sich waehrend des normalen Kaempfens beschaedigen, ist
staendig jedes Item kaputt und man muss es staendig reparieren. In Gebieten,
wo es keinen Schmied gibt, zu metzeln, wird deutlich unschoener, weil die
Waffe/Ruestung dauernd leidet. Waffen die nur einmal im Spiel sind, werden
fuer die ganze Uptime mit diesem nervigen Flag versehen.

Man holt normalerweise einmal pro Uptime gewisse Teile der Ausruestung. Wenn
dieses Beschaedigungsflag gesetzt ist, ist es i.d.R. vom Aufwand niedriger das
 Item neuzuholen, da sich das Reparierenmuessen schnell laeppert.
Beschaedigung ist okay, aber kontinuierliches Beschaedigen ist pfuibaeh,
zumindest solang
e nicht alle Ruestungen das haben.

Wie waere es, wenn das Dunkelelfen 'Verfluche' das Flag setzt, und das
Kleriker 'Entfluche' das Flag (das von Delfen gesetzt wurde) wieder entfernt?

Alternativ faende ich es gut, wenn das Beschaedigungsflag nur solange gesetzt
ist, wie der boese Fluch auf der Waffe lastet. Warum sollte die Waffe auch we
iterhin leiden, wenn der Fluch entfernt wurde?

Knurps

-----------------------------------------------------------------------------



finsternis (Amaryllis,  6. Mar 2006, 21:03:26):
Hi,

bei $subject hat sich leider ein Fehler zu Euren Ungunsten eingeschlichen. Wer
den Spruch schon kann, kann ihn bei mir fixen lassen. Falls ich die Tage mal
Zeit finde, baue ich evtl. bei Teo einen Automatismus dafuer ein.

Gruss,
Ama*

-----------------------------------------------------------------------------



Re: finsternis (Padreic, 30. Mar 2006, 20:04:33):
~#! rn=Amaryllis rt=1141675406 rg=gilden.dunkelelfen
~#! tid=1141675406
Es ist gewollt, das eine verfluchte Waffe dauerhaft beschaedigt ist.
1. verwende als Delf nie verfluche wenn Du die Ausruestung Deines Feindes noch
benutzen willst.
2. kaempfe besser nie mit Ausruestung die Du noch benutzen willst gegen einen
Delf der verfluchen kann.


Pad*

-----------------------------------------------------------------------------



Re: Re: finsternis (Bingobongo, 19. Apr 2006, 10:41:57):
~#! rn=Padreic rt=1143741873 rg=gilden.dunkelelfen
~#! tid=1141675406
Hallo
Normalerweise schreib ich hier nicht rein. Dies ist mein erster also mein
erster Versuch. Betreffend des Verfluche der Dunkelelfen muss ich noch
anmerken, dass sich der Spruch mit der Questbelohnung der Pandora-Quest
beisst. Beide benutzen die Syntax "verfluche xxx".
Ich hatte gestern aus Versehen, ich wollte einem befreundeten Spieler den
Sprachfluch anhaengen, denselben verflucht mit dem D11 Spruch. Seine ganze
Ausruestung war danach verflucht. Dies war ein Unfall der vermeidbar gewesen
waere, wenn die beiden Sachen nicht die gleiche Syntax verwenden wuerden oder
wenn der verfluche Spruch nicht auf andere Mitspieler anwendbar waere.
Gruss Bingobongo

-----------------------------------------------------------------------------



Re^3: finsternis (Padreic, 22. Apr 2006, 11:46:40):
~#! rn=Bingobongo rt=1145436117 rg=gilden.dunkelelfen
~#! tid=1141675406
Das ist in der Tat unschoen und ich dachte ansich auch auf Mitspieler ginge
das nur im Kampf?!? Ich werde mir das ganze mal ansehen und das verfluchen von
Spieler auf die Faelle beschraenken wo sich der Spieler mit dem Mitspieler im
Kampf befindet (also Arena).

Cad*

-----------------------------------------------------------------------------



Re^4: finsternis (Kerrier, 24. Apr 2006, 17:50:55):
~#! rn=Padreic rt=1145699200 rg=gilden.dunkelelfen
~#! tid=1141675406
Ganz ehrlich: Auch in der Arena ist das total bescheuert. Ich lasse mir lieber
die Ruebe runterhauen als dass einer meine Ausruestung schrottet ...

EK

-----------------------------------------------------------------------------



Weihe und Runenschwert (Zarunia, 25. Aug 2006, 00:24:36):
gibts eigentlich nen grund warum die weihe auf einem runenschwert nicht
abklingt. auf normalen waffe schon? grund ist der, ich trag immer ein
runenschwert bei mir und moechte das nicht immer geweiht haben. so muss mann
immer 2 bei sich tragen und kann diese nicht mal unterscheiden.

gruss zarunia

-----------------------------------------------------------------------------



Re: Weihe und Runenschwert (Krimariol, 26. Aug 2006, 12:17:59):
~#! rn=Zarunia rt=1156458276 rg=gilden.dunkelelfen
~#! tid=1156458276
Du traegst nur ein Runenschwert mit dir rum ?
*fg*
Ich persoenlich finde es gut, das man als nicht Priester damit auch den
Schaden heilig (boese) permanent haben kann. Als Krieger/Magier geht das
selbst weihen naemlich nicht, dafuer muss man sich nen Priester suchen.
Aber dafuer gibts ja noch die 7 Runensteine ... + die Spezialschwerter...
Also wenn du alle Schaeden haben willst, brauchst du 11 Runenschwerter. :)
(Ok, Stich, Laerm, Wasser und Abartig (Heilig) fehlen noch).
Das man die Geweihten nur uebers Einschaetzen herausbekommt find ich auch
nicht so gelungen. 
Eventuell nach Weihen das Runenschwert -> Geweihtes Runenschwert umbenennen.
MfG
Krimariol
P.S. hab ich jetzt eigentlich am Thema vorbeigeredet ?

-----------------------------------------------------------------------------



Re: Re: Weihe und Runenschwert (Zarunia, 26. Aug 2006, 13:57:06):
~#! rn=Krimariol rt=1156587479 rg=gilden.dunkelelfen
~#! tid=1156458276
naja du bekommst ueber ein schaetz nicht heraus ob das schwert geweiht ist,
oder nicht. ich hab jetzt die schwerter unterschiedlich gestempelt. aber warum
sollte ein kampf/magie mit geweihten waffen rumlaufen, ausser er laesst sie
sich kurzfristig weihen. z.b. in einem team, warum soll das permanent sein.

ist das nicht ein "vorteil" des priesters, dass er eben weihen kann, andere
zweige eben nicht.

gruesse zarunia

-----------------------------------------------------------------------------



Re^3: Weihe und Runenschwert (Krimariol, 30. Aug 2006, 20:41:55):
~#! rn=Zarunia rt=1156593426 rg=gilden.dunkelelfen
~#! tid=1156458276
Hmm, ich als Kaempfer/Magier kann mithilfe von Schaetz die Schadensarten sehen
und ein geweihtes macht "heiligen" Schaden. (d.h. fuer die normalen Chars
boesen Schaden)

-----------------------------------------------------------------------------



kleinere Bugfixes... (Zesstra, 10. Dez 2006, 17:08:29):
Huhu,

ich hab in Vertretung von Amaryllis und Padreic, die beide gerade keine Zeit
haben, einige Kleinigkeiten an den Delfen gefixt. Bis auf einen behobenen Bug
bei den Zombies sollte das zu keinen Verhaltensaenderungen fuehren. 
Falls doch was sein sollte, meldet euch kurz.

Zesstra

-----------------------------------------------------------------------------



Re^8: Idee Kaempferfaehigkeit (Zesstra,  6. Sep 2008, 00:10:08):
~#! rn=Esme rt=1220652536 rg=gilden.chaos
~#! tid=1220646566
Auja. Und die Dunkelelfen ekeln ihre Teamkollegen mit dem Spinnenkram einfach
so sehr, dass die nach vorne stuermen wie nix und den gegner erledigen.

Zesstra

-----------------------------------------------------------------------------



Schlechtere Wirksamkeit von dunkelmachenden Gegenstaenden. (Zesstra, 22. Mai 2012, 22:54:49):
In dieser Uptime haben Dunkelelfen es etwas schwerer in hellen Raeumen.
Und zwar verdunkeln dunkelmachende Gegenstaende, die man mit sich traegt,
aufgrund eines Rundungsfehlers nicht ganz so gut, wie sie sollen. Und in
diesem Fall bemerkt man das 'leider' sogar. Es wird zwar in der Regel dunkel,
aber Lichtquellen anderer Spieler kompensieren dies schneller als ueblich.

Das ganze wird behoben durch a) Reboot oder b) "ende" desjenigen Spielers, der
den Dunkelkrams dabei hat. (D.h. Dunkelelfen koennen ihre Finsternisquellen
durch so ein "ende" selber reparieren.)

Zesstra

-----------------------------------------------------------------------------



Kleine Aenderungen (Miril, 12. Jan 2013, 12:32:52):
Huhu,

aus der Gilde und dem Spellbook wurden ein paar Typos entfernt, die dafuer
sorgen koennten, dass eure Trigger nicht mehr so ganz klappen.

Ausserdem wurde schaetz und verfluche geringfuegig auf bzw. abgewertet. Es ist
nun nicht mehr moeglich, seine Mitspieler zu verfluchen, da dies im Spiel
nicht rueckgaengig gemacht werden kann.

Miril

-----------------------------------------------------------------------------



Gilden (Zaphob, 24. Feb 2013, 15:12:08):
Es gab den Vorschlag, Dunkelelfen auch in anderen Gilden zuzulassen. Trves,
Zauberer, Chaoten, Karate,. faenden wir durchaus vorstellbar. Wie seht ihr
das?

-----------------------------------------------------------------------------



Re: Gilden (Bugfix, 24. Feb 2013, 15:50:10):
~#! rn=Zaphob rt=1361715128 rg=gilden.dunkelelfen
~#! tid=1361715128
Moin,

Ich finde das eigentlich nicht sonderlich passend. Das es fuer die Rassen
gewisse Einschraenkungen gibt ist eigentlich eher logisch. Die Chaoten nehmen
keine Hobbits auf, weil Daemonen diese nur auslachen wuerden.
Rollenspieltechnisch begruendet, ok. Die Kleriker nehmen (oder nahmen) keine
Felinen auf, weil die an ihre urspruenglichen Feinde erinnern. Ebenfalls, ok.
Und gegen Dunkelelfen gibt es nunmal krasse Vorurteile (die wollen ja auch
keine anderen Rassen aufnehmen) daher finde ich das ebenfalls ok.

Wer unbedingt Karateka, Zauberer oder was auch immer werden will, der hat
vermutlich auch vorher die Gildenseiten gelesen (ich glaub bei den Delfen
steht auch ein Hinweis in der Rassenhilfe) und muss dann halt ne andere Rasse
spielen.

dazu kommt noch, ich glaub Zesstra schrieb es neulich schon, dass auf diese
Weise die Rassenwahl noch etwas mehr Auswirkungen hat und das ja eigentlich
garnicht schlecht sei. Dem schliesse ich mich so voellig an.

Ich weis nicht, ob es so ist, aber ich faende es beispielsweise auch sinnvoll,
wenn die Wipfellaeufer keine Zwerge oder Orks aufnehmen wuerden. Man muss es
dabei jetzt nicht uebertreiben aber eigentlich, wie gesagt, solange
rollenspieltechnisch sinnvoll, finde ich das ok wie es ist.

Zusammengefasst: Ich halte es fuer sinnvoll wie es ist und haette es lieber,
wenn das so bleibt.

Xut*

-----------------------------------------------------------------------------



Re: Gilden (Vector, 24. Feb 2013, 15:51:20):
~#! rn=Zaphob rt=1361715128 rg=gilden.dunkelelfen
~#! tid=1361715128
glaube es war ausdruecklicher wunsch von padreic, dass d11 eben
nur bei dunkelelfen sein sollen. die grosse frage (die die magier)
beantworten muessen) in wie weit dieser wunsch noch zeitgemaess 
ist, bestand hat und respektiert werden soll.
aehnliches wurde ja auch schon aufgeweicht (magischer anteil
bei schwertern der trves, clanwechsel tanjian etc)

-----------------------------------------------------------------------------



Re: Re: Gilden (Zaphob, 24. Feb 2013, 17:07:37):
~#! rn=Bugfix rt=1361717410 rg=gilden.dunkelelfen
~#! tid=1361715128
Ich kann durchaus verstehen, dass die Rassenwahl Auswirkungen haben soll. Ich
fordere auch gar nicht, dass Dunkelelfen mit ALLEN anderen Gilden / Rassen
anfreunden sollen. Aber EINIGE waeren schon moeglich, oder?

-----------------------------------------------------------------------------



Re^3: Gilden (Croft, 24. Feb 2013, 17:16:34):
~#! rn=Zaphob rt=1361722057 rg=gilden.dunkelelfen
~#! tid=1361715128
Die Entscheidung liegt bei den Gildenmagiern.  Und die haben sich iirc auch
dagegen entschieden.

Croft

-----------------------------------------------------------------------------



Re^3: Gilden (Ark, 24. Feb 2013, 17:44:32):
~#! rn=Zaphob rt=1361722057 rg=gilden.dunkelelfen
~#! tid=1361715128
Ich koennte meinen Hintern drauf verwetten, dass dem Ansinnen nicht wirklich
Rechnung getragen wird, falls die einzigen zusaetzlichen Gilden Abenteurer und
Bierschuettler waeren. Nein? Ok, forget it :-)


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^4: Gilden (Shaeena, 24. Feb 2013, 17:45:06):
~#! rn=Ark rt=1361724272 rg=gilden.dunkelelfen
~#! tid=1361715128
Ich glaube Karate geht / ging doch?!

-----------------------------------------------------------------------------



Re^5: Gilden (Ark, 24. Feb 2013, 17:52:17):
~#! rn=Shaeena rt=1361724306 rg=gilden.dunkelelfen
~#! tid=1361715128
Keine Ahnung ... wer hat das denn bisher ausprobiert? :D


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^6: Gilden (Elkantar, 24. Feb 2013, 19:41:19):
~#! rn=Ark rt=1361724737 rg=gilden.dunkelelfen
~#! tid=1361715128
Hi! ich wollte diese stelle mal nutzen, um folgendes zu schreiben. Ich spiele
nen delf. Wenn ich eine andere gilde probieren will, kann ich mir einen
Zweitie bauen. Dass delfen nur in ihrer gilde sind, find ich in so fern gut,
da die delfengilde einem dunkelelfen alles an die Hand gibt, was er braucht.
Meiner Meinung nach sollte man es einfach so belassen, wie es ist, nicht, weil
ich was gegen Neuerungen habe, aber, weil es halt so, wie es ist gut
funktioniert und meiner Meinung nach auch gut ist.

-----------------------------------------------------------------------------



Re^7: Gilden (Humni, 24. Feb 2013, 22:07:37):
~#! rn=Elkantar rt=1361731279 rg=gilden.dunkelelfen
~#! tid=1361715128
Vom Konzept her soll die Dunkelelfengilde mit ihren Zweigen mehrere
Moeglichkeiten abdecken - das laeuft derzeit im MG zwar nur auf "Mach Bumms
auf Art 1, auf Art 2, auf Art 3" hinaus, aber generell tut sie das. Warum
sollte also ein Dunkelelf, der Kaempfen will, zu Brieseltrim statt Nyela
gehen? Passt IMHO nicht.

Das ist jetzt ein reines Spielelement. Nicht Balance.

Und ich denke, um diese Gilden geht es. Wipfellaeufer nehmen storymaessig den
alten Erzfeind nicht auf, Karatekas koennten das meinetwegen tun,
Abenteurer... nun ja. Wegen mir... aus Balancesicht spricht da nix gegen, aber
mal ehrlich.. um die Gilden gehts ja nicht, nehme ich an.

Also, konzipiert sind die Delfen als "was eigenes". Es ist uebrigens auch die
einzige Gilde, die den Delfen ihren Schutz gibt (was durch Items ueberfluessig
wird, ich weiss, was ich widerum ein wenig schade finde, aber das ist ein
anderes Thema, auch wenn ich das als Spieler begruesse).

Von daher denke ich daher: Delfen in die Delfengilde. Der Rest ... passt
nicht. Denke ich zumindest.

Antraege von GMs werden aber ueberprueft, ich werd aber nicht von mir aus
aktiv.

Humni

-----------------------------------------------------------------------------



Re: Re: Gilden (Darklor,  4. Mai 2013, 11:11:06):
~#! rn=Bugfix rt=1361717410 rg=gilden.dunkelelfen
~#! tid=1361715128
Wuerden die dann nicht regelmaessig in der Sonne verkokeln, so ganz ohne ihren
Sonnenschutz?

Darklor

-----------------------------------------------------------------------------



Eine Aufraeumfunktion fuer Runenschwerter... (Deaddy,  1. Nov 2019, 21:49:04):
... vernichtet nun nicht mehr muehselig gebaute Runenschwerter von
Spieler*innen, welche diese achtlos in Zzerenzzen und seinen Paraversionen
weggeworfen haben und zu schwach waren etwaig aufraeumende NPCs vorher selbst
aufzuraeumen.

Dies gilt fuer alle Runenschwerter die ein Spieler selbst geschmiedet hat oder
mit Runensteinen verziert hat. Elfen seien weiterhin gewarnt und sollten
besonders gute Runenschwerter mit drei oder mehr Runensteinen erst im Kampf
zuecken.

Leider gilt dies nicht fuer bereits existierende Runenschwerter, wer also
einen Ausflug machen will, muss sich ein neues Schwert bauen.

Sollte etwas doch kaputt sein, bitte bei mir melden.

Viele Gruesse
Deaddy

-----------------------------------------------------------------------------



Die Temperatur von Schwertklingen ... (Deaddy,  3. Dez 2019, 22:03:01):
... wird jetzt (hoffentlich) korrekt angezeigt. Das faellt vermutlich nur den
Kaempfern auf, die wirklich viele Klingen verbauen. Wenn das schon
skript-viele Klingen sind, koennte das Eure Skripte kaputt machen, weil das
vielleicht einfach schon sehr lange sehr kaputt war.

Sollte etwas beim Schmieden anders sein als sonst, meldet Euch bitte bei mir
(am besten per MUD-Mail oder hier antworten).

Viele Gruesse
Deaddy

-----------------------------------------------------------------------------



Technische Aenderungen an der Dunkelelfenamulettquest (Deaddy, 19. Jan 2020, 11:42:02):
Hallo zusammen,

wenn Ihr nun das sagenumwobene Amulett Seymions fuer Nenais'u sucht, sollte
sich fuer Euch nichts geaendert haben. Auf der technischen Seite ist der Code
jedoch viel schoener geworden, dank einer spannenden Entwicklung Zesstras in
der Mudlib.

Heute habe ich erst einmal nur die Bibliothek geupdated, im Laufe der
naechsten Wochen (vmtl. so erste Februarwoche) folgen die restlichen Raeume,
da wir alle noch sehr gespannt sind, ob das wirklich so toll funktioniert, wie
auf unseren HomeMUDs.

Solltet Ihr also Probleme haben oder Probleme mitbekommen, Gegenstaende in der
Bibliothek zu nehmen, gebt am besten direkt mir oder Zesstra Bescheid.

Vielen Dank und viel Spass damit
Deaddy

Technisches Addendum: Es handelt sich hierbei um die sogenannten vitems,
welche mit dieser Uptime eingefuehrt wurden. Wenn Spieler die die Quest schon
kennen mal genau wissen, was es da neues zu testen gibt und da selbst dran
testen wollen, koennen sie mich nach Details fragen, dann verrate ich
welche Gegenstaende betroffen sind und wir freuen uns alle ueber Euer
Feedback.

-----------------------------------------------------------------------------



Umsetzung der MGCoronaSchVO des Sheriffs in Zzerenzzen (Deaddy,  1. Apr 2020, 11:05:44):
1 Zugangsbeschraenkung fuer Nicht-Dunkelelfen
Nicht-Dunkelelfen ist der Zugang zu Zzerenzzen zu verwehren. Hierzu wurden
Wachen abgestellt. Die Bewohner sind aufgefordert, etwaige Nicht-Dunkelelfen
zu verweisen. Da eine Uebertragung ueber Blut bislang noch nicht aufgereten
ist, wird der gewaltvolle Weg empfohlen.

2 Benutzung der Gildenraeume
Spielern bleibt die Benutzung der Gildenraeume gestattet, sofern diese dort
notwendige Taetigkeiten (Questen, Lernen, Idlen, Topliste lesen, Forschung an
Kraeutertraenken) durchfuehren oder im Selbststudium die Bibliothek nutzen. Es
sind die ueblichen Hygienevorschriften einzuhalten (keine Spieler angreifen). 
 
Der Versammlungsraum ist fuer Nichtspieler, welche keine Begleitnichtspieler
sind, nicht freigegeben. In den Gildenraeumen haben sich nur die notwendigen
Nichtspieler aufzuhalten.

3 Handwerk in Zzerenzzen
Nyela und Baiy'Sagar stehen ab sofort 24h zur Verfuegung um den Einwohnern die
lebensnotwendige Ausruestung bereitzustellen.

4 Gastronomiebetrieb
Da Draineck so manchen Gang zur Hochebene ersparen kann, bleibt sein Gewerbe
zu diesem Zweck geoeffnet. Versammlungen, Gelage und aehnliches bleiben
untersagt.

5 Oeffnung des Tempels
Der Tempel bleibt von etwaigen Schliessungen unberuehrt. Seyt-Hamakha wacht
dort ueber uns.

6 Handel und Post
Der Briefverkehr muss als kontaktminimierender Kommunikationsweg aufrecht
erhalten werden, weshalb die Post geoffnet bliebt. Der Handel mit Elfenohren,
Manuskripten, Spruehdosen und Loot ist weiterhin gestattet, da dies zur
Deckung des taeglichen Bedarfs in Zzerenzzen notwendig ist.

-----------------------------------------------------------------------------



Re: Umsetzung der MGCoronaSchVO des Sheriffs in Zzerenzzen (Deaddy,  2. Apr 2020, 16:18:42):
~#! rn=Deaddy rt=1585731944 rg=gilden.dunkelelfen
~#! tid=1585731944
Mir wurde zugetragen, dass das alles nur ein Aprilscherz war. Hahaha. Jetzt
hab ich mir schon die Muehe gemacht. Die Verordnung bleibt weiterhin in Kraft,
mit folgenden Abschwaechungen:

4 Gastronomiebetrieb
Ihr duerft jetzt auch wieder stattliche Gelage bei Draineck abhalten, ohne
dass ich Euch zappe.

6 Handel und Post
Loot jeglicher Art darf verscherbelt und gekauft werden. Bonuspunkte wenn
Elfenblut dran klebt.

Reingefallene Gruesse, ein grummeliger
Deaddy

-----------------------------------------------------------------------------



Runenschwertern wird beim Schwerttanz ... (Deaddy,  4. Apr 2020, 14:53:34):
... nicht mehr so schlecht und behalten ihren Namen, falls man ihnen einen mit
einem Stempelkissen o.ae. verpasst hat. Ferner wurde ein tiefenmagisches
Problem geloest, welches selbst in sehr kleinen Runenschwerter eine Art
runengeistige Megalomanie ausloeste, so dass diese glaubten, zweihaendig
gefuehrt werden zu muessen.

Ferner wurden, auf Anraten des Springfielder Gerichts, Verkleidungen von ihren
Artikeln befreit, um etwaige "Die Bart, die"-Verteidigungen zu entkraeften.

Vergoldete Gegenstaende haben ihre Namen jetzt auch im richtigen Kasus.

Sollte irgendetwas nicht so funktionieren wie erwartet, oder auch einfach
(denke ich) korrektere Grammatik jemanden stoeren, so bitte ich um
Rueckmeldung.

Dank geht hierbei auch vor allem raus an meinen Magierpapa und ansonsten auch
noch Bendeigid und Notstrom fuer kleinere Assistenzen. Alle verbleibenden
Fehler sind auf meinem Mist gewachsen.

-----------------------------------------------------------------------------



Bei Nenais'u ... (Deaddy, 11. Apr 2020, 13:34:25):
... habe ich eigentlich nur ein paar Typos gefixt. Gar nichts wildes. Einige
davon haben aber fuer Bugs gesorgt, so dass die Raumbeschreibung fuer
Dunkelelfen teils unangemessen war. Jetzt sollte die Atmosphaere fuer
Dunkelelefen etwas inspirierender sein. Zwinkersmiley.

-----------------------------------------------------------------------------



Beschwoere und schneide ... (Deaddy, 16. Apr 2020, 22:38:58):
... sollten Euch jetzt nicht mehr immer dazwischengraetschen, wenn in einem
Raum eine aehnliche Syntax ist und die Syntaxhinweise von den Dunkelelfne
verschluckt werden.

Wenn Ihr nicht boese genug seid um einen Zombie zu beschwoeren so
ueberschreibt das immernoch etwaige Raummeldungen, da seid Ihr dann auch
selber Schuld. Wenn das jemand anders haben will, bitte melden, ich denke
aber, dass das fuer Euch auch eine relevante Info ist.

Bei beschwoere gibt es noch ein Szenario in dem ihr dann doppelte
Fehlermeldungen (von der Raumsyntax und von beschwoere) kriegt, da kann ich
gerade aber auch nichts aendern und ich glaube da ist es netter, wenn man
wenigstens die Syntaxhinweise bekommt.

Dass "bete" aehnliche Probleme hat ist bekannt, da muessen gerade aber noch
ein paar daemonische Chaosrituale durchgefuehrt werden und Elfen geopfert
werden, um die mudlib-Geister versoehnlich zu stimmen.

Grosser Dank an Bugfix, Zesstra und Soynada.

Sollte irgendetwas bei "schneide" oder "beschwoere" jetzt nicht mehr
funktionieren, schreibt mir bitte eine Mail.

Lobet Seyt-Hamakha!

-----------------------------------------------------------------------------



Re: Beschwoere und schneide ... (Deaddy, 18. Apr 2020, 18:40:26):
~#! rn=Deaddy rt=1587069538 rg=gilden.dunkelelfen
~#! tid=1587069538
Bei dem beschwoere war das Problem nach ner Nacht drueber schlafen doch sehr
loesbar. Dank nochmal an Bugfix. Alle *mir bekannten* Probleme mit den
Syntaxen von "schneide" und "beschwoere" sollten jetzt eigentlich geloest
sein, wenn Euch noch was auffaellt, bitte mir eine Mail schicken.

-----------------------------------------------------------------------------



Learncache no more (Deaddy, 24. Jul 2020, 11:24:23):
Hallo liebe Dunkelelf*innen,

mit gildenerzmagierlicher Genehmigung wurde das Lernverhalten etwas an den
MUD-Standard angepasst und der sogenannte LearnCache deaktiviert. Vor allem
kleinere Seher sollten nun eine Verbessrung merken und nicht mehr irgendwann
gefuehlt gar nichts mehr lernen.

Sollte irgendetwas nicht mehr oder weniger gut funktionieren, meldet Euch
bitte bei mir.
LG
Deaddy

-----------------------------------------------------------------------------



Ruestungen von Troy im Wald (Arathorn,  8. Nov 2020, 20:52:20):
Hallo zusammen,

ich habe heute ein wenig bei Troy aufgeraeumt, wobei auffiel, dass zwei
Ruestungen von ihm aus der Region Wald nicht erreichbar waren bzw. nur an
voellig unerwarteter Stelle. Ausserdem bestanden die aus den falschen
Materialien. Die beiden sind jetzt wieder dort erreichbar, wo Baiy'Sagar euch
hinschickt: im Wald bei Troy. :-)
Das Material wurde auch korrigiert, so dass sie jetzt auch ordnungsgemaess
repariert und zerlegt werden koennen.

Dachte, das wuerde euch vielleicht interessieren.

Gruss, Arathorn.

-----------------------------------------------------------------------------



Webseiteninfos zu den Dunkelelfen (Deaddy, 12. Jul 2021, 09:39:23):
Huhu,

dank unseres Webmasters mit AkueFi und seiner unermuedlichen Geduld, haben wir
jetzt auch ein paar Informationen zu den Dunkelelfen auf der Webseite.

Fuer junge Dunkelelfen ist vielleicht die Zweigbeschreibung noch einmal ganz
nuetzlich, weil man bei manchen Faehigkeiten vielleicht aus den reinen
In-Game-Infos nicht so ganz schlau wird, was die denn tun sollen.

Fuer alle anderen Rassen ist ein Blick auf die Seite Nuetzliches interessant,
sofern Sie der Bibliothek, Baiy'Sagar oder Yil'drim noch nie einen Besuch
abgestattet haben.

Vielen Dank an Zaphob fuer das ganze Gefuddel. Sei Seyt-Hamakhas Gnade mit
Dir, wenn Deine letzte Stunde schlaegt.

Im Schatten
Deaddy

-----------------------------------------------------------------------------



Blech (Deaddy, 25. Nov 2022, 00:17:02):
Schweigen ist bekanntlich Gold und manche reden nur Blech.
Aber das mit dem Material ist ja verwandelbar, manchmal.
Sollte es Bleche betreffen, sind magisch in Gold verwandelte Bleche nun
Goldblechen ebenbuertig.
Im Guten wie im Schlechten.

Weiterhin lassen sich nur Ruestungen reparieren, ein Fehlschlag hilft also
nicht bei der Hose des Orkanfuehrers.

Sollte irgendetwas beim Reparieren von Ruestungen, inbesondere denen die
Bleche verbrauchen, oder beim Vergolden von Gegenstaenden unerwaartet anders
sein als vorher, meldet Euch bitte bei mir.
Am besten per Mudmail, wenn ich gerade nicht auf ne TM antworte. :o)

-----------------------------------------------------------------------------



Frohe Einachten (Deaddy, 11. Dez 2022, 17:31:55):
Hallo liebe Spinnenbrut,

ungeahntes Boeses fand hinter verschlossenen Tueren statt und das Gute soll
nun endlich aus dieser Welt geschwemmt werden koennen.
Seyt-Hamakha hat zusammen mit dem schrillsten, allerschrecklichsten und
boesesten aller Drachen einen Plan geschmiedet, welcher die Raenge unserer
bewaffneten Krieger:innen zu nie da gewesener Staerke anschwellen lassen
duerfte.

Die ueberaus frustrierenden Anforderungen an den Ruestungs-Skill fuer den
Kampfzweig wurden einmal generalueberholt. Wie in der Bibliothek geschrieben
war, erforderte es 75% aller im Morgengrauen befindlichen Ruestungen, um die
letzte Faehigkeit freizuschalten.
Seit Einfuehrung der Grenze gibt es aber natuerlich auch einiges mehr an
Ruestungen und nicht alles ist gleich leicht erreichbar, so dass hier nun
deutlich reduzierte Werte gelten.

Die neuen Grenzwerte sind handverlesen und koennten noch etwas Tuningbedarf
haben, Rueckmeldung gerne via Mail an Deaddy oder hier als Antwort, sollte
jemand noch so zuegig im Kampfzweig aufsteigen.

Sollte irgendwas kaputt sein oder nicht so funktionieren, wie es tut, am
besten mir eine Mail schicken.

Danke an Arathorn fuer die Unterstuetzung bei der Technoarchaeologie.
Danke an Bugfix fuer's Magierpapadasein, das war eine der grossen
Frustrationen warum ich ueberhaupt Magier werden musste. :D
Danke an Humni fuer die immer schnellen und hilfreichen Rueckmeldungen als EM
Gilden.
Danke an Seyt-Hamakha.

Viel Spass beim draufhauen :o)
Deaddy

-----------------------------------------------------------------------------



