Wozu diese Newsgruppe ??? (Durian, 24. Jul 1992, 11:58:41):
Hallo Spieler,
vielleicht haben sich schon ein paar von euch gefragt, wozu eigentlich diese
Newsgruppe dienen soll. Nun , das ist ganz einfach. Es wird wohl nie irgendwo
so sein, dass es jedem gefaellt was so abgeht. Vielen werden diverse Dinge
nicht passen. Und dann wollen sie sich beschweren, z.b.
- ueber Spieler, die die ganze nur mordend durch die Gegend laufen,
- ueber unfaire Mnster, Quests,
- ueber Magier, die die ganze nur nerven und den armen Spieler aergern,
und ueber aehnliche Dinge.
Wenn dem mal so ist, koennt ihr dieses Brett benutzen. Ich werde mich dann 
der Sache annehmen und mich darum kuemmern. Dadurch, dass alle diese
Beschwerde lesen koennen, kommt vielleicht sogar 'ne richtige Diskussion
in Gang.
Wenn ihr eure Beschwerde lieber nicht oeffentlich machen wollt, koennt ihr 
mir selbstverstaendlich auch schreiben (via mail).

             Viele Gruesse,
                               Durian
                                      Sheriff im MorgenGrauen
-----------------------------------------------------------------------------



Vogelfreiheit (Rumata, 16. Jun 1993, 15:30:23):
Also, ich bin strikt dagegen, das Spieler andere Spieler (ausser in
Notwehr) toeten duerfen. Das widerspricht dem Grundsatz des Zusammen-
lebens -- auch im Mud. Wer unbedingt ein Playerslaughter-Mud wuenscht,
findet da bestimmt geeignetere Muds als dieses. Mir tut es in der
Seele weh, das es Spieler gibt, die sich soetwas wuenschen.

Rumata
-----------------------------------------------------------------------------



Vogelfreiheit ist MEGAOUT (Olpp, 16. Jun 1993, 15:50:56):
Sorry, dass ich mich erst so spaet wieder zu Wort melde.
Aber den Gedanken von Rumata kann ich nichts weiter hinzufuegen.
KILLER werden hier nachwievor zur Verantwortung gezogen.

Olpp, Sheriff im MorgenGrauen

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



Wanted! (Vega, 28. Jun 1993, 14:41:48):
Moin!

Das Aufhaengen von 'WANTED'-Plakaten befuerworte ich unbedingt.
Allerdings sollte der Monsterplayer nicht dead or alive abgeliefert
werden, sondern lebend. Dann koennte er in
den noch zu errichtenden Knast gesteckt werden, wo er sich dann bei
jedem Login bis er seine Strafzeit abgebuesst hat, wiederfindet.
Um ihn lebend zu fangen, koennte man an interessierte ein Seil o.ae.
ausgeben und dem Gejagten die Moeglichkeit der Flucht nehmen.
Das Ganze haette den Vorteil, dass der Gefangene mit seinem Jaeger ggf.
noch verhandeln kann und dass so abenteuerliche Jagden
veranstaltet werden koennten.
Durch die Strafzeiten, die bei Wiederholungstaetern natuerlich
hoeher liegen, duerfte jeder gewarnt sein, der es einmal versucht hat.
Zudem, wenn man schon fortgeschrittener Spieler ist, wird man seinen
Charakter nicht einfach wegwerfen, sondern lieber die Strafe absitzen...

Munter bleiben...                 VEGA
-----------------------------------------------------------------------------



Knast (Yendi, 28. Jun 1993, 15:28:00):
Knast ist gut!
Man muss aber verhindern, dass der Spieler sich einloggt und dann einfach
kaffeetrinken geht, bis sein Charakter die Strafe abgesessen hat.

Zu diesem Zweck waere es denkbar, dem Haeftling Aufgaben zu stellen, die er
ausfuehren muesste, sozusagen Strafarbeit (Steineklopfen!).

Um Skriptspieler abzuschrecken, koennte ein Gefaengniswaerter jedesmal
einen zufaelligen Stein vorgeben: "Zerschlage einen roten Stein!".
Jeder Stein, der faelschlich zerdeppert wurde, kostet 2 Strafsteine.
So koennte ein Skriptspieler nicht einfach mit einem "Steineklopf"-Skript
seine Strafe absitzen, sondern muesste sich tatsaechlich selber
an die Tasten machen (Und 1000 Steine dauern lange...)!

Kommentare?
-----------------------------------------------------------------------------



Gewissen... (Quasimodo, 28. Jun 1993, 16:17:11):
Was halten ihr von der Idee einem Killer ein schlechtes Gewissen
zu programmieren, dass ihn so wie ein Mueckenstich staendig nervt und
ihn moeglicherweise bei Aktionen behindert, so dass diese mehrfach
eingegeben werden muessen oder zB beim Kaempfen Schlaege oefters
automatisch fehlschlagen??

Ein Gewissen als Sanktion ist natuerlich mit anderen Strafen kombinierbar.

Quasimodo (noch Hexer)


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



Eine kurze Anmerkung (Durian, 28. Jun 1993, 20:18:03):
Hallo zusammen,
zu den Vorschlaegen von Quasimodo und Yendi moechte ich nur folgendes
sagen. Sie sind zwar sehr schoen ... aber irgendwie (nehmt es mir nicht uebel)
unnoetig. Wozu brauchen wir solch komplizierte Strafmethoden. Die einfache
Art tut's auch, und sie ist effektiv, erfuellt ihren Zweck. Warum also alles
verkomplizieren.
Bitte, das ist meine persoenliche Meinung und muss nicht geteilt werden.
Fuer gute Aenderungen bin ich, noetig oder nicht, immer aufgeschlossen ;-)

- Durian
-----------------------------------------------------------------------------



Re: Anmerkung (Yendi, 30. Jun 1993, 11:25:00):
Hallo Durian!
So betrachtet sind auch die Quests selbst unnoetig, denn es ist ja viel
einfacher, jedem, der drum bittet, ein paar QP zu geben.

Du musst aber doch zugeben, dass Quests unheimlich viel zur Atmosphaere
dieses MUDs beitragen, oder?...
-----------------------------------------------------------------------------



re: re: Anmerkung (Durian, 30. Jun 1993, 13:25:21):
Hallo Yendi!
Ich habe nicht gemeint, dass es Spielern leicht gemacht werden soll. Ich 
habe ausschliesslich die Bestrafung von 'Moerdern' gemeint. Speziell dort
denke ich, ist eine Verkomplizierung nicht noetig.
Dass ich nicht gegen quests bin, wirst Du an meinen Pyramiden sehen, die
hoffentlich bald fertig sind, und die Du wohl noch erleben wirst ;-)

- Durian

P.S.: weitere private Diskussionen, so sie nichts Neues bringen koennen wir 
ja auf dem Postwege weiter fuehren. :-)
-----------------------------------------------------------------------------



Der STRAFVOLLZUG im MUD... (Jonas, 28. Jul 1993, 23:33:55):
Tach Mudders ! :)

Hier, an dieser Stelle, - mein Senf:

Ja, also, Strafe muss sein, lernt man schon als Kind - insofern
find ich die ganzen Ideen hier eigentlich recht sinnvoll, weil
wegen Spass - Herabsetzen der EP oder irgendwelche Behinderungen
sind auf ihre ganz eigene Weise laaangweilig.
Andrerseits, is ein MUD doch irgendwie eine Gesellschaftsform,
eine besonders moderne noch dazu, hypermodern direkt - daher sollte
man doch vielleicht auf die Wiedereinfuehrung mittelalterlicher
Vollzugsmethoden wie Hexenjagden oder Steine kloppen verzichten.
Wie waers mit nem StGB fuers MUD !? Sonen kleines halt, wo fuer versch.#
Straftaten Mindest - und/oder maximal-Strafen angefuehrt sind.
Ich stelle mir das so vor:
Irgendjemand benimmt sich daneben --> er wird angezeigt 
--> Der Klaeger (Opfer oder Magier i.V. fuer den Staat (Mud)) und der Taeter muessen vor Gericht
--> Beide bestimmen ihre Anwaelte, ein Richter muss her, Zeugen und event. Geschworene
--> Dann wird vor Gericht das letztendliche Strafmass verhandelt 
 Der Uebeltaeter bekommt seine gerechte Strafe!


Ok, meine Vision klingt eventuell recht aufwendig, aber Spass muss dabei sein ! :)
Dann haette ich da noch nen paar ideen fuer moegliche Strafe:
1. Geldstrafe tut immer weh
2. 1. sollte ruhig mehr sein als der Bestrafte hat --> Konto im Soll --> Geldbeschaffen -> Strafarbeit !
3. Gefaengnis auf RealZeit ! --> kann natuerlich nur mit Besuchern und Mitgefangenen reden ! 
4. Einzelhaft !

Der Gefangene steht natuerlich auch im Knast wenn er grade ausgeloggt ist --> Prangereffekt !
6. Die Urteile muessen oeffentlich ausgehaengt werden.
7. Sozialarbeit als Strafe !
Als Beispiel: Uebeltaeter muss Anfaengern Klamotten beschaffen, weil er z.b. mit scripts wald und wiesen abgegrast hat ...

Abschliessend:
Ich glaube witzige, nicht so makabra Strafen gibs bestimmt genug, Ideen sind gefragt !
Naja, und wenn man halt sonen Gerichtsverfahren haette, kommen da bestimmt
einige gute bei raus...denk ich...
Meinungen dazu ?
- ok, ich find meine Idee tolll.
Jonas the Wise, Ciao !
-----------------------------------------------------------------------------



Beschwerde (Fleance,  4. Aug 1993, 23:11:08):
Hallo und wo!

Ich moechte mich ueber den Tiger beschweren, weil der mich umgebracht hat.

Ich moechte mich auch noch ueber mich selbst beschweren, weil ich im
Anschluss vergessen habe, meine Vorsicht vor dem Kampf mit dem Koenigs-
waechter wieder hinreichend hoch zu setzen, die ich
vorher beim Kampf mit der Hornisse ganz tief gesetzt hatte.

So kam es, dass ich heute nachmittag innerhalb von noch nicht mal 20
Minuten zwei mal gestorben bin :(

Und ausserdem hat mich das 800000 Erfahrungspunkte gekostet.

Ihr seid alle gemein!!!!!!!!!!!

Leb' wohl, du schoene Welt!

*
-----------------------------------------------------------------------------



RE: Beschwerde (Olpp, 25. Aug 1993, 01:34:25):
Hallo und hier!
1. Ich habe den Tiger nachsitzen lassen. Er musste 800000 mal schreiben:
 'ich soll keine Spieler umbringen.

2. Hiermit verwarne ich Dich wegen selbstverstuemmelung, da Du den Wimpy
nicht hochgesetzt hast.

3. Ja, wir sind alle gemein ;) extra ..
-----------------------------------------------------------------------------



Re: Beschwerde (Tiger, 26. Aug 1993, 20:29:59):
Olpp, Du bist so was von fies, meine Pranken tun mir jetzt noch weh, 
findest Du nicht, dass 800000 mal etwas uebertrieben war?
Ausserdem bringe ich keine Spieler zum Spass um, es dient ausschliesslich
meiner Ernaehrung und damit der Erhaltung der Art. Und wenn die Spieler
ja immer freiwillig in meinen Dschungel kommen, und sich dabei so 
schrecklich tapsig und ungeschickt benehmen, sich staendig verlaufen
und ueberall ihren Muell liegen lassen, so muss ich diesem Treiben einfach
ein Ende besetzen.
Nun ja, wenn ich Dich auf jeden Fall das naechste mal in meinem Dschungel
finde, werde ich mich fuer 800000 mal 'Ich soll keine Spieler umbringen'
schreiben blutig revanchieren!

   Der Tiger von Titiwu!
-----------------------------------------------------------------------------



Tiger-Fanclub (Yendi, 27. Aug 1993, 12:43:55):
Hey, Fleance!
Lass uns einen Tiger-Fanclub gruenden und Tiger sammeln -
  aber AUSGESTOPFTE!!!   }:-)
Die gefallen mir naemlich sehr viel besser als lebendige...
-----------------------------------------------------------------------------



Re: Re: Absturz (Pilgrim, 12. Nov 1993, 17:50:57):
Hi,

hier ein paar Worte an all' jene, die sich immer noch oder immer wieder
ueber Abstuerze des MUD's und die (zu geringe oder garkeine) `Ent-
schaedigung' aergern.

1. Abstuerze kommen (un)- vor (-hergsehen, deshalb heissen sie
   ja Abstuerze). Abstuerze werden auch immer wieder vorkommen,
   und das was mich (frueher) daran am meissten geaergert hat
   war in der Regel nicht die verlorene Ausruestung (sprich
   Geld), sondern die verlorene Zeit fuer die gerade bearbeitete
   Aufgabe ( ich sag nur: Friedhof !).
   Die Gruende dafuer sind (haeufig) unbekannt, sie liegen mal im MUD
   selber, mal im Betrieb von PASCAL.

2. Die Entschaedigung ...
   Tja, ich muss sagen, dass ich nicht genau weiss, wie sie sich berechnet,
   aber ich meine ca. 50% des Wertes (nicht Kauf- oder Verkaufswert !).

3. Im Uebrigen gibts anderswo ueberhaupt nie nicht keine Entschaedigung.
   Das ist zwar kein Trost fuer den, der alles verloren hat, aber
   hier giebts zumindest Robin, der voellig mittellosen Spielern mit
   etwas Geld aushilft... Und es gibt Gratisruestung und ~waffe zu
   finden. (Diese sollten auch nicht immer (wieder) von Spielern mit-
   genommen werden, die sie nicht wirklich brauchen.)

4. Falls uebrigens ein Absturz zu der Zeit passiert, wo man netztod
   ist, so ist das meiner Meinung nach ein Risiko, das jeder selbst
   gegen den Vorteil eines (theorethisch) unbegrenzt langen
   Aufenhaltes (mit dem Vorteil des Behaltens der Ausruestung) in
   MG abwiegen muss. (Das gleiche gilt auch fuer Reboots.)
   In anderen MUD fliegt man nach ein paar Stunden raus, oder es wird
   uebers Wochenende neugebootet oder, oder, oder ...

5. Falls Ihr Kritik ueber die jetzig Praktik aeussert, sollte sie
   zumindest konstruktiv sein, d.h., macht Vorschlaege Was man Wie
   besser machen koennte ....

6. Im uebrigen kann man sich als 'high-level-player', zumindest 
   wenn man genuegent Traenke gefunden hat, in rel. kurzer Zeit
   eine neue Ausruestung erkaempfen (ja, auch ohne Ruestung und
   Waffen ...) und bekommt dabei noch etliche Erfahrungspunkte.

7. Ich persoenlich bin uebrigens nicht dafuer, dass es eine volle
   Entschaedigung geben sollte (z.B. generelles Zwischenspeichern der
   Ausruestung, um im Fall des Falles eine Entschaedigung zu be-
   rechnen). Allerdings hab'ich das auch nicht zu entscheiden ...


   Pilgrim



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



Diebstahl... (Cadra, 22. Nov 1993, 18:59:04):
Tja, wie soll ich anfangen?
Also:
Ich wuerde es gerne sehen, wenn die Spieler etwas
mehr Solidaritaet zeigen wuerden. Ich kenne es aus
KEINEM anderen mud, dass ein toter player ausgeraeumt wird.
Es ist schon schlimm genug die ganzen Xp zu verlieren
muessen da noch die MITspieler ein uebriges tun?
Denkt mal drueber nach.

Was anderes:
Ok, ich weiss nicht, wer hier Sheriff ist, aber ich habe
heute Gismo's statue angegriffen. Ich bin selber absolut
GEGEN playerkilling, aber da hatte es wirklich gereicht.
Ich war gerade zum 2. Mal heute in Frachtgut gestorben.
Nachdem ich bei den Zwergen wieder aufwachte musste ich
erstmal wieder Kraefte sammeln. Als es halbwegs ging,
toetete ich einen der schwaecheren Waechter. Ich BRAUCHTE
die Ausruestung. Ich habe nie was dagegen, anderen was zu geben,
wenn sie fragen, aber Gismo kam rein, as die Leiche auf
und nahm alles an sich. Ich sagte laut NEIN! aber da war
es schon zu spaet. Ob er absichtlich netdead ging, oder
unbeabsichtigt weiss ich nicht, aber ich hatte keine
chance mehr an die Sachen zu kommen. Ich war einfach
wuetend, traurig und verzweifelt...
Ausserdem dachte ich nicht, dass es ueberhaupt MOEGLICH
sei, eine statue anzugreifen.
Ich wuerde es gerne sehen, wenn hier nicht jeder gleich
alles an sich nimmt ohne zu fragen. Ein Prophet oder
eine Prophetin kann durchaus mal in der Lage sein, auch
eine einfache Lederruestung oder aehnliches
DRINGEND zu brauchen!
Ich weiss, dass es falsch war, einen player anzugreifen.
Ist auch nicht meine Art. Es war eigentlich eher ein
extrem destruktives Verhalten, nach dem Motto, wenn ich
ihm schon nicht schaden kann, dann moechte ich wenigstens
so tun als ob...
Ich denke, es waere keine schlechte Idee, Statuen an-
griffssicher zu machen...

Mein Gott, solange notes poste ich sonst nie... *seufz*

Cadra
immer noch stinksauer auf Gismo.

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



Playerkilling (Torfdueng,  4. Jan 1994, 17:56:47):
Ich weiss nicht wie weit ich Hate wirklich geaergert habe, aber garantiert
nicht
so weit , das er mich zap`t .   Na ja ,und danach , alls dann noch andere
Spieler
meine Sachen genommen haben ,und Hate und Freund einfach nur so rumstanden
hatte
ich auch keine grosse Lust mehr da ueberhaut was zu machen , so das ich Hate
mit
Feuerbaellen angegriffen habe . Was dann passiert ist kann man sich denken.
Torzdem find ich sowas ziemlich miess. Playerkilling von Magiern ist noch
aezender als von Mitspielern

Torfdueng

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



BITTE LESEN! (Freund, 23. Feb 1994, 21:45:27):
Gruess Gott,
ich schreibe diesen Artikel, weil es viele (gerade neue) Spieler gibt, die
wenig Ahnung von unserem Rechtssytem haben und sich dann bei irgendwelchen
Problemen an irgendwelche Leute wenden, die nicht helfen koennen / wollen.

Im MorgenGrauen gibt es eine strikte 2-Klassengesellschaft, die der Spieler
und Magier. Letztere koennen prinzipiell alles erdenkbare in dieser Welt an-
stellen. Das kann unter Umstaenden leider auch dazu fuehren, dass gemeine
Magier ihre Macht missbrauchen (unsichtbare Flueche an Spieler haengen, 
ihre Punkte grundlos abziehen, sie einfach toeten, gegen ihren Willen tran-
sen (hin und her teleportieren) oder aehnliches). 
Aber auch Spieler sind nicht immer nett zueinander. Obgleich es strengstens
untersagt ist, andere Spieler anzugreifen, versuchen es einige unbelehrbare
immer wieder. Aber auch kleinere Verstoesse gegen die Moral sind an der Tag-
esordnung: Leichen werden gefleddert, Sachen beim Ordnen des eigenen Ruck-
sacks geklaut, weibliche Charaktere mit entsprechenden Verben belaestigt,
und so weiter.

Wenn Euch so etwas zustoesst und ihr nicht bereit seid, das auf sich beruhen
zu lassen, koennt ihr Euch an den Scheriff im MorgenGrauen wenden, dessen
Aufgabe genau darin liegt, sich solcher Sachen anzunehmen.
Scheut Euch nicht, auch, wenn ihr wenig Erfahrung habt, Kontakt aufzunehmen.
(Egal, ob Spieler oder Magier. :-)

Im Moment gibt es zwei Scheriffs im MorgenGrauen:
Ein Freund fuer alle Faelle (hilfsbereit) - Knuddeleisbaer
Olpp ist wieder auf dem Boden.

Leider ist Olpp in letzter Zeit etwas beschaeftigt (ausserhalb des Muds) und
selten da.
Ich (Freund) bin aber nahezu taeglich im Mud zu erreichen. Ihr koennt auf ver-
schiedene Arten Kontakt aufnehmen:
Wenn ich eingeloggt bin:
teile freund mit Hilfe, kommst Du mal bitte?

Wenn ich nicht da bin:
Ins Postamt gehen und einen Brief schicken.

Wenn ihr kein Postamt kennt, oder alles oeffentlich diskutieren wollt:
Eine Zeitung besorgen (liegt in der Gilde) und in die Rubrik 
polizei.beschwerden einen Artikel schreiben. 
(Mit: lies rubrik 15    und dann: schreibe Beschwerde)

Es gruesst Euch mit friedlichem Gruss ein
Freund fuer alle Faelle (Scheriff).




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



Verarschung (Targas, 19. Jul 1994, 14:59:37):
Ich habe HASS.
Es ist ja mittlerweile Standard, dass ich angeflamed werde, wenn ich rufe.
Habe ich mich dran gewoehnt.
Vorhin aber hat sich Kirk einen Spass erlaubt, indem er mir Halsschmerzen
verpasste. Na toll.
Halb so wild, haette er sich nicht direkt danach ausgeloggt, auf dass ich
ewig so herumrenne.
Lord Alarin entfernte das kleine Problem dann. Doch Krother, der unter dem
gleichen
Problem litt, wollte er nicht helfen. Sein Kommentar "Bin ich denn die
Heilsarmee?"
Leider fand sich auch kein anderer Magier, der bereit gewesen waere, ihm zu
helfen.
Es ging im uebrigen nicht nur um die verlorene Stimme; Krother kam durch
einen Bug schlicht und einfach nicht mehr vom Fleck.
Doch war es den Magiern scheinbar zu viel Arbeit, etwas dagegen zu
unternehmen.
Einige kamen zwar an den Ort des Geschehens, doch wollte ih keiner erloesen.
Nur manch ein toller Tip wurde gegeben: Er solle sich ausloggen (per ENDE),
um danach
wieder zu kommen und die Ausruestung zurueck zu holen. Schoen und gut, nur
ist
die Region nur durch ein Raetsel zu erreichen, das sich staendig aendert. Da
es dabei
auch schwierige Raetsel gibt, kann es eine ganz schoene Tortur sein, wieder
bis
zur Ausruestung vorzudringen.
Die Magier hier im MUD haben scheinbar kein Interesse dran, den Spielern
durch Bugfixes zu helfen
und somit den Spielwitz ueberhaupt am Leben zu erhalten.
Ich kann nur sagen, dass dieser Spieltag verschwendet war.

Obwohl - immerhin brachte er mir einige neue Erkenntnisse ueber unsere
Obrigkeit,
die zwar die Macht haben, Welten zu veraendern, aber kein Interesse daran,
diese Welten auch spielbar zu halten.


Ich sag'nur eines: Revolution!

Ciao,
ein stinksaurer  Targas.


p.s. Entschuldigt die schlechte Form und unsinnige Gliederung dieses
Artikels, aber ich sitze hier
an einer DOSe und muss somit vollkommen blind schreiben.
HAAAAAAAAAAAAAAAAAAAASSSSSSSSSSSSSSSSSSSSSSSS.

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



Re: Verarschung (Cifer, 19. Jul 1994, 15:38:39):
Hi,
was Targas nicht wissen kann: Kirk hat vor dem Ausloggen einen Ruf an
alle Magier durchgegeben, das das Halsweh der beiden verschwinden kann,
wenn sie sich wieder beruhigt haben, d.h. ihm sollte hier kein Vorwurf
gemacht werden. Dass niemand da war, der das Halsweh dann auch entfernte
(ausser Alarin in dem einen Fall), lag vielleicht daran, dass niemand
wusste, dass Targas' Kollege ueberhaupt Halsweh und weitere Probleme
hatte. Bevor ich nun alle Magier anpflaume, dass sie bei Bugs nicht
weiterhelfen, wuerde ich sie erst mal ALLE persoenlich fragen, wenn ich
schon nicht rufen kann, oder die Kanaele benutzen. ICH z.B. wusste gar
nichts von den Schwierigkeiten des Spielers, und so ging es einigen
anderen sicherlich auch, oder irre ich mich?

Zweitens: Magier sind angewiesen, Spieler nicht aus Questgebieten zu
transen, weil man nicht immer sicher sein kann, dass dies das Quest
spaeter nicht beeintraechtigt. Wenn man das Quest also nicht kennt,
sollte man es bleiben lassen, weil sich der Bug dann vielleicht noch
verschlimmern oder umlagern wuerde, oder taeusche ich mich da? Ein
Ausloggen des Spielers per "Ende" ist zwar sicherlich nicht die fuer den
Spieler beste Loesung, aber vielleicht die eleganteste, und mit Schwund
muss man nun mal immer rechnen. Haette es eine todsichere, absolut
vorhersehbare Moeglichkeit gegeben, Targas Kumpanen zu helfen, waere
sie sicherlich von jemandem durchgefuehrt worden, aber wie gesagt,
wer hat ueberhaupt von den Problemen erfahren?

Leider ist es ja zur Gewohnheit geworden, dass immer erst mal rum-
geschnauzt wird, bevor man sachlich diskutieren kann, aber falls Du
Lust hast, Targas, kannst Du ja Deine Mitspieler mal fragen, ob sie
nicht bessere Erfahrungen mit hilfsbereiten Magiern gemacht haben,
und wie es zu diesen Erfahrungen kommen konnte. Vielleicht haben die
dann einfach etwas laenger abgewartet oder ihre Bitten um Hilfe so
dargebracht, dass es die Magier auch gehoert haben.

Cifer, der sich allmaehlich wundert.

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



artikel re: re: verar***ung (Dancer, 19. Jul 1994, 19:39:02):
Also,

scheinbar gibt es immer noch mindestens einen Spieler, der denkt, dass
Magier den ganzen Tag eingeloggt sind, um mit Merlin um die wette zu
rennen und den Spielern mit allen moeglichen mutwilligen bugs das Leben
schwer zu machen. Natuerlich sollten Magier wenn sie die Faehigkeit
haben, bugs nachgehen, ABER: wenn da 3 andere Magier sind, die gerade
programmierhilfe brauchen und ein anderer Spieler seit 3 Stunden in
Duncton festhaengt, wo er nun wirklich nicht mehr raus kommt und DIESE
vier Personen mich nett fragen, ob ich mal einen Moment Zeit habe, dann
gehe ich natuerlich ZUERST zu denen und nicht zu einem Targas, der mit
einem 'HAAASSSS, ein Magier zu Krother!'-Ruf sicherlich nichteinmal
den nettesten Magier hinterm Ofen hervorlocken wird. Ich helfe Magiern
und Spielern nun wirklich oft, und das kostet nun auch Zeit. Zeit, die
ich oft nicht habe.
Da ist der Tip 'wenn keiner kommt, dann quitte und hol Deine Sachen wieder'
meiner Meinung nach mehr als angebracht, da der Skatraum des Lupinentales
ja nun auch nicht gerade am Ende der Welt liegt.
Ich sitze und programmiere mir nicht die Finger hier wund, damit bequeme
Spieler UNHOEFLICH und wie selbstverstaendlich von allen anderen verlagen,
grenzenlos fuer sie zur Verfuegung zu stehen.

Dancer. Sauer.

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



re: Targas (Durian, 20. Jul 1994, 10:04:35):
Hallo!

Ihr Spieler, die ihr meint schlecht behandelt zu sein. Wenn dies, wie in
Targas Fall offensichtlich nicht der Fall war, lasst unnoetige
Beschuldigungen.
Wenn es jedoch stimmt, behaltet einen freundlichen Ton bei, dies
ist (nur damit es verschiedene Leute endlich verstehen) ein SPIEL.
Wenn jemand nicht weiss, was das ist, schaut im Duden nach.
Targas, mit diesem unverschaemten Artikel hast Du Dich total ins Aus
gestellt, aber das hast Du wohl scheon gemerkt. Wie waere es mit erst
nachdenken, dann schimpfen?
Auch bei dem allgemeinen Gerede ueber Revolutionen befuerchte ich langsam,
dass das sehr gute Spieler-Magier-Verhaeltnis hier zunehmend leidet.
Ich kenne ein paar MUDs und bin hier seit dem allerersten Tag Magier,
und ich kann sagen, dass hier das Verhaeltnis so gut ist, wie nirgendwo
sonst. Und, ich bin mir sicher da stimmen viele (eigentlich alle)zu,
wenn Leute meinen, dieses gute Verhaeltnis zerstoeren zu muessen und

eine Schlucht zwischen Magiern und Spielern aufzureissen, werden wir
dies nicht zulasen und entsprechende Massnahmen ergreifen. Es kann nicht
im Sinne eines Spiels (!!) sein, dass sich die Spieler staendig nur
anfauchen und beschimpfen!
Targas, ich denke eine Entschuldigung waere nicht zuviel verlangt!

- Durian

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



Re: re: Targas (Flintnail, 20. Jul 1994, 12:02:46):
So...noch mal Senf zu diesen Aktionen von Flint...
Stellen wir uns also vor, da sitzen 3 Spieler an einem Skat-Spiel und einer
ruft 3-4 mal (vielleicht auch 5 mal?) nach einem Guiness fuer Geniesser, dass
in der gleichen Kneipe bestellt werden kann...(muss man dazu eigentlich den
Spieltisch verlassen?). Dieser Spieler (Targas) und ein Mitspieler (Krother)
bekommen schliesslich als 'erzieherische Massnahme'(!!! wo sind wir hier?)
Halsweh...(warum ich als dritter in der Runde leer ausging, weiss ich nicht?),
das nach dem verschwinden Kirks , zumindest nicht von Krother entfernt wurde.
Einige lapidare Bemerkungen reichen jetzt aus, um das Fass zum ueberlaufen zu
bringe.....
....kann mir mal einer erklaeren was dass soll?
...wo sind wir hier....?
...wer darf wann was tun...?
Zunaechst mal ein paar Worte die ich bei der Revolutionsgeschichte loswerden
wollte. Jeder Spieler in diesem Mud sollte bedenken, was ihm hier geboten
wird....muesste er sich gleichwertiges KAUFEN, haette er bestimmt mehr
Rechte...aber so wie es momentan laeuft, bekommt doch jeder Spieler mindestens
genausoviel (wovon auch immer), wie er gegeben hat!
Nun ein Wort an die Magier. Sollte sich ein Magier durch einen Spieler
belaestigt fuehlen, so sollten die beiden das persoenlich klaeren...ohne
programmiervorteil!!! Mich persoenlich stoert seit kurzen der
immerwiederkehrende Ausruf:'Schon wieder die Grubeeee.....'.Aber ich muss wohl
damit leben (aufgrund des immer wiederkehrenden Wortlauts nehme ich an, dass
dieser Spruch programmiert ist und beim Sturz automatisch aufgerufen wird.).
Erst wenn wirklich verstaerkt Beschwerden eingehen (von mehreren
Mud-Teilnehmern), sollte dieses Problem 'oeffentlich' geloest werden.
Herrgottnochmal...ich bin mit Sicherheit auch schon ner Menge Leute auf die
Nerven gegangen...wie wohl jeder ob Spieler oder Magier es IRGENDWANN mal
gemacht hat...
Zuletzt noch ein paar Worte zu Targas Ehrenrettung....er war der erste der
mir in diesem Mud geholfen hat....und das bei einem so banalen Problem, ich
hatte mich ohne Fackel in die Baerenhoehle begeben und wusste nicht , wie man
raus geht...auf raus kam ich nicht...argas scheute sich nicht, erst in die
Hoehlen der Schreckensspitze zu gehen (aufgrund einer Fehlinformation
meinerseits!) und danach  auch noch der Baerenhoehle einen Besuch
abzustatten.....
Also liebe Mud-Mitbewohner, bevor ihr irgendwelche bitterboesen Kommentare
abgebt oder Aktionen durchfuehrt...zuruecklehnen...durchatmen...sich fragen,
was haette ich getan...zur Not eine rauchen gehen oder fuer NR ein Kaugummi
maltraetieren...und wenns dann immer noch so schlimm ist, mal ein zwei Worte
mit dem/derjenigen austauschen.....und nich immer gleich Fluchen,Schreien,
Lamentieren.

euer ,auch nicht immer unnervige Flint

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



Re: Re: Verarschung (Targas, 26. Jul 1994, 14:30:10):
Hallo!

Es stimmt - ich kann nicht wissen, was Kirk so ueber Eure Magier-Manaele
schickt. Und ich _will_ es auch nicht wissen.
Jedoch kam ich mir _ziemlich_ veralbert vor, als ich gesehen habe, dass sich
der Grund fuer mein Halsweh (Kirk) verzogen hat.

Sicher, Alarin hat mir geholfen und ich bin dafuer auch dankbar. Jedoch
weigerte er sich, auch Krother weiterzuhelfen. Daraufhin wandte ich mich an
_mehrere_ Magier mit der _Bitte_, ihm zu helfen; er habe ja auch noch das
Problem, dass er nicht vom Tisch
wegkomme (der Skattisch).
Als Antwort belam ich in der Regel unbegruendete Absagen oder keine
Aeusserung. Lediglich Dancer lieferte mir eine Erklaerung, warum er nicht
kommen koenne. Diese Erklaerung (er sei beschaeftigt mit einem anderen Bug)
wurde von mir auch zur Kenntnis
genommen und akzeptiert. Danach hatte ich auch noch eine recht lebhafte
Diskussion mit ihm, doch darum geht es jetzt nicht.
Der Punkt ist, dass ich tatsaechlich bei Magiern persoenlich nachgefragt
hatte. Dann kam auch Dancer zu uns hin, unternahm jedoch nichts. Eine
Magierrin (weiss nicht mehr, wer - sorry) zeigte sich sogar bereit, uns zu
helfen, verabschiedete sioch jedoch
recht schnell wieder in dem Glauben, Dancer wuerde uns helfen. Ich ging zu
dem Zeitpunkt auch noch davon aus.
Also _war_ offenbar die Moeglichkeit gegeben, uns zu helfen. Es fehlte
lediglich an Interesse daran. Es haette nicht einmal viel AArbeit gemacht
(z.B. fuer Dancer), da er ja schon da war.
Ferner ist der Skattisch meines Wissens kein Questgebiet und Krother war
nicht in eine Queste in dieser Gegend verwickelt. Es haette also wohl nichts
ausgemacht, in dort hinauszuholen.

Weiterhin zum eigentlichen Grunde der Diskussion, dem Rufen: Es ist am
Skattisch NICHT moeglich, Kommunikationskanaele zu benutzen. Das ist auch gut
so - sonst besteht die Gefahr des Betruges. Also muesste man fuer eine
Mitteilung an andere Spieler den
Tisch verlassen. Es ist recht unbequem, dass man dafuer das Spiel beenden
muss, aber damit kann man noch leben. Doof ist eher, wenn, wie es bei Krother
der Fall war, ein Spieler am Tisch festsitzt (offenbar durch einen Bug), er
aber nicht um Hilfe rufen
kann, da er Danke einer Erziehungsmassnahme (sind wir hier im Kindergarten??
Und fuehlt sich Kirk als unsere Gouvernante??????) Halsweh hatte und weiterhin
durch die Tatsache, dass er eben am Spieltisch festhing, niemandem durch
Kanaele Bescheid sagen
konnte. Haetten Krother und ich uns nicht zufaellig im selben Raum
aufgehalten, haette er vielleicht Tagelang dort ausharren muessen.
Und dann nervt es _gewaltig_, wenn sich kein Magier dazu bereit erklaert, ihm
dort herauszuhelfen.

Falls dies wie eine "Entschuldigung" klingt, bitte ich genau deshalb um
Entschuldigung. ,-)
Es soll naemlich KEINE sein. Ich bin mir KEINER Schuld bewusst und bedaure
keine der Aussagen, die ich gemacht habe.
Ferner danke ich hiermit der Person, die meinen Artikel offenbar in eine
passende Rubrik weitergeleitet hat.

Versucht mal, meinen Standpunkt zu verstehen!

Ciao,
ein nichts bereuender Targas.

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



Re: artikel re: re: verar***ung (Targas, 26. Jul 1994, 14:38:03):
Hallo Dancer!

Ich sehe unseren Fall als erledigt an. Wir haben ja schon darueber diskutiert
und ich akzeptiere selbstverstaendlich Deinen Standpunkt.
Was ich jedoch nicht akzeptieren kann und will, ist, dass einige Magier
schlicht und einfach zu bequem sind, einem Spieler aus einer ernsten Misere zu
helfen.

Und zu Deinem letzten Satz (..programmiere mir hier nicht die Finger wund,
damit bequeme Spieler UNHOEFLICH und wie selbstverstaendlich von allen anderen
verlangen, grenzenloas fuer sie zur Verfuegung zu stehen.):
Ich nehme an, Du warst Dir ueber die anfallende Programmierarbeit im Klaren,
als Du Dich zu der Laufbahn als Magier entschlossen hast.
Ausserdem habe ich lange genug versucht, durch BITTEN einen Magier zur Hilfe
zu bewegen. Wie reagierst Du, wenn Deine Bitten ohne oder mit
unverstaendlichen Antworten niedergeschmettert werden?

Targas.

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



Re: re: Targas (Targas, 26. Jul 1994, 14:52:50):
Hallo Durian!

Dieser Artikel laesst sich ohne Quoten nicht besonders einfach beantworten.
Im Zweifelsfall also bitte nochmal das Original lesen!

Erstens: Ich halte es nicht fuer SO offensichtlich, dass ich/wir in diesem
Fall schlecht behalndelt wurden. Daher waren meine Aeusserungen keine
unnoetigen Beschuldigungen. Die Sache laesst sich schlicht und einfach nicht
ohne Beschuldigungen klaeren.
Wenn ich nichts sage, KANN nichts geklaert werden. Wenn ich was sage, wird es
scheinbar von EINER Person gleich als unnoetig abgetan.
Nicht gerade angemessen, oder?!

Sicher, mein Artikel war provokativ verfasst. Ich bin mir dessen voll bewusst
und verstehe auch Eure hitzigen Reaktionen darauf. Ich waere auch enttaeuscht
gewesen, haette er nicht solche Resonanz hervorgerufen. Denn wie ich schon
verstaendlich gemacht
habem glaube ich mittlerweile nicht mehr, dass man ohne solche Formulierungen
Gehoer findet.
Weiterhin ("mit diesem Artikel hast Du DIch ganz schoen ins Aus gestellt.."):
Das ist mir in diesem Fall vollkommen egal. Ich halte nichts davon, ein
unnoetiges Blatt vor den Mund zu nehmen. Wer sich also durch meine freie
Meinungsaeusserung beleidigt
fuehlt, ist selbst dran schuld. Es spielt fuer mich keine Rolle, ob mir den
Artikel jemand uebel nimmt oder nicht.

Doch, Durian. Ich habe Deine Forderung nach einer Entschuldigung  zur
Kenntnis genommen, werde ihr aber nicht nachkommen. Ich halte eine
Entschuldigung nicht fuer angebracht.
Sie waere geheuchelt. Alles, was ich schrieb, meinte ich auch. Wie Ihr nun
darauf reagiert, ist Eure Sache.

Targas.

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



Re: Re: re: Targas (Jof, 26. Jul 1994, 16:47:18):

Ich hab die Diskussion nicht von Anfang an verfolgt, moechte aber ein paar
grundsaetzliche Sachen sagen:

 - Magier haben grundsaetzlich nicht die Pflicht, im Falle eines Bugs in den
Programmen anderer sofort alles stehen und liegen zu lassen, um den Bug
zu suchen. Ganz abgesehen davon, dass sie in aller Regel aufgrund ihrer
Schreibrechte den Bug dann eh nicht beheben koennen, ist es nunmal so, dass
sie hier im Mud FREIWILLIG ihre Zeit opfern - und es kommt durchaus oft
vor, das man gerade irgendwas anderes, wichtigeres zu tun hat, als irgend-
einen Bug im Mud zu fixen. Das jemand im Mud ist, heisst noch lange nicht,
das er auch Zeit hat, sich darum zu kuemmern. Beispiel Jof: Mein Mud-Window
steht 90% der Zeit als winziges Icon unten am Bildschirm, waehrend ich
an anderen Dingen arbeite. Ich gehe davon aus, das das bei vielen anderen
auch
so ist; wenn dann ein Bug auftaucht, kann das Icon piepsen so oft es will,
wenn ich anderes zu tun habe, kuemmer ich mich einfach nicht drum.
 - HALSWEH ist kein Bug; und ich glaube nicht, das Kirk grundlos Halsweh
ver-
teilt. Wenn jemand ein Kirk-Halsweh hatte, hatte das auch schon seine Be-
rechtigung. Wenn ein anderer Magier das dann wegmacht - OK. Wenn nicht - auch
OK, denke ich.

 Jof

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



Re: Targas (Dancer, 26. Jul 1994, 17:10:59):
Targas,

  jetzt will ich mal eins klarstellen:

Kein Magier hat jemals weder schriftlich noch woertlich eine
Verpflichtung `unterzeichnet`, Spielern bei bugs zur helfen,
d.h. eine solche Hilfe ist freiwillig. Und wenn nunmal alle
Magier gerade entweder Essen sind, nicht auf den Monitor
schauen, programmieren, andere Bugs bearbeiten oder sonstwie
keine Zeit haben, dann gibt es nunmal keine andere Moeglich-
keit, als zu warten. Alle Magier hier sind ja auch z.Bsp.
Studies und stehen ganz bestimmt nicht jeden Morgen auf und
gehen zur Uni, damit sie zu Dir gespurtet kommen koennen,
wenn Du rufst. Im Klartext, wenn einer keine LUST hat, dann
hast Du PECH gehabt! Ich verstehe nicht, warum 200 Spieler
prima damit zurechtkommen und das akzeptieren koennen und
Du nicht. Dieses eeeewige Gemeckere weil man mal paar Minuten
warten musste (Isnogood hat uebrigens an dem Tag seit frueh
morgens in Duncton gewartet und keiner konnte helfen, und was
hat er gemacht? Sich unterhalten und ist nett gewesen!), das
MG ist nicht Disney-World, wo Du bezahlst, um was geboten
zu bekommen, sondern hast hier Deinen Spass und DARFST an
etwas teilhaben, wo sehr viele Menschen sehr sehr viel Zeit
dazu gebraucht haben, um es aufzubauen, und das auch noch
kostenlos im klimatisierten Computerraum an nem tollen Xterm.
Nicht, dass Du das falsch verstehst: ich zaehle mich selbst
NICHT zu diesen Menschen, aber ich bekomme immer mehr Respekt
vor Ihnen, je mehr ich verstehe....bzw. NICHT verstehe :-)

Ach ja... nochwas zu Deiner Bemerkung, dass man wuesste,
wieviel Arbeit auf einen zukommt... man hat soviel Arbeit
wie man uebernehmen WILL, denn schliesslich ist das MUD
nicht nur fuer Dich auf freiwilliger Basis.

Dancer.


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



re:targas (Thorin, 26. Jul 1994, 18:51:28):
Ich finde es richtig, was Du schreibst, Targas. Es sollte schliesslich gesagt
werden, und ich finde es gut von der MPA, dass solche Artikel dann auch nicht
verschwiegen/zensiert werden. Aber bedenk wie die Magier eine Regel,
eigentlich DIE Regel : Ihr spielt immer miteinander, nicht gegeneinander !!!!
Servus, Thorin.

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



Umgangsformen (Yendi, 29. Jul 1994, 15:26:11):
Hmmm....
Was haltet ihr davon, diese Diskussion unter "etikette" weiterzufuehren?

Targas: Dein "HASS"-Gebruelle ist einfach schlechter Stil.
Ich kann verstehen, dass Du genervt warst. Auch ich habe in der Vergangenheit
oft in einem bug festgehangen, und es brauchte viiiiel Geduld, bis mich ein
Mager endlich befreite. Dennoch waere etwas mehr Gelassenheit der Atmosphaere
zwischen Spielern und Magiern sicherlich zutraeglich, meinst Du nicht?

Magier: Die meisten von Euch waren auch mal Spieler. Versetzt Euch doch noch
einmal in die Lage eines Spielers, der von einem bug verkrueppelt irgendwo
rumsitzt und um Hilfe ruft: Man kommt sich da _verdammt_ hilflos vor...

Generell: Leute, seid nett zueinander! :)   [flowerpower forever!]


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



die freundlichen Magier (Zuerileu,  6. Aug 1994, 21:22:52):
Sali zaeme,
Das ist mein erster Artikel in einer Zeitung und darum bitte ich euh auch
meine Schreibfehler und anderes zu ueberlesen 'Danke'

Ich war schonn in vielen english-sprenden Muds wie das AcientAgutshin oder
das
Lochness, aber in keinem Mud habe ich soviele gute erfahrungen gemacht mit
Wizards oder eben Magier wie hier im Morgengrauen. Und ich habe schon viele
schlechte erfahrungen gemacht wie z.b. das mich ein Wizard im AA gekillt hat
weil ich seine rufe ueberhoert habe da mein english leider nicht das beste
ist.
Und ich finde in solchen MUD's vergeht einem doch wirklich die Lust am Spiel,
ich glaub da stimmt mir jeder Wizard oder Spieler hier im Lochness zu oder ?
Also denke ich macht doch den Magiern hier im Morgengrauen keine vorwuerfe
nur weil sie das eine mal eure rufe ueberhoert haben. Ich weiss es ist
scheisse wenn man seine ruestungen verliert und von vorne beginnen muss aber
man hat
ja soviel Zeit um das Quest nachzuholen oder die verlorenen Gegenstaende
wiederzufinden. Dazu kann ja jeder andere Spieler 'wenn man einen Mitstreiter
dabei hat umsobesser' die Sachen des Partners auflesen und ihm spaeter
in der Gilde wieder treffen und seine Savhen zurueckbringen.
Ich denke es braucht nicht gleich fuer jedes klizekleines Problem einen
Magier.
Und denkt mal darueber nach wenn ihr vielleicht in Zukunft mal selber Magier
seit, moechtet ihr wirklich wegen jedem Spieler eure Arbeit verlassen um
diesem einem Spieler aus der Patsche zu helfen ?
Was ich den Magier sagen muss, ihr wart auch mal Spieler und ihr seit damals
sicher auch froh gewesen wenn euch bei einem Problem geholfen worden ist. Ich
finde solche bestraffungen wie Halsweh doof den der Spieler kann sich dagegen
nich
t weheren und vielleicht haetten ein paar zurechtweisende Worte auch
gereicht.
Ich habe mit diesen Magiers die ich im verlauf von meinem halben Tag
Morgengrauen kennengelernt habe nun eigentlich immer nur gute erfahrungen
gesammelt und ich hoffe das sich das auch nicht aendert.
Eines moecht ich hier nun noch anbringen, wenns vielleicht auch in der
falschen Sparte ist, ich finde Morgengrauen bis jetzt eines der besten MUD's
die ich kennengelernt habe und hoffe das es auch in Zukunft dabei bleiben
wird.


Macht weiter so...  euer einziger Mitspieler aus der Schweiz 'ZueriLeu'

PS: hmm eine Karte ueber das ganze Spielfeld das man in einem Kartenladen
     erwerben koennte waer nicht schlecht =:))

PSS: Hmm..  ich hoffe das ich nicht der einzige Schweizer bleibe.. (snief)



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



Re: die freundlichen Magier (Kirk,  8. Aug 1994, 00:03:56):
Hi!

Ich moechte mich zuerst mal fuer meine, vielleicht etwas zu heftigen, Worte
an der einen oder anderen Stelle entschuldigen.
Die Sache ist doch wohl die: Wenn Spieler ein Problem haben, rufen sie um
Hilfe. Das ist auch absolut ok. Das haben alle Magier als Spieler auch getan.
In 99% aller Faelle kommt innerhalb kuerzester Zeit ein Magier angerannt und
nimmt sich der Probleme an, sofern er nicht gerade mit einem anderen Problem
beschaeftigt ist. Selbst wenn 10 Magier im Spiel sind, dann kann nicht jeder
von denen helfen, da nunmal nicht jeder so gut programmieren kann, dass er
den Code von anderen Magier debuggen koennte. Da ist dann etwas zoegerliche
Reaktion auf Hilferufe von Magierseite absolut normal. Schliesslich ist es
auf fuer die Spieler nicht besonders toll, wenn ein Magier zu helfen versucht
und dabei aus Unwissenheit noch mehr kaputt macht. Vielleicht koennten die
Spieler mal versuchen in die Situation der Magier hineinzudenken.
Schliesslich
haben die meisten von uns auch noch eine Nebenbeschaeftigung, die da evtl.
Diplomarbeit oder Job lautet. Ich kann es mir auch nicht leisten, 16 Stunden
taeglich Support zu leisten und die anderen Magier auch nicht, selbst wenn
sie
so lange eingeloggt sein sollten.
Das MG ist nunmal kein kleines Mud mehr und hat damit auch eine Menge
Probleme mit Bugs und solchem Zeug. Schliesslich proggen hier reichlich
viele Leute daran herum und produzieren verstaendlicherweise auch neue
Probleme. Wenn es dann an manchen Tagen zu einer Haeufung kommt und einige
Fieberhaft mit der Beseitigung der Fehler beschaeftigt sind, dann stoert es
total, wenn sich irgendwelche Spieler lauthals ueber irgendwelchen Skat-Unfug
unterhalten. Da ueberliest man dann naemlich die wirklich wichtigen Rufe von
den Spielern, die echte Probleme haben. In solchen Situationen muss dann
schonmal Halsweh herhalten (meiner Meinung nach).
Bevor jetzt also wieder eine Revolution oder sowas angezettelt wird,
ueberlegt euch mal, dass das alles hier von einer Menge von Leuten in ihrer
Freizeit (oder Arbeitszeit? ;) ) geschaffen wird und zwar fuer 0 DM die
Stunde
Vielleicht koennte man ueber eine Mud-Benutzungsgebuehr reden? Dann koennten
wir einen 24-Stunden Support gewaehrleisten und immer zur Stelle sein, wenn
wir gerufen werden.

Kirk

P.S.: Ich hoffe die Benutzungsgebuehr wird als Scherz verstanden ....

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



meine meinung (Torfdueng,  8. Aug 1994, 01:03:52):
Hi,

ich hab mich da eigendlich immer rausgehalten , Magier/Spieler , was solls ?
Aber in der letzten Zeit sehe ich hier Artikel und Sachen , die ich nicht
ohne weiters hier rumstehen lassen kann. Ich finde , das wir im momment an
einem gefaehrlichen Punkt sind im Magier/Spieler Verhaeltniss, und alles
tuhen muessen , um es nicht so abkippen zu lassen , wie in anderen Muds.
Ich muss erlich sagen , das ich eigendlich nur Magier geworden bin , um
micht nichts mehr von den anderen , die mir Ueberstellt waren, nichts
gefallen zu  lassen (Hallo Hate :)). Aber was damit gekommen ist , hat meine
meinug von den damals ehr 'bloeden' Magiern echt gewandelt. Klar ,werdet ihr
jetzt sagen ,der ist ja auch einer , tja . Was soll ich dazu sagen ?
Ich hab was eingetauscht , die Moeglicheit alles zu sehen und zu tuhen, und
damit Verantwortung zu uebernehmen , anstadt als Spieler ohne jeder
verantwortung rumzulaufen und auf den Leuten rumzucken , die das hier am
Laufen halten.Klar Magier sind nicht perfekt , aber das hat ja auch keiner
behauptet. Was mich jedoch wirklich ein bischen gegen den Stich geht ist ,
 das es ein par Spieler gibt, die hier einfach nur rummaeckern. Das ist hier
, wie in der Politik ,wenn ihr was aendern wollt , partizipiert , und werdet
selber Magier ,damit ihr was aendern koennt, Denn dan werden sich hier einige
Spieler echt umgucken , was als Magier hier abgeht .........

Bis daemnaechst in unsehen reihen .......

TD

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



POLIZEI.beschwerden (Olpp,  8. Aug 1994, 14:31:32):
..so heisst diese Rubrik !!!!!!


Olpp, Sheriff i.R.

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



Re: Homosexualitaet (Angus, 26. Aug 1994, 15:20:00):
Hi !
Ein ganz dickes AGREED von mir, Flint !
Leider hab ich nix davon mitbekommen, weil ich idle war,
sonst haett ich da auch meinen Senf dazugegeben ! (zap ...)

    Angus - in solchen Angelegenheiten besonders finster !!

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



Re: Homosexualitaet (Rumata, 26. Aug 1994, 15:22:31):
Hi,
Flintnails Artikel spricht mir aus der Seele. Ich moechte aber dem noch
hinzufuegen, dass es in solchen Situationen immer wieder vorkommt, dass
ich darum gebeten werde, den entsprechenden Uebeltaeter zu 'zappen' (oder
noch boesere Dinge mit ihm zu tuen.) Das ist ebenso unmoralisch. So wird
man mit den Leuten auch nicht fertig!

Also, die Leute weiterhin so anhauen, wie es Flintnail getan hat. Uebrigens
brauchen sich die Magier dabei nicht zurueckhalten. :-)
Aber die Leute zappen, das ist eine andere Sache!

Nur der Vollstaendigkeit halber, Rumata

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



Re: Re: Homosexualitaet (Durian, 26. Aug 1994, 18:50:06):
Hi!

Natuerlich stimme in Flintnail in jeder Form zu. Ich war Zeuge des
Ganzen, da mich besagte zwei Spieler draengten, einen von ihnen zur Frau
zu machen, damit sie heiraten koennen. Da ich das Ganze nicht so wahnsinnig
spassig fand (und es zudem noch verboten ist!!!!!!!!) habe ich es natuerlich
gelassen. Ich weiss nicht, was diesen beiden Zweitcharaktere damit
bezweckt hatten, ich vermute aber mal, es war nur scherzhaft gemeint. Und
das ging genauso in die Hose, wir schon so mancher anderer uebler Scherz
in diesem MUD. Und es ist richtig, dass solche Provokateure mit
entsprechender
Missachtung gestraft werden.
Ich vermute uebrigens deshalb, dass es nur ein Scherz war, deshalb bin ich
persoenlich auch nicht sauer oder so, weil ich von beiden Charakteren
die Hauptcharaktere kenne.
Soviel dazu, ich denke die Sache ist erledigt.

- Durian

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



Re: Re: Re: Homosexualitaet (Hakkikkt, 27. Aug 1994, 18:51:08):
Hi,
ich war aehnlich wie Durian sowohl teilweise Zeuge, als auch beteiligt, da
ich ebenfalls gefragt wurde ob ich nicht einen Charakter zur Frau machen
koenne. Da ich es auch nicht besonders spassig fand, aber ebenfalls den
Eindruck hatte, dass es nicht ganz ersnst gemeint war, habe ich es dann auch
sein gelassen. Ich finde auch, dass es ehr ein wenig gelungener Scherz, als
eine bewusste Provokation war. Ich kann mich da nur Durian anschliessen.

Eure, Hakkikkt

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



re: re: ....sexualitaet (Klinge, 27. Aug 1994, 22:01:28):
....genau, und zappt auch alle die sich lustig machen ueber:
Gummifetischisten,
Sodomisten,
Paederasten,
Masochisten,
Sadisten,
Katoliken,
Exhibitionisten,
Heterosexuelle,
Blondinen,
Mantafahrer,
Taucher,
Nonnen,
usw, sowie alle anderen hier nicht aufgefuehrten "Sonderlinge".

P.S. und vergesst nicht bei Gelegenheit der Oeffentlichkeit mitzuteilen
worueber man sich wann wie lustigmachen darf und auf was Steinigung
und Verbrennung stehen sollte.

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



Re: re: re: ....sexualitaet (Caradhras, 28. Aug 1994, 11:02:13):
	Kuckuck

*kuck verwirrt* Also irgendwie versteh ich euch nicht ganz. Ich dachte,
Flintnail haette den Artikel geschrieben, weil die zwei die allgemeinheit
genervt haetten und Lesben und Schwule beleidigt haetten. Genau das selbe
les ich auch aus Angus' und Rumatas Artikel heraus, aber leider genau das
Gegenteil aus Durians und Hakkikkts Artikel. Was spricht denn bitte
dagegen, dass 2 Spieler sich heiraten wollen? Auch wenn beide maennlich
sind. Ich finde das einen ganz normalen Wunsch fuer Schwule. Man muss
ihnen ja nicht den Wunsch erfuellen bzw kann sie ja ignorieren.
Ich selber kenn auch einen Schwulen hier in MG, der mal einen anderen
heiraten wollte, aber es nicht durfte. Er ist Magier und hatte dann vor,
den anderen sich als Frau einzuloggen und dann nach der Heirat den gender
vom anderen auf maennlich zu switchen. Ich weiss jetzt aber nicht ob sie
es wirklich gemacht haben. *grins* jetzt gibts aufregung unter den Magiern.
*pruuuuust* Und noch was faellt mir ein:

Wollte ich einen maennlichen Frosch befreien von dieser Buerde (er war erst
level 1 und ich schon lange level 19) und kuesste ihn, damit er den frosch
los hat und n paar Minuten spaeter kam n Magier angetrappst, fragte mich,
wie mir das passiert sei und ich erzaehlte es ihm, daraufhin er:
"Oh Gott, zum Glueck haben die anderen nichts davon erfahren, wenn die
wuessten, dass Du einen Mann gekuesst haettest, haettest du dich damit
selbst geoutet."
Daraufhin beschloss ich, MG erstmal fuer furchtbar spiessig und nicht-
spielenswert zu erklaeren. Und nachdem, was ich bisher festgestellt habe,
ist MG wirklich eines der 'spiessigsten' im Sinne von konservativsten,
braevsten, ruhigsten muds. Trotzdem kam ich danach auch noch oefters her,
denn erstens weiss man, ob das so stimmt, dass hier Menschengruppen
sozusagen 'diskriminiert' werden (n bisschen hart der ausdruck) und
zweitens kann man hier wundervoll metzeln und drittens hats hier die
komplettesten Beschreibungen, wenn auch nicht die ausfuehrlichsten
beschreibungen. Komplettest = alle details abgefangen, ausfuehrlichste =
pro detail kommt noch eine schoene, lange beschreibung (laenger als 1 satz)
Und natuerlich gibts auch einige wundernette Menschen hier :-)
(Mag sich jetzt angesprochen fuehlen wer will)

End of gruebel		Caradhras der ewige Prophet
PS: Oder End of Gedanken? Insofern muss ich Klinge schon ein bisserl recht
    geben

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



Re: Re: re: re: ....sexualitaet (Durian, 29. Aug 1994, 12:01:24):
Hmmtjamm ... kann man das wirklich raushoeren??

Ich kann mich nicht erinnern, etwas gegen Schwule und/oder Lesben gesagt
zu haben. Noch lann ich mich erinnern, die 'Witze' der beiden Spieler
als gut befunden zu haben. Wie man dann das Gegenteil von dem was
Flintnail etc. gesagt haben aus dem heruashoeren kann, ist mir schleier-
haft. Aber wenn man will, geht das scheinbar.
Nichts destowenigertrotz finde ich als schlechten Witz, wenn zwei
maennliche Charaktere heiraten, indem einer von beiden dazu kurz weiblich
wird. Bin ich deshalb spiessig?? Wenn Ihr meint, ich kann damit leben.
Ich finde es eher beleidigend fuer Schwule, wenn soetwas gemacht wird.
Und deshalb werde ich auch weiterhin keine Aenderungen bezueglich des
Geschlechts von Spielern vornehmen.
Unterdruecke in deshalb Minderheiten?? Diese Frage muss nicht beantwortet
werden, oder?

Fuer mich ist diese Diskussion damit (wahrscheinlich) beendet. Wenn
Minderheiten sich noch von mir 'unterdrueckt' fuehlen, koennen sie mir ka
schreiben ;-)

- Durian

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



Schwulenheirat (Freund, 29. Aug 1994, 13:32:25):
Hi,
meiner Meinung nach sollte es homosexuelle Heiraten im MorgenGrauen geben!
Es sollte doch jeder fuer sich entscheiden koennen und vor allem wollen,
welche Neigungen er a) im RL hat und b) im MG haben moechte.
Man sollte u. a. auch bedenken, dass die Charaktere im MG nicht
unbedingt auf die RL-Menschen rueckschliessen lassen, wenn das auch
bei vielen so ist.

Also, hier ist meine "offizielle" Aufforderung an alle entscheidungs-
befugten Magier, die aktuelle hetero-sexuelle Uebervorteilung im MG
endlich zu beenden.

Natuerlich, bevor einer ein Re: schreibt, gilt dergleichen auch fuer
eine Lesbenheirat.

Noch eine WARNUNG: Spieler zappen ist auch unter den Umstaenden verboten,
dass sie sich kuessen, wenn sie beide gleichgeschlechtlich sind!

Ein Freund fuer alle Faelle (Sheriff) - Knuddeleisbaer.

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



KLarstellung (Durian, 29. Aug 1994, 13:45:47):
Flintnail und ich haben ueber ganz andere Leute geredet. Die, von denen ich
geredet habe, wollten in der Tat nur heiraten, Flint meinte welche, die
sich offen gegen Lesben und Schwule ausgedrueckt haben. Ich habe beide
in einen Topf gewurfen. Ich hoffe, man verzeiht mir das, es lag einfach
irgendwo auf der Hand. Also vergesst alles Vorhergewesene am besten!

Ja, schlagt mich, haut auf mich ein, ich brauche das!! :-)

- Durian

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



Re: Schwulenheirat (Boing, 29. Aug 1994, 15:42:14):
Eigentlich hatten wir schon vor laengerer Zeit beschlossen, die Beschraenkung
einer Heirat aufMaennlein-Weiblein rauszunehmen, dass das immer
noch drin ist wundert mich doch sehr. Chris (von ihm ist der Code)
hatte sich auch damit einverstanden erklaert, wenn sich also
jemand dazu berufen fuehlt die Hochzeitszeremonie dementsprechend
zu aendern, soll er sich an mich wenden.
  Boing

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



re: re: ....sexualitaet (Catweazle, 29. Aug 1994, 16:22:57):
Puh!
Ich bin ja so froh, das wir alle spiessig sind.
Ueberlegt mal wie das hier aussehen wuerde, wenn wir es nicht waeren!
Yours truly,
            Catweazle (geht jetzt erst mal Durian verpruegeln :)
                       wenn ers denn will :)), ausserdem brauch er
                       das manchmal! )

PS: NEIN, ich bin kein Sado :-)))

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



Nett.... (Mephisto, 30. Aug 1994, 04:47:40):
Ups,wem ist den das eingefallen? Da will man mal die Harfe ausprobieren,und
um an selbige ranzukommen,versucht man,die Bachnymphe zu
metzeln.Was passiert?Man erblindet! Nett,nicht? Ohne Vorwarnung! Und heilen
kann mans auch nicht!
Mephisto,der schon mal um nen Blindenhund angesucht hat:))

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



Re: Catweazle (Durian, 30. Aug 1994, 08:32:30):
Oh nein, Cat ...

Nicht schon wieder hauen, bitte. Jeder andere, aber nicht Du, Du bist
immer so grob :-)

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



Re: Schwulenheirat (Beldin, 30. Aug 1994, 18:17:20):
Wie waers wenn ihr die Heirat KOMPLETT abschafft und stattdessen eine Art
BLUTSBRUEDERSCHAFT einfuehrt... Ist NEUTRALER ;)

Beldin ;)

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



nett die zweite (Mephisto, 30. Aug 1994, 20:12:05):
Aja,da faellt mir ein,man kanns heilen:))

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



Re: Re: Re: Schwulenheirat (Beldin, 31. Aug 1994, 16:49:56):
Ok, ok... ich sehe schon: Das naechstemal verlege ich so eine Bemerkung von
mir in die Rubrik WITZE - damit es auch JEDER merkt WIE sie gemeint ist ;)
Beldin. (Punkt - auch ohne Magier zu sein moeglich (tm) )

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



Re: Re: Schwulenheirat (Silvana,  1. Sep 1994, 09:01:00):
Hochzeiten komplett abschaffen??? Das kommt nicht in die Tuete! Ich BIN
verheiratet und will es auch bleiben. Ihr wollt doch wohl nicht all die
gluecklich verheirateten Leute scheiden!
Entruestet, Silvana   (immer noch verliebt wie am ersten Tag...)

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



Schwulenhochzeit ? (Hardil,  1. Sep 1994, 17:30:33):
Sorry Leute,
IMHO hat eine Schwulenhochzeit in einem Fantasy-MUD (wie dem MorgenGrauen)
eigentlich nix zu suchen.
Mir schiessen da mehrere Sachen durch den Kopf zu dem Thema:

Ich finde es toll, wenn sich im RL Leute dafuer einsetzen, dass die
Diskriminierung Homosexueller abnimmt. Aber das ist ds RL.
Wir sind hier in einer Art Rollenspiel. Jeder uebernimmt einen Charakter, er
spielt eine Rolle. Manche benehmen sich im MUD wie im RL, manche lassen
einfach nur die Sau raus.
Neeissklar.
Was passiert nun, wenn jetzt die Rolle "Schwuler" in diesem MUD besetzt
werden kann ?
Vielleicht fuehlen sich einige Schwule dann weniger diskriminiert, weil sie
ihr wahres Ich nun hier ausleben koennen. Aber ist dazu nicht das RL da ?
Vielleicht freuen sich ein paar Leute, die schon immer mal einen "Schwulen"
spielen wollten. Aber was kommt dabei heraus ? Aus meiner Erfahrung aus RPGs
ist das eher ein Bumerang: die Leute spielen ihre "schwulen" Charaktere so
uebertrieben und klischee-
haft, dass das fuer einen "echten" Schwulen wirklich beleidigend sein
muesste.
Ich sag: Finger wech von der Schwulenhochzeit (so wie andere Leute RL-Politik
aus dem MUD raushalten wollen, gehts mir mit RL-Sexualitaet). Wenn sich jemand
unbedingt outen will, ist das seine/ihre Sache, aber das kann doch auch im 
privaten Rahmen passieren.

Just my 2 pennies :)

                     Hardil
            (Flames on me) :)

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



Re: Schwulenhochzeit (Durian,  1. Sep 1994, 17:48:16):
Re: Schwulenhochzeit ? (Durian,  1. Sep 1994, 17:46:35):
Hardil, kann mir nicht helfen, aber was Du sagst klingt wirklich
vernuenftig. Wir sollten sehr aufpassen, was wir tun. Ich fuer meinen
Teil bin jedenfalls strikt gegen RL-Politik im Mud ... und aehnliche
Dinge die aus dem RL um jeden Preis ins MUD integriert werden
muessen.

- Durian

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



Argl... (Yendi,  5. Sep 1994, 20:54:16):
Kann mir mal jemand die Episode(n) schildern, an denen sich diese ganze
Diskussion hier entzuendet hat? Oder wenigstens den Originalartikel
"Homosexualitaet" von, glaube ich, Flintnail veroeffentlichen?
Der scheint irgendwie ;> geloescht worden zu sein (zu alt?).

So, und jetzt (obwohl uninformiert was den Ursprung angeht) ich:

SENF ON

Lasst die Leute doch heiraten, wen sie wollen!

SENF OFF

...und TSCHUESS!!!


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



Re: Argl... (Flintnail,  6. Sep 1994, 15:52:38):
Den Original-Text habe ich selbst geloescht, denn ich wollte keine grosse
Diskussion provozieren. Ich finde, das ist nicht noetig! Entzuendet hat sich
das Thema an zwei relativ unabhaengigen Geschichten:

1. Zwei Spieler betitelten erst sich und dann dann diverse andere Spieler als
'schwule Sau','lesbische Hure','schwuler Deutscher' usw....; einer von beiden
'stahl' dann die gesamte Ausruestung eines unbeteiligten Spielers (nach dessen
kurzfristigen Tod) und verhoehnte ihn solange durch Rufe, bis derjenige sich
mit 'nem Playerkill 'raechte'!(An dieser Stelle erschienen interessanterweise
10-20 Grats-Meldungen fuer den Moerder!). Dazu hatte ich geschrieben...darauf
bezog ich mich, da hier uebelster (nach meinem Empfinden!) 'Rassismus'
(=Personengruppe als Rasse (ein biologisch uebrigens nicht definierbarer
Begriff!) bezeichnen und verbal verdammen!) betrieben wurde!

2. Zwie andere Spieler, beide maennlich, wollten heiraten und 'spielten (?)'
schwul! Naja, aus oben genannten Gruenden bin ich hier kann ich daran nix
schlimmes finden, solange es nicht die Wuerde anderer (also prinzipiell
Schwuler) verletzt! Aber bei dieser Geschichte kann ich nicht unbedingt
Stellung beziehen, da ich hiervon nur im Nachhinein hoert....!!!

Also: Ich will hier nix totschweigen, aber jeder der etwas dazu sagen wollte,
hatte wohl genug Gelegenheit..und wenn ihr eine vorliegende
Schwulenproblematik (?) diskutieren will, der soll das tun...die Geschehnisse
der letzten Zeit sind dafuer als Grundlage nicht unbedingt relevant...denke
ich!

So ich hoffe der Text ist noch lesbar....bin naemlich gerade auf dem
Piratenschiff und ueberall huepfen irgendwelche Fische im Text rum....
	bis denne ...Flint...

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



re: Hardil (Elric,  8. Sep 1994, 14:57:50):
Wieso meinst Du, dasz das MG ein no sex mud ist ? Heteros koennen doch
heiraten. und eine Hochzeit ohne Hochzeitsnacht, oder -naechte, ist ja wohl
ein Witz. Daher: auch Schwule & Lesben sollten heiraten duerfen, wenn sie sich
unbedingt ihre Liebe urkundlich bestaetigen lassen wollen. Zu Thema
uebertriebene Darstellung von Schwulen: das geht auch ohne Hochzeit. Hier kann
man ja (zum Glueck)von sich geben, was man will
Elric (der meint, dasz das MG immer auf die eine oder andere Art das RL
reflektiert.)
EOS

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



are: Hardil (Quasimodo,  8. Sep 1994, 15:14:36):
Tach auch!

Es tut mir leid, aber ich konnte in keinem der vorangegangenen Artikel einen
wirklichen GRUND dafuer finden, warum man jetzt auch gerechnet den
Homosexuellen die Heirat verbieten sollte und den Heteros nicht. Das
Argumument es wuerde sie vor Diskriminierung schuetzten war ja wohl ein
Scherz, oder?

See you,
    Quasimodo

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



Re: re: Hardil (Beldin,  9. Sep 1994, 10:14:27):
Meine Meinung dazu:
Es gibt schon zuviele Leute, die Gegebenheiten, Aeusserungen und anderes aus
dem MUD auf die dahinterstehende Person DIREKT reflektieren.
D.h. viele Leute nehmen ALLES fuer bare Muenze was ihnen von anderen
dargeboten wird. Daher bin ich der Meinung, dass man diese Art von
Realitaetsverlust nicht auch noch UNTERSTUETZEN sollte. Es nervt schon so
genug.
BTW: Was hat das hier eigentlich in "polizei.beschwerden" zu suchen?

TYFR --- Beldin ;)

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



xdo (Grimmborn,  9. Sep 1994, 18:15:51):

Aus gegebenem Anlass moechte ich darauf hinweisen, dass Magier, die ihren
Befehl xdo mit mehr als 50 an mir ausprobieren wollen, damit rechnen sollten,
das Ergebnis hier in voller Laenge wiederzufinden. Inclusive einiger Zeilen
zum Magiervertrag.
Ich will bestimmt kein Spielverderber sein, aber es muessen doch Grenzen
sein. Eine 100 ist leichter getippt als das Ergebnis erlebt...

In diesem Sinne,
                Grimmborn der Atheist

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



Re: xdo (Beldin,  9. Sep 1994, 18:40:49):
Beldin ist zwar noch nicht lange Magier, findet solche "Scherze" mit SPIELERN
nicht besonders komisch!
Der Betreffende sollte froh sein, dass Grimmborn nicht gleich ein
Rundschreiben an die Erzmagier geschickt hat.
In diesem Sinne - vorher ueberlegen ist besser als hinterher jammern!

EOS --- Beldin *grmpf!!!*

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



Mehr saach ich dazu nich... (Hardil, 12. Sep 1994, 10:59:29):

Meine FML zur Homo-Ehe: Leute, das ist ein FANTASY-MUD. Es ist nicht dazu
geschaffen worden, RL-Probleme zu loesen. Besinnt Euch doch einfach mal auf:
Questen loesen, Monster killen und nette Kommunikation.
Betonung: NETTE.
D'accord ?

Hardil

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



Re: Re: xdo (Cifer, 12. Sep 1994, 14:43:27):
Hi,
uebrigens, Grimmborn, liest der Magier auch die ganzen Zeilen auf dem Screen,
ja nachdem, was er mit xdo macht. Er wird damit selbst aufgehalten. :))
Cifer.
Cifer
Cifer
Cifer
Cifer
Cifer
:)

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



xRe: xdo (Catweazle, 12. Sep 1994, 20:18:13):
Eben!
Und er weiss was er tut!
Und er weiss was ihn erwartet!
Der Spieler nicht. Und DEN haelt es u.U. noch viel eher auf.
YT,
       Catweazle

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



Seher, die es nicht verdienen! (Pra, 15. Sep 1994, 15:41:57):
Hallo liebe mudder,

mir ist da doch heute etwas gaaaaaanz peeeinliches aufgefallen: Wie ihr alle
sicher wisst, braucht man um Seher/in zu werden 1116 AP's.
Wir haben zur Zeit 31 Seher/innen, und alle haben sicherlich hart geschuftet,
um diesen Status zu erreichen. Aber wenn sie ihn einmal erreicht haben,
brauchen sie nichts mehr zu tun, um ihn zu behalten - sie sind Seher und
bleiben es auch. Aber jetzt kommt's: 15 der 31 Seher/innen haben weniger als
1116 AP's! Das sind die, die sich auf ihren Lorbeeren ausruhen! Einmal den
Status erreicht denken sie, sie haben es geschafft! Ist das fair? Ich
fordere:
Seher/innen, die es bleiben moechten, muessen auch dafuer kaempfen! Es geht
nicht an, dass es Seher/innen mit unter 1000 AP's gibt!
Degradiert sie!
Und motiviert sie damit, weiterzumudden!

Pra (heute mal missguenstig, neidisch und eifersuechtig)


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



Re: Seher, die es nicht verdienen (Rochus, 15. Sep 1994, 16:15:07):
Zu Deiner Information: Der Seherstatus ist genau dazu da,
dass sich die Seher ausruhen koennen, denn sie haben es verdient!

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



Re: Re: Seher, die es nicht verdienen (Silvana, 15. Sep 1994, 16:23:40):
Wow! Solch nette Worte von Rochus? Pass auf, dass du nicht deinen Titel also
grausamster Magier wieder los wirst!   ;-)
Aber mal ernsthaft: Kurz nachdem ich Seherin wurde sind innerhalb kuerzester
Zeit zwei neue Questen angeschlossen worden (Ups - drei!) und ploetzlich lag
die Punktzahl der noetigen Punkte hoeher als die Zahl der vorher erreichbaren
Punkte. Nun war ich die Zeit ueber im Krankenhaus und konnte nicht spielen um
mein Seher-Dasein zu verteidigen... Willst du wirklich in so einer Situation
ploetzlich alle Seher degradieren?

Silvana - verwundert.

PS: Mit Ausnahme der SchneemannQuest hab ich uebrigens alle Questen als
Spielerin geloest... ;-)

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



Re: Re: Re: Seher, die es nicht verdienen (Asmodis, 16. Sep 1994, 03:17:12):
Rochus und grausamster Magier? Noe, den Titel hat Troy fest in seinen Haenden
!!
Man schaue sich nur mal das neue Bild in Moulokin an: Unmengen von Waechtern,
mit der
von Rochus' Drachen, die sich auch noch gegenseitig unterstuetzen (nicht
alle, aber viele),
sowie noch die berittenen Stadtwaechter, die beste Waffen und Ruestungen
haben, und schwer
zu fassen sind, weil sie sich dauernd bewegen.

Kurzum: Die Hoelle auf (Morgengrauen-)Erden.

                            Ciao, Asmodis(Level 26)

P.S.: Warum tauft Troy Moulokin nicht einfach in Fort Knox um?
     Eine besser bewachte Bank gibts doch nicht!!!

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



Re: Re: Re: Re: Seher, die es nicht verdienen (Asmodis, 16. Sep 1994, 03:19:39):
upps, da fehlte ein Stueck, es sollte 'mit der Staerke von Rochus' Drachen'
heissen', kommt
davon, dass mir dauernd die Stadtwaechter 'in den Text reiten' :)

              Ciao, Asmodis(immer noch Level 26, obwohl in Moulokin
gestorben)

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



Re: Re: Re: Re: Seher, die es nicht verdienen (Tzuiop, 16. Sep 1994, 11:21:10):
Nachdem bisher nur die Magier beschimpft wurden, geht es jetzt also mal gegen
die Seher !
Na gut : Als Angehoerige einer kleinen, elitaeren Minderheit moechte ich dann
vorschlagen, dass ein Spieler nur noch dann in unseren Kreis aufgenommen
wird,
wenn alle Seher dem zustimmen. Ich stelle mir das etwa so vor, dass die Seher
eine
Woche Zeit haben, einen Kandidaten abzulehnen. Dieser wird dann auf den
Status
eines Anfaengers zurueckgestuft, damit er nochmal viel Motivation zum Spielen
hat :)
Natuerlich kann man nur Magier werden, wenn man vorher Seher war ....

Was haltet ihr davon ?

Tzuiop


P.S. Fuer den Fall, das dieses Konzept realisiert wird, stimme ich schon mal
gegen Pra.

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



MACHTWORT!!! (Yendi, 16. Sep 1994, 15:34:55):


Leute, diese Rubrik ist nicht dazu da, ueber die boesen Magier zu laestern!
Sie soll reserviert sein fuer ERNSTHAFTE Beschwerden, Notfaelle, Anzeigen
etc!



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



Re: Seher, die es nicht verdienen! (Beldin, 17. Sep 1994, 11:21:30):
Sehr unkollegial mein Bester!
Und da wird dann Stimmung gegen MAGIER gemacht??? Ich frage mich ob nicht
jeder das Recht haben sollte sich irgendwann und irgendwo mal auf seinen
"Lorbeeren" auszuruhen!!!
Ausserdem frage ich mich ob ein PROPHET die Demotivation von einigen SEHERN
ueberhaupt einschaetzen kann?!

EOS Beldin.

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



Re: Re: Seher, die es nicht verdienen! (Silvana, 17. Sep 1994, 11:48:56):
Hmmm Eigentlich hat Pra ja recht. Wer die Bedingungen fuer einen Job nicht
merh erfuellt, wird in der freien Wirtschaft auch rausgeschmissen oder
zumindest degradiert. Also sollte man doch konsequenter Weise dann auch allen
Propheten, Zauberer, Rittern, Amazonen .... ihre Stufe aberkennen, wenn sie
fuer die entsprechende Stufe zu wenige EP haben (z.B. durch Tod). Vielleicht
fuehrt man dann noch ein, dass man beim Tod je einen Punkt bei den Stats
verliert (schon um im Vergleich zu anderen muds gleiche Arbeitsbedingungen zu
schaffen) und dafuer 4 Zufaellige neue ZT finden kann (das Erhoeht die
Spannung).
Die Folgen waeren durchaus positiv: Innerhalb kuerzester Zeit wuerden die
Spielerzahlen auf die Haelfte sinken, es gaeb weniger unzufriedene Spieler
(weil weniger Spieler), wir Magier haetten unserer Ruhe un koennten endlich
mal in Ruhe programmieren. Fragt sich dann nur, fuer wen...?

Sich auf ihrem Punkte-Polster von der Archie-Quest im Krankenhaus ausruhend:
      Silvana (ist diese ewigen Diskussionen leid)

PS: Vorsicht! Der Artikel enthaelt Ironie!

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



Re: Re: Re: Seher, die es nicht verdienen! (Silvana, 17. Sep 1994, 11:50:19):
Man entschuldige die zahlreichen Fehler im letzten Artikel. Haette mich zum
schreiben nicht ins Elfendorf stellen sollen...

Nochmals - Silvana

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



Aus jetzt! (Freund, 19. Sep 1994, 13:15:11):
Gruess Gott,
Yendi zustimmend moechte ich darauf hinweisen, dass der Sinn dieser
Rubrik durch die letzten Artikel sehr in Frage gestellt wurde.
Daher werde ich am naechsten Montag alle Artikel, die sich nicht mit dem
Thema polizei.
beschwerden auseinandersetzen, persoenlich und selbst loeschen.
Betroffene koennen bis zum Fristende ihre Artikel in eine dafuer vorgsehene
Rubrik verlegen.

Diese Rubrik dient den Beschwerden ueber Ungerechtigkeiten anderer,
moralisch oder gesetzlich.

Bis dann ein fuer Ordnung sorgender Freund.

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



Artikel verlegen (Freund, 21. Sep 1994, 13:15:29):
verlege artikel <nr> nach <rubrik.name>
Ein Verleger-Freund.

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



Selbstjustiz (Knoerry, 22. Sep 1994, 13:58:06):
Ich finde es prima, wie mitfuehlend hier somancher Magier ist, dass er sich
in Angelegenheiten von Spielern mischen muss... Nachdem ich einen Spieler in
der Arena im fairen Kampf besiegt hatte, wollte ich ihm die Moeglichkeit geben
sein Geld sich wiederzuholen indem ich es einem kleinen Vogel gab.

Nach kurzer Pause kehrte ich an mein Terminal zurueck und es fehlte mir exakt
jener Betrag...nicht, dass ich mich wegen 17 000 muenzen aufregen wuerde, aber
dass ein Magier meint er muesse Robin Hood spielen find ich ziemlich sch...
ausserdem HABEN wir einen Sheriff, wenn einem was nicht passt...
Ok...der Kerl soll sich in den Hintern getreten fuehlen...
	MfG Knoerry

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



Re: Selbstjustiz (Gunnar, 22. Sep 1994, 14:20:28):

Also ich weiss ja nicht ueber was sich Knoerry da beschwert. Ich finde das
ganz in Ordnung. Etwas Gerechtigkeit muss schon sein. Okay, ich bin vielleicht
nicht ganz objektiv, da ich der Betroffene bin, aber andererseits.....:-)
Darum, wer immer es war ist sich meines Dankes sicher *grins* Es ist schoen
zu wissen, dass in diesem Mud auch schlechte Taten bestraft werden.
Mit schadenfrohem Grinsen an Knoerry
Gunnar:-)))))

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



Re: Re: Selbstjustiz (Jof, 22. Sep 1994, 21:14:03):
 Nein, Knoerry hat 100% Recht - ein Magier bekommt am Anfang seines Magier-
Daseins klipp und klar gesagt, das er ab sofort NICHT mehr aktiv am Spiel
teilnimmt (teilnehmen darf) - wenn ein Spieler in der Arena umkommt,
ist das SEIN Bier - er musste da ja nicht hingehen. Und dann soll sich
BITTESCHOEN kein Magier da einmischen ...

 Auch in den Hintern tretend,
  Jof

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



Raeuber ! (Hardil, 23. Sep 1994, 16:34:20):
Liebe Polizei!

Ich moechte mich bei Dir beschweren, weil mir unbekannte Netzraeuber meine
schoene Reboot-Entschaedigung sofort gestohlen oder vielleicht gar nicht erst
ausgezahlt haben. Da nuetzt die beste Meldung "Du findest 5864 Muenzen wieder"
nix, wenn die dann
nicht sich in meiner Boerse befinden.
Aber ich habe ja volles Vertrauen in unsere MUD-Polizei, die diese Raeuber
sicherlich finden wird.
Alles Gute, liebe Polizei!

Hardil :)

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



zt (Grimmborn, 25. Sep 1994, 08:20:04):

Naja, der Artikel kommt spaet, aber ich fuerchte, unaktuell ist er nicht. Ich
nehme mal die Pyramiden als Aufhaenger, obwohl das kein Einzelfall sein wird.

Im Bereich der Pyramidenquest sind (mindestens) vier zt versteckt. Davon hab
ich zwei bekommen, ich bin etwa vom Maerz. Angeschlossen wurden die Pyramiden,
aehhh, naja, irgendwann im Sommer. Ich habe also lange Zeit nicht einmal die
Moeglichkeit gehabt, diese zt zu bekommen! Nun ist es bekanntlich so, dass es
eine Liste der moeglichen zt gibt, von denen man beim ersten einloggen 80
(nein, NICHT 76) zufaellig zugeteilt bekommt. Mit anderen Worten: In diese
Liste sind effektiv nicht vorhandene zt eingetragen! So geht das nicht. Wer
auch immer diese Liste verwaltet: Es kann doch so schwer nicht sein, darauf zu
achten, dass nur zt aus ANGESCHLOSSENEN Gebieten verteilt werden. Und wenn
eine Gegend (Pyramiden war ja wohl so ein Fall) wieder abgehaengt wird, dann
muessen auch die zt solange von der Liste. Gut, Pech fuer die, die sich dann
vor dem abhaengen eingeloggt haben, aber man muss doch nicht noch mehr Leute
ins Leere laufen lassen als notwendig, oder?

Ach ja, wenn jetzt das Argument kommt: "Du hast ja dafuer 4
Bonuszaubertraenke", will ich gleich entgegnen: NEIN, die hab ich nicht dafuer
sondern fuer den Fall, dass ich nicht alle finde. Abgesehen davon, dass ich
stark glaube, dass ich mehr als 4 nicht zugaengliche zt habe erhalten koennen,
sind diese Bonus-zt fuer meine Dummheit, NICHT fuer die Unfaehigkeit von
Magiern, die Uebersicht zu behalten (oder was auch immer der Grund ist..).

In der Ueberzeugung, die richtige Rubrik gewaehlt zu haben und leider schon
wieder meckernd,
                 Grimmborn der Atheist

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



Re: zt (Silvana, 25. Sep 1994, 09:44:30):
Hi, Grimmborn!

Wie kommt es, dass ich dir -obwohl inzwischen Magierin- so oft bei deinen Be-
schwerden recht geben muss? Bin wohl noch nicht lange genug Magierin... ;-)

Also zum Thema ZT: Das ZT in der Liste zugeteilt werden, die man nicht finden
kann, weil es den zugehoerigen Raum gar nicht erst gibt, ist in der Tat alles
andere als fair. Dennoch denke ich, dass es moeglich waere, die ZT so einzu-
bauen, dass auch alte Spieler in einer neuen Region ZT finden koennen. Man
muesste die neuen ZT nur in der Liste 'zwischensortieren'. Die Magier werden
dazu eine etwas genauere Beschreibung, wie ich das meine, in der Magier.entw.
finden... ;-)  Ich denke auf diese Art koennen 2 Probleme mit den ZT zwar
nicht
geloest, aber verbessert werden:
1.)   Es gibt in neuen Regionen selbst fuer die GanzUraltSeher noch evtl. was
      finden (an ZT). Somit bleibt die Motivation, diese Regionen nicht nur
zu
      erwandern, sondern buchstaeblich auf den Kopf zu stellen. Und wofuer
      schreiben wir sonst so endlos detailierte Raumbeschreibungen?
2.)   Die Wahrscheinlichkeit, dass jemand seine letzten ZT nur noch mittels
      Magierwerdung und anschliessendem Nachschlagen in der Liste findet
sinkt.
      Es gibt naemlich in der Tat ein paar ZT, die ich fuer eine ERHEBLICHE
      FRECHHEIT (!) gegenueber den Spielern halte, und die als
vergleichsweise
      einfach eingestuft werden. (Hallo, Zardoz... )
Leider liegt mir auf meinen Artikel zu diesem Thema noch keine Antwort vor,
aber ich hoffe, dass sich da noch das eine oder andere tut...

Tschau for now, Silvana - heute etwas rebellisch.

PS - Eigentlich haette das in die Rubrik Entwicklung gehoert...

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



Tschudigung... (Silvana, 25. Sep 1994, 09:45:51):
Meine Guete, was fuer ein Satz..... Ich glaub ich muss noch etwas ueben...
Silvana

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



re: zt (Durian, 26. Sep 1994, 09:08:16):
Hallo zusammen!

Richtig, ja, in den Pyramiden konnten selbst die alten Hasen ZT's finden,
richtig, ja, vorher, ging das nicht, richtig, ja, das ist totale Scheisse,
NEIN, nicht ueberhaupt nicht wahr, es gibt keine andere Region wo dies so
ist.
Grund: (eine Anekdote aus dem Naehkaestchen) Die Pyramiden waren bereits vor
eineinhalb Jahren anschlussfertig, sprich alle ZT's waren so richtig schoen
eingetragen und mehrere Spieler konnten sie finden. Okay, also ging
der verantwortliche Magier (so ein Schlumpf) durch die Region fuer den
Finaltest ... und war sensationell enttaeuscht von dem, was er da fabriziert
hatte. Also: Quest und Region werden erstmal nicht angeschlossen. Aehem,
moeglicherweise haetten dann die ZT's aus den Listen verschwinden sollen?
Nunja, in muehevoller Arbeit wurden dann die Pyramiden zu dem was sie jetzt
sind, und sie wurden angeschlossen, und alle alten Spieler waren ja ach
so freudig ueberrascht: endlich mal eine neue Region mit ZT's ...
Okay, schlagt mich von mir aus, aber es ist einfach so gewesen und ich kann
es nicht mehr rueckgaengig machen. Es bleibt nur eins festzuhalten. Dies ist
ein absoluter Einzelfall 9deshalb sind die Pyramiden auch kein BEISPIEL
sondern ein Volltreffer mitten ins Schwarze, Grimmborn :-)). Dies
ist nicht die Regel. Die Regel ist, dass ZT's erst knapp vorm Anschliessen
in die Liste uebernommen werden (war ja bei den Pyramiden auch so, nur
angeschlossen wurden sie nicht ...).
Okay, ich hoffe das klaert sich Sache, und bitte startet jetzt keinen neuen
Protestlauf. Ich weiss, dass das nicht die ideale Sache war, kann es aber
nicht mehr aendern. Freut Euch lieber ueber eine neue Region, in der selbst
IHR ZT's finden koennt, so war wieder SPannung dabei, oder??

- Durian

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



Re: re: zt (Zardoz, 27. Sep 1994, 09:16:34):
Die Pyramiden sind leider kein Einzelfall....ich habe noch drei weitere zt's
in Gebieten, die noch nicht angeschlossen sind.

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



Sterben bei Netztot =:( (Zuerileu, 13. Okt 1994, 00:45:27):
Sali zaeme,
Ich habe glaub noch nie in dieser Area was gemeckert auch wenn es sicher
vieles gaebe was man bemaegeln koennte aber nicht der rede Wert ist weil es
mehr ein detail als eine notwendigkeit waere.
Aber in der lezten Zeit hatte ich leider etwas viel Probleme mit dem Tot,
bezw. ich bin in kuerzerster Zeit 3 mal gestorben =:(. Gut, die ersten zwei
mal war es sicher faire gewesen ich bin selber Schuld wenn ich in der Arena
sterbe weil ich zu faul gewesen bin um tanken zu gehen und ich bin sicher
selber schuld wenn ich gestern ins Eis vom Weiher eingebrochen bin und weil
ich nicht Ende oder Schlaf ein getippt habe ertrunken oder erfroren bin.
Naja, und so eine Wundernase wie ich bin und halt doch wieder zur
erforschung von diesem Gelaende zurueckgekommen bin und ein zweites mal in
den Weiher eingebrochen bin war ich schon etwas schlauer und habe Schlaf
ein getippt, komme mit einem 2 Carakter wieder ins Spiel um die anderen um
Hilfe zu beten und muss dann ansehen das mein Carakter im NEZTOTEN zustand
Stirbt. Grimmborn sagte auch das es mit sehr grosser Warscheinlichkeit
einen bug ist und so fragte ich Harkon was er von der Sache haelt bezw. ob
er mir helfen koennte. Naja, ich musste dann erfahren das dies normal sei
und ich ja ende tippen konnte wo ich die Chancen dazu gehabt haette. Naja
und da hats mir den Loefel rausgehauen, ich finds echt eine frechheit das
man im neztoten zustand im Weiher sterben kann. Ich mag mich erinnern das
ich mal in einen Sumpf reingeraten bin und mich mit 'Schlaf ein' retten
konnte um dann hilfe hollen zu koennen. Ich finde eine gewisse Chance
sollte ein User bei solchen wirklich fiesen Fallen doch wenigstens haben,
oder wollt ihr wirklich einfach nur Morgengrauen so hart machen wie
moeglich und jede moegliche Chance rauben ? Denn, ohne schlaf ein hast du
keine Chance, wenn du in den Weiher einbrichst dann bist du in der
kuerzester Zeit tot das du nichts tun kannst. Also, liebe Magier gebt es
doch zu das kann sich hier nur um einen Bug handeln oder ist das Leben
wirklich so unfaire ?. Wenn ja was halten die anderen Spieler von der
Sache, findet ihr das Faire ?

Mit freundlichen Gruessen   ZueriLeu -Delphin-


                          _/|
                         /DLP\
                         \7  7\
                             .::.
                             .:.:.
                             :.::.
                         ,,;:,.:;:,
                        ,,,,,,,,,,,,,
                          ,,,,,,,,,






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



Re: Sterben bei Netztot =:( (Durian, 13. Okt 1994, 09:15:11):
(Bezug: Artikel von Zuerileu, Don, 13. Okt 1994, 00:45:27)
Hallo!

Ich kann Zuerileu nur Recht geben. Es geht ja eigentlich weniger darum, dass
die Spieler mit schlafe ein sich retten koennen, sondern es geht ja auch
darum, dass ploetzlich die Leitung zusammenbricht und man keinen Einfluss
mehr auf das Spielgeschehen hat. Und dann ist es, so denke ich, extrem
unfair, die Spieler dann noch sterben zu lassen. Und das diese #$#%#%$#
netztoten Spieler sowieso ein Greul fuer alle Magier sind, brauche ich
zwar nicht zu erwaehnen (:-)), aber das ist kaum eine Entschuldigung sowas
durchgehen zu lassen.

- Durian

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



Re: Re: Sterben bei Netztot =:( (Beldin, 13. Okt 1994, 13:20:08):
(Bezug: Artikel von Durian, Don, 13. Okt 1994, 09:15:11)
Hi alle zusammen!
Meiner einer ist - in den fruehen Tagen des Spielerdaseins - auch schon mal
gestorben, weil in netztotem Zustand ein Monster weiter draufeingehackt hat.
Ich weiss nicht ob das ein Einzelfall war, oder ob es noch so sein kann
heutzutage, aber man sollte das in diesem Zusammenhang auch gleich
mitueberpruefen finde ich.

Bye ... Beldin ;)

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



Re: Re: Re: Sterben bei Netztot =:( (Engywuck, 13. Okt 1994, 14:23:23):
Hallo!
Also ich hab das frueher mal mit meinem Zweiti ausgetestet. Ohne Ruestung,
vorsicht 0 und dann auf Hippe drauf.
Gestorben ist dabei, auch nach viertelstuendigem Kampf, keiner von beiden.
Also mir waere das neu...

Tschuessi, Engywuck

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



Re: ... Sterben bei Netztot ... (Gatsby, 13. Okt 1994, 21:37:33):
Hmm, eigentlich ist es doch normal. Entweder stirbt man oder man rettet
sich vorher durch ein 'ende'. In beiden Faellen verliert man seine
Sachen, aber mit 'ende' keine Punkte.
Ich habe als Spieler auch lange gedacht, ich koenne mich mit 'schlafe ein'
noch retten, bin aber oft genug dabei gestorben! :((
Wenn man durch ein Lag netztot wird, ist das natuerlich fies. Aber
unterscheiden kann man das (denke ich) nicht.

 GATSBY, nur mal so in Erinnerungen schwelgend


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



Re: Re: Sterben bei Netztot =:( (Caradhras, 14. Okt 1994, 13:12:54):
Hm, Durian, also wenn bei mir meine Leitung zusammenbricht, bin ich
niht netztot. Sondern ich bin noch eingeloggt und idle vor mich hin, obwohl
es mich gar nicht mehr geben duerfte. Ich weiss allerdings
nicht ob das bei anderen auch so ist.

   tschoe    Caradhras der ewige Prophet

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



Re: Hilbert (Jof, 18. Okt 1994, 08:15:01):
(Bezug: Artikel von Grimmborn, Mon, 17. Okt 1994, 20:38:51)
 Wenn diese Meldung erscheint, hat Dir offenbar jemand den Stab gecloned -
und Dich in diesem nicht als Besitzer eingetragen. Das ist kein 'genereller
Bug', sondern eher ein Feature des Stabes. Das der nicht von mir ist,
kann ich mehr dazu nicht sagen :)

 Jof

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



Re: Re: Hilbert (Li, 18. Okt 1994, 09:59:52):
(Bezug: Artikel von Jof, Die, 18. Okt 1994, 08:15:01)
Also ich weiss nicht, wie es mit Grimmborn war, aber NIXIhou ist das gleiche
passiert, und da weiss ich, dass sie nicht gecloned wurden, bzw, dass er sich
den Stab selber geholt hat.
Also doch eine  BUG!?
Li

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



geclonter Stab (Grimmborn, 19. Okt 1994, 18:07:49):

Also wirklich, "Jof", aus dem Alter, dass ich mir Sachen gerne clonen lasse,
bin ich raus, das ist unter meiner Wuerde. Dafuer bin ich nicht Seher, ich hab
schliesslich meinen Stolz... ;-)

Gekraenkt:
          Grimmborn der Atheist

P.S. (Ich lerns nie!) Der Artikel bezieht sich auf den Artikel von Jof, Die,
18. Okt 1994, 08:15:01)
P.P.S Glaubst Du, ich wuerde den Verlust eines illegalen Stabes an die grosse
Glocke haengen? ;-)

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



ANZEIGE (Yantro, 26. Okt 1994, 21:38:58):
Hallo,

schade, dass es soweit kommen musste, aber ich kann und will das nicht mehr
ertragen.....

Hiermit zeige ich den Magier Campino wegen Beleidigung meiner Person und
sonstigem Schlechten Benehmen bei Sheriff Freund an und fordere Konsequenzen!

Ich beziehe mich auf Campinos Plan, der unter der Guertellinie ist, auf seine
ach so witzigen Blondinenwitze, auf das immer noch unentschuldigte snoopen
anderer Spieler und auf den aktuellsten Fall, seinen Artikel vom 26.Okt.1994
20:07:19  in der rubrik "witze" aktuell artikel Nr. 39.

Ich wuerde mich freuen, wenn sich noch andere melden wuerden, die von ihm
oder seinem Zweiti "KurtCobain" belaesstigt wurden, damit dieser Mensch
endlich in seine Schranken gewiesen werden kann...

Ein Stinksaurer    Yantro:(

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



ANZEIGE!! GRMLL%#$^%$^# (Guybrush, 27. Okt 1994, 20:12:09):

Ich moechte hiermit hochoffiziell Slyfox anzeigen, der anstatt den auch ihm
bekannten Seiteneinstieg fuer das Blutsaugerschwert zu benutzen, mich beim
Questen stoerte. Wie soll ich rausfinden, welche tuer wie aufgeht, wenn er
alle oeffnet? und das nach dem dritten Versuch meinerseits und einem Reboot!!
Er reagierte auch nicht darauf, dass ich ihm vorher gesagt habe, dass ich in
den Katakomben bin.
Wofuer ist der zweite Eingang dann gemacht worden??
Ich halte es fuer eine Riesenschweinerei.

Der stocksaure Guybrush

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



Re: ANZEIGE!! GRMLL%#$^%$^# (Flintnail, 27. Okt 1994, 20:13:09):
(Bezug: Artikel von Guybrush, Don, 27. Okt 1994, 20:12:09)
Recht so, Guybrush!!!;)

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



Nochwas (Guybrush, 27. Okt 1994, 20:14:27):
auch auf mehrmaliges Ansprechen reagierte er nicht


Guybrush %^$%$^%$

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



Re : alles vorher (Campino, 27. Okt 1994, 20:33:06):
Einer weiser Mann sagte einmal:
'Aendere alles das, was du aendern kannst,
 Nimm das mit Gelassenheit entgegen was du nicht aendern kannst
 und erlange die Weisheit diese beiden Dinge zu unterscheiden.'


:)

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



Re: ANZEIGE!! GRMLL%#$^%$^# (Asmodis, 27. Okt 1994, 21:02:41):
(Bezug: Artikel von Guybrush, Don, 27. Okt 1994, 20:12:09)
Hmm, angesichts der Tatsache, dass es viel leichter ist, alle Monster auf dem
Friedhof, als alle Monster im Seiteneinstieg niederzumetzeln, halte ich
hiermit fuer Slyfox. Ich wuerde es auch so machen, wenn ich das BS-Schwert
haben wollte.

                      Ciao, Asmodis

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



Re: Re: ANZEIGE!! GRMLL%#$^%$^# (Asmodis, 27. Okt 1994, 21:03:42):
(Bezug: Artikel von Asmodis, Don, 27. Okt 1994, 21:02:41)
upps, Rechtschreibvehler, soll 'zu' statt 'fuer' heissen

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



Re: Re: ANZEIGE!! GRMLL%#$^%$^# (Charon, 27. Okt 1994, 21:27:33):
(Bezug: Artikel von Asmodis, Don, 27. Okt 1994, 21:02:41)
kann ich asmodis nur zustimmen, bin einmal durch den seiteneinstieg gegangen,
reicht fuers ganze leben.
sollte ich das bs jemals nochmal haben wollen, wuerde ich glaube ich auch die
quest nochmal machen

Charon

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



re:anzeige (Thorin, 27. Okt 1994, 21:38:45):
Ich hab einmal durch den Seiteneingang versucht, das reichte... Auch ich geh
lieber durch den Hauptgang, und heisst der Seiteneingang das man
Katakombenverbot hat ? Ich denke doch nicht... Ist doch nur ne Alternative
(die allerdings soweit ich weis selten
genutzt wird).
Anders koennte Boing ja auch generell ausschliessen, dass jemand, der den
Quest schon geloest hat, ueberhaupt an den Schluessel drankommt...
Thorin

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



Bumerang !!! (Bungle, 28. Okt 1994, 11:00:53):
Halloechen!

Das war zwar glaub ich auch schon mal in der Diskussion,aber ich weiss nicht
mehr,was dabei rausgekommen ist.Deswegen frag ich hier noch mal an.Bzw.
beschwere. :)
Nachdem ich endlich *aechz* Wolpertinger geloest hatte,hielt ich also auch
zum ersten Mal hocherfreut den Bumerang in meinen zittrigen Haenden.Leider war
das so spaet abends,dass mich der Sicherheitsdienst wieder aus dem Pool
pruegeln musste.
Nun komm ich heute wieder rein (bzw. raus, Wargon :), und siehe da
crash/reboot was auch immer.
Alles weg was solls aber leider leider leider auch der schoene hart
erkaempfte Bumerang!
Und das,ohne ihn auch nur ein einziges Mal benutzt haben zu koennen (oder
so).Das macht wirklich keinen Spass.
Zumal man Wolpertinger nicht so auf die Schnelle noch mal loesen kann oder
das ueberhaupt moechte....

Meine Frage lautet also: Warum isser nich crashfest?
Ach naja eigentlich 'ne bloede Frage,ich weiss schon was jetzt
kommt....stimmt ja auch irgendwie....aber tropsdem!
Oder: Gibt's den auch noch irgendwo anders? (AUSSER im Seherladen,ihr
Witzbolde! :)

Also,irgendwie traurig,Euer Bungle....

PS: Im Notfall darf auch an mich gemehlt werden.

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



Re: re:anzeige (Boing, 28. Okt 1994, 11:42:01):
> Anders koennte Boing ja auch generell ausschliessen, dass jemand, der den
> Quest schon geloest hat, ueberhaupt an den Schluessel drankommt...

Kann ich machen, werde ich auch machen, wenn sich die Beschwerden haeufen.
  Boing

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



Nebeneingang:) (Yantro, 28. Okt 1994, 13:14:12):
Hallo,

es wundert mich etwas, das ihr alle so genervt seit vom Nebeneingang fuer das
BS...  Ich finde ihn viel einfacher, als die Quest und es geht auch schneller
:)

Vielleicht macht ihr irgendwas falsch oder vielleicht mache ICH auch was
falsch, dass ich keine Probleme habe......*grins*

Grade Asmodis sollte keine Probleme haben... er hat doch viel mehr
Kampferfahrung als ich :)

Nur als Tip... erst ueberlegen, wer der Gegner ist und was er tut und dann
erst metzeln...

             Euer Yantro:)

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



Re: Bumerang !!! (Ketos, 28. Okt 1994, 14:04:05):
(Bezug: Artikel von Bungle, Fre, 28. Okt 1994, 11:00:53)
Er ist nicht resetfest weil der Bumerang zu gut ist.
Ein Crash/Reset gleich nach Questende ist Pech.
Wem das passiert kann sich an mich wenden, ich pruefe das und gibt ihm noch
einen Bumerang zum ausprobieren.
Man koennte ueber einen autoloading Bumerang nachdenken, nur muesste sich
dieser nach einer Weile abnuetzen oder aufgefressen werden. ;)
- Ketos -

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



Re: re:anzeige (Flintnail, 28. Okt 1994, 14:56:16):
(Bezug: Artikel von Thorin, Don, 27. Okt 1994, 21:38:45)
Tja..also ich bin noch kein Seher und nehme grundsaetzlich den Nebeneingang,
denn
 a) hab ich die BSS-Diskussion durch nen boesen Artikel gestartet...
 b) hab ich nich so'ne tolle Unix Maschine sondern nen MSDose..d.h. ich muss
alles von Hand machen...
 c) hab ich auch keine griffbereite Kompettloesung zur Hand bzw. kenne die
Katakomben auswendig...

d) hm...mit 15000-20000 Muenzen ist der Lich (heisst es nicht eigentlich
Liche?) leicht zu schaffen...und die Grabunholde sind nur 'ferner liefen'...


  ....ok, aber ich sehs ja ein...wenn zuviele den Nebeneingang benutzen,
werden die Monster da verschaerft....macht weiter so, aber stoert die
FriedhofsNewbies nicht!!!;)

     Flintnail

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



Re: Nebeneingang:) (Asmodis, 28. Okt 1994, 15:11:47):
(Bezug: Artikel von Yantro, Fre, 28. Okt 1994, 13:14:12)
Hmm, Yantro, anscheinend hast du kein Makro fuer die Katakomben :)

                         Ciao, Asmodis

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



Re Bumerang... (Grimmborn, 28. Okt 1994, 16:10:50):
Ja, gehoert eigentlich auch hier in die Rubrik (Freund wollte doch die Rubrik
eigentlich von Diskussionen freihalten...). Bezug: der crashfeste Bumerang,
Ketos.
Also, ich verwende gelegentlich einen Bumerang und ich mache die Erfahrung,
dass die sehr schmackhaft sein koennen, obwohl ein "iss bumerang" nix bringt,
keine Ahnung, was die Monster dran finden...
Ich schaetze, dass ich gut einen Bumerang pro Woche verliere, so im Schnitt.
Nun bin ich eher oft hier drin, aber ein crashfester "Questbumerang" waere
doch somit nicht zuviel, oder?

Ach ja, weswegen das in diese Rubrik gehoert, ich wollte folgendes anmelden:
Wegen Diebstahls und unerlaubten Aufessens eines Bumerangs melde ich an
Schlabbermurks (2-3 mal), Eisriese, Titanwalze, Troll, Anfuehrer der Goblins
und Tox Utat (bei dem das wohl Absicht ist...), ungefaehr in chronologischer
Reihenfolge. Zeugen: die jeweiligen repfiles (ausser beim Goblinanfuehrer, da
hatte ichs eilig, weg zu kommen...)

Bumerangverbrauchend,
                       Grimmborn der Atheist

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



Re: Re: Re: ANZEIGE!! GRMLL%#$^%$^# (Hate, 29. Okt 1994, 18:30:10):
(Bezug: Artikel von Asmodis, Don, 27. Okt 1994, 21:03:42)
Nunja, moeglicherweise lauft ihr Gefahr, dass dieser Weg fuer Euch
unzugaenglich wird.

Denkt mal drueber nach.
Hate.

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



Re: anzeige (Boing, 31. Okt 1994, 11:55:51):
(Flintnail)
Die Monster des Nebeneingangs werden nicht verstaerkt, soweit ich mich
erinnere habe ich noch keines meiner Monster naechtraeglich verstaerkt
und das will ich auch weiterhin so halten.
  Boing

PS: Was macht das eigentlich in polizei.beschwerden?

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



Re: Re: Re: ANZEIGE!! GRMLL%#$^%$^# (Nixihou, 31. Okt 1994, 13:16:33):
(Bezug: Artikel von Charon, Don, 27. Okt 1994, 21:27:33)
also ich finde den seiteneingang nicht so schwer. kann man da wirklich blind
werden? ich hab ihn nun 2 mal probiert und nichts ist passiert
sag ok er ist ein wenig kostspielig, da man 4-5 mal nachtanken muss aber
sonst...

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



Re: Re: Bumerang !!! (Nixihou, 31. Okt 1994, 13:19:56):
(Bezug: Artikel von Ketos, Fre, 28. Okt 1994, 14:04:05)
ist zwar eigendlich keine direkte antwort aber betrifft auch die bumerans (?)
was ist eigendlich aus den farbigen bumerans geworden? koenne wir uns die
nicht anmahlen? (man kann sie dann besser auseinanderhalten)

Nixi

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



Re: Re: Re: Re: ANZEIGE!! GRMLL%#$^%$^# (Charon,  3. Nov 1994, 18:46:13):
(Bezug: Artikel von Nixihou, Mon, 31. Okt 1994, 13:16:33)
ja, man kann da blind werden. ohne odo und seine hilfe waere ich es
wahrscheinlich jetzt noch

ciao, charon

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



quest (Zuerileu, 11. Nov 1994, 00:53:14):
Sali zaeme,
Wie soll ich Seher/Magier werden wenn immer neue Qurest rauskommen, ich war
froh das ich den groessten teil hintermich gebracht habe und ich nur noch 3
oder 4 quest vor mir hatte und nun sehe ich rein und es sind 6.
Wie soll das noch enden? hmm ?=:(( ich hasse quests fuers leben aber wie ich
das anschaue werde ich wohl erst in 10jahren seher so wie ich das sehe =:(

cu Zuerileu (der ewige unfreiwilliger Spieler)
                          &
              Telefonrechnungen fuer mud zahlen =:(

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



Re: quest (Hate, 11. Nov 1994, 23:01:50):
#! rn=Zuerileu rt=784511594
Momentan wirst Du wohl noch mit der Aktivitaet der Magier leben muessen,
aber wir werden bald eine Grenze in Abenteuerpunkten festlegen, so dass man
nicht alle neuen Abenteuer machen muss. Also reg Dich nicht auf, denn wenn
Du mal Magier sein solltest und ein neues Abenteuer schreibst, moechtest DU
bestimmt auch, dass es schnell ins SPiel gebracht wird.

Hate.

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



re:hate (Zuerileu, 12. Nov 1994, 12:07:04):
Sali hate,
Ja du hast schon recht da waer ich sicher auch froh drumm, nur wenn die AP
immer erhoent werden dann werde ich niee magier denn ich kaempf mich schon
genug ab mit den jetzigen quests. =:( Aber ich verstehe euch schon =:))

tschuess zaeme..   euer groesster Fan Zuerileu

=:))

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



Klingels Haus... (Knoerry, 14. Nov 1994, 01:40:16):
Ich moechte hiermit Protest gegen den Bau von Klinges Haus beim Drachenbaby
einlegen !
Gegen diese Willkuer und Ignoranz muss etwas getan werden!
An einen so einzigartigen und sagenumwobenen Ort, wo soviele Freundschaften
geschlossen wurden, wo soviele Spieler ihren ersten starken Gegner bezwangen,
entschlossen und vereint ihren Ruhm oder Verderben in der Finsternis der
Schreckenspitze  zu finden, entstand nun am Fusse jenes legendaeren Berges
inmitten eines Heidebiotops ein haessliches Seherhaeuschen (ohne Beschreibung
sogar).
Also so geht's nicht!! Ich fordere den sofortigen Abriss dieses Schandfleckes
und das Verbot der Bebauung der Hochebene!
Knoerry...

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



Re: Klingels Haus... (Fyt, 14. Nov 1994, 20:47:59):
#! rn=Knoerry rt=784773616

Ich haette auch gegen die Bebauung dieses Fleckchens Erde protestiert,
wenn die Bebauungsplaene oeffnetlich gemacht
worden waeren...

Ein trauriger Fyt

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



Frachtfies. Aeh, gut. (Irsi,  9. Dez 1994, 00:32:43):
Frachtgutraetsel.

Alles gemacht, fast fertig, im Flugzeug drin, ploetzlich "Lady dingens
geht.".
Prima. Trotzdem weitergemacht, ist ja praktisch fertig, das Raetsel.
"gib skelett an geist"...
"Der Geist sagt: Du brauchst noch jemanden, der das Flugzeug fliegen kann!".
Schon klar, die Lady fehlt.

Ich find es einfach tierisch unfair, bei einem Raetsel die Zeit so knapp
zu bemessen, dass man es praktisch nur machen kann, wenn kein Mensch im
Mud ist, damit man alles zuegig und rasend schnell tun kann.
Zeitbegrenzung is ja okay, aber doch nicht so, dass man das Raetsele nur
loesen kann, wenn man es auswendig kennt. Wenn man auch nur an einer Stelle
ueberlegen muss und zoegert, kann mans vergessen.

Natuerlich kommt man dann auch nicht mehr weg, die Lady fehlt ja und
zurueckrudern kann man daher nicht mehr. Abgesehen davon, dass das
Ruderboot natuerlich auch weg ist.

Also "ende" tippen, noch mal Ruestung zusammenkloppen und die ganze
Sch...oene Quest nochmal. Schoen ist sie ja, aber der Zeitdruck is
absolut unfair.

Irsi. Soll nochmal jemand sagen, Rochus sei hart aber fair.

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



Re: Frachtfies. Aeh, gut. (Grimmborn,  9. Dez 1994, 00:41:52):
#! rn=Irsi rt=786929563
Hmmm....
Ich bin mittlerweile so locker 15 Mal durch Frachtgut gelaufen und muss
sagen, es gefaelt mir immer besser. Es verliert halt doch durch die
Komplettloesung.
Das mit Janet ist seltsam, da musst Du einen ganz dummen reset erwischt
haben, wir haben sie mal zu dritt gemacht (2*reset bei Janet, 2* auf dem
Flugzeug) ohne dass sie abgehauen ist.
Ob Du sie vielleicht nur geaergert hast? Sie gilt ja als eher...aeh...weniger
anschmiegsam. Also, man kann der Quest viel vorwerfen, aber Zeitdruck hab ich
nicht empfunden.

Hmm, gehoert das in die Rubrik? Wenn nicht, Freund, feel free to loesch! ;-)

Grimmborn der Atheist. Langsam aber sicher Rochus-Fan.

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



Re: Frachtfies. Aeh, gut. (Asmodis,  9. Dez 1994, 01:00:46):
#! rn=Irsi rt=786929563
Irsi, man kommt aus dem Flugzeug raus, nur eben nicht mit dem Ruderboot :)

                     Ciao, Asmodis

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



Re: Re: Frachtfies. Aeh, gut. (Asmodis,  9. Dez 1994, 01:02:52):
#! rn=Asmodis rt=786931246
Ach so, die Stichworte 'senk deinen Blick' und 'Origami' duerften dir
vielleicht dabei helfen :)

                     Nochmal Ciao, Asmodis

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



Re^3: Frachtfies. Aeh, gut. (Thorin,  9. Dez 1994, 16:55:12):
#! rn=Asmodis rt=786931372
Ich muss Asmodis zustimmen. War schwer zu finden, wie man ohne Ruderboot und
Quest wegkommt, habs aber selber auch gefunden... Wenn auch nach arg langer
Zeit.
Aber man muss halt ein bischen nachdenken ...
Und die Lady ist mir auch noch nie abgehauen, wuesste auch keinen Grund
dafuer, ausser man versucht anzubaendeln...
Winke, Thorin

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



Re^4: Frachtfies. Aeh, gut. (Irsi, 10. Dez 1994, 00:30:29):
#! rn=Thorin rt=786988512
1. Ging es mir nicht darum, wegzukommen, sondern darum, einen unfairen
Sachverhalt in dem Raetsel geaendert zu kriegen.

2. Angebandelt hab ich garantiert nich mit Lady Janet. Das wuesste ich.

3. Das Raetsel hab ich in der Zwischenzeit geschafft.

Irsi. Liebt Lady Janet garantiert nicht sondern jemand gaaaanz anders.

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



beschwerde (Orktoeter, 27. Jan 1995, 14:16:54):
Zwischen Dienstag und Mittwoch hat ein Magier einen meiner Alis vergewaltigt
!!!
Als ich am Mittwoch froehlich meinen Begruessungsali mit
DARTSPIELEDARTSPIELEN.... loslassen wollte kam anstelle dessen :
WOLPITRETENWOLPI....  ICH FINDE DAS UNERHOERT !!!!
Dazu sollte ich vileicht erwaehnen, das vor einiger Zeit schoneinmal ein
Magier an meinen setmin und setmout rumgespielt hatte.
Ich verlange keine Bestrafung des Schuldigen, aber vileicht sollten die
Magier mal wieder darueber Nachdenken (sorry, nicht DIE sondern einige) ob
sowas in Ordnung ist......

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



Re: beschwerde (Grimmborn, 27. Jan 1995, 15:18:36):
#! rn=Orktoeter rt=791212614

Hmm, mal abgesehen davon dass ich persoehnlich gegen diese Einheitsalis bin
(und da besonders auf Beileid...), wo liegt Dein Problem?
Ich meine, da hat jemand Spass gehabt, ne Menge Leute haben sich amuesiert,
passiert ist eigentlich gar nichts. Das hier ist ein Spiel!
Wenn mir jemand in den ganzen setzbaren Meldungen puzzled dann seufze ich
hoechstens und laechel gequaelt (Uhrmeldung momentan bei mir: Es ist %d Uhr
und ich gehe wieder allen auf den Geist.). Aber ich reg mich doch nicht auf,
dazu ist die Idee doch viel zu gut, oder? Und wenn einer der
Flohbeutel-Hardliner WOLPITRETENWOLPI... bruellt dann ist das doch lustig?
Oder solltest Du tatsaechlich so verbohrt sein dass Du darueber nicht lachen
kannst? Faend ich schade...

Grimmborn der Atheist. Und Hydratoeter (kann ich auch drueber lachen...)

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



Re: Re: beschwerde (Jof, 27. Jan 1995, 16:35:58):
#! rn=Grimmborn rt=791216316

 Du brauchst nicht von 'jemandem' zu sprechen, ich hatte mich doch schon bei
Dir entschuldigt und gesagt, dass das nicht wieder vorkommt, wenn Du's so
tierisch ernst nimmst (remeber? Deine Reaktion: Dreh doch mal an den Aliasesn
von Ryne, oder macht es nur Spass, Wolpiefreunde zu aergern). Ausserdem hatte
die ganze Aktion auch ihr gutes: Ich hab gemerkt, das man in
polizei.beschwerden nix posten kann - ist geaendert (wie man sieht)

Jof

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



Re^3: beschwerde (Orktoeter, 27. Jan 1995, 16:46:24):
#! rn=Jof rt=791220958
Ich erinnere mich gut, aber ich wollte dich nicht persoenlich als den
Uebeltaeter blossstellen. Es reichte mir, das oeffentlich zu machen, in der
hoffnung, das es nicht wieder passiert.
Oder ist es magiern (Goettern) prinzipiell Erlaubt , an Spielerfiles zu
manipuleren ohne deren wissen ?

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



Alibeschwerden (Aranya, 27. Jan 1995, 16:49:54):
Wann lernt ihr endlich, persoenliche Streitigkeiten aus der Zeitung zu neh-
men und sie per mail oder muendlich zu loesen? Nichts gegen Rede und Gegenre-
de, aber irgendwann ist es fuer die meisten uninteressant, zuzusehen, wie
sich zwei Eier an den Kopf werfen.

Just IMHO
          Aranya

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



Re^4: beschwerde (Kretek, 27. Jan 1995, 17:02:01):
#! rn=Orktoeter rt=791221584
Ja, natuerlich duerfen die das, dafuer ist Jof z.B. ja ein GOTT, und Goetter
duerfen ALLES! (Magier duerfen dann auch fast alles...)  ;-)
Nee, mal im Ernst, ich versteh wirklich nicht, warum du dich hier so
monierst, Orktoeter! Das hier ist doch ein Spiel, kein bitterer Kampf um's
Prestige! An meinem Charakter wurde ja auch schon mehrmals rumgespielt
(Schnarch, Finger weg von meiner Rasse!), und ich finde das, ehrlich gesagt,
eher lustig, wenn da wieder mal kommt:
"Jemand teilt dir mit: Schau dich mal an. :)"
Ist dann immer ein interessantes Raetselraten: 1) Wer ist jetzt gerade
invis, 2) was hat er/sie denn nun schon wieder angestellt...?
Also, wie gesagt, ich finde sowas voellig OK.
(Hoffentlich hab ich jetzt nicht saemtliche Magier in Bloedellaune auf
irgendwelche Ideen gebracht...) ***grins***
Ergo: Have fun! Live is shit, MG is great! :)

c u l8er,
Kretek, angehender Seher und Ex-Schweinepriester :)

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



Re: Alibeschwerden (Jof, 27. Jan 1995, 20:19:34):
#! rn=Aranya rt=791221794
 Yep, right, sowas muss man nicht in der Zeitung besprechen - ich HATTE es
ja mit ihm persoenlich besprochen, vor seinem Posting.

 Jof

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



affe (Artram, 20. Feb 1995, 17:19:01):
Heute habe ich einen Blinden Affen angegriffen und der hat mich voll
abgemeuchelt.
Als ich dann nach meiner sterbeszene nachgeschaut habe, stelt ich mit
erschrecken fest
dass meine Vorsicht einfach so auf 0 gesetzt war.
Ich kann mich nicht errinnern so etwas je gemacht zu haben.
Ich wuesste gerne mal was da los war!


			Artram der totgezauberte


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



affe/2 (Artram, 20. Feb 1995, 17:25:31):
Der Fehler mit meiner Vorsicht hat sich erledigt war ein dummer
Ali Fehler (falsch angewandtes Ali!!)

Sorry


			Artram der verwirrte

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



protest (Orktoeter, 20. Feb 1995, 19:30:07):
Auf der RL-party in Muenster kam es zum Schlagabtausch zwischen der FgW,
vertreten durch Guldukat und den wahren Wolpifans, vertreten durch Orktoeter.
Beide Kombattanden standen auf jei einer Cola-Kiste, mussten eine Hand auf
den Ruecken legen und mit einem Kissen versuchen, den anderen aus dem
Gleichgewicht zu bringen.
Nach anfaenglichen Schwierigkeiten bei beiden Kontrahenten, lief der Kampf
eine Weile ziemlich unentschieden dahin, bis Orktoeter ein erfolgreicher
Schnellsruch gelang. Diesem Trommelwirbel war Guldukat nicht gewachsen, er
verlor seine Waffe und geriet auch noch aus dem Gleichgewicht.
darueberhinaus zueckte er auch noch eine illegale Waffe !
Wie verwundert war orktoeter, als Freund, der als Schiedsrichter fungierte,
Guldukat zum Sieger erklaeren wollte.
Auch, als sofort Boing einschritt und das Ergebniss in Unentschieden
umwandeln wollte kam bei Orktoeter keine Freude auf.
Wirklich schlecht war jedoch, das Boing, nachdem Orktoeter sich weigerte das
Unentschieden zu Akzeptieren und Guldukat die hand zu geben, sagte , das dann
eben Guldukat gewonnen haette.

Nichts gegen Guldukat, wenn es ein einfacher zweikampf gewesen waere haette
ich das Unentschieden akzeptiert, aber da dieser kampf stellvertretend fuer
dir FgW bzw. die echten Wolpertingerfans stattfand, muss ich leider darauf
bestehen, das die FgW verloren hat.

In Erwartung der Dinge, die da noch kommen werden , OrkT, Wolpifan :)

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



Re: protest (Boing, 20. Feb 1995, 19:42:21):
#! rn=Orktoeter rt=793305007
Ich glaube du warst besoffen ... ich habe nie gesagt, dass Guldukat gewonnen
hat, fuer mich war es ein klares Unentschieden, da BEIDE Kontrahenten mit
illegalen Mitteln gekaempft haben ... ausserdem war das ein RL-Duell, hat
also nichts in polizei.beschwerden zu suchen.
Ich frage mich ausserdem wieso Du immer erst viel spaeter so Sachen
wieder neu aufwaermen musst?
  Boing

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



Re: Re: protest (Sysop, 20. Feb 1995, 20:23:48):
#! rn=Boing rt=793305741
>>Ich frage mich ausserdem wieso Du immer erst viel spaeter so Sachen
>>wieder neu aufwaermen musst?

Ist doch klar ... jetzt isser wieder so nuechtern, dass er tippen kann ;-))))

-- Sysop (der langsam glaubt, er haette doch saufen sollen ... Erinnerungen
koennen quaelend sein ;-) )

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



Re^3: protest (Toss, 20. Feb 1995, 20:27:36):
#! rn=Sysop rt=793308228
Obwohl man glauben koennte, dass er noch stramm ist, so wie er schreibt ;)

Toss

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



Re: protest (Guldukat, 20. Feb 1995, 23:38:30):
#! rn=Orktoeter rt=793305007
Was erwartest du? Wie jede gute Quizshow war auch hier das Ergebnis
natuerlich vorher abgesprochen! ;)
Also, keep cook und don't panic!
GD

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



Einspruch (Beldin,  3. Mar 1995, 13:26:18):
Wie schon in "allgemeines" gesagt: Schafft den Einspruch ab - er wird eh nur
fuer Jux und Dallerei (aeh Dollerein ;) verwandt (nach meiner Kenntnis), da
die gesamte Hochzeit eh ein grosses Happening ist..
Also: Wozu die ganze Aufregung wenn man die Ursache sooo leicht beseitigen
kann!

YTB *grinsend*

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



Re: Einspruch (Dancer,  5. Mar 1995, 07:06:25):
#! rn=Beldin rt=794233578
Nochmal: ich baue daran.
Natuerlich wird es einen Einspruch geben. Allerdings nicht WAEHREND der
Zeremonie. Die Hochzeiten werden 'aushaengen' und dann kann jeder seinen
Einspruch mit Begruendung OEFFENTLICH auf die Tafel schreiben. Der
oder einer der sponsorenden Magier kann diesen Einspruch dann gelten lassen
oder nicht. Pro Person wird ein Einspruch moeglich sein, jedoch erst ab
Level 5, weil alles unter Level 5 ist entweder Zweiti oder sollte sich
erstmal um Hornissen und Schmetterlinge kuemmern als um anderer Leute
Hochzeit ;)

Dancer


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



Re: Re: Einspruch (Yendi,  6. Mar 1995, 13:01:06):
#! rn=Dancer rt=794383585

Kommt dann auch die finale Scheidung? *lechz*


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



Pluenderung bei der MayaQuest? (Sarwane,  7. Mar 1995, 15:28:20):
Ray und ich begannen, die MayaQuest durchzuspielen, und mussten dazu
natuerlich das heilige Schwert, das auch sehr gefragt ist, aus der Huette
holen. Ungefaehr 1.5 Stundenmusste ich warten, nur um je ein Schwert fuer mich
und Ray zu bekommen. Danach wollte ich, voll motiviert, die Schwerter in die
Maya Stadt bringen, wo sie mir abgenommen wurden, und in den Raum hinter der
Silbertuer gebracht wurden. Dort wartete Ray, um die Sachen in Empfang zu
nehmen, damit sie nicht abhanden kommen konnten. Doch scheinbar war auch diese
Massnahme zu wenig. Er suchte gerade die Sachen heraus, die nur mit Sicherheit
uns gehoert hatten, als ploetlich TOSS hereingestuermt kam, ein Schwert nahm,
und sich wieder aus dem Staub machte. Jetzt waren von unseren 2 heiligen
Schwertern nur mehr eines ueber. Kurze Zeit spaeter kam am Kanal Abenteuer die
Meldung, dass Ryne (bekanntlich TOSS's Erstie soeben 'Das Geheimnis der Maya'
bestanden hatte obwohl er laut Aussage eines anderen recht hochstufigen
Spielers, der auch auf ein Schwert wartete, mit Sicherheit keines gehabt
hatte. Was wirklich von Allem zu halten ist, kann sich jeder selbst
ueberlegen, fuer mich steht jedenfalls fest, dass bei diesem Abenteuer
zumindest ein Spieler unehrlich war, und Sachen genommen hat, die nicht ihm
gehoert haben, denn irgendwo muessen die Sachen ja hingekommen sein!
Ich habe schon viele nette Leute hier getroffen, aber wenn ich an solche
'Pluenderer' denke, sehe ich rot. Ich hoffe ich habe das nicht umsonst
geschrieben, und wenn ich es das 2. Mal versuche (hoffentlich ohne Reboot),
lassen diese Asozialen ihre dreckigen Finger von meinem Kram. Solche Vorfaelle
sind wirklich aergerlich wenn es um Gegenstaende geht die jeder braucht um das
Abenteuer zu loesen. (Entschuldigung an Felagund, der nach mir warten musste -
und das umsonst, da ich keine Zeit mehr hatte vor dem Reboot ein neues Schwert
zu holen und die Quest zu loesen!)

  Mit frendlichen gruessen an alle ehrlichen Spieler
  Sarwane (der Zauberer)

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



Re: Pluenderung bei der MayaQuest? (Toss,  7. Mar 1995, 16:18:56):
#! rn=Sarwane rt=794586500
Also, ich habe mir deinen Artikel nicht durchgelesen, denn beim ueberfliegen
las ich nur die worte "dieb" und asozialer, und da reichte es mir.
Zur Klarstellung:
a) sarwane, nicht alle gegenstaende in diesem Mud sind dein eigentum. Wenn du
behauptest, ich haette ein questtool von dir gestohlen, beweise es, und
verbreite hier nicht infame luegen, um andere spieler blosszustellen.
b) habe ich wieder (denn ich machte das qwuest zum zweitenmal) trotz meines
schwertes reichlich hauen muessen, um das quest zu loesen - also habe ich
wieder was falschgemacht, und das quest auf einem weg geloest, den auch DU
haettest waehlen koennen, wenn du dich nicht auf die komplettloesungen der
neben dir sitzenden (ray) verlassen haettest.

Vielleicht solltest du naechstesmal erstmal etwas nachdenken, bevor du hier
nicht haltbare beschuldigungen verbreitest.

Ryne.


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



Re: Re: Pluenderung bei der MayaQuest? (Ray,  7. Mar 1995, 17:21:13):
#! rn=Toss rt=794589536
so, jetzt geb ich auch noch meinen senf dazu
1.) sarwane und ich hatten 2 schwerter
2.) toss ist gekommen und hat eines genommen
3.) wenn ryne sagt, er hatte auch eines, bin ich mir sicher, dass das stimmt
    und der ganze letzte artikel ist unsinn. muss dann ein bug gewesen sein.

Um das ganze klarzustellen hier meine Entschuldigung bei Ryne, auch wenn ich
    den letzten Artikel nicht geschrieben habe, der das ganze ausgeloest
hat.
Anschliessen moechte ich eine Bitte an den verantwortlichen Magier, sich das
ganze noch mal anzuschauen, vielleicht stellt sich dann heraus, wo das letzte
Schwert geblieben ist.
Ich bin sicher, Sarwane schliesst sich dem ganzen hier an.

    Ray, der hofft, dass die Stimmung jetzt wieder besser wird

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



Re^3: Pluenderung bei der MayaQuest? (Asmodis,  7. Mar 1995, 17:29:15):
#! rn=Ray rt=794593273
Es scheint so, dass nicht alle sachen, die die mayas einem abnehmen im tempel
landen
kann sein, dass diesmal ein heiliges schwert dabei war.

          Ciao, ASMODIS(VERMISSTE 2 AMULETTE UND EINEN RING)

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



Re:Re:Maya (Ed,  7. Mar 1995, 18:33:46):
Asmodis hat recht!

Ich hatte saemtliche Ausruestungsteile von mir im Tempel nicht gesehen.
Der ganze Streit koennte sehr wahrscheinlich durch einen Bug in der Quest
ausgeloest worden sein (waer ja nicht der einzige Bug).

Ed, der in der Maya Quest schon Stunden gewartet hat.

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



Re: Re:Re:Maya (Stahldorn,  7. Mar 1995, 19:28:20):
#! rn=Ed rt=794597626

Tja, das klingt ja wirklich nach einer TOLLEN quest.

    STAHL wird "Maya" nicht so schnell machen...

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



Re: Re: Re:Re:Maya (Zephyr,  7. Mar 1995, 19:31:13):
#! rn=Stahldorn rt=794600900
Ich weiss gar nicht, was ihr alle habt - Maya war bisher die einzige
Quest, bei der (bei mir) alle Syntaxen auf Anhieb geklappt haben :))

Zephyr, mag die Quest!

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



Re: Re: Re:Re:Maya (Ray,  7. Mar 1995, 20:24:49):
#! rn=Stahldorn rt=794600900
doch, die quest ist gut!

 ray

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



Richtigstellung MayaQuest (Sarwane,  8. Mar 1995, 11:33:14):

Dieser Artikel soll Unklarheiten und Konflike zwischen diversen Spielern
beseitigen.

Mein Artikel 'Pluenderung?..' enthaelt im ersten Teil eine Erzaehlung der T
Vorfaelle, die uns bei der Quest passiert sind. Der 2. Teil ist meine
persoenliche Meinung, nicht mehr.
Da ich gehoert habe, dass es mehrere Bugs in der Quest gibt, und dass schon
verschiedene Gegenstaende verloren gegangen sind, muss ich auch diese
Moeglichkeit in Betracht ziehen. Wenn es also tatsaechlich ein Bug war,
muss ich mich bei allen Beteiligten entschuldigen, da ich mir eine schein-
bar falsche Meinung gebildet habe.
Die Worte Dieb und Asozialer waren im Artikel nicht auf Ryne/TOSS bezogen!
Nur fuer den Fall dass IRGENDJEMAND ein Schwert genommen hat, das nicht ihm
gehoert hat, finde ich die Bezeichnungen fuer denjenigen passend.
Wenn Du also nichts genommen hast, Ryne, versichere ich Dir hier, dass du
nicht damit gemeint warst - ich wuensche mir wirklich, dass es nicht so ist.
Nicht angebracht finde ich das Ignorieren meiner Freunde, die nichts mit der
Sache zu tun haben - ich bitte Dich, diese Sanktionen gegenueber den unbe-
teiligten aufzuheben!
Ein Wort zu Deinem Reply: UNWAHR ist, dass ich mich von Ray durch die Quest
schleppen liess. Ich hatte auch keine Komplettloesung, genau wie bei den ann
anderen Quests, die ich geloest habe. (Beschuldigung vom Postamt). Das ist
WAHR.
~R
Ich hoffe, dass Du, Ryne, siehst, dass ich Dich nicht vor den Leuten
schlechtmachen will, sondern erreichen moechte, dass es keine weiteren
aehnlichen Vorfaelle mehr gibt.
(Sei es nun Spieler, oder wie momentan am wahrscheinlichsten, Bug)

  Mit Bitte um Verzeihung wegen des Aufruhrs
                  Sarwane

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



Re: Richtigstellung MayaQuest (Anatol,  8. Mar 1995, 13:25:30):
#! rn=Sarwane rt=794658794

Ich moechte in diesem Zusammenhang auf den Befehl


             loesche artikel <nr>


hinweisen, mit dem man eigene Artikel loeschen kann.

Anatol ()

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



Re: Re: Re:Re:Maya (Grimmborn,  8. Mar 1995, 14:05:47):
#! rn=Stahldorn rt=794600900

Hmm, was erwartest Du von einer Quest, wenn Questen nicht von Sehern (oder
anderen Spielern) gestestet werden duerfen? ;-)

Grimmborn der Atheist. Hat nie getestet, testet nie und wird nie testen.
Ausserdem werde ich mich bekehren und strenger Glaeubiger an Jof, Boing und
Rumata werden... *grins*

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



Re^3: Re:Re:Maya (Ryne,  8. Mar 1995, 17:37:06):
#! rn=Grimmborn rt=794667947
Zu Zeile 3-5 von Grimmborn:

     VORSICHT !!! ER SCHWINDELT !!!!

Misstrauisch,

Ryne.

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



Schnupfen (Jaf,  8. Mar 1995, 21:38:17):

Da sich gerade ueber Toss und/oder Ryne beschwert wird:

Ich stehe im Elfendorf und unterhalte mich, Toss kommt rein
mit Schnupfen, ich bitte ihn, wegzugehen, keine Reaktion.
Er steckt einige Leute an, ich geh raus, um dem Schnupfen zu
entgehen. Toss kommt spaeter an, steckt mich auch an. Ich
geh wieder zurueck und unterhalte mich schnupfenderweise.
Toss kommt nach ner Weile wieder und freut sich, als er sieht,
dass alle Schnupfen haben. Kurz drauf mach ich Ende und logge
neu ein, geh in den Elfenbaum, in der  Hoffnung, schnupfen-
frei rumsitzen zu koennen. Toss sucht micht extra auf und
steckt mich nochmal an. Nochmal ausloggen und in den Schach-
raum (mit freundlicher Unterstuetzung anderer Leute). Nach
'ner Weile steht draussen ein Anfaenger und verlangt das
Verlassen des Schachraumes, da er die Quest machen will.
Seltsamerweise auch aus Muenster eingeloggt. Jetzt steh
ich in der Postkabine, der Spass fuer heute Abend isty wohl
dahin (und Toss' Spaesse kann ich als solche nicht nach-
vollziehen). Ich wiederhole also meine schon auf 'allgemein'
getaetigte Aussage :)

     T o s s   i s t   e i n   A r s c h l o c h.

So, jetzt fuehl ich mich schon deutlich besser.

Jaf.

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



Re: Schnupfen (Baron,  9. Mar 1995, 07:22:38):
#! rn=Jaf rt=794695097
Was zum Teufel ist so schlimm an Schnupfen?

Baron (der weiss was er von Leuten zu halten hat die solche nutzlosen Artikel
schreiben!)

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



Re: Schnupfen (Zuerileu,  9. Mar 1995, 07:34:12):
#! rn=Jaf rt=794695097
Sali Jaf,
Mann du hast probleme wegen so einem scheiss Schnupfen ? Ist doch nicht so
schlimm und geht von alleine wieder weg, erlich. Ich finde wenn die heutigen
Spielern hier keinen Spass mehr verstehen und nur noch Sturr durchs leben
(Morgengrauen) latschen dann macht Mudden keinen spass mehr. Leute nehmt doch
solche spaesse nicht so ernst und lacht mal darueber. Ich war als Spieler froh
ueber Ryne, Toeter, Asmodis und wie sie noch alle hiessen die mit mir zusammen
gespielt hatten und wir hatten Spass und sehr viel Fun und ich habe mich ueber
einen Schnupfen oder Mueckenstiche erlich nicht so aufgeregt das ich Leute in
der MPA als Arschloch betiteln gehe. Jaf nur zur allgemeinen information fuer
Dich Toss ist Ryne's zweiti also wir reden schon von der gleichen Sache.

Tschuess Zuerileu (ueber den neuen Ton wundernt!)

PS: Wenn Morgengrauen langsam zu einem Kindergarten muddiert empfehle ich an
jeden neu einloggenden Spieler Windeln und einen Schnuller zu verteilen,
vielleicht hilft das manchen auf die Spruenge das man nicht alles toternst zu
nehmen hat und das Morgengrauen ein Spiel und nicht die Realitaet ist. !

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



Re: Schnupfen (Toss,  9. Mar 1995, 08:22:02):
#! rn=Jaf rt=794695097
Ja, Ja, recht hast Du:

Toss IST ein Arschloch.
Ich kenne die Probleme mit ihm, aber es ist nicht gerade einfach, ihn unter
Kontrolle zu halten, das kannste glauben.
Aber Du kennst dieses Problem warschenlich nicht, das Zweities verursachen
koennen, denn in der Zeit wo andere sich zweities basteln sitzt Du heulend vor
deinem Rechner und weinst naechtelang wegen eines Schnupfens.
Ich habe Toss nach Deinem Artikel natuerlich prompt angemacht, und dabei von
ihm erfahren, wie es zu der Sache gekommen ist:
Bis man gemerkt hat, wie schnell es geht, ists schon zu spaet, nach 5 minuten
hatte ich fast alle spieler im mud angesteckt. un aber erzaehlte mir Toss, was
Du ihm daraufhin mitteiltest: "Jaf teilt Toss mit: Du bewichster
Schwanzlutscher, verpiss Dich aus dem Mud" - mitgeloggt gestern abend. Er hat
mir das log gezeigt.
Daraufhin sei er so gereizt gewesen, dass er tatsaechlich sich die Muehe
gemacht habe, Jaf ein wenig aufzusuchen, und ihm fuer den Fall vorzeitiger
Genesung einen weiteren Schnupfen zu verpassen.
Bezueglich Deiner Sprueche gegenueber Toss muss ich ihm Recht geben. Deine
Beschimpfung in der Zeitung fuegt sich ja nahtlos in diese Wortwahl ein.
Darueberhinaus ist es schlicht koestlich, wie sich jemand wegen eines simplen
Schnupfens aufregen kann. Wenn unser Mimoeschen Jaf wegen jeder kleinen Sache
sich in solcher Weise aufregen wird, hat er sicherlich noch viel Spass und
reichlich Blutdruckprobleme in seiner weiteren Zeit hier.
Jaf, ich verspreche Dir, ich werde Dir beim naechsten Treffen ein Taschentuch
mitbringen, damit deine unendlichen Traenenstroeme gestoppt werden und Du die
Trauer ueber die unglaublichen Missetaten des Toss vergessen kannst.

Und ein paar Windeln bringe ich Dir auch mit, denn endlich wissen nun alle,
wer unser groesstes Baby im Mud ist.

Danke Dir fuer diese Erkenntnis.

Ryne.

- geht jetzt Toss kloppen -

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



Re: Schnupfen (Rudiratter,  9. Mar 1995, 10:08:24):
#! rn=Jaf rt=794695097
Ich frag mich, was diese Hetzkampanie in der MPA zu suchen hat! Wenn Ihr
schon die ganze Zeit ueber irgendwelche Spieler rumnoelen muesst, dann macht
das in einer dunklen Ecke und nicht in der Zeitung.
Ausserdem zeugt es nicht von besonderem Anstand, solche Beschimpfungen hier
abzulassen. Wer so was schreibt, ist selbst ein ....
Schoene Gruesse
Rudi

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



noch was (Rudiratter,  9. Mar 1995, 10:11:40):
Meine Guete Jaf! Ich hab leider erst auf Deinen Artikel geantwortet und dann
erst die anderen gelesen. Da erfaehrt man ja pikante Details ueber Dein
Verhalten im MG. Tststststststs.
Rudi faengt an die Rumheuler extrem zu hassen.

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



Re: Schnupfen (Knoerry,  9. Mar 1995, 12:30:01):
#! rn=Jaf rt=794695097
Kann man den Schnupfen nicht als autoloader machen?

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



Re: Schnupfen (Bongo,  9. Mar 1995, 12:55:30):
#! rn=Jaf rt=794695097
Also ueber diese Beschwerde kann ich ja nur Lachen :-))) Ueber so eine
Kleinigkeit sich soo aufzuregen grenzt ja schon an das laecherliche :-))
Du musst wenigstens nicht das Niesen selbst eingeben, passiert doch alles
automatisch und scrollen wird dein Bildschirm ja auch
TSTST

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



Re: Re: Schnupfen (Yendi,  9. Mar 1995, 15:03:34):
#! rn=Baron rt=794730158

Naja, wenn man nichts Grossartiges vorhat, oder aber wie angestochen in der
Gegend herumrennt, dann ist der Schnupfen nicht stoerend.

Wenn man sich aber, wie ich, fast ausschliesslich zum Zeitungslesen und
Artikelschreiben einloggt, dann kann einem dieser simple Schnupfen fast den
Verstand rauben... Der Satz ist dann naemlich schnell im A...imer.


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



Re: Re: Schnupfen (Boing,  9. Mar 1995, 15:34:32):
#! rn=Toss rt=794733722
Toss, leidest Du so stark an Schizophrenie, dass Du jetzt schon als
Ryne unterschreibst? ;)
  Boing

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



Klasse Idee! (Catweazle,  9. Mar 1995, 16:24:57):
ALso ich fand die Idee von Zuerileu am besten.
Schnuller und Windeln! :-)

Yours truly,
          Catweazle *schwer grinsend*

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



Re: Klasse Idee! (Toss,  9. Mar 1995, 20:21:02):
#! rn=Catweazle rt=794762697
HEY!

Cat, das mit den Windeln war aber meine Idee !
(zumindest fuer Jaf, aber der braucht sie auch am dringendsten ;))

Ryne

P.S.: Boing, ich leide nicht unter schizophrenie, aber Toss ist der einzige
in der Familie, der eine aktuelle Zeitung hat ;) - fuer irgendwas muss ein
zweitie doch gut sein ;)

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



Re: Re: Schnupfen (Fyt, 11. Mar 1995, 11:31:26):
#! rn=Toss rt=794733722

So, jetzt muss ich mich doch mal einmischen :)

Jaf weiss sehr wohl, wie man sich als anstaendiger Zweitie zu benehmen
hat, und er tut es hin und wieder sogar selbst. Ich gebe
zu, dass ich ihm auch ab und zu einen Schnuller verpassen
wuerde, wenn ich einen haette :) Aber im allgemeinen ist
er ganz nett (&weiss uebrigens, dass er worte wie "Schwanzlutscher" nicht
in den Mund nehmen, geschweige denn aussprechen
wuerde). Ryne, ich glaube, Toss hat das Log einfach
gefaelscht. So.

f[2Fyt.

PS: Lass den armen Kleinen doch schnupfenfrei in der
    Gegend rumstehen, wenn er sich schon mal nett
unterhaelt.

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



senf (Snuggle, 11. Mar 1995, 15:16:32):
Senf On
Also gut. Ihr habts Euch selbst zuzuschreiben. Jetzt geb ich auch meinen Senf
dazu.
Jafs Ausdrucksweise war sicherlich ziemlich daneben und gehoert nicht ins MG,
zumindest nicht in die MPA.
Ich hatte auch mal meine Differenzen mit Ryne, aber ich hab zumindest gelernt
-ja Ryne, ich bin lernfaehig, auch wenn Du mich seitdem

ignorierst - dass man erstmal ne Nacht ueber ne Sache schlaeft, bevor man
einen allzu geharnischten Artikel in die MPA setzt.

So. Zur Sache. Der Schnupfen war ein Gag und man kann auch mal drueber
lachen.
Aber wie jeder laue Gag wird auch der nicht besser, indem man ihn wieder und
wieder aufwaermt und Leute, die nicht drueber lachen koennen,
sollte man auch tunlichst damit in Ruhe lassen. Es moege jeder nach seiner
Fasson selig werden hier, solange er damit nicht andere
beeintraechtigt. Und soviel Verstaendnis (bzw. Feingefuehl) sollten auch die
'boesen' Zweities aufbringen.
Wir koennen jetzt auch wieder die
steckst-du-mich-mit-schnupfen-an-tret-ich-deinen-wolpie-klein diskussion
aufwaermen, aber lasst doch
einfach die Leute, die den Schnupfen nicht spassig finden (wie ich uebrigens
mittlerweile auch- hatte ihn oft genug) damit in ruhe.

Senf Off


Die Vorwurf mit dem gefaelschten Log-File wift natuerlich ein sehr(!) boeses
Licht auf die Sache. Einer von Euch beiden sollte sich
beim andern entschuldigen und der andere das ganze annehmen und vergessen,
bevor die Sache richtig ueberkocht.

Und es danach nie mehr erwaehnen..

In der Hoffnung auf ein Ende dieser Angelegenheit
Snuggle

P.S. Rynes Antwort (oder wars Toss) war von der Wortwahl auch nicht viel
besser..

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



Re: Fehler Zatong ? (Boing, 13. Mar 1995, 15:55:05):
#! rn=Pak rt=795105016
Am 9.2.? Da bist Du frueh dran ... wie soll ich jetzt noch nachvollziehen,
was damals gelaufen ist?
  Boing

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



Re: Fehler Zatong ? (Toss, 13. Mar 1995, 16:16:51):
#! rn=Pak rt=795105016
weils gerade in ist ueber ryne, toss & co zu meckern:

Ich war schuld !

Ryne.

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



Raeuberische Anfaenger - Ursachenforschung... (Anatol, 13. Mar 1995, 16:20:39):

Es gab in letzter Zeit Beschwerden ueber 'diebische' Anfaenger.

Hm. Es gibt Leute, die raeumen per Makro MorgenGrauen auf. Vom Kartenspiel in
der Akademie bis zur Lederruestung auf der Hochebene ("Staubsauger"). Diese
Leute sind aber sehr wohl im Stande, sich den Krempel auch mit ein bisschen
"Ueberredungskunst" von NPCs zu holen.

Und nun die Frage:

Was bleibt da einem Anfaenger denn noch anderes uebrig, als zu nehmen, was er
nur irgendwie nehmen kann, wenn die Fundorte, auf die sonst angewiesen ist,
systematisch abgegrast werden?

Tut mir leid, dass man nirgendwo (ausser in den abgeschlossenen eigenen vier
Waenden) mehr seinen Schleimbeutel kurz ablegen darf, um sein Inventory zu
sortieren.

Anatol ()

PS: Natuerlich ist es nicht verboten. Aber ich toete ja auch keine Bienen,
    Wespen und Hornissen mehr, um die Stacheln zu verkaufen...


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



Re tot Zatong von Pak ! (Pak, 14. Mar 1995, 16:01:29):
Also das ganz hat sich natuerlich am 09/03/95 abgespielt. Von wegen nicht
fluechten koennen bei Zatong und Riss im Raum/Zeitgefuege.
Bitte im Antowrt

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



Betr.:Klasse Idee! (Catweazle,  9. Mar 1995, 16:24:57) (Toastbrot, 17. Mar 1995, 09:17:29):
Find ich auch...Dan haben ESC s was zum spielen und pc s was zu
lachen.Windeln und schnuller koennnten aber auch an PNC s "verliehen werden.
ein (sich schaemender...tschuldigung fragt Boing wieso)Toast

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



Re: Re tot Zatong von Pak ! (Anatol, 17. Mar 1995, 20:41:05):
#! rn=Pak rt=795193289

Ob RZG-Fehler oder nicht... von den Zatongs war schon immer die Flucht
unmoeglich, da die moeglichen Ausgaenge ja keine normalen Himmels-
richtungen sind. Seher koennen das per Fluchtrichtung managen, aber der
normale Spieler _muss_ die Flucht von Hand vornehmen.
Selbst wenn da ein Fehler sein sollte - Schadensersatzansprueche wirst
Du keine durchbringen.

Anatol () - steht auch bei den Zatongs im Log-File.

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



Re: Re: Re tot Zatong von Pak ! (Xanthia, 18. Mar 1995, 20:15:37):
#! rn=Anatol rt=795469265
Stimmt nich. :)) Die Flucht bei den Zatongs ist nicht unmoeglich.
Als ich das Friedhofs-Quest machte, habe ich mir zwei aliases fuer
"schwimme s" und "schwimme n" gemacht und damit konnte ich durchaus bei
den Zatongs fluechten. Es geht echt. ;-)
Euer Xanthia

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



Re^3: Re tot Zatong von Pak ! (Anatol, 18. Mar 1995, 20:53:27):
#! rn=Xanthia rt=795554137

Ich meine selbstverstaendlich die Flucht, die automatisch erfolgt, wenn
Deine Vorsicht unterschritten wird. Spieler mit einem Level <20 koennen
nur in die sichtbaren Ausgaenge rennen. Seher haben natuerlich da einen
Vorteil, da sie die Richtung mit einer gewissen Wahrscheinlichkeit vorher-
bestimmen koennen. Und DA geht dann halt jede Richtung. Auch ein
"schwimme n".

Anatol ()

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



Re^4: Re tot Zatong von Pak ! (Hobo, 18. Mar 1995, 21:12:39):
#! rn=Anatol rt=795556407
Fluchtrichtung schwimme s ist doch langweilig...
Ist doch so viel schoener:
  fluchtrichtung -'Huhu Lars, mach Dich bereit, ich kommeeeeeeeeee!

Oder etwa nicht?

        Hobo ;)

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



Re^6: Re tot Zatong von Pak ! (Anatol, 19. Mar 1995, 01:14:35):
#! rn=Anatol rt=795571865

Najaaa - Zugegeben, hat auch seinen Reiz.

Aber wenn der Krempel 5-7 mal auf "Allgemein" erscheint, isses oberpeinlich,
weil dann jeder weiss, dass man mit "Vorsicht 100" rumlaeuft.

Anatol () - laeuft recht oft mit Vorsicht 100 rum...

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



Re^5: Re tot Zatong von Pak ! (Grimmborn, 19. Mar 1995, 17:17:18):
#! rn=Hobo rt=795557559

Nicht neu, die Idee. Allerdings moechte ich darauf hinweisen, dass
Grossbuchstaben in der Fluchtrichtung dann gnadenlos gekappt werden und es so
aussieht, als haette man seine Shifttaste verkauft...

Grimmborn der Atheist. Hat fast nur so Fluchtrichtungen.

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



artikel spiesserei (Watching, 31. Mar 1995, 21:01:06):
hallo an alle, die manchmal bloedsinn im kopf haben!

folgender tatbestand:
ich hab mich mit dem charakter wanze eingeloggt, um einen test mit dem
tinyfudge zu machen. um niemand zu stoeren habe ich alles auf den kanal
"kultur" gesendet.
Mr. Hate hat mich dann bald mal rausgeschmissen, was ich zwar auch nicht ganz
verstehe, da auch ihm die Kanal-Befehle bekannt sein muessten.
das aergste war aber die drohung, die ganze netzdomaine cslab.tuwien.ac.at
zu sperren (das kam von einem magier!).
ich muss sagen, dass ich nicht viel davon halte, wenn jemand nur auf
abenteuer
oder auf allgemein sendet, das 10 stunden am tag tut, oder so, oder
ueberhaupt
herumbruellt (seitenweises bruellen war ja schon da). den kulturkanal kann
aber jeder fuer eine halbe stunde abschalten, wenn er sich durch dass
gestoert
fuehlt.
meine meinung:
einige teilnehmer am mg sind nicht sehr gut fuer das, was man unter
"fantasy" versteht und einfach zu verbohrt.
denkt euch euren teil dazu, und lasst aber die restlichen wiener accounts
in ruhe, mit fuer und wiederspruechen.

mit enttaeuschten gruessen
  WATCHING (nach dem brief suizidet)

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



Re:Spiesserei (Ed, 31. Mar 1995, 21:26:56):
Der Artikel von 'Watching' ist nicht korrekt!!!

Watching war NICHT mein Charakter!

Die 'Wanze' war von mir.
Sie hat folgendes getan: Sie ist in der Gilde gestanden und
hat ueber tf-makros die Gespraeche der Spieler + Namen auto-
matisch ueber den Wissenschaftskanal ausgegeben.
(Leider hat 'Wanze' keine interessanten Intimgespraeche auf-
geschnappt, wie es eigentlich geplant war)

Was ist passiert?
Einige Spieler haben spasshalber Wanze seitenweise die selben
Meldungen ausgeben lassen, um kraeftig den Bildschirm vollzu-
muellen, andererseits wurde Wanze von anderen Spielern
per Playerkill angegriffen (Fuer was ich nicht nachtragend
bin.. bei vorsicht 70 hatten sie keine Chance mich zu
erwischen :)

Als naechstes wurde ich als Uebeltaeter von Magiern ausge-
forscht und es wurde mir angedroht alle Accounts von unserem
MUD-Server der TU-Wien zu sperren (13 Spieler und 5 Magier
benutzen diesen Server)

Das Wanze ueber die Gildengespraeche ueber Kanal Wissen-
schaft sendete, ein Kanal den sowieso normal niemand
benutzt und den man abschalten konnte, war diesem Magier
egal.
(interessanterweise hoerten immer noch fast alle Mg-Spieler
auf diesem Kanal mit, auch die die nur schimpften)

Ich find Playerkill von Spielern in solchen Faellen okay,
(Wanze hatte ja ganze 0 EP zu verlieren) aber derartige
Magiereingriffe und -androhungen finde ich doch etwas
humorlos fuer 2 Stunden 'Wanze auf Wissenschaft'

Ed, die Wanze.

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



Re: Re:Spiesserei (Baron, 31. Mar 1995, 21:44:32):
#! rn=Ed rt=796678016
Ich verstehe nur Bahnhof! Wa soll der Bloedsinn denn? Warum begeht Watching
Selbstloeschung wenn Wanze Eds Charakter war? Mich hat Wanze nicht gestoehrt.
Neben der Moeglichkeit den Wissenschaftskanal abzuschalten kann man ja immer
noch "ignorieren".

Baron (den Zugang fuer einen ganzen Rechner sperren? *pruuust*)


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



Re: Re:Spiesserei (Asmodis, 31. Mar 1995, 21:53:33):
#! rn=Ed rt=796678016
Ed, du musst wissen, dass viele Wizards, Magier oder Goetter allergisch
darauf reagieren, wenn private Gespraeche in einem Raum angehoert werden.
Aeh, muss abgehoert heissen.
Und das ist wohl der Fall, wenn alles auf einen oeffentlichen Kanal
geschickt wird. Das dieser vollgemuellt wird ist wohl nur
nebenrangig.

Asmodis

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



Re^3 Spiesserei (Seppl, 31. Mar 1995, 22:04:16):
Nennen wirs 'Snoopen fuer Spieler', Asmodis ;-)

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



Re: Re:Spiesserei (Gundur, 31. Mar 1995, 22:12:37):
#! rn=Ed rt=796678016
Bin ganz der Meinung von Ed!!
..langsam wirds laecherlich was in letzter Zeit so abgeht hier ..ist ja
einfach nicht zu fassen...
Spielen wir hier? Wollen wir Spass haben? oder was?
Oder wo sind wir hier?
Gundur (nur noch kopfschuettelnd und arme weindende Spieler und Magier
troestend)

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



Re: Re: Re:Spiesserei (Schrumpfi,  1. Apr 1995, 01:18:34):
#! rn=Gundur rt=796680757
Asmodis hat da schon ganz recht. Es gibt andere Moeglichkeiten Tinyfuge
auszuprobieren, es sind halt privatgespraeche und viele Magier stehen(oder
wars ideln? :) ) auch in der Gilde. Aber deswegen einen Account sperren zu
wollen ist mehr als laecherlich.
Tja und zu Gundurs Artikel kann ich auch nur traurig nicken. Manchmal frag
ich mich ob hier so manche das ganze nicht zu ernst nehmen.
Schrumpfi fragt sich auch ob Mud ein Spiel ist..

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



Re^3: Re:Spiesserei (Hate,  1. Apr 1995, 15:29:54):
#! rn=Schrumpfi rt=796691914
Kann mir mal jemand sagen, worums geht, denn ich habe nichts von dem
getan, was mir da vorgeworfen wird. Das einzige was ich getan habe,
war eine Bemerkung ueber den Kanal loszuwerden. Ansonsten habe ich
weder jemanden rausgeworfen noch irgendwie andereas angefasst.

Klaert das bitte mal auf, sonst werde ich wirklich sauer!
Hate.

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



Re^3: Re:Spiesserei (Guybrush,  1. Apr 1995, 17:15:50):
#! rn=Schrumpfi rt=796691914
Ein Spiel?
Ist das Dein Ernst Schrumpfi?
shieeeeeeeeeet
UNd ich hab gedacht, dass ist Ernst hier.
Grummel, son mist auch. Warum hat mir das keiner gesagt
Argl..
..
..
..
aeh
Tschoe

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



Re^4: Re:Spiesserei (Schrumpfi,  2. Apr 1995, 22:03:14):
#! rn=Hate rt=796742994
Hab ich gesagt, dass das DU warst? Ich kann mich nicht erinnern Dich
beschuldigt zu haben. Alles was ich geschrieben hab war, das ich eslaecherlich
finde einen Account sperren zu wollen.
Schrumpfi

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



Re^4: Re:Spiesserei (Schrumpfi,  2. Apr 1995, 22:05:13):
#! rn=Guybrush rt=796749350
Keine Ahnung. Bin mir da selber nicht so sicher obs ein Spiel ist. Ich dachte
halt aber ich kann mich ja auch mal irren ;)
Schrumpfi

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



Re: Spiess-er-ei. (Hawk,  3. Apr 1995, 21:07:11):
Dieser Titel enthaelt eine, auch fuer ein Mud, fast nicht
zu erfuellende Forderung. Selbst mit meinem blankgeputzten
Xanthi-Schwert wird mir das nicht moeglich sein.
Vielleicht koennte es Stahldorn mit seinen aeusserst scharfen
Crome-Vanadium-spitze. (WEnn er nicht wieder mal gerade
vor sich hin rostet.) Ganz abgesehen davon. Wer wuerde es schon
uebers Herz bringen, ein armes, unschuldiges Kueken zu meucheln,
noch bevor es geschluepft ist. (Na, ja. Toeter vielleicht?:)). Einer unserer
Maggies doch wohl
sicher nicht.
HAWK plaediert fuer die Rettung der ungeborenen Kueken.
P.S.: Vielleicht sollten wir ja einen Ausschuss bilden, der
diesen Gedanken mal in urdeutscher Genauigkeit untersucht?

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



Re^5: Re:Spiesserei (Wur,  4. Apr 1995, 02:49:58):
#! rn=Schrumpfi rt=796853113
es muss aber ein spiel sein! ansonsten haette ich ja schon soviele leute
gezappt, gekillt usw... :).
Wur

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



Runenschwert die x. te (Yeti,  5. Apr 1995, 18:27:14):
waerend ich heuet so nichts ahnen fuer mein Seherhaeusle schlachtete, begab
es sich zur der Zeit, alsein Rhunenschwert auf dem Boden bim Wasserfall lag
und ich (Elf) mein eigenen schwert zuecken wollte. deshalbt war ich sehr
verwundert, das kurz darauf der Kanal Tod die traurige Meldung von meinem
Ableben kundtat.
Das ich dabei auch ne halbe Mille EPs verlor daran koennet ich mich ja noch
gewoehnen, aber an dem Tod kann ich nun wirklich kein Gefallen finden, zumal
mich ein Operation gerade fuer 8 Wochen ans Bett fesselte.
Tja Leute, sowas truebt dan doch den Spielspass etwas :(
nunja, da ich wohl kaum auf EP-Erstattung hoffen kann, sei dies Promblem doch
wenigstens der Oeffentlichkeit kundgetan und zur Diskussion gestellt.

Allen noch viel Spass im Morgengrauen

ein einsamer Schneemensch.... ;-)


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



Raechtschraihbunk (Yeti,  5. Apr 1995, 18:29:00):
tja an der werde ich wohl noch etwas feilen muessen, beim blind tippen ;-)
siehe lezten artikel :)

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



runenschwert, die (x+1)-te (Ray,  5. Apr 1995, 19:20:43):
Und noch mal zum thema runenschwert

Ich kaempf heut so ganz gemuetlich bei den dunkelelfenwaechtern, um mal ein
bisschen grundausruestung zu organisieren, als ploetzlich aus heiterem
himmel ein runenschwert in meiner hand explodiert. wie ich nachher erfahren
hab, hat es roadrunner waehrend das kampfes dort weggeworfen und nach einem
feuerball war ich ploetzlich tot.
ich glaube kaum, dass es beabsichtigt sein kann, ploetzlich am boden liegende
schwerter zuecken zu koennen (was ja sonst auch nicht geht).
DRUM GLEICH HIER EINE BITTE AN CADRA: BUG FIXEN !!!!!!!!!!!!

Der einzig hilfsbereite magier auf der suche nach einer loesung war
anschliessend tryfan, alle anderen waren entweder endlos idle oder hatten
fuer mich 'jetzt gar keine zeit' :(

ist das leben eines spielers so was unwichtiges im mud, dass man sich nicht
drum kuemmern muss?

in der hoffnung, vielleicht doch noch einen kompetenten magier zu
erreichen...
    ray

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



Re: runenschwert, die (x+1)-te (Caradhras,  5. Apr 1995, 21:13:10):
#! rn=Ray rt=797102443
Also, Yeti, nochmal ganz langsam zum mitschreiben:
Du bist ein Elf... ein Dunkelelf ist so etwas wie ein Ork, ein Gegner
der Lichtelfen, die wir darstellen. Drum sind wir auch ihre groessten
Feinde und ihre Waffen schaden uns ganz gewaltig. Zieht uebrigens
nur 130 HP jedesmal ab, also nicht unbedingt toedlich.
Und es weiss so ziemlich jeder ausser Dir, Yeti, Dunkelelfen moegen uns
halt mal nicht. Schade dass Du das nicht wusstest. *troest* Aber die
EP dafuer kriegst Du nicht wieder.

     tschuess        Caradhras - hat auch schon 130 hp da verloren

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



Re: Re: runenschwert, die (x+1)-te (Anatol,  5. Apr 1995, 21:55:00):
#! rn=Caradhras rt=797109190

Hm....
Cara, es ging glaube ich darum, dass das Runenschwert reichlich bloede
geproggt ist.

Einem Anfaenger mit Geschick 4 beispielsweise explodiert es genauso in der
Hand, obwohl er es nie zuecken koennte.
Und wenn es auf dem Boden liegt und du ein nicht naeher beschriebenes Schwert
zueckst, krachts auch.
DAS ist falsch.
Ich wuerde sagen, die EPs duerften ruhig erstattet werden.

Anatol ()

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



Re^3: runenschwert, die (x+1)-te (Caradhras,  5. Apr 1995, 22:56:54):
#! rn=Anatol rt=797111700
Uppppppppps, jaja, hab ich mich verlesen *seufz* Hast ja recht,
upps, wo war jetzt die Zeile? ach so, geb euch natuerlich ganz recht,
war ein Missverstaendnis von mir und ist ein grosser bug, der die EP
wiedergeben sollte. Aber ich hab Cadra eh schon mal direkt gesagt dass da
was ganz schoen nicht stimmt. *achselzuck*

     ciao        Caradhras

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



Re: Re: Spiess-er-ei. (Zuerileu,  6. Apr 1995, 02:57:21):
#! rn=Hawk rt=796936031
Sali Hawk,
Ich protostiere ich kill oder Zapp jedes Monster vom ungeschloffnen Kuecken
bis zum weniger herzigen wachhund von freund, nunja beim 2en nach einer
bearbeitung mit xcall =:)

Tschau Zuerileu


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



Re: runenschwert, die (x+1)-te (Kretek,  6. Apr 1995, 04:18:05):
#! rn=Ray rt=797102443
Na, Ray, da wart du mal, bis ich endlich meine fehlenden 246 APs zusammen
bekomme... Da bekommt ihr dann ein gar schrecklich unwahrscheinlich gar
furchtbar schier unglaublich kompetenten Magier!

Tschuessi,
Kretek der Ochsenfrosch
(Jetzt schon zu bloed zum Questen - was soll das erst mit Proggen werden!?)

**grins seeeeeeeehr breit**

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



Re: Re: runenschwert, die (x+1)-te (Tryfan,  6. Apr 1995, 09:32:17):
#! rn=Kretek rt=797134685
Hi
 ich hoffe doch, dass da nicht jemand Kompetenz und Faehigkeit verwechselt.
Denn der Bug ist einfach zu finden, und wohl von jedem Magier hier im
MG einfach zu beheben. Bloss fehlt den meisten Mags hier das Schreibrecht
auf das entsprechende File. Wo kaemen wie auch hin, wenn ich munter in
Cadras files rumedieren duerfte oder er in meinen.
 Nix fuer ungut, ;)
Tryfan

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



Re^3: runenschwert, die (x+1)-te (Durian,  6. Apr 1995, 10:19:32):
#! rn=Tryfan rt=797153537
Sie, Tryfan, sie ... Cadra ist und bleibt wohl auch weiblich ... und
das sogar in RL.

Nur keine Missverstaendnisse,

- Durian
:-)

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



Re: Runenschwert die x. te (Fyt,  7. Apr 1995, 14:34:45):
#! rn=Yeti rt=797099234
hm, das mit dem Runenschwert ist mir anscheinend auch passiert,
bin mir allerdings nicht ganz sicher... ich hatte mich mit den
Dunkelelfenwaechtern angelegt und nachdem der erste tot war,
sein zeugs eingesammelt und - denke ich - in ein Paket gesteckt.
Als ich das naechste Mal mein Xanti-Schwert zuecken wollte, bin
ich in die Luft geflogen... kann es sein, dass das Runenschwert
explodiert, wenn man ein beliebiges anderes Schwert in seiner
Naehe zuecken will?

Fyt... wie gesagt: ich bin mir nicht ganz sicher, ging alles so
schnell, das Runenschwert kann auch noch in der Leiche/am Boden/
im Inventar gewesen sein, eines ist allerdings relativ sicher:
Ich hab nicht 'zuecke runenschwert' getippt...

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



Re: Re: Runenschwert die x. te (Boing,  7. Apr 1995, 14:37:11):
#! rn=Fyt rt=797258085
Ich habe das Runenschwert inzwischen gefixed, es explodiert nicht mehr,
wenn es am Boden liegt oder wenn man es eh nicht zuecken koennte.
  Boing

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



Re: Re: runenschwert, die (x+1)-te (Ray, 10. Apr 1995, 11:48:40):
#! rn=Caradhras rt=797109190
nix dagegen, dass ich sterbe, wenn ich bloed genug bin, ein runenschwert zu
nehmen und zu zuecken. aber daran sterben, dass man sein eigenes schwert im
inventory zuecken will und das am boden liegende (!) runenschwert zuschlaegt,
find ich nicht ok

ray, der seine ep gern wieder haette

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



Bank-Missbrauch! (Flintnail, 19. Apr 1995, 13:46:35):
Ich beschwer mich mal eben ueber Monotonie!
Ich find's ziemlich dreist, sich in die Schlange vor dem Einzahlungsschalter
der MG-Bank zu stellen, und dann eingeloggt RL Essen zu gehen!
Und ,Monotonie, sag nicht das waere keine Absicht!
Hmmm....fuer soetwas solte ne Konditionalstrafe der Bank gegenueber den
Verursacher des Einzahlungs-Stau's faellig werden...wie siehts aus, Beldin?
Was sagt der Mud-Raechtsverdreher dazu???
200000 Muenzen???

etwas stinkig...Flintnail...

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



Re: Bank-Missbrauch! (Monotoni, 19. Apr 1995, 14:32:21):
#! rn=Flintnail rt=798291995
Bank Missbrauch... So so !!!
1. War ein Fehler von mir mich an die Schlange anzustellen und
dann Essen zu gehen.
2. Ich wusste nicht, dass sich dann kein anderer anstellen kann !
3. Von Dir dann mit : "Du Arsch !!!" begruesst zu werden ist mir ziemlich
egal.
4. Aber dann so einen daemlichen Artikel in die Zeitung zu setzen
und dann auch noch in die Rubrik Polizei.beschwerden - Das ist echt
laecherlich !

Als Du gemerkt hast, dass ich vom Essen wieder da bin, haettest Du mich
ja ohne Probleme ansprechen koennen und eine faellige Strafe haette ich
auch ohne murren gezahlt !
Stattdessen spielst Du Dich hier so dermassen auf, dass alle Leute
glauben muessen ich haette Dein Haus komplett abgefackelt !!!

Ziemlich ARME Aktion !

Monotoni ! :-(

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



Re: Bank-Missbrauch! (Beldin, 19. Apr 1995, 15:50:11):
#! rn=Flintnail rt=798291995
Hmmmmm....
Hmmmmmmmmmmmmmmmmmmm....
Also Flint, es geht so:
Du musst den normalen Dienstweg einhalten! Antraege auf Verbesserungen bezgl.
des Vertrages oder der AGB oder der Bank selber sind in fuenffacher
Ausfertigung bei den jeweils zustaendigen Amtsleitern fuer INTERNES, der
RECHTSABTEILUNG, der BAUAUFSICHTSLEITUNG des MG, sowie den Vorsitzenden der
MG-Bank (zur Aktenablage unter P) abzuliefern.
Mit dem rechtmaessigen Zugang beginnt eine Bearbeitungsdauer von phi^42
(Mud-)Stunden die den einzelnen Beteiligten eingeraeumt wurde um eine genaue
Pruefung der Antraege zu ermoeglichen. Soweit andere Beteiligte
moeglicherweise in ihren Rechten betroffen sind koennen sie hinzugezogen
werden, und fuer die Dauer DEREN Stellungnahme wird der
Bearbeitungsfristablauf ausser Kraft gesetzt.
Popularbeschwerden wie Deine werden nicht weiter beachtet und unter R wie
Reisswolf abgelegt :-)

Tja das wars mal wieder von der Front der MUD-Rechtsabteuilung ;)

Ciao...
                Beldin (Oberrechtsverdreher ;)

P.S.: Wargon hat die Bank geproggt nicht ich... :-)

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



Re^3: runenschwert, die (x+1)-te (Drizzt, 19. Apr 1995, 16:27:43):
#! rn=Ray rt=797507320
Frage:
Warum kann eigentlich ich das runenschwert nicht zuecken ? :-)

DdD  (Drizzt der Dunkelelf)  *grinsend*

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



Re: Re: Scriptspieler (Bloodyharry, 21. Jun 1995, 11:13:57):
(Bezug: Artikel 5 von Jof vom 20. Jun 1995, 10:32:40)
... in polizei.bekanntmachungen. (kann da ja nicht reinschreiben- darum hier)

Wie waere es mit einem Suendenkonto fuer ertappte Scriptplayer? Genauso wie
das bekannte flensburger Register, koennte eine bestimmte Anzahl von Punkten
zu der Strafe fuehren.

Idelnde Spieler werden dann nicht "aus Versehen" ausgelogt und man kann noch
eine Warnung an Scriptplayer verschicken, bevor sie den Hoechststand
erreichen.

ist halt so ein Gedanke von mir..
Opa-Pirat Bloody Harry (reicht die Rente ein...)

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



Re^3: Scriptspieler (Highlander, 21. Jun 1995, 11:18:18):
#! rn=Bloodyharry rt=803726037
Keine schlechte Idee, aber wer macht das?
*lins sherriff*
      Highlander

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



Re^3: Scriptspieler (Bongo, 21. Jun 1995, 11:25:52):
#! rn=Bloodyharry rt=803726037
Wie sollte es passieren, dass idlende Spieler aus 'Versehen' ausgeloggt
werden? Wenn sie idlen, dann stehen sie rum oder fahren auf einem Objekt
(Boot, Kutsche, etc) mit und haben eine idlezeit, die man beim fingern und
durch xwho ganz einfach angezeigt bekommt. Scriptspieler aggieren...
Eigentlich duerfte sowas also nicht passieren. Ansonsten hat der Spieler
wohl das gute Recht sich ueber den Magier, der ihn rausgeworfen hat zu
beschweren, vorausgesetzt er findet heraus wer es war...
Bongo

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



Re^3: Scriptspieler (Jof, 21. Jun 1995, 12:20:04):
#! rn=Bloodyharry rt=803726037

 Suendenkonto ist gut - alles ueber 0 Punkte auf dem Konto fuehrt zum
ausloggen ...

 Jof

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



Re^4: Scriptspieler (Jof, 21. Jun 1995, 12:22:23):
#! rn=Bongo rt=803726752

 Idlende Spieler muss man nicht ausloggen - wie Bongo schon bemerkte, kann
man die Idlezeit ja im finger sehen, und i.a. nerven idelnde Spieler ja auch
nicht (im Gegensatz zu Scriptspielern) und erzeugen auch kein Lag. Zudem
kanns ja auch sein, das jemand in einer der Quests, die nicht nach 'schlafe
ein' fortsetzbar sind, steckt - da waere ausloggen fatal ...

 Jof

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



Re:Scripts (Ed, 21. Jun 1995, 12:48:21):
Als einer der ersten Scriptspieler des MGs will ich auch mal meinen Senf
dazugeben...
Wie ich seher geworden bin, und das metzeln mehr oder weniger immer dasselbe
war, hab ich mir mal so gedanken ueber ein auto-kill-script gemacht...

das problem war eigentlich nur: was tun wenn das tankgeld aus ist?
idlen hilft nix, das tun die monster genauso....
da das krankenbett die einzige gratis-heilquelle im MG ist, bin ich
andauernd dorthin, weil die saufkneipen sauteuer sind und man ja gleich
voll ist.
(es sei denn man will wie ryne beim heilskelett in den katakomben zatongs
killen, ist aber ein etwas armseliges makro bei den resets...)

das script hat 31 versch. monster angegriffen und etwa 1.5 Mio EP pro
nacht gebracht. War dafuer ne harte arbeit, das proggen und debuggen...

Naja, auf jeden fall, ohne dem krankenbett waers zu vergessen. dort steht
zur zeit sowieso immer ein haufen scriptspieler schlange...
Man muesste das krankenbett einfach fuer spieler sperren, die was nicht
grad vergiftet sind oder den pandoraparasiten haben. wer dann noch ein
makro rennen lassen kann ist echt gut.

Ausloggen, banishen oder andere solche magiereingriffe sind
                  EIN KOMPLETTER NONSENSE!!!!

es gibt viel kreativere moeglichkeiten, das MG fuer scriptler verdammt
schwer zu machen, zB bloede echos von andy, raeuberbaum, fussangeln...

Ed

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



Re: Re:Scripts (Lechuck, 21. Jun 1995, 16:05:17):
#! rn=Ed rt=803731701
als eines der ersten Opfer, die beim gemuetlichen rumideln in der Gilde von
Cat rausgeworfen wurden, muss ich sagen:
uebe Age-teisho-uchi
ich find das SCHEISSE! (explizit und deutlich in Grossbuchstaben gesagt)
wenn ich rumidel und nix tue, und das vielleicht in einem Raum NEBEN der
Karate-Gilde, weil ich mal schnell weg muss...soll ja vorkoemmen , wenn man
arbeiten muss, werd ich dann auch rausgeworfen?
stoer ich jemanden damit?
mach ich was kaputt?
koste ich cpu-zeit?
is doch bloedsinn...ich metzel nix mit script und ich lauf auch nicht mit
script in der gegend rum...ich wusste nicht, dass rumstehen in einem Raum
solch ein Speicherfresser und Stoerenfried sein kann....

Alles Quark...
Wenn man in der Gilde mit dem simpelsaten Skript, dass einem die von Cat so
genannten RIESIGEN Vortiele verschafft rumsteht (Vorteiel: In 8 online-stunden
bringts maximal 3 prozentpunkte) dann lach ich mich doch lieber schief und
sch.... auf die schoene Karate-Gilde.
Wenn das so bleibt, dann sollte Rochus zumindest seine ganze Uebungsstrategie
ueberdenken, oder so rumstehende Spieler duerfen auch weiterhin rumstehen...so
vermiest man jedenfalls den LEuten das Spielen...zumindest mir, und ich bin im
allgemeinen noch ein vertraeglicher Bursche...
so ..Senf off

LeChuck is genauso sauer wie sein Ersti!

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



Re: Re:Scripts (Jof, 21. Jun 1995, 16:06:52):
#! rn=Ed rt=803731701

 Was soll der Aufwand? Scriptspielen ist verboten, ertappte Scriptspieler
werden ausgeloggt - einfach und fuer jeden zu verstehen, was passiert. Da
brauchts keine Echos oder Fussangeln ...

Jof

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



Re: Re: Re:Scripts (Catweazle, 21. Jun 1995, 16:08:26):
#! rn=Lechuck rt=803743517
Hi!
Ich dachte eigentlich ich haette mich da deutlich gemacht.
Scriptspieler sind ab sofort verboten. Ich mache da keinen Unterschied
zwischen ach so harmlosen Gildenrumstehern und den boesesten Monsterweg-
klauern. Ich kann und werde da keine Unterscheidungslinie ziehen.
Es ist verboten und akzeptiert das gefaelligst!
Yours truly,
        Catweazle

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



Re:Scripts (Arombolosch, 21. Jun 1995, 16:13:11):
Ich melde mich freiwilling um diese Spieler zu booten. Wenn ich BattleTeche
mach ich das eh meist nachts, und dann muss ich ab und zu mal Frust ablassen,
das geht am besten in dem man arme player quaelt (und ihnen noch ein paar
vom script nicht erfasste Monster auf den Hals hetzt ;-)).

Arombolosch, leidet an Zeitverschiebung

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



Re^3: Re:Scripts (Roadrunner, 21. Jun 1995, 16:20:17):
#! rn=Catweazle rt=803743706
als bisher nicht betroffener: Ab wann gilt ideln als scriptspielen?
	Roadrunner
		(wundert sich etwas)


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



Re^4: Re:Scripts (Catweazle, 21. Jun 1995, 16:24:11):
#! rn=Roadrunner rt=803744417
Hihi!
An den wunderschoen in Lechucks Artikel eingeworfenen 'uebe Age-teisho-uchi'
kann man ganz prima sehen, das er eindeutig _nicht_ idle war :-)))
YTC

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



Re^5: Re:Scripts (Lechuck, 21. Jun 1995, 16:36:00):
#! rn=Catweazle rt=803744651
Hm..und wo ist der Unterschied zwischen script-ueben und idlen in der
Karate-Gilde?
LeChuck wills genau wissen...

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



Re^6: Re:Scripts (Jof, 21. Jun 1995, 19:40:04):
#! rn=Lechuck rt=803745360

 'script-ueben' produziert Lag.
 'idlen' nicht.

 Jof

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



Re: Re:Scripts (Jaf, 22. Jun 1995, 01:01:03):
#! rn=Ed rt=803731701

Hm, vielleicht mal zu Eds Artikel.

Fyts Killscript hat ungefaehr die gleiche Dimension und es war auch
eine Heidenarbeit. Es wuerde aber auch ohne Rettungsstation gehen *grins*

Aber das ist nicht der Punkt. Die ganze Scripterei ist in dem Fall mit
der Karategilde entstanden und ich hab irgendwie die Vermutung, wenn
es bei den Scriptverboten bleibt, wird die Gilde nur wenige Mitglieder
haben, einige wenige (wie zB Ryne, Bloodgore, Fyt und zwei, drei andere)
haben mit dem Scriptverbot relativ wenig Probleme, da sie auch mit
Karate unter Umstaenden 'vernuenftig' kaempfen koennen, einige Gruengurte
werden sich evtl. noch bis schwarz durchbeissen und den Rest hat's
- mit Verlaub gesagt - angeschissen. Dafuer waere mir an Rochus' Stelle
die Arbeit, die er in die Gilde gesteckt hat, echt zu schade... Was
mich eigentlich wieder zu dem Punkt bringt, an dem ich schon vor
etlichen Wochen war: Das Lerntempo in der Karategilde ist nix fuer
u
Otto-Normal-Mudder.

Jaf, mit Fyts Zustimmung schreibend.

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



Re: Re: Re:Scripts (Jaf, 22. Jun 1995, 01:11:27):
#! rn=Lechuck rt=803743517

Noch mal mein Senf:

Nicht dass ich missverstanden werde, ich hab nichts gegen das Scriptverbot:
Zwei Gruende.

Der erste voellig egoistisch: Ich komm mit dem Zeug, was ich bis jetzt
'erscriptet' hab ganz gut aus, ich hab zwar frueher mit 'voller
Ausruestung' besser gekaempft, aber der Unterschied faellt nicht so
sehr ins Gewicht und das fuer mich laestige Ausruestungsbesorgen
entfaellt;  der zweite ist fast das Gegenteil: durch das Verbot
wird die 'Chancengleichheit' im Mud in bezug auf Kampfkraft besser
s
gewahrt. Schliesslich hat nicht jeder die Moeglichkeit, 24 Stunden
am Tag  TF laufen zu lassen...

Hm, naja... ums nochmal ganz klar zu sagen: mir isses Wurscht, und wenn
ich als Spieler die Moeglichkeit gehabt haette, an irgendwelche
'Laststatistiken' ranzukommen, haette ich sicher die Moeglichkeit
gehabt, Scripte zu schreiben, die vielleicht nicht so Rechenzeit
intensiv sind wie alle 10 Minuten Glockenwald-Moron-Goblager-
Neandertal plus Tanken abzulaufen... vielleicht waere das ja
eher ein Schritt in die richtige Richtung...

Hm, und nochwas: Die armen Leute, die in der Gilde alle fuenf
Sekunden ein 'uebe age-zuki'  machen, sind in bezug auf die
Rechenzeit doch wohl zu vernachlaessigen... also irgendwie versteh
ich den ganzen Rummel nich...

Fyt. Zweifelnd.

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



Re: Re: Re:Scripts (Toss, 22. Jun 1995, 01:27:05):
#! rn=Jaf rt=803775663
Jein -

Es stimmt sicherlich, dass durch die Karategilde das scriptspielen ausgeloest
wurde, auch wenn einige Spieler schon vorher auf dem Friedhof per script fuer
EPs gemetzelt haben.
Mittlerweile ist aber - vermutlich weil viele Spieler gesehen haben, wie
leicht man es sich mit scripts machen kann - das Anwenden von scripts auch
ueber die Gilde hinaus gegangen. Insofern wuerde ein aendern der Gilde im
moment nichts bringen (und in der Tat nur diejenigen NICHT treffen, die
sowieso schon so weit sind, dass ein ueben in der Gilde nichts mehr bringt).
Ich denke, die von den Magiern vorgenommenen Massnahmen sind da erstmal
ausreichend - ausloggen, und die Stolperdraehte gehoeren ja warscheinlich auch
ins "Anti-Scriptspieler-Konzept"
Find ich gut so, und muesste auch erstmal ausreichen, abwarten und Tee
trinken.

Ryne

- Dieser Artikel wurde vollautomatisch durch RyneNPC V1.0 erstellt. Sollte
der Inhalt dieses Artikels nicht auf den bezogenen Artikel passen und das
Thema verfehlen, so liegt dies an Unwaegbarkeiten im Scriptprogramm, dass
diese Antwort verfasst. Wir bitten um Nachsicht.


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



Re^3: Re:Scripts (Jaf, 22. Jun 1995, 01:30:23):
#! rn=Jaf rt=803776287

und nochmal:

   uebe feuerball

zaehlt kampf anfangen und auf'm anderen term news lesen auch schon

   uebe feuerball

als scripten? kaempfe gegen einige moster dauern halt etwas laenger,

   uebe feuerball

auch wenn das ergebnis von vornherein feststeht... ?

   uebe feuerball

Fyt. Dann auch nicht ansprechbar seiend.

   uebe feu.. Connection closed.

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



Re^7: Re:Scripts (Guybrush, 22. Jun 1995, 08:49:11):
#! rn=Jof rt=803756404
hm...echt Jof?
Wie gross ist das lag, welches man dadurch produziert, dass man seinen teddy
einschaltet und immer wenn die mp's voll sind, einen einzigen schlag macht?
kann man das noch in double-precision Groessen ausdruecken?
stichel..
Guybrush, mal FUER seinen Zweitie

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



Aufklaerung (Lechuck, 22. Jun 1995, 11:13:25):
So, grad war Cat wieder mal zu Besuch in der Karate-Gilde und hat sich ueber
unsere Scripts beschwert.
Als ich meinte ich haette noch keine Begruendung gehoert, warum man keine
idle-uebe scripts fuer die Gilde schrieben duerfe, kam als Antwort:
Ich habe keine Lust, das alles nochmals zu erjklaeren (nochmals?)
Wenn du die Begreundung nicht weisst, dann musst Du blind sein...

Tsts, ne Begreundung haett ich gern, denn so wies jetzt ist, seh ich das
nicht ein.
Wegescripts sind erlaubt? Warum dann die Stolperdraehte?
Wegescripts verurschane weniger lag als scripts in einem Raum?

Ich versteh nix mehr...und bitte hiermit endlcih mal um eine LOGISCHE
Begruendung!

LeChuck, versteht nur Bahnhof.

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



Re: Re: Re:Scripts (Jof, 22. Jun 1995, 11:17:10):
#! rn=Jaf rt=803775663

 Die Karate-Gilde mag ja der Grund fuer die Script-Spieler-Flut sein - ist
sogar wahrscheinlich. Eine ENTSCHULDIGUNG ist sie indes nicht, wenn ihr
meint, das die Gilde ohne Script fuer euch nicht brauchbar ist, tretet
doch einfach aus - die Abenteurer-Gilde wird euch mit offenen Armen wieder
aufnehmen. Ausserdem koennt ihr ja Rochus Vorschlaege zur Verbesserung
machen,
wie ich ihn kenne, wird er die (wenn sie gut sind) auch annehmen (ins-
besondere, wenn wirklich eine Gilden-Austrittswelle stattfindet, aber
das hab ich jetzt nicht geschrieben, psst) :)

 Jof

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



Re^4: Re:Scripts (Jof, 22. Jun 1995, 11:19:18):
#! rn=Jaf rt=803777423

 Naja, wenns wirklich so ist, wie du sagst und du News liest, sieht man dich
zwar kaempfen, aber deine Idle-Zeit geht hoch. Wenn deine Idle-Zeit dabei
NICHT hochgeht, ist offenbar ein Script am Werke.

 jof

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



Re: Aufklaerung (Jof, 22. Jun 1995, 11:24:48):
#! rn=Lechuck rt=803812405

 Ist doch ganz einfach: So ein Mud ist als 'VR-Simulation' gedacht, in der
Leute rumlaufen, Dinge tun und ihren Spass haben. TF empfindet keinen Spass
beim MG-Spielen, soviel kann ich versichern - LAG erzeugt es trotzdem.
Wenn Spieler durchs Mud laufen, kostet das selbstredend auch Rechenzeit -
aber das Spieler durchs Mud laufen, ist nunmal der Sinn der Sache, dafuer
ist der Rechner da. Zur 'Versorgung' von Scripts ist er nicht da, und die
Leute, die wirklich spielen wollen, leiden unter diesem 'Missbrauch' durch
Scripts. Zudem haben scriptspieler idealerweise einen riesigen Durchsatz
und schaffen es, zig mal so viele Befehle/Heartbeat abzusetzen wie ein
'normaler' Spieler, und das dann auch ueber lange Zeit.

 Wegscripten betrachte ich eigentlich nicht so sehr als Scripten, sondern
nur als kleine Bequemlichkeits-Hilfen, um langweilige, bekannte Wege
abzukuerzen. Wege-Scripten laufen normalerweise auch nicht lange,
nach 1-2 Sekunden sind die abgearbeitet und der Spieler geht wieder in
den 'normalzustand' ueber.

 Jof

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



Re: Re: Aufklaerung (Lechuck, 22. Jun 1995, 11:27:21):
#! rn=Jof rt=803813088
uebe Tate-zuki
Mal ne spezielle Frage: Wie ist das, wenn ich hier in der Gilde stehe und
mich unterhalte und nebenbei ein uebe-script laufen lasse?
Bin ich dann ein script? Oder bin ich da? oder bin ich bloed? oder was?

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



Re^3: Aufklaerung (Jof, 22. Jun 1995, 11:31:30):
#! rn=Lechuck rt=803813241

 Dann kanns zwar ein Script sein, aber das merkt keiner, weil du auf
Anfragen antwortest :)

 Jof

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



Re^4: Aufklaerung (Lechuck, 22. Jun 1995, 11:33:34):
#! rn=Jof rt=803813490
doch: Cat hats gemerkt und wollt mich rauswerfen
uebe Tate-zuki
Seh ich nicht ein...

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



Re^3: Aufklaerung (Hadra, 22. Jun 1995, 11:34:02):
#! rn=Lechuck rt=803813241

nun lasst doch die spitzfindigkeiten. wenn du dich eh unterhaelst kannst du
auch mit nem satz alis arbeiten


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



Re^5: Aufklaerung (Lechuck, 22. Jun 1995, 11:34:53):
#! rn=Lechuck rt=803813614
uebe Tate-zuki passt jetzt immer voll rein, damit auch jeder sieht, das ich
ein script habt.
banished mich, dann is Ruhe..oder liefert mir ne anstaendige Begruendung,
warum ich das hier nicht mehr machen darf.
Fertig!

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



Re^6: Aufklaerung (Jof, 22. Jun 1995, 11:41:33):
#! rn=Lechuck rt=803813693

 Du hast Cat ja wohl geantwortet (hoffe ich?), und aus der Formulierung
'wollte mich rausschmeissen' seh ich, das ers doch wohl nicht getan hat?

 Und: Wie hat ers gemerkt, dein Script setzt doch wohl nur zwischendurch
immer
mal uebe-Befehle ab (etwas nervig vielleicht beim News posten :)), aber
das kannst du doch auch von Hand gemacht haben?

 Jof

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



Re^7: Aufklaerung (Wargon, 22. Jun 1995, 11:57:06):
#! rn=Jof rt=803814093
Als ob es so schwer waere, die uebe-Zeilen aus der Zeitung heraus zu
halten...
Wenn man schon ein Skript hat, das alle Nase lang Befehle absetzt, dann
sollte man diesen Befehlen doch bitte ein ! voranstellen (!uebe
laber-fasel-bla geht naemlich auch, wenn man NICHT in irgendeinem Editor
haengt. Das gilt auch fuer jeden anderen Befehl).
Obwohl es natuerlich immer zu schoenen Aussagen kommt wie:
>Ich habe keine Skripts!
>uebe jojo-honda-mikado
>...
  Naja,
    Wargon

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



Re^7: Re:Scripts (Morgoth, 22. Jun 1995, 12:47:56):
#! rn=Jof rt=803756404
also damit ich das richtig verstehe:
script-idlen = rechenzeit
normal-idlen = keine rechenzeit
????????????
also jof, irgendwie komm ich da nicht mit.
tf laeuft doch nicht auf dem mg-rechner sondern bei jedem 'zuhause'
und wenn du einfach nur trigger setzt kann das doch garkeinen unterschied
machen,
ob du nun rumstehst oder rumstehst und auf deinem rechner ein programm
laeuft, das deinen output ueberprueft, oder ????
ausserdem ist es echt saubloed, bei dem lag(bis zu 10 minuten) irgendwas
produktives zu machen, ausser idlen.
jetzt kommt der spruch das wir das verursachen...(kratzt am kopp)
es sollte einem spieler moeglich sein auch in seiner gilde fortschritte
machen zu koennen. ich uebe jetzt schon seit ca.14 tagen karate und bin erst
im 6.kyu (seit heute)
das kann doch wohl irgendwie nicht so ganz hinhaun. um meine alte kampfkraft
wiederzuerlangen muss ich mindestens 3.kyu (oder so ) sein. ich kann im moment
ja nicht mal nen troll killen(naja manchmal klappts).
was soll ich denn dann eurer meinung nach machen? ameisen und bienen killen
bis ich gut genug bin um mich mal wieder in unerforschte gegenden zu machen ?
!!
NEIN DANKE!! ich hab keinen bock deshalb zu sterben, weil ich keine
moeglichkeit hatte vernuenftig zu ueben....

wer war das noch mit HAAAASSSSSS ? targas??
so langsam steigt er auch wieder in mir auf....

Morgoth

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



Re^7: Aufklaerung (Jaf, 22. Jun 1995, 13:49:52):
#! rn=Jof rt=803814093

Hm. Jof, natuerlich kann man die 'Gildenscripte' alle auch per Ali
von Hand machen. Das ist aber extrem nervig und stupide
und foerdert die Stimmung im Mud auch nicht. Und *mir* tut ab und zu RL
die Pfote weh, und da tut 'einfach davorsitzen' und zuschauen manchmal
ganz gut. Ich weiss, dass das keine besonders gute Begruendung ist, aber
die der Gegenseite waren noch nicht viel besser :)

Fyt.

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



Re^8: Re:Scripts (Jof, 22. Jun 1995, 14:02:27):
#! rn=Morgoth rt=803818076

 Das AUSWERTEN des Outputs zieht keine Rechenzeit, aber die dann
ausgefuehrten
Aktionen schon.

 Der Hauptteil der Lags kommt derzeit vom Netz, unbestritten, doch das
bleibt
nicht so. Zudem NERVERN scripts. Man sieht nur, das die Leute nicht idle
sind,
moechte mit ihnen reden, aber keiner reagiert. NERV!

 Ausserdem wirst du zugeben, das es etwas unfair ist, wenn der eine seine EP
muehsam mittels Hand-Spielen/Kaempfen erlangt, der andere einfach einmal ein
Script startet, dann nix mehr tut und in der Highscoreliste den anderen
ueberholt.

 Also eigentlich ists doch ganz einfach zu verstehen:

 MorgenGrauen ist zum SPIELEN, REDEN, fuer die Magier zum PROGRAMMIEREN da.
Es ist NICHT gedacht als Testfeld fuer irgendwelche Scripts. Wer
programmieren
will, soll bitteschoen Magier werden. Wer nicht Magier werden will, wird in
MG
wohl aufs programmieren verzichten muessen.

 Das sollte doch jetzt jeder verstanden haben, war ja wohl ziemlich un-
missverstaendlich.

 Jof

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



SCRIPTE (Hate, 22. Jun 1995, 14:39:20):
Hi,

mir scheint diese ganze Diskussion hat eigentlich
keinen echten Wert. Es ist allgemein bekannt, dass nicht-interaktive Spieler,
also solche, die man als script-idle bezeichnet a) nerven
b) durch ihre Aktionen Lag verursachen und c) unerwuenscht
sind.
Deshalb ist dieses Verbot auch so gekommen. Die Diskussion darum ist absolut
belanglos, weil das Verbot STEHT und ihr Euch damit abfinden muesst!
Ich denke, es bestehen noch verschiedenste Moeglichkeiten diesem Nachdruck
zu verleihen, denn NOCH habe ich mich nicht eingemischt.
Die Alternativen sind ganz eindeutig:
   1. Aufhoeren sinnlos mit Scripten zu Spielen und hier gelten nur die
      Ausnahmen von kleinen kurzen MACROS, die einem das Leben erleichtern.
   2. Aufhoeren zu spielen oder "Aufgehoert werden"
Ich denke ich habe mich eindeutig klar gemacht!
Viel sinnvoller waere es, wenn die Seher, und hier sind es einige
die Scripte benutzen (keine Unterscheidung zwischen 1. o. n.-ter Spieler),
sich Gedanken machen wuerden, wie man die Welt _verbessern_ koennte, also
neue Ideen und vielleicht Loesungen fuer diverse Probleme aufzeigen.
Immer nur rummeckern und dann solche Verbote sinnlos diskutieren bringt
nicht viel.
Ein zweiter Punkt, den ich hier ansprechen will sind die Questloesungen.
Mir scheint einige hier haben ein extremes Selbstdarstellungsbeduerfnis,
indem sie moeglichst schnell zu Quests Komplettloesungen oder sogar Scripte
anbieten. Dabei mal an andere zu denken, wie a) Die Spieler, die sich damit
moeglicherweise den Spass verderben und b) Die Arbeit von Tagen, Wochen oder
sogar Monaten eines Magiers kaputtmachen, kommt denen wohl nicht in den Sinn.
Hier wuerde ich auch empfehlen, mal selbst KREATIV zu sein und vielleicht
eine
eigene Quest als Magier zu schreiben oder Ideen BEIZUTRAGEN.
Wenn jetzt jemand mit dem Argument kommt, "manche Quests sind so langweilig
und geradeaus", dann kann ich das NICHT akzeptieren, da auch dort Arbeit
drin steckt und wenn es so ist, kommt man garantiert auch OHNE Loesung zum
Ziel. Die bessere Moeglichkeit ist hier, wenn man im MUD den Spielern hilft,
wenn sie in einer Quest festhaengen, die man selbst schon kennt. Das foerdert
die Gemeinschaft hier im MUD, alles andere ist einfach nur Spielverderberei.
Wer nicht in der Lage ist sich an solche kleinen Dinge zu halten, sollte
mal seine Einstellung gegenueber anderen ueberdenken!

Hate.

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



???? (Bongo, 22. Jun 1995, 17:06:47):
Ist das hier eine Demokratie???? Ich dachte immer das waere nicht der Fall???
Warum also solche Diskussionen??? TSTST Ich denke mal, wenn man Unschuldig
ist,
so kann man das Cat und den anderen auch sicher klarmachen. Sind doch keine
Monster...

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



Re^9: Re:Scripts (Bongo, 22. Jun 1995, 17:13:08):
#! rn=Jof rt=803822547
Ich verstehe das alles nicht Recht. Was sind denn das fuer Begruendungen,
dass einem Die FInger weh tun oder so??? Das hier ist ein Spiel...wenn ihr
Euch ueberanstrengt oder zu lange getippt habt, dann macht einfach Pause...
Oder haengt davon das Leben ab???

Bongo versteht die Welt nicht mehr.
nn
argl, fluch...

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



nebenbei angemerkt: (Toss, 22. Jun 1995, 18:37:49):

Also, wenn kuerzlich irgendwer (hab keine lust mehr alle artikel
durchzukramen, wers war) schrieb, dass er mit scripts spielen MUESSE, weil er
tagsueber zu viel lag und nachts keine zeit zum mudden habe, dann grins ich
mir doch einen.

Also, dazu nur soviel: In Kurze wird RyneNPC 95 erscheinen - das ultimative
MG-Script... man kann einmal einen Spieler einloggen, es loest selbsttaetig
alle quests und macht sich dann ans metzeln. Bis man 60 Mio eps und dann level
30 hat.
Man braucht also nach dem einloggen nie wieder ins MG zu kommen, und kann
sich dann Monate spaeter einen drauf runterholen, was fuer ein tolles script
man hatte... ne, ehrlich, wenn man lags hat (ich weiss, das nervt), dann muss
man leider damit leben, ich weiss das sagt sich leicht, wenn man keine hat,
wie ich, aber so ists nun mal so. Und dann muss man entweder nachts metzeln
oder eben gar nicht - sowas als Begruendung fuer ein script ist etwas duenne.
Btw: RyneNPC 95 wird im August 95 erscheinen, evtl. etwas spaeter ;) -
weitere features: RyneNPC 95 graebt automatisch solange Spieler anderen
Geschlechts an, bis eine Hochzeit erfolgt ist, gibt automatisch Tips an andere
Spieler (Beispiel: Wie komm ich an Muellers Doggen vorbei ? Qaeul sie!!),
schreibt Zeitungsartikel und Post, und im Seher-Zusatzpaket
wird automatisch ein komplettes Seherhaus mit 10 Raeumen
gebaut und beschrieben... Desweiteren wird automatisch Hydra und Robin
getoetet. Niemand muss mit RyneNPC 95 jemals selbst vor dem Rechner mudden !!!
Ihr koennt nach Monaten zurueckkommen, und Euch ueber das erreichte freuen,
mit Ehefrau/mann reden und Euch ueber all die Freundschaften freuen, die
RyneNPC 95 fuer Euch geschlossen hat !!!
In Entwicklung: RyneMAG 95, das Magiertool, das selbsttaetig quests erstellt,
unbesiegbare Monster und Syntaxen erfindet, und Labyrinthe bastelt, aus denen
garantiert kein Spieler jemals herausfindet ;))

Soviel aus den Entwicklungslabors, viele Gruesse,

Ryne

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



*gaehn* (Cuchullin, 22. Jun 1995, 20:14:00):

So langsam wird das hier echt kindisch....

a) Ist jemand gezwungen worden, der Karategilde beizutreten? Rochus? Nein.

b) Bringt es irgendwie Spielspass, ueber Nacht oder tagsueber mit einem
   geschickten Makro durch viele Befehle Mitspieler unnoetig zu nerven,
   zu beklauen (jawollja!) und auch zum Netlag ein local lag zu erzeugen?
   Ich wage zu behaupten: Nein!

c) (Argument von Werwardasnoch) Ist das hier ne Demokratie? Nein!!

d) Ist das Argument 'Wenn ich es nicht tue, tut es ein Anderer' gueltig?
   Bestimmt nicht, damit wurden schon viele Verbrechen gerechtfertigt.
NEIN!!!

e) Meinetwegen noch der hier: Ist es gegenueber Nicht-TF-lern fair? NEIN!!!!!

Also: Keine Uebemakros mehr, keine Killmakros mehr, wer altert und nicht
idelt, hat vor dem Rechner zu sitzen, fertig. Goetter und machtgeile Erzmagier
ausgenommen.

Trotzdem Danke, dass Wegescripts geduldet werden. Die Lag-Spieler haben sonst
keine andere Chance...

Cuchullin (findet hier Magierhetze irgendwie bloedsinnig)

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



Re: *gaehn* (Wur, 22. Jun 1995, 22:01:29):
#! rn=Cuchullin rt=803844840
So ists recht Hadra...stimme dem voll zu!

Wur - hetzt vom Workroom in die Gilde

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



Re: *gaehn* (Lechuck, 23. Jun 1995, 11:18:32):
#! rn=Cuchullin rt=803844840
Es gibt doch soviele uerberfluessige Artikel hier: Also noch einer..
a) noe
b) na
c) noe
d) hae?
e) s.u.
f) Wegemakros: sind gegenueber nicht TF'lern aeusserst fair, da ich sie toll
ueberholen kann und gleichzeitig noch gruessen kann, wenn ich nenn
Hallo-Trigger einbaue ;)

Lags sind halt nett: Sie verschonen Leute die Karate-Ueben (ohne killen, ohne
rumlaufen und ohne klauen) und behindern Leute die von einem Ort zum anderen
wollen.. ;)

So, falls ich es vergessen haben sollte:















*IRONIE OFF*


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



Hilfsheriffs? (Dwight, 24. Jun 1995, 05:33:44):
Holla
Die Aufforderung an Spieler, Scriptspieler bei einem Magier ihres vertrauens
zu melden scheint wohl einige auf den Plan gebracht zu haben...
Nur zur Info an solche Sucher: ich antworte nicht auf xxx teilt Dir mit:
Scripttest!
Auch nicht wenn es wiederholt wird! Ich sehe es nicht ein, warum ich mich vor
einem Spieler rechtfertigen soll, ob ich nur wahnsinning schnell per Tippen
durch die Gegend die Wege rauf und runter renne, oder ein Script, oder ein
Macro benutze


Dwight
P.S: ich kann gar nicht scripten...

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



Re: nebenbei angemerkt: (Ketos, 25. Jun 1995, 11:44:13):
#! rn=Toss rt=803839069
Bravo Ryne!
Jetzt nehmen die Computer uns nicht nur die Arbeit ab, sondern auch das
Spielen.
Weclh wunderebare schoene neue Welt.

Wie waers mit einer Script region in die nur Scriptspieler reinduerfen ?
Dort koennen sie um die Wette gehen sich und sich selbst metzeln, um das
beste Script zu ermitteln.

Oder gleich ein eigenes Mud? Fragt sich nur ob sich dann noch Magier finden
die was programmieren wollen.

- Ketos -

P.S. Ich habe ein kleines gagdes gehackt mit den man (Magier) Scriptspieler
schoen blockieren kann: den Maulkorb, dagegen hilft nicht mal die Leitung
abkappen und neu einloggen!
Hat allerdings den nachteil das es Rechenzeit braucht, womit wieder der
gegenteilige Effekt erreicht wird.

Frage: Wie halten sich andere Mud zu Scriptspielern?


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



Re: Re: nebenbei angemerkt: (Pteppic, 26. Jun 1995, 08:19:39):
#! rn=Ketos rt=804073453

Also jedenfalls ist mir bekannt, das in vielen Muds Scriptspieler ohne
Wimpernzucken geloescht werden, und das kann ich eindeutig befuerworten.
Die gute Nachricht fuer die Scriptsspieler:
Zwei Wiener Magier hier im MG, ich will ja keine Namen nennen, aber die
gehoer(t)en mit zu den extremsten Scriptspielern ueberhaupt, planen ein
Mud aufzumachen, und da werden dann Scripts sicher nicht verboten. :)

Pteppic ( Emperor und Ed angrinsend )

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



Re: Hilfsheriffs? (Jof, 26. Jun 1995, 09:16:03):
#! rn=Dwight rt=803964824

 Es war eigentlich auch nicht so gedacht, das ein gegenseitiges 'Bespitzeln'
aus dem Scriptspielerverbot entsteht; vielmehr sollten sich Spieler ueber
Scriptspieler beklagen, wenn sie sich durch diese GESTOERT fuehlen, nicht
gezielt nach solchen suchen. Schliesslich sind Spieler Spieler und keine
Hilfssheriffs :)

 Jof

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



Re: Re: Hilfsheriffs? (Nudei, 26. Jun 1995, 10:35:46):
#! rn=Jof rt=804150963
Das finde ich echt schade.
Meine Aufassung waere: Man Mailt die Namen von Scriptspielern, diese werden
auf einer Liste bekanntgemacht.
Zu bestimmten Zeiten werden diese Konskriptionslisten diskutiert. Wer
draufsteht und sich nicht verteidigt gegen den Vorwurf des Scripspielens, der
wird sofort gebannt. Derjenige, der ihn denunziert hat, erhaelt sagen wir
50000 Muenzen gutgeschrieben.

Und sofort koennte man eine neue Gilde einfuehren: Die der Kopfgeldjaeger.

Nudei, freut sich auf den darauf folgendne Beruf des Advokaten

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



Re^3: Hilfsheriffs? (Ancalagon, 26. Jun 1995, 10:44:42):
#! rn=Nudei rt=804155746
Also, DAS ist doch mal ne tolle Idee! *grins*
Welcher Mag proggt das?
                                   Ancalagon
(wollte schon immer mal Geld mit seinen faehigkeiten verdienen....)

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



Re^3: nebenbei angemerkt: (Ed, 26. Jun 1995, 17:37:29):
#! rn=Pteppic rt=804147579
Es ist schon richtig das ich scriptgespielt habe und Emperor dies immer noch
tut. Auch richtig, dass wir ein MUD planen auf der TU-Wien.

Aber wenn wer glaubt, dass Scripts dort erlaubt sind, hat er sich getaeuscht.
Das MUD wird aeusserst Scriptfeindlich geproggt, es gibt (wie gesagt) genug
einfache Moeglichkeiten in einem MUD Scripts unmoeglich zu machen. (Damit
meine ich nicht so Unfug wie Stolperdraehte - eher Fussangeln, die Spieler
bekommen koennen um Scripts zu stoppen, einen aktiveren Raeuberbaum, Unbe-
rechenbare Rumrennmonster...)
Ein MUD indem Scripts rumrennen ist wirklich duemmlichst und ruiniert die
Stimmung. Ausserdem bringts einem selbst letztlich auch nix, bis auf den
Spass am Programmieren und wenn es das erste Mal rennt.. Weiss ich aus
eigener Erfahrung ;-)

Was das Banishen von Scriptspielern betrifft: Sheriff Muzmuz von
'HoliMission' in Linz hat das recht haeufig getan.
Fazit: Scheisstimmung im MUD, Muzmuz wurde per Votum von den Spielern
abberufen und hat sich selbst gebanisht.

Sowas waer viel zu schade fuer ein freundliches MUD wie Morgengrauen!

Ed, programmiert jetzt lieber am MG mit als Scripts.

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



!!KLAU!! (Mesirii, 26. Jun 1995, 22:18:50):
Hallo Leute,
obwohl ich meinen kleinen Laden noch nicht offiziell eroeffnet habe, muss
ich schon den ersten Einbruch melden. Ich finde es nicht ganz in Ordnung,
wenn man einfach in ein fremdes Haus geht und sich dort alles mitnimmt,
was man vorfindet. Mein Haus ist ja deutlich genug als Verkaufseinrichtung
ausgezeichnet, zumindest fuer denjenigen, der nicht mit geschlossenen Augen
durchs MG rennt. Dann finde ich es nicht besonders nett, wenn mein ganzes
Warenlager einfach so gepluendert wird (ich wollte zur Eroeffnung wenigstens
ein paar Vorraete haben), und der dreiste Mensch/Elf/Zwerg oder wasweissich
nicht mal das zeug bezahlt, was er mitnimmt.
Ich bitte denjenigen, sich bei mir zu melden, damit ich ihm gehoerig die
Ohren langziehen kann.
Mesii
P.S. Achso, wer einwendet, dass ich mein Haus offen stehenlasse, der sollte
sich auch darueber beschweren, dass all die Laeden im MG staendig geoeffnet
haben.



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



Re^5: Hilfsheriffs? (Asmodis, 28. Jun 1995, 17:04:26):
#! rn=Garfield rt=804346377
Aeh, Garfield, wir Spieler haben immer noch das Recht, etwas
vorzuschlagen, also warum dieser barsche Ton ?

          Ciao, Asmodis(findet diese Script-Diskussion aber auch albern)

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



Re: !!KLAU!! (Silvana, 29. Jun 1995, 07:15:35):
#! rn=Mesirii rt=804197930
Na, ja - Bei den Laeden steht im allgemeinen nur der Ladenbereich offen
und nicht gleich das ganze Lager. Was meinst Du, was da los waere, wenn
jeder aus dem Lager klauen koennte, wie er/sie wollte:
nimm schwert - verkaufe schwert - nimm schwert - verkaufe schwert....

Sicher ist es nicht die feine Englische, alles mitzunehmen, was rumliegt,
aber grade wenn ein Raum offen zugaenglich ist, nehmen die meisten
Anfaenger an, dass das so sein muss, dass da was rumliegt und dass man
sich das nehmen darf. Vor High-Level-Playern mit schlechtem Benehmen mal
ganz abgesehen....

Silvana - auch mal einen sinnlosen Artikel schreibend.

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



Robin ist bescheuert (Lefty,  2. Jul 1995, 00:48:27):
So, jetzt muss ich mich mal megariesig aufregen. Jetzt hat mich Robin schon
3 mal in einen Zustand versetzt, wo ich nix mehr machen kann ausser sagen.
Man kommt da nur noch mit nem braek oder Magierhilfe raus. Da frage ich doch
mal, was der Schwachsinn soll. Robin schlaegt wohl ganz gerne bei Wegeskripts
zu, da freut man sich ja .... ich muss sagen, das vermiest mir ganz schoen
den Spass am mudden, sowas muss echt nicht sein. Entfernt bei Robin bitte mal
diese Funktion, das ist nur Schikane.
Ausserdem moechte ich mal wissen, wieso Robin einen angreift (mit so nem
tollen Pfeil), obwohl man nur bei ihm vorbeilaeuft. Zum Glueck konnte mein
Zweiti ihm als Karateka ausweichen, sonst waere es das wohl fuer ihn gewesen.
Okay, das war mein Senf ...
Ein sich masslos aergernder Lefty

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



Re: Robin ist bescheuert (Anakin,  2. Jul 1995, 00:59:45):
#! rn=Lefty rt=804638907
Hiho,

Yop, auch ich wurde mal von Robin festgehalten und konnte nix machen.
Zum Glueck war Romili da hat und hat mich erloest. Also wenn Wege-
scripts verboten sind sollte man das sagen, denn in der mpa in cat*'s
Artikel stand ja wohl dass die erlaubt sind.

Anakin (auch ziemlich sauer)

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



auch robin (Toss,  2. Jul 1995, 04:13:56):
hi!

ich hatte glueck, robin hat mich noch nicht erwischt, obwohl ich die ganze
nacht ueber die he renne wie ein irrer... nagut, wenn man ab und zu mal ein
bein gestellt bekaeme, meinetwegen, ich haatte auch mit den stolperdrehten an
sich kein prob, denn wenn man mal fiel, fand man den weg ja fix wioeder
Wenn robin einen aber auch angreift, geht der spass mit sicherheit zu weit,
weil er ja durchaus was aufm kasten hat ;)
Oder hat lefty am ende seines wegescripts voreilig ein toete alle eingegeben
?

Sollte man mal klaeren. Ebenso wie die frage, ob nun gegen wegescripts was
einzuwenden ist, oder nicht.

Ryne

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



Re: auch robin (Lefty,  2. Jul 1995, 11:07:28):
#! rn=Toss rt=804651236
Ich nochmal !
Wenn ich bei meinem Zweiti ein toete alle in ein Skript einbauen wuerde,
waere
der wohl am ehesten tot. Nein, ware auch ein unerlaubtes Skript, und was ich
in die erlaubten schreibe, kann ich schon noch ueberblicken (*grins*, soviel
sind es nicht). Also nochmal, der hat nen Pfeil auf meinen Zweit abgefeuert,
wobei dieser noch nicht einmal per Skript unterwegs war !!! :(
Just my Senf
Lefty, der den alten guten Robin wiederhaben will

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



Re: Re: auch robin (Toss,  2. Jul 1995, 13:19:01):
#! rn=Lefty rt=804676048
Tja, dann haben die mags ja wohl wieder mal was zu arbeiten...
ich denke kaum, dass es beabsichtigt ist, dass Robin ohne Vorwarnung Spieler
angreift, oder ?

Ryne

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



Re^3: auch robin (Garfield,  3. Jul 1995, 00:57:41):
#! rn=Toss rt=804683941

Gibts da mal ne reaktion von unseren lieben maggies?
waer toll.
ich selber bin robin noch nicht zum opfer gefallen, hab aber auch
im moment keinen bock, auf die he zu rennen, wenn ich mir das so
anhoere.

garfield.
***

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



Re^3: auch robin (Jof,  3. Jul 1995, 16:26:02):
#! rn=Toss rt=804683941

 Tut er das???
 Wars ein Einzelfall? Dann wuerde ich auf einen Bedien-Fehler tippen ...

 Jof

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



Re^3: auch robin (Jof,  3. Jul 1995, 16:26:49):
#! rn=Toss rt=804683941

 Kannst du aber, die Falle in Robin ist nicht mehr aktiv.

 Jof

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



Re^4: auch robin (Kirk,  3. Jul 1995, 19:39:28):
#! rn=Jof rt=804781609
Hi!

Wenn ich da mal was klarstellen darf ...
Das Problem, dass Robin Pfadscriptspieler und auch Spieler ohne Script, die
ueber lange Zeit relativ "aktiv" waren eingefangen hat, lag daran, dass die
durchschnittliche Kommandozahl pro Zeit nicht schnell genug absank und das
war NICHT mein Fehler. Ich habe vorher ueber einige Zeit hinweg beobachtet
wie hoch dieser Wert kommen kann und die Einfangschwelle meines Erachtens
hoch genug gesetzt. Dumm gelaufen, denn das hat offensichtlich die falschen
getroffen. Ich moechte mich dafuer entschuldigen. Das war nicht so gedacht.

Kirk

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



Re^6: auch robin (Kirk,  3. Jul 1995, 20:30:11):
#! rn=Cuchullin rt=804795755
Todesstrafe????
Davon war noch nie die Rede. Er hat die Spieler nur festgehalten (fuer
15 Minuten)

Kirk

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



RE: RE: RE: auch robin (Hawk,  9. Jul 1995, 02:08:14):
Tja. Robin schiesst seit neustem vergiftete
Pfeile ab. Auch auf mich. Nur  hab ich eine Frage:
Trifft er denn auch?
Ich denke die Antwort ist Nein.
Man wird auch nicht weiter von ihm angegriffen.
Wieso also die Diskussion?
ein verwunderter hawk.

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



Re: RE: RE: RE: auch robin (Asmodis, 10. Jul 1995, 10:57:03):
#! rn=Hawk rt=805248494
Wieso seit neuestem? Der schiesst vergiftete Pfeile ab, seitdem ich ihn kenne
!!

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



Re: RE: RE: RE: RE: auch robin (Hawk, 15. Jul 1995, 03:15:50):
In der Tat, du hast ja recht.
Wie konnte ich das nur uebersehen.
(schmunzel) ein sich amuesierender hawk

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



Re: SCRIPTE (Gwynwaiter, 17. Jul 1995, 21:15:52):
#! rn=Hate rt=803824760

Hallo Ihr,

Ich bin als mit-tf-aber-ohne-script Spieler auch einverstanden damit, dass
das jetzt verboten ist. Allerdings Eure "Werde Magier wenn Du was proggen
willst" sind wenig hilfreich.

Denn: Wenn ich mitarbeiten will (oder besser, wenn mein Erstie das will),
darf ich nicht mehr helfen (was ich sehr gerne tue, auch mit meinem Kleingeld
-bin kein Bankzweitie- ) ...  Wichtiger aber: Ich muesste erst in riesiges
Level aufsteigen (Gwyndon ist nach der alten Regel mit weniger Quests ueber
das 10.Level gekommen - Ohne Loesungsscript, wenn auch mit Hilfe) - und wegen
der Pflichqeusts muesste ich jede Menge metzeln, dafuer alle zt's suchen...
und staendig neue Ausruestung zusammensuchen etc... Das macht mir weniger
Spass als manchen anderen, denke ich. Wenn ich aber erst Seher werden muss, um
einst Magier werden zu koennen... verfuehrt mich das zu Komplettloesungen.

Soll heissen: Wenn ich anderen mehr Spass und Freude machen kann als Magier,
der mithilft und mitgestaltet, gerne. Wenn Komplettloesungen die Freude
verderben, verstaendlich. Wenn ich Metzeln muss, um Magier werden zu
duerfen...

Also denke ich: Weniger Pflichtquests, um den Metzelzwang zu verringern. ODER
wem man das zutraut, das er verantwortungsvoll damit umgeht und konstruktiv
mitmacht, den macht man unabhaengig von bisher gemetzelten Monstern zum Magier
ODER man sieht ein, das auch Loesungen einem guten Zweck dienen koennen -
naemlich dass einer Magier werden und mitarbeiten kann, der das vielleicht
moechte.

Yours truly Gwynwaiter, auch im Namen von Iras und Gwyndon

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



Was soll das ??? (Mesirii, 27. Jul 1995, 14:08:29):
Leute muss das wirklich sein????
Da versuche ich, um ein bisschen mehr Abwechslung ins MG zu
bringen und auch um eine Konkurrenz zu den doofen Haendlern
aufzumachen, mein kleines Verkaufsbuero recht und schlecht
zu fuehren, ermetzle all die schoenen Dinge, die ein Spieler-
herz hoeherschlagen lassen und betreibe nicht so einen Wucher
wie die restlichen Geschaeftstreibenden...
Und was ist der Dank dafuer ????
Einmal pro Monat komplett beraubt zu werden (nicht nur die Ware,
sondern auch mein Geld !!!)?
Nein, danke!

Also ueberlegt euch nochmal was das soll

Mesirii (enttaeuscht)


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



Re: ideln (Orktoeter, 28. Aug 1995, 19:18:44):
#! rn=Slash rt=809594520
Lieber, guter, bester Slash :)
Was fuer ein Verstaendniss hast du von einem Spiel ?
Ich kann dich ehrlich gesagt nicht verstehen.
Wenn du am Wochenende im Schwimmbad liegst, oder sonst etwas machst und deine
Spielfigur killt so ab und zu mal (nach jedem reset) ein Monster, was hat das
dann noch mit Spielen zu tun ?
Ich finde der Magier, der dich da rausgeworfen hat hat voellig zu recht
gehandelt. Falls du schwierigkeiten haben solltest, das selber einzusehen
(weiss ja noch nicht, ob es nach diesem Artikel immer noch so ist) dann tust
du mir leid.
OrkT.

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



Re: Re: ideln (Slash, 29. Aug 1995, 11:51:32):
#! rn=Orktoeter rt=809630324
Quak hier nicht rum, liebster OrkT. es geht doch nicht um das, was man getan
hat, sondern um eine einfache Frage ueber das, was man tun darf.
Ich war ein paar Wochen nicht hier, habe die Sache mit den Scripten nur am
Rande mitbekommen und habe eine vernuenftige Frage gestellt:
Ist ideln auch scriptspielen?
Darauf kann man ganz kurz antworten, naemlich mit ja, oder mit nein.
Mehr wollte ich doch gar nicht wissen, keine Beschuldigungen, keine
Rechtfertigungen, nur eine einfache kleine Frage aus Interesse..

Ausserdem ist die Schwimmbadzeit in Passau vorbei, ausser man geht auf die
Strasse :) Aber daran kann man wohl nichts proggen :)
Also Fazit ich habe keine Schwierigkeiten, ich lasse mir keine einreden, aber
ich stelle Fragen :)

Slash

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



Re^3: ideln (Caradhras, 29. Aug 1995, 12:45:54):
#! rn=Slash rt=809689892
Idlen ist erlaubt in diesem Sinne wie du es meinst, Slash.

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



Re^4: ideln (Yendi, 29. Aug 1995, 12:57:19):
#! rn=Caradhras rt=809693154

Ja, ideln ist erlaubt. Wenn man aber bei einem agressiven Monster steht, das
man dann automatisch bei jedem reset plaettet, dann muss man sich nicht
wundern, wenn ein Magier einen ein paar Raeume weiterschiebt oder einfach
ausloggt.

TwYs   *grins BoBo zu*


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



Re^5: ideln (Catweazle, 29. Aug 1995, 13:03:49):
#! rn=Yendi rt=809693839
Hi!
Yendi hats gesagt! Idlen ist natuerlich prinzipiell nicht verboten.
Das wird aber kaum einen Magier daran hindern, Stundenalte idler auszuloggen.
Das passiert sogar mir, wenn ich jemanden sehe, der zb 5h idle ist, dann
log ich den aus. Man weiss ja schliesslich nicht, warum er das ist. In erster
Linie nimmt man an, er hat den Spieler vergessen. Ausserdem schadet es dem
Idlerwirklich ueberhaupt nix, wenn er ausgeloggt wird (immer vorrausgesetzt
er wird RICHTIG ausgeloggt, naemlich mit remove_interactive() liebe
Kollegen!).
Was anderes ist es, wenn der Spieler bei nem agressiven Monster rumidlet, da
SOLLTE er sofort ausgeloggt, oder besser woanders hingestellt werden, da
der Spieler dann u.U. anderen Leuten killbare Monster wegnimmt, obwohl er
idlet, oder evtl. sogar questrelevante Monster schlachtet (Jaaa, hatten wir
auch schon mal).
Yours truly,
   Catweazle

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



Re^6: ideln (Slash, 29. Aug 1995, 13:31:56):
#! rn=Catweazle rt=809694229
Danke, das ist eine klare Antwort wie ich sie mir gewuenscht habe :)
Slash

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



Re^6: ideln (Asmodis, 29. Aug 1995, 19:13:48):
#! rn=Catweazle rt=809694229
Ich finde auch, dass Leute, die stunden- oder tagelang herumideln,
ausgeloggt werden. Besonders Jof ist da ein schlechtes Vorbild :)

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



Re^7: ideln (Boing, 30. Aug 1995, 15:08:26):
#! rn=Asmodis rt=809716428
Idelnde Magier werden tatsaechlich ausgeloggt, spaetestens beim dritten
reset.
  Boing

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



Re^8: ideln (Schrumpfi, 30. Aug 1995, 18:31:51):
#! rn=Boing rt=809788106
Hmm, warum war ich dann mal das ganze WE eingeloggt? Bloodgore hatte
Modemprobleme und vergessen mich auszuloggen und ich war am Montag noch immer
eingeloggt.
Kann es sein, dass die Muensteraner nicht ausgeloggt werden?
Schrumpfi

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



Re^7: ideln (Jof, 31. Aug 1995, 15:54:05):
#! rn=Asmodis rt=809716428

 Magier werden nach 2-3 Stunden idlezeit automatisch ausgeloggt - das trifft
auch auch mich zu. Allerdings flieg ich tagsueber selten raus, weil ich immer
wieder mal ins Mud schau und mit irgendwem rede.

 Jof

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



Ryne faehrt zu schnell! (Guldukat, 16. Sep 1995, 19:27:29):

Letztlich wollte ich etwas mit Ryne besprechen, er war jedoch in einem
harten Kampf, meinte 5 Minuten.
Gut, ich hatte nix anderes zu tun, also machte ich mich unsichtbar und
tippte: verfolge Ryne.

Das haette ich nicht tun solln.

Er kaempfte mit seiner Armee von 3 oder noch mehr Zweitsehern und rannte
durchs MG, dass die Datenflut, die bei mir ankam, eine 486er Dose
zum Absturz brachte.

Neu gebootet, telnet mg .... und die Kiste schmierte wieder ab, da ich noch
im verfolge Modus war. Ich konnte auch nix tun, da der Rechner keine Daten
mehr annahm.

Neu gebootet, mit zweiti rein und Ryne gebeten, er moege mal 10 sek still
in einem RAum stehenbleiben .......


Fazit: Ich forder ein Tempolimit fuer Ryne und andere HL-Spieler!

GulDukat


(Ironie off)

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



Re: Ryne faehrt zu schnell! (Jaf, 17. Sep 1995, 21:02:27):
#! rn=Guldukat rt=811272449

*kicher* Naja, das ist doch die einzige 'Waffe', die man gegen
snoopende Maggis hat. Die sollte schon erhalten bleiben :)

Fyt.

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



Re: Re: Ryne faehrt zu schnell! (Cuchullin, 18. Sep 1995, 10:34:41):
#! rn=Jaf rt=811364547


Snoop!=unsichtbar_verfolgen

Cuch.- (grenzt scharf ab)

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



Truhen (Yendi, 18. Sep 1995, 16:11:44):


Heute, Montag, 18. Sep 1995, um 16:10 bin ich an Phygos' Truhe gestorben.
Dieser Seher laeuft mit einem agressiven Monster im Schlepp herum. Darf das?


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



Re^3: Ryne faehrt zu schnell! (Mupfel, 18. Sep 1995, 16:13:54):
#! rn=Cuchullin rt=811413281
genau dafuer gibts ne prop Guldukat. einfach 'xcall
$me->SetProp(P_FOLLOW_SILENT, 1) und ruhe ist :-)

-mupfel- (hat das als ali :-)

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



Re: Truhen (Nasim, 18. Sep 1995, 16:51:32):
#! rn=Yendi rt=811433504
Kann ich bestaetigen, die Truhe war agressiv und hat gar nicht mal schlecht
getroffen. Mit sowas sollte man nicht gerade mitten in PV rumlaufen, finde
ich jedenfalls. Naja, ein Feuerbaelle und es hatte sich ausgetruht.
Gruss, Nasim

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



Re^4: Ryne faehrt zu schnell! (Guldukat, 18. Sep 1995, 19:55:27):
#! rn=Mupfel rt=811433634
Naja, er war mit 4 zweitsehern am kaempfen, und ich denke, die kampfmeldungen
machen den meisten teil aus

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



Re^3: Truhen (Asmodis, 21. Sep 1995, 22:38:46):
#! rn=Dhojakt rt=811713476
nicht immer, aber immer oefter !!

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



das is ja wohl nich war !!! (Yeti, 28. Sep 1995, 20:49:35):
------->8------ Log on --------
Hier knickt die Strasse nach Norden ab. Im Westen sind mehrere Abzweigungen
nach Norden.
Es gibt zwei sichtbare Ausgaenge: westen und norden.
> Du hast jetzt 97 Lebenspunkte und 1 Magiepunkte.
w
Du befindest Dich immer noch auf der Orkhausener Hauptstrasse. Hier zweigt
die Orkallee nach Norden ab. Im Osten mach die Strasse einen Knick nach
Norden.
Es gibt drei sichtbare Ausgaenge: osten, westen und norden.
Ein Ork.
Ein Ork.
Ein Ork.
Ein Ork.
Eine Orkweste.
Ein Orkhelm.
Ein Orkschwert.
  Der Ork greift Dich mit einem sehr gelungenen Yoko-geri-kekomi an.
  Du wehrst den Angriff mit einem Soto-shuto-uke ab.
Du hast jetzt 97 Lebenspunkte und 0 Magiepunkte.
  Der Ork zerschmettert Dich in kleine Stueckchen.
Du hast jetzt 46 Lebenspunkte und 0 Magiepunkte.
  Der Ork greift Dich mit einem gelungenen Mae-geri-kekomi an.
  Du versuchst, den Angriff mit einem Gedan-barai abzuwehren.
  Der Ork schlaegt Dich mit dem Krachen brechender Knochen.
Du hast jetzt 22 Lebenspunkte und 0 Magiepunkte.
  Der Ork greift Dich mit einem sehr gelungenen Yoko-geri-kekomi an.
  Du versuchst, den Angriff mit einem Gyaku-mawashi-otoshi-kakato-uke
abzuwehren.
  Der Ork zerschmettert Dich in kleine Stueckchen.w

[Tod:] Ein Ork hat gerade Yeti umgebracht.
Der Teddy knuddelt Dich ein letztes Mal.
  Der Ork greift Dich mit dem Orksaebel an.
  Du versuchst, den Angriff mit einem Ken-juji-uke abzuwehren.
  Der Ork trifft Dich hart.
>

Du kannst einen Mann mit dunkler Kapuze neben Deiner Leiche stehen sehen.
Er wischt die blutige Klinge einer grausigen Sense mit langsamen, gemessenen
Bewegungen ab. Ploetzlich hoert er auf und scheint Dich direkt anzusehen mit
seinen leeren Augenhoehlen ...

----->8-------- Log off ----
mnpcs schoen und gut, aber bitte nich 4 auf einen haufen :(((
achja, wers nicht weis, das war auf der neuen insel von morgoth

Yeti *sehr wuetend*

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



Re: das is ja wohl nich war !!! (Yeti, 28. Sep 1995, 20:54:50):
#! rn=Yeti rt=812317775
...komisch, sogar als leiche wehrt man noch ab :))

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



Und auch noch mein Kommentar: (Ryne, 28. Sep 1995, 21:05:54):
Eine Region, wo die meisten raeume nur daraus bestehen, dass ein Raum eine
langbeschreibung von 1 Zeile haben, max. 2, halte ich nicht fuer in unser Mud
passend, dass eigentlich sehr schoene Beschreibungen vorweisen kann. Und wenn
ich in der langbeschreibung einen Kastenienbaum sehe, wuerde ich den auch ganz
gerne mal anschauen.

Auch hier mal wieder das Problem: wer testet eigentlich die Gegenden ? Wer
einmal in Orkhausen einen 131 cm kleinen Ork Karateschlaege hat austeilen
sehen, lernt schnell die Vorteile des Ende-Befehls kennen. Ob die Kneipe vor
Ort nun aufgewertet worden ist oder nicht. Metzeln macht da nicht nur kein
Stueck Spass, es ist schlicht fuer Selbstmoerder.

Sorry Morgoth, das soll jetzt nicht nur auf Dich gehen; hier liegt halt mal
wieder ein Beispiel dafuer vor, was passiert, wenn regionen nicht / nicht
ausreichend durchgetestet werden. Und ohne hier eine neue Diskussion zu diesem
Thema vom Zaun brechen zu wollen: reine Metzelregionen koennen wohl nur
Spieler testen, denn das verlorene Land ist ein klassebeispiel dafuer, was
passiert, wenn man das nicht tut.

Ryne.
Faehrt gerne nochmal ins verlorene Land, aber erst nach erheblichen
veraenderungen.


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



Re: Und auch noch mein Kommentar: (Caradhras, 28. Sep 1995, 23:07:41):
#! rn=Ryne rt=812318754
Caradhras nickt Ryne zu.
Muss Dir vollauf zustimmen. Selbst alleine die Staerke der normalen Orks
ist eindeutig viel zu hoch, ich bin eine Strasse nach Norden gekommen
und einen Raum nach Osten, als ich aber dann von einem KarateOrk
(einem!) zerschmettert wurde und mit Vorsicht 80 (schon doppelt so
hoch wie normal) auf einmal mit 19 LP fluechtete, hab ichs auch auf-
gegeben dort. Und ich hatte keine schlechte Ruestung dabei, nicht
ganz Maximum fuer Spieler, aber beinahe.

          tschoe
    Caradhras - der sogar mit einmal Vollheilung 2 kleine Orks
               dort geschafft hat

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



Re: Re: Und auch noch mein Kommentar: (Bloodyharry, 29. Sep 1995, 07:33:08):
#! rn=Caradhras rt=812326061
Hm, scheint als wenn man dort eben nicht allein hingehen sollte.
Vieleicht waere das mal wieder ein guter Grund die Zusammenarbeit zwischen
den Spielern zu foerdern.

Bloody Harry

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



Re^3: Und auch noch mein Kommentar: (Morgoth, 29. Sep 1995, 07:36:14):
#! rn=Bloodyharry rt=812356388
yep, genau das ist/war meine absicht. ich habe trotzdem die orks etwas
entschaerft.
allerdings werden immer noch alle aggressiv, wenn einer angegriffen wird.
ihr muesst halt nur die richtige taktik finden....und vor allem ...
zusammenhalten
morgoth, etwas gekraenkt

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



Re: Re: Und auch noch mein Kommentar: (Torwall, 29. Sep 1995, 11:08:11):
#! rn=Caradhras rt=812326061
Torwall schuettelt den Kopf.
Auch wenn das jetzt etwas eigenartig klingt. Ich fand die Staerke der
Orks ganz ok. Ich hatte auch keine Probleme sie der Reihe nach umzunieten.
Nur fuer den Oberork mit dem Schlagring musste ich einmal nachtanken.
Natuerlich sollte man sich nicht gleichzeitig mit mehreren anlegen, aber
wenn man sie einzeln angreift sind die kein Problem. Ich habe bei den
kleinen Orks maximal 30 LP verloren.
Nebenbei moechte ich noch erwaehnen, dass ich erst den braunen Guertel
habe und nur mit Fauststoessen angegriffen habe.
Vieleicht liegt das Geheimnis wirklich darin, dass ich Frosch bin, aber
das kann ja jeder sein.

So. Das wollte ich nurmal zu diesem Thema sagen.

Torwall der Karatefrosch. Hat nichts dagegen, wenn sich Orks auch mal wehren.


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



Re^3: Und auch noch mein Kommentar: (Raffi, 29. Sep 1995, 11:14:28):
#! rn=Torwall rt=812369291
Ich weiss nicht was Ihr hhabt ? ich hoere di ganze zeit gejammer das die
meistten NPC zu schwach sind, und nun wenn es ploetzlich Knackige jungs giebt
ist es auch wieder nicht recht.
Das einzige was mich soert ist das es a) gleich noch an leicht zugaenglichen
Orten AGGRESSIVE NPC gibt, unb b) diese auch noch mit gift um sich werfen
(Spinne). Ich hatte gerne das mann so eine Gegend auch ohne Metzeln bereisen
und anschauen kann.

Gruss
H.
(der mit den meissten Typos)

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



Re^4: Und auch noch mein Kommentar: (Grimmborn, 29. Sep 1995, 11:40:25):
#! rn=Raffi rt=812369668

Mir kanns ja egal sein, aber als Spieler haette ich mich ueber ganz was
anderes aufgeregt:
Offensichtlich laufen hier im MG Orks rum, die, sagen wir mal so, nicht so
schrecklich schwach sind. Nun hat sich aber hier eine gewisse Hirarchie
eingebuergert: Drachen sind staerker als Goblins, diese staerker als Orks und
diese wiederum staerker als Schmetterlinge. Wenn jetzt Orks auftauchen, die
zuschlagen wie der Teufel dann besteht Begruendungsbedarf, und zwar massiv.
Natuerlich kann ich einen Schmetterling machen, der so stark ist wie ein
Drache (nur Langbeschreibung aendern im wesentlichen), aber ich sollte
erklaeren, wieso ich da so ein Monster habe.
Vielleicht erinnert sich noch jemand an den Aufstand bei der berittenen
Stadtwache von Moulokin (nunmehr Zentauren). Das mud sollte nicht in sich
unlogisch werden, indem ploetzlich die Staerke ienes Monsters unabhaengig von
seinem Aeusseren ist.
Naja, und zu Raumbeschreibungen von 1-2 Zeilen sag ich nichts. Hab ich mich
frueher schon immer drueber aufgeregt...

Aber wie gesagt, geht mich ja alles nichts an. ;-)

Grimmborn der Atheist

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



Re^5: Und auch noch mein Kommentar: (Felagund, 29. Sep 1995, 11:58:46):
#! rn=Grimmborn rt=812371225
Tsts..jetzt stimm ich schon mit Grimmborn ueberein ;)
Meiner Meinung nach ist es voellig ok, die Spieler mal n bissken
herauszufordern und auch ma ueberharte Monster /Fallen etc zu schreiben aber
wenn man voellig aus der Reihe fallende Sachen proggt, dann sollte man doch
wenigstens die Spieler irgendwie davor warnen...
Am einfachsten ist sowas natuerlich ueber die Raumbeschreibungen
/Monstereschreibungen) und wenn die nicht existieren (was fuer mich bei 1-2
Zeilen der Fall ist, dann ist das natuerlich nicht moeglich...
Vielleicht waere es besser,bei manchen Sachen lieber noch n paar Tage zu
warten, und sie dafuer lieber richtig zu machen, zumal es momentan ohnehin ne
Menge neues gibt
Bloss meine Meinung....Fela

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



Re^5: Und auch noch mein Kommentar: (Cuchullin, 29. Sep 1995, 12:00:09):
#! rn=Grimmborn rt=812371225

Scheiss-Artikel, sowas, aber Grimm hat einfach recht.

Cuch.-   - stirbt wenn, dann lieber im Lupinental, da isses schoener.

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



Rufen, oder nicht ? (Chicola, 29. Sep 1995, 15:29:00):
Hallo :)

Bin ich jetzt ein wenig hinterher oder warum passiert mir folgendes ?

 85 Magiepunkte
rufe OK schoenes WE wuensch ich euch ! und muddet nicht so viel :)

24 Magiepunkte ( !!! )

Du hast nicht mehr genug Magiepunkte.

( und natuerlich hab ich nicht gerufen )

Ist das ein BUG ? Wenn ja bitte entfernen wenn nicht, dann bitte erklaeren !!
:)

Eine etwas genervte            Chicola

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



Re: Rufen, oder nicht ? (Cuchullin, 29. Sep 1995, 15:31:20):
#! rn=Chicola rt=812384940

IMHO ein Bug im Pandora-Fluch.
"setz fluchlevel -1" ist derzeit der wichtigste Befehl nach der Quest.
Cuch.-  - kennt das zur Genuege.


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



DANKE ;) (Chicola, 29. Sep 1995, 15:34:10):
Einfach nur Danke :) *knuddel

Chicola ( iss fuer kurze Artikel )

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



Re^5: Und auch noch mein Kommentar: (Paracelsus, 29. Sep 1995, 18:44:35):
#! rn=Grimmborn rt=812371225
Tja, 1-2 Zeilen Langbeschreibung sind vielleicht wirklich etwas kurz.
Was das mit der Staerke angeht: Es gibt da fuer Abenteurer den
Zauberspruch "schaetz". Sollte man bei neuen Monstern eigentlich immer
anwenden. (Hab ich zumindest immer gemacht)
Ich bin nur froh, dass es noch keinen Drakonier-"Prototypen" gibt, nach
dem ich mich haette richten muessen ]:-)

Der Fertigstellung seines Gebietes entgegenfiebernd
    Paracelsus.

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



Re: das is ja wohl nich war !!! (Khidar, 29. Sep 1995, 20:07:21):
#! rn=Yeti rt=812317775
Hm, die Orks scheinen nicht fuer Karatekyus geeignet zu sein, unter 150 lp
sollte man wohl sehen, dass man Land gewinnt. Kann aber in Moulokin genauso
passieren, da hatte ich auch schon mal 5 Elitesoldaten und 2 soldaten auf
einem Haufen.
Khidar.

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



Re^5: Und auch noch mein Kommentar: (Asmodis, 29. Sep 1995, 21:32:45):
#! rn=Grimmborn rt=812371225
Vielleicht sollte man diese Orks etwas groesser machen?
Soviel ich weiss, gibt es in der Fantasywelt verschiedene
Arten von Orks, die Groessten und Staerksten waren die
Morderorks, glaub ich, die man bisher getroffen hat sind
dann eben von einer anderen Art.
Nur so als Vorschlag!

           Ciao, Asmodis

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



Re^6: Und auch noch mein Kommentar: (Cuchullin, 29. Sep 1995, 21:33:47):
#! rn=Asmodis rt=812406765

Hiessen die nicht 'Uruks'?
Konnten die Karate?
Oehm... ;-)
Cuch.-

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



Re^7: Und auch noch mein Kommentar: (Asmodis, 29. Sep 1995, 21:35:30):
#! rn=Cuchullin rt=812406827
Warum soll man sie nicht anlernen koennen?
Muessen nur Menschen, Zwerge, Elfen Karate koennen ?

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



Re^8: Und auch noch mein Kommentar: (Asmodis, 29. Sep 1995, 21:35:49):
#! rn=Asmodis rt=812406930
Und ein Braunbaer natuerlich :)

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



Re: Re: Rufen, oder nicht ? (Bilbom, 30. Sep 1995, 17:33:35):
#! rn=Cuchullin rt=812385080
Hi!
Ich habe aus versehen ganz am anfang setz fluchlevel 0 gemacht, und jetzt
kann ich nihct
mehr fluchen. Waere da die moeglichkeit die quest nochmal zu machen um wieder
fluchen zu koennen??

  Bilbom, NNN.

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



Artikel Metzeln Metzeln ... (Slash,  2. Okt 1995, 10:14:50):
Hi, ich habe folgendes gefunden und moechte es unkommentiert weitergeben:

"Die im Entscheidungstenor benannten Versionen des Computerspiels...
waren antragsgemaess zu indizieren.
Sie sind offenbar geeignet (Paragraph 15a I GjS), Kinder und
Jugendliche sozialethisch zu desorientieren, wie das Tatbestands-
merkmal "sittlich zu gefaehrden" in Parag. 1 Abs. 1 Satz 1 GjS
nach staendiger Spruchpraxis der Bundespruefstelle sowie hoechst-
richterlicher Rechtssprechung auszulegen ist.
Ihr wesentlicher Inhalt ist die bedenkenlose, realistisch ins-
zenierte Toetung unter anderem von Gegnern in Menschengestalt. ...
Die sozialethische Desorientierung ruehrt hier aus der Einuebung
des gezielten Toetens. Die programmimanente Logik bindet den Spieler
an ein automatisiertes Befehls- und Gehorsamsverhaeltnis, dessen
wesentlicher Kern das reaktionsschnelle, bedenkenlose Toeten
menschen, bzw. tieraehnlicher Gegenueber ausmacht. ... So ist ein
Zugewinn lebenserhaltender bzw. spielverlaengernder Waffen sowie der
dazugehoerigen Munition ueber weite Strecken an das Ausschalten
gegnerischer Figuren gebunden. ...
Da sich der Spieler im stetigen Kampf um das eigene Ueberleben
befindet, wird er gefuehlsmaessig intensiv in das Spielgeschehen
einbezogen. Die Art der Steuerung verlangt stetige Konzentration,
schnelle und zuverlaessige Reizaufnahme, sowie mittelmaessig bis
hohe Leistungen im Bereich der Feinmotorik. Eine kritische,
kognitive Bewertung des agressiven Spielinhalts und -kontextes ist
dem Spieler aufgrund einer derart hohen psycho-physischen Bean-
spruchung nicht moeglich. Das Toeten wird...spielerisch eingeuebt
und zum sportlichen Vergnuegen verniedlicht. ...
Hier werden Verhaltensweisen trainiert, die die koerperliche
Integritaet und Unversehrtheit anderer negieren. ...
Ausnahmetatbestaende i.S.d. Paragraphen 1 Abs. 2 GjS liegen nicht vor.
Eine Entscheidung nach Paragraph 2 verbietet sich im Hinblick
auf die Schwere der Jugendgefaehrdung, die sich im gezielten
Einueben gefuehlloser Toetungsakte offenbart. ..."

Es folgt die Rechtsbehelfsbelehrung...

Diese Entscheidung ist veroeffentlicht unter der Nummer 4279 (V)
und 4743 (V) vom 14.12.1994 im Bundesanzeiger Nr. 246 vom
31.12.1994

Slash

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



Re: Artikel Metzeln Metzeln ... (Boing,  2. Okt 1995, 10:41:10):
#! rn=Slash rt=812625290
Bezog sich das auf MG oder auf Doom? ;)
  Boing

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



RxTech :( (Hardil,  2. Okt 1995, 10:57:58):
Anscheinend koennen einige Magier nur austeilen, aber nicht einstecken:

[Allgemein:Zardoz] Apropos Wolpie... Beim Rodeln sollte man aufpassen, dass
[Allgemein:Zardoz] man nicht ueber Orktoeters Wopie faehrt...
[Allgemein:Zardoz] Das Stroh bremst ungemein :-)
[Allgemein:Toeter] Du meinst, man sollte aufpassen, dass man ueber Orkis
[Allgemein:Toeter] Wolpie faehrt
[Allgemein:Rxtech] kann ich auch ueber orki fahren?
[Allgemein:Hardil] ^orktoeters wolpie^rxtechs strohkopf
> PENG!
Rxtech gibt Dir aus der Ferne eine Ohrfeige.


soweit alles okinal. Aber dann


[Allgemein:Hardil] Dasd hab ich nich so gemeint


Und das war sicherlich nciht von mir.

-Hardil. Ist fuer Magier-Fuehrerschein.

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



netztot in den tod? (Ray,  3. Okt 1995, 13:05:52):
es ist immer wieder ein freudige (?!) ueberaschung beim einloggen in der
todessequenz zu landen. vor allem wenn man sich um 11:15 ausgeloggt und in
eine vorlesung begeben hat (ja, auch ich geh ab und zu in vorlesungen), zu
diesem zeitpunkt noch wohlauf im laden stand und dann erfaehrt, man waere um
11:28 (!) bei der haengebruecke gestorben :(((
irgendwas stimmt da nicht

ray, frustriert und keiner schuld bewusst

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



Re^7: Und auch noch mein Kommentar: (Throin,  4. Okt 1995, 10:44:16):
#! rn=Cuchullin rt=812406827
Ein grosser Ork -> Ein Uruk
mehrzahl: Uruk-hai
mehrzahl: Uruk-hai
mehrzahl: Uruk-hai
Prost, Throin.

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



Re: netztot in den tod? (Jaf,  4. Okt 1995, 21:46:08):
#! rn=Ray rt=812721952

Tja, Ray, Scheissscript wuerde ich sagen :)

Fyt.

Au... nein.. nicht hauen...

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



Re: Artikel Metzeln Metzeln ... (Snuggle,  9. Okt 1995, 16:18:08):
#! rn=Slash rt=812625290
Ja und? Um was gings denn ueberhaupt?

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



Schratkiller &Co KG (Ryne, 11. Okt 1995, 14:14:50):
Heya!

Also, wenn man mal eine kleine quest mit seinen Zweitis einschieben will,
dann versucht man leider schon seit laengerer Zeit meist verzweifelt, den
Schrat zwecks Schlafmitteluebergabe zu erreichen. Grund hierfuer ist, dass man
fuer die Chaotengilde einen satanischen Charakter braucht. Nun hab ich ja
Verstaendnis dafuer, dass man gerne mal den Schrat umnietet, weil der das
alignment sofort auf was weiss ich wieviel max. boese setzt, aber dass dies
permanent geschieht, weil die Chaoten ihr Alignment auf satanisch halten
muessen, ist - gerade bei einer leicht zugaenglichen Quest, die obendrein fuer
Anfaenger ist, ein absolutes Unding.
Gerade erst habe ich Bilbom, der wieder mal den Schrat umgenietet hat, um
eine Stellungnahme gebeten, wobei sich herausstellte, dass er ueberhaupt keine
Ahnung hat, dass man viel einfacher und schneller ein satanisches alignment
kriegt. Liest halt keine Zeitung der Mann. Aber dass hierunter die Anfaenger
leiden muessen, geht nicht an. Zitat Bilbom, als ich ihm sagte, ich wuerde die
quest ganz gerne spielen: Der Schrat resettet bald, aber dann werde ich ihn
toeten, da ich ein satanischen Charakter brauche. Nette Einstellung,
insbesondere wenn jemand einem sagt, man wolle die quest spielen.
Mein Fazit: Mindestens muss man fuer das Toeten des Schrats in die Hoelle
kommen (genauso ist es ja auch bei Schneewittchen der Fall), besser noch, das
Toeten der drei Kollegen wird nicht mehr mit einem so deutlichen Verlust an
alignment "belohnt". Dafuer gibt es naemlich deutlich bessere Moeglichkeiten
in diesem Mud, die auch ein Herr Bilbom kennen wuerde, wenn er mehr Zeitung
lesen respektive sich umschauen wuerde.

Ryne


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



Re: Schratkiller &Co KG (Mupfel, 11. Okt 1995, 19:29:29):
#! rn=Ryne rt=813417290
stimmt. die unke aus 'amaryllis' haut noch viel mehr rein :-)

aber scherz beiseite, ich stimme dir zu ryne. macht schrat & co. (und andere
anfaengerquestmonster) fuer chaoten unangreifbar, und schon ist schluss damit.

-mupfel-

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



Re: Re: Schratkiller &Co KG (Bendeigid, 11. Okt 1995, 19:44:27):
#! rn=Mupfel rt=813436169
Hiho!

Anstelle des Unagreifbarmachens ist die herabstufung des Alignment-Wertes die
erheblich einfachere Art. Und es gibt ja inzwischen auch massig Monster mit
positivem Alignment, die man killen kann. Auch fuer Fast-Newbies zu schaffen,
und damit auch fuer Neueinsteiger in die Chaosgilde interessant. und die
Cracks koennen doch mal eben... *zensiert wegen Spielerhilfe*

Z'par Servu,
            Bendeigid

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



Re^3: Schratkiller &Co KG (Larissa, 12. Okt 1995, 12:48:25):
#! rn=Bendeigid rt=813437067
Hmmmm....was genau ist ein positives Alignment? *grins*
Larissa, satanisch :)

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



Re^3: Schratkiller &Co KG (Zuerileu, 16. Okt 1995, 02:53:22):
#! rn=Bendeigid rt=813437067
Sali zaeme,
Hmm.. ist ja oede das man den Schrat nicht mehr killen darf, ich meine ich
darf ja eh nicht mehr aber das waren noch zeiten wo man auf dem vorbeiweig,
gleich alle drei ohne tanken in die ewigen jagdgruende geschickt hat. Ich
meine nicht jeder ist so brav und lieb und killt nur boese monster und loest
quest. Nein zu meiner Spielerzeit versuchte ich oft satanisch zu bleiben und
versuchte extra auch gute Monster zu diesem zweck zu killen. Nunja, damals hat
man das Susanne unangreifbar gemacht als ich sie sicher 10 mal am tag
umgeniedet habe und nun werden die drillings unbesiegbar gemacht. Fuer
anfaenger find ich das eine echt gute Tat aber fuer so ein alter Metzel und
Kiffbruder wie mich ist das ein schwerer verlust =:(. In meiner
Dunkelzwergenstadt, wenn sie mal fertig wird, werde ich von anfang an
versuchen was fuer anfaenger zu programmieren und auch eher staerkere Monster
fuer die Profis. So das jeder was davon hat der sich ueberhaubt dort unten
tief in der Unterwelt hinutertraut, denn nur dort unten kann man so einen
fiesen und hinterhaeltigen Magier wie mich wueten lassen =:))

Tschuess zaeme..  auf ein neues..   Zuerileu (war schon immer ein Chaot, da
gab es die gilde noch gar nicht !!!!)

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



Re^4: Schratkiller &Co KG (Caradhras, 16. Okt 1995, 07:55:39):
#! rn=Zuerileu rt=813808402
            Huhu

Ich versteh deine Problem nicht, Zueri, der Schrat ist immer noch
killbar. Mit den Nachwirkungen deines kills musst du dich aber dann
selbst beschaeftigen. *:^)

     tschoe     Caradhras (vor 2 Min ist der Schrat gestorben)

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



Re^5: Schratkiller &Co KG (Asmodis, 16. Okt 1995, 12:00:20):
#! rn=Caradhras rt=813826539
Naja, warum Susanne so veraendert wurde, verstehe ich auch nicht,
ich finde, nur die Quest-NPCs sollen unangreifbar, oder aeusserst
schwer killbar gemacht werden.

       Ciao, Asmodis(Hat schon die Sache mit Anne nicht gefallen)

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



Manuals (Asmodis, 16. Okt 1995, 12:06:31):
Aus einem Manual:

...
16. Ausstoepseln Sie diesen Monitor vom Wandausgang und beziehen Sie sich die
Bedienungen mit den qualifizierten Bedienungspersonal unter die folgenden
Bedingungen:
a. Wenn die Stromschnur oder der Abstecker beschaedigt oder erhitzt wird.
b. Wenn die Fluessigkeit bereits in den Monitor ausgeschuettet ist.
c. Wenn der Monitor unter dem Regen oder Wasser ausgelegt worden ist.
d. Wenn der Monitor nicht normallerweise nach Erfolgung der Betriebsanweisung
funktionierbar ist. Regulieren Sie nur die in den Betriebsanweisungen
erwaehnten Steuerregelungs-vorrichtungen. da eine ungeeignete andere
Einstellung eine Beschaedigung verursacht wuerde und immer mehr umfassende
Arbeit von den qualifizierten Bedienungspersonal braucht, um den Monitor
wieder zu normaler Bedienung zu herstellen.
e. Wenn der Monitor gefallen ist oder das Gehaeuse beschaedigt ist.
f. Wenn der Monitor eine merkliche Aenderung in Arbeitsleistung ausgestellt
ist, dies bedeutet eine Notwendigkeit zur Bedienung.

...

..

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



Re^6: Schratkiller &Co KG (Fyt, 16. Okt 1995, 12:22:49):
#! rn=Asmodis rt=813841220
Unangreifbar find ich nich gut... schwer killbar ist was ganz anderes...
Stellt euch vor, der Weghier waere ploetzlich unangriefbar, weil er zu
oft gekillt wird *kicher*
Fyt.

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



Re^7: Schratkiller &Co KG (Asmodis, 16. Okt 1995, 12:30:11):
#! rn=Fyt rt=813842569
Das kommt bestimmt auch noch :)

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



Re^7: Schratkiller &Co KG (Rochus, 16. Okt 1995, 12:42:06):
#! rn=Fyt rt=813842569
Moment, bau ich gleich ein...

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



Re^4: Schratkiller &Co KG (Boing, 16. Okt 1995, 15:06:11):
#! rn=Zuerileu rt=813808402
Mecki, Charlie und Schrat sind weder unangreifbar, noch staerker geworden,
sie duerfen auch nach wie vor getoetet werden. Schau Dir bitte erst mal
den Code an, bevor Du in die Zeitung schreibst.
  Boing

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



Re^5: Schratkiller &Co KG (Zuerileu, 17. Okt 1995, 03:12:38):
#! rn=Boing rt=813852371
Sali,
Lies zuerst meinen artikel richtig BOOOOING!
Ich schrieb von susanne sei unangreifbar nichts von den drillings, also
zuerst lesen und dann motzen !

tschuess zuerileu

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



Re^6: Schratkiller &Co KG (Boing, 17. Okt 1995, 09:19:34):
#! rn=Zuerileu rt=813895958
Du schreibst wortwoertlich:
[Zitat Zuerileu]
Hmm.. ist ja oede das man den Schrat nicht mehr killen darf
[Zitat Ende]
  Boing

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



Re^7: Schratkiller &Co KG (Caradhras, 17. Okt 1995, 13:31:05):
#! rn=Boing rt=813917974
Kann ich Boing nur rechtgeben... *gaehn* Und jetzt Ruhe mit dem
Geflame, duerft ihr auf -+m von euch geben.

         Caradhras der ewige Prophet

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



Re^7: Schratkiller &Co KG (Zuerileu, 17. Okt 1995, 23:16:16):
#! rn=Boing rt=813917974
Sai,
Sali,
Nun aemm.. jo aber ich schreive nicht wortwoertlich das er nicht mehr
angreifbar ist !

Tschau Zuerileu

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



Was geht hier eigentlich ab? (Magicolli,  3. Nov 1995, 11:30:55):

Was geht hier eigentlich bitte schoen ab????


Du hast jetzt 192 Lebenspunkte und 160 Magiepunkte.
toete waechter
Ok
>   Du greifst den Elfenwaechter mit dem Schwert an.
  Du triffst den Elfenwaechter.
  Der Elfenwaechter greift Dich mit dem Langschwert an.
Es gelingt Dir mit dem Schwert, den Schlag Deines Gegners etwas abzufangen.
Das Kreuz faengt an zu leuchten.
   Der Elfenwaechter zerschmettert Dich in kleine Stueckchen.
[Tod:] Ein Elfenwaechter hat gerade Magicolli umgebracht.

Ich haette gerne eine kleine Erklaerung.... :(
Ist naemlich ziemlich arm, so mir nix Dir nix im Elfendorf zu verrecken.
Oder kann neuerdings jeder Furz-NPC mehr als 192 LP mit einem Schlag
abziehen?


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



Danke! (Magicolli,  3. Nov 1995, 13:18:00):
Ok, wer meckert, muss auch loben. Danke an alle Magier, die sich mit dem
Elfenwaechtersyndrom beschaeftigt haben und danke dem lieben Erzmagier, der
meine LP wiedergegeben hat. Weiterhin moechte ich Roadrunner fuer das
Aufbewahren verstreuter Ausruestungsgegenstaende danken sowie meiner Omi,
die immer so leckere Pfannekuchen macht.

           Ok, das war's erstmal von hier. Bis zum naechsten Bug
                                               MagicOlli :)

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



polizei.beschwerden (Computer, 10. Nov 1995, 15:55:26):
Ich wollte nur mal 'ne Bemerkung zu den wuesten Schimpfereien und den
echoalls loswerden. Am Dienstag haben sich zwei Mitspieler (aus der selben
Stadt, also sind sie wahrscheinlich nebeneinander gesessen.) ueber die Ebene
Allgemein beflegelt. Und am Freitag haben sich ein paar Magier wieder mit den
echoalls gespielt. Den Beschwerden nach war ich nicht der einzige, den das
gestoert hat. Als ich jedoch den Vorschlag brachte, einen Befehl einzufuehren,
mit dem man ab einer gewissen Anzahl von Beschwerden (von verschiedenen
Spielern, auch keine 2ies und 3ies usw.) einen Spieler rausschmeisst und eine
gewisse Zeit nicht mehr reinlaesst, wurde ich selber rausgeschmissen. (Tja,
die Magier duerften die Wahrheit doch nicht verkraften!)
Also wuerde ich mal gerne ein paar Meinungen dazu hoeren. (Aber nicht nur von
den Magier, dass ich nicht mehr reinkann usw.)

mfg Computer

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



Re: polizei.beschwerden (Fyt, 10. Nov 1995, 15:59:00):
#! rn=Computer rt=816015326
bin zwar kein mag, gebe aber gerne meinen senf dazu ab:
'hilfe ignoriere' zeigt dir einen weg, dich von den belaestigungen
durch spieler zu befreien. fuer magier und echoall geht's nich
ganz so einfach, wenn sich mehrere spieler einig sind, koennen die
die magier aber genauso vollmuellen wie die betreffenden magier die
spieler.
jm2p. Fyt.

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



Re: polizei.beschwerden (Ardana, 13. Nov 1995, 06:33:19):
#! rn=Computer rt=816015326
Hmm, da gab es doch noch den alten, guten 'Ignoriere' - Befehl... der sollte
reichen.

Live long and prosper,
                       Ardana

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



Re: Re: polizei.beschwerden (Asmodis, 13. Nov 1995, 11:16:08):
#! rn=Ardana rt=816240799
ignoriere echoall ? hmm, das funktioniert irgendwie nicht :)

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



Re: Re: polizei.beschwerden (Lwaxana, 13. Nov 1995, 15:44:36):
#! rn=Ardana rt=816240799
Jo, wenn er funktionierte, waere er schon schoen,. der Befehl, aber da ich
von wem immer ich ignoriere immer noch die teile mit kriege, bringt der Befehl
nicht viel, oder?

Tschau Lwaxana Troi, Daughter of the fifth house, keeper of the sacred
chalice off Rixx and heir to the holy rings of Betazed (das musste mal wieder
sein *grins - und nein, noch wachsen im Kelche keine Schimmelpilze!!!)

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



diebstahl (Fyt, 13. Nov 1995, 19:53:19):
Hier wird man am hellichten Tag beklaut, wenn man danebensteht:
:
40000 Muenzen.
107 Voodoonadeln.
:
Ein Frosch sagt: sind die muenzen da eine spende fuer einen armen frosch :) ?
Ein Frosch nimmt 20000 Muenzen.
Azrael   I S T   J E T Z T   D A !!!
[Kultur:Alboin] mein lieber schwan:390 treffer beim wort beatles
Bluemel nimmt 2500 Muenzen.
:
Bluemel nimmt eine Voodoonadel.
:Ein Frosch nimmt 5000 Muenzen.
Bluemel bluemelt nach Sueden.
Du rufst: das zeug vor dem weghier ist nicht zur selbstbedienug da, verd...
Du rufst: nochmal
:Ein kleiner Frosch namens Steinfix.
Tangalur der erfahrene Abenteurer.
12500 Muenzen.
106 Voodoonadeln.
:
Das kann ja wohl nich wahr sein, oder?
:
Fyt.

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



Re: diebstahl (Escubar, 14. Nov 1995, 00:29:18):
#! rn=Fyt rt=816288799
Nachdem ich den schmerzlichen Verlust eines Staerke +3 Ringes nach meinem Tod
in Moron hinnehmen musste halte ich nichts mehr fuer unmoeglich.
(Zur Erklaerung ich bin in der Naehe der Phyton gestorben und als ich wieder
zurueckkam war von der Ausruestung nur noch die Schattenruestung uebrig...)
Tschuesss... Escubar

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



Re: Re: diebstahl (Asmodis, 14. Nov 1995, 14:59:22):
#! rn=Escubar rt=816305358
Haettest du ja bei dem Crash sowieso verloren :)

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



Re: diebstahl (Grimmborn, 14. Nov 1995, 15:46:13):
#! rn=Fyt rt=816288799

Hmm, ging die Beschwerde dahin, dass man so viele Voodoonadeln haben kann
(und ie damit zu leicht erreichbar sind) oder dahin, dass geklaut wird (was
nicht neu ist und mich auch schon fast zum Playerkiller gemacht haette)?

Sich ueber die Dummheit der Leute wundernd,
Grimmborn der Atheist

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



Re: Re: diebstahl (Fyt, 14. Nov 1995, 15:52:13):
#! rn=Grimmborn rt=816360373
Die Beschwerde ging dahin, dass sich jemand Geld nimmt, wenn ich daneben
stehe, und sich derjenige nachdem ich zur Rueckgabe auffordere, kurzerhand
ausloggt. Das betrifft uebrigens Steinfix, Bluemel hat das Zeug kurz
drauf wiedergegeben.
Fyt.

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



Re: Re: diebstahl (Bambulko, 14. Nov 1995, 16:05:50):
#! rn=Grimmborn rt=816360373
Das kommt mir irgendwie bekannt vor ! :-)

Bambulko (sich auch ueber die Dummheit der Leute wundernd)
.~
*fluch*

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



Re^3: diebstahl (Asmodis, 14. Nov 1995, 16:08:35):
#! rn=Bambulko rt=816361550
Jo, hatte ich gestern auch, aber auf massiven Druck hatte derjenige das Geld
wieder rausgerueckt, handelte sich dabei um das Tankgeld fuer den Weghier,
dass ich den anderen Helfern gespendet hatte

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



Re^4: diebstahl (Fyt, 14. Nov 1995, 16:47:46):
#! rn=Asmodis rt=816361715
Naja, genau um den Weghier ging's da auch, und dass man als Karateka
auf sein Gewicht achtet, is ja wohl auch verstaendlich :)
Ich bin leider nicht dazugekommen, 'massiven Druck' auszuueben, da
sich der Doedel nachdem ersten anquatschen ausgeloggt hat.
Ich bin uebrigens dafuer, Playerkilling in diesem Zusammenhang zu
legalisieren. Ansonsten werd ich irgendwann zum Sponti:
legal-illegal-scheissegal :))
Fyt. Kann Druck durch heisse Gase erzeugen :)

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



Re^5: diebstahl (Jerrico, 14. Nov 1995, 22:25:12):
#! rn=Fyt rt=816364066
ja ein P_VOGELFREI waere nicht schlecht :)

Jerrico, naehert sich der 100% Marke

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



Was soll der Mist... (Huepfer, 15. Nov 1995, 17:40:41):
Heute ist mir echt die Spucke weggeblieben, als ich dieses
zu lesen bekam.
Raistlin@Gueldenland redet zu Dir: Kennst Du einen ...?
Ich: Ja, warum?
Raistlin@Gueldenland redet zu Dir: nun er hat mir erzaehlt
er waer mit dir Baden gegangen, hat dich im Bikini gesehen,
du haettest den bikini ausgezogen und mit ihm geschlafen :(
...frage doch mal arkon der war mit dabei

Ich konnte es mir nicht verkneifen, es in Allgemein zu setzen,
wo darauf hin eine heisse Diskussion entstand.
Nebenbei habe ich mich nochmals im Regenbogen erkundigt
 und gefragt, was da los war.
So hier nochmal der Mitschnitt aus dem Regenbogen, wo
sich das alles abgespielt hat.
PS: Raistlin@Gueldenland = Fox@Regenbogen

Du sagst: kannste fox auch mal herbitten
> Fox ist weg.
Fox sagt: ja ?
Du sagst: ich muss mal mit euch beiden reden
Du sagst: und zwar die sache mit ...
> finger ...
... ist nicht eingeloggt.
Zuletzt eingeloggt von: 134.95.49.98 [Koeln].
Zuletzt ausgeloggt: Mit, 15. Nov 1995, 11:20:41 (05:12:12)
Voller Name: ... der Neuling
Rasse: Mensch,  Gilde: Abenteurer,  Geschlecht: maennlich
Alter: 02:38:50   Spielerlevel: 1
E-Mail-Adresse: none
Seit dem 30.11.'94 bereits 1 mal gestorben
Keine .plan-Datei.
Arkon sagt: ... ?
Fox sagt: der heute frueh da war
Arkon sagt: Das ist der Mag aus MG, der heute hier war?
Du sagst: ja der
Du sagst: hat er wirklich diesen muell verbreitet
> Fox nickt zustimmend.
Arkon sagt: was ist mit ihm? Ach das ... ja das haben wir beide gemerkt :-))
Arkon sagt: Ist auch kurz im jail gelandet!
Fox ist immer noch ziemlich down
Du sagst: also stimmt es doch
> Fox nickt zustimmend.
Arkon sagt: was hat er dir den erzaehlt?
Arkon sagt: Er hat eigentlich nichts schlimmes erzaehlt ... nur so ein
Arkon sagt: dummgeschwaetz!
Du sagst: Raistlin@GueldenLand redet zu dir: nun er hat mir erzaehlt er waer
Du sagst: mit dir Baden gegangen, hat dich im Bikini gesehen, du haettest den
Du sagst: bikini ausgezogen und mit ihm geschlafen :(....frage doch mal arkon
Du sagst: der war mit dabei...)
> Fox schluchzt herzzerreissend.
Du sagst: das
> Fox nickt zustimmend.
Fox sagt: hab ich geschrieben
Arkon sagt: Hmm das hab ich dan ueberlesen ...
Fox sagt: arkon du warst mit dabei !!!!
Arkon sagt: Er meinte zwar was von bikini und baden gehen ... aber das hatte
Arkon sagt: ich nicht gelesen ....
Fox sagt: danach haste ihn ins Jail geschickt
Du sagst: ich wollte nur pruefen, ob das wirklich wahr ist, denn dann ist er 
                Du sagst: tot, wenn er sich im Mg einloggt
> Fox sagt: wo er noch sagte Yamila waere befriedigt und erschoepft am
Fox sagt: naechsten morgen aufgewacht
Arkon sagt: Hab das alles ja nicht so richtig mitgelesen ... war ja nervig,
Arkon sagt: der typ ...
> Fox sagt: und ich bin beinahe zu asche geworden
Arkon sagt: Hmm ...
Fox sagt: jedenfalss durch meine Hand ist er schon gestorben
Arkon grinst.
Arkon sagt: Ja .. :-))
Arkon sagt: Haettest du es nicht gemacht... dann haette ich es gemacht!
Fox nickt zustimmend.
Fox sagt: war ziemlich bescheuert der Typ

PS: Den Nammen will ich hier nicht nennen und hab ihn mit '...' ersetzt.

Huepfer (sehr verwirrt)

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



Ich glaubs nicht (Bluemel, 15. Nov 1995, 19:11:43):
Gegendarstellung oder besser Erklaerung!
Bevor ich die 2500 Muenzen und die Vodoonadel nahm, die auf der Kreuzung
rumlagen genommen habe, hab ich Fyts Zweitie ( Wusste nicht, dass es ein
Zweitie von Fyt ist) MINDESTENS 2 X gefragt, wem der Kram gehoert. Es kam
keine Antwort! Der Frosch (Steinfix) wusste auch nicht wems gehoert. Ich nahm
dann 2500 Muenzen und 1 Vodoonadel!
IN Worten EINE ! , weil ich noch nie eine hatte ( Die NEugier war staerker )
. Zur Information: Es lagen 400000 Muenzen rum! Sicher es war falsch die
Sadchen zu nehmen .
Aber die Reaktion von Fyt: In 2 Minuten ist der Kram wieder da, sonst gibts
Aerger, fand ich laecherlich und uebertrieben, vor allen Dingen, weil ich 5
Minuten vorher an voellig anderer Stelle Fyt begegnet war, dort seine Sachen
auch genommen hatte, und ihn dann zu mir hingelotst hatte, weil er mehrmals an
mir vorbeilief, und seine Sachen suchte!. Fyt konnte sich also sicher sein,
dass er seine Sachen von mir wiederbekommt, und ich normalerweise nicht damit
abhaue! Wenn mir Fairplay im ersten Falle mit uebertriebener ( jedoch im
Grunde gerechtfertigter) Reaktion im zweiten Falle gedankt wird, bekommt Fyt
beim naechsten Mal nicht seine Sachen wieder ! Ich waer gespannt, was er dann
macht! Playerkill bekommt ihm schlecht, und sonst hat er keine Moeglichkeit!
Ausserdem, was grundsaetzlich. Wer 400000 Muenzen au einem Haufen hat, hat
mehr als zwei Zweities, und soweit ich weiss, sind nur 2 erlaubt!
Wie sind die Besitzverhaeltnisse geregelt: Wann gehoert einem was. Jemanden
was klauen its hier nicht moeglich. sachen die rumliegen, haben theoretisch
keinen definierten Besitzer!
Nichts fuer Ungut
Ein Bluemel, der sich wundert , wie ein Seher sich ueber verlorene 2500
Muenzen aufregen kann!

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



nachtrag (Bluemel, 15. Nov 1995, 19:20:30):
Sorry, fuer die vielen Raechtsschreibfaehler. War mein aerster Beitrach!

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



Re: Ich glaubs nicht (Cuchullin, 15. Nov 1995, 19:22:50):
#! rn=Bluemel rt=816459103


Ich glaube es ging Fyt - wer auch immer von euch beiden recht hat oder die
der Wahrheit naeherkommende Version der Gegebenheiten gepostet hat - nicht um
die Voodoonadel und um das Portogeld, sondern einfach und allein um die
Tatsache, dass _Seher_ sich an anderer Leute Ausruestung bedienen muessen, die
ganz offensichtlich nicht von alleine da hingelaufen ist.

Selbst wenn Bluemel / Fyt da aneinander vorbeigeredet haben, gibt es noch
genug andere, die sich um das "Miteinander" einen Dreck scheren und sich
bedienen, wo sie nur koennen - ungeachtet, ob der Besitzer grade sein Inv
sortiert, vor 2 Minuten gestorben ist oder am Weghier metzelt.

Cuchullin -  sagt nicht a und nicht b, nur dass der Ton die Musik macht. Und
der Ton unter Sehern im Mud ist - mit Verlaub - beschissen.


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



Re: Ich glaubs nicht (Fyt, 16. Nov 1995, 00:01:35):
#! rn=Bluemel rt=816459103
Es waren 40.000 muenzen und steinfix hat davon 25000 genommen.
Das Zeug war Tankgeld und Munition fuer den Weghier, und ich hatte
nicht mehr allzuviel Zeit. Da faellt es durchaus ins Gewicht,
wenn die reichliche Haelfte des Tankgeldes verschwindet, zumal die
Standardgeldquellen eben kurz zuvor diese 40000 muenzen ausgespuckt
hatten und vor nem normalen Reset auftauchen. Ausserdem hab auch ich
bei nem versuchten Weghierkill keine Zeit, mich um Tankgeld zu
kuemmern. Deshalb war ich sauer, insbesondere auf Steinfix.
Wie du so recht bemerkt hast, stand jemand daneben. Zufaelliger-
weise mein Zweitie, auf dessen Bildschirm ich aber nicht geschaut
hab, weil ich eben beschaeftigt war. Normalerweise sollte man bei
Sachen, die an einer Stelle rumliegen, wo sie normalerweise nicht
rumliegen und wo extra noch jemand daneben steht, davon ausgehen,
dass sie einen Besitzer haben. Das geliche trifft auf halbwegs
komplette Ausruestungen zu, die irgendwo in der Gegend rumliegen.
Danke, dass Du so nett warst, mir mein Zeug in der Orkstadt
wiederzugeben.
:
Fyt.
:
PS: ich hatte bis jetzt erst einen PK und den auch nur 'n paar
Stunden lang... Das elfte Gebot lautet eben: Du sollst Dich
nicht erwischen lassen  *uups* passt so schoen in die Dynamit-
im-Lupinental-Diskussion :)))

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



Narrenball-Quest - playerkill (Zillus, 16. Nov 1995, 01:07:47):
Also das ist der Gipfel, ich bin schoen sauer!!
Ich loese zusammen mit Tangalur die Narrenball quest, Kaum sind wir wieder
draussen, quest geloest, EP und AP erhalten, da heisst es

[Tod:] Odo hat gerade Tangalur umgebracht. <00:34:23>

WAS SOLL DAS ?? Da hat anscheinend der Odo playerkill gemacht!!!
Jedenfalls fehlen Tangalur jetzt EP's, und er ist 2mal anstatt 1x gestorben.
Entweder ist das ein ziemlich dummer programmfehler im Zusammenhang mit der
Narrenball quest, oder dann ??? ich weiss auch nicht!
Ich hoffe, dass irgendein Magier oder Gott herausfindet was da geschehen
ist!!

sehr aufgebracht - Zillus

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



Re: Narrenball-Quest - playerkill (Acrimon, 16. Nov 1995, 01:40:03):
#! rn=Zillus rt=816480467
Die Sache hat sich geklaert.
In der Gilde stand ein friedlicher Vertreter von Odo.
Tangalur war von der Robe besessen und hat den Vertreter angegriffen.
Der Vertreter hat Tangalur mit einem einzigen Schlag getoetet.

Tangalur hat die verlorenen EP wieder zurueckbekommen, weil er
   1. von einem Vertreter eines Mags
   2. mit einem einzigen Schlag
getoetet wurde.

Verbesserungsvorschlag an Li:
Die Robe sollte in Zukunft keine Magier angreifen.

Acrimon, der Rote Ritter

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



Re: Re: Narrenball-Quest - playerkill (Zillus, 16. Nov 1995, 07:34:00):
#! rn=Acrimon rt=816482403
Mag sein, dass sich der Vorgang geklaert hat. Aber der Sinn dahinter
ist mir immer noch unklar.
Wieso erhaelt man nach der Narrenbal-Quest eine Robe (ohne dass man es
merkt), wird besessen von Verfolgungswahn, und dann in der Abenteurer-
gilde mir nichts dir nichts von einem friedlichen (??!!) Vertreter
eines Mags trotz Vorsicht 40 innert Sekundenschnelle hingemacht??

immer noch etwas veraergert -- Zillus

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



Re: Re: Narrenball-Quest - playerkill (Li, 16. Nov 1995, 09:34:02):
#! rn=Acrimon rt=816482403
Hmm, eigentlich ist das berucksichtigt
Li (wundert sich)

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



Re^3: Narrenball-Quest - playerkill (Li, 16. Nov 1995, 09:41:31):
#! rn=Zillus rt=816503640
Also, am ende der Narrenballquest bekommt man nicht die Robe, sondern nur den
Verfolgungswahn. Das wird dem betreffenden Speieler auch deutlich am ende der
quest gesagt (aber die spieler scheinen die nachrichten, die am ende eine
quest kommen offensichtlich nicht zu lesen).
Wenn ihr mal die texte lesen wuerdet, haettet ihr auch die Warnung gelesen.
Der Verfolgungswahn gliedert sich in 3.Stufen:
1. Man fuehlt sich verfolgt.
2. Man fluechtet, weil man sich verfolgt fuehlt.
3. Man greift NPCs an, weil man sich verfolgt fuehlt. (aber nur NPCs, keine
spieler, keine netztoten, keine magier)

Der Wahn ist unteschiedlich lange, so dass bei vielen es gar nicht zu Stadium
3 kommt.

Mal ne Frage, was war denn das fuer ein komischer vertreter in der gilde?

Li (schaut nochmal im Wahn nach)

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



Re^4: Narrenball-Quest - playerkill (Cuchullin, 16. Nov 1995, 10:10:39):
#! rn=Li rt=816511291


Jof's Wiztool, die Fernbedienung, erlaubt es Magiern, an beliebigen Stellen
'Vertreter' zu entsenden, die fuer Spieler vom Magier selbst nicht zu
unterscheiden sind. Diese Vertreter (man kann wohl auch mehrere auf einmal
haben) sind natuerlich NPCs und werden in den Wahn der Robe - resp. der Quest
- ungluecklicherweise mit einbezogen. Ebenso ungluecklicherweise bringen diese
Vertreter _jeden_ Spieler mit einem Schlag um. Das hat auch Asmodis schon
festgestellt.

Cuch.-


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



Re^5: Narrenball-Quest - playerkill (Li, 16. Nov 1995, 10:12:09):
#! rn=Cuchullin rt=816513039
Kann mir mal einer sagen, wofuer die Vertreter gut sind?
Li

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



Re^6: Narrenball-Quest - playerkill (Cuchullin, 16. Nov 1995, 10:13:16):
#! rn=Li rt=816513129

Sie koennen in den entsprechenden Raeumen mithoeren.
Unter anderem.
Schau doch nach, irgendwo bei Jof wird's rumliegen... :)
Cuch.-

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



Re: Was soll der Mist... (Arkon, 16. Nov 1995, 10:21:29):
#! rn=Huepfer rt=816453641
Hmm ...

Dazu muss ich mich dann jetzt doch mal aeussern:

1) Das was Fox gesagt hat, kann ich NICHT alles bestaetigen ... falls es
   in dem Gespraech nicht klar geworden ist:

Ich hatte alle Haende mit der Lib von Regenbogen zu tuen, da ich jetzt
nicht mehr den gepatchten driver von MG nehmen wollte ...

So konnte ich nur mit einem Ohr mithoeren ....

Was ich JETZT sagen kann ist:

ich koennte von meinem Standpunkt Yantro z.Z. nur eines Vorwerfen (was aber
irgendwie unsinnig ist):
Er hat als Spieler (level 0) einen Magier (Level 46 - ware hier wohl Level
45) genervt und
geaergert!

Aber (wie mindestens die Magier wissen) kann man Spieler ignorieren und sich
in
Raeume begeben, wo man ungestoert ist ...

Weiterhin hat yantro Stuss (Auf hochdeutsch: unsinn) von sich gegeben, um
Fox zu aergern ... aber von irgendwelchem "schlafen " oder so
hab ich nichts mitbekommen ....

Was ich so mitbekommen habe war :
irgendwas mit Bikini
 - baden

Aber da ich darauf nicht so sehr geachtet habe, kann ich hier keine
Sinnzusammenhaenge von
mir geben!

Ich werde aber folgendes tuen:
Ich werde mit Fox ein sehr ernstes Gespraech in rl fuehren!

Der Grund dafuer:
Zwischen Fox und Yamila (hier: huepfer) bestehen gewisse Spannungen!
Diese Spannungen sind auf schlechtes Benehmen von Fox zurueckzufuehren.
Also ... wartet erst mal ab ....

Immer schoen langsam ... irgendwie glaube ich, dass sich hier einiges noch
klaeren wird!

Also lasst erst mal Yantro in ruhe ...

Ein bannen oder zum Spiller machen rennt euch nicht weg ....

Arkon ... musste jetzt mal seine Meinung dazu sagen ....

PS: Ab jetzt lasse ich den Algemeinkanal auch eingeschaltet ...

PPS: Ich hoffe, ich habe nie ueber die
Zeile hinausgeschrieben, aber da hier so viele
dazwischenschreihen, hab ich keinen Ueberblick!

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



Re: Re: Was soll der Mist... (Arkon, 16. Nov 1995, 11:21:27):
#! rn=Arkon rt=816513689
Die Sache hat sich in einem Gespraech zwischen Arkon, Fox und Yamila
geklaert.
(Alphabetische Reihenfolge)

Es hat sich herausgestellt, dass Yantro zwar nicht allzu schoene
Komentare abgelassen hat, aber auf keinen Fall waren die Bemerkungen
"unter der Guertellinie"

Ich wuerde alle bitten, es als eine MUDinterna von RB zu belassen ...

Fuer mich hat sich dieses Thema hiermit erledigt ... Fox, der in
meinen Augen als der eigentliche Verursacher dieses "Aergernisses" ist,
ist von mir in RB zur Rechenschaft gezogen worden...

bye,

Arkon

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



Re: Re: Was soll der Mist... (Yendi, 16. Nov 1995, 13:24:19):
#! rn=Arkon rt=816513689

Zum Inhalt: Volle Zustimmung.

Zur Form: Du brauchst Deinen Umbruch nicht von Hand zu machen, das erledigt
der Editor schon ganz gut.


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



Re: Narrenball-Quest - playerkill (Tangalur, 16. Nov 1995, 19:04:11):
#! rn=Zillus rt=816480467
Zunaechst mal sorry, dass ich mich erst jetzt zu Wort melde, habe den ganzen
Tag arbeiten muessen.

Also ich war ganz schoen baff, dass man in der Gilde so mir nichts dir nichts
umgebracht wird. Das ganze ging so schnell, dass ich es kaum mitbekommen
habe.
Den Verfolgongswah habe ich uebrigens gemerkt, aber wusste nicht was er fuer
einen Effekt haben kann. Woher auch ? Auf dem weg zur Gilde kommt man ja an
einigen NPC's (Schmetterlinge, Bienen, Tausendfuessler und Co) voebei. All
denen hab ich nicht getan !!! Also woher sollte ich wissen das in der Gilde
ein Vertreter eines Magiers sitzt, der mich mit einem Schlag toetet ?
Zum Glueck lies sich die ganze Angelegenheit klaeren und der betroffene
Magier hat mir freundlicher-
weise die Ep  Ep's erstattet (nach einer laengeren Diskussion). Das mit dem
Wahn finde ich schon ein gutes Ende fuer die Quest, nach all der Erlebnissen
leidet man bestimmt an
Verfolgungswahn. Aber wenn man im Wahn einen NPC angreift dann sollte man
schon die Moeglichkeit zur Flucht haben (es war uebrigens Vorsicht 40
eingestellt)
Der Fehler liegt meiner Meinung nicht an der Quest, sondern an dem Vertreter
in der Gilde, muss man den so programmieren, dass er einen gleich umbringt.
Als Magier sollte man doch Moeglichkeiten haben einen NPC bzw. Vertreter
so auszulegen, dass man ihn nicht toeten kann ohn selber getoete zu werden.
Davon abgesehen wenn man von einem Vertreter 'belauscht' wird
moechte ich das schon wissen !! Ich belausche ja auch keine Mags. Da verstehe
ich nicht ganz den Sinn dieser Vertreter.

Sorry fuer die vielen Fehler (war der erste Artikel)

Tangalur

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



Re^3: Was soll der Mist... (Quillian, 16. Nov 1995, 19:26:21):
#! rn=Arkon rt=816517287
Ich frag mich immer noch was diese Artikel hier in der MPA
zu suchen haben? Hat Regenbogen keine eigene Zeitung?

Quillian, knuddelt Arkon

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



Re: Re: Narrenball-Quest - playerkill (Catweazle, 16. Nov 1995, 20:46:16):
#! rn=Tangalur rt=816545051
Hi!
Erstmal die Erklaerung des Vertreters.
Du wirst von einem Vertreter natuerlich nicht wirklich belauscht. Du
siehst halt einen Magier, der neben Dir in einem Raum steht. Dieser
Vertreter sieht genausoaus, wie der echte Magier, und hat zum einzigen
Zweck, alle Dinge, die der 'Raum' hoert (also alle sage, emotes, etc.)
an den entsprechenden Magier weiterzuleiten.
Ich persoenlich finde diese Dinger enorm praktisch. Vertreter sind nur
dazu da, an mehreren Stellen gleichzeitig 'present' zu sein. Wenn ich
zB an einer Stelle quatsche, und jemand nen Problem hat und ich helfen
will, dann geh ich zu meinem Problemkind, lass aber den Vertreter bei
den Laberern stehen, damit ich von der Unterhaltung nix verpasse. Gut,
ich koennte auch jemanden da snoopen, aber das ist unfein, da ich mehr
mitkriege als ich vielleicht moechte, desweiteren kann ich immer nur
_einen_ snoopen, spaetestens bei zwei Laberstellen lohnt sich also
der Vertreter.
So ein Vertreter ist natuerlich ein NPC und sollte damit auch auf
die gelbe Robe ansprechen. Nun ist es aber so, das der Vertreter auch
genauso aussieht, wie der Magier, es werden ALLE Attribute kopiert,
wirklich alle! Und nun gehoert Ulo wohl zu einem der depperten Magier, die
meinen, sie muessten als allerersten, wenn sie Magier werden ihre
Hands (kampfkraft) auf ultimative Werte stellen, damit auch jedes Monster
das sie angreifen hundertprozentig tot umfaellt und dumme Spieler, die
es wagen sie in Ihrer Ruhe zu stoeren, beim Versuch eines Angriffs erst
mal drauf gehen...
sag Naja, und diese Kampfkraft hat dann auch der Vertreter. Son
Vertreter ist dann aber wohl auch die einzige Moeglichkeit, wo Du mit
der Robe mit einem Schlag sterben kannst, Du hast halt schlicht und
einfach Pech gehabt, ausgerechnet an einen zu geraten. Naja, und
die EPs haste ja nu auch wiederbekommen.
Ich hoffe in diesem Artikel hat ein Grossteil der Magier gelernt, das
es absolut unsinnig ist, an den Hands rumzupfuschen. Ich weiss schlicht
und einfach nicht eine einzige vernuenftige Gelegenheit, bei der ein
Magier seine 'hands' braeuchte. Der einzige Erfolg ist Gerangel mit
dem Spieler und dessen Frust auf die Magier. Etwas was man doch
tunlichst vermeiden sollte.
Yours truly,
     Catweazle

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



Vertreter (Nairolf, 17. Nov 1995, 02:00:22):
Die Vertreter sind unter anderem auch in der Magischen Rose zu finden:
und zwar in /players/gnulli/obj/mrose.c

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



Re^4: Was soll der Mist... (Yantro, 17. Nov 1995, 08:29:25):
#! rn=Quillian rt=816546381

Liebster Quillian,

der Artikel steht HIER in der Zeitung, weil HIER im MG ueber das Thema ueber
Kanaele hergezogen wurde und das, weil Huepfer HIER in ihrer verstaendlichen
Wut  Dampf abgelassen hat und weil HIER sowohl ueber Huepfer und ueber mich
irgendwelche Geruechte entstanden sind und weil ich HIER meinen Frieden haben
will, sollte das meiner (und auch Huepfers Meinung nach) HIER wieder
richtiggestellt werden.

Das eigentlich dumme an der ganzen Sache ist eigentlich nur, dass ich zum
Zeitpunkt der Kanaldiskussion nicht eingeloggt war und deshalb nicht die
Moeglichkeit hatte, dass direkt so mit Huepfer zu klaeren. Es war vielleicht
etwas ungeschickt von ihr, dass sie das direkt alles oeffentlich gemacht hat
statt zu warten, was ich bzw Arkon dazu meinen, aber ich kann ihre
Kurzschlussreaktion auch irgendwie verstehen (hab ich auch oft (siehe Fall
Zuerileu)).

Eigentlich ist das Thema jetzt schon gegessen und deshalb lasst es einfach,
euch weiter ueber das Thema aufzuregen... macht nur hohen Blutdruck und
Magengesschwuere... ;)

                  Euers Yantros ;)

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



Re^5: Was soll der Mist... (Yendi, 17. Nov 1995, 12:41:22):
#! rn=Yantro rt=816593365

Hey, ein vernuenftiger Artikel von _Yantro_...


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



Re^3: Narrenball-Quest - playerkill (Pampers, 17. Nov 1995, 13:06:48):
#! rn=Catweazle rt=816551176
Hi Cat!
Asmodis ist aber damals mit einem Schlag an einem Vertreter von Mars
gestorben,
der als Seher so hohe Stats gar nicht gehabt haben kann... :)
Ausserdem hat Jof seine Stats auch auf 200 hochgesetzt, wenn ich mich recht
entsinne... ;-)
Pampers. Senft rum.

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



Re^4: Narrenball-Quest - playerkill (Cuchullin, 17. Nov 1995, 13:11:32):
#! rn=Pampers rt=816610008


Der Vertreter bringt defaultmaessig mit einem Schlag um, imho.
Cuch.-


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



Re^5: Narrenball-Quest - playerkill (Paracelsus, 17. Nov 1995, 13:23:50):
#! rn=Cuchullin rt=816610292
Das P_HANDS des Vertreters wird meines Wissens direkt in vertreter.c
auf 99999 gesetzt. Wenn man es dort auf 0 setyt, sollte sowas doch eigentlich
nicht mehr passieren.

Nur sonne Idee,
    Paracelsus

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



Re^3: Narrenball-Quest - playerkill (Ulo, 17. Nov 1995, 15:05:35):
#! rn=Catweazle rt=816551176
Hallo Cat*
Wie kommt mein Name in Deinen Artikel?
Ich habe keinen Stellvertreter in die Gilde gestellt!
Mfg, Ulo.

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



Re^4: Narrenball-Quest - playerkill (Marita, 17. Nov 1995, 15:26:29):
#! rn=Ulo rt=816617135
Es handelte sich meiner Erinnerung nach um Odo (nicht um Ulo, da hat
wohl nur jemand die Namen verwechselt.)
Marita (Dies zaehlt nicht als 'Beitrach') :)

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



Yantro, Huepfer und was so alles erzaehlt wurde ... (Boing, 17. Nov 1995, 15:37:27):
Hallo allerseits,

nachdem ich nun auch das beruehmte logfile der Unterhaltung auf allgemein
ueber Yantro und Huepfer und angeblich gemachte Sprueche gelesen habe,
moechte ich noch ein paar Worte dazu verlieren:

Erstens: Was Bobo ueber mich behauptet trifft in keiner Weise zu, es ist
 richtig, dass ich vor einiger Zeit Zoff mit Yantro hatte, da er gegen
 Magierregeln verstossen hat, seitdem hat er sich aber gut verhalten und
 ich habe keinen Grund auf irgendwelche 'schaendlichen' Taten von ihm
 zu warten oder gar zu hoffen.
Zweitens: Privatprobleme sollten privat behandelt werden. Punkt.
Drittens: Gluecklicherweise gibt es noch vernuenftige Spieler, die erstens
 nicht gleich alles glauben, was so verbreitet wird, und zweitens dem
 'Angeklagten' auch das Recht auf Verteidigung zugestehen: Sidolin
Viertens: Was Huepfer bzw. Fox@Regenbogen ueber Yantro gesagt haben ist
 in keiner Weise besser, als das, was Yantro angeblich ueber Huepfer
 gesagt hat. Inzwischen ist das Problem ja auch aus der Welt geschafft,
 da sich die Auesserungen als unwahr rausgestellt haben.

  Boing

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



Re^4: Narrenball-Quest - playerkill (Kretek, 17. Nov 1995, 16:16:23):
#! rn=Ulo rt=816620614
Gegenfrage:
Was haben die P_HANDS in dieser Rubrik zu suchen?

Kretek

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



Spielerhilfe (Boing, 17. Nov 1995, 16:21:49):
Leider muss ich hier schon wieder schreiben ...
Da Schnick in massiver Weise Durnik bei 'Frachgut' unterstuetzt hat,
wurde Schnick stark verwarnt (beim naechsten negativen Vorkommnis wird
sein Charakter geloescht) und Durnik wurde die Quest wieder aberkannt.
  Boing

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



Re^5: Narrenball-Quest - playerkill (Catweazle, 17. Nov 1995, 18:24:14):
#! rn=Marita rt=816618389
Ulo, Odo, ist doch fast dasselbe :)
YTC

   (sorry, ulo :-)

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



Re^4: Narrenball-Quest - playerkill (Catweazle, 17. Nov 1995, 18:25:39):
#! rn=Ulo rt=816620614
Tuelich sind die alle deppert.
Ich mach da keine Ausnahme. Besonders der Jof.
Ich sach nur /dev/audio ....
YTC (feist grinsend)

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



Re^5: Narrenball-Quest - playerkill (Cuchullin, 17. Nov 1995, 18:53:18):
#! rn=Catweazle rt=816629139

...no.....No!.... NO! NO! NOOooo.....

In dieser Rubrik mal grinsend,
Cuch.- (ueberlegt es sich, ob er nochmal in 601 kommt... ;-) )


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



tsk (Elric, 17. Nov 1995, 21:22:31):
 Was 'ne Rubrik. Unglaublich.  Elric.
 Ceterum censeo Hohlbein esse neglegendum.

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



Re :Yantro Huepfer und was alles so erzaehlt wurde... (Terrorist, 17. Nov 1995, 22:35:08):
Bezug Artikel 44 von Boing 17 Nov 1995,15:37:27)

Entschudigt das ich jetzt auch noch auf dem Thema rumhacke aber
1. wuerde ich huepfer eine gewisse mitschuld geben (sorry huepfer niems nicht
persoenlich) aber sie hat Fox erstmal geglaubt obwohl es die besgagten
Spannungen zwischen ihm und ihr gab

2. ich Fox bzw. Raistlin persoenlich kenne mir sowas dachte und ise uber
teile mit und auf allgemein warnte das ich das nicht glauben wuerde.

3. so hart es auch klingt glaube ich eher jemanden denn ich nicht kenne wie
z.B. Yantro als Raistlin weil er ziemlich oft rumspinnt.

So jetzt hoffe ich aber auch das das Thema gegessen ist.
Aber hier musste ich auch meinen Senf dazu geben

Terrorist

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



Re^4: Narrenball-Quest - playerkill (Olpp, 19. Nov 1995, 11:40:02):
#! rn=Ulo rt=816620614
1. ist die Liste unvollstaendig
2. gehoert sowas nicht in ALLGEMEIN
3. hat das meiner meinung nach niemanden zu stoeren, wenn ein magier so stark
   ist.

Olpp

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



Re^5: Narrenball-Quest - playerkill (Creative, 20. Nov 1995, 09:20:17):
#! rn=Olpp rt=816777602

Voellig korrekt. Das hat nix in einer oeffentlich zugaenglichen Rubrik zu
suchen. Unvollstaendig isse auch, ich nehm mich nicht aus :)
4. iss egal, weil EP's zurueckgegeben wurden.
5. gehoert vielleicht vertreter.c geaendert.

-Crea-

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



Re^6: Narrenball-Quest - playerkill (Ulo, 20. Nov 1995, 12:45:55):
#! rn=Creative rt=816855617
Also,
1. besagter Artikel ist geloescht,
2. stammte die unvollstaendigkeit daher, dass ich nur grade eingeloggte
   Magier betrachtete,
3. ahnte ich nicht, dass dieser Artikel diese Reaktionen hervorrufen wuerde,
4. bin ich bereits versehentlich beim idlen von einem Anfaenger angegriffen
   worden - zum Glueck hatte ich NICHT Killerhaende.
5. hab ich nicht als erste das Wort 'deppert' in dem Zusammenhang verwendet.

Ulo.

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



Re^7: Narrenball-Quest - playerkill (Asmodis, 20. Nov 1995, 12:48:05):
#! rn=Ulo rt=816867955
Hmm, ich meine, wenn jemand einen Magier angreift oder irgendeinen
anderen Spieler, dann ist er selbst Schuld, wenn er draufgeht :)

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



Newbiekillen?! (Aranya, 23. Nov 1995, 17:31:45):
Ich hab's leider nicht direkt mitgekriegt, sondern nur per email. Meine
Freundin, die ich immer und immer wieder gedraengt habe, doch mal im MUD
vorbeizuschauen, hat es mit den ueblichen Verzoegerungen, die man wohl als
Trierer Jurastudent mit dem telnet hat, geschafft.
Und - so schrieb sie - sie wurde gleich einmal verfolgt und wohl auch zu
Lars geschickt. Ich kann natuerlich nicht sagen, ob sie sich mit Namen
eingeloggt hat, ob sie ein NPC verfolgt hat oder ob sie ein Gast war, der
in seinem vorherigen Leben von jenem NPC gejagt wurde (ist das moeglich?)
und Lars hallo sagen durfte.
Irgendwie ist sie seither nicht so rasend begeistert von dem MUD, was ich
ziemlich schade finde. Vielleicht kann mir jemand helfen. Folgende Daten
weiss ich:
Tag: 23.November, Donnerstag
Zeit: Ungefaehr unter Mittag (die Beschwerdemail stammt von 13:54:07)
Location: Wahrscheinlich aus Trier eingeloggt, ist aber nicht sicher.
email: kann auf Anfrage mitgeteilt werden.

Sachdienliche Hinweise bitte an mich

Aranya
      sehr in Sorge um die Freundin

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



Re^4: Narrenball-Quest - playerkill (Zuerileu, 24. Nov 1995, 01:42:10):
#! rn=Li rt=816511291
Sali,
Li, der Vertreter ist dummerweise ein Magiertool wo du eine 1:1 Kopie von dir
Sselber in einen x-belibigen Raum schicken kannst um dich dort zu unterhalten.
Der Vertreter ob der nun per Rose oder Fernbedienung ist, ist ein Npc, der die
gleichen Stats des Magiers hat. Also wenn ich Hands auf 10'000 habe hat der
vertreter das auch.

Tschuess Zuerileu

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



Re^5: Narrenball-Quest - playerkill (Asmodis, 24. Nov 1995, 01:44:45):
#! rn=Zuerileu rt=817173730
hmm, ich hatte ja auch mal das Vergnuegen, das auszuprobieren und starb
an der Kopie von Beobachter (durch einen Schlag), also stimmt das
wohl nicht ganz, der hat naemlich ganz miese stats :)
Kann auch sein, dass das inzwischen geaendert wurde

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



Re: Re: Narrenball-Quest - playerkill (Zuerileu, 24. Nov 1995, 01:55:59):
#! rn=Tangalur rt=816545051
Sali,
Du wirst von diesen Vertretern nicht belauscht da du ihn ja sehst. Fuer dich
scheint dort ein Magier zu stehen. in dem fall odo. Odo hat die moeglichkeit
mit hilfe des vertreters in seinem Workraum zu stehen und it anderen Magiern
zu plaudern, und gleichzeitig in der Gilde mitzuhoeren und mitzureden wie er
selber dort stehen wuerde. Also keine art der belauschung da die Spieler der
unterschied von einem Magier und einem Vertreter nicht bemerken. Belauschen
kann man bei snoop sagen aber sicher nicht bei einem vertreter. Nun, das
problem liegt wohl darin das der Vertreter eine 1:1 Kopie vom orginal Magier
ist und so auch seine besonndere Werte kriegt und Dich so in einem Schlag
niederstrecken konnte. Und das Problem liegt an der Robe das sie NPC angreift.
Ich wuerd sagen eine zusammenkunft ungluecklicher und verschuldbaren Zufaellen
die leider ein unglueckliches ende genommen haben und hoffe das es sich in
Zukunft vermeiden wird.
Tschuess Zuerileu

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



Re^5: Narrenball-Quest - playerkill (Paracelsus, 24. Nov 1995, 12:24:38):
#! rn=Zuerileu rt=817173730
Kleiner Denkfehler: Du kannst Deine Haende auf 0 setzen, und der Vertreter
hat seine immer noch auf 10000.
Das wird naemlich meines Wissens _NICHT_ vom eigentlichen Magier uebernommen.

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



Newbie-Kill (Aranya, 24. Nov 1995, 21:25:35):
Hmm, jetzt hat sich ein wenig Licht in die Nachforschungen nach dem unwuer-
digen Ableben meiner Freundin gemogelt. Es sieht jetzt alles so aus, dass
sie bei dem ungluecklichen Versuch Magicollis, das Feuerwerk zu zuenden,
ums Leben gekommen ist. Hmmm, das bringt ne ziemlich persoenliche Note
in die ganze Diskussion.
Unter uns: sie will nochmal ins MG kommen, aber wenn ihr nochmal sowas pas-
siert, dann seh ich sie nie bei Silvano. Und das waer doch schade.
Also: seid nett zu Newbies und Gaesten (vor allem, wenn sie aus Trier kom-
men)

N schoen' Gruss
Aranya

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



re zu bluemel (Roesti, 24. Nov 1995, 22:17:52):
Es sind nur 2 zweities erlaubt?Wenn das stimmt muss ich ja meinen postzweitie
loeschen...:(
sag mal einer bescheid ob das auch stimmt mit den 2 Zweities...

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



Re: re zu bluemel (Cuchullin, 24. Nov 1995, 22:30:28):
#! rn=Roesti rt=817247872

Ich weiss nicht, was Bluemel gesagt hat.
Man kann soviel Zweities haben, wie mal lustig ist, denn verbieten kann man
es nunmal nicht. Es waere eine Bevorzugung der Leute, die mehrere Accounts
haben und/oder sich geschickt anstellen.

Cuchullin.- - hat mehr wie 2. Ist selbst einer.


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



Re: Re: re zu bluemel (Mindolluin, 25. Nov 1995, 14:42:38):
#! rn=Cuchullin rt=817248628
Richtig, das gibts nur in bestimmten anderen Muds, dass keine Zweities
erlaubt sind bzw. pro email-adresse dann nur einer erlaubt ist. (dass
pro Person nur einer erlaubt ist kann ja bei mehreren accounts nicht
abgefragt werden)

     Mindolluin - ist kein Zweitie! Sondern Viertie (oder wars Sechstie?)

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



26 (Ricewind, 25. Nov 1995, 15:08:58):
Argh... am 25.11. wurde mir ein silbernes Kreuz gestohlen.
meine gesamte Ausruestung lag am Karawanensammelplatz,
ich war kurzeitig in PV, hatte aber ueber -a bekanntgemacht, das der Krempel
dort mir gehoert
als ich wiederkam (10 min spaeter) fehlte das kreuz.



Ricewind.

P.S. Der Dieb moege es mir bitte wiedergebe.

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



Re^9: Feuerwerk (Asmodis, 28. Nov 1995, 22:36:49):
#! rn=Mango rt=817570705
Also ich war ja einer der ersten, die diese Raketen getestet haben, und
ich hab das Ergebnis auch gleich auf den Kanaelen kund getan und auch,
dass die Blindheit nur befristet war, das wurde auf den Kanaelen
gesagt, ich finde, das haette sich eigentlich schon rumsprechen
muessen, als Magicolli seinen Anschlag ausfuehrte.

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



Re^10: Feuerwerk (Mindolluin, 29. Nov 1995, 14:51:33):
#! rn=Asmodis rt=817594609
Na ja, das mit dem rumsprechen ist aber auch ein zweischneidiges
Schwert, Asmodis, also in dem ersten Playerkill-Artikel habe ich zum
ersten Mal erfahren dass die Raketen RPCs (Real player character)
HPs abnehmen koennen, und da waren bekanntlich ja schon einige tot.

Sooo arg spricht sich das also auch nicht rum.

         und tschuess          Caradhras

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



Frust mit der Bank (Chicola,  2. Dez 1995, 15:36:38):
Hallo :)

Zuerst einmal ein Lob an Jof (?) fuer die Idee mit der Zentralbank.
Allerdings finde ich, dass die Sache noch etwas modifiziert werden muesste, so
dass nicht ein spieler 20 mille muenzen anhorten kann und danach alle laeden
staenig Pleite sind.

Jetzt allerdings bin ich doch ein wenig veraergert, da ich eine ganze Weile
gepruegelt habe, um mein Haus etwas auszubauen und dann beim
Hausausgabeschalter erfahren musste, dass die Zentralbank pleite ist ! Wenn so
etwas an Abenden in der Woche vorkomme wo mehr als 200 Spieler drin sind find
ichs ja OK. Aber das selbst am SonnabendMITTAG keine Chance besteht, das Haus
einzuloesen find ich doch schlichtweg unfair.

Besonders hart wird es dadurch, dass ich (bis auf die heutige Ausnahme) nur
immer am Donnerstag Abend zum Spielen komme und damit ueberhaupt keine
Moeglichkeit mehr habe, mein Haus auszubauen.

Etwas arg veraergert                 Chicola

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



Korrektur;) (Chicola,  2. Dez 1995, 15:38:44):
muenzen == Muenzen,
spieler == Spieler,
staenig == staendig

PS ich hoffe es findet sich eine praktikable Loesung des Problems.

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



nochn PS:) (Chicola,  2. Dez 1995, 15:41:17):
Robin hatte uebrigens nur 12939 Muenzen dabei.

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



Re: nochn PS:) (Jerrico,  4. Dez 1995, 07:21:58):
#! rn=Chicola rt=817915277
Das lag wahrscheinlich darin, dass es nur wenige gibt, denen er noch Geld
stehlen koennte, und die meiden die Hochebene,zumindest mit Geldin den
Taschen.

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



Anzeige wegen Playerkills (Fyt,  7. Dez 1995, 01:15:49):

Tja, Puma :)

Hast DU es Dir gut ueberlegt, dass die Hydra das Lupinental
genau am Startpunkt Deiner neuen Quest betritt?

UNd das man am Start pro Reset nur einer mit nem Schluessel
wegkommt und sich dementsprechend eine groessere Menge Spieler
an eben dieser stelle aufhalten um auf eben diesen Sch...Reset
zu warten?

Wenn ja, dann bin ich der Meinung, dass die Spielertode
(Mahatma und Raiba) vorsaetzlich herbeigefuehrt waren...

Andernfalls ist es immer noch fahrlaessige Toetung...

Fyt. Leicht sauer.

PS: Wenn die Quest weiterhin resetabhaengig bleibt, der Transporter
nur alle Jubeljahre kommt und dann nur zwei Leute mitnimmt und man
ausserdem am Eintrittspunkt der Hydra in das Tal auf den Schluessel
arten muss, bin ich einer der letzten, die die Quest spielen werden.

Nicht, dass ich was dagegen haette, an der Hydra zu sterben, aber
ich haette schon gerne prinzipiell 'n Fluchtweg, und wenn ich nicht
noch 'n Ende-Trigger per Zufall auf 'Hydra' gehabt haette, waere ich
auch tot gewesen.

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



Tod im Lupinental (Mahatma,  7. Dez 1995, 01:42:15):
Hmm, ich fand das schon sehr merkwuerdig, wie diese Geschichte gelaufen ist.
Da
komm ich nichtsahnend beim Bruder Lorenz an, begruesse rasch die dort
Anwesen-
den, und dann bricht die Verbindung zusammen. Als das Einloggen nach einer
kleinen Weile wieder gelang, bekam ich gerade noch die letzten Saetze meiner
Todessequenz mit.
Das man beim Metzeln in einer solchen Situation schon mal sterben kann, weil
man
z.B. die Fluchtrichtung nicht vernuenftig gesetzt hat, mag ja noch gehen,
aber in einem Raum, der keine Ausgaenge hat und wo man nichts Boeses ahnt, ist
das
schon ziemlich uebel, zumal wenn dort der Anfangspunkt einer Quest ist.
Ich hab wahrscheinlich vom Lupinental erst mal genug, da sind mir 3.5 Meps
doch
lieber als 85 AP, auch wenn der Anfang der Quest vielversprechend aussah, mit
der ganzen Zauberei usw.

Mahatma (etwas mehr als leicht sauer)

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



Re: Tod im Lupinental (Acrimon,  7. Dez 1995, 02:48:56):
Hier nun das Log aus meiner Sicht:




Als Du aus dem Nebel heraussteigst bietet sich Dir ein atemberaubender
Ausblick. In der Ferne kannst Du die schneebedeckte Spitze der
Schreckensspitze sehen und daneben die tiefen Taeler von Boing und
Ketos.Unter Dir breitet sich das Tal der Lupinen mit seinen dunklen
Waeldern undblinkenden Seen aus. Du vergisst fast voellig, dass Du
knietief im Schnee stehst.
Raiba beweist, dass aus Bankzweities was werden kann.
Mahatma liebt Lilith (Pssst! Nicht weitersagen!).
Fyt Awez.
Escubar der Eisbaer.
Harakiri die hoffnungsvolle Anfaengerin.
Bruder Lorenz.
Du hast jetzt 153 Lebenspunkte und 210 Magiepunkte.
Du hast jetzt 154 Lebenspunkte und 210 Magiepunkte.
[Abenteuer:Fyt] ich glaub, ich lass die quest, bis sie in vernuenftogem tempo
[Abenteuer:Fyt] spielbar ist :)
Du hast jetzt 155 Lebenspunkte und 210 Magiepunkte.
Du hast jetzt 156 Lebenspunkte und 210 Magiepunkte.m
Escubar sagt: ich glaube Fyt hat Recht (gruebel)
Du hast jetzt 157 Lebenspunkte und 210 Magiepunkte.
Ein Hydrakopf schlaengelt sich pruefend umblickend herein.
Der Hydrakopf greift Raiba mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Raiba sehr hart.
Ein Hydrakopf schlaengelt sich pruefend umblickend herein.
Der Hydrakopf greift Raiba mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Raiba sehr hart.
Ein Hydrakopf schlaengelt sich pruefend umblickend herein.
Der Hydrakopf greift Raiba mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Raiba sehr hart.
Ein Hydrakopf schlaengelt sich pruefend umblickend herein.
Der Hydrakopf greift Raiba mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Raiba sehr hart.
Ein Hydrakopf schlaengelt sich pruefend umblickend herein.
Der Hydrakopf greift Raiba mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Raiba sehr hart.
Ein Hydrakopf schlaengelt sich pruefend umblickend herein.
Der Hydrakopf greift Raiba mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf schlaegt Raiba mit dem Krachen brechender Knochen.
Ein Hydrakopf schlaengelt sich pruefend umblickend herein.
Der Hydrakopf greift Raiba mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Raiba sehr hart.
Ein Hydrakopf schlaengelt sich pruefend umblickend herein.
Der Hydrakopf greift Raiba mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Raiba sehr hart.
Ein Hydrakopf schlaengelt sich pruefend umblickend herein.
Der Hydrakopf greift Raiba mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Raiba hart.
Ein Hydrakopf schlaengelt sich pruefend umblickend herein.
Der Hydrakopf greift Raiba mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf schlaegt Raiba mit dem Krachen brechender Knochen.
Ein Hydrakopf schlaengelt sich pruefend umblickend herein.
Der Hydrakopf greift Raiba mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf schlaegt Raiba mit dem Krachen brechender Knochen.
Eine Hydra waelzt herein.
Die Hydra greift Raiba mit ihren stachelbewehrten Schwingen an.
Die Hydra schlaegt Raiba mit dem Krachen brechender Knochen.
Die Hydra sinkt langsam in das Tal der Lupinen nieder.
Die Hydra bewegt sich.
Eine Hydra waelzt herein.
Raiba greift die Hydra mit blossen Haenden an.
Raiba verfehlt die Hydra.
noch, Raiba greift den Hydrakopf mit blossen Haenden an.
Raiba verfehlt den Hydrakopf.
Die Hydra greift Raiba mit ihren stachelbewehrten Schwingen an.
Die Hydra zerschmettert Raiba in kleine Stueckchen.
Raiba faellt tot zu Boden.
Du siehst eine dunkle Gestalt, die etwas Dunst einsammelt ...
oder vielleichtbildest du Dir das auch nur ein ...
[Tod:] Eine Hydra hat gerade Raiba umgebracht.
[Tod:Eine Hydra] hssss
Du hast jetzt 158 Lebenspunkte und 210 Magiepunkte.
[Allgemein:Elvnik] ahhhh !
Der dunkle Ardana ruft: fyt aufwachen7
Fyt hat gerade das MorgenGrauen verlassen.
Fyt zieht einen roten Guertel aus.
Fyt zieht die Ruestung des Hydratoeters aus.
Fyt verlaesst diese Welt.
Fyt zieht einen Kupferring aus.
[Beileid:Lug] Oh oh oh weh
[Beileid:Inskipp] oh das war Pech
Drolli hat gerade das MorgenGrauen verlassen.
w[Beileid:Janice] ups ?? so schnell ??
under
Du wunderst Dich.
> ?
HAls Du aus dem Nebel heraussteigst bietet sich Dir ein atemberaubender
Ausblick. In der Ferne kannst Du die schneebedeckte Spitze der
Schreckensspitze sehen und daneben die tiefen Taeler von Boing und Ketos.
Unter Dir breitet sich das Tal der Lupinen mit seinen dunklen Waeldern und
blinkenden Seen aus. Du vergisst fast voellig, dass Du knietief im Schnee
stehst.Schlagring.Ein alter Kupferring.
Ein Stutenkerl.
30 Schriftrollen.
Die Leiche Raibas.
Die Hydra.
Ein Kopf der Hydra.
Ein Kopf der Hydra.
Ein Kopf der Hydra.
Ein Kopf der Hydra.
Ein Kopf der Hydra.
Ein Kopf der Hydra.
Ein Kopf der Hydra.
Ein Kopf der Hydra.
Ein Kopf der Hydra.
Ein Kopf der Hydra.
Ein Kopf der Hydra.
Mahatma liebt Lilith (Pssst! Nicht weitersagen!).
Escubar der Eisbaer.
Harakiri die hoffnungsvolle Anfaengerin.
Bruder Lorenz.
[Beileid:Ryne] schwer in ordnung
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Mahatma sehr hart.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Mahatma hart.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Mahatma sehr hart.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf schlaegt Mahatma mit dem Krachen brechender Knochen.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf kitzelt Mahatma am Bauch.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Mahatma hart.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Mahatma sehr hart.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Mahatma.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Mahatma hart.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Mahatma sehr hart.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Mahatma sehr hart.
[Allgemein:Gwynwaiter] Hallo Ihr... Mag ja sein, dass Snow da
[Allgemein:Gwynwaiter] danebengegriffen hat (in Richtung und Ton) - aber wer
[Allgemein:Gwynwaiter] ihn gezappt hat, sollte sich dazu bekennen und
[Allgemein:Gwynwaiter] restoren... finde ich...
Ploetzlich weicht alles Leben aus Harakiri.
Harakiri hat gerade das MorgenGrauen verlassen.
Du hast jetzt 159 Lebenspunkte und 210 Magiepunkte.
Mahatma greift den Hydrakopf mit einem Vollstrecker an.
Mahatma verfehlt den Hydrakopf.
Die Hydra greift Mahatma mit ihren stachelbewehrten Schwingen an.
Die Hydra schlaegt Mahatma mit dem Krachen brechender Knochen.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Mahatma hart.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Mahatma hart.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Mahatma hart.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf Mahatma sehr hart.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf verfehlt Mahatma.
Der Hydrakopf greift Mahatma mit seinem fuerchterlichen Gebiss  an.
Der Hydrakopf trifft Mahatma hart.
Mahatma faellt tot zu Boden.
Du siehst eine dunkle Gestalt, die etwas Dunst einsammelt ... oder vielleicht
bildest du Dir das auch nur ein ...
[Tod:] Ein Hydrakopf hat gerade Mahatma umgebracht.
[Tod:Ein Hydrakopf] hssssss
Fyt ist gerade ins MorgenGrauen gekommen.
[Beileid:Elvnik] RYNE ... wo hast du denn deine 2ties ???
Escubar hat gerade das MorgenGrauen verlassen.
Escubar verlaesst diese Welt.
Escubar zieht einen Schutzparagraph aus.
Escubar zieht einen Bernsteinring aus.
Escubar zieht ein Feuerschild aus.
Escubar zieht eine Kristallkrone aus.
Escubar zieht eine Schattenruestung aus.
Escubar zieht ein ``Born to Kill''-Stirnband aus.
Escubar zieht Lederstiefel aus.
Escubar zieht eine Xanti-Hose aus.
Escubar zieht ein Amulett aus.
Escubar zieht Ein Paar schwarze Handschuhe aus.
[Beileid:Jaf] puma spinnt ja!
[Kultur:Alboin singt'Hydra Hydra dort in dem Tale da ist dein Glueck
....Hydra hydraa]
Speichere Acrimon.
Bis bald!
Closing down.





Acrimon, der Rote Ritter

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



Re: Anzeige wegen Playerkills (Rimus,  7. Dez 1995, 17:08:04):
#! rn=Fyt rt=818295349
Hallo Leute

Wenn bei einer Quest der Startpunkt die Hydra ist, muessten die anderen Quest
auch verstaerkt werden. Meine Vorschlaege:
    1. Schrat: Schrat, Mecki und Charlie Autoattack
   2. Maerche: Anstatt der Hexe den Goblinhexer
   3. Fee von Amaryllis: Kerze aus der Leiche von Zwackelmann
   4. Briefzustellung Brief an Lilith
   5. Obergladiator: So aehnlich wie die Chaosmetzelquest
   6. Geisterschloss: Abzug von 1/3 EP's so wie bei jeden Tod
   7. Raetselstein: Man erhaelt die erste Partitur erst im Krankenhaus
   8. Narrenball: Man muss unbedingt den Koenig in Gelb toeten
   9. Wolpertinger: Wenn er missraten wird, ist es ein Hydrawolpie
  10. Logbuch: Man muss sterben um den Tod den Moerder sagen zu koennen

So das waren ein paar nicht ganz ernstgemeinde Vorschlaege.
Aber wenn die Tendenz vorhanden ist, werden sie wohl bald umgesetzt werden !

Weiterhin viel Spass beim Questen wuenscht Euch

RIMUS

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



komisches Kampfverhalten (Janice,  7. Dez 1995, 18:50:02):
Ich bin grad eben am Wurzelzwerg in der Parallelwelt gestorben, als ich
mir das log nochmal angeschaut habe, bin ich auf was komisches gestossen,
aber seht selbst:
Du hast jetzt 161 Lebenspunkte und 226 Magiepunkte.
Suedlich vom Tuempel.
Es gibt zwei sichtbare Ausgaenge: sueden und norden.
Ein winziger Wurzelzwerg.
Ein Sonnenschirm (geschlossen).
Ein Sonnenschirm (geschlossen).
Ein Sonnenschirm (geschlossen).
Ein Eiszapfen.
  Du greifst den Wurzelzwerg mit dem Vollstrecker an.
  Du verfehlst den Wurzelzwerg.
> s
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg schlaegt Dich mit dem Krachen brechender Knochen.
Du hast jetzt 137 Lebenspunkte und 226 Magiepunkte.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg trifft Dich sehr hart.
Du hast jetzt 120 Lebenspunkte und 226 Magiepunkte.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg trifft Dich sehr hart.
Du hast jetzt 108 Lebenspunkte und 226 Magiepunkte.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg verfehlt Dich.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg zerschmettert Dich in kleine Stueckchen.
Du hast jetzt 75 Lebenspunkte und 226 Magiepunkte.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg zerschmettert Dich in kleine Stueckchen.
Du hast jetzt 44 Lebenspunkte und 226 Magiepunkte.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg trifft Dich sehr hart.
Du hast jetzt 33 Lebenspunkte und 226 Magiepunkte.
Die Angst ist staerker als Du ... Du willst nur noch weg hier.
Ein sabberndes gelblich-gruenes Unwesen kuschelt sich an Dich.
Ein Wurzelzwerg ist jetzt hinter Dir her.
            (Ich fluechte nach norden)
Am Froschtuempel.
Es gibt zwei sichtbare Ausgaenge: sueden und norden.
Ein Weissfrosch.
Ein Weissfrosch.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg schlaegt Dich mit dem Krachen brechender Knochen.
Du hast jetzt 10 Lebenspunkte und 226 Magiepunkte.
         (Der haut nochmal zu, obwohl ich in nem anderem Raum bin ???)
Suedlich vom Tuempel.
Es gibt zwei sichtbare Ausgaenge: sueden und norden.
   (Da ich ganz oben sueden getippt habe, komm ich wieder in den)
   (Raum mit dem Wurzelzwerg)
Ein winziger Wurzelzwerg.
Ein Sonnenschirm (geschlossen).
Ein Sonnenschirm (geschlossen).
Ein Sonnenschirm (geschlossen).
Ein Eiszapfen.
  Du greifst den Wurzelzwerg mit dem Vollstrecker an.
  Du verfehlst den Wurzelzwerg.
> s
Du hast jetzt 11 Lebenspunkte und 226 Magiepunkte.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg schlaegt Dich mit dem Krachen brechender Knochen.

Dein Partner ist leider nicht da, um Dir beizustehen.

Du kannst eine chaotisch mutierte Haut nicht ausziehen.
[Tod:] Ein Wurzelzwerg hat gerade Janice umgebracht.
[Tod:Ein Wurzelzwerg] Ik hav haehmische Komentaare nix noetisch!

Bitte erklaer mir das mal einer ..
Janice, ratlos

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



wurzelschwerg die 2. (Janice,  7. Dez 1995, 19:34:30):
diesmal war ich etwas vorsichtiger, aber er hat den selben muell wieder
gemacht:
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg zerschmettert Dich in kleine Stueckchen.
Du hast jetzt 155 Lebenspunkte und 187 Magiepunkte.
Du gehst auf einem relativ festen Trampelpfad, der in Nord-Sued-Rich-
tung verlaeuft.
Aus dem Norden hoerst Du irgendwelche Tiergeraeusche, die Du noch nicht
genau bestimmen kannst.
An beiden Seiten des Weges befinden sich grosse Buesche, die verhin-
dern, dass Du abseits des Pfades etwas erkennen kannst.

Es gibt zwei sichtbare Ausgaenge: sueden und norden.
Catweazle.
Sorsha ist eine ganz heisse Puppe.
Ein winziger Wurzelzwerg.
  Du greifst den Wurzelzwerg mit der Macht des Chaos an.
  Du verfehlst den Wurzelzwerg.
>   Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg trifft Dich hart.
Du hast jetzt 148 Lebenspunkte und 187 Magiepunkte.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg schlaegt Dich mit dem Krachen brechender Knochen.
Du hast jetzt 120 Lebenspunkte und 187 Magiepunkte.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg schlaegt Dich mit dem Krachen brechender Knochen.
Du hast jetzt 94 Lebenspunkte und 187 Magiepunkte.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg schlaegt Dich mit dem Krachen brechender Knochen.
Du hast jetzt 72 Lebenspunkte und 187 Magiepunkte.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg trifft Dich sehr hart.
Du hast jetzt 55 Lebenspunkte und 187 Magiepunkte.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg trifft Dich.
Du hast jetzt 51 Lebenspunkte und 187 Magiepunkte.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg zerschmettert Dich in kleine Stueckchen.
Du hast jetzt 19 Lebenspunkte und 187 Magiepunkte.
Die Angst ist staerker als Du ... Du willst nur noch weg hier.
Ein Wurzelzwerg ist jetzt hinter Dir her.
(fluchtrichtung versagt -> gefluechtet)
Jetzt weisst Du endlich, wo die merkwuerdigen Stimmen herkamen,
die Du gerade noch gehoert hast. Zu Deiner Rechten befindet sich
naemlich ein Froschtuempel.
Der Pfad fuehrt von Norden nach Sueden und umgekehrt.
Es gibt zwei sichtbare Ausgaenge: sueden und norden.
Ein Weissfrosch.
Ein Weissfrosch.
Nach wem willst Du einen Chaosball werfen?
> Sowas siehst Du hier nicht!
>   Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg trifft Dich sehr hart.
Du hast jetzt 3 Lebenspunkte und 187 Magiepunkte.
(er haut wieder aus der ferne drauf und fluchtrichtung springt an !!!!)
Du gehst auf einem relativ festen Trampelpfad, der in Nord-Sued-Rich-
tung verlaeuft.
Aus dem Norden hoerst Du irgendwelche Tiergeraeusche, die Du noch nicht
genau bestimmen kannst.
An beiden Seiten des Weges befinden sich grosse Buesche, die verhin-
dern, dass Du abseits des Pfades etwas erkennen kannst.

Es gibt zwei sichtbare Ausgaenge: sueden und norden.
Catweazle.
Sorsha ist eine ganz heisse Puppe.
(fluchtrichtung war sueden, deshalb wieder beim zwerg)
Ein winziger Wurzelzwerg.
  Du greifst den Wurzelzwerg mit der Macht des Chaos an.
  Du verfehlst den Wurzelzwerg.
> Du hast jetzt 4 Lebenspunkte und 188 Magiepunkte.
  Der Wurzelzwerg greift Dich mit einem riesigen Streitkolben an.
  Der Wurzelzwerg trifft Dich hart.

Dein Partner ist leider nicht da, um Dir beizustehen.

Du kannst eine chaotisch mutierte Haut nicht ausziehen.
[Tod:] Ein Wurzelzwerg hat gerade Janice umgebracht.
[Tod:Ein Wurzelzwerg] Ik hav haehmische Komentaare nix noetisch!


Janice, sauer

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



Re: Re: Tod im Lupinental (Puma,  8. Dez 1995, 10:15:49):
#! rn=Acrimon rt=818300936
da die mpa gerade meinen netten 2seiten-artikel in den orkus geschickt hat,
hier noch einmal telegrammstil
- hydra-startraum geandert
- hydra-opfer bitte melden, erhalten ep zurueck
- Bibliothek sollte jetzt laufen

Puma!
Alles Scheisse!


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



Re^3: Tod im Lupinental (Baboon,  8. Dez 1995, 10:18:02):
#! rn=Puma rt=818414149
Wo du schon mal dabei bist: Ueberdenk auch den Hetzerdaemon nochmal.
Da ist heut morgen einer durch HE und Zwergenstadt gerannt und hat Anfaenger
gefressen.

Baboon (genau der!)

P.s.: ganz typo-frei ist der Hetzer auch noch nicht! :-)


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



Re: wurzelschwerg die 2. (Zardoz,  8. Dez 1995, 12:16:16):
#! rn=Janice rt=818361270
Der riesige Streitkolben des Wurzelzwergs ist vielleicht sooooo riesig,
dass er noch in die angrenzenden Raeume reicht? Genaueres weiss man
nicht, denn der Streitkolben zerfaellt ja bekanntermassen zu staub,
wenn der Wurzelzwerg stirbt...

Ciao    Zardoz

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



Re^3: Tod im Lupinental (Fyt, 10. Dez 1995, 13:56:50):
#! rn=Puma rt=818414149
Krieg ich auch die 3 Minuten vom Mud-ALter abgezogen, die mich der
Hydraquatsch gekostet hat?

Fyt, eitel :)

PS: Eigentlich sollte das heissen: Danke, Puma :)

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



 Water Luh (Jaf, 10. Dez 1995, 23:53:34):

Eben Passiert:

Du bist nun im "Ultrakurz"modus.
> Du greifst jetzt mit Yoko-tobi-geri-kekomi an.
> Ok
> Du bist nun im "Kurz"modus.
> [Allgemein:JimDiGriz] nur das mud
.                                                        200 lp   159 mp
(*) Yoko-tobi-geri-kekomi
.    3
Water Luh spricht ein Wort der Macht: ZAP!
Dein Geist scheint zu explodieren, dann empfaengt Dich die
Schwaerze des Todes.
[Tod:] Water Luh hat gerade Fyt umgebracht.
[Tod:Water Luh] So ein Dummkopf ... selbst schuld
:

Ich dachte, es darf keine Monster geben, die mit einem Schlag toeten?
:
Jaf, in Vertretung seines Chefs.

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



Re:  Water Luh (Jaf, 10. Dez 1995, 23:55:43):
#! rn=Jaf rt=818636014

Hm, eigentlich muesste das jetzt nach 'schmarrn'
:
> Stille! Hat er Dich vergessen?
Der Tod sagt: HIER IST LEIDER EIN FEHLER UNTERLAUFEN. DU BIST IN DEINEM
LEBEN IMMER GUT GEWESEN UND HATTEST EINEN SCHNELLEN TOD VERDIENT.
DAS HAT MEINE TOCHTER ABER NICHT BEWUSST! meint der Tod. SIE IST HALT WAS
VERSPIELT... KINDER!!!
Dann scheint er lange zu ueberlegen.
:
Also, viel schneller geht das nicht.

Um nochmal auf das Thema zurueckzukommen, Boing, ich bin etwas
enttaeuscht.
:
Nochmal Jaf in Vertretung.

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



Re:  Water Luh (Fyt, 11. Dez 1995, 00:10:47):
#! rn=Jaf rt=818636014
Vielleicht noch was zum Hergang: Ich bin vorher mit 'ende' raus,
der YTGK war also der erste Angriff im Kampf, die Antwort war der
Todesschlag. Man hat also nicht mal mit mehreren ne Chance, weil's
den, der zuerst draufhaut, erwischen kann.

Ich hatte bis jetzt immer den Eindruck, Boing (ich hoffe, ich greif
jetzt nicht den falschen an) haette 'n gutes Augenmass fuer
Verhaeltnismaessigkeit, aber das hier geht mir ehrlich gesagt zu weit.

Ich glaub, die meisten wissen, dass ich nichts dagegen hab, an einem
schwierigen Monster zu sterben, aber ich will ne Chance.

Fyt. Irgendwie sauer.

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



Re: Re:  Water Luh (Baboon, 11. Dez 1995, 08:42:52):
#! rn=Fyt rt=818637047
Also, meiner Meinung nach ist die neue Ebene von boing auch ein bischen
heftig ausgefallen,
ABER
 1. ist die SSP kein Kindergarten.
 2. wirst du feststellen, wenn du deinen eigenen Artikel nochmal liest, das
das kein regulaerer Angriff war, sondern ein Zauberspruch, den Water Luh
beherrscht.
 3. ist diese Ebene brandneu, also quasi grad in der Erprobungsphase.
Vieleicht
hat boing ja noch ein einsehen und schwaecht die Sache ein klein bischen ab.

4. Wenn du dich genau umgesehen haettest waere das wohl nicht passiert. Mehr
zu sagen
waere Spielerhilfe. :-)

Baboon (Herr der Grossbaustelle)


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



Re:  Water Luh (Anakin, 11. Dez 1995, 09:36:28):
#! rn=Jaf rt=818636014
Jo, umschauen bevor man da angreift. Das ist alles.

Anakin.

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



Re^3: Knutschen und Questen? (Fyt, 11. Dez 1995, 10:48:37):
#! rn=Isnogood rt=818640808
Hm, ich hab die ********* in der ****** sehr wohl gelesen, allerdings
war das ja wohl in nem anderen Raum, wo auch ein Monster rumsteht.

Naechstes Mal steht die Warnung in der Zwergenkapelle? :)

Davon mal abgesehen, find ich's vom Prinzip her nicht gut, wenn
naemlich solche Viecher jetzt an der Tagesordnung sind, wird bald
die Forderung der Spieler kommen, sich auch dagegen schuetzen zu
koennen, dann kommt evtl. was wie das 'amulet of livesaving' aus
Tapp und dann aergern sich alle anderen Magier, dass ihre Monster
nicht mehr stark genug sind usw...

Fyt.

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



Re^4: Knutschen und Questen? (Baboon, 11. Dez 1995, 10:52:51):
#! rn=Fyt rt=818675317
Anscheinend hast du mich falsch verstanden. Also gut, werden wir etwas
konkreter.
Gegen die Spells von Water luh kann man sich schuetzen. Dazu braucht nix neu
geproggt zu werden.

Inkognito!

:)

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



Re^5: Knutschen und Questen? (Mupfel, 11. Dez 1995, 14:44:25):
#! rn=Baboon rt=818675571
ja bei deinem 5. tod sagt er dir vorher, wie :-)
-mupfel- (noninkognito)

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



Re: Re:  Water Luh (Boing, 11. Dez 1995, 14:49:19):
#! rn=Fyt rt=818637047
Das kann ich leider nicht nachvollziehen ... es gibt 4 (in Worten: vier)
deutliche Hinweise darauf, dass Water Luh einen Todesspruch hat und wie
man sich davor schuetzt, wer erst einmal alles angreift ohne sich vor-
her umzusehen ist meines Erachtens selbst schuld, da bin ich also genaus
enttaeuscht von Dir, von Dir haette ich das naemlich nicht erwartet.
Alle anderen davor hatten die Hinweise gefunden und beachtet.
  Boingf
  (ohne f)

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



Hass-Artikel und Co. (Boing, 11. Dez 1995, 14:58:21):
Das mit Fyt ist mal wieder ein typisches Beispiel fuer das, was ich in
letzter Zeit immer haeufiger kritisiere. Wieso muss man noch waehrend
die Todessequenz laeuft einen Hass-Artikel in die Zeitung setzen?
Wieso kann man nicht einfach mal tief durchatmen und sich erst mal
ueber die wahren Verhaeltnisse informieren? Wieso kann man nicht erst
mal versuchen sich mit dem entsprechenden Spieler/Magier zu unterhalten
und vielleicht schon alles privat zu klaeren? Aber nein, da wird erstmal
kraeftig in der Oeffentlichkeit gezetert und hinterher beschwert man
sich dann am besten noch, dass das Klima im MG immer schlechter wird ...
ratet mal woran das liegt!

  Boing

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



Re: Hass-Artikel und Co. (Morgoth, 11. Dez 1995, 15:30:55):
#! rn=Boing rt=818690301
ich weiss es, ich weiss es (**zeig auf**)
aber scherz beiseite
welche gruende die spieler/seher haben sich zu beschweren ist eigentlich
klar. keiner will sterben und keiner will seine sachen verlieren(wie auch
immer **schiel einige diebe an**). aber ich habe festfgestellt, dass es auch
unter den magiern immer wieder und immer haeufiger zu heftigen!! wortgefechten
kommt, in denen auch beleidugungen (leider) an der tagesordnung sind. unter
anderem fuehle ich mich in letzter zeit sehr oft persoenlich angegriffen. dies
ging soweit, dass ich dem MG fuer eine woche komplett den ruecken gekehrt
habe(und ich bin auch nur durch zufall wi(e)der(willig) zurueckgekehrt). ich
hatte ehrlich gesagt die schnauze gestrichen voll. wenn einige 'supermags'
meinen alle anderen waeren sowieso zu bloed, unfaehig, wie auch immer, sollten
sie dran denken, dass auch sie klein angefangen haben, oder (**schiel xxx
an**)? hm, vielleicht gehoert das doch in magier.etikette? ertsmal ein return
einschieben und luft holen.
um zu den spielern/seher zurueckzukommen. der Wl ist sicher ein harter
brocken, aber wie boing es in seinem artikel schon schreibt. erst kucken, dann
killen. ist ja in meiner stadt nicht anders. wer ohne sich umzusehen draufhaut
kriegt halt auf die muetze. hmm. kein besonders guter trost, hm? ich kanns
aber nachempfinden als alter metzler. ich denk da nur an 'moron-pingpong'
**grummel**. tja, jetzt muss ich doch namen nennen. das soll aber in keiner
weise irgendwie beleidigend oder sonstwie fies oder so aufgefasst werden. fyt,
ist es so wichtig/schlimm, dass du dieses neue monster nicht als erster
besiegt hast? ich kann mich an (vor?)letzte woche erinnern, als dein name
3,4?,5? x-mal auf tod im zusammenhang mit der hydra gesendet wurde(pumas
kill-statistik steigt). warum dich ueber diese paar ep so aufregen. soweit ich
weiss hast du den hoechsten dan, den ein spieler erreichen kann. pff, was
solls. sch**ss auf die ep!! oder sind ep alles? (**denk an alte zeiten**) noe.
waren sie zumindest fuer mich nicht.
argh. wie gross ist der artikel jetzt?? also schulz jezz...
flame me, if you like to
morgoth

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



Re: Hass-Artikel und Co. (Roesti, 15. Dez 1995, 13:22:21):
#! rn=Boing rt=818690301
Warum erst mal ein Artikel waerend der Todessequens gesetzt wird?
Na ja...
Das koennte daran liegen das mann waerend der Todessequemz nicht teile mit
machen kann...
Ich fuer meinen teil Geniesse die Todessequenz zwar aber ich kann mir auch
gut vorstellen das jemand der fuer jede Minute Mud was bezahlen muss es nicht
ganz so spassig findet nichts(ausser Zeitung schreiben  und einen aeusserst
spanenden,witzigen , manchmal auch etwas abartigen Ablauf der Todessequenz zu
sehen)machen zu koennen...

War jetzt weder eine kritik noch ein Verbesserungsvorschlag...
Ich wollte hiermit lediglich versuchen die Sache zu erklaeren...

Roesti lacht immer noch ueber Den stellvertreter von TOD...:)

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



Re: Re: Hass-Artikel und Co. (Bloodyharry, 15. Dez 1995, 13:57:33):
#! rn=Roesti rt=819030141
> Roesti lacht immer noch ueber Den stellvertreter von TOD...:)

Tja. Vieleicht gibt es ja am Heilig Abend den Weihnachtsmann und Knecht
Ruprecht, satt Tod und Lars? Wer weiss..

Opapirat B.Harry

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



Re: Re: Hass-Artikel und Co. (Grimmborn, 15. Dez 1995, 15:18:10):
#! rn=Roesti rt=819030141

Tut mir leid, wer sich darueber beschwert, dass er in der Todessequenz ist
weil er "jede Minute mud auf der Telefonrechnung" hat der hat da massiv was
nicht verstanden.
Der TOD gehoert zum mud dazu, er ist nicht Schikane, sondern Bestandteil. Als
Alternative koennte man ja diskutieren, nach Wunsch statt dessen das savefile
zu loeschen, um unmittelbar wieder von vorne anfangen zu koennen...
Wenn ich an meine eigene, selbstverstaendlich nur spaerliche Erfahrung denke,
dann hab ich nach einem Tod eh zuviel gezittert als dass ich noch Artikel
haette schreiben koennen. Vorrausgegangenist meist eine hektische Periode, ein
Bangen vor dem Schirm, ob das ende noch rechtzeitig kam gefolg von der
Enttaeuschung. Da war ich anschliessend emotional viel zu ausgelaugt... ;-)

Und wenn man so einen Artikel geschrieben hat mit Zweitie, aus der
Todessequenz rauskommt, nn macht, liest man den eigenen Artikel nochmal. Wer
dann nicht "loesche artikel nr" eingibt kann auch nicht auf Affekthandlung
plaedieren.

Grimmborn der Atheist

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



wasserunwesen (Slash, 15. Dez 1995, 19:11:46):
also das finde ich echt etwas uebertrieben:
Ich bin beim wasserunwesen draufgegangen in zardoz burg.., nach der
todessequenz
wache ich in der kapelle wieder auf und ein wasserunwesen verfolgt mich,
und ich hatte da grad 14 lp's..
kann mir mal jemand erklaeren, wie man sich da wehren will, ohne kohle, ohne
ausruestung???
Das ist ja gar nicht moeglich.. ausloggen hat auch nicht geholfen, denn das
wasserunwesen hat mit slash
weitergekaempft :(
Slash
P.S.Haette mich pantoffel nicht so schnell gefunden, waer ich gleich nochmal
draufgegangen, gerettet mit 4 lp's..

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



Ohne Kommentar (Dancer, 18. Dez 1995, 09:46:17):
Und wieder mal eine Liste von Leuten, deren wundervolle Sandtigergruesse beim
Lesen des Logfiles durch ihre bestechende Gewoehnlichkeit auffallen:


Deidre setzt Tigergruss fuer Lizzy auf: HALLO LIZZY!! DU MIESE ALTE
SCHLAMPE!! DEINE T Fahr  zur Hoelle! Du kleine Vo...

Nightmare setzt Tigergruss fuer Bombowski auf: Du alte Sau !Fick dich selber
und habe spass dabei.

Bombowski setzt Tigergruss fuer Nightmare auf: ICH FICK ALLES UND JEDEN,UND
WENN DIR DAS NICHT PASST,DANN KANNSTE MIR BESCHEIDSAGEN !.

Bombowski setzt Tigergruss fuer Ragbard auf: NA DU ASSOZIALITAET !!!.


Dancer

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



Re: Hydratod (Rudiratter, 20. Dez 1995, 01:30:46):
#! rn=Acrimon rt=819418602
Wo sind wir hier eigentlich? Im Kindergarten???? Werden jetzt alle Todeslogs
in die MPA gepostet? Warum idlest Du auch bloede im Lupinental rum?
Nenenenenenenenene...
Das ist nun wirklich zu viel. Were was von Puma oder einem anderen Magier
will nach seinem Tod, der soll denen mailen und nicht noch 200 andere Mudder
mit seiner Heulerei in der MPA nerven, das ist ja nicht mehr zum Aushalten.
Und was fuer 'Beweise' willst Du denn von Puma? Beweis Du doch erst mal, dass
Du das Log nicht geaendert hast und dann gepostet hast! Beweise, Beweise, die
boesen Magier sind schuld und wir sind alle kleine Spieler, die schamlos von
denen in die boesesten Fallen gelockt werden. Ich koennt kotzen.
Rudi

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



Re: Re: Hydratod (Janice, 20. Dez 1995, 01:33:44):
#! rn=Rudiratter rt=819419446
Wo Du recht hast, hast Du recht rudi* !!
Janice postet auch ganz gerne mal einen Tod in die MPA
P.S. --> Schmarrn

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



Re^3: Hydratod (Acrimon, 20. Dez 1995, 01:49:25):
#! rn=Janice rt=819419624
Nimms mir bitte nicht uebel Puma.

Ich verlange ja gar keine EPs zurueck, und das was ich mit dem Beweis
geschrieben habe nehm ich auch zurueck.

Aber bitte (geht an alle Magier) schreibt nicht Sachen in die mpa, die ihr
gar nicht gemacht habt.

Acrimon der Rote Ritter, will Magiern keinesfalls den Spasz am Programmieren
verderben

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



Re: Re: Hydratod (Boing, 20. Dez 1995, 14:08:39):
#! rn=Rudiratter rt=819419446
Ich erinnere mich daran, genau das erst letzte oder vorletzte Woche
in dieser Rubrik geschrieben zu haben. Ich hab das Log geloescht und
werde es auch in Zukunft tun, es gibt mail und man kann sich erst einmal
direkt an den betreffenden Magier wenden. Ich versteh einfach nicht,
dass das offensichtlich nur wenige kapieren ...
  Boing

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



Re: Re: Hydratod (Asmodis, 20. Dez 1995, 14:43:24):
#! rn=Rudiratter rt=819419446
Naja, wenigstens war es die passende Todessequenz :)
Aber ich weiss schon, warum ich diese komische Inferno-Quest
nicht anfange, ist etwas fuer Selbstmoerder,
an jeder Ecke eine neue Gefahr :(

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



Re: wasserunwesen (Zardoz,  5. Jan 1996, 14:02:39):
~#! rn=Slash rt=819051106
~#! tid=819051106
Wenn dir das Wasserunwesen zu gefaehrlich ist, dann geh doch auf die
Hochebene und kille Ameisen...


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



ZTs und bloede Eingaben (Dacapo,  6. Jan 1996, 23:18:47):
Folgendes ist mir letztens im Dschungel passiert:

Ich war im Wangadorf in der Kneipe und wollte dass der Affe Handstand macht.
(Nein, fragt jetzt nicht, warum. Ich bin nur Zweitie und wusste von meinem
Chef, was dann passieren kann)
Weil das aber gedauert hat, las ich ein bisschen in der Top-Liste.

Genau den Moment sucht sich der Affe natuerlich fuer seinen Handstand aus.
Ich also (weil die Liste gerad mit -mehr- angehalten war) !applaudiere
eingegeben und der Affe spendet mir auch tatsaechlich was. Bloederweise hab
ich vor die anschliessende Zahl kein ! gesetzt und dadurch auch nix davon
gehabt. Als ich auf einen weiteren Handstand hin nochmal applaudiert hab,
passierte nix weiter. Chance vertan.

Ich geb zu, ich war zu bloed, aber dass einem so ZTs verloren gehn, ist wohl
auch nicht im Sinne des Erfinders, oder?

Gruesse
Dacapo

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



Re: ZTs und bloede Eingaben (Zuerileu,  6. Jan 1996, 23:30:30):
~#! rn=Dacapo rt=820966727
~#! tid=820966727
Sali,
So gehen Dir keine Zt's verlohren sondern dieser Zt war wohl einfach nichts
fuer Dich. Wenn du oder dein Chef auf die idee gekommen waere ein paar Leute
auf diesen Vorfall anzusprechen bevor du gleich wie ein wilder "Affe" in der
Mpa rumbruelst, haetten diese dir warscheinlich das selbe verzapft.

Im sinne des Affen's Pech gehabt..   cu Zuerileu

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



Re: Re: ZTs und bloede Eingaben (Cuchullin,  6. Jan 1996, 23:33:14):
~#! rn=Zuerileu rt=820967430
~#! tid=820966727

Nein, Zuerileu, es kann durchaus vorkommen, dass gefundene Zaubertraenke
verlorengehen koennen. Ob es durch ein 'more' passieren kann, weiss ich nicht,
aber durch ein 'Aus dem Raum fluechten', waehrend man gefragt wurde, was man
denn nun erhoehen moechte, laesst das den ZT in der Tat ersatzlos
verschwinden.
Schade eigentlich. Aber vielleicht ist das schon geaendert...

Cuch.-


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



PS (Dacapo,  6. Jan 1996, 23:34:30):
Aehm, hab ich vergessen. Den Punkt hab ich inzwischen zwar bekommen, aber
das ist dennoch eine potentielle Falle, die man, sofern moeglich, ausbauen
sollte, denke ich.

Gruss
Dacapo

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



Re: PS (Zuerileu,  7. Jan 1996, 00:41:41):
~#! rn=Dacapo rt=820967670
~#! tid=820967670
Sali Dacapo,
Jo, also ich muss Cuchullin da recht geben und mich etwas korigieren. So ein
fall ist vieleicht doch nicht auszuschliessen und kann evtl. passieren. Wenn
dort einen Bug vorliegt wird der sicher bald behoben. Nicht das ihr nun alle
in einer Massenhysterie ausbrecht, wenn ihr denkt das bei euch so ein fall
vorliegt koennt ihr ja den zustaendigen erzmagier mal eine kurze Mail
schreiben, sowas laesst sich nachpruefen.

tschuess Unterwelthorror Zuerileu

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



Re^3: ZTs und bloede Eingaben (Wargon, 11. Jan 1996, 13:47:56):
~#! rn=Cuchullin rt=820967594
~#! tid=820966727
  Hi!
Wenn man im More oder beim Schreiben eines Zeitungsartikels(???) nebenher ZTs
sucht, gehen die jetzt nicht mehr floeten. Man wird vielmehr darauf
hingewiesen, dass man einen ZT gefunden haette, wenn...
Wenn man dann das Lesen/Schreiben beendet hat, kann man sich den ZT nochmal
zu Gemuete fuehren.
Das gilt uebrigens nicht fuer Magier mit eingeschaltetem Trank-finde-Modus.
Andererseits duerften Magiern die ZTs auch ziemlich egal sein. ;)
  Wargon

PS: Natuerlich wird die Aenderung wie ueblich erst nach dem naechsten
Ausloggen mit "ende" fuer euch aktiv (alternativ auch mit dem naechsten
Reboot).

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



ich bin schuldig (Morgoth, 18. Jan 1996, 11:53:05):
ok, ich habe einen bug in meine wurfsterne eingebaut, der wohl die stats
etwas durcheinander bringt **schaem**. gluecklicherweise ist er nun behoben.
wer allerdings davon betroffen ist, sollte sich schleunigst melden.
nochmals sorry fuer die unannehmlichkeiten.....
morgoth

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



Re: ich bin schuldig (Asmodis, 18. Jan 1996, 19:56:56):
~#! rn=Morgoth rt=821962385
~#! tid=821962385
Der bug ist noch lange nicht behoben, ich habe die wurfsterne gerade
getestet,
und meine stats sind wieder runter auf 1 1 1 3 !!!
Nehmt sie doch raus, solange sie nicht gehen

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



tot , aber warum? (Zillus, 24. Jan 1996, 23:50:27):
Ich habe ja nix dagegen, ab und zu zu sterben im mud. Aber wenn ich schon
sterbe, dann wuerde ich gerne wissen, woran ich sterbe.
Da hat mich vor kurzem ein teufel umgebracht. Ich war im tempel (in der
Kanalisation, naehe Fraggle), und habe ihne nicht angegriffen, er hat mich
auch nicht angegriffen.
Und ploetzlich erscheint auf dem Bildschirm die Meldung:
[Tod:] Ein Teufel hat gerade Zillus umgebracht. <23:20:35>
Wie gesagt: Ich habe nciht gekaempft, ich habe ihm nix getan. und er mir im
voraus auch nix.
Mich wuerde der Grund, warum mcih dieser teufel umgebracht hat, schon noch
interessieren....
ciao, Zillus

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



Re: tot , aber warum? (Anakin, 25. Jan 1996, 01:57:26):
~#! rn=Zillus rt=822523827
~#! tid=822523827
Hi,

Ich hab mir sagen lassen, wenn man dem Teufel mehr als 2 falsche
Antworten gibt in Bezig auf den Moerder wird man umgebracht.
Tja wenn man raet und sichnicht umschaut stirbt man.
Ich weiss nicht ob es so war, es waere aber eine Moegliechkeit.

Anakin.

P.S.: sorry fuer fuer die Typos..ist schon spaet.

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



Re: Re: tot , aber warum? (Zillus, 26. Jan 1996, 00:48:21):
~#! rn=Anakin rt=822531446
~#! tid=822523827
Also das ist moeglich dass ich deswegen gestorben bin. Aber:
Ich habe nicht geratet, sondern rund drei wohlbegruendete Antworten gegeben,
wer der Moerder sein koennte. Die Situation ist nihct so eindeutig, dass das
gerade klar ist. Zumindest fuer mcih nicht. Zudem hab ich mich noch ein - oder
Zweimal vertippt ;-)
Und dann kam wie erwaehnt die Todes Meldung.
Was mich stoert, und zwar massiv:
Dass nicht mal klar wird warum ich sterbe. Auch niemand der Anwesenden konnte
mir das genau sagen.
Dass ich bei einer Quest sterbe, ohne Vorwarnung, bloss weil ich ne falsche
Antwort gebe. Ich finde das von den verantwortlichen ziemlich fies und
Hinterhaeltig.
Ob das einzige Ziel einiger Magier ist, die Spieler zu aergern? Das ist nciht
das erste Mal , dass ich sowas vermute, leider.
Was solls , ich habe meine Lehren gezogen: Falls ich wieder mal mich an Sam
HArkwind versuche, dann nur mit Komplettloesung. Anders ist fuer mich diese
Quest nciht zu bewaeltigen .
So long, Zillus
PS Ihr koennt antworten was ihr wollt ich bin nun einige Tage in den ferien
:)

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



Re^3: tot , aber warum? (Rxtech, 26. Jan 1996, 10:57:58):
~#! rn=Zillus rt=822613701
~#! tid=822523827
Also ich bin nun wirklich nicht der Oberquester hier, aber der Teufel
sag einem meiner Meinung nach vorher, dass man sich die Antwort schon gut
ueberlegen sollte (muesste mich sehr irren, wenn es nicht so ist). Und
dann begruendet zu raten ist schon sehr mutig. Ausserdem gibt es fuer
jede Loesung dieser Quest deutliche Hinweise und somit ist es gar
nicht notwendig zu raten. Wer trotzdem raet, der hat dann meiner
Meinung nach Pech gehabt und geht dann halt mal drauf.

Rx

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



Re^3: tot , aber warum? (Jimdigriz, 26. Jan 1996, 13:50:34):
~#! rn=Zillus rt=822613701
~#! tid=822523827
Tag Zillus,

du bist ja jetzt in den Ferien, aber wenn du wiederkommst
liesst du das wohl ;)

So weit ich mich erinnere, wird man schon gewarnt das es
der Teufel nicht gerne sieht wenn man 'rumraet'.
Und er toeten einen auch nicht sofort sondern zieht erstmal
Kraeftig LP ab. Das sollte man auch ueberleben (waren so 100 glaub ich)
und das wird man sich wohl auch zu Herzen nehmen und nochmal
genauer die Indizienm untersuchen.

Mag sein dass die Quest a bisserl dappig is, aber Fraggle
ist sicher kein Magier der spieler absichtlich aergern will.

My. 0.02 UKP

Ciao
 James Bolivar diGriz, the Stainless Steel Rat

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



Re^4: tot , aber warum? (Jimdigriz, 26. Jan 1996, 13:52:05):
~#! rn=Jimdigriz rt=822660634
~#! tid=822523827
huch,
Rx war schneller...
man sollte eben doch die Rubrik erst zuende lesen ;-)

JdG

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



Re^5: tot , aber warum? (Grimmborn, 26. Jan 1996, 15:09:47):
~#! rn=Jimdigriz rt=822660725
~#! tid=822523827

...oder dann wenigstens die Zeugnisse der eigenen Dummheit und
Unueberlegtheit (= die redundanten Artikel) loeschen. Oder zumindest nicht mit
nem weiteren hirnlosen Artikel hinterherkommen, der wiederum einen
ueberfluessigen Artikel (naemlich diesen hier) herausfordert.

Grimmborn der Atheist

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



Re^7: tot , aber warum? (Grimmborn, 26. Jan 1996, 15:13:51):
~#! rn=Raffi rt=822665554
~#! tid=822523827

Ich oute mich hier: normalerweise loesche ich solche ueberfluessigen Artikel
kommentarlos, aber in dieser Rubrik geht das (mit gutem Grund) nicht.

Grimmborn der Atheist. Schreibt nur und ausschliesslich sinnvolle Artikel.

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



Re^9: tot , aber warum? (Grimmborn, 26. Jan 1996, 15:16:25):
~#! rn=Hardil rt=822665716
~#! tid=822523827

Mistkerl. Wenns jetzt auffliegt: Du bist schuld!

Grimmborn der Atheist. Stimmt dafuer, dass Hardil kein Bier abbekommt.

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



Re^6: tot , aber warum? (Jimdigriz, 26. Jan 1996, 15:17:38):
~#! rn=Grimmborn rt=822665387
~#! tid=822523827

Genau, absolut richtig. Einmal herausgefordert, muss man natuerlich
seine 'Ehre' (oh sorry wunder Punkt) verteidigen.
Meine Artikel waren evtl redundant, unterstreichen allerdings nur
die allgemeine Haltung die Brummbaer Rxtech verdeutlicht hat.
Insofern kann man meinem Artikel durchaus einen Sinn abgewinnen,
naemlich die Bestaetigung eines geachteten (?) Mitglieds der
Magiergemeinschaft zu der schliesslich auch Du, Grimmborn zaehlst.
Mein 'hirnloser' followup sollte auf humoristische Weise zum
Ausdruck bringen, dass auch ich nicht perfekt bin. Keinesfalls
sollte der Eindruck erweckt werden ich wuesste nicht um den
'loesche' befehl der mpa, welchen ich selbst schon oft erfolgreich
angewendete. Dieser (ja der den du liest) ist ebenfalls kein
'ueberfluessiger' Artikel sondern bestaetigt Grimmborns
Ansicht, dass eine Flut an unsinnigen und redundanten Artikeln
auf einen unueberlegten Folgen kann.
In diesem Sinne empfehle ich die Verlegung der oben genannten
geistigen Erguesse in die dafuer vorgesehene Rubrik:
d.schattenwelt. (den da wollten wir doch immer muellen oder? )

Mit freundlichsten Gruessen,
 Ihr James Bolivar diGriz

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



Re^7: tot , aber warum? (Raffi, 26. Jan 1996, 15:19:26):
~#! rn=Jimdigriz rt=822665858
~#! tid=822523827

Hey Jim* sei vorsichtig mit deinen Aeusserungen  - Das Material das du da
verschwendest reicht locker fuer 10 einzelne Re!

Gruss
H.

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



Re^10: tot , aber warum? (Grimmborn, 26. Jan 1996, 15:20:29):
~#! rn=Raffi rt=822665820
~#! tid=822523827

Naja, polizie.beschwerden ist ja die einzige Cat* -sichere Rubrik, wenn wir
alle dichthalten merkt ers nicht. Und wenn doch, sollten wir vielleicht lieber
anonym posten. Dann kann uns keiner was. Also, wie ists? Riskieren wirs? ;-)

Jemand der Atheist

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



Re^11: tot , aber warum? (Raffi, 26. Jan 1996, 15:21:22):
~#! rn=Grimmborn rt=822666029
~#! tid=822523827

Jawollja und ueberhaupt - machen wir !

Gruss
x. - der Unbekannte.


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



Re^10: tot , aber warum? (Kretek, 26. Jan 1996, 15:44:51):
~#! rn=Grimmborn rt=822665785
~#! tid=822523827
Bravo!

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



catweazle (Ryne, 26. Jan 1996, 20:41:20):
Aehm...

ich hab gerade bei Cat auf dem Bildschirm gesehen, dass der die Rubrik
Polizei.beschwerden tatsaechlich nicht abonniert hat.

So kann aus nem Scherz Ernst werden.

Ryne sagt: Benutze scripts niemals, wenn Du erwischt werden koenntest!!!


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



Re: catweazle (Bloodyharry, 27. Jan 1996, 23:31:06):
~#! rn=Ryne rt=822685280
~#! tid=822685280

Hmmmm, ich scripte... flieg ich jetzt raus?  :)


Opipirat Bloody Harry

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



Re: Re: catweazle (Frado, 28. Jan 1996, 13:02:32):
~#! rn=Bloodyharry rt=822781866
~#! tid=822685280
nein. cat liest diese rubrik zum glueck nicht.

Rzne. Wuerde Niemals scripten. Denn das - ist VERBOTEN!

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



Re^3: catweazle (Grimmborn, 29. Jan 1996, 15:58:45):
~#! rn=Frado rt=822830552
~#! tid=822685280

Ich stelle fest, scripte sind verboten.
Nicht offiziell, fuer alle Spieler zum nachlesen, aber immerhin. Also:
Scriptet nicht oder der boese EM kommt mit dem "rm" an!

Diese Nachricht wurde mittels eines scripts erstellt und ist ohne
Unterschrift gueltig.

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



Re^12: tot , aber warum? (Grimmborn, 31. Jan 1996, 17:52:36):
~#! rn=Hardil rt=823090123
~#! tid=822523827

So ein Skandal! Aber was erwartet man auch von einem Pentium. Ein Fall fuer
den Sheriff!

Jemand der Atheist. Replied anonym und hat keinen Pentium, sondern einen ZX
Spektrum. Bewaehrte Technik zahlt sich aus.

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



Re^13: tot , aber warum? (Raffi, 31. Jan 1996, 17:54:51):
~#! rn=Grimmborn rt=823107156
~#! tid=822523827

Hmm da hast du aber Pech Grimmborn! Cat* liest diese Rubrik doch nicht!

Gruss
H.
(Hat keinen Specki sondern einen Nachbau nach original DDR Plaenen)

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



Re^14: tot , aber warum? (Grimmborn, 31. Jan 1996, 17:56:26):
~#! rn=Raffi rt=823107291
~#! tid=822523827

Also, Raffi: Erstens ists nicht netyt, meine Anonymitaet zu sprengen und
zweitens ist doch Dein Artikel reine Re-Schinderei.

Au Backe, wenn das hier Cat* sehen koennte. Aber vermutlich ist die ganze
Rubrik EM-Verboten...

Jemand der Atheist

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



Re^15: tot , aber warum? (Raffi, 31. Jan 1996, 18:02:51):
~#! rn=Grimmborn rt=823107386
~#! tid=822523827

Also, lieber Jemand (bei dem im Absender Grimborn steht, was aber sicher
Zufall ist) zum einen kaehme es mir NIE (nieh-nieh-nieh) in den Sinn
Re-Schinderei zu betreiben, und zum anderen hat das mit CAT nix damit zu tun
dass er EM ist - es lieg am TTitel dieser Rubrik:  Seit wann hoehrt ein
Sheriff auf beschwerten!

Gruss
H.
(Auch Jemand)

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



Re^16: tot , aber warum? (Cuchullin, 31. Jan 1996, 18:08:49):
~#! rn=Raffi rt=823107771
~#! tid=822523827

Wenn es irgendeine Rubrik gibt, die vor solchem - eh total ueberfluessigen -
Dummbeutelgeschreibsel verschont werden sollte, dann ist es diese. Macht doch
euren Quatsch, wenn ihr ihn schon zum Leben braucht, in "d.schattenwelt" oder
erbettelt euch doch Schreibrechte in "muell".

Meinung,
Cuch.-



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



Re^17: tot , aber warum? (Grimmborn,  1. Feb 1996, 10:31:31):
~#! rn=Cuchullin rt=823108129
~#! tid=822523827

Aaaaalso, meiner Meinung nach koennen wir hier schreiben, soviel wir wollen
und solange es keinen stoert.
Natuerlich hast Du voellig recht, diese Rubrik sollte eine ernsthafte sein,
aber findest Du nicht, dass, wenn ausgerechnet der, den diese Rubrik am
meisten angehen sollte sie nicht abonniert hat, das Ganze eh nur eine
Lachnummer ist?
Und dann koennen wir sie auch zumuellen. Die Erfahrung hat gezeigt, dass
solche Spielchen z.B. in der Rubrik schmarrn geloescht wurden und diverse
Herren sehr indigniert reagiert haben, was ich bei der Rubrik eher nicht
verstanden habe.
Naja, da durften wir nicht, hier reagiert kein EM boese, keiner loescht die
Artikel oder verlegt sie und alles ist Friede, Freude, Eierkuchen. Naja, und
fuer Spieler hat diese Rubrik eigentlich eher akademisches Interesse, die hier
sonst stattfinden Diskussionen gehoeren i.a. in etikette.

Jemand der Atheist

P.S. Dass Grimmborn als Verfasser genannt wird ist vermutlich ein bug in der
mpa. Ist der Fehler bereits Loco gemeldet?

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



Re^18: tot , aber warum? (Grimmborn,  1. Feb 1996, 10:33:27):
~#! rn=Grimmborn rt=823167091
~#! tid=822523827

Ach ja, der Vorige Artikel war ausnahmsweise keine Re-Schinderei sondern eine
Methode, Betroffenheit ueber das Ansehen dieser Rubrik auszudruecken.
Dahingegen ist DIESER Artikel Re-Schinderei...

Jemand der Atheist

Hmm, die mpa scheint WIRKLICH kaputt zu sein. Keine Ahnung, was das
"Grimmborn" zu bedeutten hat. Kenn keinen, der so heisst. Bloeder Name
ueberhaupt.

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



Re^19: tot , aber warum? (Loco,  1. Feb 1996, 11:21:10):
~#! rn=Grimmborn rt=823167207
~#! tid=822523827
Der Bug muss im Newsserver liegen. Der setzt naemlich den Verfasser auf
this_interactive() ... oder ist etwa this_interactive() fehlerhaft? Gar eine
simul_efun druebergeschrieben, damit da Grimmborn steht??? WER WAR DAS? :-)

"Hier ist der automatische Anrufabwehrer der MPA Gesellschaft mit
beschraenkter Hoffnung. Wir sind unschuldig. Falls Sie eine Nachricht zu
hinterlassen haben, verwenden Sie bitte 'cat > /dev/null' auf shell-Ebene.
PIEP PIEP PIEP PIEP PIEP .... "

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



Re^20: tot , aber warum? (Tzuiop,  1. Feb 1996, 12:30:54):
~#! rn=Loco rt=823170070
~#! tid=822523827
Wieso 'cat > /dev/null' ??
Was hat der Sheriff damit zu tun ?
Oder nur, weil das polizei.beschwerden ist ??


... Tzuiop

PS. Die MPA muss wirklich kaputt sein. So kann doch niemand heissen!

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



Re^20: tot , aber warum? (Raffi,  1. Feb 1996, 12:36:25):
~#! rn=Loco rt=823170070
~#! tid=822523827

wenn ich das richtig verstanden habe Loco, dann ist das ja ein schrecklicher
Bug (und damit gehoert dieser Artikel eigentlich nach Entwicklung) ! da kommt
also bei this_interactive() bei irgendJemand Grimmborn raus! Die konsequenzen
sind schrecklich: da schreibt Jemand einen Artikel, und in der ueberschrifft
steht Jof oder Boing (hallo Boing :)! Das ist teuflisch  ! Insbesondere die
anschliessenden Verdaechtigungen!

Gruss
H.

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



Re^5: catweazle (Wargon,  1. Feb 1996, 15:16:05):
~#! rn=Asmodis rt=823183897
~#! tid=822685280
Prinzipiell ist sowas ja eine feine Sache, nur leider wird es zu groesserem
Lag fuehren...
Ansonsten waere es natuerlich kein Problem.
  Wargon

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



Re^6: catweazle (Asmodis,  1. Feb 1996, 15:19:09):
~#! rn=Wargon rt=823184165
~#! tid=822685280
Man koennte es ja auf 3 befehle beschraenken, waere das dann tragbar ?
Ah ja, mein Artikel steht jetzt in allgemeines, weil Cat* diese Rubrik
nicht liest :)

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



hier gehoerts wohl hin... (Morgoth,  9. Mar 1996, 15:57:15):
bloeder titel, aber was besseres wusste ich nicht.
man bedenke folgende situation:
ein spieler metzelt froehlich vor sich hin....
ein karateka greift ihn an, weil er ihm SEINE
uebungs-npcs wegmetzelt....
ich habe ihm erstmal ein paar minuten zum abkuehlen
ins jail geschickt Cat*...
also sowas als erklaerung anzugeben ist schon sehr
bloede....lasst euch nciht dabei erwischen ;-))
morgoth (hat mal kurz aushilfs-sheriff gespielt)

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



Re: hier gehoerts wohl hin... (Fyt, 10. Mar 1996, 13:22:34):
~#! rn=Morgoth rt=826383435
~#! tid=826383435
eigentlich polizei.schmarrn

Ich dachte, wenn man Cat* errecihen will, ist das die denkbar unguenstigste
Newsgroup.

Fyt.

PS: Metzeln? Was ist das?

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



Re: hier gehoerts wohl hin... (Paracelsus, 12. Mar 1996, 16:48:47):
~#! rn=Morgoth rt=826383435
~#! tid=826383435
Du hast etwas wichtigs vergessen, Morgoth:
xcall <karateka>->SetProp(P_START_HOME,"/room/jail")

Paracelsus

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



Re: Re: hier gehoerts wohl hin... (Catweazle, 12. Mar 1996, 20:28:07):
~#! rn=Paracelsus rt=826645727
~#! tid=826383435
DAS ist hart!!
Das hab sogar _ich_ erst einmal gemacht :)

YTC

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



Re^3: hier gehoerts wohl hin... (Paracelsus, 12. Mar 1996, 22:08:10):
~#! rn=Catweazle rt=826658887
~#! tid=826383435
Naja, aber wenn er mit so einer bloeden Entschuldigung kommt...
Paracelsus (ist fuer hartes durchgreifen, wenn es um PKs und PK-Versuche
geht)

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



Re^4: hier gehoerts wohl hin... (Anatol, 13. Mar 1996, 04:08:57):
~#! rn=Paracelsus rt=826664890
~#! tid=826383435

Fuer ganz schlimme Buben koennte ja man alle Debugausgaben, die im
/mg.debug.log gesammelt werden, auch an den Spieler ausgeben... Wenn das nicht
abschreckt :-)

Anatol - stockfies.


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



Magier sind doof und stinken. (Anatol, 12. Apr 1996, 23:46:00):

Ich weiss, dass ich unheimlich nerven kann und davon gelegentlich auch
Gebrauch mache.

Ich wuerde trotzdem gerne wissen, welcher Magier mir den 'zruf' ausgeschaltet
hat. Ist ja nicht die feine Englische, oder?

Etwas angesauert,
Anatol


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



Re: Magier sind doof und stinken. (Asmodis, 13. Apr 1996, 00:51:36):
~#! rn=Anatol rt=829345560
~#! tid=829345560
Ich wuerde auch gerne mal wissen, welcher Magier mich verfroscht hat,
waehrend ich idle war gestern abend. Ein anderer Magier konnte nichts
im LOG finden, also wars wohl kein Zauberer.
Langsam nerven diese Eingriffe in das Spielergeschehen, zumal sie auch
verboten sind.

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



Re: Re: Magier sind doof und stinken. (Asmodis, 13. Apr 1996, 00:53:09):
~#! rn=Asmodis rt=829349496
~#! tid=829345560
mit 'gestern abend' meinte ich den 12. April.

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



Re: Re: Magier sind doof und stinken. (Ulo, 13. Apr 1996, 21:25:46):
~#! rn=Asmodis rt=829349496
~#! tid=829345560
In welchem log? dem vom xtool ? mir fallen auf anhieb 2 weitere methoden ein,
ohne xtool zu verwenden. Vielleicht kannst Du silvana ja dazu ueberreden, dass
angezeigt wird, wer der taeter ist (oder gibts das schon). Das sollte es ja
dann klaeren, wer schuld ist.

Ulo.

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



Re: Re: Magier sind doof und stinken. (Cub, 16. Apr 1996, 13:18:43):
~#! rn=Asmodis rt=829349496
~#! tid=829345560
sieh an, sieh an...

erst andere verfroschen, sich dabei darauf berufen, dass man als spieler ja
alles duerfe, und wenn es einen dann selbst mal erwischt, wird gleich die
welle in polizei.beschwerden gemacht.
Erhebt euch, Ihr Goetter und Erzmagier, Asmodis ist ein Unrecht geschehen!

Tut mir leid, Amsodis, aber wer austeilt und nicht einstecken kann, verdient
sich den Titel weichei, warmduscher, heulsusen oder weiber. such Dir einen
aus.

Rzne.

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



Re^3: Magier sind doof und stinken. (Mupfel, 16. Apr 1996, 16:26:50):
~#! rn=Cub rt=829653523
~#! tid=829345560
Nochmal zum mitschreiben: Asmodis hat niemanden gefroscht (Silvana loggt alle
'Froschungen' mit und im Logfile taucht er nur als 'Opfer` nicht als 'Taeter'
auf.

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



Re^4: Magier sind doof und stinken. (Asmodis, 16. Apr 1996, 19:10:55):
~#! rn=Mupfel rt=829664810
~#! tid=829345560
Jo, und ausserdem, wenn es ein Spieler gewesen waere, dann waere es ja
nicht schlimm, aber diese Magierwillkuer (Man kann sich ja nicht wehren)
mag ich ueberhaupt nicht.

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



Re^5: Magier sind doof und stinken. (Boing, 16. Apr 1996, 19:13:57):
~#! rn=Asmodis rt=829674655
~#! tid=829345560
Stimmt, und ich mag sie auch nicht. Ich betone hier also noch einmal
das jegliche Manipulation an Spielern fuer Magier VERBOTEN ist. Das
steht im Magiervertrag und sollte nicht so schwer zu verstehen sein.
  Boing

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



Re^6: Magier sind doof und stinken. (Kretek, 17. Apr 1996, 17:15:58):
~#! rn=Boing rt=829674837
~#! tid=829345560
Hmmm...
Dann sollte ich das Testie-Flag in Caradhras vielleicht doch mal setzen. :))

KreTEK

(Au, nicht hauen, braaaaaver Berg, liieeeeber Berg...)

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



Re^7: Magier sind doof und stinken. (Amonsul, 18. Apr 1996, 20:41:52):
~#! rn=Kretek rt=829754158
~#! tid=829345560
Pfffffffh! *knurr Kretek*

Wie schlimm wird eigentlich die Strafe an einen Magier, der beim
Verfroschen erwischt wird? Wozu sich auch erwischen lassen, verfroschen
geht bestimmt auch ganz einfach mit einer Lambda-Closure.

        Caradhras - der mit dem langen ... (Titel)

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



Re^8: Magier sind doof und stinken. (Mupfel, 18. Apr 1996, 20:47:01):
~#! rn=Amonsul rt=829852912
~#! tid=829345560
Naja... ich kann ja an der 'Quelle', der 'Setz-Methode' der
Frosch-Eigenschaft, nachschauen, wers war. Dann ist egal, ob Du das mit Lupe,
MGtool oder mit sonstwas gemacht hast...

-mupfel-

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



Re^9: Magier sind doof und stinken. (Wurzel, 18. Apr 1996, 22:42:30):
~#! rn=Mupfel rt=829853221
~#! tid=829345560
auch das kann man umgehen, wenn man weiss wie... es gibt keine sichere
methode,
um einen findigen magier zu fangen. allerdings ist da die auswahl eher
beschraenkt...

wurzel

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



Re^10: Magier sind doof und stinken. (Caradhras, 19. Apr 1996, 17:04:23):
~#! rn=Wurzel rt=829860150
~#! tid=829345560
Jo, eben, da faellt mir auch spontan was dazu ein, Wurzel. :)
Aber lieber nicht verraten, sonst gibts ein Chaos im Mud.
*grins* Als ob nicht schon genug Chaos hier waere.

[Chaos:Caradhras richtet weiter Unheil an.]

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



Re^11: Magier sind doof und stinken. (Anatol, 22. Apr 1996, 14:16:06):
~#! rn=Caradhras rt=829926263
~#! tid=829345560


Oehm, es ist mir jetzt zwar peinlich, aber das bin ich den Magiern hier
trotzdem irgendwie schuldig...
'
*huestel* Ich ziehe die Verdaechtigung bezueglich "zruf aus", die die
Diskussion irgendwie ausgeloest hat, zurueck. Wenn man sich den Zauberstab neu
holen muss oder - wie ich damals - einen neuen zugesteckt bekommt, ist der
zruf wohl defaultmaessig aus.
Das hab ich vergessen.

Sorry,
Anatol.


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



lehrlingspruefung... (Kurti,  8. Mai 1996, 21:49:02):
warum geschieht es das wenn man entweder resetet wird oder man bei der
pruefung stirbt die pruefung erst nach dem naechsten reboot nochmals versuchen
kann ?
("es wird bereits eine lehrlingspruefung gemacht[oder so])
irgendwie scheint mor da etwas faul zu sein.......??
ich bitte sehnsuchtsvoll darum das jemand sich das anschaut...(habe bis jetzt
schon einmal ca 2 tage darauf gewartet das ich wieder antreten kann)
hochachtungsvoll Kurti
r


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



Re: lehrlingspruefung... (Asmodis,  9. Mai 1996, 18:57:40):
~#! rn=Kurti rt=831584942
~#! tid=831584942
Weil man sich dann ziemlich dumm angestellt haben muss und dafuer bestraft
wird ?? :)
Richtig gefaehrlich ist doch nur die Magisterpruefung (na gut, da hab ich
jettz auch den Trick rausgefunden)

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



Re: Re: lehrlingspruefung... (Kurti,  9. Mai 1996, 20:40:03):
~#! rn=Asmodis rt=831661060
~#! tid=831584942
hahahahahahaha sehr lustig asmodis...:(

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



polizei.bekanntmachungen (Anatol, 15. Mai 1996, 12:01:45):

Es waere eine ungeheure Erleichterung fuer diejenigen, die 
die Artikel suchen, die ernstzunehmen sind, in polizei.bekanntmachungen
ohne "Filter" lesen koennen...

Wenn Cat* sich laecherlich machen will, bitte.
Aber es waere mir lieb, wenn die Herren (und die Dame) Regionsmagier
ihre ein-bis-drei-Zeilen-Artikel in d.vland oder in schmarrn, je
nach Belieben, stecken.

Going.... down?

Anatol


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



Re: polizei.bekanntmachungen (Schrumpfi, 15. Mai 1996, 13:22:29):
~#! rn=Anatol rt=832154505
~#! tid=832154505
Und was soll Dein wichtiger Artikel jetzt? Oh, sind n paar Zeilen mehr,
tschuldigung. Wenn Du meinen Artikel nicht ernst nimmst, ist das DEIN Problem!
Ich hab ihn durchaus ernst gemeint.
Schrumpfi mal wieder auf 180

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



Re: Was soll denn das?? (Valarian,  4. Jun 1996, 13:55:48):
~#! rn=Predator rt=833889073
~#! tid=833889073
Meine furchtbare Anwesenheit bremst halt alle Karatekas. AUch den deinen. 

-> ab nach schmarrn


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



Re: Was soll denn das?? (Zephyr,  4. Jun 1996, 15:49:52):
~#! rn=Predator rt=833889073
~#! tid=833889073
Das heisst nur, dass Du wegen des lags einige Zeilen nicht mitbekommen
hast.. anzunehmenderweise diejenigen, in denen Dich der Samurai von 164
auf 73 Punkte runterkloppt

*mfk* Zephyr

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



Re: Was soll denn das?? (Yendi,  4. Jun 1996, 16:17:33):
~#! rn=Predator rt=833889073
~#! tid=833889073

Das bedeutet, dass Du Dich mit den "9 kruftur"-Zeilen als Scripter zu erkennen
gegeben hast, Predator. Tja, DOOM gelaufen, wie ein FREUND fuer alle Faelle zu
sagen pflegte... oder war es Rochus?


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



Re: Re: Was soll denn das?? (Freund,  5. Jun 1996, 13:28:48):
~#! rn=Yendi rt=833897853
~#! tid=833889073
Tja,

da ich gerade ein alias entdeckt habe

doom = :sagt haemisch: Doom gelaufen!

werde ich das wohl gewesen sein... ;)

Ein Freund fuer alle Faelle

P.S.: Darf ich Predator jetzt wegen Scripterei loeschen? ;)

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



Re^3: Was soll denn das?? (Predator,  5. Jun 1996, 15:11:19):
~#! rn=Freund rt=833974128
~#! tid=833889073
noe

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



script oder nicht script (Asmodis, 14. Jun 1996, 02:01:51):
Ich hab mal gerade etwas rumgetestet mit dieser Script-Kontroll-Methode
und rausgefunden, dass man in das log-file kommt, wenn man 2 aliases
mit 'unt <detail>' belegt und beide aliases ganz schnell betaetigt,
natuerlich abwechselnd. Wer also mal das script-log-file vollmuellen
will, kann das jetzt tun. Damit will ich nur die Laecherlichkeit der
FP-Script-Kontroll-Methode aufzeigen. Dadurch kann also nicht nachgewiesen
werden, ob jemand scriptet oder nicht und alle bisher erfolgten Straf-
massnahmen waren nicht begruendet.
So, vielleicht hilft das ja jemandem, der zu Unrecht bestraft wurde.
Dasselbe geht uebrigens auch, indem man die details sehr schnell
nacheinander untersucht, weil man sie vielleicht schon auswendig kennt.


 Just my 3 souls, Asmodis

P.S.: hoffentlich liest Cat* diese rubrik :)

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



Re: script oder nicht script (Yantro, 14. Jun 1996, 08:54:18):
~#! rn=Asmodis rt=834710511
~#! tid=834710511
Hi, 

ich kann in dem Falle Asmodis rechtgeben. Wenn ICH in einem neuen Gebiet was
teste und mich umsehen soll, dann mach ich das immer OHNE Skript, aber ich
nutze in JEDEM neuen Raum meine alis fuer unt boden, decke, wand, waende! Und
das schnell hintereinander. Wenn das also in dem Log als Skripte definiert
wird, dann ist das mehr als Peinlich und ich denke, dass der Magier, der das
verbrochen hat sich mal Gedanken machen sollte, ob er noch weiss, wie man
eigentlich richtig SPIELT! 

               Yantro, gegen Skripte, aber noch mehr gegen
Fehlanschuldigungen

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



Re: Re: script oder nicht script (Caradhras, 14. Jun 1996, 13:00:22):
~#! rn=Yantro rt=834735258
~#! tid=834710511
Aeh, habe ich etwas verpasst oder wie geht die Script-Kontroll-
methode von Asmodis? Wie stellt man also fest dass man im logfile
ist? Nur mit hilfe eines praeferierten Magiers seiner Wahl? 

Uebrigens ist ja nicht nur unt boden, decke, wand, waende standard,
sondern eigentlich auch unt pfad, weg, strasse, fluss, bach, baum
usw. 

Also ich will jetzt auch mal auf die Liste und leg mir bindkeys
auf die verschiedenen unt's, je unt nur ein befehl, spart mir aber
ein return, dadurch gehts noch viiiel schneller.

            tschoe       'S Golddraechle Caradhras

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



Re^3: script oder nicht script (Zuerileu, 16. Jun 1996, 07:27:35):
~#! rn=Caradhras rt=834750022
~#! tid=834710511
Hallo catweazle,
jo, ich wollt eigentlich nur sagen das ich Asmodis metode ausprobiert habe und
das ich danach auch in deinem script-logfile erschiennen bin. Also praktisch
funktioniert das was Asmodis gesagt hat hervoragend, aber...
Ja da hats ein "aber", aber wer sich richtig in einer neuen Gegend umschauen
tut, liest ja die Detailbeschreibung durch nachdem er etwas untersucht hat!
Was hilft es, "unt boden, unt wand, unt decke, unt xy, unt xz, unt ..."
schnell nacheinander einzugeben und die Detailbeschreibungen laufen auf dem
Bildschirm davon?. Also mir kann keiner angeben das er die alias die er fuer
seine Untersuche-Aktionen geschrieben hat im alltaeglichen gebrauch so schnell
eintippt um ins logfile kommen zu koennen. Denn er will das was er untersucht
doch auch lesen und das schafft er nicht in diesen kurzen sekunden
um[A[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C
[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C[C
[C[C[C[C[C[C[C, braucht er naemlich nur ein paar sekunden laenger bis er den
naechsten Befehl eintippt kommt er nicht ins logfile!
Hoffentlich klar ruebergekommen was gemeint ist?
Sorry fuer typos und Grafik-Fehler das liegt an diesem scheiss Telnet-programm
(naja das zweitere wenigstens =:) )

Tschuess..    zuerileu

Ps: diese meckerei und rumgemotze wie sie z.Zt. stattfinden NERVEN Tierisch !
     Ich hoffe es aendert sich bald mal und es wird wieder etwas
friedlicher...

P[C[C                          P - E - A - C - E

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



Re^4: script oder nicht script (Fyt, 16. Jun 1996, 16:05:35):
~#! rn=Zuerileu rt=834902855
~#! tid=834710511
Nicht ganz, Zuerileu, unt Boden/Decke/WSand kann man auch
hintereinander wegtippen und das Ergebnis im Logfile lesen...
Mach ich wirklich manchmal...

Fyt.

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



Re^4: script oder nicht script (Snuggle, 16. Jun 1996, 19:24:25):
~#! rn=Zuerileu rt=834902855
~#! tid=834710511
Hey, zuri, hast du mal archie gemacht?

ich habs gerad hinter mir und ich weiss nicht, wie ift ich jetzt im logfile
steh. hier muss man naemlich in jedem raum boden decke wand untersuchen, in
90% aller faelle kommt aber nix dabei rum. also geb ich einfach mal unt
boden,decke,wand ein und schau dann die drei ausgaben an. sollte dabei was
aufgetaucht sein, guck ich naeher.

YTSnuggle, hatte gerad nen groschen ueber

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



Re^5: script oder nicht script (Zuerileu, 16. Jun 1996, 23:04:46):
~#! rn=Fyt rt=834933935
~#! tid=834710511
Hallo,
Ja icher Fyt manchmal und manchmal bin ich der Weihnachtsmann =:))
Ne, echt auch wenn du das wirklich tust danmn kommst du denoch nicht
Seitenlang in sein Logfile. Dazu was bringt es dir die Details im Logfile
anzuschauen wenn du danach nicht mehr dort im Raum stehst um evtl. etwas was
du gesehen hast noch genauer zu untersuchen. Sicher kann sein das du ein
Logfile fuehrst das habe ich auch gemacht aber nicht um Detailbeschreibungen
zu lesen. Dazu, um ins logfile zu kommen muss man die befehle nacheinander
sehr schnell eingeben. Ich habs versucht, ein einfaches nacheinander eintippen
reicht da naemlich nicht aus.

Snuggle: Nun, aemm ja ich habe das Archie-Quest damals gemacht (Naja so
aendlich wenigstens) es steht wenigstens in meinem File der gemachten Quests.
Ist halt schon laange her, aber auch hier gilt eigentlich das selbe was ich
Fyt schon sagte. Du musst diese Alias so schnell eintippen das du keine Zeit
hast gross noch nachzuschauen ob es was besonderes hat. Ich sage ja nicht das
dieses Logfile von Catweazle jetzt der Beweis ist fu Leute des Scriptens zu
ueberfuehren. Aber das ist catweazle's sache und seine Aufgabe zu loesen. Ich
sage nur das es unter normalen Umstaende wenn man normal spielt sehr schwer
ist in dieses Logfile zu kommen. Ich denke man sollte das Logfile verwenden um
moegliche Scripter ausfindig zu machen um schritte wie snoopen oder beobachten
eines spielers einzuleiten. Also diese Spieler auf der Liste erst recht
genauer Beobachten. Und noch was, es schreiben nun viele das sie unschuldig
sind. Selbst Orktoeter schrieb das mal bis er vor kurzem gestand gescriptet zu
haben. Mann hat mal genau erklaert was fuer Scripts genau erlaubt sind und
welche nicht. Ich habe das jedenfalls so verstanden, das  Wegescript gedultet
werden und jegliche andere Scripts verboten sind. Da giebts jetzt keine
ausreden wie sie Orktoeter gebracht hat, das es doch nicht so schlimm sei und
daas dies kein Script sei. Alles was nicht ein Wegescript ist, ist verboten
also selbst ein Knuddle xynamexy ist theoretisch VERBOTEN! Ich glaub zwar
kaumm das jemand euch wegen eines knuddlescripts loeschen wird. Aber ich glaub
es wurde mehrmal klar gesagt was erlkaubt ist und was nicht. Ich frage mich
wie die angelegenheit jetzt weitergeht, drohen sich wieder ein paar Leute
selber zu loeschen (OrkT??) oder sehen sie es endlich ein und halten sich an
das script-verbot?.

Tschuess...    ein genervder Zuerileu

ps: fehler, typos, und unklarheiten sind so geplant und beabsichtigt!
[C[C[C


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



Bier und Moepse am Ballermann 6 (Jasper, 17. Jun 1996, 10:16:48):
Ahhhhhhlso,
nachdem ich nun 2 Stunden Muell gelesen habe, den ihr am WE verzapft habt,
kann ich ja nur noch mit den Zehennaegeln runzeln.
Wie catweazle gegen ueberfuehrte Scripter vorgeht ist jetzt mehr als
laecherlich, du solltest ihnen sagen, dass sie 10 Minuten Zeit haben um den
Vertrag zu unterschreiben oder geloescht werden :)
Natuerlich sollten sie nur geloeschtr werden, wenns wirklich sicher ist, dass
jemand gescriptet hat *grins*, was natuerlich ....blablubbb




Jasper, findet das hier ziemlich albern und freut sich auf die Sonne und die
Moepse :)


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



Rechtfertigung (Bottom, 17. Jun 1996, 10:48:46):
Hallo!

Natuerlich kann es nicht der Weisheit letzter Schluss sein, in unbekannten
Raeumen und Gegenden mit der Verwendung diverser UNT-Ali's die Details zu
untersuchen - das bleibt hier unbestritten. Nun bin ich aber durch eben diese
Verwendung entsprechender Ali's ins log-file gerutscht - so schwer ist es also
gar nicht! Dies ist mir auch nicht passiert in einer weltfernen abgelegenen
und brandneuen Gegend, sondern in Moron, wie mir Cat* sagte - da will mir doch
keiner erzaehlen, dass er sich dort als alter seher noch irgendwelche Details
der Atmospaere oder des tiefgruendigen Witzes wegen anschaut - ich habe es
gemacht, um auf diese Weise moeglichst zuegig viele Details zu untersuchen und
auf diese Weise ein paar FP's zu erhaschen (so im Vorbeilaufen
gewissermassen).
Die Atmosphaere eines Raumes und sein ihm eigener Charme wirkt auf den
Betrachter bei der Erstbegehung und Erforschung des Raumes,bzw. des Objektes.
Spaeter werden diese Raeume nur noch begangen (Objekte werden benutzt) ohne,
dass sie nochmals in epischer Breite auf Details abgeklopft werden - jede
andere Stellungnahme hierzu tu ich mal als weltfremd ab...

Bottom - kennt sich im MorgenGrauen so gut wie gar nicht aus (nach seiner
Rueckstufung, wegen "Scriptens")

PS: Seht Euch vor! Der Scriptjaeger erwischt jeden - und im log-file steht man
schnell...

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



Re^4: script oder nicht script (Wise, 17. Jun 1996, 10:51:17):
~#! rn=Zuerileu rt=834902855
~#! tid=834710511
Ich denke nicht das du da Recht hast. Zuerlie. Sehr oft kommt es naemlich vor
dass Raum fuer Raum genau derselbe Text bei diversen Details steht, das sind
u.a. auch viele Einzeiler. Diese brauchst du allerdings nicht durchzulesen,
weil du auf einem Blick erkennen kannst, ob es der alte Text ist.

Gesetzt den Fall du entdeckst im letzten von 10 gleichartigen Raeumen,
z.B. man kann die Ritzen in den Platten im fussboden untersuchen. Dann ist
meine Antwort darauf ali 1 unt ritzen,1,o,1,o,1,o,1,o,1,o,1,o,1,o,1,o,1,o,1.
Sind das jeweils einzeiler duerften sie auf ne 
Windows-Telnet Sitzung a 100 Zeilen draufpassen.

Das einzige Mittel einen Skripter zu erwischen, ist die die fehlende 
Intelligenz des Scripts nachzuweisen. Dazu gibt es Methoden. Das erscheinen
in diesem Log-file mag dazu Anreiz sein,.

Ich z.B. mach mir fuer gewoenlich beim Eintritt in einen zu Erwartenden
groesseren Raum mit aaenlichem Aufbau fast auf alles was in jedem Raum
vorkommt ali`s auf
1 bis 0 die ich standartmaessig ueber den Bildschirm laufen lasse.
Dann soweit sich keine weiteren speziellen Details ergeben, schau ich mir den
Hauptraum nochmal an und untersuche Special-details.

Bei Lag untersuche ich sogar ueberkreuz details, also gehe abwechsel bei
Zwei oder drei Details in die Tiefe. Dann muss man naemlich beim Lesen, nicht
zwischendrin so lange auf die Fortsetzung warten.

Bei Fragen, traut euch ruhig, direkt an mich zu schreiben,
aber erwartet nicht sofort Antwort. Ich schau mir nicht immer meine Post nach.
Wise


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



Re^4: script oder nicht script (Acrimon, 17. Jun 1996, 12:21:25):
~#! rn=Zuerileu rt=834902855
~#! tid=834710511
Nun, "unt boden, unt wand, unt decke" geb ich (als Aliase) immer schnell
hintereinander ein.
Wenn dann die Ausgabe auf dem Bildschirm erscheint, les ich die Beschreibungen
zu Boden, Wand, Decke durch.
Der Grund ist das Lag: Es dauert meistens 2 bis 10 Sekunden, bis die Ausgabe
da ist.
Und die moecht ich nicht jedesmal abwarten und schick daher mehrere Befehle
hintereinander ab, ohne erstmal eine Ausgabe zu sehen.
Dasz ich noch nicht in dem Log bin, liegt nur daran, dasz ich schon eine Woche
lang keine Raeume untersucht habe.

Und oft gibt es auch schlimmere Lags - dann kommt 2 Minuten bis 5 Minuten lang
keine Ausgabe zurueck.
Dann tipp ich "schau,schau boden, schau wand, schau decke" (natuerlich als
AAliase), warte bis eine Ausgabe zurueckkommt, und dann tippe ich der Reihe
nach alle Details (mit "schau" davor) aus der
Raum-,Boden-,Wand-,Decken-Beschreibung ab.
Wie das dann ankommt, koennt Ihr Euch vorstellen - durch das Lag gebuendelt
innerhalb von ein paar Millisekunden.

Das wars von meiner Seite, ich steh sicherlich bald im Logfile.
(Heute ist aber kein groszes Lag)

Acrimon, der Rote Ritter

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



Re^5: script oder nicht script (Morgoth, 17. Jun 1996, 12:22:50):
~#! rn=Acrimon rt=835006885
~#! tid=834710511
lass uns nochmal die diskussion ueber sz anfangen.
DAS NERVT !
morgoth

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



Re^4: script oder nicht script (Asmodis, 17. Jun 1996, 18:39:55):
~#! rn=Zuerileu rt=834902855
~#! tid=834710511
Ich weiss ja nicht, was du fuer einen Bildschirm hast, aber bei mir laufen die
Meldungen nicht davon, da ist der Bildschirm auch nach 5 Details erst halb
gefuellt.
Deshalb kann ich alle standard-details auf einmal ausgeben lassen.

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



Re^5: script oder nicht script (Jasper, 17. Jun 1996, 18:41:36):
~#! rn=Asmodis rt=835029595
~#! tid=834710511
Du schaust dir halt die langweiligen und kurzen Details ausserhalb des Vlandes
an.

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



Re^6: script oder nicht script (Asmodis, 17. Jun 1996, 18:45:23):
~#! rn=Jasper rt=835029696
~#! tid=834710511
Ach, wenn ich im VLand details untersuche, schlafe ich immer ein :)

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



Eisstab mit STARKER rueckkoplung (Rimus, 19. Jun 1996, 17:41:33):
Das ist mir soeben passiert:
toete ork
Ok
Du hast jetzt 210 Lebenspunkte und 182 Magiepunkte.
  Du greifst den Ork mit einem sehr gelungenen Otoshi-empi-uchi an.
  Du zerschmetterst den Ork in kleine Stueckchen.
Ein Ork steckt eine Trollkeule zurueck.
Ein Ork zueckt eine Trollkeule.
  Der Ork greift Dich mit der Trollkeule an.
  Du wehrst den Angriff mit einem Mawashi-otoshi-kakato-uke ab.
Du hast jetzt 210 Lebenspunkte und 180 Magiepunkte.
  Der Ork verfehlt Dich.
Ein Ork nimmt einen Wurfstern in die Hand und wirft ihn nach Dir.
  Des Orks Wurfstern verfehlt Dich meilenweit.
Du hast jetzt 210 Lebenspunkte und 177 Magiepunkte.
Du fuchtelst wild mit Deinem Stab in der Luft herum.
Der Stab geraet ausser Kontrolle und wendet sich gegen Dich.
Ploetzlich scheint der Stab Dir die gesamte Energie auszusaugen und in
einen gewaltigen Schlag umzuwandeln.
Du hast jetzt 210 Lebenspunkte und 0 Magiepunkte.
Aufgrund einer magischen Rueckkopplung verschluckt sich der Stab und spuckt
anstelle von Eis Feuer!
Du wirst von einer Wolke aus Feuer umhuellt.
  Du vernichtest Rimus.
  Rimus vernichtet Dich.
[Tod:Lars] Eisstab hat gerade Rimus umgebracht.
Der Teddy knuddelt Dich ein letztes Mal.
Ist das nicht etwas zu hart? Mit einmal 210 LP weg ???


Rimus ist kein zauberer mit todeszauber.

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



Just my Ketchup ... (Gloin, 20. Jun 1996, 06:00:40):
...
Thema: unt <detail>
Ich bin ja nun ein Popelspieler letzten Grades, aber wenn es mal
dazu kommt, dass ich irgendwo bei solchen lustigen Magiern
in den Raeumen verschwinde, wo man unt muss um rauszukommen
und es lagt, dann passiert bei mir Folgendes:
Window=maxsize
Mouse =in Hand nehm
ex <klickklack> ... ex <klickklack> ... ex <klickklack>
Wobei <klickklack> einfach immer fuer kopiere Detail aus Desc.
hinter ex (ali fuer unt) steht.
Wenn es also lagt, kann ich das circa 5-8mal machen, dann kommen
die Rueckmeldungen an.
Und die werden genauso behandelt.

Dementsprechend ist ein derartiger Script-'trigger' bei dem
Muenster-Lag ein Schmutz.

[Kaese off] Sok.

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



Re: Eisstab mit STARKER rueckkoplung (Asmodis, 20. Jun 1996, 17:22:43):
~#! rn=Rimus rt=835198893
~#! tid=835198893
Hmm, hast du noch nicht rausgefunden, dass der Eisstab jetzt totaler
Schrott ist ? Wenn du den noch benutzst, biste selbst schuld :)

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



Re: Eisstab mit STARKER rueckkoplung (Boing, 20. Jun 1996, 17:27:11):
~#! rn=Rimus rt=835198893
~#! tid=835198893
Hoppla ... das sollte nicht passieren, ich hab den bug schon gefunden
und Du wirst deine EPs zurueckerhalten.
Eine Frage habe ich allerdings: Was hat das in polizei.beschwerden zu suchen?
  Boing

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



Re: Re: Eisstab mit STARKER rueckkoplung (Caradhras, 21. Jun 1996, 16:26:11):
~#! rn=Boing rt=835284431
~#! tid=835198893
Nachdem nicht genau benutzer aeeeeeeh spielerdefiniert ist, welche Artikel
welchen Inhaltes in die einzelnen Rubriken gehoeren, muss man von der
(gesunden?) maennlichen, weiblichen, elflichen, (na gut, zwerglichen nehmen
wir aus, die haben sowas nicht) ... Intuition ausgehen und liest beim
Rubriknamen was von 'Beschwerfen', also kommt alles was mit Beschwerden
in SEHR aergerlichen Einzelfall zu tun hat in polizei.beschwerden.

Dies laeuft von Spielerseite IMHO schon laenger so.

   'S Golddraechle Caradhras idlet weiter

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



Re^3: Eisstab mit STARKER rueckkoplung (Wargon, 21. Jun 1996, 16:27:46):
~#! rn=Caradhras rt=835367171
~#! tid=835198893
Moment...
Zwerge haben keine Intuition?
Hm... wofuer steht dann das I auf dem Schalthebel meines Denkgetriebes?

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



Re^4: Eisstab mit STARKER rueckkoplung (Caradhras, 21. Jun 1996, 23:30:58):
~#! rn=Wargon rt=835367266
~#! tid=835198893
Ignoranz? :-)

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



Re^3: Eisstab mit STARKER rueckkoplung (Boing, 25. Jun 1996, 15:21:03):
~#! rn=Caradhras rt=835367171
~#! tid=835198893
Richtig, es laeuft von Spielerseite schon laenger so. Und genauso
lange schreibe ich auch schon als Antwort auf sowas, dass solche Sachen
erstmal privat gehandhabt werden sollten, man muss nicht immer gleich
alles in der Zeitung breittreten, das fuehrt nur wieder zu Vorurteilen,
falschen Informationen, Gezeter ...
  Boing

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



Oetti und kein Ende (Alboin,  4. Sep 1996, 11:20:03):
Da ich bei Bekanntmachungen nicht schreiben darf, tue ich es hier.
Ja was ich sagen wollte ist eigentlich nur das, naemlich das Oetti natuerlich
auf dem Weg zur Besserung ist, denn er hat gestern nicht nur Doom sondern gar
Duke Nukem gespielt, ich habs mit eigenen Augen gesehen! Toll wa?

Alboin- der auch mal seinen Senf zu dieser Diskusion geben musste :)

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



Re: Oetti und kein Ende (Anakin,  4. Sep 1996, 14:54:08):
~#! rn=Alboin rt=841828803
~#! tid=841828803
Probier mal Quake, is auch ganz nett....:)

ANakin.

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



Re: Re: Oetti und kein Ende (Tasha,  4. Sep 1996, 20:32:46):
~#! rn=Anakin rt=841841648
~#! tid=841828803
Aber nur, wenn man seine Freunde verheizen kann. Alleine ist langweilig. :)

Tasha

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



Re^3: Oetti und kein Ende (Raffi,  5. Sep 1996, 21:45:41):
~#! rn=Tasha rt=841861966
~#! tid=841828803

Zu polizei.bekanntmachungen, Artikel 27:
Re^5: Oetti geloescht (Wurzel,  4. Sep 1996, 11:55:34)

Wurzel: die idee ist bestechend und gleichzeitig leider nichtt zu
verwirklichen. Natuerlich waere es das beste wenn man den Zap einfach
rausnimmt (jo, ich weiss xcall <spieler>->die(0) u.Ae. gehtt immernoch), aber
das ist doch garnicht das Thema. Hier wird eine gewisse Blauaeugigkeit
gepflegt (um nicht zu sagen Schheinheiligkeit) was diese Befhele anbelangt.

Das mit dem Zap ist analog dem toete <spieler> - alles Regt sich auf wenn ein
PK passiert, aber wirklich was dagegen getan, das die situation unbeabsichtigt
(toete alle) auftritt wird nicht. PK ist im MG verboten - Ok, aber warum
wird er dann nicht auch unterbunden, bzw. wenigstens versucht ihn zu
'erschweren' - nichtmal ne popelige Sicherheitsabfrage wird spendiert.

<ironie on (oder nicht?)>
Mir kommt es so vor, als waeren diese Diskusionen und Streitereien von
'hoechster Stelle' gewuenscht.
<i-off (wenn noetig)>

Gruss
H.
(Achtung dieser Artikel stellt weder eine por noch eine kontraposition dar.
Einzig die inkonsequenz nervt mich)

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



Re^4: Oetti und kein Ende (Anatol,  5. Sep 1996, 21:56:23):
~#! rn=Raffi rt=841952741
~#! tid=841828803

    "toete alle" bezieht sich schon seit sehr langer Zeit nur auf 
    nicht-interaktive Lebewesen, also auf NPCs.

Anatol


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



Re^5: Oetti und kein Ende (Raffi,  5. Sep 1996, 22:10:20):
~#! rn=Anatol rt=841953383
~#! tid=841828803

Auch wenn kein NPC da ist ? hmm ok, dann streich den Teil (wobei seit
laengerer Zeit doch uebertrieben ist)

Das Problem bleibt.

Gruss
H.

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



Re^6: Oetti und kein Ende (Anatol,  5. Sep 1996, 22:12:05):
~#! rn=Raffi rt=841954220
~#! tid=841828803

    Stimmt, ich hab mir sagen lassen, es waere schon _immer_ so 
   gewesen, dass bei "toete alle" nur NPCs angegriffen werden.

Anatol


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



Re^4: Oetti und kein Ende (Acrimon,  5. Sep 1996, 22:16:46):
~#! rn=Raffi rt=841952741
~#! tid=841828803
Zwischen "verboten" und "Moeglichkeit unerwuenscht" ist ein ganz gewaltiger
Unterschied - das Zweite ist wesentlich haerter.
Und Sinn hat es sehr wohl, etwas zu verbieten und trotzdem moeglich zu machen:
1. Fuer den Fall, dasz man diese Moeglichkeit in (extrem seltenen) Faellen
doch mal braucht.
2. Man kann erkennen, wer sich an die Verbote haelt und wer eher kriminell
veranlagt ist.
3. Es wird nicht die weithin leider schon allzu oft als wahr angenommene Luege
"Alles, was man kann, darf man" unterstuetzt.

Acrimon, der Rote Ritter

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



Re^4: Oetti und kein Ende (Fyt,  5. Sep 1996, 22:31:55):
~#! rn=Raffi rt=841952741
~#! tid=841828803

Hm, eigentlich koennte man 'toete spieler' fuer Spieler wirklich abschaffen.
Ich mein, wenn ich ernsthaft jemanden zu Lars befoerdern will, greif ich
ihn doch nicht an und hab dann 'n PK am Hals...

Andererseits haette dann die (R+)-Magierschaft weniger Aufregung in
ihrem Dasein...

Fyt.

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



Re^5: Oetti und kein Ende (Raffi,  5. Sep 1996, 22:37:10):
~#! rn=Fyt rt=841955515
~#! tid=841828803

Oder wenigstens eine Sicherheitsabfrage 'Willst du wirklich ?' einbauen


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



Re^6: Oetti und kein Ende (Anatol,  5. Sep 1996, 22:41:29):
~#! rn=Raffi rt=841955830
~#! tid=841828803

    ":kauft fuer Raffi eine Meinung 45624686."

Anatol

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



Re^7: Oetti und kein Ende (Raffi,  5. Sep 1996, 22:43:57):
~#! rn=Anatol rt=841956089
~#! tid=841828803

Jo, Treffer und wenn die nicht auf lager ist nehme ich 00000000

Grins
H.

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



Re^6: Oetti und kein Ende (Acrimon,  5. Sep 1996, 22:45:15):
~#! rn=Raffi rt=841955830
~#! tid=841828803
Kommt ueberhaupt nicht in Frage, ich bin absolut zutiefst gegen diese
Vorschlaege.
Eine gewisse Sicherheitsabfrage existiert auszerdem schon, indem dasz man nach
dem Toete-Befehl den Spielernamen ausschreiben musz.

Acrimon, der Rote Ritter

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



Diskussion in polizei.bekanntmachungen (Grimmborn,  6. Sep 1996, 15:46:21):

Koennte man bitte das diskutieren in einer Bekanntmachungsrubrik lassen? Setzt
doch endlich den Schreiblevel fuer polizei.bekanntmachungen auf 66, das ist ja
wirklich laestig.

Grimmborn der Atheist

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



Sperren von Magierbefehlen (Grimmborn,  6. Sep 1996, 16:06:13):
*seufz* Natuerlich kannst Du shell-commands sperren, aber Du kannst i.a. nicht
die Funktionen selber sperren, vor allem nicht die, mit denen man Spielern
schaden (oder nuetzen) kann. Letztlich ist es so, dass die objecte eines
Magiers auch nur die Rechte haben, die der Magier hat. D.h. wenn ich als
Magier kein die() mehr aufrufen kann (also zappen), dann kann ich auch keine
toedliche Falle mehr bauen. Wenn ich ihm keine hp klauen kann, kann ich auch
keinen Stein machen, der dem Spieler auf den Kopf faellt und ihm hp klaut.
Naja, undsoweiter.

Findet euch ab, man kann sowas nicht einschraenken, weil das auch
spielrelevante Funktionen sind. Einschraenken (securen) kann man natuerlich
"systembefehle", die nicht jeder anwenden koennen muss und die meist mit gutem
Grund EM vorbehalten sind.

Grimmborn der Atheist

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



Re: Sperren von Magierbefehlen (Schrumpfi,  6. Sep 1996, 16:14:21):
~#! rn=Grimmborn rt=842018773
~#! tid=842018773
Mist bauen kann jeder, auch Erzmagier. Aber ich denke mal, dass es wohl nicht
so oft vorkommen wuerde, wenn bestimmte Befehle erst ab einem bestimmten Level
moeglich sind. Vielleicht kommt es auch genauso oft vor oder noch oefter, kann
man nicht wissen aber ich finde, dass es ein Versuch wert ist. Wozu brauchen
manche Magier Befehle wie zap oder heile, wenn sie was proggen wollen, dann
schliessen sie sich einer Region an, somit kriegen sie ein paar Befehle mehr,
sobald sie was angeschlossen haben wieder ein paar Befehle ect. Fuer Oetti zB
haette ein goto als Befehl gereicht. 
Nur so ne Idee, vielleicht hilfts, schaden tut es mit Sicherheit nicht.
Schrumpfi

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



Re^7: Oetti und kein Ende (Asmodis,  6. Sep 1996, 17:46:11):
~#! rn=Anatol rt=841954325
~#! tid=841828803
Wo wir schon dabei sind: Koennte man bei toete <name> nicht eine
Sicherheitsabfrage einbauen, wenn das Ziel ein Spieler ist ??
Dann kommen auch die unbeabsichtigten Angriffe nicht mehr vor,
denn es gibt ja inzwischen einige Moeglichkeiten, Doubles von
sich zu schaffen, die man vom Original kaum unterscheiden kann.

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



Re^5: Oetti und kein Ende (Asmodis,  6. Sep 1996, 17:47:11):
~#! rn=Fyt rt=841955515
~#! tid=841828803
'toete spieler' ist in manchen Raeumen erforderlich, z.B. in der
Arena oder im Shinto und in der Schattenwelt auch (wenn die jemals
gebaut wird :) )

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



Re: Sperren von Magierbefehlen (Asmodis,  6. Sep 1996, 17:49:13):
~#! rn=Grimmborn rt=842018773
~#! tid=842018773
Dann kann man diese Befehle wenigstens fuer die Herren 'Wurstmagier'
sperren, d.h. Magier mit Level 21, die haben eh keine Fallen zu
bauen :)

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



Re: Re: Sperren von Magierbefehlen (Quillian,  6. Sep 1996, 19:46:14):
~#! rn=Asmodis rt=842024953
~#! tid=842018773
Also ich bin ja sonst immer still wenn so eine unsinnige Diskussion
laeuft, aber die Vorschlaege einzelne Befehle zu sperren lassen
selbst mich nicht kalt.
Was bitteschoen soll eine Einschraenkung der Befehle fuer niedrige Level
bringen? Jeder 'Wurstmagier' kann das nach etwa einer Stunde LPC lernen
umgehen. Die Gruende hat Grimmborn hier schon recht anschaulich dargelegt.
Ich kenne einige Muds in denen das so ist. Die Folge ist IMHO nur, das sich
jeder neue Magier erstmal ein Tool bastelt, dass diese Sperren umgeht.
Es geht doch wirklich nicht anders als an die Verantwortung des Magier zu
appelieren nicht ins Spielgeschehen einzugreifen. Alle Einschraenkungen von
'Oben' machen die Sache doch erst mal richtig interessant... Es ist doch
fuer einen JungMagier nichts interessanter als einige Sperren in der Lib
zu umgehen.

Quillian bestellt die Rubrik jetzt ab ...

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



Re^3: Sperren von Magierbefehlen (Hadra,  6. Sep 1996, 20:14:34):
~#! rn=Quillian rt=842031974
~#! tid=842018773
wenn er dabei was ueber lpc lernt, dann ist dagegen doch nix einzuwenden.
vielleicht proggt er dann auch mal was brauchbares ;)

hadra -senft

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



Re^4: Sperren von Magierbefehlen (Tasha,  7. Sep 1996, 13:30:04):
~#! rn=Hadra rt=842033674
~#! tid=842018773
Wie waere es, wenn man beim Befehl zap einfach ne Abfrage einbaut, so dass er
nicht auf Spieler funzt. Dass waere dann keine Massnahme gegen Missbrauch,
aber zumindest einen gegen versehentlich zappen. Eine identische Abfrage gibts
ja schliesslich auch bei toete alle und durch sie wird der Befehl toete ja
auch nicht eingeschraenkt sondern lediglich sicherer gemacht.

Tasha hatte noch einen Yen in der Tasche

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



Re^5: Sperren von Magierbefehlen (Grimmborn,  7. Sep 1996, 18:31:10):
~#! rn=Tasha rt=842095804
~#! tid=842018773

Ich weiss nicht, wenn jemand behauptet, er haette "zap spieler" aus Versehen
eingegeben, dann faellt das schwer das zu glauben. Sicher kann es passieren,
dass man alis verwechselt, sich vertippt, eine Sache denkt und eine andere
eingibt, aber das war hier doch nie Thema und hat in der Vergangenheit noch
nie zu Problemen gefuehrt. Die ganze Diskussion dreht sich um "boeswilligen
Mord", und den interessiert eine Abfrage nun wirklich nicht.
Nene, diese Abfragendiskussion (die IMNSHO voellig bloedsinnig ist) waere eine
Loesung zu einem Problem, das als Problem eigentlich nicht empfunden wird.

Grimmborn der Atheist

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



Re^6: Sperren von Magierbefehlen (Hadra,  7. Sep 1996, 19:07:02):
~#! rn=Grimmborn rt=842113870
~#! tid=842018773
du kannst 'boeswillgen mord' (gibt es einen gutwilligen mord?) weder rl noch
hier verhindern. du kannst es den leuten hoechstens schwerer machen an die
notwendigen werkzeuge zu kommen und im fall des falles entsprechend ahnden.

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



Re^7: Sperren von Magierbefehlen (Grimmborn,  7. Sep 1996, 19:18:19):
~#! rn=Hadra rt=842116022
~#! tid=842018773

Boeswilliger Mord, Totschlag im Effekt und fahrlaessige Toetung sind
allerdings verschiedene Sachen, die alle aufs gleiche ruaskommen und doch
unterschiedlich zu bewerten sind...
Aber ich gebe hiermit entnervt bekannt: Sperrt doch meinetwegen alle
Magierbefehle die ihr wollt, die halbe Stunde zum nachprogrammieren nehme ich
mir doch gerne Zeit, wenn mir dafuer diese hirnrissige Diskussion erspart
bleibt.

Grimmborn der Atheist

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



Re^8: Sperren von Magierbefehlen (Rantanplan,  7. Sep 1996, 19:37:14):
~#! rn=Grimmborn rt=842116699
~#! tid=842018773
Hmm !!

Gab es denn schon Faelle (abgesehen von Torfdueng und Oetti) wo so etwas
passiert ist.

Und ausserdem, die Methoden die angwendet wurden, haben doch ausgereicht,
um die entsprechenden Stoerenfriede zur Ruhe zu bringen.

Also ist dieses Diskussion doch tatsaechlich vollkommen ueberfluessig.

Und wie bereits erwaehnt, und von einigen wenigen treffend vermutet,
ICH WOLLTE ES NICHT ANDERS !!!

Gruss

r*

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



Re^9: Sperren von Magierbefehlen (Schrumpfi,  7. Sep 1996, 19:39:36):
~#! rn=Rantanplan rt=842117834
~#! tid=842018773
Torfdueng hat nie einen echten Spieler (noch dazu einen Seher) aus Jux und
Dollerei gezappt. Das eine mal mit Laurin war nicht Absicht und er fand es
auch alles andere als spassig. Wir wissen das Du es nicht anders gewollt hast
und ich hab auch nicht das geringste Mitleid mit Dir.
Schrumpfi

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



Re^10: Sperren von Magierbefehlen (Asmodis,  7. Sep 1996, 19:41:31):
~#! rn=Schrumpfi rt=842117976
~#! tid=842018773
Hmm, aber dass sowas aus Versehen passieren kann, laesst doch zu denken
uebrig, deshalb nochmal: Baut doch endlich eine Sicherheitsabfrage
in zap ein, wenn das ziel ein Spieler ist !!

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



Re^11: Sperren von Magierbefehlen (Felagund,  9. Sep 1996, 00:14:51):
~#! rn=Asmodis rt=842118091
~#! tid=842018773
Ich bin mir bei der ganzen Diskussion nicht im Klaren darueber, was eine
Levelabhaengigkeit von Befehlen wie zap etc. bringen soll. Erwartet ihr allen
ernstes von jemandem, der innerhalb von 20 Spielerleveln nicht ein wenig
Verantwortung in bezug auf andere gelernt hat und von dem man wohl aufgrund
seines Levels auch erwarten kann, dass er die Bedeutung des Magiervertrages
versteht, dass er sich ploetzlich aendert, wenn er von Magierlevel 21 auf 25,
45 oder was auch immer aufsteigt?
Mit anderen Worten: Wenn jemand Magier werden kann, sollte man erwarten, dass
er in der Lage ist, die Bedeutung dessen, was er tut abzuschaetzen, somit auch
fuer das, was er tut geradezustehen. Die Bestrafung fuer Verletzung des
Vertrages is ja keineswegs sehr hart.
Fela...will zu jeder Diskussion was beitragen ;)

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



Re^12: Sperren von Magierbefehlen (Jasper,  9. Sep 1996, 09:41:57):
~#! rn=Felagund rt=842220891
~#! tid=842018773
fela du sollst nicht labern :)
reince mal zum abjurer im zombiemud, das ist viel wichtiger, als hier
so eine bloedsinnige diskussion(?) fortzufuehren.
Ganz nebenbei bemerkt halte ich es, unabhaengig ob mir Oetti, der alte
Drecksack besonders sympathisch ist oder nicht, fuer ein unding, wenn 
hier ein character an dem oetti seit jahren bastelt, einfach so geloescht
wird, nur weil er einen freund eines erzis geplaettet hat. 


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



Frage... (Rantanplan,  9. Sep 1996, 12:47:48):
Hmmm !

Na ja, wenn ich mir jetzt von jemandem nen Seherzweiti ausleihe, wird
der dann automatisch gesperrt, und wenn ja, was passiert wenn denn
mal Ran* Seher ist, lohnt sich fuer mich das Hochspielen ueberhaupt...

Ich wuerde es nur gerne wissen, weil...da stekct auch etwas anstrengung
dahinter, und ich moechte
nicht dass das dann ewig so geht...

Ein Ja oder Nein reicht fuers erste, ne Begruendung erwarte ich hier ehh nicht
mehr...

R*

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



Re^11: Sperren von Magierbefehlen (Patryn,  9. Sep 1996, 12:54:39):
~#! rn=Asmodis rt=842118091
~#! tid=842018773
geht es wirklich darum, den zap-befehl 'sicherer' zu machen oder will man
nicht mehr den vielverpoenten WurstMagiern (ich nenn sie mal JungMagier)
ausgeliefert sein...
ein jeder von denen duerfte innerhalb einer stunde rausbekommen haben,
wie man spieler heftigst vergiftet oder die die() aufruft und aehnliches.
man kann sogar spieler zwingen, sich von denen angreifen zu lassen,
dann ist man nicht mal der 'schuldige'...man kann objekte schaffen, durch
die sich spieler selbst toeten u.s.w.
ich denke mal, solch eine sperre waehr reichlich sinnlos

------
patryn

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



Re: Frage... (Wargon,  9. Sep 1996, 13:35:59):
~#! rn=Rantanplan rt=842266068
~#! tid=842266068
Da Du momentan noch als Testie markiert bist, gilt fuer Dich folgendes (aus
/doc/REGELN/zweities):
---------------------------------------
Magierzweities
--------------

Fuer Zweitcharaktere von Magiern gelten die folgenden Regeln:

 o Der Magier darf nicht gleichzeitig mit seinem Magier- und Zweitie-
   charakter eingeloggt sein.
 o Der Zweitspieler muss als Zweitie markiert sein, das kann man beim
   Schmied in der Zwergenstadt erledigen.
 o Der Zweitspieler darf vom Magier in keiner Weise manipuliert werden.
   (das folgt eigentlich schon aus dem ersten Punkt) Manipulation am
   Zweitspieler fuehren dazu, dass der Spieler zum Testspieler wird,
   damit ist er voll den Magierregeln unterworfen.
 o Es ist strengstens untersagt bei Quests zu helfen!!!
   Ansonsten wird der Zweitspieler als normaler Spieler betrachtet, d.h.
   er kann am normalen Spielgeschehen teilnehmen, darf mit anderen Spielern 
   zusammen metzeln, ihnen Geld oder Ausruestung geben oder z.B. Wege 
   erklaeren. 

Fuer Testcharaktere gelten folgende Regeln:

 o Testcharaktere muessen als solche gekennzeichnet werden.
   Dazu wird die Propertie P_TESTPLAYER auf 1 oder den Magiernamen gesetzt.
 o Alle Magierregeln gelten auch fuer den Testcharakter.
---------------------------------------
  Wargon

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



Re^12: Sperren von Magierbefehlen (Anatol,  9. Sep 1996, 18:50:39):
~#! rn=Patryn rt=842266479
~#! tid=842018773

Wenn ein Spieler ein interaktives Lebewesen angreift, wird das in fast allen
Faellen geloggt. Und wenn derjenige, der diesen Befehl abgeschickt hat, nicht
der Spieler war, der ihn ausfuehrt ("zwinge anatol toete patryn"), so wird
auch der Zwingende ins Log aufgenommen.

Inwieweit das Log vor Manipulation sicher ist, wissen die EMs selbst, ggf.
sollten sie da was tun.

Anatol


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



Re^13: Sperren von Magierbefehlen (Catweazle,  9. Sep 1996, 19:02:20):
~#! rn=Jasper rt=842254917
~#! tid=842018773
Ganz nebenbei bemerkt halte ich Deine 'Nebenbei-Bemerkung' fuer mehr als
ueberfluessig, da Oetti nicht geloescht wurde, weil er einen Erzie-
freund gekillt hat, sondern weil er mehrfach, MEHRfach an Spielern rum-
gepfuscht hat!
Du tust weder Dir, noch uns Erzmagiern, _noch_ den Spielern einen Gefallen
wenn Du oeffentlich so einen Dummstuss verzapfst!
Yours truly,
     Catweazle

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



WWW-Seiten (Fyt, 10. Sep 1996, 00:35:22):

Irgendwie hat mein heissgeliebtes Lynx Probleme mit dieser WWW-Seite,
die Cat erwaehnt hatte. Ich wusste ja noch gar nicht, dass Browser auch
unter seine Fuchtel fallen...

Egal. Meine Meinung: Oetti hat wieder mal Scheisse gebaut und wird seine
Grenzen immer wieder ausloten. Also Loeschen. Kalr. Bin ich glatt dafuer.

Ich versteh nur nicht, wieso, das gemeine Volk auch noch darunter leiden
muss. Ihr da oben koennt doch nicht ernsthaft verlangen, dass wir hier
daemliche Fragen eines Wahnwitzigen erdulden muessen, der in irgeneiner
Quest steckt, von der ich den Namen noch nicht mal gehoert hab, und der
darueber hinaus so einen elenden langen... aehm... Namen hat... ich sag
nur Rantanplan. Daraus haette man glatt drei machen koennen... aehm ja.

Was wollte ich sagen: Die einzige Moeglichkeit, und das zu ersparen,
besteht ja whl darin, Rantanbumsen ne Magiershell zu geben und ihn
anschliessend in 'Oetti' umzubennen. Das kann man sich dann wenigstens
merken...

Ich... aehm... *gruebel*... ach: Fyt.

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



Re: WWW-Seiten (Asmodis, 10. Sep 1996, 00:45:01):
~#! rn=Fyt rt=842308522
~#! tid=842308522
ALso ich bin dafuer, ihn wenigstens Seher werden zu lassen, wenn ihn dann 
jemand zum Magier macht, ist eben derjenige fuer ihn und seine Taten
verantwortlich :)
Aber einen Magier komplett zu loeschen und wieder bei Level 1 anfangen
zu lassen, das ist irgendwie nicht richtig.

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



Re: Re: WWW-Seiten (Schrumpfi, 10. Sep 1996, 00:49:26):
~#! rn=Asmodis rt=842309101
~#! tid=842308522
Ich finde, dass absolut nichts dagegen spricht, wenn Rantanplan oder sonst ein
Zweitie von Oetti Seher wird. Oetti hat seine Magiershell nicht mehr und das
fdind ich ist wohl Strafe genug. Alles andere ist voellig albern. Ich find
auch, das nichts dagegen spricht, wenn jemand ihm seinen Sehercharakter
schenkt oder so. Das liegt doch im ermessen von demjenigen, der ihm den
Charakter gibt.
Schrumpfi findet das das ganze langsam zu weit geht!

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



Re^3: WWW-Seiten (Anatol, 10. Sep 1996, 00:56:28):
~#! rn=Schrumpfi rt=842309366
~#! tid=842308522

Also das mit dem "Seherverschenken" ist etwas ganz anderes, wenn auch etwas
in meinen Augen voellig ungeklaertes.

Hier darf man erst Magier werden, wenn man Seher ist. Warum? Naja, damit man
sich ein wenig auskennt und Bescheid weiss (und damit nicht jeder einen
Magierzweitie machen kann). Soweit so gut.
Was ist, wenn ich jetzt fuer 'nen Kasten Wein einen Sehercharakter abgebe?
Man kann mich nicht zum Zweitie machen, nur weil ich den Charakter eine 
Weile hatte - viele Charaktere wurden ja von mehreren Leuten zum Seher
gespielt, und vielerorts (Giessen, Essen, was weiss ich wo) werden die Quests
Personen zugeordnet (Machst Du mir QuestA, mach ich Dir QuestC, fragen wir D,
ob er uns QuestB macht?). 
Hmm.... also darf ich meine Seher nicht verschenken? Noe, kann ja auch keiner
kontrollieren, oder sagen wir: Im Regelfall kann es keiner.

Hm, Fazit: Wenn Aquatoll morgen Magier wird, ist das nicht meine Schuld, also
           fragt mich nicht nach Zaubertraenken.

Faszinierend, finde ich
Anatol


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



Re^4: WWW-Seiten (Pilgrim, 10. Sep 1996, 16:02:51):
~#! rn=Anatol rt=842309788
~#! tid=842308522
Hui...
das ist ja grauselig ... so spielt man heute MUDs (MG) ... ohje ...

Pilgrim
hat das irgendwie anders in erinnerung ;-)

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



Re^5: WWW-Seiten (Grimmborn, 10. Sep 1996, 17:44:21):
~#! rn=Pilgrim rt=842364171
~#! tid=842308522

Tja, konnte ja nicht so bleiben wie zu Deiner Zeit:
"teile jof mit Hier ist ja noch nichts zu tun, mach mich doch zum Magier, als
Spieler wird die Gilde als einziger Raum bischen eintoenig"

Grimmborn der Atheist tritt Pilgrim die Kruecken weg

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



Re^6: WWW-Seiten (Rantanplan, 10. Sep 1996, 17:51:17):
~#! rn=Grimmborn rt=842370261
~#! tid=842308522
Hey, an die Zeiten erinnere ich mich auch noch

*seufz melancholisch*

Da waren Erzies noch echte Erzies, und Seher noch echte Seher
und Monster noch echte Monster, und weibliche Spieler aehhhhh

Ja, frueher war alles besser...

Sogar Oetti ;-)

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



Re^7: WWW-Seiten (Fyt, 10. Sep 1996, 18:03:57):
~#! rn=Rantanplan rt=842370677
~#! tid=842308522

Hm, als es schon Seher gab, waren die Erzies auch nicht mehr das, was
sie mal waren :)

Fyt.

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



Re^8: WWW-Seiten (Caradhras, 10. Sep 1996, 18:06:26):
~#! rn=Fyt rt=842371437
~#! tid=842308522
Eben, wollt auch grad schreiben "Damals gabs doch noch keine Seher."
Aber das lass ich nun doch. Ach, jetzt hab ichs ja getan. Hmpf.

    Ein verwirrtes Gebirge

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



Re^7: WWW-Seiten (Guybrush, 11. Sep 1996, 09:16:57):
~#! rn=Rantanplan rt=842370677
~#! tid=842308522
.. und kleine pelzige Wesen von Alpha-Zentauri ...

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



Re^3: WWW-Seiten (Raffi, 11. Sep 1996, 23:16:09):
~#! rn=Schrumpfi rt=842309366
~#! tid=842308522

Wohl schon gibts was was gagegen spricht das Rantandingsda Seher oder gar
magier wird: Der unmoegliche Name.)

Gruss
H.

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



Oetti u.a. (Azzuro, 12. Sep 1996, 00:54:22):
nachdem ich den ganzen Kram hier lesen musste, will ich auch andere leiden
lassen.

Ich haette eine Idee, die ganz in die andere Richtung von zap sperren und
Sicherheitsabfragen geht.
Wie waer es damit, dass nach zappen die Punkte nicht mehr wieder hochgesetzt
werden. Hoert sich komisch an aber ich meine damit folgendes:
Zur Zeit ist Zappen schon fast eine Art Kavaliersdelikt, weil der Spieler
hintendran eh wieder seine Punkte erhaellt. Das merkt man schon an den
Kommentaren zu Oettis Loeschung. Wenn nun aber allgemein bekannt ist, dass man
dem Spieler durch einen Zap
richtig schadet, wuerden auch so "Witzbolde" wie Oetti es sich meiner Meinung
zweimal ueberlegen, bevor sie ihr Zap abfeuern.
Schliesslich waer dieses dann ein "richtiger" Mord!
Klar fuer den Spieler waer es aergerlich, aber es kaeme nicht mehr zu so
Faellen, dass ein "Moerder" im Nachhinein als Maetyrer (oder wie man das auch
immer schreibt) hingestellt wird.
Weiterhin wuerde es dem Sheriff mehr Rueckendeckung bei seinen Entscheidungen
geben.
Ich hoffe es wird klar was ich meine.

Azzuro, geht sich gleich mal sein Abendessen zappen.

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



Oetti, Zappen usw. (Alboin, 12. Sep 1996, 01:22:12):
Tja die Idee von Azzuro ist nicht schlecht, aber die Realisierbarkeit sei
dahingestellt. Bei dieser Diskusion habe ich mir mal gefragt, worin der Sinn
des Zappens liegt und ich denke, dass es eigentlich nur zum testweisen
abmurksen von NPC's gedacht ist. Da kommt auch gleich einen die Idee, das man
das Zappen ebenso wie 'toete alle' nur an NPC's anpassen koennte, auf der
anderen Seite denke ich aber das man doch als Magier ein bisschen
Verantwortung hat, und das deswegen der Befehl fuer alle Magier bleiben 
sollte, damit dies unterstrichen wird. 
Bei Oetti habe ich uebrigens einen seltenen Fall an Lust von Verbotenem
diagnostiziert, man sollte es Zappomanie nennen;-)
Das Oetti nun keine Magier ist mag ok sein, aber als Spieler haette ich ihn
liebend gerne wieder :)  und Zappomanie koennte auch heilbar sein, zum
Bleistift, wenn alle mal hier sich selbst in den Hintern treten und wieder
fuer eine angenehmeres MG-Klima sorgen...

Alboin

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



NERV ! (Rantanplan, 12. Sep 1996, 12:44:34):
Koennte dieses Diskussion, vielleicht auch ohne Analyse meiner
ohnehin (und mir auch bekannt) total defizitaeren Psyche ablaufen ;-))


Was oder wie oder warum ich bin ist mir ganz gut bekannt.

Und darum gehts ja irgendwie auch nicht (sollte es jedenfalls)

GRuss

Oe* GEist der durch R* spricht !

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



Re: NERV ! (Guldukat, 12. Sep 1996, 13:21:45):
~#! rn=Rantanplan rt=842525074
~#! tid=842525074
Er sieht es ein!
Nun wo Oetti soweit ist, sollte er nun wirklich auf Unzurechnungsfaehigkeit
plaedieren.

Save Oetti: http://enie.orch.ruhr-uni-bochum.de/cig-bin/mg/save_oetti

GD

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



Re: Oetti u.a. (Acrimon, 12. Sep 1996, 15:04:46):
~#! rn=Azzuro rt=842482462
~#! tid=842482462
Azzuro hat recht!
Das Sterben ist viel zu billig geworden (es kostet fast nichts mehr).
Die Modifier sind nach 15 Minuten wieder voll, die Ausruestung holt man sich
wieder oder laeszt sich holen, und die EP sind nichts mehr wert.

Ist es da ein Wunder, dasz ein Spieler blosz noch mit der Schulter zuckt, wenn
er stirbt, kein Beileid mehr kommt (weil man keines braucht), und sich denkt,
"beim vierten Anlauf hab ich die Sachen wieder" und sooft nackt in die Faenge
des Drachen laeuft, bis der Drache mal nicht aufpaszt und man mit den Sachen
entkommen kann?

Acrimon, der Rote Ritter fordert: Laszt den Tod wieder etwas kosten!

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



Re: Re: NERV ! (Guldukat, 12. Sep 1996, 16:18:53):
~#! rn=Guldukat rt=842527305
~#! tid=842525074
schuldigung, falsche adresse:

http://ernie.orch.ruhr-uni-bochum.de/cgi-bin/mg/save_oetti

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



Re: Oetti u.a. (Asmodis, 12. Sep 1996, 18:45:25):
~#! rn=Azzuro rt=842482462
~#! tid=842482462
Die Idee finde ich gut, denn manchmal kuemmert es den Spieler auch
nicht so, ob er ein paar EPs verliert, erst wenn er eine offizielle
Beschwerde einlegt, sollte dann gegen den Magier vorgegangen werden.
Eventuell kann man dann auch ne oeffentliche Gerichtsverhandlung
durchfuehren mit dem Spieler und dem Sheriff als Anklaeger und dem
Zapper als Angeklagten, worin er dann seine Motive darlegen kann,
und vielleicht wird er dann ja vom Richter (vielleicht Jof ?? )
freigesprochen, wenn seine Gruende berechtigt waren.

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



nene (Key, 12. Sep 1996, 18:51:17):
Noe nix das sterben teurer machen! Das trifft mich jetzt wirklich hart! Hast
du schonmal nen Tod z.B. am Weghier gehabt und musstest dann mit den -stats
weitermetzeln? Das ist elendig! Hmm wenn man allerdings die -stats wieder
abstellt und irgendwas anderes macht waere es net so uebel! :)) 
Key
P.S.: Aber denkt dran ich sterbe weiter! ;))

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



Re: Re: Oetti u.a. (Wurzel, 12. Sep 1996, 18:53:11):
~#! rn=Asmodis rt=842546725
~#! tid=842482462
dass der tod wieder was kosten soll, moechte ich nur befuerworten. ohne diese
echten kosten ist es doch kein nervenkitzel...
in der "guten alten zeit", an die sich kaum noch einer erinnert, kostete der
tod nicht nur einen ganzen level, sondern damit auch gleich stats...

wurzel schwelgt mal wieder

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



Re: Re: Oetti u.a. (Valarian, 13. Sep 1996, 00:53:39):
~#! rn=Acrimon rt=842533486
~#! tid=842482462
Nee, bitte nicht. Wenn die Eps nichts mehr wert sind, dann muss man sie ja
auch nicht abziehen. Mich kostet ein Tod immer noch 2.5 mios.

Ich bin dafuer das es so bleibt

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



Re^3: Oetti u.a. (Azzuro, 13. Sep 1996, 00:59:03):
~#! rn=Valarian rt=842568819
~#! tid=842482462
Ich glaube man hat mich teilweise missverstanden.
ich meinte nicht sterben muss teurer werden (Muss es zwar, aber das ist eine
andere Geschichte), sondern man sollte das Ruecksetzen der Stats nach Toden
durch Magier unterlassen.
Denn nur so ist ein Kill von einem Magier ein richtiger Kill mit allen
Konsequenzen. Das haette zur Folge, das nicht immer wieder Leute kommen und
sagen:
"Was wollt ihr denn der arme Spieler hat seine Stats wieder und also ist
niemandem etwas passiert. Warum muesst ihr dasnn so boese sein Und den armen
armen Magier loeschen?"

Wenn schon Kill, dann richtiger Kill mit bestrafung und Opfer.
Dann wuerden sich manche Magier die aus Spass zappen es sich dreimal
ueberlegen, bevor sie einem Spieler anhaltend schaden.

Azzuro

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



Re: NERV ! (Drfreud, 13. Sep 1996, 09:56:57):
~#! rn=Rantanplan rt=842525074
~#! tid=842525074
Interessant !
Ein wirklich interessanter Fall !
Ich tippe mal auf einen mittelschweren Fall von schizophrenie.
Wenn sich einer von euch beiden Oetti oder Rantanplan (letzerer bitte erst
nach einer Antiflohbehandlung) in meine Fachkundige Behandlung begeben wuerde,
bin ich sicher bald eine Heilung zu erreichen.
Terminabsprache bitte ueber meine Sekretaerin.
Dr Freud, behandelt nur hoffnungslose Faelle.

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



Re^10: Sperren von Magierbefehlen (Hardil, 13. Sep 1996, 10:43:13):
~#! rn=Schrumpfi rt=842117976
~#! tid=842018773

ZUm Thema Torfdueng:

er hatte mich frueher mal ne ganze Zeit dauernd disconnectet, einfach so als
Antwort auf ein rknuddel.
Ob man jetzt Spieler zappt oder per disconnect-trigger am einloggen hindert,
Missbrauch ists auf jeden Fall.

Just my 2 pennies

			Hardil

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



Re: Re: Oetti u.a. (Cauno, 13. Sep 1996, 13:03:40):
~#! rn=Asmodis rt=842546725
~#! tid=842482462

und als geschworene ausgewaehlte spieler, seher und magier, die die
verteidugung und der anklaeger jeweils ablehnen duerfen. wusste ichs doch,
dass irgendwann hier auch Murder One verbraten wird ...

Obwohl, so schlecht finde ich die idee gar nicht.

C. No

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



Re^4: Oetti u.a. (Raffi, 13. Sep 1996, 19:13:40):
~#! rn=Azzuro rt=842569143
~#! tid=842482462

Wenn ein Unrecht geschieht und Du nicht helfen kanns so ist das eine
Tragoedie,
Wenn Du jedoch  die Macht hast, und trotzdem nicht hilfst so bist Du das
Unrecht.

(weiss ihc nicht, aber garantiert Chinesisch - und wenn nicht  dann (c)Raffi)

Gruss
H.

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



Re^4: Oetti u.a. (Dhojakt, 14. Sep 1996, 00:20:55):
~#! rn=Azzuro rt=842569143
~#! tid=842482462
Das Ruecksetzen der Schaeden resultiert aus der Auffassung, dass hier ein
Eingriff erfolgte, der nicht zum normalen Spielablauf gehoert. Aber es ist ein
'Schaden' infolge des Zeitverlustes und der Spielstoerung entstanden. Dass den
der Spieler u. U. als nicht so tragisch ansieht, ist eine andere Sache...
Khidar.

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



Re^5: Oetti u.a. (Schrumpfi, 15. Sep 1996, 19:16:46):
~#! rn=Dhojakt rt=842653255
~#! tid=842482462
AUFHOERN!! Ich kann es nicht mehr hoeren! 
Schrumpfi zappt jetzt den naechsten der hier was zum Thema Oetti schreibt aus
lauter Verzweiflung!

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



Re^6: Oetti u.a. (Raffi, 16. Sep 1996, 14:27:59):
~#! rn=Schrumpfi rt=842807806
~#! tid=842482462

Jau Mach !


Grins
H.

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



Re: Oetti u.a. (Elric, 16. Sep 1996, 15:49:46):
~#! rn=Azzuro rt=842482462
~#! tid=842482462
Klasse Idee, Azzuro.
Man erhoeht die Leiden der Opfer, um das Gewissen des Taeters staerker zu
beanspruchen.
Wenn ich Magier waere (Jof behuete) und ich wuerde Zeuge eines PK-Versuchs:
klar, ich wuerde mit draufhacken.
Und sowieso; diese ganze Hilfe fuer Opfer von Gewalt bringt doch eh' nix.
Fuehrt nur dazu, dass keiner mehr Gewalt ernst nimmt.
Und bitte: helft Azzuro nicht. Sonst kann ich ihn nicht mehr erstnehmen.

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



Re: Re: Oetti u.a. (Caradhras, 16. Sep 1996, 16:16:23):
~#! rn=Elric rt=842881786
~#! tid=842482462
Um die Leiden des Opfers mehr zu erhoehen, also um das Gewissen
des Taeters, dh. den Taeter staerker zu bestrafen, wie waere es da
mit einem loeschen des Playerfiles des Opfers beim zap.

Wuerde beeeeeesssssstiiiiimmt jeden Magier davon abhalten, Spieler
zu zappen. Vor allem, wenn der entsprechende Magier dann nicht
bestraft wird.

Erkennt jemand die Ironie in meiner Stimme? 
Na ja, wohl nicht. Da ihr mich nicht hoert. 

      Rothorn Caradhras - baut Azzuros Vorschlag etwas aus

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



Re^6: Oetti u.a. (Hadra, 16. Sep 1996, 18:10:46):
~#! rn=Schrumpfi rt=842807806
~#! tid=842482462
aaaaaalso, das mit oetti und ueberhaupt und so. und irgendwie.
genau!

hadra - wartend

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



Re^7: Oetti u.a. (Rantanplan, 16. Sep 1996, 18:19:11):
~#! rn=Hadra rt=842890246
~#! tid=842482462
Mist Hadra, Du warst schneller ;-)))


Oett^H^H^H^HRantanplan !

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



Was ist denn bitteschoen hier los?? (Pampers, 18. Sep 1996, 11:35:03):

Heute, Mi 18. Sep. kurz vor 11:

Rantanplan   I S T   J E T Z T   D A !!!

finger rantanplan
Rantanplan ist anwesend,
und zwar von: asterix.uni-muenster.de (128.176.188.9) [Muenster].
Voller Name: Rantanplan meint: Gibs mir
Rasse: Mensch,  Gilde: Bierschuettler,  Geschlecht: maennlich
Alter: 8d 04:50:56,   Spielerlevel: 7,   Gildenlevel: 7
Datum des ersten Login: Sam,  6. Jul 1996, 22:22:15
E-Mail-Adresse: none
Bisher bereits 8 mal gestorben



kwer in muenster
   Liste der Mitspieler vom Mit, 18. Sep 1996, 10:54:27 (8 Teilnehmer)

Trevize.........s  *Rantanplan.....s  Belgarath.......s  Pufty...........s
Fagus...........S  Vogel...........S  Wargon..........E  Kirk............E


Rantanplan   I S T   J E T Z T   N I C H T   M E H R   D A !!!


finger rantanplan
Rantanplan ist nicht anwesend.
Zuletzt eingeloggt von: dionysos.ita.uni-heidelberg.de [Heidelberg].
Zuletzt ausgeloggt: Die, 17. Sep 1996, 22:37:06 (12:20:28)
Voller Name: Rantanplan meint: Gibs mir
Rasse: Mensch,  Gilde: Bierschuettler,  Geschlecht: maennlich
Alter: 8d 04:49:54,   Spielerlevel: 7,   Gildenlevel: 7
Datum des ersten Login: Sam,  6. Jul 1996, 22:22:15
E-Mail-Adresse: none
Bisher bereits 8 mal gestorben


-r-- NOBODY      sys          2246 22. Jul, 15:48 rantalf.o
-r-- NOBODY      sys          7583 18. Sep, 10:58 rantanplan.o
-r-- NOBODY      sys          2239 12. Jun, 22:36 raptor.o




-------------------------------------------------------
Ich hab egrade mit rantanplan gesprochen, er was es nicht.
Es hat sich also jemand von Muenster aus unter seinem Namen eingeloggt,
und rumgespielt....
Der login ist aus /log/ENTER entfernt worden. :(

Ich find das ne ziemliche Schweinerei und wuesste ganz gerne, welcher Erzi
(und um einen solchen muss es sich wohl handeln) das verbrochen hat. :((
Wenn ihr ihn lossein wollt, gebt ihm doch nen Sitebanish, aber nicht so!

Pampers. Schwer bis tierisch Sauer.

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



Re: Was ist denn bitteschoen hier los?? (Kirk, 18. Sep 1996, 11:43:56):
~#! rn=Pampers rt=843039303
~#! tid=843039303
In letzter Zeit sind des oefteren Files verschwunden und andere seltsame Dinge
passiert, deshalb lasse ich Crack laufen und checke die Passwoerter.
Anschliessend loggt sich ein Script ein und verifiziert das gecrackte
Passwort.
Bei denen, die ein duemmlich einfaches Passwort haben ist auch rantanplan.
Aus /log/ENTER entfernt das Script nichts.

Noch Fragen?

Kirk

P.S.: Es sind bisher 623 Passwoerter aufgeflogen, das sollte allen zu denken
geben ... (in nur 8 Stunden)

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



Re: Re: Was ist denn bitteschoen hier los?? (Engywuck, 18. Sep 1996, 11:47:37):
~#! rn=Kirk rt=843039836
~#! tid=843039303
Aeh...schreibt einem das Script auch ne Mail, dass man ein duemmlich einfaches
Passwort hat?
Oder gratuliert es einem, wenn man ein tolles superkompliziertes Passwort hat,
so wie ich?
Nur, damit man bescheid weiss...

Engy*

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



Re: Re: Was ist denn bitteschoen hier los?? (Pampers, 18. Sep 1996, 11:48:35):
~#! rn=Kirk rt=843039836
~#! tid=843039303
*atme auf*

na dann geht's ja :-)

Pampers. Besaenftigt.

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



Re^3: Was ist denn bitteschoen hier los?? (Kirk, 18. Sep 1996, 11:50:13):
~#! rn=Engywuck rt=843040057
~#! tid=843039303
Die Mail kommt spaeter, wenn Crack halbwegs durch ist

Kirk

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



hmmmm (Rantanplan, 18. Sep 1996, 11:52:05):
Wieso muss da ueberhautp ein script laufen...

Is ja auch wurscht ;-)

Und was ist an Hassan duemmlich, hehe ich habs aber jetzt auf internationalen
Sicherheitsstandard gebracht mit Sonderzeichen, alphanumerisch und Gross- &
Kleinschreibung...

R*

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



Re: Re: Was ist denn bitteschoen hier los?? (Morgoth, 18. Sep 1996, 11:53:58):
~#! rn=Kirk rt=843039836
~#! tid=843039303
wie waers, wenn du mal mails an die verschickst, deren du geknackt hast
meins ist auch nicht soooooo superschwer ;-))
Morgoth

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



Re^3: Was ist denn bitteschoen hier los?? (Engywuck, 18. Sep 1996, 12:17:33):
~#! rn=Morgoth rt=843040438
~#! tid=843039303
Machts doch ganz einfach. Denkt Euch mal komplizierte passwoerter aus! So
schwer ist das nicht, mir wuerden gleich auf anhieb ein paar einfallen:
wrtY6e##m9y- z.B. oder Dd3@wU*:*

Also, bisschen mehr Phantasie!

Engy*

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



Re: Re: Was ist denn bitteschoen hier los?? (Cauno, 18. Sep 1996, 13:31:23):
~#! rn=Kirk rt=843039836
~#! tid=843039303
wird den aufgeflogenen mitgeteilt, dass ihr passwort muell ist?

C. No

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



Re^4: Was ist denn bitteschoen hier los?? (Cauno, 18. Sep 1996, 13:33:11):
~#! rn=Engywuck rt=843041853
~#! tid=843039303
hm.
sollte man sich ein passwort nicht auch merken koennen?
wenn mans aufschreiben muss, ists schon wieder zu unsicher.

C. No
nn

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



Re^5: Was ist denn bitteschoen hier los?? (Anakin, 18. Sep 1996, 13:35:24):
~#! rn=Cauno rt=843046391
~#! tid=843039303
Eine sichere Methode ist, denk dir einen fuer dich leicht zu merkenden
Satz aus, nimm die Anfangsbuchstaben der einzelnen Woerter, haeng die 
Anzahl der Woerter als Zahl ran und schon hast du ein feines Passwort.

Anakin.

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



Re^6: Was ist denn bitteschoen hier los?? (Cauno, 18. Sep 1996, 13:45:11):
~#! rn=Anakin rt=843046524
~#! tid=843039303

Und es besteht wieder nur aus buchstaben. da kann ich mir auch zu meinem
jetzigen wort einen satz ausdenken.
Davon abgesehen, ich haette weniger das Problem, so was im Kopf zu behalten.
aber ich denke da auch an andere.

C. No

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



Re^7: Was ist denn bitteschoen hier los?? (Anakin, 18. Sep 1996, 13:51:07):
~#! rn=Cauno rt=843047111
~#! tid=843039303
Lies den Artikel nochmal, es besteht nicht nur aus Buchstaben,
ich finde die Methode ganz nett und 'crack' scheitert dran.

Anakin. - ESDUS5 -

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



Re^4: Was ist denn bitteschoen hier los?? (Highlander, 18. Sep 1996, 14:40:43):
~#! rn=Engywuck rt=843041853
~#! tid=843039303
He, das mit den ## ist aber unguenstig -
es gibt Systeme, die beim login statt backspace # kakzeptieren,
d.h. Vertipper im Passwort kann man so korrigieren.
Die meisten machen das nicht, das gibt dann Probleme bei inhomogenen
Netzen :>
   HrT

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



Re^8: Was ist denn bitteschoen hier los?? (Anatol, 18. Sep 1996, 14:41:15):
~#! rn=Anakin rt=843047467
~#! tid=843039303

Fuer diejenigen, denen zum Thema "Passwortsicherheit" nicht allzuviel 
einfaellt - eine einfach geschriebene Seite dazu findet sich unter
          http://131.173.161.1/bischof/Artikel/passwort.html

Anatol


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



Re: Re: Was ist denn bitteschoen hier los?? (Bendeigid, 18. Sep 1996, 16:22:50):
~#! rn=Jasper rt=843056514
~#! tid=843039303
Ich hoffe ihr habt es bald... das hier ist NICHT Muell oder Schmarrn.

Saeuerlich werdend,
            Bendeigid

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



Re^3: hmmmm (Paracelsus, 18. Sep 1996, 22:38:47):
~#! rn=Raffi rt=843056194
~#! tid=843040325
Fuers MG ists nicht gut, da brauchste ein Passwort mit mind. 6 Zeichen.
Paracelsus

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



Re^4: hmmmm (Zardoz, 19. Sep 1996, 09:57:03):
~#! rn=Paracelsus rt=843079127
~#! tid=843040325
Man sollte uebrigens das Passwort nicht mit einem ! beginnen lassen, dann kann
man es naemlich nicht mehr aendern, weil so das input_to der passwortabfrage
umgangen wird :)
Und Passwort-Merken: Ich hab so ein kompliziertes, dass ich es mir nicht
merke, und es seit tf auch nicht kennen muss. Ist immer witzig, wenn ich mal
in einer anderen Stadt bin und es nicht schaffe mich einzuloggen :)))

Ciao Zardoz

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



Re^5: hmmmm (Grimmborn, 19. Sep 1996, 11:03:06):
~#! rn=Zardoz rt=843119823
~#! tid=843040325

telnet auf den heimischen Rechner und im tf nachsehen...

Grimmborn der Atheist hat dumme Kommentare und dolle Tips zu Dutzenden.

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



ignoriere (Qitess, 19. Sep 1996, 12:10:27):
wieso darf eigentlich ein magier das ignorieren umgehen ?
selbiges ist mir passiert, als ich ueber einer aufgabe sass, bei der ich nicht
gestoert werden wollte, dieser magier mich aber trotzdem vollgemuellt hat.

QI findet, sowas sollte unterbunden werden.


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



Re: ignoriere (Durian, 19. Sep 1996, 12:11:59):
~#! rn=Qitess rt=843127827
~#! tid=843127827
Das ist technisch unmoeglich! Ein Magier hat vierhundertdreiundachtzig 
Millionen Moeglichkeiten, das zu umgehen. Ein Beispiel: Er setzt ein 
unsichtbares Monster neben Dich. Willst Du alles ignorieren?

Tscha, leider ist das ignorieren von Magiern voellig unmoeglich (leider??)!

- Durian

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



Re: Re: ignoriere (Wargon, 19. Sep 1996, 12:24:22):
~#! rn=Durian rt=843127919
~#! tid=843127827
Es gehoert dennoch nicht zum guten Ton. Ausserdem steht da auch noch folgendes
im Magiervertrag:
>Jegliche Art von Belaestigung von Spielern ist untersagt.
>Dazu gehoert das Verfluchen, Monster auf sie hetzen, oder ihnen auf
>irgendeine Art boeswillig Schaden zuzufuegen.
Auch wenn es einige Magier vielleicht nicht wahrhaben wollen: Dies ist *keine*
vollstaendige Liste...
  Wargon

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



Update (Kirk, 19. Sep 1996, 15:39:56):
Es sind jetzt 2203 Passwoerter und dabei sind 38 Magier ...

Kirk

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



Re: Update (Aline, 19. Sep 1996, 15:56:01):
~#! rn=Kirk rt=843140396
~#! tid=843140396

Schoen Kirk,

kannste mir bitte ein oder zwei dieser Magier nennen?

;)

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



Re^3: ignoriere (Grimmborn, 19. Sep 1996, 19:15:24):
~#! rn=Wargon rt=843128662
~#! tid=843127827

Es gibt da Methoden... wenn mir so ein Magier auffaellt, ich hab da was
(natuerlich nicht hier) rumliegen, womit er ohne meine Hilfe (oder die eines
EM) nichts mehr tut. Aeh, ich meine, ich kenne einen, der einen kennt, er von
einem gehoert hat... ;-)

Wenn ein Spieler mich ignoriert muss ich das akzeptieren, kann ihn hoechstens
nach dem Grund fragen (mail!) falls mich das irritiert. Alles andere empfinde
ich als massives Eindringen in die Privatsphaere, es ist das gute Recht eines
jeden hier, jeden anderen zu ignorieren. Punkt.

Grimmborn der Atheist

P.S. Man muss nciht alles umgehen, was man umgehen kann. Das Wissen um die 
     Moeglichkeit sollte reichen.


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



Re: ignoriere (Asmodis, 19. Sep 1996, 19:45:20):
~#! rn=Qitess rt=843127827
~#! tid=843127827
Geht ganz einfach mit echos :(
Sollte man verbieten, sowas.

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



Re^6: hmmmm (Fyt, 19. Sep 1996, 23:18:45):
~#! rn=Grimmborn rt=843123786
~#! tid=843040325

Wist's nicht glauben, Grimmborn, aber ich mach das so ;-)

Fyt.

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



Frechheit!! (Bleelumpe, 20. Sep 1996, 20:37:49):
HAllo zusammen!
Also ==> wegen dem TEst mit den Passwoertern, ich weiss nicht ob ich 
betroffen bin von der Aktion, das tut aber nichts zur Sache, ich meine
dazu nur wenn Kirk sowas vorher angekuendigt haette waere mir wohler
zumute, einfach so anfangen und sich unter dem anderenPasswort einloggen finde
ich ein starkes Stueck !!
Man kann viel machen und begruenden, aber ohne Vorwarnung oder eine
Erlaubniss PAsswoerter zu knacken, ist fuer mich illegal.
Ist Dir dass vielleicht mal in den Sinn gekommen Kirk?
Deinen guten Willen will ich Dir ja nicht streitig machen. Ich meine nur, dass
die Art und Weise nicht die richtige ist.
Wenn man vorher eine Warnung rausgelassen haette, in der Art, dass man einen
Artikel in die Zeitung setzt und auf die Sicherheitsbedenken aufmerksam
macht, dann eine Reaktionszeit der Mudder abwartet, und dann zeigt, dass man
das PAsswort knacken kann, damit koennte ich leben.
Jedoch so wie es jetzt laeuft finde ich es eine Frechheit!!
Aendern kann man nun nichts mehr, aber vielleicht nimmt man meinen Artikel
zu Herzen und macht es bei der naechsten Aktion besser

Gruss Bleelumpe, der sein Passwort jetzt schon aendert!!

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



Re: Frechheit!! (Hate, 20. Sep 1996, 21:50:12):
~#! rn=Bleelumpe rt=843244669
~#! tid=843244669
Hi,

entsprechende Passwortchecks und andere Sicherheitschecks werden in
unregelmaessigen Abstaenden durchgefuehrt und dienen der Sicherheit
unseres Systems. Ich denke nicht, dass hier irgendwer ein Anrecht auf
vorherige Information hat. Das einloggen mit dem geknackten Passwort
diente nur der Ueberpruefung und war ausserdem noch automatisiert, so
dass davon ausgegangen werden kann,  dass damit nicht herumgespielt wurde..
Hate.

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



Re: Re: Frechheit!! (Schrumpfi, 20. Sep 1996, 21:54:45):
~#! rn=Hate rt=843249012
~#! tid=843244669
Wegen dieser bloeden rumcheckerei schulde ich Kirk jetzt 5 Bier. Also ich find
das auch das ist ne Frechheit! ;-)
Schrumpfi :)

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



Re^3: Frechheit!! (Rantanplan, 21. Sep 1996, 14:43:22):
~#! rn=Schrumpfi rt=843249285
~#! tid=843244669
Ich denke auch dass ein Anrecht auf Information ein wenig viel verlangt
ist. Ich denke ueberhaupt, dass die forderung nach irgendwelchen Rechten 
ziemlich unverschaemt in meinen Ohren klingt...

Ein kopfschuettelnder R*

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



Re: Re: Frechheit!! (Marcus, 22. Sep 1996, 00:31:14):
~#! rn=Hate rt=843249012
~#! tid=843244669
Also normalerweise muss man sich nicht einloggen, um das zu testen.
Ein simples crypt("gecracktes_password","gecryptetet_password"); reicht ja
wohl aus. 

Marcus

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



Re^3: Frechheit!! (Hate, 22. Sep 1996, 14:05:52):
~#! rn=Marcus rt=843345074
~#! tid=843244669
Tja, das einloggen hat aber gleich einen Warneffekt. Wir haben auf das
sperren der Namen verzichtet, weil sonst kaum noch Spieler in MG
waeren.

Hate.

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



Re^4: Frechheit!! (Rantanplan, 22. Sep 1996, 17:19:01):
~#! rn=Hate rt=843393952
~#! tid=843244669
Ooops ! 

Koennte sein dass ich was missverstanden habe, aber der WArneffekt tritt nur 
dann in Kraft, wenn der betroffene Spieler zumindest anwesend ist...

Dann seh ich's ein...

R*

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



Jeder hat das Recht (Craig, 23. Sep 1996, 13:58:40):

N~r
Natuerlich ist die Aktion grundsaetlich ne gute Sache. Aber, bemuehter Kirk,
wohlwollender Hate, der Bereich rund ums Passwort ist nun mal ein ganz
sensibler. Wie man an der reaktion von Bleelumpe ja gesehen hat.
Deshalb waere eine Ankuendigung schon eleganter gewesen. Sicher kann man
nirgendwoher ein Recht auf eine Vorab-Information ableiten. es waere aber
sicher besserer Stil gewesen. Nehmt das "Gemeckere" halt Ernst und schreibt
vor der naechsten vergleichbaren Sache kurz was in die Zeitung.

Ein Nachteil waere natuerlich, dass Schrumpfi dann alle Biere alleine trinken
muesste. Aber das wuerde sie auch noch vertragen koennen,

meint CRAIG.

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



Re: Jeder hat das Recht (Boing, 23. Sep 1996, 14:01:58):
~#! rn=Craig rt=843479920
~#! tid=843479920
Ich halte es eigentlich fast fuer die Pflicht eines Administrators die
Passwoerter seines Systems von Zeit zu Zeit zu ueberpruefen. Ob das bei
einem Spiel so wichtig ist, sei mal dahingestellt, aber zumindest die
Magier-Passwoerter sollten einigermassen sicher sein. Und einem Erzmagier
sollte man genug Vertrauen entgegenbringen um anzunehmen, dass er mit einem
gefundenen Passwort keinen Schindluder treibt. Mal ganz davon abgesehen 
braucht ein Erzmagier ueberhaupt kein Passwort knacken um sich als beliebiger
Charakter einloggen zu koennen.
  Boing

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



Re: Jeder hat das Recht (Acrimon, 23. Sep 1996, 15:31:09):
~#! rn=Craig rt=843479920
~#! tid=843479920
Es ist die Pflicht eines jeden Systemadministrators, sein System sicher zu
halten.
Dazu gehoert auch, die Anwendung des Crack-Scriptes NICHT anzukuendigen, denn
sonst wissen eventuelle Hacker, dasz sie jetzt noch zuschlagen koennten.

Allerdings frag ich mich, ob der erhoffte Warneffekt ein solcher war, denn ich
hab das bestimmt ueberlesen - wenn ich ein leicht crackbares Paszwort habe.
Es ist absolut unumgaenglich, dem betroffenen Charakter mitzuteilen, dasz sein
Paszwort leicht crackbar ist und er es aendern sollte.

Acrimon, der Rote Ritter

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



Re: Re: Jeder hat das Recht (Har, 23. Sep 1996, 15:45:58):
~#! rn=Boing rt=843480118
~#! tid=843479920
nochmal passwoerter...
Also ich finde es ganz normal,d ass Passwoerter ueberprueft werden,
das ist in ganz anderen Bereichen als dem Mud auch so Brauch. Ob das
hier noetig ist ist eine ganz andere diskussion, die hier sicherlich
auch noch zu mehr als Genuege weitergefuehrt wird ;-)

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



Re: Re: Jeder hat das Recht (Hate, 23. Sep 1996, 16:20:29):
~#! rn=Acrimon rt=843485469
~#! tid=843479920
Die Mitteilungen sind nach meinen Informationen schon gemacht oder unterwegs.

Hate.

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



Re^3: Jeder hat das Recht (Bleelumpe, 23. Sep 1996, 21:47:01):
~#! rn=Hate rt=843488429
~#! tid=843479920
Hmm ich glaube ich bin zum Teil nicht verstanden worden,
ich sagte ja dass ich das mit dem ueberpruefen in Ordnung finde!!
Nur wenn man sich mit dem geknackten Passwort einloggt egal mit scrip oder 
ohne, dass finde ich den Hammer. Zumal das Script nicht so toll funktioniert,
denn warum steht Takan der IMMER in der Post steht auf einmal im Sueden??
Und er sagt er wars nicht???
Wer garantiert mir , dass dieses Script nicht noch mehr macht ?? 

Oder nocht deutlicher, wenn das Script das nicht gemacht hat, WER wars DANN
???

Ausserdem, nur weil es andere machen, bzw die ganze Zeit so gelaufen ist
heisst das noch lange nicht, dass es
	1. legal
	2. so weitergehn soll
	( bei legal fehtl ..ist )
	3. man es beim naechsten mal nicht anders machen kann
	4. ein Gewohnheitsrecht daraus abzuleiten waere.

Denn wer sagt mir , dass die Ergebnisse dieses Scriptes nicht in falsche 
Haende gelangen, und durch dieses Programm nicht den falschen Leuten
zugespielt
werden kann ??

Wie gesagt passiert ist passiert, nur wenn man so auf Sicherheit bedacht ist,
dann kann man das Problem gemeinsam loesen und nicht einer allein hinter dem 
Ruecken aller ( bzw vieler ).

Ich hab da noch mehr Bedenken zu diesem Thema, so koennte ich noch weiter
schreiben, jedoch will ich hier erst mal Schluss machen und nicht meine
ganzen Argumente und Heisse Eisen ins Feuer legen

Auf die weiteren Beitraege gespannt
		
		Euer Bleelumpe

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



Re^4: Jeder hat das Recht (Hate, 24. Sep 1996, 10:21:31):
~#! rn=Bleelumpe rt=843508021
~#! tid=843479920
Diese "Argumente" werden nichts daran aendern, dass unregelmaessig solche
Checks gemacht werden und das OHNE Vorankuendigung. Wie schon Boing vorher
sagte koennten wir uns Problemlos auch ohne Crack als jeder beliebige Spieler
oder Magier einloggen. Also wenn Du ein derartiges Problem hast solltest Du
mal ueber Deine Grundeinstellung nachdenken.

Hate.

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



Re^5: Jeder hat das Recht (Durian, 24. Sep 1996, 12:18:58):
~#! rn=Hate rt=843553291
~#! tid=843479920

Hallo zusammen!

Im uebrigen moechte ich alle hier Anwesenden daran erinnern, dass wir ei
Spiel spielen, welches die Goetter uns zur Verfuegung stellen. Die Erze
stehen auf einem aehnlichen Level, sie sollen uns das spielen ermoeglichen,
vereinfachen. Es waere daher nur legitim, wenn alle Erze und alle Goetter
alle Passwoerter kennen und bei Bedarf auch benutzen wuerden.

Dies ist kein UNIX-Betriebssystem, sondern ein SPiel. Sicherheit gibt 
es hier eh nicht, oder glaubt Ihr nicht, es waere ein Kinderspiel jedes
Passwort einfach beim Einloggen mitzuloggen?

- Durian

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



Passwoerter & Deppen (Grimmborn, 24. Sep 1996, 12:58:55):

Tja, Bleelumpe, Du hast darin recht, dass Du Dich aufregst. Du hast Unrecht in
Bezug auf den Grund des Aufregens. GRUNDSAETZLICH, egal ob hier oder in der
"realen UNIX-Welt" bist *DU*, und nur du verantwortlich fuer das, was mit
Deinem account passiert. Wenn Dein passwort also knackbar ist und geknackt
wurde, dann verdienst Du Pruegel - und nicht der, der es geknackt hat (naja,
solange er nix kaputt macht, aber auch dann ist das Deine Schuld). Und wenn
mein account geknackt worden waere waere ich wohl so klug, ganz klein und zahm
zu sein und nicht noch ein Fass aufmachen und mich beschweren. Sei lieber
froh, dass das Pruefscript nicht das pw anhand des Befehls "selbstloeschung"
verifiziert hat. 
Eine Ankuendigung von Ueberpruefungen wird es hoffentlich nicht geben, das pw
muss ohne Vorwarnung sicher sein. Und man sollte daran denken, i.a. ist die
Datei /etc/passwd fuer alle lesbar (weil ist besser fuer finger), also ich
versteh das Geschrei nicht, ehrlich. Hier ist uebrigens die Passwortdatei
nicht fuer jeden Wurstmagier lesbar, das nur als Beruhigung...

Grimmborn der Atheist hat ein paar interessante Verbesserungen fuer das
Ueberpruefungsscript parat...

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



Re^6: Jeder hat das Recht (Highlander, 24. Sep 1996, 14:25:48):
~#! rn=Durian rt=843560338
~#! tid=843479920
Aeh, Durian...
>vereinfachen. Es waere daher nur legitim, wenn alle Erze und alle Goetter
>alle Passwoerter kennen und bei Bedarf auch benutzen wuerden.

Das ist etwas missverstaendlich, finde ich :>  Um das klarzustellen:
Auch E und G sehen nur die verschluesselte Version eines Passworts, nicht
den Klartext. Und als jeder beliebige Spieler einloggen ist moeglich, weil
wir das gesetzte Passwort mal eben aus dem savefile nehmen koennen.
Warum das gecrackte password noch mit einem loginversuch verifiziert wurde,
ist mir etwas schleierhaft, aber das
aendert ja auch nix dran, dass das Passwort crackbar war - also schlecht.
Es soll ja auch schon vorgekommen sein, dass Leute, die das nicht koennen
sollten, mal an die Passwords gekommen sind. Die verschluesselten meine ich.
   HrT

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



Re: Passwoerter & Deppen (Mupfel, 24. Sep 1996, 15:31:52):
~#! rn=Grimmborn rt=843562735
~#! tid=843562735

Stimmt Grimmborn. Und nochwas: die Erzmagier hier koennten auch saemtliche
Mail lesen, bzw. ein UNIX-Script drueberlaufen lassen, dass nach Stichworten
wie 'Komplettloesung' oder 'Script' scannt (machen sie aber m.W. nicht :-),
also kannst Du hier von keinerlei 'Sicherheit' ausgehen (die wird auch
nirgendwo gewaehrleitet, lies mal die FAQ).

-mupfel-

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



Re: Re: Passwoerter & Deppen (Nirdavo, 24. Sep 1996, 15:38:27):
~#! rn=Mupfel rt=843571912
~#! tid=843562735
  Hm, wer ein einfaches Passwort hat, der ist selber schuld. Ich hab meines
jedenfalls geaendert. Was ich aber nicht ganz in Ordnung finde (wenn es denn
wahr ist) ist, dass Erzies meine Mail lesen koennen. Da dort auch manchmal
persoenliche Sachen drinstehen, sollte diese nicht (auch fuer Erzmagier und
Goetter) zugaenglich sein.
  Ein besonderer Fall ist natuerlich gegeben, wenn im Mail-Server ein Bug
ist, dann muss natuerlich jemand da etwas machen koennen. 
  Vorschlag: Die Mails einfach crypten, dann kann man Aenderungen vornehmen,
und trotzdem kann nur derjenige, der sich als Spieler korrekt eingeloggt hat,
die Mail dann auch tatsaechlich lesen.

      Nirdavo, will auch was zu diesem Thema loswerden

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



Re^3: Passwoerter & Deppen (Engywuck, 24. Sep 1996, 15:43:04):
~#! rn=Nirdavo rt=843572307
~#! tid=843562735
*seufz*
Es ist auf Unixsystemen ganz allgemein ueblich, dass die Goetter (bzw. root)
die Macht haben. Wenn Du das rootpasswort von den Rechnern des Rechenzentrums
hast, kannst Du dort auch ganz problemlos die Usermail lesen oder nach
beliebigen Begriffen durchgreppen.
Es ist eine Frage, WEN man zum Systemadministrator macht. Hier im MG ist das
Problem dadurch geloest, dass nur eine Minderheit an Magiern, denen man genug
Verantwortung zutraut, Erzmagier werden.
Wenn das nicht gegeben ist: Schonmal was vom "Bastard operator of hell"
gehoert? ;)

Engy*

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



Erzis (Elric, 24. Sep 1996, 16:19:47):
Yep.
Wie schoen, dass unsere Goetter und Erzis so korrekt, verantwortungsbewusst,
gerecht, bedacht und abgeklaert sind.
Die weniger angenehmen Seiten dieser Eigenschaften zeigen sich dann fuer
diejenigen unter uns, die diese Gegend hier etwas liberaler, anarchischer,
mitbestimmter, unernster und spassbetonter gestalten wollen.

Sicher ist sicher.
Elric.

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



Re: Erzis (Engywuck, 24. Sep 1996, 16:23:08):
~#! rn=Elric rt=843574787
~#! tid=843574787
Halt, eh man mich hier missversteht... ;)
Ich hab nicht gesagt, dass unsere Erzis supertoll und nicht zu schlagen sind,
denn bekanntermassen riechen sie ja etwas streng und sind intelektuell
unterqualifiziert ;)
Das einzige, was ich sagen wollte, war: Ich kann mir nicht vorstellen, dass
irgendeiner der Erzis mit den ihm zur Verfuegung stehenden Zugriffsrechten
Schindluder treiber wuerde. Was ich mir bei einigen Wurstmagiern durchaus
vorstellen koennte, wenn sie denn diese Rechte haetten ;))

So long, Engy*

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



Re: Re: Erzis (Wurzel, 24. Sep 1996, 19:01:47):
~#! rn=Engywuck rt=843574988
~#! tid=843574787
eins wird bei der diskussion hier uebersehen:
unabhaengig davon, ob jemand mails anderer leute lesen KANN, faellt das unter
das postgeheimnis und ist demzufolge strafbar, wenn man es denn tut.
ich glaube kaum, dass irgend ein richter von der wuerde eines "erzmagiers"
besonders beeindruckt waere :)
aber auch hier gilt: wo kein klaeger, da kein richter. und der nachweis, dass
jemand fremde mails liest, ist in aller regel aeusserst schwierig zu fuehren.

wurzel

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



Re^3: Passwoerter & Deppen (Grimmborn, 24. Sep 1996, 19:34:17):
~#! rn=Nirdavo rt=843572307
~#! tid=843562735

Mails crypten? OK, ich bin sicher, das liesse sich fuer Dich einbauen. Denn:
Dieses crypt ist nicht rueckgaengig zu machen (nicht mit vertretbarem
Rechenaufwand), und wie Du unter den Umstaenden Deine mail "cracken" willst -
ich bin fuer Vorschlaege offen.

Email faellt nicht unter das Postgeheimnis, ebensowenig wie uebrigens
Postkarten, Drucksachen etc. Mit anderen Worten: Wo man ohne Gewalt (d.h.
oeffnen der Verklebung) was lesen kann ist nicht postgeheim. Sonst muesste der
Postbote bei jeder Urlaubskarte Angst haben, wenn er aus Versehen die Adresse
auf der falschen Seite sucht. Und email faellt ebenfalls nicht unter das
Postgeheimnis: Erstens bin ich nicht sicher inwieweit das Postgeheimnis nur
fuer die Post gilt (und inwieweit so Sachen wie ups sich dazu verpflichten
muessen) und zweitens: Es liegt in der Natur der Sache (und ist auch nicht
abzustellen), dass die mail fuer Leute mit bestimmten Zugriffsrechten frei
rumliegt. Diese Zugriffsrechte muss es geben, systembedingt (und ich rede
nicht nur vom mud sondern von Unix-Netzen). Der Admin kann also alles lesen
und wird es immer koennen. Inwieweit er meint, nichts anderes zu tun zu haben
ist sein Problem, aber es wird immer wiedr gesagt, keine vertrauliche
Information ueber email (die ja auch unterwegs abgefangen werden kann) und
nichts aufheben, das einem massiv unangenehm waere, wenn es bekannt wuerde.
Dass es natuerlich andererseits als massiv schlechter Stil gilt, die usermail
anzusehen steht auf einem anderen Blatt. Aber strafrechtlich ist das nicht
relevant, alles andere wuerde mich massiv ueberraschen und allem
widersprechen, was ich zu dem Komplex bisher gehoert habe.

Grimmborn der Atheist


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



Re^4: Passwoerter & Deppen (Wurzel, 24. Sep 1996, 19:39:45):
~#! rn=Grimmborn rt=843586457
~#! tid=843562735
hm, ich hab da mal einen artikel dazu in irgend einer computerzeitung
gelesen, der hat das juristisch genau ausdiskutiert (bin kein jurist, die
feinheiten hab ich nur ueberflogen). aber der schluss war eindeutig: mail
faellt genauso unter das postgeheimnis wie briefe auch. 
das postgeheimnis gilt uebrigens natuerlich auch fuer ups und aehnliche. und
briefe ohne oeffnen der verklebung zu lesen, ist ja wohl auch nicht so
schwierig. trotzdem ist es verboten.
wurzel

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



Re^6: Jeder hat das Recht (Acrimon, 24. Sep 1996, 20:36:14):
~#! rn=Bleelumpe rt=843589932
~#! tid=843479920
Richtig.

Auch Systemadministratoren machen sich strafbar, wenn sie sich als fremde
Benutzer einloggen oder deren Mail lesen.
Leider kann es ihnen keiner nachweisen.

Somit bleibt nur der Appell an das rege Gewissen der Sysads und die Weisheit:

Man darf nur einen kleinen Teil dessen, was man kann!

Acrimon, der Rote Ritter

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



Re^7: Jeder hat das Recht (Grimmborn, 24. Sep 1996, 20:40:54):
~#! rn=Acrimon rt=843590174
~#! tid=843479920

Aha. Wer sagt das? Der weise Acrimon? Ein Strafrechtskommentar? Eine Stimme
aus den Wolken?
Nene, wenn Du schon Dinge behauptest, entweder mit Quelle oder mit deutlicher
Angabe, dass es wilde Spekulation ist. Ich hab hier eine mail an unsere
tuechtigen admins in Koeln geschrieben, die Antwort werde ich (wenn sie was
taugt) hier bekanntgeben. Bis dahin schlage ich vor, die Diskussion um die
Legalitaet von fremder mail (oder so) ruhen zu lassen.

Grimmborn der Atheist

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



Re^5: Passwoerter & Deppen (Hate, 24. Sep 1996, 20:57:57):
~#! rn=Wurzel rt=843586785
~#! tid=843562735
Das Gesetz (Postgeheimnis) bezieht sich eindeutig auf gedruckte oder in
irgend-
einer form auf Papier gebrachte Gedanken (Gedankengut).

Ich glaube hier legen es ein paar Leute auf eine Klauses beim einloggen an.
Darf ich mal auf die FAQ verweisen, in der ziemlich eindeutig etwas zum Thema
Privatsphaere steht.

Hate.

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



Re^4: Passwoerter & Deppen (Tasha, 25. Sep 1996, 00:13:28):
~#! rn=Grimmborn rt=843586457
~#! tid=843562735
Hmmm, ich hab zum Thema Briefgeheimnis bei Postkarten mal einen Jura-Prof.
befragt, der sich damit eigentlich auskennen sollte udn der sagte mir, das
Briefgeheimnis wuerde sich prinzipiell auch auf Postkarten etc. erstrecken.
Das aendert natuerlich nichts an der Tatsache, dass es nicht strafrechtlich
verfolgt wuerde, wenn man ne fremde Postkarte liest.

Tasha hatte mal wieder die Taschen voller Kleingeld.

P.S.: Die einige Moeglichkeit, jemandem eine Nachricht voellig sicher zu
uebermitteln waere, selber zu ihm hinzugehen. Aber das stimmt so auch wieder
nicht und ich schreib viel zu viel. Und konfus werd ich auch und.....

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



Re^4: Jeder hat das Recht (Jariel, 25. Sep 1996, 10:03:49):
~#! rn=Bleelumpe rt=843508021
~#! tid=843479920
hm.
Ich dacht Scripte sind verboten? ;)

uugk
Jariel (weiss gar nicht was ein Script ist) ;)

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



Re^4: Passwoerter & Deppen (Cauno, 25. Sep 1996, 10:40:19):
~#! rn=Grimmborn rt=843586457
~#! tid=843562735

Dafuer faellt Email unter das Datenschutzgesetz. Ist nur ein anderes Wort fuer
Postgeheimnis, Grimm*

C. No

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



Re^7: Jeder hat das Recht (Hardil, 25. Sep 1996, 10:58:13):
~#! rn=Acrimon rt=843590174
~#! tid=843479920

Tut mir leid, Acrimon,

aber ich bin hier als Sysadmin unseres lokalen Systems verpflichtet (!),
gelegentlich und random-maessig die mails der user durchzuscannen. Es ist
naemlich hier an der Uni vorgekommen, dass (an einem anderen Fachbereich) ein
Student seinen Account dafuer verwendet, mit Drogen zu dealen...

Das einzige, wozu ich verpflichtet bin, ist, nichts darueber verlautbaren zu
lassen, was ich lese. Und es nciht irgendwie auszunutzen.

Und das war uebrigens weder sarkastisch noch ironisch.

-Hardil

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



Re^8: Jeder hat das Recht (Raffi, 25. Sep 1996, 12:12:20):
~#! rn=Hardil rt=843641893
~#! tid=843479920

Hmm das ist eigentlich ein Klassischer Fall fuer Befehlsverweigerung aus
Gweissensgruenden (Mauerschuetzen, Erschiessungskommando WK2, etc.).

Gruss
H.

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



Re^8: Jeder hat das Recht (Highlander, 25. Sep 1996, 14:34:57):
~#! rn=Hardil rt=843641893
~#! tid=843479920
Da stellt sich mir sofort die Frage, ob diese Anweisung nicht rechtswidrig
ist. Denn Drogen dealen ist so oder so verboten, aber ein Sysadmin hat hier
nicht Hilspolizist zu spielen und meine mails zu lesen!
Ich denke naemlich auch, dass email unter das Postgeheimnis faellt.
Und da gilt nunmal - ohne RICHTERLICHE Anweisung kein Lesen fremder Post.
(OK, da bin ich mir nicht sicher, ich hoffe aber
immer noch ein bisschen auf unser Rechtssystem)
(solange es nicht ignoriert wird von den offiziellen Stellen -
http://www.inm.de/tkg/  (oder war das www5?))

  HrT

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



Re^8: Jeder hat das Recht (Acrimon, 25. Sep 1996, 14:44:55):
~#! rn=Hardil rt=843641893
~#! tid=843479920
Stimmt, Hardil.
Das seh ich vollkommen ein.

Und ich nehme hiermit meine Meinung zurueck, und aendere sie entsprechend.

Acrimon, der Rote Ritter

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



Passwort? (Snuggle, 25. Sep 1996, 15:53:33):
Die Passwoerter der Magier sollten hinreichend sicher sein, da mit ner
entsprechenden Shell zu leicht Unfug getrieben werden kann.

Als Spieler kann man idR allenfalls den entsprechenden Spieler in 
Misskredit bringen, was der dann halt fuer sich selber zu verantworten
hat. Wenn jemand meint, er muesse nun unbedingt mein Passwort knacken
und meine mail lesen, begeistert mich das zwar nicht, aber bitte. Ich werd
mich deswegen nicht auf den Kopf stellen.

YTSnuggle, dachte immer, er haette auch ein einfaches Passort - 
         bisher ist aber keine mail von Kirk gekommen 

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



Re^8: Jeder hat das Recht (Rochus, 25. Sep 1996, 17:46:06):
~#! rn=Hardil rt=843641893
~#! tid=843479920
Du DARFST die Mail Deiner User normalerweise nicht lesen,
es sei denn es ist zur Gewaehrleistung des Betriebs unvermeidlich
(sowie die Telekom nur bei Stoerungen mithoeren darf), 
z.B. bei Mailloops, User empfaengt 2 GB Mail usw.
WENN Du aus einem dieser Gruende den Inhalt einer Mail
zufaellig mitbekommst, darfst Du nichts darueber verlautbaren lassen,
es sei denn, es liegen Hinweise auf eine Straftat vor, dann muessen
diese den Behoerden gemeldet werden (bei anzeigepflichtigen Taten).

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



Re^9: Jeder hat das Recht (Har, 25. Sep 1996, 18:13:42):
~#! rn=Highlander rt=843654897
~#! tid=843479920
Tja, bei dieser Diskussion vergesst ihr alle eine Sache:
Ihr meint, ihr muesstet irgendwelche Rechte haben (was ja auch verstaendlich
ist).
Ihr habt sie aber nicht und werdet sie auch niemals dadurch bekommen, dass ihr
meint ihr muesstet sie haben :)

Har (meint auch seine email waere persoenlich geheim und er haette ausserdem 6
Richtige im Lotto verdient)

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



Re^9: Jeder hat das Recht (Hardil, 26. Sep 1996, 09:59:12):
~#! rn=Rochus rt=843666366
~#! tid=843479920
Einspruch.
Das mag fuer Accounts gelten, die Leute bei bezahlten Providern haben.
Bei Studi-Accounts, die offiziell den "wissenschaftlichen Arbeiten" dienen,
gelten da diverse Einschraenkungen. Ich darf zum Bleistift aktiv werden,
sobald jemand uns hier immer wieder die Mailpartition der Festplatte
ueberfuellt, weil er sich bei einem
Boahrussia-Server angemeldet hat und nicht schnell genug den ankommenden Muell
wieder entsorgt. Bzw, da nie klar ist, was fuer Muell jetzt ploetzlich die
Platte an den Rand des Crashs fuehrt, darf ich auch regelmaessig nach Leuten
suchen, die mit nicht-wissenschaftlichem Zeugs ihren wissenschaftlichen
account vollmachen.
Nun gut, das ist Theorie.
Wer mich kennt, weiss, dass ich nur im allerletzten Notfall, naemlich nur kurz
vor einem drohenden Crash, mich ueberhaupt einmische. Aber gerdae im Verlauf
der Sommerferien kommt es halt immer wieder vor, dass Leute ihre Quota so
drastisch ueberschreiten, dass ich erst nachgucke, ob ich nicht
wissenschaftliche Daten vernichte (die wuerde ich auslagern), bevor ich in
/var/spool/mail die Tastenkomibi 'rm' verwende.

-Hardil.

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



Re^10: Jeder hat das Recht (Durian, 26. Sep 1996, 13:37:47):
~#! rn=Hardil rt=843724752
~#! tid=843479920

Aehm.

Normalerweise tue ich es ja nicht gerne. Aber ich halte es doch fuer not-
wendig es zu wiederholen: bei dem MG handelt es sich um Spiel. Deshalb
sind jedwede Postgeheinisse oder Briefgeheimnisse oder wasweissichfuer
Gesetze voellig wirkungslos. Oder willst Du Jof anklagen, weil er in
seinem Spiel Deine Mail gelesen hat? Und Jof wird sich mit einem 'Ich
bin Gott' verteidigen??

Jungens, im MG gibt es zwar das Postgeheimnis, weil die Erze so nett sind
ud eben nicht die Passwoerter mitloggen, sondern nur die gecrypteten
lesen koennen, aber darauf haben wir doch keinen Rechtsanspruch. Ein Richter
wuerde sich am Boden kringeln vor Lachen ...

Wenn Ihr wirklich rechtssichere, niemals mitzulesende Mails empfangen wollt,
waehlt eine andere Umgebung, aber kein Spiel. Nur mein Tip! Will
jemand meine mail lesen???

- Durian

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



Re^11: Jeder hat das Recht (Anakin, 26. Sep 1996, 13:41:01):
~#! rn=Durian rt=843737867
~#! tid=843479920
Auja,

und jetzt Schluss damit und in Rubrik kultur kann nu auch endlich
mal was anderes gesagt werden.

Anakin.

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



Re^10: Jeder hat das Recht (Rochus, 26. Sep 1996, 14:34:23):
~#! rn=Hardil rt=843724752
~#! tid=843479920
Wenn Du meinen Artikel gelesen haettest, waere Dir sicher
aufgefallen, dass die Ermittlung des Verursachers einer
ueberfuellten Mailpartition unter Gewaehrleistung
des Betriebes faellt.

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



Re^10: Jeder hat das Recht (Highlander, 26. Sep 1996, 14:42:28):
~#! rn=Hardil rt=843724752
~#! tid=843479920
Wie schon Rochus in seiner Antwort schreibt, dient das dem Betrieb des
Systems und ist eine Ausnahmesituation. Ohne Grund (einfach,
um Stichproben zu nehmen) hast Du normalerweise in mailfiles
Deiner user nix zu suchen. Wenn Hinweise auf Straftaten vorliegen, koennte
man es vielleicht vertreten. Aber nicht einfach so.
Das ist kein Angriff auf Dich (nur um sicherzustellen, dass Du Dir nicht
persoenlich auf die Zehen getreten fuehlst :>).
  Gruss,
   HrT

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



Re^11: Jeder hat das Recht (Tasha, 27. Sep 1996, 23:26:29):
~#! rn=Durian rt=843737867
~#! tid=843479920
Lieber Durian, Deine Argumentation scheint mir doch arg bedenklcih. Deine
Argumentation weiterfuehrend koennte ich auch sagen: Das hier ist meine
RL-Wohnung deswegen geht es ueberhaupt niemanden an was ich hie rmach und
deshalb darf ich auch...

(be)denkend, Tasha

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



script-spieler ueberfuehrt (Guldukat, 28. Sep 1996, 12:57:25):
Ein Scriptspieler wurde am samstag um 12.30 von Willow und mir erwischt,
wie er an einer kiste wartet, bis ein geit auftaucht, die kiste vollmacht und
dann das geld rausklaut:

Das pranger ich entschieden an!


---- snip hier -----


G>Willow sagt: aha, er ueberprueft vorher, ob die kiste geschlossen ist
schliesse kiste
Du schliesst die Kiste.
G>echo Ein kleiner Geist erscheint aus dem Nichts und fuellt die Kiste wieder
a
uf.
Ein kleiner Geist erscheint aus dem Nichts und fuellt die Kiste wieder auf.
G>Rod oeffnet die Kiste.
Willow nickt zustimmend.
lege 2 muenzen in kiste
Du steckst 2 Muenzen in die Kiste.
G>echo Ein kleiner Geist erscheint aus dem Nichts und fuellt die Kiste wieder
auf.
Ein kleiner Geist erscheint aus dem Nichts und fuellt die Kiste wieder auf.
G>Rod nimmt 2 Muenzen.
Rod steckt 2 Muenzen in ein Paket.
sag nett
Du sagst: nett
G>sag haste mal dynamit oder sowas?
Du sagst: haste mal dynamit oder sowas?
G>Willow sagt: aber voellig illegal
Willow sagt: noe, leider nicht...
Willow bricht vor Lachen zusammen.
Willow sagt: weisst du, wo das zu holen ist?
sag mmh, was kann man denn dann mit ihm machen?
Du sagst: mmh, was kann man denn dann mit ihm machen?
Willow sagt: momp
xlook rod
Short: Rod .............................. i. [/elf:rod]
Long :
RodContent:
 1. Ein Behaelter .................... .. [/p/service/loco/obj/parcel#89470]
 2. - no short description - ......... .. 
[~boing/titiwu/obj/titiwumaster#85522]
 3. - no short description - ......... .. 
[+inseln/shakedbeer/shakyisland/obj/qu
 4. @@short@@ ........................ .. [+vland/morgoth/obj/phiole#84966]
Willow schuettelt seine gruenen Blaetter.
Willow grinst.
sag was klaut er denn hier immer raus?
Du sagst: was klaut er denn hier immer raus?
Willow sagt: das geld, das hier immer drin liegt
Du sagst: hi
sag er hat ein paket
Du sagst: er hat ein paket
sag was dawohl drin ist?
Du sagst: was dawohl drin ist?
xlook rod.1
Short: Ein Behaelter .................... ..
[/p/service/loco/obj/parcel#89470]
Long :
Ein ganz normaler Behaelter.
Content:
 1. Geld ............................. .. [/obj/money#90894]
Willow sagt: hier liegen doch immer an die 3000 muenzen drin...
Du sagst: hi
Willow sagt: kohle, was sonst...
xcall rod.1.1->QueryProp(P_AMOUNT)
Evaluation time: 0 ms.
Result: 32294
Willow steckt Boings Hoellenfeuer in eine Kiste.
Send message into room.
End message with "." or "**".
Willow schliesst die Kiste.
xcall rod.1.1->QueryProp(P_AMOUNT)
Evaluation time: 0 ms.
Result: 32294
[End of message]
Willow sagt: nicht schlecht... ;)
sag 32000 muenzen hat er hier gelklaut
Du sagst: 32000 muenzen hat er hier gelklaut
Willow sagt: tja, dumm gelaufen... ;)
sag na ob er nicht nur geld nimmt?
Du sagst: na ob er nicht nur geld nimmt?
Willow grinst.
schliesse kiste
Die Kiste ist doch geschlossen.
echo Ein kleiner Geist erscheint aus dem Nichts und fuellt die Kiste wieder
auf.
Ein kleiner Geist erscheint aus dem Nichts und fuellt die Kiste wieder auf.
Rod oeffnet die Kiste.
Rod nimmt Boings Hoellenfeuer.
sag mmh
Du sagst: mmh
Willow bricht vor Lachen zusammen.
sag nimm ales
Du sagst: nimm ales
xlook rod
Short: Rod .............................. i. [/elf:rod]
Long :
RodContent:
 1. Boings Hoellenfeuer .............. .. [~boing/friedhof/obj/dynamit#99455]
 2. Ein Behaelter .................... .. [/p/service/loco/obj/parcel#89470]
 3. - no short description - ......... .. 
[~boing/titiwu/obj/titiwumaster#85522]
 4. - no short description - ......... .. 
[+inseln/shakedbeer/shakyisland/obj/qu
 5. @@short@@ ........................ .. [+vland/morgoth/obj/phiole#84966]
Willow sagt: tja, und jetzt noch anzuenden... ;)
sag na ob das nicht dann playerkill ist?
Du sagst: na ob das nicht dann playerkill ist?
sag aber ansich nimmt er es ja selbst, oder?
Du sagst: aber ansich nimmt er es ja selbst, oder?
Willow sagt: noe, sicherlich nicht...
Willow nickt zustimmend.
Willow sagt: so isses
Du sagst: wir warnen ihn, dass er es nicht nehmen soll
Du sagst: dann ist es ganz klar seine schuld
Willow sagt: mompl, man sollte das zeug anzuenden und ihn nehmen lassen...
clone ~boing/friedhof/obj/dynamit
Cloned /players/boing/friedhof/obj/dynamit#99541.
Willow sagt: klar, weiss doch jeder, dass man mit boings hoellenfeuer
Willow sagt: vorsichtig sein soll
nicke
Du nickst zustimmend.
Willow grinst.
Du sagst: wenn er so bloed ist und das nimmt?
schau
[/d/polar/pilgrim/orklager/room/zelt2a]
Du stehst im oestlichen Teil des grossen Zeltes. Im Gegensatz zum West-
teil ist dieser aber bar jeglicher Einrichtung. Keine Teppiche auf dem
Boden, keine Tuecher an den Waenden.
Es gibt einen sichtbaren Ausgang: westen.
Weidchen Willow plant Gemeines (oder wars Geheimes?).. [/magier:willow]
Eine Holzkiste (geoeffnet). [/d/polar/pilgrim/orklager/obj/kiste#90889]
Rod der hoffnungsvolle Anfaenger. [/elf:rod]
Du sagst: sollen wir mal zuenden?
Willow sagt: hmmm...
lege 2 muenzen in  kiste
Du steckst 2 Muenzen in die Kiste.
Willow sagt: klar, nimm alles, steck muenzen in paket
Willow sagt: da bleibt das dynamit im inv
echo Ein kleiner Geist erscheint aus dem Nichts und fuellt die Kiste wieder
auf.
Ein kleiner Geist erscheint aus dem Nichts und fuellt die Kiste wieder auf.
G>Rod nimmt 2 Muenzen.
Rod steckt 2 Muenzen in ein Paket.
Willow grinst.
[Allgemein:Willow] vorsicht im orklager - sprengung beim orkkommandanten!!!
[Allgemein:Willow] VORSICHT!!!
[Allgemein:GulDukat] ist jemand im orklager?
[Allgemein:GulDukat] hier wird gleich gesprengt
G>Willow sagt: momp
i
Verschiedenes:
 GulDukats MGtool v1.3.1 [12:25:36]. [/obj/tools/MGtool#98345]
 Boings Hoellenfeuer. [/players/boing/friedhof/obj/dynamit#99541]
[Allgemein:Grendula] was macht ihr denn
G>alias 1 xdes /players/boing/friedhof/obj/dynamit#99541
Neues Alias: 1  = xdes /players/boing/friedhof/obj/dynamit#99541
G>zuende dynamit an
Was moechtest Du anzuenden?
[Allgemein:Zorro] denen wurde wohl der zapbefehl gesperrt
[Allgemein:Willow] noe
unt hoellenfeuer
Sei besser vorsichtig damit, wenn Du das anzuendest, solltest Du
moeglichst weit weggehen. Eine Zuendschnur ist am Hoellenfeuer
befestigt, Du schaetzt dass sie etwa 20 Sekunden brennen koennte.
zuende zuendschnur an
Du zuendest die Zuendschnur an.
Klege hoellenfeuer in kiste
Du steckst Boings Hoellenfeuer in die Kiste.
echo Ein kleiner Geist erscheint aus dem Nichts und fuellt die Kiste wieder
auf.
Ein kleiner Geist erscheint aus dem Nichts und fuellt die Kiste wieder auf.
G>Rod nimmt Boings Hoellenfeuer.
Willow gibt ein albernes Kichern von sich.
Du sagst: he, tu das nicht
Willow sagt: tststs...
sag leg es ab
Du sagst: leg es ab
sag das ist nicht gut fuer deine gesundheit!
Du sagst: das ist nicht gut fuer deine gesundheit!
KAWUMMMMMMMMMMMMMMM
Boings Hoellenfeuer zerreisst Rod in Fetzen.
Rod faellt tot zu Boden.
Du siehst eine dunkle Gestalt, die etwas Dunst einsammelt ... oder vielleicht
bildest du Dir das auch nur ein ...
[Tod:Lars] Boings Hoellenfeuer hat gerade Rod umgebracht.
Du sagst: oh
Willow sagt: tja, dumm gelaufen
sag dumm gelaufen
Du sagst: dumm gelaufen
[Allgemein:Willow] und wir haben ihn gewarnt...
[KWillow bricht vor Lachen zusammen.
Du sagst: er sollte es doch nciht nehmen
Willow sagt: so isse
schau
[/d/polar/pilgrim/orklager/room/zelt2a]
Du stehst im oestlichen Teil des grossen Zeltes. Im Gegensatz zum West-
teil ist dieser aber bar jeglicher Einrichtung. Keine Teppiche auf dem
Boden, keine Tuecher an den Waenden.
Es gibt einen sichtbaren Ausgang: westen.
Die bereits ziemlich stinkende Leiche Rods. [/std/corpse#99609]
Weidchen Willow plant Gemeines (oder wars Geheimes?).. [/magier:willow]
Eine Holzkiste (geoeffnet). [/d/polar/pilgrim/orklager/obj/kiste#90889]
nal
Du nimmst eine Phiole.
Du nimmst ein Paket.
Willow gibt ein albernes Kichern von sich.
Du sagst: mmh, total dumm gelaufen
Willow sagt: wirklich aergerlich...
sag soll ich das logfile nach magier.schmarrn und polizei beschwerden posten
Du sagst: soll ich das logfile nach magier.schmarrn und polizei beschwerden
Du sagst: posten?
Willow nickt zustimmend.
Willow sagt: ja, waer am besten...
Willow sagt: und in polizei.beschwerden dann noch die trigger
Du sagst: jo, mach ich mal! ;)
Du grinst.
finger rod
Rod ist anwesend,
und zwar von: irz108.inf.tu-dresden.de (141.76.2.8) [Dresden].
Passiv seit: 00:01:58
Voller Name: Rod der hoffnungsvolle Anfaenger
Hoppla, ein Geist!
Rasse: Elf,  Gilde: Abenteurer,  Geschlecht: maennlich
Alter: 2d 18:17:48,   Spielerlevel: 1
Datum des ersten Login: Mon, 16. Sep 1996, 21:56:14
E-Mail-Adresse: none
Bisher bereits 1 mal gestorben
Willow sagt: ist naemlich echt ne sauerei - skipper hatte sich ersten
Willow sagt: beschwert, dass da keine kohle drin war in der kiste
[Allgemein:GulDukat] beileid rod
Du nickst zustimmend.
Du sagst: kann keiner sagen, wir haetten ihn nicht gewarnt
[Allgemein:Willow] wir haben ihn noch gewarnt, das brennende dynamit nicht zu
[Allgemein:Willow] nehmen...
Willow nickt zustimmend.
[Allgemein:GulDukat] genau, willow sagt noch: lass es liegen, aber er muss es
[Allgemein:GulDukat] ja nehmen
Willow sagt: sogar auf allgemein ne meldung gemacht
[Allgemein:GulDukat] so ein doespaddel
[Allgemein:Willow nickt Gul zu]
[Allgemein:Willow] immer diese doespaddel mit dem nimm alles ali - tststs...
kwer in dresden
   Liste der Mitspieler vom Sam, 28. Sep 1996, 12:30:21 (4 Teilnehmer)

Rod.............s  Ribana..........s  Sique...........s  Nature..........z

Du sagst: das schlimme ist, es ist nicht der richtige spieler
Du sagst: sondern nur ein opferlamm, level 1
Willow nickt zustimmend.
Du sagst: noch nie gestorben vorher, macht wahrscheinlich nur diesen scheiss
Du sagst: hier
Willow sagt: so isses, ich hab ersten auch schon versucht rauszubekommen, wer
Willow sagt: der erstie ist...
Du winkst winke winke.
heim
GulDukat sagt: Dismissed.
Willow winkt Dir aus der Ferne zu.
(Weidchen Willow) teilt Dir mit: soll ich ihn rausschmeissen?
xlook  rod
Du befindest Dich in dem heiligen Hain der Elfen. Sieben uralte
[...]
Weidchen Willow plant Gemeines (oder wars Geheimes?)..
Der Geist von Rod.
In einer Ecke steht ein Opferstock.
rede willow wenn er jetzt den opferstock aufbricht, ja! ;)
Willow teilt Dir mit: uups, im log stehst du als killer... :(
Du teilst Willow mit: ich poste das logfile! ;)
G>Willow teilt Dir mit: oki!
Willow teilt Dir mit: hmmm... gibts nicht ne kiste, bei der aggressive ratten
Willow teilt Dir mit: erscheinen, wenn man sie oeffnet?

----------- snip hier ------------

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



Re: script-spieler ueberfuehrt (Feuerwehr, 29. Sep 1996, 22:29:22):
~#! rn=Guldukat rt=843908245
~#! tid=843908245
Pervers. Also wirklich.
Magier zu sein weckt die dunkelsten Triebe in den Menschen
 
Feuerwehr (moechte Willow nie allein begegnen)

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



Re: script-spieler ueberfuehrt (Guldukat, 30. Sep 1996, 09:20:35):
~#! rn=Guldukat rt=843908245
~#! tid=843908245

finger rod
Hmm... diesen Namen gibt es in Morgengrauen nicht.

Also nur zum scripten eingeloggt, dieser spieler! 
GD

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



Re: Re: script-spieler ueberfuehrt (Raffi, 30. Sep 1996, 17:26:45):
~#! rn=Feuerwehr rt=844028962
~#! tid=843908245

Jo, Feuerwehr - die abscheuliche Dunkele Seite in uns menschen ....
Aber irgenwie faszinierend.

Gruss
H.
(Konnte mir ein Grinsen einfach nicht verkneifen.)

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



Re^12: Jeder hat das Recht (Schrumpfi, 30. Sep 1996, 19:55:20):
~#! rn=Anakin rt=843738061
~#! tid=843479920

Geht nicht, die Rubrik Kultur ist voll ;-)
Aber eigentlich bin ich da nicht grad traurig drueber.
S.

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



Re^3: script-spieler ueberfuehrt (Fyt, 30. Sep 1996, 22:54:34):
~#! rn=Raffi rt=844097205
~#! tid=843908245

*grins* Naja, Weidhen heisst nicht umsonst 'PK-Willi' :)

Fyt.

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



Nur mal so 'ne Frage. (Annihilator,  4. Okt 1996, 01:56:06):
Also ich habe folgende Frage :

Das Shinto, in dem die Karatekas ueben koennen ist ja wohl allgemein bekannt.
Darin ist soweit ich weiss eine Funktion eingebaut, die bei VERSEHENTLICHEM
Playerkill dem Killer das PK-Flag nicht setzt.
Soweit sogut.
Das heisst aber, dass Playerkill nicht erlaubt, sondern nur geduldet wird,
weil
er ja schliesslich beim ueben mit falscher Vorsicht durchaus passieren kann.

Jetzt zu meiner eigentlichen Frage :
Wenn ein Spieler mit 100% Gildenrating, also im 8.Dan, einen Spieler mit
Gildenlevel
17, also 10 Level unter dem eigenen, mit seinem Besten Schlag angreift,
waerend
er mit jemandem uebt, aber auch noch MEHRERE andere in dem Shinto geuebt
haben,
und ihn mit 3 Schlaegen killt, weil dieser so schnell gar nicht aus dem Shinto
haette fliehen koennen, weil es dermassen gescrollt hat. Hinterher hat der
HLP auch noch so eine dumme Ausrede benutzt, wie er haette doch nur testen
wollen
ob gescriptet wird.
Ich will nun wissen, ob sowas erlaubt ist.

Wenn sowas erlaubt ist, dann habe ich schon Zwei Arten, auf die Ich den
betreffenden
Karateka sterben lasse, ohne dass er was dagegen machen kann. Wenn es nicht
erlaubt ist, will ich, dass er einen PK bekommt.

Annihilator hat ein neues min und mout ... Ich werde Euch schon noch nerven.

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



Re: Nur mal so 'ne Frage. (Bendeigid,  4. Okt 1996, 14:23:39):
~#! rn=Annihilator rt=844386966
~#! tid=844386966
Wenn ein Karateka einen beliebigen anderen Spieler in 3 Schlaegen killt, dann
ist die Gilde eindeutig zu stark. Abwerten! 

Z'par Servu,
            Bendeigid, hat immer noch Probleme, sich die hohen Angriffs und
Verteidigungswerte zu erklaeren :))))

P.S.: Ach so: nicht bierernst nehmen. Aber ich denke, wer im shinto uebt geht
das risiko ein, gekillt zu werden. Selber schuld, sag ich da, und lasst
demnaechst den Killer nebenan stehen. 

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



Re: Nur mal so 'ne Frage. (Ulo,  4. Okt 1996, 15:19:59):
~#! rn=Annihilator rt=844386966
~#! tid=844386966

Hi!
Da der Artikel von Annihilator nun schon ueber 12 Stunden dasteht, ohne dass
sich der Sheriff oder ein EM dazu geaeussert haben, sorge ich nun vorlaeufig
fuer Rechtsklarheit:
ICH ERKLAERE DAS SHINTO SOWIE DIE TRAININGSKAMMERN ZUM RECHTSFREIEN RAUM!

Wer also das Shinto betritt erklaert sich damit einverstanden, dass er das
Shinto ggf. nicht lebend verlaesst. (Diese Regelung ergibt sich daraus, dass
ein genaues Nachpruefen des Sachverhalts ohne byteweises Mitloggen (Snoopen)
der betroffenen Spieler vmtl an widerspruechlichen Aussagen scheitert.

Zur konkreten Schilderung:
 -wenn es im Shinto zu sehr scrollt, kannst Du die Trainingskammern benutzen;
da koennen auch nur Du und Dein Trainingspartner rein. Keine Chance also fuer
ueberraschende Angriffe von Anderen.
 -wenn der hohe Karateka 3 Schlaege gebraucht hat, um zu toeten, sollte man
mit vorsicht auf 50% dagegen sicher sein. Die Vorsicht schuetzt auch wenns
scrollt.

Ulo (hat Kraft ihres Amtes eine Regelung fuer das in Fernwest liegende Shinto
erlassen :)

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



Re: Re: Nur mal so 'ne Frage. (Acrimon,  4. Okt 1996, 23:48:51):
~#! rn=Ulo rt=844435199
~#! tid=844386966
Ui Ulo, schoen jetzt darf ich mir von meinem Lieblingsmagier im Shinto ein
Unmoegliches Schwert clonen lassen, und es ist rechtens!
Danke :-)

Nieder mit Ryne!

Acrimon, der Rote Ritter

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



Re^11: Jeder hat das Recht (Toe,  9. Okt 1996, 07:47:39):
~#! rn=Durian rt=843737867
~#! tid=843479920
es geht doch um die sache, dass eine nachricht gelesen werden koennte...
wenn ich was wichtiges verschicke, dann doch auch verschluesselt, mit
schwarzpapier und als einschreiben - oder eben nicht.
jeder root (und andere) darf meine mails lesen... was soll der geiz?!
toe
P.S.: wenn meine perle mal wieder auf das abteilungsfax nette zeilen schickt
lachen auch alle und ich bekomme keine krise.
...wer muell verschickt sollte auch dazu stehen...

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



Re^12: Jeder hat das Recht (Toe,  9. Okt 1996, 07:50:46):
~#! rn=Tasha rt=843859589
~#! tid=843479920
wer hier nach intimsphaere schreit, sollte sich ein iglu auf groenland
errichten und vergessen dass er/sie/es in beziehung zu anderen menschen lebt.
toe

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



Re^12: Jeder hat das Recht (Engywuck,  9. Okt 1996, 08:57:23):
~#! rn=Toe rt=844840059
~#! tid=843479920
Naja, aber wenn Du jetzt ne Affaere mit Larissa haettest, dann wuerdest Du ihr
die Liebesbriefe vielleicht nicht nur per Einschreiben und kodiert schicken
wollen...
Also Briefgeheimnis prinzipiell ist schonmal nicht schlecht, virtuell oder
real.

Engy*

P.S.: Aehlichkeit mit lebenden oder toten Beispielen waere rein zufaellig ;)

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



Re^13: Jeder hat das Recht (Toe,  9. Okt 1996, 09:25:32):
~#! rn=Engywuck rt=844844243
~#! tid=843479920
ich habe eine affaere mit larissa...
toe, gruebelnd ob er morgen das noch lesen kann...

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



Beschwerde, was sonst (Predator,  9. Okt 1996, 13:22:34):
Eigentlich rege ich mich selten ueber was auf, aber diesmal will ich auch mal
in dieser rubrik was schreiben.
Also ich war doch so verrueckt, den parallelweltkarateork anzugreifen, mit
vo(0), einige kennen ja den trick(der nicht mehr zu funktionieren scheint),
also ich schlaf ein, gehe irgendwann mal ins selige reich der netztoten, und
als ich ich mich wieder einlog haut der zu und weg waren die eps, obwohl das
daemlich viech ja nicht autoattack ist, finde ich sehr aergerlich....naja,
vielleicht liest morgoth oder n anderer interessierter mag das mal und kann
mir sagen ob das so sein muss oder nicht.........

Predator, nur noch selten hier

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



Re: Beschwerde, was sonst (Mahatma,  9. Okt 1996, 14:00:50):
~#! rn=Predator rt=844860154
~#! tid=844860154
Die Monster merken sich bis zu 10 Minuten ihre Feinde, auch wenn man netztot
wird, also haettest Du Dich erst 15 Minuten nach dem Einschlafen wieder 
einloggen duerfen. Das ist also nicht Morgoths Schuld, sondern Deine.

Mahatma

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



Re: Beschwerde, was sonst (Fyt,  9. Okt 1996, 18:44:24):
~#! rn=Predator rt=844860154
~#! tid=844860154
Wer Bugs ausnutzt muss damit leben, dass er eine auf die Muetze kriegt,
wenn der Bug raus ist. Sorry.

Fyt.

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



Re: Beschwerde, was sonst (Morgoth, 10. Okt 1996, 15:29:01):
~#! rn=Predator rt=844860154
~#! tid=844860154
also wenn die zeit, die du in dem netztoten zustand verbracht hast, keliner
war als die 'Hunttime' des orks, ist das schon ok so. der war halt noch sauer
auf dich.
Morgoth

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



Beschwerde (Rantanplan, 15. Okt 1996, 12:18:07):
Huhu !!!

Ich hab leider wirklich etwas zu beklagen, es scheint sich hier
ne neue Tendenz an Spielkultur durchzusetzen, und irgendwie gibt
es niemanden der in der Lage waere was dagegen zu tun.

Wenn ich in einem Raum stehe und jemand kommt rein und nach 
einer minute erscheint bei mir der Emote: XXX fickt Dich.
Oder aehnliches in gelichem Niveau, also ich kenne Ehemmalige-Magier,
da waeren solche Leute nicht so unbehelligt durch die Gegend gelaufen.

Vielleicht sollten sich ein paar Herrschaften auch mal darum kuemmern,
was die Spieler machen und nicht nur superscharf drauf sein, welcher
MAgier mal wieder den Magiervertrag verletzt, das koennt ihr gut 
genug...

Meine Meinung wie immer...


Ran*

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



Hate (Pampers, 24. Okt 1996, 06:04:21):

Zitat Hate:
Hate teilt Dir mit: Du solltest mich nicht ignorieren, sonst ignoriert dich
irgendwann das MUD

Wo bin ich hier, dass ich nicht ignorieren kann, wen ich will.
Ich verbitte mir deratige Nazimethoden, Hate.

Pampers. Ignoriert wen er will.

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



Re: Hate (Hate, 24. Okt 1996, 06:05:13):
~#! rn=Pampers rt=846129861
~#! tid=846129861
Wenn es dabei soweit kommt, dass Du Hinweise nicht mehr mitbekommst, wirst Du
mit den Konsequenzen Deiner Handlungen leben muessen.
Ich habe keine Lust immer erst checken zu muessen, ob mich jemand ignoriert,
wenn ich denjenigen ueber sein Fehlverhalten aufklaere.

Hate.

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



Re: Re: Hate (Pampers, 24. Okt 1996, 06:06:07):
~#! rn=Hate rt=846129913
~#! tid=846129861
Dein Problem, Hate.
Wenn Du Dir mal nen zivilisierten Ton angewoehnen wuerdest,
stuendest Du nicht auf meiner ignoriereliste.

Pampers. Stinksauer.

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



Re^3: Hate (Hate, 24. Okt 1996, 06:13:37):
~#! rn=Pampers rt=846129967
~#! tid=846129861
Es ist leider nicht das erste mal, dass ich Verhaltensweisen wie Deine
ansehen muss. Nachdem ich mehrmals nichts oder nur Hinweise gegeben habe,
bleibt mir irgendwann nichts anderes uebrig, als mal deutlich zu werden/

Wenn Du diese letzten Hinweise dann auch uebersiehst, sind weitere Konse-
quenzen auf Dich selbst zurueckzufuehren. Und das gilt genauso fuer andere.

Hate.

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



Tststs... (Grimmborn, 24. Okt 1996, 06:31:31):

Also, das ist ja wohl die ueberhaupt nicht feine Art. Natuerlich hat jeder
Spieler/Magier/NPC das Recht, wen auch immer er will zu ignorieren. Und in
meinen Augen auch ein Recht darauf, dass der Ignorierte das akzeptiert. Wenn
mich jemand ignoriert und mich das wundert dann kann ich ihm immer noch eine
mail schreiben und fragen, wenn ich das fuer ein Versehen halte erlaube ich
mir auch schon mal ein echo mit einer Frage. Ich kaeme nie auf die Idee,
jemandem verbieten zu wollen mich zu ignorieren, das muss jeder selber wissen.
Wenn das fuer denjenigen Konsequenzen hat ist das sein Problem, damit muss er
fertig werden. Aber das ist kein Grund, ihm das ignorieren untersagen zu
wollen.

Wenn also Hate meint, keiner soll ihn ignorieren duerfen dann soll er bitte
schoen den ignoriere-Befehl patchen ("Sowas kannst Du nicht ignorieren") und
versuchen, das zu begruenden. Aber so nicht.

Jemanden zu ignorieren ist das letzte Mittel hier im mud, um sich jemanden vom
Hals zu halten, mit dem man nichts zu tun haben will. Das ist durchaus
legitim. Wer das zu untergraben versucht dringt meiner Meinung nach ziemlich
tief in die Privatsphaere des anderen ein. Es ist meine persoenliche
Entscheidung jemanden zu ignorieren, wenn der das dann untersagt oder umgeht
fuehle ich mich ihm hilf- und schutzlos ausgeliefert (als Spieler; als Magier
kann ich mich da natuerlich immer noch wehren...), sowas ist einfach nur eine
Sauerei.

Da braucht man sich nicht zu wundern, wenn einem von Spielern Machtmissbrauch
und Willkuer vorgeworfen wird und sie sich beschweren, den Magiern
ausgeliefert zu sein (mehr als spieltechnisch notwendig).

So nicht!

Grimmborn der Atheist


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



Re: Tststs... (Hate, 24. Okt 1996, 06:33:23):
~#! rn=Grimmborn rt=846131491
~#! tid=846131491
Tut mir ja leid, aber solange ich eine muendliche Verwarnung ausspreche,
erwarte ich, dass derjenige zuhoert. Tut der- oder diejenige das nicht,
werde ich mich entweder mit den mir zur Verfuegung stehenden mitteln
bemerkbar machen, oder ich werde bei weiteren Verwarnungen mich nicht
mehr darum kuemmern. Kommt es dann zum Haertefall lasse ich von meiner
Seite nicht gelten, dass der- oder diejenige das nicht mitbekommen haben
will.

Hate.

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



Re: Tststs... (Patryn, 24. Okt 1996, 06:33:27):
~#! rn=Grimmborn rt=846131491
~#! tid=846131491
ich kann dir eigentlich nur recht geben, allerdings muss ich jetzt mal sagen,
was ich von woertern wie macht/machtmissbrauch in einem spiel halte:
bleibt bitte auf dem teppich, die hier so oft zitierte MACHT besteht in der
regel aus wenigen sich leicht unterscheidenden bytes.
man kann gern von regeln sprechen, aber macht?! na ja.

------
patryn

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



Also... (Rantanplan, 24. Okt 1996, 07:04:44):
Ich bemuehe mich mal um so wenig Pathos wie moeglich...

Wenn es dringend ist und man ignoriert wird tut es ein echoto 
allemal.
Die Art der Aussage und der Inhalt waren dann doch eher in der Form
mach es wie ich oder leg Dich mit mir an...
Eine Art der Formulierung wie sie mir auch nicht unbekannt ist.

Ach was solls ich reg mich nru a weng auf...

Ciao 
Ran*

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



Re: Also... (Felagund, 24. Okt 1996, 07:07:07):
~#! rn=Rantanplan rt=846133484
~#! tid=846133484
Ihr koennt euch aufregen...
Wenn ich in RL die Polizei oder ne andere Institution ignoriere, dann hab ich
im Falle, dass die was von mir wollen ja auch Konsequenzen zu tragen. Das was
Hate Pampers mitgeteilt hat war ja wohl nur eine dahingehende Warnung, aber
ihr fuehlt euch ja immer gleich angegriffen.
Naja..Hauptsache was zum diskutieren in der Zeitung ;)
Fela...ignoriert nur Didi ;)

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



Re: Re: Also... (Asmodis, 24. Okt 1996, 07:54:03):
~#! rn=Felagund rt=846133627
~#! tid=846133484
Ich ignoriere Hate uebrigens jetzt auch.
Er weiss schon, warum :)

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



Re^3: Also... (Atoz, 24. Okt 1996, 08:14:43):
~#! rn=Asmodis rt=846136443
~#! tid=846133484
kommt er aus Essen?

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



Re: Also... (Fyt, 24. Okt 1996, 08:31:05):
~#! rn=Rantanplan rt=846133484
~#! tid=846133484

Hm, Hate, wie waere es mit ali 'tm echoto &*' ? Geht auch mit 'tm',
'erzaehle' usw....

Fyt.

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



Re: Re: Also... (Acrimon, 24. Okt 1996, 08:49:23):
~#! rn=Felagund rt=846133627
~#! tid=846133484
Es ist Pampers gutes Recht, Hate zu ignorieren.
Dann wird er nicht mehr durch das, was Hate normal so von sich gibt,
"belaestigt".
Jedoch ist es auch Hates gutes Recht, bei _wichtigen_ Sachen gehoert zu
werden.
Hate sollte also einen dementsprechenden Befehl benutzen:
alias twm echoto $1 Hate teilt Dir Wichtiges mit: $2*

Damit sind dann beide Seiten befriedigt - Pampers hoert Hates uebliches Gerede
nicht, hoert aber trotzdem die wichtigen Sachen.

Acrimon, der Rote Ritter schlichtet zwischen Erzies.

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



Re^3: Also... (Hate, 24. Okt 1996, 08:49:54):
~#! rn=Acrimon rt=846139763
~#! tid=846133484
sh: /dev/audio: cannot create
Ich glaube nicht, dass mein uebliches Gerede schlimmer ist, als das
Geschwalle von so manchem Spieler oder Magier hier. Dazu sage ich einfach
zu wenig.

Hate.

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



Re^4: Also... (Pampers, 24. Okt 1996, 08:50:44):
~#! rn=Hate rt=846139794
~#! tid=846133484
Das zu entscheiden, kann man doch wohl jedem selber ueberlassen.
Wenn es Dir nicht passt, dass Leute den ignoriere Befehl auch auf dich
anwenden, 
schaffe ihn doch einfach ab. 

Pampers. Ignorant.

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



Re^3: Hate (Schrumpfi, 24. Okt 1996, 11:12:25):
~#! rn=Pampers rt=846129967
~#! tid=846129861
Koennt Ihr Eure privaten Streitigkeiten nicht ueber Mail ausmachen? Wer wen
ignoriert oder nicht mag, interessiert mich naemlich kein Stueck.
Schrumpfi. Genervt.

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



Re^4: Also... (Tesla, 24. Okt 1996, 11:16:19):
~#! rn=Atoz rt=846137683
~#! tid=846133484
>kommt er aus Essen?
Heeee, was soll das denn heissen ..
Tesla, grummelnd

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



Stupse ade ?! (Bumbasticus, 24. Okt 1996, 11:55:37):
[0m[33mIch weiss nicht welche Stupse, ich weiss nicht warum, aber etwa 100
sind[0m
[0m[33mmit Armageddon davon gezogen. 100 halte ich fuer die ueblichen
Schwankungen[0m
[0m[33mfuer zu hoch. Wenn mir etwas abgezogen wurde aus mir unbekannten[0m
[0m[33mGruenden, haette ich wohl einen Brief in der Post zu diesem Thema[0m
[0m[33mgehabt.[0m
[0m[33mSelbst die maximalen Schwankungen im Laufe mehrerer Tage machten nie[0m
[0m[33meinen Unterschied von 100 aus. Ausserdem war dann immer eine andere[0m
[0m[33mBezeichnung fuer das relative Auskennen im MG in der Info zu sehen.[0m
[0m[33mIch weiss zwar nicht wie, aber mich interessiert vor allem, welche[0m
[0m[33mStufenpunkte sich davon geschlichen haben. Ohne dieses Wissen kommt[0m
[0m[33mein systematischer Aufbau meines Spielcharakters voellig aus[0m
[0m[33mder Bahn und[0m
[0m[33mmacht fuer mich eben diesen Spielcharakter unbrauchbar.Andererseits
wuerde[0m
[0m[33mein Nachfolgecharakter (i.a. Zwietie bezeichnet)[0m [0m[33mzu sehr an
dem kleben, was[0m
[0m[33mdieser, mein Erstcharakter bisher geleistet[0m [0m[33mhat. Dieser
Umstand wuerde mich[0m
[0m[33msehr stark daran hindern, weiter[0m im MG aktiv zu sein. 
Das sehe ich nicht als Trotzreaktion, sondern aus den, von mir zu erklaeren
versuchten Gruenden, eine schwer zu ueberwindende Huerde. Im Uebrigen
habe ich von anderen Spielern erfahren, dass auch bei anderen Stupse
verloren gegangen sind, ohne jedoch genaue Zahlenangaben machen zu koennen.
Ich bitte deshalb die Magier mit dem meisten Ein- und Durchblick, dieser
Sache einmal nachzugehen.
              Bumbasticus, erstie, alleinigie und eizigie

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



Re: Stupse ade ?! (Grimmborn, 24. Okt 1996, 16:06:36):
~#! rn=Bumbasticus rt=846150937
~#! tid=846150937

Weisst Du was? Wenn der Artikel wichtig sein sollte solltest Du ihn vielleicht
nochmal _anstaendig_ schreiben. Vermutlich geht es vielen (wichtigeren) Leuten
wie mir: Die mehr als seltsame Form Deines Artikels fuehrt dazu, dass man ihn
einfach ueberliest...

Dies nur als kleiner Tip, die Form spielt eben doch eine Rolle.

Grimmborn der Atheist


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



Re: Stupse ade ?! (Boing, 24. Okt 1996, 16:12:14):
~#! rn=Bumbasticus rt=846150937
~#! tid=846150937
Ich konnte zwar nicht viel im Gewirr von merkwuerdigen Zeichen erkennen,
aber ich denke die Antwort zu Deiner Frage ist in der Rubrik
gilden.bierschuettler erlaeutert.
Daraus folgt: Erst lesen, dann mosern
  Boing

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



Re: Re: Stupse ade ?! (Bumbasticus, 24. Okt 1996, 16:53:30):
~#! rn=Grimmborn rt=846165996
~#! tid=846150937
Ich glaube, hier ist eine Entschuldigung faellig. Bei mir war nicht solch
ein Zeichengewirr auf dem Bildschirm zu sehen. Um so groesser mein Dank,
dass trotzdem einige sich die Muehe gemacht haben, den Inhalt zu
entwirren.
Das zweite ist, das ich die Stufenpunktverluste in de r Rubrik
Bierschuettler nicht herausgelesen habe, also bitte ich auch in diesem
Punkt um Entschuldigung.
Vielen Dank auch noch fuer die mails
             Bum*

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



Re^4: Also... (Mango, 24. Okt 1996, 17:33:28):
~#! rn=Hate rt=846139794
~#! tid=846133484



             Einbildung ist auch ne Bildung.



Mango, langsam genervt.



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



Re^5: Also... (Rantanplan, 24. Okt 1996, 18:04:20):
~#! rn=Mango rt=846171208
~#! tid=846133484
Hi !

Ich bin nicht der, der ueber andererleuts geschwalle richten sollte
(Didi mal ausgenommen)

Eigentlich ist es keine rechtfertigung zu sagen, ich rede
nicht so viel Muell wie andere deswegen darf ich nicht ignoriert werden.
Jeder darf hier jeden ignorieren solange und so oft er will, egal
wie "wichtig" er ist.

Fertig...

Ran*

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



Re^6: Also... (Pilgrim, 24. Okt 1996, 18:24:18):
~#! rn=Rantanplan rt=846173060
~#! tid=846133484
Also,
ich misch mich sicher nicht in den Streit zwischen 2 (3,4,..) Magiern
ein, aber ...

ich dag nur folgendes...
Natuerlich hat jeder das recht (in RL ;-)): ignoriere feuerarlam  zu
machen, aber dann soll man sich auch nicht wundern, wenn man mal bei einem
Brand umkommt ...

Pilgrim
(spricht mal in bildern)

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



Re^7: Also... (Morgoth, 24. Okt 1996, 18:25:33):
~#! rn=Pilgrim rt=846174258
~#! tid=846133484
FEUERWEEEEEEEHR !!!

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



Re^9: Also... (Morgoth, 24. Okt 1996, 18:29:35):
~#! rn=Pilgrim rt=846174419
~#! tid=846133484
also ich glaube das der artikel von hate in m.etikette auch hier gilt. die IP
ist definitiv nur von magiern zu erfragen, also sollte die auch hier nicht
rumstehen ;-)
M

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



Re^10: Also... (Pilgrim, 24. Okt 1996, 18:32:42):
~#! rn=Morgoth rt=846174575
~#! tid=846133484
Ups .... DAS ist keine MAGIERrubrik ... also geloescht ...

hier nochmal, was ich eigentlich schreiben wollte ...


finger feuerwehr

Feuerwehr ist nicht anwesend. 
...
Bisher bereits 12 mal gestorben   


was meinst du, warum da ein RL stand ;-) ...
Feuerwehr ist hier schon (zu) oft umgekommen ;-)

Pilgrim

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



Re^7: Also... (Acrimon, 24. Okt 1996, 19:05:53):
~#! rn=Pilgrim rt=846174258
~#! tid=846133484
Also, hier ist NICHT RL!
Und in RL gibt es einfach keine Moeglichkeit zu ignorieren.

Also sei froh darum, dasz es im MG geht, und dasz MG sich nicht an RL
orientiert.

Acrimon, der Rote Ritter

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



Re: buggt das erhoehen?? (Methedras, 25. Okt 1996, 18:53:34):
~#! rn=Warrior rt=846234315
~#! tid=846234315
It's no bug, it's a feature. (Oder so aehnlich)

        Das Ende des Nebelgebirges und nicht des MorgenGrauens: Methedras

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



Re^8: Also... (Feuerwehr, 29. Okt 1996, 19:39:26):
~#! rn=Morgoth rt=846174333
~#! tid=846133484
Ich halt mich da ganz raus.

Feuerwehr (ignoriert niemals Feueralarme (jedenfalls hier))

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



mrufe ? tm <magier> ? (Orktjun, 13. Nov 1996, 17:55:36):

also, ich wollte ja diese diskussion nicht wieder anleiern, aber ich muss es
einfach.
es ist erschreckend, wie taub unsere magier sind.
ich stehe hier vor einem problem, wo mir die anderen spieler nicht
weiterhelfen koennen.
also rufe ich einen magier an, den ich kenne. ->NIX
dann versuche ichs mit nem anderen mag. ->NIX
ich probiere noch einige mags durch. ->NIX
ich versuchs ueber mrufe. ->NIX
ich teile wieder einem einzelnen mag was mit. ->NIX
keiner dieser magier hat sich bequemt irgendeine reaktion zu zeigen.
keiner dieser magier hatte ein 'weg' an.

soll man da nicht zu viel kriegen ?

OrkTjun  ist zusammengebrochen.


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



Re: mrufe ? tm <magier> ? (Loco, 13. Nov 1996, 17:59:28):
~#! rn=Orktjun rt=847904136
~#! tid=847904136
Da bastelt man fuer die Spieler etwas, gibt sich Muehe.
Kennt den Code einiger anderer Gegenden, aber natuerlich nicht aller.
Bringt hier und da einen Bug in Ordnung.
Muss aber vielleicht auch mal was ausserhalb vom Mud machen.
Ist trotzdem eingeloggt, um in wirklich wichtigen Faellen erreichbar zu sein.

Und dann liest man so einen Artikel.

Soll man da nicht zuviel kriegen?

Loco,  ist lang genug dabei, um nicht so schnell zusammenzubrechen.

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



Re: Re: mrufe ? tm <magier> ? (Hadra, 13. Nov 1996, 18:12:59):
~#! rn=Loco rt=847904368
~#! tid=847904136
oktjun hatte extra erwaehnt, dass keiner ein weg gesetzt hatte. wenn ich mich
revht erinnere, war genau dieser befehl dazu vorgesehen um trotz eingeloggt
seins auf zeitweise koerperliche oder geistige abwesendheit hinzuweisen.

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



Re: mrufe ? tm <magier> ? (Rochus, 13. Nov 1996, 18:30:07):
~#! rn=Orktjun rt=847904136
~#! tid=847904136
Also, damit das ein fuer alle mal klar ist:
Wenn ich nicht SOFORT antworte, bedeutet das,
dass ich gerade etwas anderes zu tun habe.
Ich halte es fuer absolut ueberfluessig, Leuten, die dann noch
zig mal durchs ganze Mud rufen und den Wecker 100 mal klingeln lassen,
explizit noch erklaeren zu muessen, DASS ich keine Zeit habe - das
sollte man dann eigentlich schon selber merken.
Ich glaube ich sollte mal meine TODO-Liste in den Plan aufnehmen,
damit mal klar wird, warum ich so selten Zeit habe...

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



Re: Re: mrufe ? tm <magier> ? (Grimmborn, 13. Nov 1996, 18:42:18):
~#! rn=Rochus rt=847906207
~#! tid=847904136

Tststs, das ist aber naiv, Rochus. Den Plan sehen doch nur Seher+...
Also, wenn ich auf sowas nicht antworte ist die Sache klar: Ich will nicht
antworten. Die Gruende dafuer gehen primaer keinen was an. Ich kann mich nicht
erinnern, dass im Magiervertrag was steht in der Art: "Wenn ein Spieler nach
Dir speziell oder nach einem Magier im allgemeinen ruft hast Du sofort zu
springen.". Das waere mir sicher aufgefallen. Wie heisst das so schoen auf
Formularen? Es besteht kein Rechtsanspruch. Und damit muss man als Spieler
leben. Das gibt Frust, das gibt schlechte Laune, das gibt Wut und das alles
tut mir ja auch in der Seele weh...

Naja, gluecklicherweise gibt es ja auch andere Magier...

Grimmborn der Atheist


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



Re: Re: mrufe ? tm <magier> ? (Rochus, 13. Nov 1996, 19:09:36):
~#! rn=Rochus rt=847906207
~#! tid=847904136
PS: mrufe ist nur fuer absolute NOTFAELLE gedacht, wenn
selbst teile mit und die Kanaele nicht mehr funktionieren.

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



Re^3: mrufe ? tm <magier> ? (Orktjun, 13. Nov 1996, 19:34:43):
~#! rn=Rochus rt=847908576
~#! tid=847904136
ich habe so ziemlich jeden magier einzeln angesprochen. das stand eigentlich
auch so im artikel.


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



Re^3: mrufe ? tm <magier> ? (Ulo, 13. Nov 1996, 19:36:14):
~#! rn=Rochus rt=847908576
~#! tid=847904136
vielleicht sollte man einbaun, dass leute mit postmuetze kein 'mrufe'
benutzen duerfen ...
Ulo.

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



Re^4: mrufe ? tm <magier> ? (Pilgrim, 13. Nov 1996, 20:10:06):
~#! rn=Orktjun rt=847910083
~#! tid=847904136
Nur mal ne Vermutung ...

vielleicht wollte Dir auch keiner Antworten .... ???

Pilgrim
denkt: das Leben ist hart, aber ungerecht .. ;-) )

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



Re^5: mrufe ? tm <magier> ? (Mupfel, 13. Nov 1996, 20:59:58):
~#! rn=Pilgrim rt=847912206
~#! tid=847904136

Ganz abwegig ist das nicht. Manchmal kommt hier echt das 'ach der schon
wieder. machst du's? ich nicht'-Feeling auf....

-mupfel- (leute macht euch unsichtbar, dann spricht euch auch keiner an :-)

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



Re: mrufe ? tm <magier> ? (Sushi, 13. Nov 1996, 21:42:12):
~#! rn=Orktjun rt=847904136
~#! tid=847904136
Heul nicht rum, es haette noch schlimmer kommen koennen - z.B. haette ich Dir
helfen und das Mud damit crashen koennen.

Sushi  -  praktizierender Wurstmagier.

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



Re^3: mrufe ? tm <magier> ? (Asmodis, 14. Nov 1996, 14:29:36):
~#! rn=Grimmborn rt=847906938
~#! tid=847904136
Hmm, das ist wohl dasselbe, wie bei manchen Leuten, die glauben, dass
Seher Spielern unbedingt und jederzeit helfen muessen. Ich kann mich
nicht erinnern, je einen Vertrag hier unterschrieben zu haben, der
sowas besagt.
Also wenn jemand das naechste mal sich beschwert, weil ich ihn auf
ne falsche Faehrte gelockt habe, als er die Zt-Liste durchging, 
bitte daran denken :)

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



Re: Ohne Worte (Zuerileu, 14. Nov 1996, 22:59:18):
~#! rn=Twiggy rt=847968251
~#! tid=847968251
HI,
Ja Das ist ein Artikel von Mir, er wird zwar manchen zum gluehen bringen aber
das ist mir egal.
Nun, wenn ich helfen kann dann gehe ich meistens helfen. Es kommt aber jeweils
auf den Ton der anfrage drauf an. Also wenn ich ein Mrufe hoere wie "Magier zu
mir ich steck beim Flugzeug im xy-Quest!" dann, verspuere ich nicht die
geringste Lust
dorthin zu springen und irgentwelche Probleme zu loesen. Wenn dann wuerd ich
mir ein freundliche Fragestellung wuenschen, wo auch ersichtlich ist wo das
Problem liegt.
Oder dann teilt dir jemand mit das er in einem Quest nicht mehr weiter kommt
ob ich ihm helfe, obwohl er genau weiss das ich dies nicht darf und genug
andere Leute hier waeren die er fragen koennte.
Oder er teilt mir mit das er den betreffenden Zaubertrank nicht finden konnte
und das hier doch einer liegen muss nach der und der Liste. Naja, es giebt
aber auch immer mal Tage wo ich einfach keine Lust verspuehre zu helfen oder
anderes zu tun habe.
Sitz ich gerade im Editor, bin ich nicht immer als abwesend gekenzeichnet oder
ich bastle gerade etwas im Hindergrund. Ich denke nicht das es immer
boeswillig ist wenn ein Magier nicht immer auf Fragen und Problemen reagiert.
Dazu sind wir freiwillig
hier um fuer euch neue Welten und Regionen zu programmieren. Und das ist harte
und anstregende Arbeit. Teilweise hoert man aber mehr zorn und wut als
dankbarkeit. Ist teilweise ein ziemlicher absteller!
Nun, ich musste auch erst Magier werden um zu verstehen was fuer arbeit
dahinter steckt und das man nicht immer lust hat zu springen wenn man gerufen
wird, auch wenn es mal wichtig sein koennte.
Das Problem ist doch auch, umso mehr mann wegen unnoetigen Problemen gerufen
wird, umsoweniger geht man mal schauen wo die Probleme liegen wenn wieder mal
jemand ruft!

Tschuess Zuerileu


Ps: Typos und sonstige Fehler sind beabsichtigt, wenden sie sich an ihren
Psychiater wenn sie Probleme damit haben!

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



Re: Re: Ohne Worte (Bloodyharry, 15. Nov 1996, 09:12:19):
~#! rn=Zuerileu rt=848008758
~#! tid=847968251
Ich moechte da vieleicht noch hinzu fuegen, dass man als Magier NICHT
allwissend ist und dahernicht sofort eine Loesung fuer ein Problem finden
kann. Gerade bei neueren Gegenden/Questen hat man da so seine Probleme mit, da
man sich eventuell erst einarbeiten muesset. Besser waere es, eine
Fehlermeldung abzusetzen und das ganze von der richtigen Stelle, dem
Programmierer dieser Stellen, bereinigen zu lassen. Gibt dann meisstens
weniger Fehler und ist auch  ueberhaupt besser.
Wenn jetzt gleich gesagt werden sollte, ich muesse das aber alles kennen und
koennen - lasse ich mich gerne als Wurstmagier titulieren, denn ich habe mit
vielen Stellen im Mud meine Probleme bzw fehlende Kenntnis.
Ich helfe ja ganz gerne aber viel Zeit habe ich nicht und nutze diese
eigendlich viel lieber um neue Sachen zu proggen. Auf meiner Insel fehlen halt
noch so einige Teile und auch Queste.
Also lieber die eingebauten funktionen fehler, typo und idee nutzen, Ruhe
bewaren, stabiele Seitenlage einnehmen und auf Hilfe warten die evtl etwas
dauern koennte. Was sind schon Tage?

bh

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



Re: mrufe ? tm <magier> ? (Quillian, 17. Nov 1996, 15:48:00):
~#! rn=Orktjun rt=847904136
~#! tid=847904136
Evtl. liegt das an DIR? Ich hab zum meinen Spielerzeiten beinahe immer unso
sofort Antwort bekommen.

Quillian

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



Re: Re: Stupse ade ?! (Critias, 18. Nov 1996, 11:10:30):
~#! rn=Grimmborn rt=846165996
~#! tid=846150937
Hauptsache sticheln und rummotzen oder wie? Diese aufdringlichen
Zurechtweisungen finde ich recht daemlich (nicht persoenlich zu nehmen,
Grimm*). Ich denke jeder kann hier seinen Artikel schreiben wie er moechte, ob
DU ihn dann liest ist ja nur Dein Problem!

Critias. Mag keine DauerBesserWisser ;)

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



Re: Muell in Witze (Yantro, 25. Nov 1996, 09:22:32):
~#! rn=Yantro rt=848909408
~#! tid=848909408
[Verlegt von etikette, Qitess, 25. Nov 1996, 09:20:10]:

so. ich finde es nicht nett einfach meine artikel zu verlegen.

qi.

P.S.: und weil dies eine beschwerde ueber die magierwillkuer ist...;)...
gehoert der artikel in etikette. alle die meine erste reply lesen wollen : sie
steht in schmarrn


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



spielermanipulation (Guldukat, 11. Dez 1996, 15:32:17):

Ich moechte hier eine spielermanipulation schaendlichsten ausmasses melden

Jemand, wahrscheinlich, hoeschstwahrscheinlich sogar ein magier, hat bei
tantehydra rumgefummelt und die IDs verbogen:

xcall tantehydra->QueryProp(P_IDS)
({"Container","Living","Interactive","tantehydra","\nzootier","affe","schimpan
se","Tantehydra"})

Dieses schaendliche Vergehen pranger ich an und verurteile diese manipulation
entschieden.

GD

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



Re: spielermanipulation (Anatol, 11. Dez 1996, 15:38:15):
~#! rn=Guldukat rt=850314737
~#! tid=850314737

Tja, lern' daraus und frag' vor dem Zappen den Filename ab. 
DEN darf naemlich nur einer aendern - und derjenige fragt vorher 
ganz genau, in wessen Auftrag er das tun soll :-)

Anatol


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



Womit hab ich das verdient? (Tantehydra, 11. Dez 1996, 15:44:57):




Hi,


das prangere ich an:

Heute am 11.12.96 rannte ich voller Hoffnung auf eine Levelerhoehung in die
Gilde in Port Vain, wollte meine muehsam auf der Hochebene ermetzelten
Erfahrungpunkte umsetzen um endlich auf Level 2 aufzusteigen. Nichts
schlechtes ahnend wurde ich dort kurzerhand von einem Magier auf sehr
unruehmliche Art und Weise getoetet, was mich doch mein ganzes Kontingent an
Erfahrungpunkten kostete. Ich wollte ihn darauf zur Rede stellen und bin noch
zwei weitere Male in die Abenteurergilde gelaufen und wurde jedesmal erneut
getoetet. Ich hoffe inbruenstigst, das der verantwortliche Magier zur
Rechenschaft gezogen wird.



TanteHydra in Trauer um ihre Erfahrungspunkte.






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



Re: ignorieren (Sunflower, 18. Dez 1996, 13:02:37):
~#! rn=Qitess rt=850910405 rg=polizei.beschwerden
~#! tid=850910405
den ignoriere befehl kann man meines erachtens nicht umgehen !

ausserdem meckere ich nicht, sondern ich versuche mich zu Rechtfertigen !

Weil ich so langsam aber sicher die schnauze voll habe von irgendwelchen
"Typen" noch auf meine Milamber vergangenheit rumhacken.

Sollte iuch Qitess irgendwie zu nahe mit dem "ignoriere umgehen" getreten sein
so entschuldige ich mich oeffentlich bei der Polizei, Qitess und all denen die
meinen ich
sollte mich bei Ihnen entschuldigen !


                    --=== bluemchen ===--

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



Re^3: ignorieren (Kretek, 18. Dez 1996, 13:13:58):
~#! rn=Qitess rt=850910774 rg=polizei.beschwerden
~#! tid=850910405
Also, Ihr koennt Euch von mir aus gerne die Schaedel einhauen, wenn Ihr 
das unbedingt wollt. Ich wollte nur sagen, dass ich es ziemlich schwach
finde, wenn jemand sich entschuldigt (noch dazu oeffentlich!), und der andere
ihm mit so 'ner Abfuhr kommt! Wenn man schon zu schnoeselhaft ist, um 
sowas zu akzeptieren, dann sollte man das dem Betreffenden per Mail oder
"teile mit" sagen, aber nicht in der Zeitung rumschwallen!
Mensch, Ihr habt doch echt 'nen Schuss! Loescht Euch doch, wenn's Euch zu
bloed ist hier!


| /  |\  |--  ---  |--  | /
|<   |/  |-    |   |-   |<
| \  |\  |--   |   |--  | \

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



Re^4: ignorieren (Oetti, 18. Dez 1996, 13:16:23):
~#! rn=Kretek rt=850911238 rg=polizei.beschwerden
~#! tid=850910405
Ach Kretek halt doch die Klappe, Du Magier Du doofer, bloeder
Idiot, Du warst es doch der mich damals im Sandkasten immer 
mit der Schippe gehauen hat.
Und als ich Dich dann ignoriert habe, hast Du mir immer
benutzte Kondome an den Kopf geschmissen, und ich hab immer gesagt
lass das, aber nieeee hast Du auf mich gehoert, jawoll.

Und ueberhaupt sind alle doof und stinken und so !!!


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



Re^4: ignorieren (Grimmborn, 18. Dez 1996, 14:28:29):
~#! rn=Kretek rt=850911238 rg=polizei.beschwerden
~#! tid=850910405
Ohne viel naeher auf den Streit eingehen zu wollen: So eine Entschuldigung
(aus der durchaus rausklingt "Leck mich doch am Arsch") wuerde ich auch nicht
annehmen, das waere denn doch zu einfach.
Natuerlich laesst sich das ignorieren umgehen, Sunflower. Erstens wird beim
echoto kein ignoriere abgefragt und selbst wenn, spaetestens mit tell_object
kann man das umgehen. Und wer meint, er muesse ein ignorieren umgehen ist ein
ganz armes Wuerstchen (und in meinen Augen auch so ziemlich scheisse), egal ob
er nun Hate, Sunflower oder Milamber heisst. Fuer mich ist das ziemlich
massive Noetigung.

Grimmborn der Atheist

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



Re: Re: ignorieren (Asmodis, 18. Dez 1996, 18:14:40):
~#! rn=Sunflower rt=850910557 rg=polizei.beschwerden
~#! tid=850910405
Hmm, es stimmt schon, man ignoriert jemanden nicht umsonst.
Deshalb sollten AUCH MAGIER nicht versuchen, ihn trotzdem
irgendwie zu nerven.
Sonst koennte man den Befehl auch abschaffen.

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



Es reicht! (Tomaso, 28. Dez 1996, 18:57:18):
Wie jedem Karateka ist es mir auch schon oefters passiert, dass jemand sich
einfach am Geld vergreift, dass wir in der regel in der Gilde deponieren.
Was heute passiert ist schlaegt jedoch dem Fass den Boden aus. Wim klaute
einfach 50000 muenzen, waehrend ich 30 Sekunden tanken war. Ich hab ihn noch
dabei erwischt, aber er hat das Geld trotz wiederholter Aufforderung nicht
wieder-
gegeben.
Ich fordere hiermit, dass gegen solche Faelle eine STrafe verhaengt wird,
ansonsten werde ich diesen Lump selber zur Rechenschaft ziehen
Tomaso

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



Re: Es reicht! (Asmodis, 28. Dez 1996, 19:08:48):
~#! rn=Tomaso rt=851795838 rg=polizei.beschwerden
~#! tid=851795838
Hmm, es ist wohl nur ein ungeschriebenes Gesetz, dass man hier nichts vom
Boden aufhebt, ohne Anwesende zu fragen.
Also haette keiner eine Handhabe, eine Strafe gegen Wim zu verhaengen.
Aber in solchen Faellen hab ich ja auch schon SPieler gekillt :)

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



Re: Es reicht! (Annihilator, 29. Dez 1996, 15:53:16):
~#! rn=Tomaso rt=851795838 rg=polizei.beschwerden
~#! tid=851795838
Hi

Hier mal ein Statement von mir, der ja schon des oefteren an gewisse
Mg-Gesetze verstossen hat ... ja micro ich liebe dich immer noch ...
ich bin voll und ganz deiner meinung tomaso und beteilige mich gern an
eine selbstjustiz gegen derartige diebe ... es stimmt zwar, dass
wir Karatekas oft zuviel Geld haben, aber das tanken beim ueben ist
schliesslich auch nicht direkt billig !
also wenn mal wieder sowas ist ... und auch wen catweeazle mich
inzwischen hassen wird, ich beteilige mich gern an racheakten gegen
"Aus-der-Karategilde-Geld-Klauer" ...
viel spass noch beim mudden

Dieser Artikel enthaellt moeglicherweise Beweise, die Catweazle ruhig
vor Gericht gegen mich verwenden kann.

Annihilator hat's mal wieder geschafft. Ja Catweazle bestraf mich !

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



Jawohl es reicht..... (Katweazle, 30. Dez 1996, 02:22:01):
Loescht doch endlich mal Annihilator...der arme Micro....wie kommt er dazu
sich immer quaelen zu lassen
also Ihr Verantwortlichen...weg mit Annihilator
Vielen Dank im vorraus!!!!!

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



Re: Es reicht! (Jasper,  2. Jan 1997, 09:45:28):
~#! rn=Tomaso rt=851795838 rg=polizei.beschwerden
~#! tid=851795838
kill ihn doch einfach. mach dir einen pk-xtie :)

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



Re: Re: Es reicht! (Zuerileu,  6. Jan 1997, 04:30:36):
~#! rn=Jasper rt=852194728 rg=polizei.beschwerden
~#! tid=851795838
Hi,
Aemm evtl. eine doofe Frage und erloest euch nicht von den Problemen mit
boesen, boesen Dieben (Ich sage es ja schon immer, wo bleibt die Diebes-Gilde!
=:) ) aber warum deponiert ihr eigentlich jeweils soviel Geld in eurer Gilde
?. Aemm meine kein Wunder das teil Spieler der versuchung nicht wiederstehen
koennen. Ich sage nun nicht das ich es unterstueze ! =:)

Tschuess Zuerileu, in DOM SATANAS !

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



Re^3: Es reicht! (Ulo,  7. Jan 1997, 20:02:18):
~#! rn=Zuerileu rt=852521436 rg=polizei.beschwerden
~#! tid=851795838
wie waere es btw, das geld nicht in der gilde liegenzulassen, sondern die
trainingskammern neben dem shinto mithilfe eines zweities als schliessfach zu
missbrauchen?

Ulo (hat das nie vorgeschlagen :)

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



Re^4: Es reicht! (Mango,  7. Jan 1997, 20:21:30):
~#! rn=Ulo rt=852663738 rg=polizei.beschwerden
~#! tid=851795838



meines erachtens nach ein ding der unmoeglichkeit.


Mango, der da schon Geld hat verschwinden sehen.



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



Re: Es reicht! (Fyt,  7. Jan 1997, 22:10:42):
~#! rn=Tomaso rt=851795838 rg=polizei.beschwerden
~#! tid=851795838

Hm, hau die Leute doch um, ich plaediere in diesem Fall auf Notwehr.
Frag mal Willow als kompetenten Magier zu dem Thema...

Fyt.

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



Re^4: Es reicht! (Marita,  9. Jan 1997, 01:17:27):
~#! rn=Ulo rt=852663738 rg=polizei.beschwerden
~#! tid=851795838
Huch, sind die 3 Monate schon wieder rum? :-)
Ok, jetzt der konstruktive Teil. Zum Thema Diebe ist mir gerade die Idee
gekommen, evtl. put_and_get (oder wie hiess das doch?) so zu
veraendern, dass man in den ersten (z. B.) 4 Minuten nach dem Fallenlassen
(bzw. Sterben, was aufs selbe rauskommt) das Zeug nicht ohne weiteres
nehmen kann, also beim 1. versuch eine Meldung kommt: "Das gehoert aber Xyz,
lass das besser liegen!" und beim 2. mal das ganze klappt und eine shout()-
Meldung kommt "Abc hat Xyz gerade
85253 Muenzen geklaut!"
Was ich sagen will, ist: Nein, fallengelassenes Eigentum gibt es nicht, aber
notorische Diebe sollten (zumindest wenn sie vorher gewarnt wurden) durchaus
bekannt gemacht werden - gleiche Waffen fuer alle, denn es steht nirgens dass
man GEZWUNGEN ist, notorischen Dieben bei Quests weiterzuhelfen...
Ok, das war jetzt brainstorming, also 80 % Ausschuss?

Mein (x+1)ter Beitrach
Marita

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



Re^5: Es reicht! (Smurf,  9. Jan 1997, 09:10:21):
~#! rn=Marita rt=852769047 rg=polizei.beschwerden
~#! tid=851795838
Sehr gute Idee. Shout wuerde ich aber nicht nehmen, es reicht wenn der
alte Besitzer es mitkriegt. Der koennte dann mit irgendeinem Spezialbefehl
("polizei" zB) die Meldung veroeffentlichen.

Es gibt ja auch legitime Situationen, in denen ich was fuer einen anderen
ablege, ohne dass der gleich ein Dieb ist...

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



Re^5: Es reicht! (Ulo,  9. Jan 1997, 11:20:35):
~#! rn=Mango rt=852664890 rg=polizei.beschwerden
~#! tid=851795838

Wenn der andere Speiler laenger als 60 Sekunden die Kammern verlaesst, kann
es vorkommen, dass der Wartende rausgeworfen wird, und alle Gegenstaende am 
Boden als Spende an die Karetegilde gehen ( Fundsachen gibts nicht :)
Fuer Lag also nicht empfohlen. Ansonsten besteht keine Gefahr.

Ulo (hats gerade ausprobiert)

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



Re^5: Es reicht! (Pra,  9. Jan 1997, 16:46:12):
~#! rn=Marita rt=852769047 rg=polizei.beschwerden
~#! tid=851795838
Ihr habt doch einen Hau.
Passt doch einfach besser auf euer Geld auf.

Pra. Laesst sein Portemonnaie auch nicht ueberall 'rumliegen.

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



Jetzt reichts (Wim, 11. Jan 1997, 04:01:05):
~#! rn=Tomaso rt=851795838 rg=polizei.beschwerden
~#! tid=851795838
als einleitung sollte ich erstmal sagen, es waren nicht 50000 muenzen sonder
65000!, die irgendwo besitzerlos in der gegend rumlagen. 5 min zum pinkeln und
schon stehen da irgendwelche seher mit ihren vollstreckern rum, die einen
umhauen wollen..danach wuerde jeder sich schnell verabschieden, die kohle
mitnehmen und auf stur schalten. hallo isnogood! 
aber was sind denn schon ein paar muenzen gegen eine tomaso der zugeblich
mittels eines triggers vor der zwergenkappelle steht, um einen (damals
zumindest noch) spieler zu toeten? mitnehmen von items, voellig straflos
erlaubt. aber playerkill??? ich denke mal, der typ sollte sich an die eigene
nase fassen und nachdenken, ob seine trigger-geschichten legal sind. 'lege
irgendwo kohle hin, nimm kohle, geh tanken' und sich dann beschweren'
  ein saurer wim, knapp dem tode entkommen

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



Re: Jetzt reichts (Jasper, 14. Jan 1997, 22:52:31):
~#! rn=Wim rt=852951665 rg=polizei.beschwerden
~#! tid=851795838
also das lernen in der karategilde per skript, gehoert zur klassischen
karateka ausbildung, profis legen natuerlich nicht die muenzen einfach auf
den boden, sondern stellen einen xtie in die kneipe (auch ulos kneipe genannt)
und spendieren dem xtie etwas.
aeh dem karate trainierenden.
dazu laesst man den xtie erst mal durch das suche 20 zts um die staerke auf
max zu bringen-skript laufen damit der auch genug geld dabei hat, und man
nicht alle halbe stunde lofwyr plaetten muss.
allerdings... oh zombie is up..**

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



Re: Re: Jetzt reichts (Irix, 16. Jan 1997, 15:10:22):
~#! rn=Jasper rt=853278751 rg=polizei.beschwerden
~#! tid=851795838
Vergiss nicht deinem XTie ein paar KL-Scripts zu spendieren, sonst hat
er, dank Etwas, bald kein Geld mehr. Und ein bisschen ZT's auf andere
Stats waere auch nicht schlecht...

L.F.

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



Magier und ihre Sorgen! (Tunixgut, 16. Apr 1997, 07:43:21):
Ich glaube, man sollte in den Magiervertrag so 'n Passus reinschreiben wie
"Das Leben kann grausam sein - Nicht alle wissen Deine Arbeit zu wuerdigen.
Wenn Dir diese Einsicht zu spaet kommt, bitte klemme nicht Deine Gebiete ab,
sondern stelle Dich in die Abenteurer-Gilde und rufe laut 'Keiner hat mich
lieb'!"

TuNixGut - findet dererlei Verhalten einfach nur albern....

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



Re: Magier und ihre Sorgen! (Leusel, 16. Apr 1997, 09:44:17):
~#! rn=Tunixgut rt=861169401 rg=polizei.beschwerden
~#! tid=861169401
Hiho!

> TuNixGut - findet dererlei Verhalten einfach nur albern....

Gut das Du Dich sooo erwachsen verhaelst und nicht direkt in Weinkraempfe
ausbrichst, nur weil eine Quest und ein paar Gebiete temporaer abgehaengt
werden. Ich koennte es natuerlich sehr gut verstehen, wenn Du Dich da-
rueber aufregen wuerdest (schliesslich haben die Magier kein Recht die
von ihnen geschriebenen Programme einfach nicht mehr der Oeffentlichkeit
zur Verfuegung zu stellen). Aber so ein Kleingeist bist Du ja Gott sei
Dank nicht.

Leusel, der eigentlich nichts zu dem Thema schreiben wollte.

P.S.: Wenn man diese Diskussion verfolgt scheint es unter den Spielern
      wohl normal zu sein, dass wirklich alles erlaubt ist, um hier
      nach oben zu kommen. Oder haben die, die anderer Meinung sind
      sich nur noch nicht zu Wort gemeldet?

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



Re: Re: Magier und ihre Sorgen! (Tunixgut, 16. Apr 1997, 09:57:47):
~#! rn=Leusel rt=861176657 rg=polizei.beschwerden
~#! tid=861169401
Pah....

Sicherlich haben die Magier das recht ihren Scheiss bei jeder Gelegenheit
abzuhaengen, ich finde bloss, wenn sie auf diese Weise ihren Protest zum
Ausdruck bringen, dann haben sie irgendwo etwas falsch verstanden - ich dachte
immer, manche Mags proggen, damit sich Spieler daran erfreuen koennen, und
nicht, damit sie etwas haben, mit dem sie Spieler zur Weissglut treiben
koennen....
Im uebrigen musst Du Dich mal daran erinnern, dass Du Deine Ausruestung
irgendwo herbekommen musst, und ich finde es ziemlich traurig, wenn es den
Mags egal ist, ob Du dem Weghier nun ohne Int+4-Ring gegenuebertreten musst
oda mit.... Es haben ja auch schon andere festgestellt, dass hier leider alles
so aufeinander aufbaut, dass das Abhaengen von Gebieten weitreichende Folgen
haben kann.
Vor allem aber nervt mich die Scheisse mit den Seher-Haeusern, denn da steckt
nicht nur Magier-Arbeit drin....

TuNixGut - kopfschuettelnd...

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



Re^3: Magier und ihre Sorgen! (Highlander, 16. Apr 1997, 12:46:20):
~#! rn=Tunixgut rt=861177467 rg=polizei.beschwerden
~#! tid=861169401
Da faellt mir eine Formulierung bei Dir jetzt schon zum zweiten Mal auf -
'ihren Scheiss'. Ist das jetzt nur Redewendung oder meinst Du das auch so?
Weil wenn naemlich Leute wie Boing oder Silvana wirklich ihren 'Scheiss'
abhaengen, und zwar alles und auf Dauer, dann ist das MG am Zusammenbrechen.
Sicher, es sind nur zwei Leute, aber ich meinte jetzt alles. Das ist bei
den beiden, die ich als Beispiel gebracht habe, aber auch dummerweise
Sachen in der lib, ohne die gar nix(tm) geht.
Das hast Du ja wohl auch selber bemerkt - 'dass hier leider alles so
aufeinander aufbaut, dass das Abhaengen von Gebieten weitreichende Folgen
haben kann.'
Ich hoffe also mal, dass die Formulierung Deinem Frust entsprungen ist.
Es klang naemlich wie 'Darauf kann ich eh verzichten.' - was Du aber wohl
doch nicht kannst.
   HrT

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



Re^4: Magier und ihre Sorgen! (Tunixgut, 16. Apr 1997, 13:13:50):
~#! rn=Highlander rt=861187580 rg=polizei.beschwerden
~#! tid=861169401
Jup, um das klarzustellen: Das ist wirklich meinem Frust entsprungen! Ich bin
mir der Tatsache bewusst, das der Code 'ne Menge Arbeit macht und guter Code
um so mehr und ich habe nicht im Mindesten vor, diese Arbeit in irgendeiner
Form zu schmaelern. Wenn das so ruebergekommen ist, tut mir das echt leid!
Sorry!

TuNixGut - haelt sich demnaechst etwas zurueck....

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



Re^5: Magier und ihre Sorgen! (Highlander, 16. Apr 1997, 13:15:24):
~#! rn=Tunixgut rt=861189230 rg=polizei.beschwerden
~#! tid=861169401
Kein Problem, ich hab ja nachgefragt, weil ich weiss, dass a) schriftlich
alles schlimmer rueberkommt und b) wenn man in Fahrt ist....
   HrT

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



Re: neue Reform? (Teddy, 16. Apr 1997, 14:26:55):
~#! rn=Anonymous rt=861039156 rg=polizei.beschwerden
~#! tid=861039156
Es ist uebrigens ein Irrtum, das man jetzt weniger APs braucht, um Seher zu
werden. Man braucht immernoch 1680, dafuer braucht man jetzt abver eine Quest
und 69 APs MEHR, wenn man Tarko Reub schon geloest hat.

eddy, frustriert auf dem langen und steinigen Weg zum Seher.

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



Unglaublich aber wahr (Bluemel, 16. Apr 1997, 16:34:48):
Ich glaube heut werd ich zum ersten mal was Sinniges in die MPA schreiben !
Der folgende Artikel ist also durchaus ernst gemeint.
Ich weiss nicht wie andere es sehen , aber im Grunde ist die Aktion von Wargon
idiotisch, asozial und kindisch.
Ich frage mich, was es zu diskutieren gibt.
Es sollte eigentlich jedem ( vor allem jedem Deutschen ) klar sein, dass es
Kollektivschuld nicht gibt und Kollektivstrafe ungerecht ist.
Das MUD wird von vielen Magiern in Zusammenarbeit programmiert und das
Abhaengen einzelner Sachen hat immer Auswirkungen auf alle Gebiete und somit
auf alle Spieler und Magier.
Somit kann man, das Argument:* Es geht nur den einzelnen Magier was an, wenn
er seine eigenen Gebiete abhaengt* nicht zaehlen lassen.
Das mitlaeuferische nachfolgende kollektive Abhaengen von Gebieten anderer
Magier stimmt mich dann doch etwas aengstlich, da es eine eigene Meinung und
eigenes selbstaendiges Verhalten bei denjenigen ausschliesst, da sie allein
wohl nicht auf diese Idee gekommen waeren.
Dass ploetzlich Magierzweities geloescht oder behindert werden, ist eigentlich
sogar ein Regelverstoss, da es nicht verboten war.
Der eigentliche Erfolg von Wargons Aktion ist bei den Meisten eher, dass sie
sich ueberlegen das Mud zu wechseln, da es anscheinend hier moeglich ist, dass
durch die Willkuer einzelner ( eines Einzelnen ! )der Spielspass aller
gestoert wird und auch niemand erstaunlicherweise was dagegen unternimmt.
Wargon hat wohl erwartet, dass einige Spieler nun Magier denunzieren und somit
die Boesewichter geloescht werden koennen.
In diesem Sinne will ich damit anfangen und verrate, dass mir Wargon beim
Hausbau die letze Rate mehr oder weniger erlassen hat.
Das kann man eindeutig als Spielerhilfe werten und ich plaediere hiermit
nicht, dass Wargon geloescht wird, da ich diese Hilfe fuer laecherliche
erachte.
Wenn ihr also was gegen *Fuscher* unternehmen wollt, dann macht was Sinniges
und rastet nicht aus !

Bluemel  


   

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



Re: Unglaublich aber wahr (Astar, 16. Apr 1997, 16:38:04):
~#! rn=Bluemel rt=861201288 rg=polizei.beschwerden
~#! tid=861201288
Ich gebe Dir voll und ganz Recht Bluemel, vorallem nachdem ich erfahren habe,
das das Morgengrauen nicht das erste Mud ist, in dem einige Leute ausrasten
(bitte nicht persoehnlich nehmen).

Astar

PS: Ich sag ja sonst nicht viel, aber die Sache mit den Seherhaeusern ist echt
kindisch (nicht schlagen Wargon)

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



Re: Unglaublich aber wahr (Acrimon, 16. Apr 1997, 17:00:35):
~#! rn=Bluemel rt=861201288 rg=polizei.beschwerden
~#! tid=861201288
Hmm.
Was nicht verboten ist, ist deswegen noch lange nicht erlaubt.
Denn Gesetze haben Luecken, und deren Ausnutzung ist verwerflich.

Acrimon, der Rote Ritter

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



Re: Unglaublich aber wahr (Quasimodo, 16. Apr 1997, 18:18:10):
~#! rn=Bluemel rt=861201288 rg=polizei.beschwerden
~#! tid=861201288
>Ich glaube heut werd ich zum ersten mal was Sinniges in die MPA schreiben !
Wie man sich doch irren kann...

>Das mitlaeuferische nachfolgende kollektive Abhaengen von Gebieten anderer
>Magier stimmt mich dann doch etwas aengstlich, da es eine eigene Meinung und
>eigenes selbstaendiges Verhalten bei denjenigen ausschliesst, da sie allein
>wohl nicht auf diese Idee gekommen waeren.
Ich kann beim besten Willen nicht verstehen, was daran falsch sein soll.
Wenn andere Leute gute Ideen haben, dann uebernehme ich die doch. Alles
andere waere ausgesprochen dumm.

>Dass ploetzlich Magierzweities geloescht oder behindert werden, ist
eigentlich
>sogar ein Regelverstoss, da es nicht verboten war.
Es war durchaus schon immer so, dass Magierzweities nicht in Top-Listen
oder aehnliches auftauchen sollen. In besonderen Rollen (Priesteraemter)
haben die schon gar nichts zu suchen.

>Der eigentliche Erfolg von Wargons Aktion ist bei den Meisten eher, dass sie
>sich ueberlegen das Mud zu wechseln, da es anscheinend hier moeglich ist,
dass
>durch die Willkuer einzelner ( eines Einzelnen ! )der Spielspass aller
>gestoert wird und auch niemand erstaunlicherweise was dagegen unternimmt.
Mit aller meinst Du wohl aller Spieler. Ueber die Motivation der Magier
scheinst Du die gar keine Gedanken zu machen. Die haben auch so etwas
wie Spielspass und der wurde offensichtlich in der Vergangenheit von
dem Mogeln einzelner (ich korriegiere: Einiger) gestoert.

>Wargon hat wohl erwartet, dass einige Spieler nun Magier denunzieren und
somit
>die Boesewichter geloescht werden koennen.
Das ist eine ziemlich(!) miese Unterstellung, welche auch garantiert nicht
der Wahrheit entspricht. Wargon wollte eine Diskussion und die hat er
ja wohl auch erhalten.

>In diesem Sinne will ich damit anfangen und verrate, dass mir Wargon beim
>Hausbau die letze Rate mehr oder weniger erlassen hat.
>Das kann man eindeutig als Spielerhilfe werten und ich plaediere hiermit
>nicht, dass Wargon geloescht wird, da ich diese Hilfe fuer laecherliche
>erachte.
Gaehn, und Rumata hat mir auch mal 10 Muenzen gegeben. Aber soweit ich
mich entsinne waren die Geldgeschenke nicht einmal auf der Liste der
angeprangerten Vergehen.

Quasi.


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



Re: Re: Unglaublich aber wahr (Wurzel, 16. Apr 1997, 18:50:47):
~#! rn=Acrimon rt=861202835 rg=polizei.beschwerden
~#! tid=861201288
als wenn ich es nicht gewusst haette... acrimon als verfassungsfeind?
es gibt den grundsatz der freizuegigkeit, der besagt dass alles was nicht
explizit verboten ist eben erlaubt ist. 
aber mit so etwas koennen religioese fundamentalisten natuerlich nichts
anfangen, egal ob islam oder christentum oder sonst so ein kaese.

wurzel

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



Re: Unglaublich aber wahr (Silvana, 16. Apr 1997, 18:56:30):
~#! rn=Bluemel rt=861201288 rg=polizei.beschwerden
~#! tid=861201288
Ich verstehe immer noch nicht, wieso ihr das als Strafe begreift.
Wenn bei uns ne Gewerkschaft streikt, weil sie mit irgendwas nicht 
einverstanden ist, dann blockieren die mit ihrem Protestzug die Haupt-
verkehrsstrassen und behindern damit jede Menge unbeteiligte Buerger,
die nix dafuer koennen. Da stellt sich auch keiner hin und weint was 
von ungerechter Strafe, obwohl Unmengen an Unbeteiligten im Verkehr
stecken bleiben, zu spaet kommen und dafuer angemault werden, etc.

Koennt ihr einen Protest nicht als das lassen, was es ist: Ein Protest,
keine Strafe. Die Strafen...? Falls wir wen wirklich strafen, dann trifft
das nachweislich Schuldige - und die nicht mit ein paar laecherlichen
kleinen Behinderungen.

  Silvana (versteht den Aufstand nicht)

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



Re: Re: Unglaublich aber wahr (Wurzel, 16. Apr 1997, 18:58:56):
~#! rn=Silvana rt=861209790 rg=polizei.beschwerden
~#! tid=861201288
das kommt hier aber eher an eine aussperrung ran, weniger ein streik...

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



Re: Re: Unglaublich aber wahr (Lacrimosa, 16. Apr 1997, 18:59:43):
~#! rn=Silvana rt=861209790 rg=polizei.beschwerden
~#! tid=861201288
das ist was anderes, die leute die im stau stehen, befuerworten sogar solche
aktionen. Die finden das OK.

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



Re: Re: Unglaublich aber wahr (Escubar, 16. Apr 1997, 19:02:01):
~#! rn=Silvana rt=861209790 rg=polizei.beschwerden
~#! tid=861201288

Der Aufstand ist schlicht und einfach da, weil:

- uns ein Teil des Spielspasses genommen wurde
- unklar ist was mit dem Protest eigentlich bezweckt werden soll

Um mal den Vergleich mit der Gewerkschaft weiterzuspinnen: Die wollen z.B. 8%
mehr Lohn und wenn die Arbeitgeber das erfuellen ist Ruhe.

Nur was will Wargon??? und vor allem trifft er mit seinem Protest die richtige
Zielgruppe?

Weil wenn ich jetzt sag: Wargon ok, Deine Forderung ist erfuellt, dann wird er
deswegen net aufhoeren, weils ja noch andere gibt, die dasselbe sagen
muessten.

Ich halte den Protest schlicht und einfach fuer nutzlos und verfehlt, weil wer
hat denn was davon, wenn deswegen jetzt die Motivation aller Spieler und
offenbar der meisten Magier ins bodenlose sinkt?

Eisbaer Escubar, auch ueberlegend in welchem Mud er demnaechst weiterspielt
wenn Puma seine Drohung wahrmacht.


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



Re^3: Unglaublich aber wahr (Acrimon, 16. Apr 1997, 19:09:00):
~#! rn=Wurzel rt=861209447 rg=polizei.beschwerden
~#! tid=861201288
Man kann nicht alles verbieten, was verwerflich ist.
Und taete man es, dann haette man einen extrem scharfen Staat mit genau
festgelegten Richtlinien geschaffen.
Dasz es nicht moeglich ist, alles Verwerfliche durch Gesetze zu verbieten,
duerfte eigentlich klar sein.
Und dein "Grundsatz der Freizuegigkeit" bedeutet nichts anderes als
"hemmungslose Ruecksichtslosigkeit".
Und mit irgendwelchen depperten Fundamentalisten hat das schon gar nichts zu
tun.

Acrimon, der Rote Ritter

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



Re^4: Unglaublich aber wahr (Wurzel, 16. Apr 1997, 19:16:38):
~#! rn=Acrimon rt=861210540 rg=polizei.beschwerden
~#! tid=861201288
hm, wenn du jetzt noch "verwerflich" erklaeren koenntest...
ich vermute mal, "verwerflich" ist das, was du und deine gesinnungsgenossen
dafuer halten. wenn es einen konsens ueber etwas gibt (oder auch nur eine
solide mehrheit), dann wird man ein gesetz draus machen. wenn dem nicht so
ist, kommen die moralprediger zum zuge? na danke...
wenn du freizuegigkeit mit ruecksichtslosigkeit verwechselst, hast du
eigentlich in unserem land nichts verloren. da wuerde der iran oder ein
aehnlich geartetes land besser passen.

wurzel (mag keine fundamentalisten)

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



Re^4: Unglaublich aber wahr (Anatol, 16. Apr 1997, 19:24:07):
~#! rn=Acrimon rt=861210540 rg=polizei.beschwerden
~#! tid=861201288
Lacrimosa schrieb:
> das ist was anderes, die leute die im stau stehen, befuerworten sogar solche
> aktionen. Die finden das OK.

Ich als Seher ohne Seherhaus betrachte mich einfach mal so als ein 'im Stau
stehender'. Und es tut mir kein Stueck in der Seele weh, wenn ich sage, dass
ich Wargon/Boing/Silvana/etc. gut verstehen kann und ihren Protest in diesem
Sinne sogar befuerworte.

Nicht alles, was nicht verboten ist, ist nicht verwerflich. Richtig. Ich sehe
hier z.B. NIRGENDS ein Verbot, dass Spieler keinen call_out-overflow erzeugen
duerfen. Nirgends steht, dass sie das Mud nicht mal eben fuer 10 Minuten
anhalten duerfen. Und nirgends steht, dass Spieler die illegale Hilfe der
Magier (Die nur fuer Magier richtig illegal ist), ablehnen muessen.
... Und trotzdem hat jeder normale Mensch soviel Gerechtigkeitssinn, dass er
wenigstens _merkt_, wenn er andere schaedigt. Auch wenn die Art nicht explizit
verboten ist.

Wird weder austreten noch Spenden einstellen,
Anatol


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



Re^5: Unglaublich aber wahr (Acrimon, 16. Apr 1997, 19:36:45):
~#! rn=Wurzel rt=861210998 rg=polizei.beschwerden
~#! tid=861201288
Stell dir vor, jeder wuerde tun, was nicht verboten ist, und achtet
dabei auf nichts sonst als seinem eigenen Wohlergehen.
Da straeubt sich doch jedem das Haar!
Das ist Ruecksichtslosigkeit hoch drei!
Jeder vernuenftige Mensch nimmt eben _schon_ Ruecksicht auf
seine Mitmenschen, mindestens aber auf das Gewissen.
Von Menschen gemachte Gesetze sind nun mal nicht das Hoechste.
Unsere Verfassung und unsere Gesetze sind sehr gut gemacht, aber
wie alles von Menschenhand hat es nunmal seine Luecken und Fehler
und ist verbesserungsfaehig.
Auch die Demokratie ist nicht das Ultimative, aber ich kenne kein
besseres System.

Acrimon, der Rote Ritter (mag keine Gesetzesfanatiker)

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



Re: Unglaublich aber wahr (Li, 18. Apr 1997, 09:20:46):
~#! rn=Bluemel rt=861201288 rg=polizei.beschwerden
~#! tid=861201288
Also wenn ich auch eigentlich die abhaengerei fuer falsch hielt, kann ich
nicht an mich halten, hier noch mal meinen Senf dazugeben. Ich weiss, es wird
sich nach duermmlichen Magiergeplaerr anhoeren, aber trotzdem:
einige Spieler scheinen in einer unertraeglichen konsumhaltung zu verharren,
wenn sie nach einer Aktion, die zumindestens den Zweck erfuellt hat, dass eine
heftige diskussion im gange ist, beleidigt das MUD wechseln, weil ihre
"spielerische Freiheit" eingeschraenkt wurde.
Ich bitte euch! Und dann den Magiern vorwerfen, sie wuerden kindisch handeln!
Natuerlich wirds immer Probleme zwischen Spielern und Magiern geben, aber die
sollte man doch geminsam bewaeltigen koennen. Beleidigt das MUD zu wechseln
ist genauso "bloed", wie Gegenden abzuhaengen. Ich will jetzt hier keine
diskussion vom Zaun brechen, welche Aktion kindischewr, bloeder oder
ueberfluessiger ist, aber einige Spieler soltlen sich mal ueberlegen, ob sie
nicht auch mal etwas zum MUD beitragen koennen (Krtik, vorschlaege,
diskussionenn, Vereinsbeitritt), als immer nur zu nehmen, zu jammern und
beleidigt zu meckern.  
Natuerlich ist es schlimm, wenn die Seherhaueser abgehaengt werden, natuerlich
ist es bloed, wenn die ach so geliebte SSP fuer ein paar Tage nicht erreichbar
ist, aber ist es denn wirklich so schlimm? Ein eingriff in die persoenliche
Freiheit, Zensur, oder wie auch immer es einige Spieler nennen?
Also Leute, kriegt Euch wieder ein, die aktion ist so gelaufen, ob sie gut war
oder nicht ist jetzt auch egal, ihren Zweck hat sie jedenfalls erfuellt (Und
dieser Zweck war sicherlich nicht, alle Spieler zu bestrafen, denn war diese
"Strafe" wirklich so schlimm?
Ich sage nur: Magier und Spieler, verinigt Euch (Im uebbertragenen Sinn
natuerlich nur! :-) )
Li (giesst Wasser aufs Feuer)

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



Re^5: Unglaublich aber wahr (Li, 18. Apr 1997, 09:29:19):
~#! rn=Wurzel rt=861210998 rg=polizei.beschwerden
~#! tid=861201288
Also ich kann nicht umhin, Acrimon in gewisser Weisde zuzustimmen. Schaut Euch
doch mal um, dann werdet ihr merken, dass nicht nur der Grundsatz gilt: Alles
was nicht verboten, ist, ist erlaubt, sondern auch: vieles dass verboten ist,
machen wir trotzdem.
Ich will keinen Polizeistaat, keine schaerferen Gesetze, aber viele
verwechseln die Freiheit des Einzelnen mit Ruecksichtslosigkeit gegenueber
Anderen.
Insofern hat Acrimon schon recht, und dass hat weder etwas mit
fundamentalismus zu tun, noch mit moralprediger.
Freiheit des Einzelnen bedeutet eben NICHt ich kann tun und lassen, was ich
will, solange ich nicht gegen ein Gesetzt verstosse, sondern ich kann tun und
lassen, was ich will, mit Ruecksicht auf andere. Jemand, der seine Freiheit
auf den ruecken anderer austraegt, ist ebenso intolerant, wie jemand, der nur
schwarz weiss denkt. wurzel, auch wenn Du es nicht hoeren willst: Deine
Arumentation ist gar nicht so sehr verschieden, wie die Acrimons: Wenn Du ihm
nahelegst, in den Iran auszuwandern, bist du genauso intolant, wie Acrimon,
wenn er meint, Ironie sein verwerflich.
Li

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



Re: Hmmmm... (Schrumpfi, 20. Apr 1997, 22:02:14):
~#! rn=Oetti rt=861019138 rg=polizei.beschwerden
~#! tid=861019138
Die ganze Ermagierschmollererei find ich ziemlich albern, weil es unschuldige
trifft. Hauptsaechlich unschuldige wuerd ich mal sagen. Zu behaupten, dass die
Goetter mit einem gelegentlichen heile sich die Mitglieder bei der Stange
halten find ich allerdings noch viel alberner und . Ich bin mir auch ziemlich
sicher, dass Wargon und Co keinesfalls vorhaben, die Spieler/Magier mit ihrer
Aktion zum denunzieren anderer zu bewegen. Falls mir ein Magier auffaellt der
grob gegen die Magierregeln verstoesst, dann habe und werde ich ihn an die
Erzmagier verpfeifen (aeh verpfiffen bei habe ;) ).
Au Mann Oetti, spiel Dich doch nicht immer so als Revoluzzer auf, mach das rl,
a is es wichtiger. Allerdings hast Du da mit groeberen Konsequenzen zu rechnen
prich Knast ect also nehm ich mal an, dass Du eh zu feige bist.
Schrumpfi kotzt diese pseudoanarchistische Einstellung langsam an.

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



Re: Re: Tja ... (Schrumpfi, 20. Apr 1997, 22:05:42):
~#! rn=Grimmborn rt=861028513 rg=polizei.beschwerden
~#! tid=861021743
Weil es die falschen trifft aber im grossen und ganzen geb ich Dir schon
recht.
Ich HASSE Sippenhaftung!
S.

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



Re: Re: Hmmmm... (Sidolin, 20. Apr 1997, 22:05:56):
~#! rn=Schrumpfi rt=861566534 rg=polizei.beschwerden
~#! tid=861019138
An dieser Stelle sei Genossin Schrumpfi fuer ihren bewundernswerten Einsatz
gegen die Imperialistische Allianz der Kapitalisten und den
Militaerisch-Industriellen Komplex gedankt.

Gut, dass es noch echte Kaempfer gibt.

Sidolin. Pseudoanarchist. Grossmaul.

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



Re^3: Hmmmmmm ... (Schrumpfi, 20. Apr 1997, 22:14:42):
~#! rn=Asmodis rt=861051304 rg=polizei.beschwerden
~#! tid=861045043
Nix gelbe Karte, sofort raus! Aber das hatten wir doch schon mal oder? *Cat
anshiel*
Schrumpfi ist fuer haertere Strafen aber gegen Sippenhaftung

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



Re: mmmhhhh (Schrumpfi, 20. Apr 1997, 22:20:42):
~#! rn=Nonne rt=861096593 rg=polizei.beschwerden
~#! tid=861096593
Nu lasst doch mal die Anarchie ausm Spiel. Ich will rl Anarchie ein Spiel ist
en Spiel und das kann ich in die Ecke werfen wenn es mir nicht mehr gefaellt.
Ich raste echt langsam aus, wenn ich noch einmal was von nem anarchistischen
Mu hoer!
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH
Schrumpfi
P.S Scheiss Tastatur hab ich da uebrigens

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



Re^3: Unglaublich aber wahr (Schrumpfi, 20. Apr 1997, 22:51:27):
~#! rn=Wurzel rt=861209936 rg=polizei.beschwerden
~#! tid=861201288
Aehm ja genau. Wenn mein Arbeitgeber scheisse ist, dann geh ich eigentlich
selten bis gar nicht her und nehm allen die Wohnungen weg.
Unter einem Streik versteh ich was anderes.
S.

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



Re^6: Unglaublich aber wahr (Schrumpfi, 20. Apr 1997, 22:56:49):
~#! rn=Li rt=861348559 rg=polizei.beschwerden
~#! tid=861201288
Bloss nicht in den Iran, die armen Kurden!
Schrumpfi mag auch keine fundamentalisten

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



Re^3: Hmmmm... (Schrumpfi, 20. Apr 1997, 23:00:06):
~#! rn=Sidolin rt=861566756 rg=polizei.beschwerden
~#! tid=861019138
Was weisst Du eigentlich ueber mich? Gar nix also halt Dich zurueck.
S.

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



Re^4: Unglaublich aber wahr (Ulo, 21. Apr 1997, 00:31:06):
~#! rn=Acrimon rt=861210540 rg=polizei.beschwerden
~#! tid=861201288

lieber acrimon,
du hast in deinem artikel den 'grundsatz der freizuegigkeit' mit
'hemmungsloser ruecksichtslosigkeit' gleichgestellt. darueber bin ich
gelinde gesagt ENTSETZT.
grundsaetzlich hat man (imho) davon auszugehen, dass jeder ein gewisses mass
an eigenem verantwortungsbewusstsein besitzt. die frage ist nun, wie gehen
mit dem fall um. wenn das verantwortungsbewusstsein bei einigen staerker 
ausgepraegt ist als bei anderen, d.h. wenn einige zu anderen schlussfolge-
rungen kommen, was man tun darf, oder nicht.  die bequemste loesung ist es
dann, wenn eine mehrheit dem einzelnen das denken abnimmt, und ihm sagt
bzw vorschreibt, was er tun darf und was nicht. (diese loesung koennen
wir vom RL). dass dem einzelnen eine staendige bevormundung schadet duerfte
klar sein, aber warum dieser schaden (freiheitsentzug) in die ueberlegung,
ob eine regelung sinnvoll ist, oder nicht, kaum eingeht, ist mir noch ein 
raetsel. und genau an dieser stelle setzt der 'grundsatz der freizuegigkeit'
an. dieser grundsatz spricht zunaechst jedem das recht und die faehigkeit zu,
selbstverantwortlich zu entscheiden, was er fuer verantwortbar haelt, und was
nicht. erst wenn der schaden, der durch mangelndes verantwortungsbewusstsein
entsteht, eindeutig groesser ist, als der schaden, der durch die entmuendigung
aller (ein gesetz ist nichts anderes) entsteht, ist die einschraenkung der 
freiheit aller zulaessig.
dieser grundsatz hat somit nichts mit 'hemmungsloser ruecksichtslosigkeit'
zu tun, sondern ist in meinen augen eher das gegenteil, da er einer grund-
haltung, die immer, wo es moeglich ist, nach (gesetzes-)regelungen schreit,
einhalt gebietet. die eigentliche hemmungslose ruecksichtslosigkeit liegt
darin, menschen, die selbstaendig denken und handeln koennen, ohne ernstliche
not in ein korsett aus vorschriften und gesetzen zu stecken!
woher die vorschriften kommen, ist dabei belanglos. ob eine mehrheit (von 
kindheit an ans korsett gewoehnt) sie gutheisst ebenfalls.

ulo.

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



Sockenschuss (Kretek, 21. Apr 1997, 03:14:17):
Na gut. Ich war die letzten paar Tage nicht da (muss tatsaechlich noch 'ne
Hausarbeit zu Ende bringen und nebenher ein paar Mark verdienen...), weswegen
ich erst heute von der "Protestaktion", dem Ausloeser und den Folgen Wind
bekommen habe.
Also, Deckung, Senf aus Passau:
Wenn hier Magier dabei geholfen haben, einen kompletten Dump des MG an
Spieler weiterzugeben, dann finde ich das schon irgendwie ein Armutszeugnis
fuer den bzw. die betreffenden MagierIn(nen). Ich meine, wozu spiele ich denn
ein Spiel? Besonders eins in der Art von MG? In erster Linie wohl doch, um
an den eingebauten Aufgaben (wie auch immer man sie nennen will) ein bisschen
knobeln zu muessen. Sicher gibt's viele Leute, die sich gleich nach dem 
Erwerb eines Spiels auch 'ne Komplettloesung dazu organisieren, aber ich
denke, fuer die damit verbundene "Unterhaltung" geht man wohl doch besser
ins Kino, das ist a) billiger und b) man muss nicht selber tippen :-)
"Protest"aktionen wie die hier ablaufende(n) finde ich allerdings auch,
entschuldigt bitte, schlicht und ergreifend ueberzogen und kindisch! So 
richtig schoen nach dem Motto "Baeh! Du boeser hast Dir eine Loesung fuer
meine Aufgabe besorgt, in die ich soooo viel Zeit und Arbeit investiert 
habe, und deswegen schmolle ich jetzt, und trete nicht nur Dir in den Sack, 
sondern sicherheitshalber auch noch mal so gut wie allen anderen, das habt
Ihr nun davon!" anstatt einem wohl sicher auch angebrachten und mindestens
genauso effektiven "Tja, dann werde ich wohl schnell mal so 10-15 Zeilen
Code aendern bzw. einfuegen, dann noch ein kleines Logfile, und dann sehen
wir mal, wen die Aenderung per this_interactive()->die() voruebergehend ins
Datennirvana befoerdert... **grins satanisch**". Vor allem, was fuer 'nen
Sinn soll's denn haben, Leute zu bestrafen, die von diesem "Diebstahl" gar
nicht mehr profitieren, naemlich die, die die Quest bereits geloest HABEN?
Denn genau das passiert doch, wenn man die Questbelohnung deaktiviert!
Und wenn sich hier jetzt _ein_ Erzie speziell angesprochen fuehlen wird
durch diesen Artikel, dann fuege ich hier noch hinzu, dass ich die 
"Solidarbestrafer" noch gleich viel weniger verstehen kann...
Na ja. Macht von mir aus, was Ihr wollt. Wenn das Semester angeht, habe ich
meine Hausarbeit (hoffentlich erfolgreich) eingereicht, und dann werde ich
wieder proggen. Mit 'nem bisschen Glueck bin ich dann bei den letzten drei
oder vier noch aktiven Gebieten im MG dabei, dann lohnt sich der Aufwand
wenigstens... Uebrigens, ich progge hier nicht, um Lorbeeren zu ernten und
mit per "Datenautobahn" auf die Schulter klopfen zu lassen, was fuer _tolle_
Sachen ich denn da wieder mal eingehaengt haette, sondern schlicht und
ergreifend, weil's mir Spass macht (sonst haette ich ja gleich Seher bleiben
koennen!). Und wenn meine Objekte ausser mir _keinem_ gefallen sollten - tja,
damit werde ich wohl auch leben koennen... ;-)



So long,
KreteK

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



Re: Sockenschuss (Anatol, 21. Apr 1997, 03:18:20):
~#! rn=Kretek rt=861585257 rg=polizei.beschwerden
~#! tid=861585257
Ohne Dir zu nahe treten zu wollen, Kretek... 
- Protest != Bestrafung.
- Der Mud-Dump ist nicht von Magiern gesponsort worden. Das einzige, was
  mich interessieren wuerde, ist die Quelle, von der die Hacker erfuhren, 
  dass die Rechte des mud-users frei herumliefen...

Anatol, Senf spaet in der Nacht


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



Re^3: Hmmmmmm ... (Kretek, 21. Apr 1997, 03:21:42):
~#! rn=Li rt=861088037 rg=polizei.beschwerden
~#! tid=861045043
Li schrieb:
> Wie waere es mit einem neuen (oder alten EM) der vermehrt auf solche Sachen
> achtet.
Gute Idee, aber der/die sollte vielleicht nicht aus Muenster sein (no
offence!), um evtl. Geruechte ueber einen "Muensteraner Sumpf" gleich im 
Keime zu ersticken!

K.

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



Re: Sockenschuss (Kretek, 21. Apr 1997, 13:24:44):
~#! rn=Kretek rt=861585257 rg=polizei.beschwerden
~#! tid=861585257
Hab grade erfahren, dass der Dump und die Protestaktionen nix miteinander zu
tun
haben (ja, ich geb's zu, ich war 'ne Zeitlang nicht mehr hier gewesen...).
Also: Aussagen dahingehend revidiert, der Rest bleibt aber.

K.

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



Re: Re: Sockenschuss (Rantanplan, 21. Apr 1997, 13:39:00):
~#! rn=Kretek rt=861621884 rg=polizei.beschwerden
~#! tid=861585257
*SChnarch* Schrumpfi !!

Bin beeindruckt, die radikalr Linke besteht aus >20 Splittergruppen, von denen
einige so sinvolle beschaeftigungen wie Nobelkarossen die mehr als
100.000 DM kosten in dei Luft zu jagen.

Ja DAS ist Revolution 

Schrumpfi, Du warst dabei Du weisst es alles besser, DAS nervt mich an, 
wo ich war weisst Du doch genausowenig wie Sidolin weiss wo Du warst, so ein
obrlall


Oe*

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



Re^5: Unglaublich aber wahr (Acrimon, 21. Apr 1997, 15:05:45):
~#! rn=Ulo rt=861575466 rg=polizei.beschwerden
~#! tid=861201288

Wurzel hatte mit "Grundsatz der Freizuegigkeit" folgenden Satz bezeichnet:
"Alles, was nicht explizit verboten ist, ist erlaubt". Die Befolgung diesen
Satzes stelle ich mit hemmungsloser Ruecksichtslosigkeit gleich.
Was Du unter "Grundsatz der Freizuegigkeit" verstehst, scheint die
Gewissensentscheidung zu sein mit dem Zusatz, sie solle unbestraft bleiben.
Dafuer halte ich jedoch den Begriff "Grundsatz der Freizuegigkeit" fuer recht
ungeschickt gewaehlt, denn es gibt im Volksmund noch eine weitere Auslegung
des Begriffes "Freizuegigkeit", die die Folgeleistung nach einer Lust
darstellt, was meistens mit wuetenden oder gekraenkten Frauen endet.

Was Wurzel also unter "Grundsatz der Freizuegigkeit" versteht, ist so ziemlich
das genaue Gegenteil Deiner Interpretation.
Ich verurteile Wurzels "Grundsatz der Freizuegigkeit", nicht aber Deinen.

Du gestehst dem Menschen die Faehigkeit zur reinen Gewissensentscheidung und
zur Verantwortung zu, unabhaengig von irgendwelchen Verboten und Geboten.
Wenn dies auch jeder Mensch koennte, dann waere das die optimale Loesung.
Jedoch ist eben nicht jeder dazu faehig, und deshalb werden Verbote und Gebote
benoetigt. Dazu gehoeren auch die Gesetze.

Eine praeventive Gesetzesgebung verhindert mehr Verbrechen als eine
nachtraegliche Gesetzesgebung, jedoch bringt die erstere eine staerkere
Einschraenkung mit sich als die zweitere.
Ich halte daher eine Mischung aus beiden Arten fuer die gesuendeste
Gesetzesgebung.

Acrimon, der Rote Ritter

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



Re^6: Unglaublich aber wahr (Wurzel, 21. Apr 1997, 20:25:44):
~#! rn=Acrimon rt=861627945 rg=polizei.beschwerden
~#! tid=861201288
spannend...
als ich ulos artikel gelesen habe, habe ich mich durchaus darin wieder
gefunden. ich haette es vielleicht nicht genauso formuliert, aber aehnlich in
der sache. wie acrimon daraus einen gegensatz ableiten will, dass ulo etwas
mehr ins detail gegangen ist, wird wohl fuer immer sein geheimnis bleiben.
ist mir auch egal, die diskussion faengt an ermuedend zu werden, die ganze
sinnlosigkeit motiviert auch nicht gerade (gerade gelesene anfeuerungsmails
sind da schon besser, helfen aber auch nur fuer eine beschraenkte zeit)

also, acrimon, denk dir einfach was du willst, wir werden wohl kaum jemals
auf einen gemeinsamen nenner kommen.

wurzel

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



konsequente bestrafung (Nixihou, 22. Apr 1997, 09:29:28):
hi, 
wegen des excessiven schummelns hat sich das mg also entschieden 
die betroffenen spieler zu bestrafen...
egal welche meinung man nun zu der bestrafung an sich hat, ergibt sich 
daraus die frage, wie bestraft man solche spieler ....

1. indem man alle die mudcharaktere loescht mit denen gemogelt 
   wurde?
oder
2. indem man alle mudcharaktere des spielers loescht, der gemogelt hat ?

zu 1.) hat kaum spielrelevante auswirkungen... -> ist kaum ne strafe
       denn die betroffenen spieler haben wohl noch EINIGE hochgespielte
       zweities, mit denen sie nicht beim mogeln erwischt wurden ....
       (wenn da 2-3 mudcharaktere fehlen ist das aergerlich aber keine 
       wirksame STRAFE)

zu 2) ist eine wirksame und einschneidende strafe, aber es ergibt sich das 
      problem, dass man auch ALLE zweities des spielers findet....
      aber selbst wenn man nur alle bekannten zweities loescht sollte 
      jedenfalls meist nur noch zweities ueberbleiben, die NICHT im 
      bereich der max-stats, max-ap viele FP sind...

jedenfalls sollte man sich mal GEDANKEN ueber die bestrafung der,
offensichtlich als spielverderber empfundenen schummler machen
und es dann nicht bei halbherzigkeiten belassen... 
dafuer haben die magier echt zu viel wind gemacht ......


nixihou, pustet auch mal in den wind.

 PS: sollte man es in diesem zusammenhang nicht einfuehren, dass man beim 
KENNZEICHNEN von zweities den namen des ERSTIES mit angeben MUSS?
*grubel*

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



Re: konsequente bestrafung (Silvana, 22. Apr 1997, 10:07:10):
~#! rn=Nixihou rt=861694168 rg=polizei.beschwerden
~#! tid=861694168
Auf die Schnelle:
Zumindest den Punkt vom PS kann ich nur unterstuetzen. 
Aeh, das mit Zweities mit Erstienamen markieren mein ich.

  Silvana (VL ruft)

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



Re: Re: konsequente bestrafung (Paracelsus, 22. Apr 1997, 10:10:26):
~#! rn=Silvana rt=861696430 rg=polizei.beschwerden
~#! tid=861694168
Nunja, aber viele Zweites werden eh nicht markiert, und dann tuts 
wahrscheinlich erst recht keiner mehr.

Para*

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



Re^3: konsequente bestrafung (Fyt, 22. Apr 1997, 10:34:51):
~#! rn=Paracelsus rt=861696626 rg=polizei.beschwerden
~#! tid=861694168
Dann fuehrt ne Markierungspflicht fuer Zweities ein. Die kann ja
sogar so erfolgen, dass nicht jeder Wurstmagier rauskriegt, was
da drinsteht...

Fyt.

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



Re^4: konsequente bestrafung (Nixihou, 22. Apr 1997, 13:10:52):
~#! rn=Fyt rt=861698091 rg=polizei.beschwerden
~#! tid=861694168
hmm, ok es gibt viele zweities die nicht markiert sind ...
aber wenn man die markierung mit ein paar nicht-spielentscheidenden
"vorteilen" bedenkt .... machen es vielleicht doch einige ...
es gibt da genug, das man als spieler mit mehreren mudcharakteren
gut brauchen koennte ... (halt verwaltungskram um die uebersiht nicht zu 
verlieren)

nixihou

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



Re^4: konsequente bestrafung (Jimdigriz, 22. Apr 1997, 16:35:24):
~#! rn=Fyt rt=861698091 rg=polizei.beschwerden
~#! tid=861694168

IMHO technisch nicht durchfuehrbar,
 da durchaus verschiedene Leute von der selben
 Maschine aus ins mud gehen koennten. Eine ident-
 Abfrage ist ebenfalls zwecklos, weil man sich nicht darauf
 verlassen kann. Schliesslich gibts auch nohc spieler die 
 von DOSEN (per telnet) spielen und denen kann man ja auch
 keine UID zuordnen. 
 Man kann also nie wissen welcher Charakter zu welcher 
 Person gehoert.

0.02
JdG

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



Re^5: konsequente bestrafung (Felagund, 22. Apr 1997, 16:42:14):
~#! rn=Jimdigriz rt=861719724 rg=polizei.beschwerden
~#! tid=861694168
Man KANN schon, man koennte z.B. die Passwoerter per mail verschicken im Zuge
eines Zweitieverbots z.B., dann koennte man 2tis zumindest nur noch in
Kooperation mit anderen erzeugen...oder eben der Erstie mit einem "erschaffe
Zweitie" oder sowas...

Fela...hoert jetzt lieber auf, bevor die ersten Steine fliegen...

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



Re^6: konsequente bestrafung (Tatjana, 22. Apr 1997, 17:50:16):
~#! rn=Felagund rt=861720134 rg=polizei.beschwerden
~#! tid=861694168
hmm, was meinst du wielange ich fuer 5 Mailaccounts brauche? ;)

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



Re^5: konsequente bestrafung (Schlips, 22. Apr 1997, 20:00:01):
~#! rn=Jimdigriz rt=861719724 rg=polizei.beschwerden
~#! tid=861694168

Geb ich Dir voellig recht,

Schlips, wurde schon faelschlicherweise als Zwietie von Galingree oder
Ollerhead
bezeichnet ...

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



Re^7: konsequente bestrafung (Fyt, 22. Apr 1997, 22:44:16):
~#! rn=Tatjana rt=861724216 rg=polizei.beschwerden
~#! tid=861694168

Laenger als Cat fuer's Loeschen aller fuenf Charaktere, wenn er Wind
davon bekommt...

Fyt.

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



Re^5: konsequente bestrafung (Kleindummi, 23. Apr 1997, 08:28:07):
~#! rn=Jimdigriz rt=861719724 rg=polizei.beschwerden
~#! tid=861694168

Ausserdem kann es durchaus vorkommen, dass ein Spieler
mit verschiedenen Charakteren ueber verschiedene Rechner reinkommt,
auch aus verschiedenen Staedten. 

Kleindummi gibt auch mall seinen Senf ab.

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



Re^6: konsequente bestrafung (Nixihou, 23. Apr 1997, 09:11:47):
~#! rn=Kleindummi rt=861776887 rg=polizei.beschwerden
~#! tid=861694168
schon. es ist schwierig alle zweities eines rl-spielers zu entdecken ...
aber von einigen leuten "weiss" man es. denn der spieler hat es oefter mal 
zugegeben, und wenn bei der zweitiemarkierung nun ein erstiename 
verlangt wird ... so sind auch diese zweities bekannt.

das es wohl IMMER tricks gibt und geben wird sich zweities ueber 
andere accounts oder so zu machen ist klar ...

nur bringt ein loeschen von "nur" dem beteiligten magier und den 
"manipulierten" zweities relativ wenig, wenn schon der naechte 
seherzweitie in den startloechern steht um magier zu werden ....
bzw. um weiter zu spielen ....

nixihou, der "dem auch keine brauchbare loesung einfaellt"

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



Re^7: konsequente bestrafung (Anatol, 23. Apr 1997, 11:50:42):
~#! rn=Nixihou rt=861779507 rg=polizei.beschwerden
~#! tid=861694168
Es waere im Nachhinein wohl etwas unfair denjenigen gegenueber, die aus ihren
Zweitcharakteren keinen Hehl machten, wenn diese jetzt irgendwelche Nachteile
erleiden muessten. Der Zug, gegen Zweitcharaktere etwas brauchbares zu
unternehmen, ist in diesem Mud abgefahren, wuerde ich sagen.

Anatol, hat Zweities.


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



Re^7: konsequente bestrafung (Grimmborn, 24. Apr 1997, 16:52:04):
~#! rn=Nixihou rt=861779507 rg=polizei.beschwerden
~#! tid=861694168
Sehe ich das richtig, dass Du sagst, wenn man schon Schummler nicht voellig
bestrafen kann, dann soll man ihnen einen roten Teppich auslegen und sie
belobigen? Ich bin schon der Meinung, man soll ruhig die betreffenden
Charaktere sowie aller erreichbaren Zweities loeschen. Und wenn man nciht alle
erwischt, was solls? Tut auch weh, und aufgeschoben ist nicht aufgehoben. Und
um wirklich nciht aufzufallen, muessten diese unentdeckten Zweitcharaktere
sich voellig anders verhalten als der urspruengliche Charakter, und damit
haette man doch schon jede Menge erreicht.

Grimmborn der Atheist stimmt fuer "Durchgreifen!". 
Anderen gegenueber, that is...

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



Re: konsequente bestrafung (Bluebox, 24. Apr 1997, 18:08:49):
~#! rn=Nixihou rt=861694168 rg=polizei.beschwerden
~#! tid=861694168
also ich hab versucht mcih als zweiti anzumelden...
ich bin auch bereit meinen erstienamen mitanzugeben, aber das koenen
anscheinend
nur magier. also was haltet ihr davon wenn ihr das mal einrichtet, mit dem
namen angeben fuer zweitis... immerhin zeigt man seinen guten willen.
es nervt langsam echt, ich glaube von mir sagen zu koennen das ich nahezu gar
nicht 'gecheatet' habe... also auf bald
--
BB

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



Re: Re: konsequente bestrafung (Jasper, 24. Apr 1997, 18:10:55):
~#! rn=Bluebox rt=861898129 rg=polizei.beschwerden
~#! tid=861694168
also ging das nicht mal irgendwo im zwergendorf?

-----------------------------------------------------------------------------



Re^3: konsequente bestrafung (Bluebox, 24. Apr 1997, 18:11:36):
~#! rn=Jasper rt=861898255 rg=polizei.beschwerden
~#! tid=861694168
da kann man sich als zweiti markieren lassen, nicht aber von wem man zweiti
ist... :)
,

-----------------------------------------------------------------------------



Re^8: konsequente bestrafung (Nixihou, 25. Apr 1997, 13:16:37):
~#! rn=Grimmborn rt=861893524 rg=polizei.beschwerden
~#! tid=861694168
nee grimmborn, das siehst du falsch... ich bin der meinung wie du der meinung,
dass man ALLE bekannten zweities eines solchen "schummlers" loeschen sollte
und NICTH nur die charaktere mit denen effektiv geschummelt wurde ...
nur scheinen da einige "entscheidende" magier anderer meinung zu sein, wenn 
ich das so betrachte was an loschungen bissher in der zeitung veroeffenlicht 
wurde .... fallen mir da noch die einen oder anderen zweities ein die nicht 
betroffen sind von der "bestrafung"...
(zumal auch in dem bissher bekanntgemachten auch schon mit zweierlei mass
gemessen und bestraft wurde ....)

sprich: es sollte noch mal gruendlich vor dem "handeln" nachgedacht werden
       und dann ALLE erwischten schummler GLEICH bestraft werden ....
      (bei halbherzigkeiten kann man die bestrafung gleich seien lassen)

nixihou

-----------------------------------------------------------------------------



Re^9: konsequente bestrafung (Grimmborn, 25. Apr 1997, 14:14:50):
~#! rn=Nixihou rt=861966997 rg=polizei.beschwerden
~#! tid=861694168
*seufz* Vielleicht wird das nie ganz kapiert hier...
Also, in Grossbuchstaben: DAS HIER IST KEINE DEMOKRATIE, UND "GERECHTIGKEIT"
GIBTS HIER ERST RECHT NICHT. Es hat keinen Sinn, ueber dieses Faktum zu
diskutieren, Diskussion ist hoechstens da sinnvoll, wo es um den Umgang damit
geht. Ich persoenlich finde es durchaus spannend zu beobachten, wohin sich
eine Gesellschaft, die eben nicht demokratisch und gerecht ist, entwickelt
oder entwickeln kann. Eben weil das hier nicht rl ist. Und ich bin der
Meinung, es ist besser, so gut "durchzugreifen" wie es geht als von
vorneherein zu sagen, hat doch keinen Zweck, wir bestrafen erst gar nicht. Es
wird NIE moeglich sein, Zweities zweifelsfrei zuzuordnen. Also loescht man
die, die man kriegt, wenn man nicht alle erwischt ists nicht soo tragisch,
denn weh tuts ja auch schon, seine drei oder vier prominentesten Charaktere zu
verlieren. Wenn man jemanden loescht, der nun wirklich unschuldig ist, laesst
sich das immer noch reparieren, ansonsten - *zuck* wo gibts in diesem Leben
schon Gerechtigkeit?

Und, Nixi, ist ja schoen, dass Du von allen Charakteren sagen kannst, wie sie
zusammenhaengen, und auch schoen, dass Du den EM vorwirfst, Dein
herausragendes Wissen nicht zu besitzen, aber was willst Du damit sagen? Dass
man Nixihou ruhig loeschen kann, weil das Dir nicht weh tut und Du genug
andere Charaktere hast? Immer zu, ich bin dafuer... ;-)

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^3: Sockenschuss (Schrumpfi, 27. Apr 1997, 01:39:21):
~#! rn=Rantanplan rt=861622740 rg=polizei.beschwerden
~#! tid=861585257
Du bruellst es ja ueberall rum wo Du warst. Wenn (jaja wenn) die Revo eines
Tages wirklich vor der Tuer steht weiss ich wo Du bist. Du sitzt vor Deinem
Comp und weinst wie spiessig das MG ist.
Schrumpfi RL atktiv im Kampf gegen Spiesser und FaschistInnen.

-----------------------------------------------------------------------------



Re: Ein paar Begriffe (Schrumpfi, 27. Apr 1997, 01:40:43):
~#! rn=Grimmborn rt=861635818 rg=polizei.beschwerden
~#! tid=861635818
Ich hab weder Abitur noch Matura. Bin doof und stink
S.

-----------------------------------------------------------------------------



Re: Re: Ein paar Begriffe (Tunixgut, 28. Apr 1997, 11:41:55):
~#! rn=Schrumpfi rt=862098043 rg=polizei.beschwerden
~#! tid=861635818
Merkt man, Schrumpfi!!!

TuNixGut - Spiesser...

-----------------------------------------------------------------------------



Re: Re: Ein paar Begriffe (Grimmborn, 28. Apr 1997, 16:07:04):
~#! rn=Schrumpfi rt=862098043 rg=polizei.beschwerden
~#! tid=861635818
Aber suuuueeeess... *schmacht*

Grimmborn liegt Schrumpfi zu Fuessen. Sowieso.

-----------------------------------------------------------------------------



Re: Gando (Bloodyharry, 21. Mai 1997, 00:12:05):
[Im Bezug auf einen Artikel in polizei.bekanntmachungen....]

..in den ich nicht schreiben darf.

Irgendwas scheint hier ja wohl nicht mehr so richtig in seinen Bahnen zu
laufen. Es guter, programmierender Magier mit prima Ideen loescht sich und
der einzigste Kommentar dazu lautet: "ehrenvolle Selbstloeschung...".
Es geht nicht nur um Dich, Silvana. Aber wie Selbstherrlich wir das MG noch
werden? Wenn die Selbstloeschung ein notwendiges Eingestaendniss waere,
wuerde es sicher viel weniger Mags hier geben als zur Zeit!


bh - trauert um jeden guten Magier, der dem MG auf Nimmerwiedersehen den 
Ruecken zu kehrt

-----------------------------------------------------------------------------



Re: Re: Gando (Asmodis, 21. Mai 1997, 00:18:15):
~#! rn=Bloodyharry rt=864166325 rg=polizei.beschwerden
~#! tid=864166325
Ich finds gut, hat er mehr zeit fuer das PK :)

-----------------------------------------------------------------------------



Re^3: Gando (Bloodyharry, 21. Mai 1997, 00:45:23):
~#! rn=Asmodis rt=864166695 rg=polizei.beschwerden
~#! tid=864166325
Das sagst Du ja nur als Regionsmagier des PK!
Was aber sagst Du, wenn er sich auch dort selbst loescht?

bh

-----------------------------------------------------------------------------



Re: Re: Gando (Jasper, 21. Mai 1997, 08:41:16):
~#! rn=Bloodyharry rt=864166325 rg=polizei.beschwerden
~#! tid=864166325
er spielt doch mit seinem xtie weiter, ich trauere eher darum, dass ein
character geloescht wurde, den ich vor urzeiten, muehsam von zt-stelle
zu zt-stelle getranst habe.
neneeee dummdo^H^H^H^H^H^Hgando ich haette dir auch mal zeigen koennen, 
wie man sich nicht dabei erwischen laesst :)

Jasper heute ausnahmsweise mal idle


-----------------------------------------------------------------------------



Re^3: Gando (Grimmborn, 21. Mai 1997, 09:28:33):
~#! rn=Jasper rt=864196876 rg=polizei.beschwerden
~#! tid=864166325
Hmm? Ich versteh die Aufregung nicht. Ein Magier hat laufend gegen was
verstossen, von dem er wusste, dass es a) verboten ist, b) nicht sonderlich
balancefoerdernd ist und c) durchaus bestraft wird wenn es auffliegt. Es ist
aufgeflogen, der Magier hat sich der Strafe durch Sepukko entzogen - koennte
mir bitte jemand erzaehlen, wo da der Ansatzpunkt fuer eine Diskussion ist?
Wer zu sehr mogelt und sich erwischen laesst fliegt halt raus, so neu ist das
nun wirklich nicht.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^5: Gando (Fyt, 21. Mai 1997, 10:11:37):
~#! rn=Asmodis rt=864173289 rg=polizei.beschwerden
~#! tid=864166325

Und wenn er es trotzdem tut, bringen wir ihn um ;-)

Fyt.

-----------------------------------------------------------------------------



Re^4: Gando (Pampers, 21. Mai 1997, 11:27:54):
~#! rn=Grimmborn rt=864199713 rg=polizei.beschwerden
~#! tid=864166325
Ich find nur die Begruendung schwach....
Bestraft wird man naemlich nicht, weil man schummelt, sondern weil man sich
erwischen laesst. ;-))))


Pampers. Ab nach Schmarrn. Nicht ich, sondern der Thread.

-----------------------------------------------------------------------------



Re^5: Gando (Zardoz, 21. Mai 1997, 11:32:16):
~#! rn=Pampers rt=864206874 rg=polizei.beschwerden
~#! tid=864166325
Echt? Mach keine Sachen! Ist mir noch nie aufgefallen, dass man nur bestraft
wird, wenn man sich erwischen laesst! Das wirft mein ganzes Weltbild
durcheinander!


Ciao Zardoz

-----------------------------------------------------------------------------



Re^6: Gando (Pampers, 21. Mai 1997, 11:36:19):
~#! rn=Zardoz rt=864207136 rg=polizei.beschwerden
~#! tid=864166325
Es waermt mein Herz, lieber Zardoz, Dir in diesen, ja sagen wir ruhig
schnellebigen Zeit ein Licht in der Dunkelheit des Alltags gewesen zu sein.
Die alltaegliche Orientierungslosigkeit des Menschen in den modernen Zeiten
ist leider in letzter Zeit - mehr noch als frueher - zu einer Bedrohung des
Gemeinwesens geworden.
Daher rechne ich es mir zur Ehre an, Dir - im Rahmen meiner bescheidenen
Moeglichkeiten - ein Sonnenstrahl im dichten Nebel der Verwirrung ob der
Kaelte dieser Welt gewesen zu sein.

Pampers. Hilft immer gern.

-----------------------------------------------------------------------------



Re: Re: Gando (Feuerwehr, 21. Mai 1997, 12:18:34):
~#! rn=Bloodyharry rt=864166325 rg=polizei.beschwerden
~#! tid=864166325
WAAAAAAAAAAHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH!!!!!!!!

GANDO! VERDAMMT!

Also ehrlich, musste das denn jetzt wirklich sein?

Ich meine, ok, vielleicht hat er Leute getranst. Ja, vielleicht hat er Geld
gespendet. Doch wo ist das Prinzip der letzten Warnung hin? Jeder kennt die
Versuchung, der man als Magier ausgesetzt ist. Wenn man Gando jetzt aber diese
letzte Warnung ausgesprochen haette und er wuesste, diverse
Ueberwachungsscripte laufen nur fuer ihn, dann waere er sicherlich noch unter
uns!

Verdammt verdammt verdammt.

Hart durchgreifen, hmm? Konsequent radikal loeschen, nur die heiligen
Ueberleben? Was fuer eine S*****e.

Ihr wisst es wahrscheinlich nicht, aber ihr habt euch gerade gewaltig ins
eigene Fleisch geschnitten, ihr Sittenwaechter des MG. Gando ist ein
excellenter LPC-Programmierer und hatte mit mir ein extrem grosses Projekt im
Gebirge vor. Ein wunderbares Metzelgebiet ist (war) in Arbeit und die ParaWelt
waere um viele wunderbare Schrecken reicher geworden.

Verdammt Verdammt Verdammt. Musste das denn jetzt wirklich sein?

Das PK-Mud darf sich jetzt wohl in der Tat auf einige sehr schoene
Erweiterungen freuen, doch das MG sollte sich darueber klar werden, welchen
Verlust es gerade erlitten hat.

Gando ist tot. Wer ihn kannte, mochte ihn. So moegen wir verstummen und
gedenken des Helden, der uns verlassen hat.

Verdammt Verdammt Verdammt.

   Feuerwehr.

-----------------------------------------------------------------------------



Re^7: Gando (Quasimodo, 21. Mai 1997, 12:23:00):
~#! rn=Pampers rt=864207379 rg=polizei.beschwerden
~#! tid=864166325
kurzlebigen Zeit passt zur Situation besser als schnellebige...

Quasi.

-----------------------------------------------------------------------------



Re^3: Gando (Pampers, 21. Mai 1997, 12:25:21):
~#! rn=Feuerwehr rt=864209914 rg=polizei.beschwerden
~#! tid=864166325
Er hat gepfuscht. Er hat sich erwischen lassen. Er ist weg.
Schade drum. Dumm gelaufen. Selber schuld.

Und was soll jetzt das Geheule? Er hat sich schliesslich SELBSTgeloescht.

Pampers. Seufzt.

-----------------------------------------------------------------------------



Re^5: Gando (Acrimon, 21. Mai 1997, 13:29:56):
~#! rn=Pampers rt=864206874 rg=polizei.beschwerden
~#! tid=864166325
Nein.
Bestraft wird nicht, weil man sich erwischen laeszt, sondern weil man etwas
verbrochen hat.
Wenn man sich bewuszt erwischen laeszt, dann darf man meistens mit einer
geringeren Strafe rechnen als wenn man sich nicht erwischen laeszt.

Und schon gar nicht darf man diejenigen, die Boeses anstellen und sich der
Justiz entziehen, straffrei sprechen.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Re^3: Gando (Grimmborn, 21. Mai 1997, 13:51:05):
~#! rn=Feuerwehr rt=864209914 rg=polizei.beschwerden
~#! tid=864166325
Letzte Warnung? Ich weiss nicht, bist Du blind gewesen in letzter Zeit? Es hat
Warnungen genug gegeben, dass endlich konsequenter gehandelt wuerde. Du
schreibst:
[Wenn] er wuesste, diverse Ueberwachungsscripte laufen nur fuer ihn, dann
waere er sicherlich noch unter uns!
Lass Dir das mal auf der Zunge zergehen: Schuld sind also die
Entscheidungstraeger, weil sie hier keinen Polizeistaat aufgebaut haben? Wenn
Du das wirklich so gemeint haben solltest denke ich, dass jede Diskussion
ueberfluessig sein duerfte und empfehle Dir, praktische Solidaritaet mit Gando
zu zeigen.

Ich habe Verstaendnis dafuer, wenn jemand meint, ueber die Straenge schlagen
zu muessen, aber herzlich wenig Mitleid, wenn er dabei auf die Schnauze
faellt. Dafuer hat er die Konsequenzen vorher gekannt, dafuer sollte er hier
nun wirklich alt genug sein. Nichts gegen Gando persoenlich, das gilt
ausnahmslos fuer jeden.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^6: Gando (Fyt, 21. Mai 1997, 14:48:43):
~#! rn=Acrimon rt=864214196 rg=polizei.beschwerden
~#! tid=864166325

Man spricht sie nicht straffrei, sie sind de facto straffrei, so lange
sie sich nicht erwischen lassen.

Fyt, hat das auch schon immer so verstanden, dass man nur fuer's erwischen
lassen bestraft wird.

-----------------------------------------------------------------------------



Re^6: Gando (Pampers, 21. Mai 1997, 14:51:37):
~#! rn=Acrimon rt=864214196 rg=polizei.beschwerden
~#! tid=864166325
Wenn man sich bewuszt erwischen laeszt, dann darf man meistens mit einer
geringeren Strafe rechnen als wenn man sich nicht erwischen laeszt.


Falsch. Wenn man sich nicht erwischen laesst, hat man mit einer geringeren
Stafe zu rechnen, naemlich keiner....

Pampers. Wundert sich, dass selbst grundlegende Dinge, die einer logischen
Ueberlegung eindeutig zugaenglich sind, trotzdem noch Diskussionen
hervorrufen... :-)

-----------------------------------------------------------------------------



Re^4: Gando (Alboin, 21. Mai 1997, 15:29:00):
~#! rn=Grimmborn rt=864215465 rg=polizei.beschwerden
~#! tid=864166325
.. ich moechte nur mal bemerken, dass hier nicht jeder konsequent fuer seinen
Mist bestraft wird. Als Beispiel, dass hier mit zweierlei Mass gemessen wird
fallen mir spontan Oetti und Du selbst ein, oder haste jemals fuers Zappen ne
gerechte Strafe bekommen???
Was ich meine ist, das wenn Du Dich hier fuer Konsequenz aussprichst mal bei
Dir selbst damit anfangen kannst.

Alboin - leicht sauer

-----------------------------------------------------------------------------



Re^5: Gando (Grimmborn, 21. Mai 1997, 16:15:36):
~#! rn=Alboin rt=864221340 rg=polizei.beschwerden
~#! tid=864166325
"finger oetti", "finger beobachter", da hats Strafe genug gegeben.
Und was mich angeht: Ich habe nicht das Gefuehl, dass ich mich hier fuer
irgendetwas rechtfertigen muesste. OK, nicht fuer viel, aber das bisschen ist
nie ans Licht gekommen... ;-)
Es ist halt ein Unterschied, ob man formal vorgeht so wie Du ("zappen ist
zappen") oder ob man bereit ist, quasi das "Wesen der Tat" zu sehen. Wenn Du
moechtest darfst Du das gerne als bequeme Ausrede ansehen, soll mir recht
sein. Aber die Entscheidungstraeger hier unterscheiden da im allgemeinen, wenn
sie es nicht taeten waere ich laengst geloescht und dann haette ich wohl auch
nichts, was mich in so einem mud halten wuerde.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^4: Gando (Asmodis, 21. Mai 1997, 18:18:45):
~#! rn=Grimmborn rt=864199713 rg=polizei.beschwerden
~#! tid=864166325
Aeh, dauernd gegen die Magierregeln verstossen ?
ich hab da was anderes gehoert, komm jetzt nicht mit haltlosen
Vermutungen, Grimmi :)

-----------------------------------------------------------------------------



Re^5: Gando (Grimmborn, 22. Mai 1997, 10:49:34):
~#! rn=Asmodis rt=864231525 rg=polizei.beschwerden
~#! tid=864166325
Lies doch bitte erst polizei.bekanntmachungen, bevor Du bloed daherredest. Ich
zitiere:
"Gando hat sich bei fortgesetztem, schwerem Verstoss gegen die Magierregeln
erwischen lassen..."
Das faellt meiner Ansicht nach schon unter "laufend gegen die Magierregeln
verstossen", wenn dem nicht so ist darfst Du Silvana kritisieren, nicht mich.

Grimmborn der Atheist hats langsam satt, wenn Spieler Verhalten verteidigen,
von dem sie vielleicht selber profitieren, das aber das Spiel insgesamt aus
dem Gleichgewicht bringen kann.

-----------------------------------------------------------------------------



satt haben (Fyt, 22. Mai 1997, 11:30:01):

Und ich hab es langsam satt, wenn es hier wieder mal nur die kleinen
Fische trifft. Wenn ich mich recht erinnere, gab es ziemlichen Aufriss
wegen dem Fileklau. Ist was passiert? Nein. Im Sande verlaufen. Ich seh
hier immer noch Beteiligte unbehelligt rumlaufen.

Im Gegenzug dazu hat natuerlich Oettis Scheisse (wie zum Beispiel das
zappen von Leuten, die das hinterher gar nicht gejuckt hat (Anakin?)
das Mudgleichgewicht derart beeintraechtigt, dass sofortige Loeschung
von Magier/Zweitie/sonstwas unumgaenglich war. Die paar Files samt
Quests und Zt-Verstecken fallen im Vergleich dazu natuerlich ueberhaupt
nicht ins Gewicht.

Na toll, weiter so. Augen zu, Ohren zu und Recht haben.

Fyt.

PS: Ich finde Gandos Selbstloeschung uebrigens in Ordnung. Ich sage lediglich,
dass es schlimmere Sachen gibt, die nicht verfolgt werden.

-----------------------------------------------------------------------------



Re: satt haben (Silvana, 22. Mai 1997, 19:34:13):
~#! rn=Fyt rt=864293401 rg=polizei.beschwerden
~#! tid=864293401
Ich weiss wohl, dass es schlimmere Vergehen gibt als die von Gando.
Nur hatte ich bisher nicht das (zweifelhafte) Glueck, diese 
nachweisen zu koennen. Was erwartest Du also? Soll ich alle 
unbehelligt lassen, bis ich alle 'grossen Fische' gefangen habe?
oder soll ich einfach auf Verdacht drauf los loeschen? Das kann
es ja wohl nicht sein, oder?

  Silvana

-----------------------------------------------------------------------------



Re: Re: satt haben (Asmodis, 22. Mai 1997, 19:35:24):
~#! rn=Silvana rt=864322453 rg=polizei.beschwerden
~#! tid=864293401
Wer ist jetzt eigentlich Sheriff ? Silvana, Highlander, Catweazle, Freund
oder Boing oder wer ?
Hier darf wohl jeder Erzmagier mal loeschen.

-----------------------------------------------------------------------------



Re^6: Gando (Lug, 23. Mai 1997, 03:24:09):
~#! rn=Acrimon rt=864214196 rg=polizei.beschwerden
~#! tid=864166325
Moin,

hm Acrimon gleich nochmal ;) Nimms mir nicht uebel. Aber wie waers mit Acrimon
Dredd? Don't drokk that man, cause he is the law...

-> Schmarren

Lug

-----------------------------------------------------------------------------



Re^7: Gando (Yantro, 23. Mai 1997, 07:40:04):
~#! rn=Lug rt=864350649 rg=polizei.beschwerden
~#! tid=864166325

Lug, Acrimon wird NIE Dredd.... wenn ich da an Zeilen denke wie "a man so
hard, his vains bleed ice. And when he speaks, he never says it twice..." das
schraenkt zu sehr ein :)

Yantro, auch mal MilzbrandFan gewesen, als die noch gut waren. :)

-----------------------------------------------------------------------------



Re^3: satt haben (Li, 23. Mai 1997, 10:04:26):
~#! rn=Asmodis rt=864322524 rg=polizei.beschwerden
~#! tid=864293401
WEnn er Magier beim extremen Schummeln erwischt, warum nicht?
Li 

-----------------------------------------------------------------------------



Re^3: satt haben (Quasimodo, 23. Mai 1997, 12:58:08):
~#! rn=Asmodis rt=864322524 rg=polizei.beschwerden
~#! tid=864293401
Nochmal zum mitlesen:
Gando hat sich selber geloescht.

Quasi.

-----------------------------------------------------------------------------



Re^6: Gando (Escubar, 23. Mai 1997, 22:29:53):
~#! rn=Acrimon rt=864214196 rg=polizei.beschwerden
~#! tid=864166325
Also wenn ich einen Kill, muss ich mich bewusst erwischen lassen, damit ich
weniger Strafe krieg?

Soviel Schwachsinn hab ich ja selbst in meinen 4 Semester Jura net gehoert ...

Eisbaer Escubar, heute gefrustet

-----------------------------------------------------------------------------



Re^7: Gando (Acrimon, 24. Mai 1997, 09:50:37):
~#! rn=Escubar rt=864419393 rg=polizei.beschwerden
~#! tid=864166325
Ja Escubar.
Wenn du dich freiwillig stellst, gibts weniger Strafe, als wenn sie dich
stellen.
Und wenn sie dich nicht stellen - dann kommst du trotzdem nicht um Strafe
herum, aber das hat nichts mehr mit Jura zu tun.
(Jaja ich weisz, Atheisten bestreiten das)

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Re^8: Gando (Escubar, 25. Mai 1997, 00:43:56):
~#! rn=Acrimon rt=864460237 rg=polizei.beschwerden
~#! tid=864166325
naja gegen diese Art Strafe ist ja wohl kein Kraut gewachsen, ausser der
Anti-Christ, aber laut Nostradamus kommt der ja eh bald ...

Eisbaer Escubar, wieder besser gelaunt


-----------------------------------------------------------------------------



Re^3: Gando (Qitess, 26. Mai 1997, 15:58:08):
~#! rn=Feuerwehr rt=864209914 rg=polizei.beschwerden
~#! tid=864166325
Ich gedenke trauernd meinem lieben Freund Gando.

Und an die ZT-Liste, die ich damals von ihm bekommen habe .

Zitat :

Resent-To:  Liste <X.XXX@tu-bs.de>

Gando liebt dich

-----Original message------

[...]

QI** trauernd


-----------------------------------------------------------------------------



Re^4: Gando (Jasper, 26. Mai 1997, 15:59:19):
~#! rn=Qitess rt=864655088 rg=polizei.beschwerden
~#! tid=864166325
der alte schleimer :) 

-----------------------------------------------------------------------------



So.... (Alpha, 16. Jun 1997, 11:08:50):
Nachdem ich in der letzten Woche 5mal beim Iddeln in der Nacht (wie soll ich
sonnst die Tode wechkriegen) anscheinend von irgendeinem Mag was weis ich wie
zu Tode gesetzt wurde - ander kann ich mir nicht erklaeren, das ich in voellig
sicheren Gebieten - Elfendorf(ausser PK) und verschlossene! Seherhaeuser(nicht
mal PK) zu Tode kommen kann - schreibe ich mal hier. Wenn irgendein Mag was
gegen Iddeln hat, dann soll er doch erstmal nen Artikel schreiben - und
zweitens kann man mich dann auch so aus der Leitung  schmeissen. Also, Alpha
haette gern 200k Muenzen zurueck und endlich keine Todesfolgen mehr, vor allem
aber abgeklaert, von welchen Mag er gekillt wurde.

-----------------------------------------------------------------------------



Re: So.... (Silvana, 16. Jun 1997, 11:37:45):
~#! rn=Alpha rt=866452130 rg=polizei.beschwerden
~#! tid=866452130
Was Dir da genau passiert ist, Alpha, laesst sich leider im nachhinein
nicht nachvollziehen. Daher was generelles dazu fuer alle Magier, die
meinen Hilfssherriff spielen zu muessen:
Idlen ist nicht verboten, auch nicht ueber Stunden.
Idlen bei schwachen, aber aggressiven Monstern ist da was anderes. Solche
Spieler sollten ausgeloggt werden.
AUF GAR KEINEN FALL(!) sind idle Spieler in Todesfallen zu stecken oder
sonstwie umzubringen. 
Bei extremen Idle-Zeiten (jenseits von 1Tag) muss man allerdings schon 
damit rechnen, ausgeloggt zu werden, da da der Verdacht naheliegt, dass
sich eine Verbindung unsauber aufgehaengt hat.

So, war das jetzt deutlich genug?

  Silvana


-----------------------------------------------------------------------------



Re: Re: So.... (Patryn, 16. Jun 1997, 11:44:21):
~#! rn=Silvana rt=866453865 rg=polizei.beschwerden
~#! tid=866452130
es laesst sich sehr wohl nachvollziehen. es gibt inzwischen leider mehr
als genug objekte, mit denen spieler sich hier gegenseitig das leben
schwer machen; sprich: man kann idlende spieler auf einfache art und weise
toeten und zwar unerkannt.
es gibt mehrere objekte, welche demjenigen, in dessen inventory sie sich
befinden, pro bestimmter zeiteinheit lebenspunkte abziehen. dies geht
leider etwas schneller, als man die lebenspunkte mittels idlen wieder
dazugewinnt *grins*
ich denke da an kuegelche und holzscheite und noch so einiges.
evtl. sollte man gegen solche objekte einmal einschreiten?!

------
patryn

-----------------------------------------------------------------------------



Re^3: So.... (Silvana, 16. Jun 1997, 12:13:10):
~#! rn=Patryn rt=866454261 rg=polizei.beschwerden
~#! tid=866452130
Wenn es solche Objekte gibt, sollte
a) Paracelsus davon wissen.
b) Jemand dafuer sorgen, dass so ein PK auch als solcher gewertet wird.
Silvana

-----------------------------------------------------------------------------



Re^4: So.... (Patryn, 16. Jun 1997, 12:43:18):
~#! rn=Silvana rt=866455990 rg=polizei.beschwerden
~#! tid=866452130
es gibt so viele dinge, von denen paracelsus wissen sollte...
...jedoch die weiten des muds sind unergruendlich :)

------
patryn, schmarrend

-----------------------------------------------------------------------------



Re^5: So.... (Silvana, 16. Jun 1997, 13:18:05):
~#! rn=Patryn rt=866457798 rg=polizei.beschwerden
~#! tid=866452130
Traurig aber wahr... Silvana... mitschmarrend

-----------------------------------------------------------------------------



Re^6: So.... (Paracelsus, 16. Jun 1997, 13:21:07):
~#! rn=Silvana rt=866459885 rg=polizei.beschwerden
~#! tid=866452130
Hmm, ich koennte jetzt nen Artikel schreiben:

Informant gesucht
Wer verraet die Bugs und Objekte, die den Spielern am meisten helfen?
Meldungen bitte per mail an 'paracelsus@mg.uni-muenster.de'

Aber da wuerde sich wohl kaum einer melden, oder?

Paracelsus - auch schmarrend.

-----------------------------------------------------------------------------



Re^7: So.... (Key, 16. Jun 1997, 13:26:06):
~#! rn=Paracelsus rt=866460067 rg=polizei.beschwerden
~#! tid=866452130
Hmm Bugs und Objekte die den Spielern am meisten helfen?
Oki also:
Der erste Bug ist wohl das man hier labern kann ;)
So und ein Objekt das schon eher illegal ist ist die Diddl-Knuddel-Maus ;))
Da stecken soviele Befehle auf einmal drin, und so leicht zu bekommen ....
Raus damit!
*lach*

Key schmarrnend :)

-----------------------------------------------------------------------------



Re^8: So.... (Silvana, 16. Jun 1997, 13:30:02):
~#! rn=Key rt=866460366 rg=polizei.beschwerden
~#! tid=866452130
Bitte, wenn Du unbedingt willst... Silvana->schmarrn();

-----------------------------------------------------------------------------



Re^9: So.... (Pampers, 16. Jun 1997, 13:36:21):
~#! rn=Silvana rt=866460602 rg=polizei.beschwerden
~#! tid=866452130
Muss jetzt ausgerechnet die einzige halbwegs serioese Rubrik im MG auch noch
zu Schmarrn werden?

Pampers. Grummelt.

P.S.: Alpha, wenn du ungestoert idlen willst, gehe in eine Postkabine. Da kann
keiner rein und IMHO dich wirklich nur Magier killen. Nur so als Vorschlag.

-----------------------------------------------------------------------------



Re^3: So.... (Asmodis, 16. Jun 1997, 14:19:27):
~#! rn=Patryn rt=866454261 rg=polizei.beschwerden
~#! tid=866452130
Noe, wieso ? Wenn der Spieler nicht auf seinen Bildschirm guckt, isser selbst
schuld :)

-----------------------------------------------------------------------------



Re^7: So.... (Patryn, 16. Jun 1997, 14:59:18):
~#! rn=Paracelsus rt=866460067 rg=polizei.beschwerden
~#! tid=866452130
hey, ich will mich auch noch zur naechsten mud-party trauen duerfen :)

------
patryn, bei zauberern bereits in ungnade gefallen...

-----------------------------------------------------------------------------



Re^8: So.... (Key, 16. Jun 1997, 15:34:43):
~#! rn=Patryn rt=866465958 rg=polizei.beschwerden
~#! tid=866452130
Komm dur nur ... =;)

Key

-----------------------------------------------------------------------------



Re^5: So.... (Lug, 16. Jun 1997, 19:38:26):
~#! rn=Patryn rt=866457798 rg=polizei.beschwerden
~#! tid=866452130

Hm Patryn, formuliere doch: Es gibt viele Dinge von denen Para besser nx
wissen sollte...

Lug

-----------------------------------------------------------------------------



Re^8: So.... (Lug, 16. Jun 1997, 19:40:37):
~#! rn=Key rt=866460366 rg=polizei.beschwerden
~#! tid=866452130

Moin,

psssst Para (verrate aber nicht woher Du es hast):

Also ungemein hilft uns das Para Portal 8, Wegescriptfallen in Deinem Gebiet
(oder ist das ein Bug?), Robin's Unverwundbarkeiten, ach ja: Das Klo ist
buggy!

In cognito
Lug

-----------------------------------------------------------------------------



Re^7: So.... (Mahatmu, 17. Jun 1997, 00:57:26):
~#! rn=Paracelsus rt=866460067 rg=polizei.beschwerden
~#! tid=866452130
Hm ... was bietest Du denn ? Natuerlich nur unter Kronzeugenregelung
und der Bedingung, alles auf Patryn abzuwaelzen.

Gloin ... megaschmarrend.

-----------------------------------------------------------------------------



Re^9: So.... (Raffi, 17. Jun 1997, 17:59:03):
~#! rn=Silvana rt=866460602 rg=polizei.beschwerden
~#! tid=866452130
Finger weg von der Knuddelmaus!
H.

-----------------------------------------------------------------------------



*grummel* (Kemp, 17. Jun 1997, 21:43:49):
Also,

wenn mann auf dem westweg vom steinbrecher in richtung glockenwald Latscht
kommt mann in eine zelle (Hoellenaehnlich) und kann nix mehr machen. Es ist
total nervig und zum Kotzen es wuerde mich freuen wenn ihr es euch anschauen
koenntet. Ist an die Magier gerichtet :o)

-----------------------------------------------------------------------------



Re: Re: *grummel* (Bendeigid, 17. Jun 1997, 22:12:52):
~#! rn=Lwaxana rt=866576690 rg=polizei.beschwerden
~#! tid=866576629
Tja, die Sache laesst sich recht einfach erklaeren:
Irgendein ungeheuer possenreicher und wahnsinnig komischer Magier hat dort das
Ziel des Ausgangs auf /room/jail gesetzt.
Nun wissen wir alle, wie wahnsinnig toll besagter Held/Hledin programmieren
kann, dass er/sie sich in der Benutzung des xtools auskennt oder was weiss
ich. Melde er/sie sich, damit wir ihm/ihr huldigen moegen!!

Ziemlich albern, sowas. Traegt natuerlich genial zur Stimmung im Mud
(stichwort magierwillkuer) bei. Gut gemacht, weiter so!

Z'par Servu,
             Bendeigid

-----------------------------------------------------------------------------



Re^3: *grummel* (Asmodis, 18. Jun 1997, 00:21:04):
~#! rn=Bendeigid rt=866578372 rg=polizei.beschwerden
~#! tid=866576629
GOIL! Die totale Anarchie hier :)

-----------------------------------------------------------------------------



Stupse-klau (Orktoeter, 20. Jun 1997, 17:08:53):
Hi,
ich moechte den Verlust von Stupsen melden.
Da ich sie nicht verlegt habe und auch nicht freiwillig abgegeben habe, bleibt
nur der verdacht, das sie geklaut wurden.

Bei der Einfuehrung der FP hiess es "ganz ruhig, die sind nur fuer die neuen
Spieler als zusatzkriterium zum Seherwerden". Eine weile spaeter (ich nenne es
das Ende vom MorgenGrauen I) wurden Ploetzlich die FP das mass aller Dinge.
Damls wurden die "Altspieler" damit beruhigt, das man ihnen 7 statt 6 Stupse
pro FP versprach, damit sie nicht noch mal alle Questen ein zweites mal
gruendlich durchspielen brauchen.
Jetzt wurde dieser ausgleich gestrichen, ersatzlos.

Ich muss sagen, das ich selbst vermutlich zu denen gehoere, die am wenigsten
btroffen sind, da ich fast keine FP habe (ich boykotiere sie so gut ich kann),
aber ich finde es aus tiefster ueberzeugung zutiefst ungerecht, wie hier mit
altsehern umgegangen wird.

Nein, ich werde mich nicht loeschen, ich werde viel lieber weiternoergeln
(dies als kommentar fuer die, die meinen  wems nichrt gefaellt, der koenne ja
woanders hin gehen).



So, nun versuch ich doch noch mal konstruktief zu werden:
Also 7 statt 6 Stupse fuer alte Charactere ist auf dauer ungerecht gegenueber
den Neuen, geht also nicht.
Alte Charactere nicht entschaedigen ist auch absolut ungerecht, der einzig
halbwegs faire weg laege meiner Meinung nach darin, zu verhindern, das alte
charactere FP in dern alten Quests bekommen koennen (jaja, Yantro sagte mir
das sei nicht zu proggen, dann muss das system halt mal gruendlich
umgecshrieben werden) und dafuer eine pauschale entlohung fuer die lten quests
zu gewaehren. Das ist zwar auch ungerecht, aber ich denke das ist der fairste
moegliche kompromiss.

OrkT.

-----------------------------------------------------------------------------



Re: Stupse-klau (Lug, 20. Jun 1997, 19:24:10):
~#! rn=Orktoeter rt=866819333 rg=polizei.beschwerden
~#! tid=866819333
Ohweiah,

der Tag ist gekommen, ich muss Orktoeter rechtgeben.
Jetzt denke ich doch erstmals ueber Selbstloeschung nach ;)

Lug

-> Schmarren

-----------------------------------------------------------------------------



Re: Re: Stupse-klau (Tasha, 20. Jun 1997, 21:45:17):
~#! rn=Lug rt=866827450 rg=polizei.beschwerden
~#! tid=866819333
Hiho!

Hmmm, wer immer die Objekte geproggt hat, die diesen Verlust Orktoeters
bewirkt haben, faellt das nicht unter die Klausel des Magiervertrages, die es
Magiern verbietet, Objekte zu schreiben, die Spieler zu sehr schaedigen?

Tasha, die diesen Artikel nicht wirklich scherzhaft meint.

-----------------------------------------------------------------------------



Re^3: Stupse-klau (Key, 20. Jun 1997, 22:28:48):
~#! rn=Tasha rt=866835917 rg=polizei.beschwerden
~#! tid=866819333
Tja vielleicht schon ....
Aber bedenke das Zeug kommt von Erzies, und Erzies duerfen alles ...

Nur kleine Mags werden wegen sowas geloescht :)

Key

-----------------------------------------------------------------------------



Re^7: So.... (Fyt, 21. Jun 1997, 09:07:36):
~#! rn=Paracelsus rt=866460067 rg=polizei.beschwerden
~#! tid=866452130

In einem gut funktionierenden Mud, wo man nicht staendig damit rechnen
muss, in die Pfanne gehauen zu werden, werden sich schon Leute finden,
die sowas melden...

Fyt, auch schon 'gepetzt' habend... 1994 oder so...

-----------------------------------------------------------------------------



Re^9: So.... (Fyt, 21. Jun 1997, 09:08:42):
~#! rn=Lug rt=866482837 rg=polizei.beschwerden
~#! tid=866452130

Das mit dem Klo hat sogar Boing abgenickt, wenn ich mich recht erinnere...

Fyt.

-----------------------------------------------------------------------------



Re^7: So.... (Asmodis, 23. Jun 1997, 09:00:09):
~#! rn=Paracelsus rt=866460067 rg=polizei.beschwerden
~#! tid=866452130
Ich wuerde ja gerne aber ich weiss nix :)

Ausserdem, woher soll man wissen, dass das ein bug ist und nicht etwa
ein feature ? 
Bei manchen Magiern (Morgoth, Wurzel ...) weiss man ja nie :)

-----------------------------------------------------------------------------



Re^5: So.... (Mupfel, 24. Jun 1997, 18:01:10):
~#! rn=Patryn rt=866457798 rg=polizei.beschwerden
~#! tid=866452130
und noch viel mehr dinge von denen er weiss... *grins*

-mupfel-

-----------------------------------------------------------------------------



Re^8: So.... (Mupfel, 24. Jun 1997, 18:03:28):
~#! rn=Asmodis rt=867049209 rg=polizei.beschwerden
~#! tid=866452130
Ja bei denen sind das alles nur features, keine bugs :-)

-----------------------------------------------------------------------------



Janice (Janitze,  5. Jul 1997, 17:25:33):
Hallo 66+ !!
Da ihr es nicht fuer noetig haltet, mich zu dem Thema 'Diebstahl' von
MG-Files zu befragen, schreib ich meinem Senf einfach mal in diese
Rubrik.
Ja, es stimmt, ich hab ein Magier-Passwd geklaut, und ja, es stimmt, ich
hab mir damit Files aus dem MG gezogen. Ich seh ein, das ich dafuer
bestraft werden muss, und das habt ihr ja auch gut hinbekommen. Das habt
ihr so toll geschafft, das ihr damit Charaktere geloescht habt, die damit
gar nichts zu tun haben, nichtmal mir gehoeren. Ich rede von Rosa, Susi
und Vera. Die 3 gehoeren zu Crolla und ich hatte die Erlaubniss von Ihr,
sie einloggen zu duerfen. Ich bitte darum, das die Loeschung der 3 ganz
schnell wieder rueckgaengig gemacht wird. Wenn jemand von euch sich mit
mir in Verbindung gesetzt haette, dann waer ich jetzt nicht so sauer auf
euch. Aber nein, da wird erstmal geloescht, ohne Ruecksicht auf Verluste !
Es ist sowieso ein Unding das ich von meiner Loeschung erst durch jemand
anders erfahren durfte. Ich mein, was soll denn das ??? Selbst wenn die
Schuld umunstoesslich feststeht, hat man zumindest in RL ein Recht auf
Stellungnahme, aber nicht hier im MorgenGrauen ! 
Ich dachte immer, selbst als Spieler haette man hier gewisse Rechte, naja
ich will jetzt nicht auf dem Thema 'Magierwillkuer' rumreiten, das ueber-
lasse ich anderen, aber eine Erklaerung haette ich schon gern, warum mich
niemand dazu befragt hat.

 Janice

P.S. mail an mich bitte ab jetzt an 'Janitze'

-----------------------------------------------------------------------------



Re: Janice (Lug,  6. Jul 1997, 03:29:48):
~#! rn=Janitze rt=868116333 rg=polizei.beschwerden
~#! tid=868116333
Hm,

hatte mich schon gewundert, wieso Crolla gleich mitbestraft wird. Sippenhaft
oder sowas...

Lug

-----------------------------------------------------------------------------



Re: Re: Janice (Fyt,  6. Jul 1997, 10:11:18):
~#! rn=Lug rt=868152588 rg=polizei.beschwerden
~#! tid=868116333

Ist Crolla nicht eigentlich insgeheim aus Berlin?

Fyt.

-----------------------------------------------------------------------------



Re^3: Janice (Janitze,  6. Jul 1997, 12:07:12):
~#! rn=Fyt rt=868176678 rg=polizei.beschwerden
~#! tid=868116333
Nein Fyt, oder besser jein, sie macht einen Teil ihres Studiums in Berlin,
und den anderen Teil in GB, im Moment ist sie in GB, und bleibt da auch
noch eine Weile.

Janice

-----------------------------------------------------------------------------



Re: Re: Janice (Mupfel,  6. Jul 1997, 15:27:11):
~#! rn=Lug rt=868152588 rg=polizei.beschwerden
~#! tid=868116333
Wo gehobelt wird...

-mupfel-

-----------------------------------------------------------------------------



Re^3: Janice (Lug,  7. Jul 1997, 01:30:24):
~#! rn=Mupfel rt=868195631 rg=polizei.beschwerden
~#! tid=868116333

Man sollte aber nicht die Tischbeine absaegen, wenn man die Tischplatte hobel
will ;)

Lug

-----------------------------------------------------------------------------



Gnadengesuch (Lug,  7. Jul 1997, 01:40:36):
Moin,

ich moechte nicht die Strafe fuer das Vergehen in Frage stellen, um das vorweg
klar zu machen. Ich moechte dennoch um eine kleine Form der Gnade fuer die
verstossene Janice bitten. Koennte sie nicht, z.B. nach einer angemessenen
Zeit, den Namen wiederbekommen? Ich vermisse sie schrecklich und denke andere
auch. Bitte? Bettel, fleh, auf Knien rutsch?
Nochmal: Ich stelle die Entscheidung des neuen Sheriffs N_I_C_H_T in Frage!

Flehentlichst
Lug

-----------------------------------------------------------------------------



Re: Gnadengesuch (Bierchen,  7. Jul 1997, 02:53:15):
~#! rn=Lug rt=868232436 rg=polizei.beschwerden
~#! tid=868232436
Moin moin! 
in einigen bereichen schliesse ich mich Lug an (ausgenommen des bettelns und
flehens, versteht sich :). allerdings wuerde ich es auch begruessen, wenn
diese spielerin zumindest ihren namen benutzen koennte. ein loeschen ist eh
schon eine strafe, die ungemein hart ist. ich moechte jetzt nicht fragen,
obwohl es mich sehr interessiert, welcher mag nicht aufgepasst hat und ob
dieser nicht diese strafe anstelle von janice verdient haette.. aber egal. ich
bin dafuer, dass janice ihren nick weiterhin benutzen kann, das sollte
zumindest drin sein.
gruss und freude am mudden,
                        Bierchen

-----------------------------------------------------------------------------



Re: Re: Gnadengesuch (Key,  7. Jul 1997, 02:59:49):
~#! rn=Bierchen rt=868236795 rg=polizei.beschwerden
~#! tid=868232436
Huhu,
So da soviele hier reinsenfen ich auch nochmal ...
Ich vermisse meine suesse kleine putzige Janice ...

*lach* 
Nene mal ernsthaft:
Das runtersetzen von Janice auf einen Level 1 Spieler sollte echt Strafe genug
sein.
Sie hat an dem Charakter wirklich lange und hart gearbeitet und naja ich
glaube selbst wenn Janice geloescht bleibt wird sie einen neuen Charakter
aufbauen.
Warum also nicht mit ihrem alten Namen?

Hmm Bierchen soweit ich weiss hat Janice ein pw einmes mags geknackt .. wofuer
willst du den mag bestrafen? Dafuer das er ein pw benutze das zu leicht zu
durchschauen war? Naja die leichten sind ab und zu die besten .. ;)

bis denn
Key

-----------------------------------------------------------------------------



Re^3: Gnadengesuch (Mysterious,  7. Jul 1997, 15:13:10):
~#! rn=Key rt=868237189 rg=polizei.beschwerden
~#! tid=868232436
ni hao!!!

so, ich moecht auch mal was sagen:

ich vermisse mein sonnenscheinchen auch recht stark und trete vehement dafuer
ein, dass der spielername 'janice' re-banished wird....
die strafe ist so schon hart genug (auch wenn berechtigt)...

bitte gebt uns unsere janice zurueck.....*fleh*...

*sich hoeflich und hoffend verneigend*....
                   dA mYsTA

-----------------------------------------------------------------------------



Re^4: Gnadengesuch (Grimmborn,  7. Jul 1997, 15:56:26):
~#! rn=Mysterious rt=868281190 rg=polizei.beschwerden
~#! tid=868232436
Wo ist das Problem? Ein mv janitze.o janice.o durch Highlander an der
richtigen Stelle ist eigentlich schon fast alles, was noetig ist.
Sinnvoll isses, nicht zu viel Arbeit, und es schmaelert die Strafe eigentlich
auch nicht. Also wird das schon passieren, bei Gelegenheit.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^5: Gnadengesuch (Astar,  7. Jul 1997, 16:13:06):
~#! rn=Grimmborn rt=868283786 rg=polizei.beschwerden
~#! tid=868232436
Hmm, an zwei stellen, oder?

Astar

-----------------------------------------------------------------------------



Re^6: Gnadengesuch (Woody,  7. Jul 1997, 16:58:31):
~#! rn=Astar rt=868284786 rg=polizei.beschwerden
~#! tid=868232436
und wer editiert name im secure savefile?

woody.
wenn schon i-tuepferl reiten, dann richtig. :)

-----------------------------------------------------------------------------



Re^7: Gnadengesuch (Orktoeter,  7. Jul 1997, 17:00:41):
~#! rn=Woody rt=868287511 rg=polizei.beschwerden
~#! tid=868232436
Ist mir eigentlich egal, aber wenn aus der Janitze wieder eine Jannice wuerde,
wuerde sich auch OrkT freuen.

OrkT bitte auch darum den Namen wieder zu ermoeglichen (fuer die richtige
natuerlich nur).

-----------------------------------------------------------------------------



Re^8: Gnadengesuch (Astar,  7. Jul 1997, 17:02:18):
~#! rn=Orktoeter rt=868287641 rg=polizei.beschwerden
~#! tid=868232436
janice nicht jannice

Astar

PS: Stimmt, das mit dem namen aendern hatte ich vergessen woody.

-----------------------------------------------------------------------------



Re^9: Gnadengesuch (Janitze,  7. Jul 1997, 17:06:21):
~#! rn=Astar rt=868287738 rg=polizei.beschwerden
~#! tid=868232436
also mir wuerde es reichen, wenn Janice einfach nur entbanishd (bloedes
wort) wird, da brauch man nix mit janitze zu kopieren oder umbennen

Janice ist geruehrt, von soviel anteilnahme

-----------------------------------------------------------------------------



Re^10: Gnadengesuch (Hate,  7. Jul 1997, 17:08:47):
~#! rn=Janitze rt=868287981 rg=polizei.beschwerden
~#! tid=868232436
Mir scheint die Haelfte der Leute hat die Implikationen nicht kapiert.
Wenn jemand in einer uni ein Passwort crackt oder sich auf andere Art und
Weise zugaenglich macht reicht das schon fuer ne Sperre und wenn derjenige
dieses dann auch noch missbraucht, so ist das in vielen Faellen schon ein
Grund fuer sofortige Exmatrikulation. 

Die Richtige Antwort waere eigentlich die Sperre der Person hinter Janice und
den Zweities. Nur aus technischen Gruenden erlauben wir ihm ueberhaupt
hier noch zu spielen.

Hate.

-----------------------------------------------------------------------------



Re^11: Gnadengesuch (Wurzel,  7. Jul 1997, 19:39:21):
~#! rn=Hate rt=868288127 rg=polizei.beschwerden
~#! tid=868232436
die "technischen gruende" sind eigentlich ganz einfach: selbst ein sitebanish 
nuetzt heutzutage nichts mehr, man kann nicht verhindern dass jemand sich
hier einloggt. ich selbst habe im prinzip fuenf verschiedene sites, von denen
aus ich mich einloggen koennte, und es waere nur eine sache von maximal
wenigen tagen, bis ich eine voellig neue ip-adresse haette. wie also sollte
man verhindern, dass jemand hier her kommt? ausser rl-toeten faellt mir da
nichts ein -> geht nicht.

wurzel

-----------------------------------------------------------------------------



Re^12: Gnadengesuch (Felagund,  7. Jul 1997, 20:27:54):
~#! rn=Wurzel rt=868297161 rg=polizei.beschwerden
~#! tid=868232436
Geht schon, is bloss sehr teuer ;) (Der Killer mein ich.)

-----------------------------------------------------------------------------



Re^13: Gnadengesuch (Janitze,  7. Jul 1997, 22:47:44):
~#! rn=Felagund rt=868300074 rg=polizei.beschwerden
~#! tid=868232436
Ich glaub, ihr kommt vom Thema ab :)

Janice bangt um ihr Leben

-----------------------------------------------------------------------------



Re^11: Gnadengesuch (Mupfel,  8. Jul 1997, 00:29:30):
~#! rn=Hate rt=868288127 rg=polizei.beschwerden
~#! tid=868232436
Naja ich wette Du bist dabei, an diesen "technischen Gruenden" zu feilen...

-mupfel-

-----------------------------------------------------------------------------



Re^12: Gnadengesuch (Lug,  8. Jul 1997, 01:14:47):
~#! rn=Mupfel rt=868314570 rg=polizei.beschwerden
~#! tid=868232436
Moin,

also Hate:

a) Dies ist ein Spiel und keine Behoerde

b) Verweis auf den Artikel von Wurzel

c) Ich denke, die meisten Gnadensucher erkennen an, dass das keine witzige
Aktion war.

d) Darum ist es ein Gnadengesuch, kein Geflame oder sonst so ein Quark.

Also man kann die Implikationen versthen und trotzdem um Gnade bitte.

Bitte Hate
Lug

-----------------------------------------------------------------------------



Re^13: Gnadengesuch (Baboon,  8. Jul 1997, 08:38:37):
~#! rn=Lug rt=868317287 rg=polizei.beschwerden
~#! tid=868232436
Ich seh das so: Janice wird zur Strafe samt Zweitis "ausgeloescht". Ihr jetzt
zu erlauben, unter altem Namen weiterzumachen, selbst als Level 1, ist eine
signifikante Abschwaechung der Strafe. Und da bin ich gegen. (Punkt)

Baboon (hat schon mal jemanden gezappt und wunderte sich, warum er bestraft
wurde. War doch gar nicht boes gemeint.)

-----------------------------------------------------------------------------



Re^13: Gnadengesuch (Hate,  8. Jul 1997, 09:20:30):
~#! rn=Lug rt=868317287 rg=polizei.beschwerden
~#! tid=868232436
Tut mir ja leid, aber ich sehe keinen Grund Gnade fuer potentielle
Cracker zu gewaehren. Sicherlich sind die technischen Gruende ein
Hinderniss, die Person zu sperren, aber wer so vorgeht, muss damit
rechnen, dass er seinen Namen loswird.

Hate.

-----------------------------------------------------------------------------



Re^14: Gnadengesuch (Stahldorn,  9. Jul 1997, 14:17:14):
~#! rn=Hate rt=868346430 rg=polizei.beschwerden
~#! tid=868232436
Mein Senf

Also ich muss erstmal sagen ich hatte Janice recht gern und war ziemlich
erschrocken und traurig dass sie geloescht wurde.
Das Vergehen jdeoch war wirklich schlimm, und deshalb war die Konsequenz
berechtigt. Da ich nicht glaube, dass das ein Einzelfall ist, dass Spieler
Magierpasswoerter benutzen - egal ob mit deren Einverstaendnis oder nicht -
ist der Fall Janice als Exempel zu sehen, das man statuiert hat, denn in den
meisten Faellen (so sie passieren), kommt man eh nicht drauf. 
Wie konnte man denn ueberhaupt bei Janice draufkommen? Naja egal.
Jedenfalls wuerde ein ent-banishen des Namens "Janice" den Wert dieses
Exempels deutlich schmaelern, deshalb bin ich ebenfalls dafuer, dass es keine
"Janice" mehr im MG geben darf.

STAHL.

-----------------------------------------------------------------------------



Re^15: Gnadengesuch (Caradhras,  9. Jul 1997, 17:22:30):
~#! rn=Stahldorn rt=868450634 rg=polizei.beschwerden
~#! tid=868232436
Ja, Staehlchen, es ist ganz sicher kein Einzelfall, dass Spieler
Magierpasswoerter benutzen. Was jetzt aber daraus folgt, dazu sage
ich lieber nichts. 
                   Bergchen Caradhras
 - wuesste mal gerne, ob es die Magier ueberrascht, dass dem so ist

-----------------------------------------------------------------------------



Re^16: Gnadengesuch (Highlander, 10. Jul 1997, 11:23:54):
~#! rn=Caradhras rt=868461750 rg=polizei.beschwerden
~#! tid=868232436
Wieso sollte es uns ueberraschen? Nur wenn wir's mitbekommen, gibt's
halt Aerger.
   HrT

-----------------------------------------------------------------------------



Re^11: Gnadengesuch (Kretek, 11. Jul 1997, 13:08:16):
~#! rn=Hate rt=868288127 rg=polizei.beschwerden
~#! tid=868232436
Exmatrikulation? Huch! Hab ich vielleicht irgendeine Rueckmeldefrist 
uebersehen?

K.

-----------------------------------------------------------------------------



Re^13: Gnadengesuch (Amazora, 29. Jul 1997, 14:35:23):
~#! rn=Lug rt=868317287 rg=polizei.beschwerden
~#! tid=868232436
Dies ist ein Spiel und wenn sich jemand nicht an die Spielregeln haelt, darf
erhalt nicht mehr mitspielen. So einfach ist das.
Amazora.

-----------------------------------------------------------------------------



Re^14: Gnadengesuch (Lug, 29. Jul 1997, 17:22:10):
~#! rn=Amazora rt=870179723 rg=polizei.beschwerden
~#! tid=868232436

Tja,

spielt aber mit. So siehddas aus.

Lug

-----------------------------------------------------------------------------



Re^15: Gnadengesuch (Anatol, 30. Jul 1997, 14:17:07):
~#! rn=Lug rt=870189730 rg=polizei.beschwerden
~#! tid=868232436
Ich kann mir nicht helfen, aber irgendwie ist das "Ein Seher spielt unter
seinem alten Namen von neu an nochmal" doch ausserhalb jeder Diskussion...
Wenn sich ein Seher selbst loescht, wird er automatisch gebanisht - und das
ist auch gut so, viele Objekte, die Quests oder Gegenden oder Raetsel
ueberwachen, merken sich die Kombination Loesung--Spieler naemlich irgendwo
und werden nicht informiert, wenn der Spieler geloescht wurde und neu
begann...
Einerseits koennte man verlangen, dass alle Objekte (abgesehen von Gilden, DIE
bekommen naemlich Bescheid ;-)) diese Dinge im Spielerobjekt speichern - und
falls das zuviel wird, zumindest z.B. die Geburtsstunde des Spieler
mitspeichert (wenn ploetzlich nicht mehr gleich, dann muss es ein neuer
Spieler sein). 
Andererseits ist es halt (noch) nicht so, und deshalb muss man sich
kontextunabhaengig damit abfinden, dass geloeschte Seher (irgendwo muss man
halt eine Grenze ziehen, Level-10-Spieler zu banishen ist dann doch ein wenig
uebertrieben...), NICHT wieder neu anfangen koennen. Zumindest nicht unter dem
selben Namen.
Ausserdem ist das MG so schwerfaellig wie Gross-A'Tuin beim Schlafwandeln, es
gibt nur wenige (Erz)Magier, die kompetent genug sind, der Schildkroete einen
Tritt zu geben und ihren Kurs zu aendern - und sich das auch tatsaechlich
trauen.

Alles nur meine Meinung.
Rochus dennoch bemitleidend,
Anatol


-----------------------------------------------------------------------------



Passwortweitergabe (Lug,  1. Aug 1997, 15:31:34):
Moin,

also ehrlich Highlander, ich finde das geht etwas weit. Irgendwie grenzt das
an Sippenhaft, besonders, wenn klar ist wem die Zweitis eigentlich gehoeren.
Mal wieder etwas ueberzogen, aber toll konsequent, ehrlich.

Lug

-----------------------------------------------------------------------------



Re: Passwortweitergabe (Anatol,  1. Aug 1997, 15:37:20):
~#! rn=Lug rt=870442294 rg=polizei.beschwerden
~#! tid=870442294
Merke: Das Passwort ist immer sovielen Leuten mitzuteilen, dass im
       Nachhinein nicht festgestellt werden kann, wer der Uebeltaeter
       war.

Wo ist das Problem, Lug? :)

Anatol, kann auch Mist schreiben (aber hallo!)


-----------------------------------------------------------------------------



Re: Re: Passwortweitergabe (Grimmborn,  1. Aug 1997, 15:42:15):
~#! rn=Anatol rt=870442640 rg=polizei.beschwerden
~#! tid=870442294
Meiner Erfahrung nach ist das ueberall gleich: Jeder ist voll fuer das
verantwortlich, was von seinem account aus geschieht. Wenn er das Passwort
weitergibt und es gibt Aerger, muss er den Kopf hinhalten. Wenn das Passwort
zu unsicher war und geknackt wurde, muss er den Kopf hinhalten. Wenn er selber
Mist baut sowieso. Ich bin eh schon lange der Ansicht, dass hier und da auch
Dummheit bestraft werden muss...

Grimmborn der Atheist kann den Ausdruck "mildernde Umstaende" nicht mehr
hoeren

-----------------------------------------------------------------------------



Re^3: Passwortweitergabe (Anatol,  1. Aug 1997, 15:58:13):
~#! rn=Grimmborn rt=870442935 rg=polizei.beschwerden
~#! tid=870442294

/*
Moment, ich fasse Highlanders Artikel so auf:
Spieler A gibt Spieler B das Passwort eines Charakters c. B macht Unsinn mit
c, daraufhin werden alle Charaktere von A und B konsequent geloescht.

Moment, das heisst: Ich hacke Mupfels Passwort, mach damit Scheisse, sage
dann, dass Mupfel mir sein Passwort gegeben hat, und das Mud ist Mupfel, seine
Zweities, mich und meine bekannten (!) Zweities los? Nein? So ist es nicht?
Angenommen, Mupfel haette mir sein Passwort gegeben, dann aber behauptet, ich
haette es gehackt? Und wer will irgendwem uebelnehmen, hier nicht die Wahrheit
zu sagen? Man nennt das glaube ich "Schutzbehauptung".

Um das durchsetzen zu koennen, muss man in der Lage sein, einem Mudcharakter
genau eine Person zuordnen zu koennen, die fuer ihn verantwortlich ist und
genau eine Person, die mit dem Charakter das Vergehen begangen hat. Und man
muss "Wahrheit" von "Falschaussage" des Boesewichts unterscheiden koennen.
Ich zweifle daran, dass Highlander das kann.

Sorry, solange es keine eindeutige Zuordnung etc. gibt, wuerde ich von harten
Regeln, die keinen Spielraum fuer Fallunterscheidungen lassen, absehen, der
beruemte Kamm, ueber den man alles scheren kann, ist meiner unbescheidenen
Meinung nach voellig ungeeignet. 
*/

Anatol

PS: Nein, ich kenne Mupfels Passwort nicht, weder so noch so.


-----------------------------------------------------------------------------



34 (Meta,  1. Aug 1997, 16:10:17):
~#! rn=Anonymous rt=861039156 rg=polizei.beschwerden
~#! tid=861039156
Ja, diese Ansichten und Vorschlawege von Anonymous sprechen mir aus dem Herzen
!
Genauso ist es. Dieses stumpfsinnige Ueben und metzeln , das verdirbt die
Stimmung im Mg , es verschluckt die Zeit sich etwas anzusehen, wirklich zu
spielen und Spass zu haben.
Es treibt die Leute in die Skripte und jene , die das nicht koennen dazu eben
nicht mehr aufzusteigen und es ganz sein zu lassewn , nur noch zu quatschen.
Aber was ich sage ist njur der billige Abklatsch von Anonymous, er oder sie
hat es schon auf den Punkt gebracht !
Meta :-)
++

-----------------------------------------------------------------------------



Re^4: Passwortweitergabe (Dhojakt,  1. Aug 1997, 19:57:35):
~#! rn=Anatol rt=870443893 rg=polizei.beschwerden
~#! tid=870442294
Eigentlich wollte ich das bereits gestern posten, aber dann hats ja den
rechner erlegt.

Dass auch zweitcharaktere ANDERER leute geloescht werden, wenn einer unsinn
gebaut hat, war von vornherein nicht klar. Daher beantrage ich, das nur auf
zukuenftig bekanntwerdende Faelle anzuwenden.
Khidar.

PS: Ich nehm an, das charakterheraussuchen geschah ueber die IP. Was, wenn
sich 2 eine IP teilen? Gilt dann Familienhaft?
PS2: Ist die Eindeutigkeit des Nachweises in diesem Fall gegeben? Crolla war
auch gelegentlich ueber Berlin eingeloggt, weil sie in GB kein tf hat.
PS3: Nein, ich persoenlich habe keinen vorteil davon (nicht dass hier noch
einer auf dumme ideen kommt). 
PS4: Wer auch so dusslig ist, illegales Zeug von seinem normalen loginrech-
ner aus zu machen...

-----------------------------------------------------------------------------



Re^5: Passwortweitergabe (Key,  2. Aug 1997, 04:19:46):
~#! rn=Dhojakt rt=870458255 rg=polizei.beschwerden
~#! tid=870442294
Hmm also auch wenn mir der Artikel von High net ganz klar ist ...

Die Zweities anderer Leute zu loeschen ist schwachsinn ....
Um mit Anatols Worten zu reden:
Wenn A B einen Charkter (C) ausleiht, und B irgendwann mal Scheisse baut, was
bitte kann dann A oder C dafuer?
Und wenn es darum geht das ja B an C haette herumpfuschen koennen ... Prima
kann er auch wenn er ihn net einloggt :)

Key

P.S.: Ich war auch mal lange Zeit von Janice Account eingeloggt und bin ih
dafuer noch immer dankbar ... Naja will mich jetzt auch einer loeschen weil
wir mal die gleiche IP hatten?

-----------------------------------------------------------------------------



Re^6: Passwortweitergabe (Key,  2. Aug 1997, 04:24:19):
~#! rn=Key rt=870488386 rg=polizei.beschwerden
~#! tid=870442294
Noch was vergessen ....

Wenn man die Zweities auch loescht bestraft man auch nur wieder die Leute die
ehrlich genug sind ihre Zweities zu makieren und so zu zeigen zu wem sie
gehoeren ...

Ob das was bringt? Naja ausser vielleicht das es immer mehr Zweities geben
wird die net gekennzeichnet sind und im geheimen gehalten werden ...

Key

-----------------------------------------------------------------------------



Re^7: Passwortweitergabe (Anatol,  2. Aug 1997, 04:30:13):
~#! rn=Key rt=870488659 rg=polizei.beschwerden
~#! tid=870442294
Andererseits - ohne Highlander den Ruecken staerken zu wollen ;) - ist die
Unsitte "A verleiht c an B" inzwischen ekelhaft weit verbreitet. Richtig
rollenspielfoerdernd ist das auch nicht gerade. 

Ein paar unschuldige Opfer, die im Rahmen des "Verleihnix"-Projektes geloescht
werden, aendern diesen Missstand bestimmt! Und das finden bestimmt alle gut.

Von den unschuldigen Opfern einmal abgesehen. 

Anatol


-----------------------------------------------------------------------------



Re^8: Passwortweitergabe (Key,  2. Aug 1997, 04:35:03):
~#! rn=Anatol rt=870489013 rg=polizei.beschwerden
~#! tid=870442294

Hmm aber Zweities sind Rollenspielfoerdernd??

Nene Anatol das Argument zaehle ich nichtS ;)

Und ein Zweitieverbot ist auch nix ... darueber hatten wir schon eine
diskusion ;))

Key

-----------------------------------------------------------------------------



Re^8: Passwortweitergabe (Lug,  2. Aug 1997, 14:49:06):
~#! rn=Anatol rt=870489013 rg=polizei.beschwerden
~#! tid=870442294

Oh nein,

Anatol nun redest Du auch noch von "rollenspielfoerdernd". IMHO ist das MG
ewig weit von Rollenspiel entfernt. Macht aber nix, es gibt ja MUSHs fuer den,
der das will.

Lug

-----------------------------------------------------------------------------



Re^5: Diskussion (Padreic,  2. Aug 1997, 16:02:00):
~#! rn=Gloin rt=861043161 rg=polizei.beschwerden
~#! tid=861031136
Wie waer es denn einfach mit dem Verbot zweitis gleichzeitig einzuloggen?
das wuerde dann auch gleichzeitig den zweitimissbrauch beseitigen (Rubrik
allgemeines, Artikel53 von Skipper)
                       Padreic faende dass auf alle Faelle eine gute Sache.

-----------------------------------------------------------------------------



Re^6: Diskussion (Anatol,  2. Aug 1997, 16:59:26):
~#! rn=Padreic rt=870530520 rg=polizei.beschwerden
~#! tid=861031136

Das Verbot, Zweitcharaktere nicht gleichzeitig einzuloggen, wuerde
tatsaechlich Sinn machen. Aber ist es durchsetzbar? Tut mir leid, Padreic,
solange sich nichteinmal Magier (die mit dem Begriff "Verantwortung" etwas
anfangen koennen _muessen_) an die bestehende Regel, Zweities nicht mit dem
Magier zusammen einzuloggen, halten koennen und glauben, es merkt schon
keiner, dass da noch ein Invis-Magier da ist (und gelegentlich...
"unterstuetzt"), solange kann keiner von einem Spieler verlangen, dass er
seine Zweities raushaelt. 
Ach ja, die alten Probleme wieder: 
Zum einen duerften aus dem Grunde der Fairness Magier keine Zweitcharaktere
spielen, weil sie das Wissen eines Magiers haben oder haben koennten, was 
aber gegen die Erfahrung spricht, dass Magier ohne Zweities oft etwas 
mudrealitaetsfern werden. Die Behauptung, dass Magier unbemerkt an ihrem
netztoten Spieler rumspielen koennen, halte ich weiter aufrecht, wenn das
Gewissen des Magiers hier nicht 'greift', ist eh alles verloren.
Zum anderen betrifft die Regelung wieder vor allem die, die, die sich soweit 
fair verhielten und ihre Zweities kennzeichneten oder bekanntgaben.

Um den von Lug erwaehnten Rollenspielstichpunkt zu klaeren: Ich bin ich, ich
bin nervig und arrogant, aber ich bin so ziemlich unverwechselbar. Ein
Charakter, der von 2-5 oder mehr Personen gesteuert wird, hat keine echte
Persoenlichkeit mehr - weder die des Menschens noch eine gespielte.

Ich bezweifle, dass eine Diskussion darueber noch etwas bringt, aber wenn sich
ein paar Spinner auf der Party zusammensetzen, koennte ja tatsaechlich wieder
was dabei herauskommen. Auch wenn die Initiatoren vielleicht wieder die
Gelackmeierten sind ;-)

Anatol - den Thread nicht nach 'diskussion' verlegend, weil zerissene Threads
         nervig sind, ne?


-----------------------------------------------------------------------------



Zweities (Mindblade,  3. Aug 1997, 22:49:59):
Hm, also zum Thema 2ties oder besser xties gibts glaub ich noch einiges mehr
zu sagen.
Also erstens, wenn man einen 2tie "verleiht" und derjenige scheisse damit
baut, wuerd ich sagen pech fuer den verleiher! man sollte sich vorher
ueberlegen an wen man seine 2ties verleiht.
2. ich faends nicht gut, wenn es ein verbot gaebe, gleichzeitig 2tie und 1tie
einzuloggen, dazu waere zu beispiel zu sagen, dass es orte gibt, an denen man
entweder einen 2tie haben muss, oder nen kleriker, der mitkommt. Nur sind
diese orte nicht grade dafuer geschaffen auch noch nen anderen zu "gefaerden"!
ausserdem wuerde diese regelung wieder nur dazu fuehren 2ties nicht zu
kennzeichnen.
drittens: ich finds voll ok 2ties "auszuleihen", ganz einfach um zu verhindern
dass das mg mit 2ties zugemuellt wird.
was ist schlimm daran sich mal nen kleriker 2tie zum entgiften, etc.
auszuleihen. hm, und ausserdem faellt das 2tie dasein wohl kaum unter
rollenspiel da man eh durch alle quests durchrennt!;)

So genug rumgemuellt,
Mind*, kopfschuettelnd!

-----------------------------------------------------------------------------



Re: Zweities (Hate,  3. Aug 1997, 22:58:16):
~#! rn=Mindblade rt=870641399 rg=polizei.beschwerden
~#! tid=870641399
Also das mit dem "gefaehrden" find ich ja ne schoene Aussage.

Also entweder hier hat jemand das Prinzip des gemeinsamen Spielens nicht
begriffen, oder ein ueberzogenes Sicherheitsbewusstsein.

Hate, fragt sich was das soll.


-----------------------------------------------------------------------------



Re: Re: Zweities (Mindblade,  3. Aug 1997, 23:18:56):
~#! rn=Hate rt=870641896 rg=polizei.beschwerden
~#! tid=870641399
Also Hate, ich glaub da hast Du was falsch verstanden! Ich bin schon fuer
Teammetzeln und tue das fast ausschliesslich!
Aber 1. hat nicht immer grad nen Kleriker Lust/Zeit mitzumetzeln und 2. gibts
Gebiete, die von vielen eh gemieden werden, weil sie keinen Bock drauf haben
(z.B. Vlad-katakomben) und das war eher so mit dem gefaehrden gemeint. Wenn
ich da reingehe rechne ich damit draufzugehen, aber das ist noch lange kein
Grund dafuer z.B. irgend nen Kleriker zu ueberreden dahin zu gehen! Und genau
dafuer hab ich nen Kleriker 2tie, hm? 
Also das mit dem Teammetzeln war nicht grossspurig oder sonstwie gemeint, nur
ueberrede ich keinen dazu an solchen Orten zu metzeln, ok?

Mind*
PS: Eigentlich war das auch nicht die Intention meines Artikels!;)

-----------------------------------------------------------------------------



Re^3: Zweities (Yantro,  4. Aug 1997, 16:00:46):
~#! rn=Mindblade rt=870643136 rg=polizei.beschwerden
~#! tid=870641399

Also ich muss zugeben, dass es sinnlos ist (leider), ueber ein generelles
zweitiebverbot zu reden, aber ein gleichzeitiges EinloggVerbot liesse sich
machen und das ist ganz einfach! Sicher kann Anatol tausendmal sagen, dass das
unfair ist, weil man nicht alle erwischt, aber Tatsache ist doch, dass das
immer so ist. Im Strafrecht wird vieles verfolgt und ich denke, dass das
sinnvoll so ist. Standardbeispiel: Willst Du Diebstahl oder Mord legalisieren,
weil nicht garantiert werden kann,d ass alle erwischt werden?? 
Die Loesung fuer das problem ist ganz einfach, wenn auch brutal und heisst
Abschreckung. Wenn wir die Strafe raussetzen, dann ist das schon ok... es muss
nur auch von allen Sheriffs konsequent durchgezogen werden. So denke ich zB,
dass es fuer ein gleichzeitiges Einloggen zweier oder mehrerer Charaktere nur
EINE Strafe gibt und das ist das Loeschen ALLER bekannter CHaraktere des
Spielers. Sowas schreckt ab und selbst wenn nicht alle erwischt werden, so
werden doch fast alle dreimal ueberlegen, bevor sie es tun. 

Charaktere wurden und werden immer wieder verliehen und da gibt es eigentlich
auch keine (sinnvolle) Diskussion: Haftbar ist immer der, der verleiht.

Wenn einer sagt, dass er sich nur mit einem Zweitie in eine Gegend trauen
kann, weil die anderes nicht wollen, dann tut er mir Leid und die anderen
auch.... ist aber kein Argument FUER Zweities. Wenn einer sagt, dass es
Gegenden gibt, wo man einen Zweitie haben MUSS (zB Daemonendimension), dann
sollte man darueber nachdenken, dass es vielleich auch vom proggenden Magier
so gewollt ist, dass VERSCHIEDENE Spieler dahinterstehen und das gerade dies
den Spielreiz ausmachen soll... Wer das nicht kapiert, der ist arm und hat in
einem Mud eigentlich nix verloren.

Harte Worte   Yantro.

P.S.: Ich bin mir sicher, dass es zu dem Thema neue Regeln und Entscheidungen
geben wird, aber sicher nicht vor der Party... DA gibt es dann aber ein Forum
(nach dem Seminar), wo ueber genau das diskutiert werden kann... deswegen
faende ich es schoen, wenn man die 2 Wochen noch Geduld aufbringen koennte und
wenn Schweigen in der MPA herrscht

-----------------------------------------------------------------------------



Re^4: Zweities (Cuchullin,  4. Aug 1997, 16:10:59):
~#! rn=Yantro rt=870703246 rg=polizei.beschwerden
~#! tid=870641399
Du vergasst zu erwaehnen, dass es sich nur um Deine Meinung handelt.
Ausserdem wuerde ich nicht wagen, neue Regeln mit Konsequenz einfuehren zu 
wollen, wenn die bestehenden Regeln nur zur Gewissensberuhigung dienen.
Gewissensberuhigung dann, wenn man mal einen Spieler loswerden will und 
einen Grund dazu braucht.

Und dass man, nur weil man nicht alle erwischen kann, Mord trotzdem nicht
legalisiert, ist mir auch klar, ich bin nicht ganz so bloede, wie Koeln 
vielleicht denkt. Aber den Leuten, die sich _freiwillig_ fair verhielten,
ins Gesicht zu schlagen, halte ich fuer keine sehr gute Idee. I'm sorry.
Mach doch einen neuen Polizeista.. aeh ein neues Mud auf, wenn Du konsequent
sein willst. Und beginne damit, Magier von Spieler strikt zu trennen. Und 
dann wundere Dich nicht, wenn keine Stimmung aufkommen will.

Ich weiss selbst nicht, worauf ich hinaus will. Ich weiss nur, dass man als
Magier ziemlich leicht den Blick fuers Spielerleben verliert. Daher - Da
muss ich Dir recht geben, Yantro - wird eine RL-Diskussion mit Magiern
und Nicht-Magiern wohl das Beste sein, um auf einen nicht ganz so braunen
Zweig zu kommen.

Das ist _meine_ Meinung, wie immer arrogant usw....
Anatol


-----------------------------------------------------------------------------



Re^5: Zweities (Grimmborn,  4. Aug 1997, 16:19:18):
~#! rn=Cuchullin rt=870703859 rg=polizei.beschwerden
~#! tid=870641399
Aeh, irgendwas muss ich verpasst haben. Die Diskussion ging darum, dass beim
"Mistbauen" das Argument "Ich hatte den Charakter verliehen, das war nicht
ich" nicht als Ausrede zaehlt (d.h. der Verleiher kriegt eins ueber), und
ausserdem, wenn halbwegs feststeht, wer der tatsaechliche Uebeltaeter war,
derjenige auch eins auf die Nase bekommt. Ich kann da nichts erkennen, wo man
"Leuten, die sich _freiwillig_ fair verhalten, ins Gesicht" schlaegt. Ich
halte (persoenliche Meinung, also allgemeingueltig) sowohl das leihen als auch
das Verleihen fuer nicht sonderlich fair.
Und wohlgemerkt, es geht nicht darum, dass das Verleihen verboten wird/ist,
sondern darum, was im Konfliktfall passiert.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^4: Zweities (Alpha,  4. Aug 1997, 16:22:46):
~#! rn=Yantro rt=870703246 rg=polizei.beschwerden
~#! tid=870641399
Jut, Yantro, man kann natuerlich Zweitis verbieten. Aber glaubst Du wirklich,
dass alle diesem Verbot folgen? Zumindest bei Sachen, bei denen ich das Verbot
ganz und gar nicht einsehe, werde ich nicht die geringsten Skrupel haben,
dieses Verbot zu uebergehen. Wie im RL ist es wohl allen klar, das Mord
verboten ist - und damit auch heftigst bestraft wird. Sollte aber irgendjemand
auf den trichter kommen alltaegliche Sachen, sagen wir KaugummiKauen zu
verbieten, nur weil er persoenlich irgendwas dagegen hat....wer folgt so einem
Verbot oder hatte Gewissensbisse, es zu Ueberschreiten? Pah. Moeglichkeiten
gibt es eh genug. Und Zweitis gehoeren zum Mud dazu. ( Ich wuesste gern, wie
man einen Zweiti anmelden soll, wenn man sich nicht gleichzeitig einloggen
darf.)

-----------------------------------------------------------------------------



Re^5: Zweities (Key,  4. Aug 1997, 17:42:45):
~#! rn=Alpha rt=870704566 rg=polizei.beschwerden
~#! tid=870641399
Bitte den Artikel von Alpha net so beachten ....
Auch wenn er der gleichen meinug ist wie ich ... naja nur der meinung das
zweitieverbot bloede waere ... aber seine argumente ... wie immer halt ...

Key

-----------------------------------------------------------------------------



Re^5: Zweities (Wurzel,  4. Aug 1997, 19:31:32):
~#! rn=Alpha rt=870704566 rg=polizei.beschwerden
~#! tid=870641399
nicht dass ich was gegen ein kaugummiverbot haette... hat aber wirklich keinen
sinn. die amerikaner haben mal sowas aehnliches mit der prohibition versucht.
was hat es gebracht? das organisierte verbrechen. und nach der aufhebung der
prohibition ist das natuerlich uebriggeblieben...
ein zweitiverbot fuehrt nur dazu, dass diese nicht mehr markiert werden. und
selbst wenn das zweitiverbot irgendwann wieder aufgehoben wird, wird es dann
unmengen an weiterhin unmarkierten zweitis geben. also was solls?

wurzel

-----------------------------------------------------------------------------



Re^4: Zweities (Schlips,  4. Aug 1997, 19:35:53):
~#! rn=Yantro rt=870703246 rg=polizei.beschwerden
~#! tid=870641399
Hi Yantro,
ich hab zwar net viel Ahnung von Computerei (bin halt nur user bzw spieler)
aber ich frag mich WIE Du ueberpruefen willst, ob zweities eingeloggt sind?
Ich wuerde doch mal annehmen ueber die IP Adresse, von wo aus man eingeloggt
ist. Das kann aber zu Problemen fuehren, da bei uns die Anbindung ans Internet
zB ueber einen Rechner laeuft. Von aussen ist das wohl net zu erkennen, wenn
da mehrere Leute von verschiedenen Rechnern des Hausnetzes eingeloggt sind.
Bei uns im Institut spielen mehrere Leute und wir wurden von bestimmten
Magiern auch schon fuer die Zweities des anderen gehalten.

Schlips

-----------------------------------------------------------------------------



Re^5: Zweities (Jasper,  4. Aug 1997, 22:08:04):
~#! rn=Schlips rt=870716153 rg=polizei.beschwerden
~#! tid=870641399
nicht immer aber immer oefter kann man den spieler auch bis zum terminal
zurueckverfolgen.
wenn erst mal das gleichzeitige einloggen von zweities verboten ist und
auch verfolgt wird, steht auch einem vernuenftigten metzeln in
parties/teams nichts entgegen, was bisher wohl nur noch nicht von einem
erzi eingebaut wurde, weil man berechtigter weise befuehrchtet, dass
solche parties nur zum hochziehen von xties dienen. bei den kaempfern 
solls ja sowas in der art geben, dass einer den schaden auf sich zieht...

naja macht was ihr wollt....

jasper ruft felagund nach hast du noch equip im zombie, ich hab alles verloren
*schnueff* 

-----------------------------------------------------------------------------



Re^4: Passwortweitergabe (Rantanplan,  5. Aug 1997, 00:56:05):
~#! rn=Anatol rt=870443893 rg=polizei.beschwerden
~#! tid=870442294
Ich werde das mal ganz einfach erklaeren:

Wenn jemand was macht, was jemand anderes, der zufaellig in der Position ist
das zu ahnden, nicht gefaellt, so wird erstere nach gutduenken des zweiten
bestraft.

So einfach ist das Leben ;-)))

Oe*

-----------------------------------------------------------------------------



WARUM zweities verbieten? (Pilgrim,  5. Aug 1997, 11:26:31):
Hi,

vielleicht ist die Frage ja "dumm", aber kann mir mal einer erklaeren,
warum er (ihr/sie/...) zweities verbieten will ... ich seh da noch nicht
den Sinn ...

Pilgrim

PS: 2-tie heist nicht 102031-tie ;-)
PPS: ob eine Regel / Verbot ueberpruefbar ist, sollte prinzipiell nichts
     mit der Einfuehrung derselben zu tun haben!

-----------------------------------------------------------------------------



Re^4: Passwortweitergabe (Hardil,  5. Aug 1997, 11:34:13):
~#! rn=Anatol rt=870443893 rg=polizei.beschwerden
~#! tid=870442294

Was ist, wenn ich hier das Passwort eines Zweities poste (also es allen
mpa-Lesern zu Verfuegung stelle) ?
Dann macht Anatol Scheiss damit, und alle mpa-Leser werden geloescht. Und all
deren Zweities und Ersties? Au ja. :)

-Hardil. Hat was gegen Zweities.

-----------------------------------------------------------------------------



Re^6: Zweities (Tolpatsch,  5. Aug 1997, 18:19:34):
~#! rn=Grimmborn rt=870704358 rg=polizei.beschwerden
~#! tid=870641399
Hm,

also in Anatols Artikel war doch von 'Verleihen' garnicht die Rede, also
kannst Du das 'fair' auchnicht darauf beziehen...

Tolpatsch sagt: Loescht alle Top-Listen!

-----------------------------------------------------------------------------



Re: WARUM zweities verbieten? (Felagund,  5. Aug 1997, 21:23:07):
~#! rn=Pilgrim rt=870773191 rg=polizei.beschwerden
~#! tid=870773191
Geht das aus Jaspers Artikel nicht hervor, Pilgrim? Es ist einfach so, dass
viele Dinge, die das Zusammenspiel foerdern wuerden, und wahrscheinlich auch
den Spielspass fuer die meisten, einfach deshalb nicht gemacht werden, weil
derjenige. der sowas vielleicht coden wuerde zu recht befuerchtet, dass es
fuer Xties missbraucht wuerde.
Dazu gehoeren solche Dinge wie Partymodus, Selbstverwaltung der Gilden (sowas
macht saumaessig Laune) und ueberhaupt viele Sachen, die Rollenspiel
ermoeglichen wuerden.
Es stellt sich eben nur die Frage, was wichtiger ist: Spass am Spiel oder
moeglichst viel persoenliche Macht. (schoen, auch das macht spass..nur eben
mir nicht, deshalb spiel ich hier eben auch ncht und seh auch keinen Sinn
darin, irgendwelche Ideen hier zu verwirklichen)
Ach ja..um das Argument ohne Zweities kaeme man zu nix zu entkraeften braucht
man sich eigentlich auch bloss Ringor anschauen, aber das interessiert dann
die betroffenen wohl auch nicht, oder?

gruss..Fela

P.S. ich hoer immer wieder: wenn du roleplay willst dann bleib halt im
Xyllomer und misch dich hier nicht ein, aber irgendwie fuehl ich mich dem MG
halt doch verbunden und wuerde auch Leuten, die kein englisch sprechen (bzw
lesen) ein vernuenftiges MUD goennen
P.P.S. auf meine Frage, wieso Leute , die GildenNPCs fuer Stupse killen nicht
wenigstens gildenintern bestraft werden, bekam ich letztens von einem Erz zu
hoeren, man koenne es mit dem Rollenspiel auch uebertreiben. Letztendlich frag
ich mich dann nur, wo man ueberhaupt damit anfangen will.

-----------------------------------------------------------------------------



Re^4: Zweities (Helva,  6. Aug 1997, 08:48:15):
~#! rn=Yantro rt=870703246 rg=polizei.beschwerden
~#! tid=870641399
Mord und Totschlag
Ich denke, mit "Abschreckung" meinst Du Generalpraevention. Gerade bei Mord
hilft das aber gar nichts, da es sich zumeist um beziehungstaten bzw. sehr
schwer gestoerte persoenlichkeiten handelt. Dass solche Taten, sowohl aus
moralischen gruenden, als auch zum Schutz der Oeffentlichkeit und auch aus
Genugtuungsgesichtspunkten geahndet werden, ist m.E. nach selbstverstaendlich.
ich denke nur, dass man aus diesem Beispiel nichts fuer die 2-ties Diskussion
ableiten kann.
Helva
Ps. Schweigen in der mpa ist langweilig ;)

-----------------------------------------------------------------------------



Re: WARUM zweities verbieten? (Raffi,  6. Aug 1997, 13:01:26):
~#! rn=Pilgrim rt=870773191 rg=polizei.beschwerden
~#! tid=870773191
> PPS: ob eine Regel / Verbot ueberpruefbar ist, sollte prinzipiell nichts
>      mit der Einfuehrung derselben zu tun haben!

Hoert, Hoert ! Das heisst also Verbote/Regeln einfach nur so, um ihrer
selbst willen und ohne jeden Bezug zur Realitaet ? Davon gibts schon
RL viel zu viele - willst Du das hier auch haben ?

Gruss
H.
(P.S.: haste brav Kranzgeld gezahlt ?)

-----------------------------------------------------------------------------



Re^6: Zweities (Jimdigriz,  6. Aug 1997, 22:19:11):
~#! rn=Jasper rt=870725284 rg=polizei.beschwerden
~#! tid=870641399
Moin,

das eindeutige zuordnen von tcp-connections (charactere) zu
einem benutzer geht eigentlich kaum zuverlaessig.
Die einzige Moeglichkeit in dieser hinsicht ist eine identd-
Abfage, leider ist diese nicht nur manipulierbar, auf
DOSEN nicht zur Verfuegung und auch noch auf vielen Systemen
gar nicht installiert.
Eine ip-addressen-bezogene zuordnung is auch quatsch, weil zB 
hunderte von Benutzern auf einer Maschine eingeloggt sein koennten,
naja vielleicht nicht 100erte aber viele jedenfalls.

DM 0.02,
 Jim DiGriz

-----------------------------------------------------------------------------



Re^7: Zweities (Yantro,  7. Aug 1997, 08:10:50):
~#! rn=Jimdigriz rt=870898751 rg=polizei.beschwerden
~#! tid=870641399

Also, ich weiss ja nicht, fuer wie beschraenkt ihr hier einige Magier haltet,
aber ich muss zB zugeben, dass ich fuer eine vielleicht nicht vollstaendige,
aber doch gute Liste von Zweities einiger SpielerInnen keine IP nachzuschauen
brauche. Es ist doch so, dass es bei vielen einfach bekannt ist, wer hinter
welchem Zweitie steckt.

Yantro

-----------------------------------------------------------------------------



Re^8: Zweities (Key,  7. Aug 1997, 09:09:17):
~#! rn=Yantro rt=870934250 rg=polizei.beschwerden
~#! tid=870641399
Eben Yantro ... somit werden nur wieder die bestraft die ehrlich genug sind
und zugeben wer ihre Zweities sind ...

Und wenn man jetzt schon ehrlichkeit bestraft ....

key

-----------------------------------------------------------------------------



Re^9: Zweities (Raffi,  7. Aug 1997, 12:39:01):
~#! rn=Key rt=870937757 rg=polizei.beschwerden
~#! tid=870641399
Wie gut diese Schaetzungen sind weiss ich zur genuege. Ich werde so im schnitt
einmal pro woche verdaechtigt ein 2tie zu sein. Darunter in der Vergangenheit
auch immer wieder magier die einfach Rumraten!

Diese ganze Zweitiraterei ist alles andere als verlaesslich (selbst fuer
Yantros 2tie wurde ich schon gehalten). Im Endeffekt komts auf
Verdaechtigungen und sinnlose Mutmassungen raus - Oder, wenn der beurteilende
(Argl) sauber arbeitet, werden nur die 2ties erwischt die sich selbst
freimuetig zuu ihrem ersti bekennen (Wie Key schon sagte).

Also lasst es lieber.

Gruss
H.

-----------------------------------------------------------------------------



Re^10: Zweities (Orktoeter, 11. Aug 1997, 15:22:45):
~#! rn=Raffi rt=870950341 rg=polizei.beschwerden
~#! tid=870641399
1. Zweities sind ganz nuetzlich, wenn es lagt. Man kann immer so schoen hin
und her schalten und sehen, ob sich bei dem anderen schon etwas getan hat.
2. Zweities an stellen mit wichtigen NPC ideln zu lassen und die dann sofort
zu killen ist doof und unfair (ich gestehe, das ich in letzter zeit meistens
beim Klitzeldrom stehe. Aber ich kille den/das nicht regelmaessig und wenn
jemand anderes da ist, lass ich dem/der meistens den vortritt. Ich hhabe auch
schon diverse male Leuten bescheid gesagt, das der Drom da ist, wenn trotzdem
jemand meint, das waere so nicht ok, bitte ne mail an mich, ich werde dann
ueberlegen, das zu aenderrn)
3. zweities erkenne zu wollen ist schwer moeglich, ich habe zugang zu
verschiedenen rechnern und kann daher zweities ueber verschiedene Rehcner
einloggen, das werden andere auch koennen.
4. Wenn man das hier auch nur halbwegs als Rollenspiel auffasst, warum werden
dann zweities mitbestraft, wenn einer aus der Familie etwas nicht erlaubtes
gemacht hat ? Ich denke man solte doch erst mal sehen, ob andere
Familienmitglieder auch schuldig sind und nicht gleich alle bestrafen,
schliesslich sind das (im besten Fall) eigene charactere.

OrkT.

-----------------------------------------------------------------------------



Sonich, ne? (Grimmborn, 11. Aug 1997, 22:50:08):
Amazora ist nicht anwesend.
[...]
Alter: 82d 10:38:52,   Magierlevel: 21
[...]
Amazora ist Testspielerin (Ex-Schrumpfi).

Soweit ich weiss, ist es verboten, Testspieler zu Magiern zu machen (ausser zu
Testmagiern). Und Amazora war auch vorher schon Testspielerin. Damit ist
Rochus wohl illegal taetig geworden...

Also, entweder Rochus muss bestraft werden (ich stimme fuer site-banish
Muenster), oder gleiches Recht fuer alle. Und das hiesse, dass Gruh wieder
Magier werden wuerde...

Grimmborn der Atheist ist eh uebermuedet.

-----------------------------------------------------------------------------



Re: Sonich, ne? (Asmodis, 11. Aug 1997, 22:52:13):
~#! rn=Grimmborn rt=871332608 rg=polizei.beschwerden
~#! tid=871332608
Ist nur die Frage: Wer ist Amazoras Chefin? Ex-Schrumpfi ist es nicht,
der Name existiert in MG nicht ....
Ist Amazora also eine illegale Testspielerin? Ist das hier strafbar ?
....

-----------------------------------------------------------------------------



Re: Sonich, ne? (Amazora, 12. Aug 1997, 16:10:22):
~#! rn=Grimmborn rt=871332608 rg=polizei.beschwerden
~#! tid=871332608
Wer ist Gruh?
A.

-----------------------------------------------------------------------------



Re: Re: Sonich, ne? (Orktoeter, 13. Aug 1997, 19:12:37):
~#! rn=Amazora rt=871395022 rg=polizei.beschwerden
~#! tid=871332608
Gruh hin oder her, aber wie viele Testspieler gibt es eigentlich, die nicht
Magierzweities sind ?
Ich habe den Eindruck, es gibt inzwischen so einge Testies die rumlaufen, aber
nicht von einem Magier gespielt werden.
Im Falle eines (sich selbst geloescht habenden ex-magiers) mag das ja noch
verstaendlich sein (auch wenn ich dann sagen wuerde, das man das savefile des
magiers rauskramen sollte, wenn er/sie denn wieder Programmieren moechte),
aber meines wissens nach gibt es auch Testspieler, die nicht Magier sind und
trotzdem von GOTO bis Clonen alles koennen.

Ist es nicht so, das Testspieler nur von Magiern gemacht werden duerfen, um
etwas (selbst) zu testen ? (waere doch sonst auch eine umgehung des
Magiervertrages)

OrkT, der gegen unkontrollierte Testies ist.

-----------------------------------------------------------------------------



Gewaltenteilung (Grimmborn, 20. Aug 1997, 15:16:07):
Hmm, ist eigentlich schonmal jemandem aufgefallen, dass hier Exekutive und
Jurisdiktion in Personalunion vereint sind? Aus demokratischem Standpunkt
heraus ist das doch eher bedenklich...
Oder mit anderen Worten: Derjenige, der verurteilt, loescht auch. Da wird der
Richter zum Henker. Zum Henker damit...

Grimmborn der Atheist ist fuer eine "Henker-EM".

-----------------------------------------------------------------------------



Re: Gewaltenteilung (Hobo, 20. Aug 1997, 15:19:43):
~#! rn=Grimmborn rt=872082967 rg=polizei.beschwerden
~#! tid=872082967

Wieder einmal der alte Spruch: 

 DAS MUD IST KEINE DEMOKRATIE.

Ich hoff', das reicht...


 Hobo

-----------------------------------------------------------------------------



Re: Re: Gewaltenteilung (Highlander, 20. Aug 1997, 15:22:45):
~#! rn=Hobo rt=872083183 rg=polizei.beschwerden
~#! tid=872082967
Abgesehen davon, dass Du die Antwort eh schon kennst/kennen solltest:
Ich _bin_ der Henker. Sprich, ich bin derjenige, der die Axt und nachher
in der MPA die Feder schwingt. Ich beschliesse normalerweise keine
Strafen im Alleingang.
Ausserdem sind wir hier eine Herrschaft von wenigen, keine des Volkes.
Gell, Hobo? :>

   HrT

-----------------------------------------------------------------------------



Re^3: Gewaltenteilung (Hobo, 20. Aug 1997, 15:24:51):
~#! rn=Highlander rt=872083365 rg=polizei.beschwerden
~#! tid=872082967
Wenige???

Es werden immer mehr :(

 Hobo - will, dass die Oligarchie auch wenigen vorbehalten bleibt.

-----------------------------------------------------------------------------



Re: Re: Gewaltenteilung (Jimdigriz, 20. Aug 1997, 21:40:51):
~#! rn=Hobo rt=872083183 rg=polizei.beschwerden
~#! tid=872082967

Mei Hobo,
 Du faellst auch auf jeden Bait rein *gaehn*

Jim DiGriz

-----------------------------------------------------------------------------



Re: Gewaltenteilung (Kretek, 21. Aug 1997, 15:25:56):
~#! rn=Grimmborn rt=872082967 rg=polizei.beschwerden
~#! tid=872082967
Au ja! Und natuerlich kandidiere ich gleich fuer diesen noch zu
schaffenden Posten! :-)


KreteK

-----------------------------------------------------------------------------



Re: Gewaltenteilung (Asmodis, 21. Aug 1997, 15:32:09):
~#! rn=Grimmborn rt=872082967 rg=polizei.beschwerden
~#! tid=872082967
Der eine hat die Arbeit und ein anderer das Vergnuegen ? Glaube
nicht, dass dann jemand den Richter-Posten haben will :)

-----------------------------------------------------------------------------



Beschwerde, was sonst (Zardoz, 29. Aug 1997, 14:21:34):
Yantro hat gegen eine Magierregel verstossen, da er sich gleichzeitig mit
seinem markierten!!! Zweitie eingeloggt hat! Ich beantrage seine Abstufung!

Zardoz

-----------------------------------------------------------------------------



Re: Beschwerde, was sonst (Anatol, 29. Aug 1997, 14:22:21):
~#! rn=Zardoz rt=872857294 rg=polizei.beschwerden
~#! tid=872857294
Sei doch einfach froh, dass er ihn ueberhaupt markiert hat... ;-)

Anatol


-----------------------------------------------------------------------------



Re: Beschwerde, was sonst (Mango, 29. Aug 1997, 14:22:25):
~#! rn=Zardoz rt=872857294 rg=polizei.beschwerden
~#! tid=872857294

Zeugen sollte es ja genug geben.

Mango, meldet sich.


-----------------------------------------------------------------------------



Re: Re: Gewaltenteilung (Lug, 31. Aug 1997, 02:10:57):
~#! rn=Asmodis rt=872170329 rg=polizei.beschwerden
~#! tid=872082967

Richterposten?

Her damit! ;)

I'm judge and jury, executioner...  (Pallas)

Lug

-----------------------------------------------------------------------------



Re^3: Gewaltenteilung (Felagund,  1. Sep 1997, 16:45:37):
~#! rn=Lug rt=872986257 rg=polizei.beschwerden
~#! tid=872082967
Is aber leider nicht die Strafe dafuer..die Konsequenz bedeutet lediglich,
dass der Zweitie diesen Status verliert und zum Testie wird.

-----------------------------------------------------------------------------



Artikel-Verlegerei (Anatol,  3. Sep 1997, 18:34:34):
Es waere mir lieb, wenn die Magier, die Artikel nach "muell" verlegen, nur
weil sie nicht in die laufende "Diskussion" (*lach*) passen, dieses in Zukunft
unterlassen wuerden.

Anatol


-----------------------------------------------------------------------------



Re: Artikel-Verlegerei (Anatol,  3. Sep 1997, 18:45:20):
~#! rn=Anatol rt=873304474 rg=polizei.beschwerden
~#! tid=873304474
[Seher:Patryn] ach anatol, du bist ja wichtiger als ich :)
Ok, ich muss es wohl erlaeutern, damit es auch Patryn begreift:
Eine moderierte Diskussion ist etwas, wo ein 'Moderator' die Diskussion
leitet und unpassende Beitraege - "me too"-Artikel, Gemecker pur, falsches
Thema etc. - entfernt.
Ich kann mich nicht daran erinnern, dass die Rubrik "entwicklung" oder 
irgendeine andere Rubrik als moderierte Diskussion gefuehrt wird, geschweige
denn Patryn moderierende Funktion hat.

Nichts gegen das "muell"en von sinnlosen Einzeilern, deren Sinngehalt in jeder
Leute Meinung gegen 0 strebt.

Anatol


-----------------------------------------------------------------------------



Re: Re: Artikel-Verlegerei (Patryn,  3. Sep 1997, 21:46:12):
~#! rn=Anatol rt=873305120 rg=polizei.beschwerden
~#! tid=873304474
danke master anatol, du der traeger und behueter der weisheiten dieser welt
du brachtest mich ein stueck deiner erhabenden allwissenheit naeher, auch
wenn mir zweifelsohne gewisse grenzen obliegen, die es mir nie ermoeglichen
werden, dein allumfassendese wesen zu begreifen...

na wenn ich sowas schon wieder hoere: damit es auch blabla begreift...
der sinngehalt des zaenkischen kindergeplaerres von orktoeter und
grimmborn hatte die schwelle des sinngehaltes von 0 laengst unterschritten.
zweifelsohne war es taktisch nicht sehr guenstig, es in muell zu verlegen.
schliesslich spiegelt dies eine persoenliche meinung meinereiner wieder,
aber welches verlegen macht das nicht?! grimmborn hat mich bereits darauf
hingewiesen, dass es in etikette besser aufgehoben waere, auch wenn
diese rubrik meiner meinung nach zu viel der ehre fuer diese
geschriebs dargestellt haette.
in anbetracht meiner unfaehigkeit raeume ich das feld und weise grimmborn
sein unumschraenktes herrschaftsgebiet zu :)

------
patryn

PS. anatol, du musst dich nicht dafuer rechtfertigen, dass du wichtig bist
    bzw. sein willst...schliesslich verfolgt uns alle dieses problem ;)

-----------------------------------------------------------------------------



Re^3: Artikel-Verlegerei (Grimmborn,  3. Sep 1997, 22:01:22):
~#! rn=Patryn rt=873315972 rg=polizei.beschwerden
~#! tid=873304474
Immerhin zeigst Du deutlich, dass Dir die Bedeutung des Wortes "Zensur" nicht
mal im Ansatz bekannt ist. Und dass Du das, was Du zweifelsohne fuer Ironie
haelst, peinlich ueberziehst, aber reicht das fuer eine Selbstanzeige in
polizei.beschwerden?
Wirklich, jemand, der meint, willkuerliches Verlegen sei lediglich "taktisch
unguenstig" sollte "einer persoenlichen meinung meinereiner" (was fuer ein
Deutsch...) soweit von wirklicher Verantwortung ferngehalten werden wie
moeglich. Naja, deswegen ist er vermutlich RM Vland...

Grimmborn der Atheist
P.S. Deine persoenliche Meinung in muell zu verlegen, wie Du schreibst,
     waere mal eine Ueberlegung wert. Du weisst schon, gleiches zu
     gleichem...

-----------------------------------------------------------------------------



Re^4: Artikel-Verlegerei (Patryn,  4. Sep 1997, 01:44:41):
~#! rn=Grimmborn rt=873316882 rg=polizei.beschwerden
~#! tid=873304474
also du ueberrascht mich grimmborn...von (fast) jedem haett ich mir diese 
kritik in sachen 'zensur' zu herzen genommen, aber bei dir ueberkommt mich
da nur ein muedes laecheln.                                               
ich hatte nie vor zu zensieren...es ist ja auch kaum als zensur zu        
bezeichnen, wenn es danach immer noch jeder lesen kann?!                  

auch deine andeutung auf deutlich ueberzogene ironie hat mich leicht        
verwundert...du hast zumindest das sprachliche stilmittel erkannt (zumindest
das erwartete ich von dir), doch war das ueberzogene durchaus beabsichtigt. 
bleiben nun ein paar fragen offen:                                          
- hast du es mir nun nicht zugetraut, ironie in ihrer komplexeren form zu   
  nutzen?                                                                   
- hast du nicht erkannt, dass auch ueberzogene ironie rhetorisch wirksam in 
  einen text einfliessen kann?                                              
- habe ich in den text zu viel sinn auf einmal hereinlegen wollen und es war
  zu kompliziert? (war das nicht herrlich ueberheblich?)                    
- hast du mich etwas ernst genommen? :)                                     

eine selbstanzeige kann ich uebrigens nicht erkennen. ihr habt euch genauso  
sinn- und inhaltslos beharkt wie wir gerade eben. selbst die rubrik schmarrn 
schien mir nicht mehr angemessen, zugegeben: eine persoenliche meinung.      
ich frag mich nur gerade, wie du mit deiner verlegerei moralisch             
zurechtkommst, wenn ich deine kritik hier lese. hast du dir nicht irgendwie  
selbst das wasser abgegraben?                                                
auch dein verweiss auf verantwortung und rm-posten ist ein recht plumper     
persoenlicher angriff deinereiner (bugs-bunny-deutsch). es gibt immerhin     
leute die verantwortung uebernehmen wollen....willst DU das etwa jemandem    
vorwerfen? ok ok...evtl. hast du kein interesse oder keine zeit hier         
diesbezueglich mehr zu tun, aber unterlass doch dann bitte solche anmachen.  

PS: wie bereits angedeutet, ueberlass ich dem unumschraenkten verlegemeister
    wieder das feld. somit kann ich leider nix mehr verlegen.               
    andererseits: habe ich aus dem artikel ein deutliches lippenbekenntnis  
    herausgelsen, dass auch du zensur verabscheust und uns in zukunft eine  
    vollgemuellte ungeschoente zeitung vorliegt?!                           
    uns bleibt wohl nichts anders uebrig, als einen dritten zu bitten, das  
    fuer uns zu uebernehmen, meinen segen hat er/sie...                     

-----------------------------------------------------------------------------



Re^5: Artikel-Verlegerei (Hardil,  4. Sep 1997, 13:34:09):
~#! rn=Patryn rt=873330281 rg=polizei.beschwerden
~#! tid=873304474

Ach Patryn,

heul doch!
Ich sag einfach mal, dass ich Grimmborn d.A. einfach das gewissen
Fingerspitzengefuehl zutraue, genau diejenigen Artikel herauszufinden, die zu
verlegen sind.
Gut, das ist meine eigene und persoenliche Meinung.
Aber ich denke, dass noch andere aehnlich denken, und Dir halt nicht das selbe
Vertrauen entgegenbringen.
Woran das liegt, kannst Du Dir ja mal vor dem Spiegel ueberlegen.
Vielleicht liegts auch an der porgressiven Kleinschreibung
(lila-Strickpullover-Deutsch) ?

Heute mal schwedenfreundlich,

-Hardil.

-----------------------------------------------------------------------------



Re^6: Artikel-Verlegerei (Patryn,  4. Sep 1997, 14:00:15):
~#! rn=Hardil rt=873372849 rg=polizei.beschwerden
~#! tid=873304474
ist ja gut, ich gebs ja schon auf...auch wenn es nicht grad an deiner
bemerkung zur porgressiven kleinschreibung lag ;)

------
patryn, beleidigt, verschnieft, geschlagen

-----------------------------------------------------------------------------



Re: highlander (Wurzel, 11. Nov 1997, 19:16:34):
~#! rn=Morn rt=879271986 rg=polizei.beschwerden
~#! tid=879271986
aeh, ich dachte immer trigger seien hier prinzipiell illegal... und spieler
toeten auch. wer als magier in der abenteurergilde idelt und dabei per
fehlerhaftem trigger spieler toetet, sollte froh sein nicht geloescht zu
werden.

meine meinung, sonst nix.

wurzel

-----------------------------------------------------------------------------



spielpause usw. (Alboin, 17. Nov 1997, 10:29:59):
aehm ich finde, dass die Oeffentlichkeit ein Recht hat zu erfahren, warum die
Spielpause fuer Guldukat nicht durchgezogen wurde, waehrend andere Mudder bei
Bestrafung weniger Nachsicht erfahren.

MfG Alboin

-----------------------------------------------------------------------------



Re: spielpause usw. (Anakin, 17. Nov 1997, 10:37:56):
~#! rn=Alboin rt=879758999 rg=polizei.beschwerden
~#! tid=879758999
Hmm war nicht Grimmborn auch gespielpaust und nun nicht
mehr? Hat das ein Grund warum mit zweierlei Mass gemessen wird?

Anakin.

-----------------------------------------------------------------------------



Re: Re: spielpause usw. (Grimmborn, 17. Nov 1997, 11:27:29):
~#! rn=Anakin rt=879759476 rg=polizei.beschwerden
~#! tid=879758999
Klar hat das einen Grund.
Da Boing (im Gegensatz zu mir) ziemlich ist fuer kleine Seiner hat er sich
nicht getraut, die Spielpause zu lassen, bis ich mich wieder einloggen wollte.

Noch mehr dumme Fragen?

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re: Re: spielpause usw. (Hangover, 17. Nov 1997, 13:01:42):
~#! rn=Anakin rt=879759476 rg=polizei.beschwerden
~#! tid=879758999
Eben!

Mir kommt bei sowas immer der Eindruck, dass mit zweierlei Mass gemessen
wird. Und wenn dann nicht mal mehr von berufener Seite erklaert wird,
warum solche Strafen aufgehoben werden, traegt das auf meiner Seite
eher zu mehr Unmut und Veraergerung bei.

Abgesehen davon, dass ich mir durchaus MEHR Durchgreifen bei Skriptern
und Triggern aller Art wuenschen wuerde...

-Hangover

-----------------------------------------------------------------------------



Re^3: spielpause usw. (Grimmborn, 17. Nov 1997, 13:09:17):
~#! rn=Hangover rt=879768102 rg=polizei.beschwerden
~#! tid=879758999
Die Spielpause ist verhaengt worden, bevor mit Betroffenen geredet wurde.
Wenn das vorher getan worden waere, waere die Spielpause nie verhaengt worden
und ihr haettet jetzt nix zum Aufregen. Also seid dankbar und gebt Ruhe.

GdA

-----------------------------------------------------------------------------



Re^4: spielpause usw. (Boing, 17. Nov 1997, 15:02:27):
~#! rn=Grimmborn rt=879768557 rg=polizei.beschwerden
~#! tid=879758999
Die Spielpause fuer Grimmborn wurde von mir verhaengt. Nach Anhoerung
der Betroffenen wurde sie von mir wieder aufgehoben. Mehr gibt's dazu
nicht zu sagen.
  Boing

-----------------------------------------------------------------------------



nochmal spielpause (Alboin, 18. Nov 1997, 15:20:30):
Ich akzeptiere Freunds erklaerung voll und ganz. Auch das es eine
tatsaechliche Bestrafung gabs hat meine Zustimmung. Mir gings auch mehr um die
Frage ob man solche Trigger haben darf. Denn egal ob solche Viecher nerven,
, mich haben sie in meinem Workroom nicht genervt und wenn da so ein Magier
sich mal bei mir reintranst und das Vieh prompt zappt, dann finde ich das
ziemlich frech. Insofern mache ich aus meiner Schadenfreude fuer Guldukats
Malheur und die damit verbundene Bestrafung keinen Hehl.
Ich weiss zwar nicht mehr was _genau_ im Magiervetrag steht aber die von
Guldukat betriebene Zapperei war gewiss nicht im Sinne des Muds. Denn wenn es
Raeume gibt wo die Viecher Nerven dann ist halt etwas Kreativitaet im
Programmieren gefragt. Wenn ich mich nicht irre hat ein Papagei in Reaumen wie
der Gilde auch nichts mehr zu melden.
Das noch mal dazu.

Alboin

-----------------------------------------------------------------------------



Re^3: spielpause usw. (Yendi, 18. Nov 1997, 16:38:58):
~#! rn=Grimmborn rt=879762449 rg=polizei.beschwerden
~#! tid=879758999
> Klar hat das einen Grund.
> Da Boing (im Gegensatz zu mir) ziemlich ist fuer kleine Seiner hat er sich
  [...]
> Noch mehr dumme Fragen?


Aeh -- wie war das nochmal im Mittelteil?


-----------------------------------------------------------------------------



Re^4: spielpause usw. (Rantanplan, 18. Nov 1997, 21:20:42):
~#! rn=Yendi rt=879867538 rg=polizei.beschwerden
~#! tid=879758999
SAVE OETTI !

-----------------------------------------------------------------------------



Re^4: spielpause usw. (Hobo, 19. Nov 1997, 09:06:41):
~#! rn=Yendi rt=879867538 rg=polizei.beschwerden
~#! tid=879758999
finger boing gibt die Antwort:

Voller Name: Boing groesst ziemlich ist fuer kleine Seiner

Hobo -fragt sioch, wieso sie die Krankheit ihres Schatzis nicht schon laenger
bemerkt hat

-----------------------------------------------------------------------------



Re: PKs Hefe (Anatol, 20. Nov 1997, 14:36:23):
~#! rn=Highlander rt=880030674 rg=polizei.bekanntmachungen
~#! tid=880030674
Wehrter Highlander, es ist in der Tat verwerflich, wenn ein Spieler anderen
und unerfahrenen Spielern (vornehmlich Elfen) ein Runenschwert zusteckt 
(ich kann mich in den Zusammenhang an einen Elbenschmied erinnern). Nicht
weniger nett finde ich es allerdings, dass die inzwischen gegen abzaehlbar
unendlich strebenden Rueckmeldungen der Spielerwelt, dass dieses Schwert
seiner Waffenklasse entsprechend fuer Anfaenger nicht toedlich sein sollte,
da sie, egal ob Elf oder sonstwas, mangels ausreichendem Geschick eh nicht
damit umgehen koennten, ungehoert oder zumindest unbearbeitet in den
unendlichen Tiefen irgendwelcher Mailfolder und Todo-Listen verschwanden und
seit dem nie mehr gesehen wurden.

Was fuer ein Satz.
Anatol


-----------------------------------------------------------------------------



Re^5: spielpause usw. (Qitess, 20. Nov 1997, 15:46:55):
~#! rn=Rantanplan rt=879884442 rg=polizei.beschwerden
~#! tid=879758999
QI** ist dafuer !!!

SAVE OETTI !


-----------------------------------------------------------------------------



Re^5: spielpause usw. (Guldukat, 20. Nov 1997, 21:52:14):
~#! rn=Rantanplan rt=879884442 rg=polizei.beschwerden
~#! tid=879758999
haettest du das auch fuer mich getan, oetti?
;)
GD

-----------------------------------------------------------------------------



Re: Re: PKs Hefe (Highlander, 21. Nov 1997, 12:31:51):
~#! rn=Anatol rt=880032983 rg=polizei.beschwerden
~#! tid=880030674
Also von den Beschwerden bzgl. des RS weiss _ich_ nix, da muesst ihr
wo anders klingeln.
  HrT, mit RS-freiem mailfolder

-----------------------------------------------------------------------------



ZTs, nicht immer eine angenehme Ueberraschung (Dido, 20. Dez 1997, 01:58:47):

Hallo,

ich wollte an dieser Stelle mal meinen Unmut ueber einen gewissen ZT aeussern.
Ich werde dazu mal keine grosse Vorrede schwingen. Lests einfach mal durch.
Nur eins kurz vorweg: die unwichtigen Details habe ich weggelassen.

/ Heute auf der ZT-Suche im Polargebiet:


 unt boden: Der Boden ist total verdreckt durch den
 Schmutz, den die Skripter beim Tanken immer hier
 reinschleppen, ohne sich vorher sauber zu machen.
 
 unt schmutz: Hier liegt so viel Schmutz rum, dass der
 nicht nur von hier sein kann. Es scheint vielmehr so,
 als wenn die Skripter, die hier immer rein und
 rausrennen, ab und zu ihren Muell verlieren wuerden.

 unt muell: Bei dem Muell handelt es sich um allerlei
 Sachen. Kaum zu glauben, was die Skripter alles so
 liegenlassen: Schmutz an sich, zerbrochene Waffen,
 geborstene Schilder, gebrauchte Kondome, alte Fetzen und
 vieles mehr.

 unt kondom: Die gebrauchten Kondome sind wohl das
 ekeligste, was Du je gesehen hast! Die weissliche
 Fluessigkeit in ihnen glibbert fast aus ihnen raus.

 unt fluessigkeit: Du untersuchst den Glibber in den
 Kondomen und dabei faellt dir beim Schnuppern auch was
 Hartes unter die Nase.

 unt hartes: Du schaust Dir das Harte genauer an und
 findest Aehnlichkeit mit einem Zaubertrank, aber beisst
 Du ein Stueck ab und laesst den Saft in Dich laufen.


/ Ich hab mich so geekelt wie schon lange nicht mehr. Solche ZTs finde ich
unzumutbar (!!!). 

Ich hoffe, es hat alles mit cut & paste geklappt.

Eure Dido, freute sich bis jetzt ueber fast jeden ZT.

P.S. Der ZT ist uebrigens von Yantro


-----------------------------------------------------------------------------



Re^3: dos/winnt (Sharia, 20. Dez 1997, 03:14:43):
~#! on=Sharia ot=882584051 og=gilden.kaempfer
~#! rn=Bloodyharry rt=882581765 rg=gilden.kaempfer
~#! tid=882532990
Ich bin der unmassgeblichen Meinung, dass derjenige der soetwas schreibt eine
Strafe bekommt, die sich gewaschen hat ! Es ist dann doch wirklich ARG
Geschmacklos ! Schade dass soetwas ueberhaupt hier vorkommt...

Sharia, die sich an Didi erinnert der auch staendig sowas gemacht hat ..... 

-----------------------------------------------------------------------------



Re: ZTs, nicht immer eine angenehme Ueberraschung (Engywuck, 20. Dez 1997, 15:34:30):
~#! rn=Dido rt=882579527 rg=polizei.beschwerden
~#! tid=882579527
Ich weiss gar nicht, wieso Du Dich aufregst. Schliesslich steht dort
ausdruecklich, dass Du noch nie sowas ekliges gesehen hast, wie dieses
gebrauchte Kondom. Und in sofern ist die Stelle doch sehr schoen und
realistisch beschrieben.

Ausserdem sollte man sich ueberlegen, welchen Geisteszustand Leute haben, die
problemlos mit scharfen Waffen durch die Gend rennen und laufend anderen Wesen
den Kopf abschlagen, aber es nicht ertragen koennen, ein Kondom zu finden.

Engy*, auch mal austeilend

P.S.: Make love, not war ;)

-----------------------------------------------------------------------------



Re^3: ZTs, nicht immer eine angenehme Ueberraschung (Yantro, 20. Dez 1997, 22:20:15):
~#! rn=Wurzel rt=882640235 rg=polizei.beschwerden
~#! tid=882579527
hi, 
a) wer redet hier von auslutschen... es sieht eklig aus, ist es aber dann
nicht.

b) gerade kritik wegen des geschmackes zu kriegen von einem, der furzer,
geschlechtskrankheiten, AIDS und son Zeug wie Amanda proggt, find ich skuril.

c) Der ZT ist seit Monaten aktiv und keiner sagte was, einige fanden es sogar
witzig. Er bleibt also dran.
d) Komplettloesungen von ZTs in die Zeitung zu setzen, find ich was daneben..
eine Mail haette es auch getan, oder? Aber scheint so zu sein, dass hier immer
oeffentlich rumgemosert werden muss... und dabei soll ICH dann lernen, es
anders zu machen?

Yantro

-----------------------------------------------------------------------------



Re^4: ZTs, nicht immer eine angenehme Ueberraschung (Wurzel, 20. Dez 1997, 23:45:29):
~#! rn=Yantro rt=882652815 rg=polizei.beschwerden
~#! tid=882579527
die legasthenie greift um sich... jetzt macht sie schon nicht mal mehr vor
erzmagiern halt. lies am besten nochmal, was ich geschrieben habe. damit hat
auch amanda zu tun.
der unterschied ist einfach der: wer es nicht will, braucht mein zeug nicht
zur kenntnis zu nehmen. es gibt ja einige, die so verfahren. bei sozusagen
"pflichtecken" wie zt waere ich aber etwas vorsichtiger. im uebrigen habe
ich nur meine meinung dazu geaeussert, mehr nicht. aber getroffene hunde
bellen, oder so aehnlich geht das sprichwort...

wurzel

p.s. es gibt, egal was hier steht, kein objekt "aids". jedenfalls nicht von
mir. es gibt wohl eine schwere krankheit, die aber im gegensatz zu aids
heilbar ist. wer weiterhin verbreitet, ich haette hier aids im umlauf, zeigt
damit nur unkenntnis, sonst nichts.

-----------------------------------------------------------------------------



Re^3: ZTs, nicht immer eine angenehme Ueberraschung (Freund, 21. Dez 1997, 00:22:10):
~#! rn=Wurzel rt=882640235 rg=polizei.beschwerden
~#! tid=882579527
Eigentlich bin ich - wie so oft - bis ins Detail Wurzels Meinung, aber eines
ist mir aufgefallen:

>DAS ist das wirklich perverse...
^^^

Wurzel, Du hast ja _doch_ eine SHIFT-Taste! :-)))))))))))))

ein ueberraschter Freund.

-----------------------------------------------------------------------------



Re^5: ZTs, nicht immer eine angenehme Ueberraschung (Ringor, 21. Dez 1997, 00:22:26):
~#! rn=Wurzel rt=882657929 rg=polizei.beschwerden
~#! tid=882579527
Kleine Korrektur zu Wurzels Artikel:

> der unterschied ist einfach der: wer es nicht will, braucht mein zeug nicht
> zur kenntnis zu nehmen.

Das stimmt beim Furzer leider nicht. Es sei denn, man laesst die komplette
Region d.ebene aus.

Ringor

-----------------------------------------------------------------------------



Re^4: ZTs, nicht immer eine angenehme Ueberraschung (Freund, 21. Dez 1997, 00:40:01):
~#! rn=Yantro rt=882652815 rg=polizei.beschwerden
~#! tid=882579527
Yantro schrieb die mit ">" gekennzeichneten Zeilen.

> a) wer redet hier von auslutschen... es sieht eklig aus, ist es aber dann
nicht.
Wenn ich etwas Hartes in dem Mud nehmen muss, dass vorher in einem gebrauchten
Kondom war, aus dem eine weisse, klebrige Fluesigkeit heraustropft, dann ist
meine Phantasie schon ziemlich damit beschaeftigt, den Brechreiz loszuwerden!

>b) gerade kritik wegen des geschmackes zu kriegen von einem, der furzer,
geschlechtskrankheiten, AIDS und son Zeug wie Amanda proggt, find ich skuril.

Der Ausloeser war in dem Fall nicht der Artikel von Wurzel, sie stimmte
lediglich der Kritik des Spielers zu. Es steht Dir natuerlich frei, das
skurril (sic!) zu finden, es traegt jedoch nichts an Inhalt zu dieser
Diskussion bei.

>c) Der ZT ist seit Monaten aktiv und keiner sagte was, einige fanden es sogar
witzig. Er bleibt also dran.

Hm, erstmal muss so ein ZT auch verteilt werden bei einem neuen Charakter,
dann muss er ihn suchen und finden. Gibt es ein log der Spieler, die den
speziellen Trank gefunden haben? Dann koennten wir doch jeden einmal anmailen.
:-)

>d) Komplettloesungen von ZTs in die Zeitung zu setzen, find ich was
daneben..eine Mail haette es auch getan, oder? Aber scheint so zu sein, dass
hier immer oeffentlich rumgemosert werden muss... und dabei soll ICH dann
lernen, es anders zu machen?

Ich denke nicht, dass eine Mail den Effekt gehabt haette, oder ueberhaupt
einen. Du haettest wahrscheinlich schlichtweg mit Punkt c) geantwortet. Jetzt
findet aber eine oeffentliche Meinungsbildung statt, aus der man nachher
ableiten kann, wie sich die Mehrheit im MG in diesem speziellen Fall
entscheiden wuerde.
Das finde ich schon in Ordnung; denn bei der Entscheidung, ob das
"moralisch/ethisch" vertretbar ist, diesen Trank suchen zu muessen, sollte
keiner alleine faellen, wenn mehrere Spieler schon Anstoss daran genommen
haben, oder?
Im uebrigen solltest Du nciht immer alles auf die aktuellen Probleme _Deiner_
Umwelt projizieren - oder halt mal etwas daraus lernen... :-)

Ein Freund fuer alle Faelle.

-----------------------------------------------------------------------------



Re^5: ZTs, nicht immer eine angenehme Ueberraschung (Grimmborn, 21. Dez 1997, 01:05:40):
~#! rn=Freund rt=882661201 rg=polizei.beschwerden
~#! tid=882579527
Wenn Dir beim Gedanken an Sperma schlecht wird ist das natuerlich traurig.
Die (allgemeine) Frage ist dann aber, ob das ein Grund dafuer sein kann, dass
alle darauf Ruecksicht nehmen muessen. Natuerlich gibt es geschmackvollere
Beschreibungen, aber ist das hier wirklich den Aufstand wert, der darum
gemacht wird? Ich finde den zt auch nicht so doll, aber im Gegensatz zur
vorherrschenden Meinung nur, weil ich das Versteck in der neunundelfzigsten
Detailebene nicht eben originell oder produktiv finde...

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^6: ZTs, nicht immer eine angenehme Ueberraschung (Freund, 21. Dez 1997, 01:22:10):
~#! rn=Grimmborn rt=882662740 rg=polizei.beschwerden
~#! tid=882579527
Daraus, dass ich etwas Hartes, das in altem Sperma in einem benutzen Kondom
rumliegt, nicht mag, zu schliessen, dass ich Sperma generell nicht mag, ist
etwas polemisch oder voreilig.

Aber daraus jetzt den Umkehrschluss zu ziehen, waere auch nicht korrekt! :-)))

Freund, behaelt seine Meinung zu Sperma im allgemeinen fuer sich.

-----------------------------------------------------------------------------



Re^7: ZTs, nicht immer eine angenehme Ueberraschung (Dancer, 21. Dez 1997, 02:53:21):
~#! rn=Freund rt=882663730 rg=polizei.beschwerden
~#! tid=882579527
Warum werden hier Freund und Wurzel eigentlich fuer ihre leicht
nachvollziehbare Meinung angegriffen? Diese Diskussion ist kaum der Punkt,
seine Weltoffenheit und sexuelle Reife anzupreisen. Die Frage ist hier ganz
einfach, ob Ihr in Euerem Fantasy-Mud so einen Schwachsinn haben wollt. Es ist
weder originell und den, der die Kondom-Geschichte bei nuechternem Zustand
wirklich auch nur ansatzweise witzig fand, moechte ich erstmal hoeren.

Ein Spieler/eine Spielerin hat sich beschwert. Und das ist kein Grund, sich
auf den Schlips getreten zu fuehlen oder zu posten, wie unwichtig und
gegenstandslos man die Sache findet. Es kann ja auch nicht ganz gegenstandslos
sein, weil sich ja schon Leute gefunden haben, die der Beschwerde zustimmen.
Spricht etwas dagegen, den ZT einfach umzuschreiben? Ich kann mir nicht
vorstellen, dass Yantro sich da seines Gedankengutes oder seiner freien
Programmierfreiheit beraubt fuehlt. Und ich kann mir vorstellen, dass ihm
sicher ein wirklich gelungener ZT einfaellt, wir haben alle schon sehr viel
schoenere Sachen von ihm hier gesehen.

Dancer


-----------------------------------------------------------------------------



Re: ZTs, nicht immer eine angenehme Ueberraschung (Quengistu, 21. Dez 1997, 13:22:53):
~#! rn=Dido rt=882579527 rg=polizei.beschwerden
~#! tid=882579527
Ich fand den ZT erst eklig und im Nachhinein witzig. Ich gebe zu, dass dieser
Trank besonders eklig beschrieben ist, aber vom Vorgang an sich fand ich den
ZT, bei dem man die Exkremente vom Pegasus essen muss, viel ekliger.

Gruss, Quengistu

-----------------------------------------------------------------------------



Re: Re: ZTs, nicht immer eine angenehme Ueberraschung (Karol, 21. Dez 1997, 14:56:44):
~#! rn=Quengistu rt=882706973 rg=polizei.beschwerden
~#! tid=882579527
Hi,
Ich bin zwar noch nicht sehr lange hier im Mud, aber muss auch sagen, dass der
ZT recht eklig ist!
Ob man nun etwas gegen Sperma hat oder nicht, aber der gedanke an etwas hartem
in einem Kondom ist nicht gerade sehr prickelnd!!!
Man koennte ja wenigstens das Harte daraus nehmen und durch ein anderes Detail
ersetzen! Vielleicht ist damit ja dann allen geholfen!
Karol

-----------------------------------------------------------------------------



Re^3: ZTs, nicht immer eine angenehme Ueberraschung (Silvana, 22. Dez 1997, 00:52:29):
~#! rn=Karol rt=882712604 rg=polizei.beschwerden
~#! tid=882579527
Nur mal so ne dumme Frage: Ist das hier der neue Stil, dass bei jeder 
Stelle, die einen stoert, gleich ein endloser Thread in der MPA vom
Zaune gebrochen wird? Eine einfache Mail (dazu hatte ich Dir auch im
persoenlichen Gespraech geraten, Mieze) haette voellig ausgereicht. Ich
habe volles Verstaendnis dafuer, wenn man solche ZTs (auch den mit den
Pegasus-Pferdeaepfeln), einen Furzer oder einen Riesennasenpopel (SSP)
fuer abstossend oder geschmacklos haelt, aber sowas kann man unter 4 Augen
bzw 2 Bilschirmen klaeren und muss es nicht auch noch breittreten und 
Unbeteiligten auch noch den Appetit verderben (sei es wegen des ZTs oder
wegen der Diskussion).

  Frohe Weihnachten - Silvana

-----------------------------------------------------------------------------



Re^4: ZTs, nicht immer eine angenehme Ueberraschung (Sting, 22. Dez 1997, 00:56:36):
~#! rn=Silvana rt=882748349 rg=polizei.beschwerden
~#! tid=882579527
Ich kann nur sagen: *nick Silvana*
Die MPA ist schon schlecht genug von den ganzen Endlos-Threads, hoert endlich
damit auf!

Sting - Auch frohe Weihnachten

-----------------------------------------------------------------------------



Re^8: ZTs, nicht immer eine angenehme Ueberraschung (Ancalagon, 22. Dez 1997, 09:14:35):
~#! rn=Dancer rt=882669201 rg=polizei.beschwerden
~#! tid=882579527
Knuddels!
Dancer hat recht! *extraknuddel*
Mir hat diese ZT-Beschreibung auch nicht gefallen. Und Yantro hat wirklich
schon besseres abgeliefert. Also, Yantro, fuhl dich nicht gleich auf den
Schlips getreten, sondern lieber angespornt..... :)
froehliche Weihnachtsknuddels,
                                            Ancalagon

-----------------------------------------------------------------------------



Re^4: ZTs, nicht immer eine angenehme Ueberraschung (Boing, 22. Dez 1997, 13:34:52):
~#! rn=Silvana rt=882748349 rg=polizei.beschwerden
~#! tid=882579527
Muss ich die Schleimebene jetzt zumachen? Die ist durch und durch eklig
und enthaelt auch Zaubertraenke. Waere aber schade, dann wuerde ja keiner
mehr in die Eisebene oder tiefer kommen. :)
  Boing, Freund des Riesennasenpopels

-----------------------------------------------------------------------------



Re^5: ZTs, nicht immer eine angenehme Ueberraschung (Orktoeter, 22. Dez 1997, 14:55:13):
~#! rn=Boing rt=882794092 rg=polizei.beschwerden
~#! tid=882579527
also Boing, du solltest wissen, das man auch ohne schleimeben tiefer kommen
kann... *smile*

OrkT.

-----------------------------------------------------------------------------



Re^4: ZTs, nicht immer eine angenehme Ueberraschung (Acrimon, 22. Dez 1997, 20:07:56):
~#! rn=Silvana rt=882748349 rg=polizei.beschwerden
~#! tid=882579527
Das, was ich hier lesen muszte, ist wirklich unter aller Sau.
Noch schlimmer ist es, Spieler dazu zu zwingen, so etwas Grauenhaftes
auszufuehren. Auch wenn es "nur" in der Phantasie ist.
Es zeugt von einem kranken Geist, wenn er daran denkt, menschliche Exkremente
wieder dem menschlichen Koerper zuzufuehren, und von noch einem krankeren
Geist, wenn er solche Phantasien hegt oder gar aufschreibt.
Unter etwas "Hartem" in einem benutzten Kondom kann ich mir gluecklicherweise
nichts vorstellen, aber auch ohne diese Vorstellung ist das schon grauenhaft
genug.
ZTs haben weder in noch an noch bei noch <sonstige Praeposition> einem Kondom
etwas zu suchen.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Re^5: ZTs, nicht immer eine angenehme Ueberraschung (Grimmborn, 22. Dez 1997, 20:12:51):
~#! rn=Acrimon rt=882817676 rg=polizei.beschwerden
~#! tid=882579527
Bleib auf dem Boden.
Bei Dir mag das anders sein, aber in meiner realten Vorstellung wuerde ich
lieber "menschliche Exkremente wieder dem menschlichen Koerper zufuehren" als
zu einem vernunftbegabten Mitgeschoepf zu gehen und es umzubringen. Ich bin
gerne zu einer Diskussion bereit, wer von uns da wirklich der Perverse ist.

Grimmborn der Atheist schuettelt den Kopf. Seltsame selektive Moral haben
einige...

-----------------------------------------------------------------------------



Re^6: ZTs, nicht immer eine angenehme Ueberraschung (Acrimon, 22. Dez 1997, 21:09:17):
~#! rn=Grimmborn rt=882817971 rg=polizei.beschwerden
~#! tid=882579527
Habe ich gesagt, ich wuerde es weniger abscheulich finden, vernunftbegabte
Mitgeschoepfe umzubringen?
Wenn in diesem Mud sowas beschrieben werden wuerde, wuerde ich ziemlich viel
dagegen sagen. Es wird aber gluecklicherweise nicht beschrieben.
Und wenn der ZT so ausgesehen haette:

> unt kondom
Du findest einen Zaubertrank.
Welche Faehigkeit moechtest Du erhoehen?
...

dann haette ich da auch nichts gesagt.
Aber solche Schweinereien zu beschreiben finde ich mehr als geschmacklos.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Re^7: ZTs, nicht immer eine angenehme Ueberraschung (Raffi, 22. Dez 1997, 21:21:38):
~#! rn=Acrimon rt=882821357 rg=polizei.beschwerden
~#! tid=882579527
Also ich versteh die AUfregung nicht - niemand woird gezwungen den ZT zu
nehmen ... niemand muss so tief darin rumsuchen. und ach das angefuehrte
Beispiel zeigt nur das der Spieler genau das gemacht hat - am Kondom
'rumgefummelt' niemand hat ihn/sie gezwungen niemand hat gesagt das das sein
muss - alles eigener Antrieb.

Und es soll sogar schon vorgekommen sein das Leute Geburtstagsparties u. Ae.
ekelig fanden .... Oder Weihnachten ...

Ach ja
Frohes 
Fest

H.

-----------------------------------------------------------------------------



Re^8: ZTs, nicht immer eine angenehme Ueberraschung (Wurzel, 22. Dez 1997, 23:28:26):
~#! rn=Raffi rt=882822098 rg=polizei.beschwerden
~#! tid=882579527
weihnachten eklig? hm, unter dem gesichtspunkt hab ich das noch nie
betrachtet. hat aber was fuer sich, damit koennte ich meine weihnachtsphobie
erklaeren...

wurzel

-----------------------------------------------------------------------------



Re^5: ZTs, nicht immer eine angenehme Ueberraschung (Jasper, 23. Dez 1997, 10:11:29):
~#! rn=Acrimon rt=882817676 rg=polizei.beschwerden
~#! tid=882579527
Acrimon mit dem Vortrag koenntest du auch in ner karnevalssitzung
auftreten.

Jasper rollt immer noch ueber den boden.

-----------------------------------------------------------------------------



Re^6: ZTs, nicht immer eine angenehme Ueberraschung (Snuggle, 23. Dez 1997, 11:28:44):
~#! rn=Grimmborn rt=882817971 rg=polizei.beschwerden
~#! tid=882579527
Grimmborn, bedenke, dass Acrimon Christ ist.
Die Unglaeubigen zu toeten, foltern, vergewaltigen ... brachte schon in den 
Kreuzzuegen das Himmelreich. Sex ausser zu Zwecken der Reproduktion (und dann
auch noch mit Kondom) ist Suende.

Snugg 

-----------------------------------------------------------------------------



Re^5: ZTs, nicht immer eine angenehme Ueberraschung (Alpha, 23. Dez 1997, 13:54:24):
~#! rn=Acrimon rt=882817676 rg=polizei.beschwerden
~#! tid=882579527
Pah, "Diese menschlichen Exkremente" fuehrt jede Frau (hin und wieder) beim
Sex zu. Was regst Du Dich da auf, dass Du das auch mal tun sollst(fallls Du
den ZT willst). Nur weil das Zeugs aus nem alten Gummi tropft? 
.,

-----------------------------------------------------------------------------



Re^6: ZTs, nicht immer eine angenehme Ueberraschung (Key, 23. Dez 1997, 17:55:42):
~#! rn=Alpha rt=882881664 rg=polizei.beschwerden
~#! tid=882579527
Alpha von mir aus kannste ja an nem gebrauchten Kondom lutschen ... Ich fuer
menen Teil stehe da weniger drauf.
Wer net versteht das es Leute eklig finden kann es ja von mir aus sagen, aber
wnn der dann versucht anderen seine Meinung aufzudraengen ist Ende.

So un zu dem ZT ... 
Erstens mal ... Raffi DU willst auch ZTs haben. und DU wuerdest ihn auch
nehmen und dann Deine Meinung drueber verkuenden, oder? :)
*kennt den kleinen doch noch * :))

Hmm und Silvana ... ich hatte Yantro auch schon gesagt das es nen bisserl zu
wet geht ... aber reagiert hat er net ...

So und jetzt Schluss mit dem Thread, ich hoffe das Ding wird rausgeschmissen
odr zumindest "entschaerft"

Key


-----------------------------------------------------------------------------



Re^7: ZTs, nicht immer eine angenehme Ueberraschung (Acrimon, 23. Dez 1997, 19:40:32):
~#! rn=Snuggle rt=882872924 rg=polizei.beschwerden
~#! tid=882579527
Was verbreitest Du da fuer Luegen ueber das Christentum?
Schaem dich, Snuggle.
Die Kreuzzuege waren etwas vollkommen Anderes als Du hier versuchst
darzustellen, das kannst Du in jedem Geschichtsbuch nachlesen.
Und selbst die Kreuzzuege, die der damalige Papst veranstaltet hat, sind nicht
im Sinne des Christentums.
Auch was Du hier ueber Sex zu propagieren versuchst, war noch nie im Sinne des
Christentums.

Befasz dich erst mit einem Thema, bevor Du das Maul aufreiszt.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Re^7: ZTs, nicht immer eine angenehme Ueberraschung (Raffi, 23. Dez 1997, 20:46:10):
~#! rn=Key rt=882896142 rg=polizei.beschwerden
~#! tid=882579527
Aeh wart mal IIIIIch ind scharf auf ZTs ? NIEEE und NIMMER!
(Key, Du machst mein ganzes muehsamm aufgebautes Image kaputt !)

Aber zum ZT

a) niemand ist gezwungen ZTs zu suchen.
b) niemand ist gezwungen FPs zu suchen.
c) niemand ist gezwungen EPs zu metzeln

zu b) niemand muss daher ekelige Details weiter erforschen
(Und das auf ein offensichtlich gebrauchtes Kodom was ekeliges
 folgt ist ja nicht gerade ueberraschend).

Ausserdem, hat irgendjemand mal gesagt das ZTs was angenehmes sind ?
Also ich hab sie mir immer recht wiederlich vorgestellt ... so ala
ALIEN oder Jeckyl&Hide ... gluck gluck und urks wachsen neue Muskeln
aus Dir raus, oder Du wirst zu so einem wiederlichen Eierkopf oder
so (Das hab ich aber noch nicht probiert, weil wofuer so einen ZT
auf INT verschwenden ?).

Auch ich finde die Kondomdetails WIEDERLICH, aber das ist noch
lange kein Grund sie deswegen rauszunehmen - Genausowenig wie
Armanda, das Kastriermesser, diese Zombieteile, den Weihnachsmann
oder sonstwas.

Gruss
H.

P.S.: Ich _habe_ Bekannte die Weihnachten fuer ungefaer genauso
      wiederlich halten wiue alte kalte schlabbrige mit irgendwas
      gefuellte Kondome.

-----------------------------------------------------------------------------



Re^8: ZTs, nicht immer eine angenehme Ueberraschung (Raffi, 23. Dez 1997, 20:49:41):
~#! rn=Raffi rt=882906370 rg=polizei.beschwerden
~#! tid=882579527
Ach ja, Nachtrag - weil ich gerade Nochmal gelesen habe ... Armanda ist ja
nicht so schlimm, aber bevor das mit dem Konom ueberhaupt mal beredet wird
haette ich gerne ein Kastriermesserfreies Mud .... Iiiiiih aleine die Idee
..... wenns nicht so ueberaus wiederlich waere muesste ich Dir ja dazu
gratulieren WUrzel :)

Gruss 
H.

-----------------------------------------------------------------------------



Re^8: ZTs, nicht immer eine angenehme Ueberraschung (Snuggle, 30. Dez 1997, 09:27:42):
~#! rn=Acrimon rt=882902432 rg=polizei.beschwerden
~#! tid=882579527
Also Acrimon,

ich sags ja nur ungern, aber die Historiker haben eine etwas Ansicht ueber die
Kreuzzuege, als die Kirche. Die Geschichtsbuecher, die ich gelesen habe,
bestaetigen mich naemlich. Ich sage nicht, der Papst (oder Richard) habe die
Leute dazu angehalten, zu Morden und zu Brandschatzen, aber getan wurde es
trotzdem und die Kirche hat sich meines Wissens niemals davon distanziert
(ebensowenig wie von der Judenverfolgung oder der Inquisition)

Snuggle - darf zwar nicht ex kathedra sprechen, glaubtsich aber dennoch im
Recht

-----------------------------------------------------------------------------



Re^9: ZTs, nicht immer eine angenehme Ueberraschung (Acrimon, 30. Dez 1997, 21:31:00):
~#! rn=Snuggle rt=883470462 rg=polizei.beschwerden
~#! tid=882579527
dann tu das eben jetzt ich.
Ich distanziere mich von den Kreuzzuegen und vor allem von allen
Grausamkeiten, die waehrend der Kreuzzuege begangen wurden.
Und egal ob die Kirche sich distanziert hat oder nicht - im Sinne des
Christentums war das niemals, damals nicht und heute nicht. Die Kirche hat
nicht das Christentum gepachtet, sondern sie ist ein Diener des Christentums.
Sozusagen.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Re^10: ZTs, nicht immer eine angenehme Ueberraschung (Grimmborn, 31. Dez 1997, 00:04:10):
~#! rn=Acrimon rt=883513860 rg=polizei.beschwerden
~#! tid=882579527
Weia, sag das nicht dem Papst. Der glaubt naemlich immer noch (trotz zweitem
Vatikanum), er haette das Christentum gepachtet...

GdA

-----------------------------------------------------------------------------



Re^10: ZTs, nicht immer eine angenehme Ueberraschung (Gnome, 31. Dez 1997, 01:23:01):
~#! rn=Acrimon rt=883513860 rg=polizei.beschwerden
~#! tid=882579527
"... - im Sinne des Christentums war das niemals, damals nicht und heute
nicht..."
sicherlich, der eigentliche sinn dieser kreuzzuege war es, diese "unglaeu-
bigen" zu bekehren und denen unseren glauben aufzuzwaengen. gelinde gesagt
ganz schoen vermessen, aber zur damaliger zeit kannte man das wort menschen-
rechte nicht mal. aber es wurde von der kirche geduldet. etwas spaeter die
"hexenverbrennungen" im "namen gottes". das war mord a la carte, von der
kirche durch inquisitoren umgesetzt. dann diese blindheit und naivitaet,
mit der die kirche der naturwissenschaften jahrhundertelang gegenueber-
trat. waeren die leute nicht so daemlich und ignorant gewesen und haetten
trat. waeren die leute nicht so daemlich und ignorant gewesen und haetten
sie auch nur einen blick selber durchs fernrohr geworfen, haetten sie er-
kannt, dass galileo recht hatte. so standen seine werke und viele andere
auf dem index und wir waeren heute technisch gesehen viel weiter, wenn
diese leute in ruhe ihrer forschung haetten nachgehen koennen. naja.
immerhin hat der papst vor wenigen jahren offiziell zugegeben, dass die
erde rund ist und den kirchlichen bann von galileo genommen...
DAS nenne ich echten fortschritt...

gnOme

-----------------------------------------------------------------------------



Re^11: ZTs, nicht immer eine angenehme Ueberraschung (Wurzel, 31. Dez 1997, 13:55:57):
~#! rn=Gnome rt=883527781 rg=polizei.beschwerden
~#! tid=882579527
allzu gross ist der fortschritt natuerlich nicht, das waere auch mit der
unfehlbarkeit nicht zu vereinbaren wenn man fehler zugeben wuerde. nur ganz
langsam und verschaemt, wenn sich eh keiner mehr so recht dran erinnert, wie
im fall galilei.
die inquisition z.b. besteht heute noch. sie wurde nur, wahrscheinlich weil
der name im bewusstsein der leute vorbelastet ist, umbenannt und heisst
heute "glaubenskongregation" (oder so aehnlich) mit dem chef (oder, wie es
frueher hiess, grossinquisitor) kardinal ratzinger. fuer sowas waren doch die
bayern schon immer zu haben...

wurzel

-----------------------------------------------------------------------------



Re^12: ZTs, nicht immer eine angenehme Ueberraschung (Padreic, 31. Dez 1997, 16:59:57):
~#! rn=Wurzel rt=883572957 rg=polizei.beschwerden
~#! tid=882579527
Wurzel, die unfehlbarkeit des Papstes gibt es noch gar nicht so lange und die
wurde wenn ich das richtig sehe auch nicht rueckwirkend in Kraft gesetzt.
Dementsprechend kann der Fall Galilei selbst aus Sicht der katholischen Kirche
eine Fehlentscheidung gewesen sein.
                                                Padreic

-----------------------------------------------------------------------------



Re^13: ZTs, nicht immer eine angenehme Ueberraschung (Wurzel, 31. Dez 1997, 18:57:16):
~#! rn=Padreic rt=883583997 rg=polizei.beschwerden
~#! tid=882579527
ah ja, man lernt nie aus :)
wenn das so ist, kann man vielleicht annehmen, dass der neuere schwachsinn,
der aus dem vatikan kommt, nie korrigiert werden wird?

wurzel (hat sich mit den spinnern nie naeher beschaeftigt)

-----------------------------------------------------------------------------



Re^14: ZTs, nicht immer eine angenehme Ueberraschung (Padreic,  1. Jan 1998, 17:01:29):
~#! rn=Wurzel rt=883591036 rg=polizei.beschwerden
~#! tid=882579527
Nein, davon kannst Du nicht ausgehen, da der Papst nicht bei allem was er sagt
unfehlbar ist. So sind zum Beispiel seine Aussagen die er zur Pille gemacht
hat seine Privatmeinung (die derzeit auch noch ein gewisses Gewicht hat) aber
dabei ist er nicht unfehlbar. Wenn der Papst naemlich eine Aussage macht, bei
der unfehlbar ist, dann muss er dass dazu sagen (*gruebel* wie hiess das doch
gleich nochmal). Auf alle Faelle passiert das nur aeusserst selten :)

                                   Padreic
P.S.: auch wenn es in Deinen Augen Spinner sind, hat es unsere Kultur
zumindest soweit gepraegt das es doch ganz interessant ist sich damit auch mal
aueinanderzusetzen (ich bin uebrigens NICHT katholisch :)

-----------------------------------------------------------------------------



Re^15: ZTs, nicht immer eine angenehme Ueberraschung (Wurzel,  1. Jan 1998, 17:03:16):
~#! rn=Padreic rt=883670489 rg=polizei.beschwerden
~#! tid=882579527
das heisst "ex kathedra", wenn er so unfehlbar spricht :)

wurzel (nicht katholisch, auch sonst nicht christlich :)

-----------------------------------------------------------------------------



Re^16: ZTs, nicht immer eine angenehme Ueberraschung (Jimdigriz,  1. Jan 1998, 21:13:31):
~#! rn=Wurzel rt=883670596 rg=polizei.beschwerden
~#! tid=882579527
Moin,

Jo, und soweit ich weiss, bezieht sich die Unfehlbarkeit nur
auf "Glaubensfragen", was das nun zu bedeuten hat ist 
wohl jedem selber ueberlassen.

Ciao,
 JdG

-----------------------------------------------------------------------------



Re^17: ZTs, nicht immer eine angenehme Ueberraschung (Acrimon,  5. Jan 1998, 17:34:21):
~#! rn=Jimdigriz rt=883685611 rg=polizei.beschwerden
~#! tid=882579527
Die Diskussion geht in der Rubrik "diskussion" mit dem Thema "Christentum"
weiter.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Re^18: ZTs, nicht immer eine angenehme Ueberraschung (Hardil,  7. Jan 1998, 09:56:28):
~#! rn=Acrimon rt=884018061 rg=polizei.beschwerden
~#! tid=882579527
Koennte fuer die Diskussion nicht eine Extrarubrik acrimon.diskussion
eingerichtet werden? Die waere dann dank Alphabet auch noch die Nummer 1 der
Rubriken (und das waere gut so, denn was liest man lieber?).

-Hardil. 
PS: Hat mal jemand Lust, eine TOP-10 der meistbenutzten Rubriken zu erstellen?
:)

-----------------------------------------------------------------------------



Re: Hadra ist jetzt ein Magier! (Anatol,  9. Jan 1998, 02:33:56):
~#! rn=Merlin rt=884309604 rg=stufen
~#! tid=884309604
Das verzeihe ich Dir so schnell nicht, Gundur.

ANATOL


-----------------------------------------------------------------------------



Re: Re: Hadra ist jetzt ein Magier! (Gundur,  9. Jan 1998, 02:36:10):
~#! rn=Anatol rt=884309636 rg=polizei.beschwerden
~#! tid=884309604
Er wollte es...

...
Gundur

-----------------------------------------------------------------------------



Re^3: Hadra ist jetzt ein Magier! (Grimmborn,  9. Jan 1998, 09:10:30):
~#! rn=Gundur rt=884309770 rg=polizei.beschwerden
~#! tid=884309604
Klasse, das reicht als Begruendung?
Ich will EM werden. Wo bleibt mein level 66?

Grimmborn der Atheist, bald Erzmagier

-----------------------------------------------------------------------------



Re^3: ZTs, nicht immer eine angenehme Ueberraschung (Li, 13. Jan 1998, 09:14:53):
~#! rn=Wurzel rt=882640235 rg=polizei.beschwerden
~#! tid=882579527
hmm zu dem Thema gibt es eine en schoenen Artikel aus: "Papa, Charly hat
gesagt". muss ich mal rauskramen, versprochen...
Li

-----------------------------------------------------------------------------



Re: Ein frecher Chaot namens Key (Wurzel, 27. Jan 1998, 20:09:16):
~#! rn=Slyfox rt=885924514 rg=polizei.beschwerden
~#! tid=885924514
eindeutig kein fall fuer die polizei. naja, mag sein dass highlander oder
freund das anders sehen, aber wenn sowas durch magier geloest werden soll,
ist das ganz schoen arm... 
oder seht ihr das anders?

wurzel

-----------------------------------------------------------------------------



Re: Re: Ein frecher Chaot namens Key (Zorro, 27. Jan 1998, 20:29:40):
~#! rn=Wurzel rt=885928156 rg=polizei.beschwerden
~#! tid=885924514
hmm ihr hab schon wegen unwichtigeren dingen die welle gemacht, wieso jetzt
nicht auch

Zorro

-----------------------------------------------------------------------------



Re^3: Ein frecher Chaot namens Key (Mingo, 28. Jan 1998, 11:51:01):
~#! rn=Zorro rt=885929380 rg=polizei.beschwerden
~#! tid=885924514
Weil es nicht lohnt und lieber von Spieler zu Spieler geklaert werden
sollte. Lasst uns lieber 'nen Thread lostreten, worueber zu diskutieren
ist und worueber nicht.

Gloin

-----------------------------------------------------------------------------



Re^4: Ein frecher Chaot namens Key (Key, 28. Jan 1998, 11:54:53):
~#! rn=Mingo rt=885984661 rg=polizei.beschwerden
~#! tid=885924514
Hauptsache ein neuer Thread, der Titel klingt ja beknackt :)
Ich bin nicht frech, nur gefaehrlich, boese, egoistisch, und natuerlich
CHAOTISCH!!! :))
Aber keineswegs frech!

Key

-----------------------------------------------------------------------------



Unique-Objekte (Freund, 28. Jan 1998, 12:21:43):
Aus gegebenem Anlass moechte ich (in dieser Rubrik) darauf hinweisen, dass es
gerade Bestrebungen gibt, das "Handling" von einzigartigen Objekten im MG zu
modifizieren. 
Jeder Spieler soll nachher in der Lage sein, zu erkennen, DASS irgendwo einmal
ein solches Objekt lag, und es wird ueber eine bestimmte "Haltedauer"
diskutiert.

Ein Fall fuer den Sheriff ist so etwas sicherlich nicht. Die Spielregeln
wurden nicht verletzt; ein Spieler kam nicht zu Schaden.
(Schadenersatzforderungen werden nicht eingefuehrt. ;-)

Freund, unchaotisch

-----------------------------------------------------------------------------



Re: Unique-Objekte (Key, 28. Jan 1998, 12:48:51):
~#! rn=Freund rt=885986503 rg=polizei.beschwerden
~#! tid=885986503
Im Prinzip gibt es nur eine Loesung die fair gegenueber allen ist ...
Keine unique Sachen mehr :)

Wobei das fuer mich auch keine Loesung waere da man eben durch die Begrenzung
auch mal die ein oder andere Grenze etwas "kratzen" kann :)

Und Haltedauer ... so wie beim VS ist es nen bisserl bloede, man ist gerade im
Kampf und weg ist das Teil :)
Da grinst sich natuerlich jeder Npc erstmal einen ab. .))

Key

-----------------------------------------------------------------------------



Re: Re: Unique-Objekte (Zarniya, 29. Jan 1998, 11:13:08):
~#! rn=Key rt=885988131 rg=polizei.beschwerden
~#! tid=885986503
also ich find das system des VS nicht schlecht. Und das das Teil sich auch IM
Kampf aufloest, dass liegt daran, dass Rochus das so geproggt hat.. das kann
man auch verhindern.

Zarniya

-----------------------------------------------------------------------------



Re: Re: Unique-Objekte (Nixihou, 29. Jan 1998, 13:14:50):
~#! rn=Key rt=885988131 rg=polizei.beschwerden
~#! tid=885986503
gegen die methode : man ist grad im kampf und weg ist das teil liesse sich ja
ne "ueberganszeit" einfuehren.... "ein blitz schisst vom himmel und 
dein Vollstrecker wird immer durchsichtiger" 
(nach einem resett ist er dann entgueltig weg ....)

nixihou

-----------------------------------------------------------------------------



Re: Unique-Objekte (Teddy, 29. Jan 1998, 13:55:42):
~#! rn=Freund rt=885986503 rg=polizei.beschwerden
~#! tid=885986503
Aehm Freund, es ging in diesem Fall nicht darum, zu erkennen, OB irgendwo ein
Unique-Objekt mal lag, sondern darum, das wieder einige Leute ihre Familien
auf Metzeltour schicken und andere in die Roehre gucken.
Aber darueber wird zur Zeit ja auch diskutiert.

Teddy

-----------------------------------------------------------------------------



Re^10: Unique-Objekte (Gnome,  2. Feb 1998, 15:02:27):
~#! rn=Ender rt=886427823 rg=polizei.beschwerden
~#! tid=885986503
"...also wer so ein ding hat, der ist freiwild..."

wer wuerde sich dann noch ein unique holen?
richtig. keiner.

gnOme

-----------------------------------------------------------------------------



Re^12: Unique-Objekte (Mingo,  2. Feb 1998, 16:33:45):
~#! rn=Ender rt=886428742 rg=polizei.beschwerden
~#! tid=885986503
Sonst noch dumme Einfaelle? Das Holen kostet ja schon Anstrenung, alles
andere laeuft auf zwischen'menschliche' Kommunikation hinaus.

Gloin ... schickt den Thread nach PK. Und Ender dazu.

-----------------------------------------------------------------------------



Re^13: Unique-Objekte (Key,  2. Feb 1998, 18:39:39):
~#! rn=Mingo rt=886433625 rg=polizei.beschwerden
~#! tid=885986503
Stimme Gloin voll zu.
Denn auch leihen ist moeglich ... und bei wievielen Objekten das fast schon
der Regelfall ist hat noch keiner bemerkt ...

Key

-----------------------------------------------------------------------------



Re^15: Unique-Objekte (Felagund,  2. Feb 1998, 21:12:48):
~#! rn=Ender rt=886444498 rg=polizei.beschwerden
~#! tid=885986503
Enders Vorschlag ist wenn man das mal weiterspinnt garnicht so uebel. Anstatt
des Gegenstandes koennte ja an der entsprechenden Stelle eine Art Ticket
liegen, das in der Arena eingeloest, dem anderen eine gewisse Frist gibt, sein
Objekt im Duell zu verteidigen. Wenn das Objekt nicht in einem Spieler ist,
dann bekommt man es eben direkt fuer das Ticket, ansonsten kann derjenige, der
es genau zu diesem Zeitpunkt hat, es verteidigen. Der Herausforderer sollte
eben nur nicht vorher wissen, wer das ist, ebensowenig der Herausgeforderte,
so dass sich keiner von beiden auf den Gegner einer bestimmten Gilde
einstellen kann.

Fela..spinnt auch hin und wieder

-----------------------------------------------------------------------------



Re^16: Unique-Objekte (Key,  3. Feb 1998, 07:58:57):
~#! rn=Felagund rt=886450368 rg=polizei.beschwerden
~#! tid=885986503
Das wiederum klingt gar net sooo bloede .)
Ja ich muss da fela mal zustimmen ...

Ender das transen aufs Schlachtfeld kannste aber gleich abhaken ... dann stell
ich da erstmal meine zweities auf, hol den typen mit dem uniq teil und der
kann sich netmal umsehen bevor er weggeblasen ist ...
Du sprachst naemlich die ganze zeit von mehreren die einem dann
hinterherjagen.

Naja egal ... so toll ist der vorschlag immernoch nicht ... wie mans besser
macht ... Hmm es gibt im prinzip keine gescheite loesung.

Key

-----------------------------------------------------------------------------



Re^15: Unique-Objekte (Hangover,  3. Feb 1998, 08:37:50):
~#! rn=Ender rt=886444498 rg=polizei.beschwerden
~#! tid=885986503
Moin!

Um mal als einer derjenigen zu sprechen, die die Masse an Leuten
vertreten, die so gut wie nie Unikate bekommen: 
Natuerlich wuerde ich eine Aenderung der Unikate begruessen, so
lange sie den Rebootskripten den Wind aus den Segeln nimmt (und
eventuell genauso auch den Warteschlangenzweitis). 
Darunter koennte ich mir vorstellen: mehr Uniques, mit vielleicht
nicht ueberzogen guten Faehigkeiten, die dann auch nicht beim Reboot
geclont werden, sondern beispielsweise irgendwann in den ersten drei
Tagen.
Ich koennte mir auch vorstellen: Uniquest, die keine sind, sondern
5-10 mal existieren, und gleichzeitig dermassen schwer zu erreichen
sind, dass es auch kaum mehr berechtigte Anwaerter drauf gibt.
Oder: Uniques bzw Fast-Uniques, die sich nach einer bestimmten 
Zeitspanne zerstoeren und dann auch von dem Spieler, der sie
gerade hatte, nicht geholt werden koennen (solange sie einmalig
sind).
Auch eine Regelung wie aktuell beim Vollstrecker halte ich fuer
vertretbar.

Dummerweise ist das alles, was ich eben aufgefuehrt habe, auf
Seiten der Magier mit Arbeit verbunden, und mit Sicherheit werden
die Magier, die dann die Objekte veraendern, wieder von Leuten,
die sich benachteiligt fuehlen, vollgenoelt. Keine dankbare 
Aufgabe also, ob sich unter unseren Magiern Jemand(e) findet/n,
weiss ich nicht.
Nur: solange das nicht passiert, und der Erwerb von Uniques nur
davon abhaengt, wer das bessere TF und evtl. in der vorteilhafteren
Gilde ist, koennen die Gegenstaende auch gleich abgehaengt werden - 
ich spreche jetzt mal bewusst nur fuer mich: Wenn eh nur Skripte
die Items bekommen, braucht sie keiner.

So, das war jetzt viel und lang, ich hoffe ich habe damit auch
dem letzten Informationsverweigerer unter uns (Exmagier eingeschlossen)
klargemacht, warum das aktuelle System fuern A**** ist.

-Hangover

-----------------------------------------------------------------------------



Re^17: Unique-Objekte (Li,  3. Feb 1998, 09:11:50):
~#! rn=Key rt=886489137 rg=polizei.beschwerden
~#! tid=885986503
Doch, keine Unique-Objekte! :-)
Li (werd ich jetzt gesteinigt? :-) )

-----------------------------------------------------------------------------



Re^18: Unique-Objekte (Key,  3. Feb 1998, 12:49:42):
~#! rn=Ender rt=886506350 rg=polizei.beschwerden
~#! tid=885986503
Enderlein mein Image ist mir schnuppe.

Key

-----------------------------------------------------------------------------



Re^20: Unique-Objekte (Key,  3. Feb 1998, 13:05:53):
~#! rn=Ender rt=886507040 rg=polizei.beschwerden
~#! tid=885986503
Hmm ich muss jetzt nicht verstehen wieso man seine Meinung nicht aendern darf?
Oder ist es normal das man sich sowas anhoeren muss wenn man nochmal drueber
nachdenkt, und einen ANDEREN vorschlag mit in die Betrachtung einbringt?

Key

-----------------------------------------------------------------------------



nicht immer eine angenehme Ueberraschun (Claymore,  3. Feb 1998, 16:14:53):
aeh mist der anfang fehlt...

naja gut also ich finde den zt gut , auch von anfang an (d.h. jetzt nicht das
ich sperma unheimlich lecker finde), denn es kann ja sein das das harte was
man findet
vor dem anbeissen und so saubergemacht wurde, zb durch abwischen (ich weiss
das ist nicht viel)
und ausserdem leben wir in einer fantasy-welt -> mittelalter oder? da gibt es
keine "hygenische reinheit", jaja ich weiss deshalb ist sperme nicht gleich
meine haupmalzeit, aber umbringen wird es mich nicht , denn ich hab (wie ihr
bestimmt auch) schon genug leichen gesehen , die ich meist selber produziert
habe!!

also habt euch doch nicht so!!

-----------------------------------------------------------------------------



Re: nicht immer eine angenehme Ueberraschun (Key,  3. Feb 1998, 16:17:56):
~#! rn=Claymore rt=886518893 rg=polizei.beschwerden
~#! tid=886518893
Eine Leiche eines Orks unterscheidet sich erheblich von einem Kondom das man
auslutschen muss ....

Naja erstens die Sache ist gegessen, und zweitens ... Kondome im Mittelalter
bestanden meines Wissens aus Leinensaeckchen und solchen Scherzen ...

Key

-----------------------------------------------------------------------------



Re^21: Unique-Objekte (Zardoz,  4. Feb 1998, 13:05:41):
~#! rn=Key rt=886507553 rg=polizei.beschwerden
~#! tid=885986503
Ich verstehe nicht ganz, warum es eine einheitliche Regelung bezueglich der
Unieque-Objekte geben soll? Im Prinzip ist kann es doch jeder Magier selber
entscheiden, ob und wie er solche Objekte einbaut. Fuer ein paar meiner
Objekte habe ich jedenfalls Reglungen gefunden und ich werde es auch nicht
aendern, weil es mir so, wie ich es gemacht habe ganz vernuenftig erscheint.

Ciao Zardoz

-----------------------------------------------------------------------------



Re: Trauungen in Nibelheim (Larissa, 25. Feb 1998, 12:39:21):
~#! rn=Srabi rt=888401965 rg=polizei.beschwerden
~#! tid=888401965
Tja,

manche Trauungen dauerten frueher Stunden, bis das traute Paar endlich
vereint war. Priester zappen/vergiften/angreifen/transen war da 
ganz normal und eine Hochzeit ohne diese Aktionen ehr 'garnichtsorichtig'

Trotzdem gibt es viele Leute die lieber kurz und schmerzlos heiraten
oder die alten Sitten und Gebraeuche nicht kennen. Ich denke, wenn man
die Stimmung imn der Kapelle beachtet kann man sich ja drauf einstellen,
Gaudi oder eben nicht....*zuck*

ich erinnere mich noch an die Hochzeit von Semira, die wirklich
ganzganzganzfurchbar sauer war ueber die ganzen Spielverderber, aber am
naehcten Tag war sie maechtig stolz auf eine der denkwuerdigsten
Hochzeiten im MG.....

Lari, hat noch einer das LOG von dieser Hochzeit??? *schwelg*

-----------------------------------------------------------------------------



Re^3: Trauungen in Nibelheim (Wargon, 25. Feb 1998, 13:17:33):
~#! rn=Nerdanel rt=888408364 rg=polizei.beschwerden
~#! tid=888401965
...
Der Priester sagt: Es sein denn, einer der Anwesenden hat einen Einspruch.
Der Priester sagt: Ist dem so, so sage er nun 'Einspruch' oder schweige
Der Priester sagt: fuer immer.
[Zeit verstreicht]
Der Priester sagt: Ich SAGTE: Ist dem so, so sage er nun 'Einspruch' oder
Der Priester sagt: schweige fuer immer!
[Schweigen]
Der Priester ist verwirrt.
Der Priester sagt: Wieso sagt denn keiner 'Einspruch'?
Der Priester wirft Dir einen flehentlichen Blick zu.
[Zeit verstreicht]
Der Priester ist erstaunt.
Der Priester sagt: Was ist denn heute los? Ich bin ja noch nicht einmal
Der Priester sagt: vergiftet!
Der Priester sagt: Also bitte! Wir wollen diese Zeremonie doch mit dem
Der Priester sagt: noetigen Ernst fuehren! Wenn nicht bald jemand einen
Der Priester sagt: Einspruch oder eine Waffe gegen mich erhebt, muss ich
Der Priester sagt: diese Hochzeit abbrechen!
[Entsetzte Blicke des Brautpaares, Tuscheln bei den Gaesten]
Der Priester wirft wuetend den Talar auf den Boden.
Der Priester sagt: Dann halt nicht!
Der Priester beendet die Zeremonie.
Der Priester verschwindet mit Knall und Schwefelduft.
[...]

-----------------------------------------------------------------------------



Re^4: Trauungen in Nibelheim (Sharia, 25. Feb 1998, 13:54:41):
~#! rn=Wargon rt=888409053 rg=polizei.beschwerden
~#! tid=888401965

Tja ich denke, wer unbedingt bei dem leicht verstaubten Priester in Niebelheim
heiraten will, der muss damit rechnen, dass er da Schwierigkeiten bekommt.
Sicher ist das kleineren oder juengeren Spielern nicht bekannt, aber man lernt
halt nie aus. Wer eine Hochzeitsfeier ohne groessere Stoerungen moechte der
wende sich vertrauensvoll an einen Kleriker (ich z.b. traue jederzeit und
gerne und habe auch schon den Priester gekillt um dann selber die Trauung
vorzunehmen :) )

Das log von Semiras Hochzeit habe ich leider nichtmehr, aber soviel ich weiss
existiert zumindest noch eine Ausgedruckte Version der Hochzeit von Nesaja und
Tyrion die damals ca 2 Stunden dauerte mit einer interessanten Bilanz die in
etwa so aussah:

- ein total fertiger Nairolf, der die Zeremonie leiten wollte
- 8-9 tote Spieler (darunter 1 PK von Rochus durch vergiften und mindestens 5
"zaps" von Lwaxana an irgendwelchen Ryne-Zweitis)
- ca 30 mal eine neugeladene Kapelle
- ein Tyrion dessen Leitung abschmierte und der dann auchnoch von Nairolf
gezwungen werden musste "ja" zu sagen :-)

Das nur so als Info.. wer SPASS haben will sollte zumindest die hochzeit ind
er Kapelle anfangen, sich aber gleich nen Kleriker zur Hilfe suchen wenn man
nicht gerade 2 Stunden Zeit hat :-)

Sharia

-----------------------------------------------------------------------------



Re^5: Trauungen in Nibelheim (Key, 25. Feb 1998, 14:15:02):
~#! rn=Sharia rt=888411281 rg=polizei.beschwerden
~#! tid=888401965
Hochzeit ohne probs ist oede, total langweilig, und ueberholt :)
Oki ich geb ja zu wenns zu arg wird kanns auch ziemlich nerven, aber einmal
priester (kleriker) killen .... wen stoehrts? :)

Achja ... Aehm MORGOTH! fuehr ein das Kleriker die gerade in einer Trauung
sind Freiwild sind ;)
Die nehmen einem sonst immer den ganzen Spass :)

Key

-----------------------------------------------------------------------------



Re^6: Trauungen in Nibelheim (Hobo, 25. Feb 1998, 14:48:47):
~#! rn=Key rt=888412502 rg=polizei.beschwerden
~#! tid=888401965
Hochzeit in Niebelheim?
Nie wieder!
Mir hat das damals gereicht, als wir erst mal 2 Stunden gebraucht haben, bis
wir gemeinsam in einem Raum stehen konnten. 
Als dann noch die Einsprueche und Priester-Zapperei losgingen, lagen unsere
Nerven auch mehr als blank!

Aber wenigstens hatten wir RL-Sekt, der hat uns etwas getroestet. ;)

  Hobo - ganz schoen lang verheiratet

-----------------------------------------------------------------------------



Re^7: Trauungen in Nibelheim (Rochus, 25. Feb 1998, 18:22:16):
~#! rn=Hobo rt=888414527 rg=polizei.beschwerden
~#! tid=888401965
Vergiss aber bitte nicht, dass es eine besondere Herausforderung war,
einen Gott daran zu hindern mit Dir in einem Raum zu stehen :-)

  Rochus

-----------------------------------------------------------------------------



Re: Re: Trauungen in Nibelheim (Semira, 26. Feb 1998, 18:38:08):
~#! rn=Larissa rt=888406761 rg=polizei.beschwerden
~#! tid=888401965
und ob ;)

klar hab ich das log noch und die hochzeit war einfach nur genial (im
nachhinein betrachtet)...wer hat schon die ganze schlagerprominenz bei seiner
trauung dabei?

*inErinnerungenschwelgend*

Semira

-----------------------------------------------------------------------------



Re^3: Trauungen in Nibelheim (Deepblue, 27. Feb 1998, 10:03:43):
~#! rn=Semira rt=888514688 rg=polizei.beschwerden
~#! tid=888401965
Bitte das Log mal per Mail schicken

-----------------------------------------------------------------------------



Re^8: Trauungen in Nibelheim (Zardoz,  2. Mar 1998, 16:50:07):
~#! rn=Rochus rt=888427336 rg=polizei.beschwerden
~#! tid=888401965
Ich bin auch voellig dagegen, dass jetzt ploetzlich Hochzeiten im MG ruhig
und friedlich ablaufen sollen. Es darf einfach nicht wahr sein, dass ich mein
Einspruch-Monster umsonst programmiert haben soll, es beklagt sich eh schon,
dass es so selten zum Einsatz kommt :)

Ciao Zdrozz

-----------------------------------------------------------------------------



Re: Trauungen in Nibelheim (Trekan,  3. Mar 1998, 10:40:40):
~#! rn=Srabi rt=888401965 rg=polizei.beschwerden
~#! tid=888401965
nehmt ihr das mit dem rumgeheirate nicht was ernst?

vielleicht sollet ihr mal in so nem tiny-mud nachsehen (oder wie immer die
heissen)
Da ist das vielleicht eher angebracht. 

Ich denke, heiraten ist hier n ganz netter bonus, aber mehr nicht.
Also habt euch nicht wie alte omi's, die grad sissi die koenigin von
oesterreich kucken, sonst muesst ihr euch eine schmalz-auffang-schuessel unter
den monitor stellen.
Trekan -> wird hier nie heiraten

-----------------------------------------------------------------------------



Re^3: Trauungen in Nibelheim (Larissa,  3. Mar 1998, 12:43:23):
~#! rn=Larissa rt=888925365 rg=polizei.beschwerden
~#! tid=888401965
Sag niemals nie, Trekan.

Lari, gluecklich

-----------------------------------------------------------------------------



Re: Re: Trauungen in Nibelheim (Lug,  4. Mar 1998, 02:31:18):
~#! rn=Trekan rt=888918040 rg=polizei.beschwerden
~#! tid=888401965
Hm,

sag nie: Nie! Trekan.

Wissend
Lug

-----------------------------------------------------------------------------



Nix Neues. (Fyt, 11. Mar 1998, 13:04:21):

Aehm ja: Ich wollte nur mal wieder das angemerkt haben, was ich auch sonst
anmerke: Ihr spinnt. Alle ausser Freund muessen das jetzt nicht persoenlich
nehmen.

Fyt.

PS: Ich kann mich noch ganz gut an die Zeit erinnern, als Brummel sich
hochgespielt hat. Und wenn ich mich nicht gaenzlich taeusche, hat er
auch zum Schluss noch ohne TF und fast ohne Alis gespielt.

Naja, passt wohl nich ins Konzept...

-----------------------------------------------------------------------------



Re: Nix Neues. (Highlander, 11. Mar 1998, 13:25:22):
~#! rn=Fyt rt=889617861 rg=polizei.beschwerden
~#! tid=889617861
DIE Regel fuer Zweitspieler von Magiern: Das ist ein Spieler, also
lass die Finger von.
Wenn also ein Magier sich im Wechsel mit dem Zweitie einloggt, die
momentan wichtigen files liest und dann dementsprechend Waffen wechselt
(wegen resistancies) bzw. immer das richtig tut, ist das kein Zweitie mehr.
Einen neuen Testspieler kann sich Azrael jederzeit anlegen.
Und es ist ein Regelverstoss gegen die Regel #1 fuer Magier: Finger weg
von Spielern. Nur dass Brummel nicht gescriptet wurde (was ich mal annehme)
heisst ja noch lange nicht, dass nicht gegen die Regeln verstossen wurde.
     HrT

-----------------------------------------------------------------------------



Re: Nix Neues. (Freund, 11. Mar 1998, 16:23:47):
~#! rn=Fyt rt=889617861 rg=polizei.beschwerden
~#! tid=889617861
Ich nehm das jetzt mal persoenlich:

Fyt: Ihr spinnt. Alle ausser Freund muessen das jetzt nicht persoenlich
Fyt: nehmen.

Wird er sehen, was er hat.

Freund.

-----------------------------------------------------------------------------



Re: Re: Nix Neues. (Dhojakt, 11. Mar 1998, 18:34:47):
~#! rn=Highlander rt=889619122 rg=polizei.beschwerden
~#! tid=889617861
Eine derartige Auslegung dieser Regel ist mir ehrlich gesagt neu. Immerhin
haben Magierzweities sowieso schon das Problem, dass sie aufpassen muessen was
sie sagen.
Kurz und gut: -Ich- bin der Meinung, das beim ersten Auftreten eines solchen
Streitfalles es auch 3 Monate Spielsperre getan haetten, um ihn ueber das
Problem nachdenken zu lassen. Und sozusagen als Warnung fuer den Rest.
Bisher war naemlich durchaus nicht klar, dass es unter Spielerhilfe faellt,
sich selbst Informationen aus Files zu verschaffen.
Khidar.

-----------------------------------------------------------------------------



Re^3: Nix Neues. (Damien, 11. Mar 1998, 18:41:45):
~#! rn=Dhojakt rt=889637687 rg=polizei.beschwerden
~#! tid=889617861
Dem stimme ich zu, ich wusste bisher auch nicht, das ich gegen den Magier-
vertrag verstosse, wenn ich mit Damien etwas fuer meinen Zweitie rauszukriegen
versuche.

Damien.

-----------------------------------------------------------------------------



Re^4: Nix Neues. (Padreic, 11. Mar 1998, 19:00:08):
~#! rn=Damien rt=889638105 rg=polizei.beschwerden
~#! tid=889617861
Du hast vollkommen Recht Damien, im Magiervertrag steht nirgends, dass Du Dir
fuer Deinen zweiti nicht den ganzen Code ansehen darfst. Du solltest Dir dann
aber vielleicht mal ueberlegen ob nicht vielleicht eher Damien der zweitie
Deines Spielers ist und ggf. die Konsequenzen daraus ziehen. Magier sind
naemlich ausdruecklich nicht da um fuer Spieler (seien es die eigenen oder
fremde) irgendwelche Dinge im Code nachzulesen und jetzt komm nicht mit
Argumenten 'Ich will ja hier auch noch was proggen', entweder man ist Magier
_oder_ man ist Spieler Mischformen davon gibt es nicht.

                                                            Padreic

P.S.: Nein, ich bin ausdruecklich dafuer, das man nebenher _ab und zu_ auch
nochmal ein wenig spielt um den Bezug zur Realitaet zu wahren, aber wenn ich
spiele dann spiele ich und da hat dann auch kein Magier etwas zu suchen.


-----------------------------------------------------------------------------



Re^3: Nix Neues. (Patryn, 11. Mar 1998, 19:00:25):
~#! rn=Dhojakt rt=889637687 rg=polizei.beschwerden
~#! tid=889617861
also mir ist das auch voellig neu und ich bin gerade man sehr happy, dass
nicht ich zuerst erwischt wurde. eben wegen dieser vorteile haben
magierzweities nen gewisses schweigegeloebnis, auch mit den zweities und
sind in einigen gilden nur geduldet, mit gewissen nachteilen.
warum ich jetzt kein problem damit habe, zuzugeben, dass ich oefter
im auftrag meines zweities in fremden files rumschnueffle? weil ich der
meinung bin, dass dies eine fehlentscheidung war und ich mir nichts
vorzuwerfen habe. ich kenne sowieso dank gewissen verpflichtungen im mud
recht viele quellcodes, die meinen zweitie eigentlich nix angehen:
 jetzt aber fuer unsere sherifs schizophraen zu werden, halt ich fuer
 leicht ueberzogen

------
patryn

-----------------------------------------------------------------------------



Re^4: Nix Neues. (Wurzel, 11. Mar 1998, 19:59:17):
~#! rn=Patryn rt=889639225 rg=polizei.beschwerden
~#! tid=889617861
explizit steht da wirklich nichts drueber in den regeln, ausser dass ein
magier nicht gleichzeitig mit seinem zweiti eingeloggt sein darf (und damit
auch nicht manipulieren kann) und dass der zweiti nicht helfen darf (wobei
mit letzterem bestimmt nicht gemeint ist, dass der zweiti keinem anfaenger
den weg zur he zeigen darf).
selbst wenn man eine solche regel einfuehren wuerde, dass der magier, wenn
er einen zweiti, hat keinen code ansehen darf... wer wollte das ueberwachen?
zur not saugt er sich den code per ftp, liest ihn in ruhe in dem einen
fenster und spielt in dem anderen. okay, das kann man abschalten... was man
aber nicht abschalten kann ist, dass der zweiti wenigstens den code von
seinem ersti kennt. ausserdem gibts hier genug erzmagier, die auch ihre 
zweitis rumlaufen lassen (teilweise sogar unmarkiert :), wie wollte man die
ausbremsen?
nein, so einfach ist das nicht.
ich plaediere mal dafuer, dass der charakter wieder restauriert wird.

wurzel

-----------------------------------------------------------------------------



Re^4: Nix Neues. (Silvana, 11. Mar 1998, 20:01:04):
~#! rn=Patryn rt=889639225 rg=polizei.beschwerden
~#! tid=889617861
Ich denke, es ist ein ziemlicher Unterschied, ob man verlangt, sich
absichtlich dumm anzustellen (was eine kuenstliche Schizodingens ja 
bewirken muesste), oder zu erwarten, dass man den Magiercharakter nicht
'mal eben' einloggt, um eine Resistenz nachzusehen, eine Syntax zu
finden oder gar nach Heilstellen zu greppen.
Niemand wird wohl Boings Zweitie die aussergewoehnliche Kenntnis der
Schreckensspitze oder gewisser Quests vorwerfen oder meiner Zweitie die
gute Ortskenntnis im Warokgebirge. Keinem Magier (oder dessen Zweitie) kann
man das Wissen durch seine Arbeit zum Vorwurf machen (und das schliesst 
auch Patryns Kenntnis meiner Files ein, beispielsweise). Was man aber auf
keinen Fall tun sollte, ist, den Magier als 'Lookup-Device' fuer dem
Spieler zu missbrauchen.
Trotzdem finde ich den Vorschag einer Spielsperre fuer bestimmte Zeit doch
eher angemessen, als ne sofortige Loeschung. Ich kann allerdings nicht
beurteilen, was da _genau_ vorgefallen ist und hoffe auf Freunds Augenmass...

  Silvana

-----------------------------------------------------------------------------



Re^5: Nix Neues. (Gloin, 11. Mar 1998, 21:15:04):
~#! rn=Silvana rt=889642864 rg=polizei.beschwerden
~#! tid=889617861
Lookup-Device finde ich als Bezeichnung unangebracht. Ich habe in einem
anderen (winzigen) MUD auch Magier und Spieler und geh mit dem Spieler
eben durch die Gegend, schaue mir aber eben gewisse Dinge dann mit dem
Magier genauer an - um daraus zu lernen oder Fehler zu finden/zu
korrigieren. Da laesst es sich latuernich nicht vermeiden, dass ich
mit dem Player dann eben diese Einsichten auch nutze.
Ist ein zwiespaeltiges Thema, aber bevor da ein Spieler, in den der
Mensch dahinter sicher auch viel ehrliche Muehe reingesteckt hat (viel-
leicht eben auch, um das MUD von Spielerseite kennenzulernen ... taete
einigen Magiern ganz gut) geloescht wird ...

Gloin

-----------------------------------------------------------------------------



Re^4: Nix Neues. (Damien, 11. Mar 1998, 21:17:25):
~#! rn=Neb rt=889647196 rg=polizei.beschwerden
~#! tid=889617861
Klaro, Neb, ich habe mir Damien ueber ein RL-Jahr und 35 Online-Tage hochge-
zogen, damit ich jetzt nachgucken kann, wie mein Zweitie die quests, die ich
schon geloest habe besser loesen kann, alle Monster plaettet und...
Mal ganz davon abgesehen ist mir Dein Artikel eigentlich zu bloed um naeher
darauf einzugehen...

Damien.

-----------------------------------------------------------------------------



Re^5: Nix Neues. (Neb, 11. Mar 1998, 21:38:48):
~#! rn=Damien rt=889647445 rg=polizei.beschwerden
~#! tid=889617861
Also, fuer nen Magier-2tie, den ich zum Erstspieler ernenne, um Files
einzuschauen fuer mich, braeuchte ich sicher keine 35, sondern eher 3,5 tage,
Damien, ansonsten sind hier ja eh immer alle bloed, die nicht die Meinung des
Schreibers haben, nicht wahr, Damien.

Neb

-----------------------------------------------------------------------------



Re^5: Nix Neues. (Marcus, 11. Mar 1998, 21:40:49):
~#! rn=Padreic rt=889639208 rg=polizei.beschwerden
~#! tid=889617861
Hi folks, 

Irgendwoher kenn ich diese ganze Diskussion schon... Die hatten wir bei uns
damals im TAPPMud auch (so vor 2 Jahren glaub ich). Die Loesung, die sich 
eigentlich sehr bewaehrt hat, ist folgende:

Es gibt zwei Arten von Magierzweities: testing Testis und playing Testis. 
playing Testis: sollen gespielt werden wie Spieler, ohne jedes Magierwissen
und
             oder Hilfe.
              Sie duerfen mit anderen 'normalen' Spielern normal
kommunizieren
              und mitspielen usw, solange deren Spiel nicht wesentlich beein-
              traechtigt wird. (Sprich, andauernd monster vor der Nase weg-
              schnappen etc. ist nicht gewuenscht)
testing Testis: Sind fuer testzwecke da, um areas , quests, monsters etc. 
               zu testen. Sie duerfen rollenspieltechnisch nicht mit anderen
                 anderen Spielern agieren. Wenn es doch passiert -> uebliche
                 Verwarnungen usw.

Das ganze laeuft wunderprima (wenn TAPP mal wieder oben ist ;). Die Wizards,
die noch ein bischen mit ihren Zweities spielen wollen, spielen mit denen,
die Wizards, die einen Zweitchar brauchen zum Testen, koenen sich einen
basteln.

</oberlehrer> Marcus

-----------------------------------------------------------------------------



Re^6: Nix Neues. (Wurzel, 11. Mar 1998, 21:47:55):
~#! rn=Marcus rt=889648849 rg=polizei.beschwerden
~#! tid=889617861
ich seh nicht so richtig den unterschied... ist hier eigentlich genauso.
nur dass in der mentalitaet vieler leute hier die sache andersrum ist: der
magier ist der zweiti, der spieler spielt weiter und benutzt den magierzweiti
nur dazu, sich vorteile zu verschaffen.
ist zwar doof, aber ueblich.

wurzel

-----------------------------------------------------------------------------



Re^6: Nix Neues. (Acrimon, 11. Mar 1998, 21:51:49):
~#! rn=Marcus rt=889648849 rg=polizei.beschwerden
~#! tid=889617861
Ich wueszte nicht, dasz das hier anders waere.
Einziger Unterschied: "playing Testi" heiszt hier "Magierzweitie" und "testing
Testi" heiszt hier "Testie". Auszerdem darf sich ein Magierzweitie wie ein
ganz normaler Spieler verhalten, solange er nicht Interna ausplaudert, dafuer
aber nicht mit dem Magier gleichzeitig eingeloggt sein.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Re^7: Nix Neues. (Padreic, 11. Mar 1998, 22:45:26):
~#! rn=Acrimon rt=889649509 rg=polizei.beschwerden
~#! tid=889617861
Um es nochmal kurz zusammen zu fassen, es gibt also offenbar einige Magier,
die ihren zweiti wie ein Testi benutzen (ob ich den magier nun immer kurz
einlogge oder ihn eingeloggt lasse ist eigentlich egal). Sie befinden sich
zwar in einer Regelluecke und ediese wurde jetzt geschlossen. Meine Meinung
waere also markiert den entsprechenden zweitie als Testi und die Sache hat
sich. Darueber hinaus schlage ich folgenden Passus fuer den Vertrag vor.
Sollte sich das Verhalten eines Zweitspielers nach Ansicht des Sheriffs eher
dem eines Testspielers aehneln, so wird dieser von ihm als Testspieler
markiert.

                                       Padreic

-----------------------------------------------------------------------------



Re^4: Nix Neues. (Hangover, 11. Mar 1998, 22:45:56):
~#! rn=Damien rt=889638105 rg=polizei.beschwerden
~#! tid=889617861
Moin!

Ich dachte immer, man wird Magier, um hier was zu programmieren, und
nicht, um seine Spielerfamilien voranzubringen. 

Muss ich mich wohl geirrt haben.

angover
(ohne Magierzweiti)

-----------------------------------------------------------------------------



Re^8: Nix Neues. (Anatol, 11. Mar 1998, 22:48:03):
~#! rn=Padreic rt=889652726 rg=polizei.beschwerden
~#! tid=889617861
Und das AUSGERECHNET von einem Magier, der einen Spielercharakter als
Testspieler missbraucht und ausschliesslich des Umstands wegen, dass 
er ihn zu "Tests" mit seinem regulaeren Zweitcharakter gleichzeitig
im Spiel braucht, weder markiert noch aus der Gilde genommen hat...

Anatol


-----------------------------------------------------------------------------



Re^9: Nix Neues. (Dhojakt, 11. Mar 1998, 22:53:42):
~#! rn=Anatol rt=889652883 rg=polizei.beschwerden
~#! tid=889617861
Eigentlich ist der Nachsatz interessant, den Marcus mir gegenueber erwaehnte: 
Naja, wir sehen ueber kleinere Verstoesse hinweg.
Eigentlich bringt der Magier doch nur sich selber um seinen Spass. Und ich
weiss genau, dass ich hier nicht Maggi werde, weil ich mich da wohl auch ab
und zu nicht beherrschen koennte. Aber mein Job ist nicht der des Sheriffs
*zuck*
Scheint so, als ob die Magierschwemme des MG auch hier ihre Auswirkungen hat.
Khidar.

-----------------------------------------------------------------------------



Re^10: Nix Neues. (Wurzel, 11. Mar 1998, 22:58:32):
~#! rn=Dhojakt rt=889653222 rg=polizei.beschwerden
~#! tid=889617861
was heisst hier "magierschwemme" ? 
wenn ich mir mal ansehe, wieviele von unseren magiern tatsaechlich was tun,
komme ich ins gruebeln...
vielleicht sollte man einfach mal festhalten, dass ein magier zum proggen
seine besonderen faehigkeiten hat. wer nach einer bestimmten zeit nichts
abgeliefert hat, sollte geloescht werden.
waere das ein akzeptabler vorschlag?

wurzel

-----------------------------------------------------------------------------



Re^10: Nix Neues. (Anatol, 11. Mar 1998, 22:58:36):
~#! rn=Dhojakt rt=889653222 rg=polizei.beschwerden
~#! tid=889617861
Sobald der "Spieler" durch seine magische Unterstuetzung derartige Kniffe
kennt und anwendet, dass er normalen Spielern gegenueber _KLAR_ im Vorteil 
ist, bringt er nicht nur sich, sondern auch jene normale Spieler um ihren
Spielspass, sofern die Spieler nicht mit einem Gros an Toleranz begnadet
sind. Genau hier hoert dann der Spass in der Tat auf.

Anatol


-----------------------------------------------------------------------------



Re^11: Nix Neues. (Neb, 11. Mar 1998, 23:02:11):
~#! rn=Wurzel rt=889653512 rg=polizei.beschwerden
~#! tid=889617861
Nicht schlecht, Wurzel, wie waere es, wenn jeder Magier, der nichts
anschliesst nach einer absehbaren Zeit, ne Spielpause bekommt bis zu dem
Zeitpunkt, zu dem er wieder etwas anschliesst, so faellt auch die Ausrede
flach, dass man keine Zeit hat was zu programmieren, aber es spaeter sicher
tun will. Chatten und Zeitunglesen koennen diese Magier dann ja immer noch mit
ihren Zweitspielern.

Neb

-----------------------------------------------------------------------------



Re^12: Nix Neues. (Dhojakt, 11. Mar 1998, 23:04:14):
~#! rn=Neb rt=889653731 rg=polizei.beschwerden
~#! tid=889617861
Ahja, es soll tatsaechlich noch Leute ohne Homemud geben, Neb (schiel
ex-schrumpfi/zuerileu). Die haben dann die totale Moeglichkeit, ihr Programm
vorzuweisen. (Na danke.)
Khidar.

-----------------------------------------------------------------------------



Re^13: Nix Neues. (Ringor, 11. Mar 1998, 23:07:15):
~#! rn=Dhojakt rt=889653854 rg=polizei.beschwerden
~#! tid=889617861
Abgesehen davon, dass mit einer starren Frist viele Gebiete ala Semmel
entstehen werden. Viele kopierte Raeume, keine Beschreibungen, ein paar NPCs.
Und Voila, man ist jetzt offizieller Magier.

Fuer so schoene Gebiete wie Toeters Insel oder das Warok bleibt in der Frist
natuerlich nicht genug Zeit.

Tolle Aussichten.

Dagegen, Ringor.

-----------------------------------------------------------------------------



Re^14: Nix Neues. (Neb, 11. Mar 1998, 23:31:08):
~#! rn=Ringor rt=889654035 rg=polizei.beschwerden
~#! tid=889617861
Okay, da muss ich mich ein wenig zuruecknehmen, dass waere auch nicht der Sinn
der Sache, sorry, Dhojakt und Ringor, aendert aber nix an meinem Aerger ueber
gewisse "Schau mal den FIle an oder Setz die Skills-hoch"_Magier.

Neb

-----------------------------------------------------------------------------



Re^11: Nix Neues. (Teddy, 12. Mar 1998, 01:00:37):
~#! rn=Wurzel rt=889653512 rg=polizei.beschwerden
~#! tid=889617861
Vielleicht muss er nicht unbedingt proggen aber wenigstens was produktives
tuen.
Ich hatte eigentlich gedacht, das dieses Problem sich durch das neue System
langsam selbst loest.

Teddy

-----------------------------------------------------------------------------



Re: Nix Neues. (Teddy, 12. Mar 1998, 02:02:12):
~#! rn=Fyt rt=889617861 rg=polizei.beschwerden
~#! tid=889617861
So,

bevor mir noch der Kragen platzt, versuche ich mal so sachlich wie moeglich
was dazu zu schreiben:

Zu Fyt: 
- Wenn du schon schreibst, das nur Freund gemeint ist, heisst das nicht Ihr
spinnt, sondern du spinnst.
- weiterhin gehoert sowas nicht in die MPA, sondern in ne Mail, wenn
ueberhaupt
- ausserdem geht sowas auch sachlicher ,womit man vielleicht auch was erreicht
- schliesslich ist Freund nicht Pruegelknabe vom Dienst, auch wenn er in
letzter Zeit dazu gemacht wird.

Freund hat vor kurzem die Regeln nochmal wiederholt und auch schaerfere
Durchsetzung angekuendigt, wer es trotzdem macht, weiss worauf er sich
einlaesst. Selber Schuld.

Die Begruendung: `Ich mach das schon immer so!`, zieht also nicht.

Zu den Kommentaren anschliessend, ich fand diese Kommentare und
`Gestaendnisse` teilweise schlimmer, als den urspruenglichen Kommentar.

Das hier bei einigen Magiern keinerlei Schuldbewusstsein existiert fand ich
ziemlich krass.
Das MG soll doch wohl gewissen Rollenspielcharakter besitzen und ich lese mir
vor dem Spiel auch nicht die Loesung durch, ebenso, wie ich nicht die letzte
Seite vom Krimi zuerst lese.

Ich finde es jedenfalls ziemlich unfair den anderen Spielern gegenueber,
Moeglichkeiten auszunutzen, die andere nicht haben.
Wer damit nicht klarkommt, muss sich halt entscheiden, aus diesem Grund
weigere ich mich schliesslich auch, Magier zu werden und ich stehe damit AFAIK
nicht alleine.


So, das wars fuers erste, ist etwas lang geworden, vielleicht liest es ja
trotzdem jemand.

Tschau,


Teddy


-----------------------------------------------------------------------------



Re: Re: Nix Neues. (Patryn, 12. Mar 1998, 11:31:57):
~#! rn=Teddy rt=889664532 rg=polizei.beschwerden
~#! tid=889617861
ich finde es ehrlich gesagt viel schlimmer, dass versucht wird, allen magiern
ein staendiges schuldbewusstsein, zu was auch immer, einzureden ;)
davon abgesehen habe ich bisher keine schriftlichen verschaerften regeln
sehen koennen, die auf angesprochenes problem naeher eingehen.

------
patryn

-----------------------------------------------------------------------------



Re: Re: Nix Neues. (Alboin, 12. Mar 1998, 11:37:57):
~#! rn=Teddy rt=889664532 rg=polizei.beschwerden
~#! tid=889617861
ich fass mal zusammen:
1. es gibt keinen klaren Regelverstoss von Azrael/Brummel, warum er also
gleich so eine harte Strafe bekommt, ist mir schleierhaft
2. das in den programmcode schauen ist natuerlich entschieden verwerflich, und
unfair anderen gegenueber

zu Punkt 2 ist ausserdem zu sagen, dass Azrael lediglich SEINEM Spieler half,
wenn er gluecklich mit dieser Schummelei ist, dann ist es sein Problem. Mir
hat er jedenfalls noch gesagt, dass er sich von Zeit zu Zeit mit dem "in den
Code lunschen" hineingsteigert hat und genau da liegt der springende Punkt.
Magier sein und einen guten Spieler zu haben das geht eh nie gut, frueher oder
spaeter nutzt man das aus. Also gibt es nur eins entweder Magier oder Spieler
zu sein. Wer als Magier dann mal spielen will, soll sich nen Testie nehmen
oder in ein anderes Mud gehen. Oder man kann auch den Magierspieler erfinden,
der auf Toplisten usw keine Beruecksichtigung findet.
Zu der ploetzlich aufkeimenden Idee Magier die nichts proggen mit Spielpause
zu belegen, moechte ich nur sagen das die lowlevel und nichtproggenden Magier
mit Abstand die ersten sind, die kommen wenn Spieler Hilfe suchen (ich will
mich damit nicht selber loben aber es ist so)

Alboin

-----------------------------------------------------------------------------



Freu-eund hat Euch lieb! (Freund, 12. Mar 1998, 12:06:04):
Mir reicht's.

Ich moechte mal meine *privaten* Ansichten kund tun:

Der Job des Sheriffs ist es, fuer Recht und Ordnung zu sorgen. Wir sind hier 
kein Staat, der eine Gewaltentrennung praktiziert. Wer nach dem Ausnutzen 
eines Magiers als "Look-Up-Device" (danke Silvana:-) lieber seinen Magier
behalten moechte, um etwas Produktives zu leisten, kann das tun. (In diesem
Zusammenhang erscheint mir der Hinweis angebracht, dass von Brummel der Vor-
schlag zur Selbstloeschung kam, was aber eigentlich die Oeffentlichkeit
nichts angeht. Es scheint mir unmoeglich zu sein, Regelverstoesse in der 
Oeffentlichkeit zu diskutieren!) Der Zweitspieler wurde darauf hin geloescht.

Nun gibt es Stimmen, die eine Restaurierung fordern, denn es sei zwar nicht in
Ordnung gewesen, aber jeder macht das doch und ausserdem steht es ja nicht
irgendwo geschrieben.

Solange ich Sheriff bin und war, begegnet mir diese Argumentation. 

Liebe Mudder, wenn es einen Preis fuer Egoismus und vorgetaeuschte Naivitaet
gaebe, waere der Preistraeger sicherlich MGler. Vergesst einmal den Inhalt
aller Diskussionen, die hier im Moment um einige Bits auf der Platte toben.

Stellt Euch die Frage: Waere es Euch nicht klar, dass "Code-Lesen-Fuer-Den-
Zweitie" ein Vergehen ist? Oder dass man dadurch Probleme bekommt? Ich kann 
diese Blauaeugigkeit in keinster Weise nachvollziehen. 

Fragt Euch noch einmal, was ihr wollt: Einen oeffentlichen Gerichtsprozess
fuer die Vergehen? (Funktioniert das???) Oder einen Schiedsrichter, der eine
Tatsachenentscheidung trifft? Der Job des Sheriffs kann ab sofort abgeschafft
werden, wenn seine Entscheidungen nicht akzeptiert werden. Wer glaubt, dass
ich persoenlich jemanden loesche, weil mir seine Nase nicht passt, muss halt
noch etwas im MG bleiben, damit er mich kennenlernt. Ich hinterfrage stets
Motive und Aussmass einer Tat. Ich denke jedoch, dass das die Oeffentlich-
keit nichts angeht! Es gibt Dinge, von denen man als betroffener Spieler
nicht moechte, dass sie bekannt werden.

Das Amt des Sheriffs ist ein Vertrauensjob. Wer mir misstraut, mag fuer meine
Absetzung bei Boing plaedieren. Wer mir vertraut, wird sich in guten Haenden
wissen. Aber ich bin nicht dazu da, mir Beleidugungen von 3-buchstabigen
Charakteren anzuhoeren, wenn ich meinen Job erledige.

Wieviele Gehirne benoetigt es eigentlich, um sich staendig selbst etwas
vorzumachen? Alles, was einem selbst einen Vorteil bringt (Scripten, 
Triggern, Bugs ausnutzen, Magierzweitie zum Nachlesen oder Machtausueben),
ist voellig in Ordnung und wird niemals bestraft. Alles, was man selbst
nicht hinkriegt, gehoert gefaelligst explizit verboten und untersagt.
Das erinnert mich an eine Art Volkssport, die es auch in RL gibt:
Versicherungsbetrueger und Steuerhinterzieher. Aber MG ist ja nur ein
Spiel. 

Zum Glueck.

Freund - Noch-Sheriff.

-----------------------------------------------------------------------------



Re^3: Nix Neues. (Hobo, 12. Mar 1998, 12:30:21):
~#! rn=Patryn rt=889698717 rg=polizei.beschwerden
~#! tid=889617861
Es geht darum, Patryn,
dass man zeinen Zweitie wie einen SPIELER spielt und nicht wie einen Testie.
Ein Spieler steht nunmal manchmal vor Problemen, die schwer zu loesen sind
uund mit Hilfe von anderen Spielern, die das Wissen schon haben. Ein normaler
Spieler hat nicht die Moeglichkeit, sich mal eben einen Magier einzuloggen und
zu schauen, welche Waffe bei Monster XYZ nun den meisten Schaden macht.
Dass Leute, die diese Moeglichkeit haben und sie auch nutzen, (eben z.B.
Azrael bzb. Brummel) den anderen gegenueber entscheidende Vorteile haben, ist
wohl klar. (Nicht umsonst war Brummel Nr. 23 in den Top100).
Es sagt natuerlich keiner was dagegen (und kann ja auch nicht), wenn man als
Magier Wissen, das man durch Bug-suche, testen oder selber Programmieren
erlangt hat, zum Nutzen seines Zweities anwendet (falls es keine
offensichtlichen bugs sind, die natuerlich gemeldet werden sollten)!

Hobo

-----------------------------------------------------------------------------



Re: Freu-eund hat Euch lieb! (Orktoeter, 12. Mar 1998, 12:42:09):
~#! rn=Freund rt=889700764 rg=polizei.beschwerden
~#! tid=889700764
Ich muss Freund Da voll und ganz zustimmen, es muss nicht immer alles schwarz
auf weiss festgehalten sein. Wem es nicht klar ist, das es nicht Ok ist ,
seinen Spieler dadurch zu foedern (und vileicht sogar moeglichst hoch in die
Topliste zu bekommen), das man in den Code schaut, der tut mir leid, fehlt
ihm/ihr doch anscheinend elementares Gerechtihkeitsempfinden.
In dem zusammenhang waere der Vorschlag von Alboin vileicht noch interessant,
Magierzweities, die nicht in der Topliste auftauchen, bzw eine eigene
Magierzweititopliste haben. Dann waere es zumindest anderen gegenueber nicht
mehr so unfair.
Uebrigens, es wird hier so getan, als ob das alles voellig neu ist und keiner
das gewusst haette, das es verboten ist, fuer seinen/einen Spieler in den Code
zu sehen, aber waren das nicht genau die Gruende, die vor nicht allzulanger
Zeit zu der Reform bei den Magiern gefuehrt haben ?

OrkT.

-----------------------------------------------------------------------------



Re: Re: Freu-eund hat Euch lieb! (Highlander, 12. Mar 1998, 12:59:54):
~#! rn=Orktoeter rt=889702929 rg=polizei.beschwerden
~#! tid=889700764
Nachtragen moechte ich noch, dass ich gemeint hatte, Brummel muesste
Testplayer werden (das waere er auf jeden Fall geworden!). Ich bin mir
nicht mehr ganz sicher, ob dann Azrael oder Freund gesagt hat, so haette
der Charakter sowieso keine Zukunft mehr oder auch das kaeme einer
Loeschung gleich oder wie auch immer. Wuerde mir wahrscheinlich aber
genauso gehen - wenn nicht in toplist, dann in dem Fall es quasi sinnlos.
Dass der char geloescht wurde, ist also nicht unbedingt Standard,
aber zum Testplayer waere er auf jeden Fall gemacht worden.
   HrT

-----------------------------------------------------------------------------



Re: Freu-eund hat Euch lieb! (Gloin, 12. Mar 1998, 13:07:45):
~#! rn=Freund rt=889700764 rg=polizei.beschwerden
~#! tid=889700764
Tja. Mit dem Job des Sheriffs setzt man sich natuerlich auch staendig
der Kritik anderer aus, die ein etwas anderes Gerechtigkeitsempfinden
haben, ob sie nun um die Tatsachen wissen, oder nicht ;-)
Einer muss ja der Boese sein ...

Gloin

-----------------------------------------------------------------------------



Re: Re: Freu-eund hat Euch lieb! (Larissa, 12. Mar 1998, 13:25:38):
~#! rn=Gloin rt=889704465 rg=polizei.beschwerden
~#! tid=889700764
Argl,
so, nun hab ich die 34 neuen Artikel durch und frage mich mal wieder:
hat jemal einer behauptet dass alle Spieler gleich sind? Hat doch
schon immer Ungerechtigkeiten aller Art gegeben, ob das nun
Scripte, bessere Leitungen, besserer Client, bessere Bekanntschaft zu
nem Magier, uswusf waren. Ist doch nix neues.

ich verstehe bloss nicht, was das ganze gejammerer soll. Wenn einer
eine Schwierigkeit in 10 Sekunden loest dutch Schummel statt wie man
selber in 2 Online-Stunden, heisst das doch nicht, dass der Schummler
mehr Spass hatte oder hat. 
Spielt denn keiner mehr zum Zeitvertreib/Spass? Dann sollten
wir vielleicht doch auf die Toplisten aller Art verzichten?!

Lari.

-----------------------------------------------------------------------------



Re^3: Nix Neues. (Hobo, 12. Mar 1998, 13:59:37):
~#! rn=Alboin rt=889699077 rg=polizei.beschwerden
~#! tid=889617861
Um es kurz zu machen, und weil es die Dikussion schon mal gab:
Indem ein Spieler Magier oder Seher wird, hat er einen Status erreicht, der
ihm NICHT wegen mangelnder Aktivitaet wieder abgenommen werden kann!

 Hobo

-----------------------------------------------------------------------------



Re^5: Nix Neues. (Damien, 12. Mar 1998, 14:25:51):
~#! rn=Hangover rt=889652756 rg=polizei.beschwerden
~#! tid=889617861
Dachte ich auch, Hangover.
Oh, ich vergass bei meinem Artikel: **IRONY OFF**

Damien.

-----------------------------------------------------------------------------



Magier und Zweities. (Damien, 12. Mar 1998, 14:46:02):
Hmm, zum Thema 'neue Magierwerdung' muss ich mal sagen (Ich hab' die als einer
der ersten mitgemacht): Das bringt unheimlich viel! (<- *Ironie!*)
Ich hab' mich eine Woche lang als 'L' durch ohne konkrete Bespiele unver-
staendliche Dokus gewuehlt, dann angefragt, wie's mit Befoerderung aussieht,
hab' auch schon mal erklaert, was ich denn machen will.
Ergebnis: Nach 2 Wochen erhoehrt mich jemand und teilt mir mit, dass das EM-
Entscheidung ist. Also hab' ich einen Brief an den Erzie-Verteiler
geschrieben,
regelmaessig irgendwelche Erzies direkt angesprochen, jedesmal kam:
Ja, wirklich? Hab' ich nicht mitgekriegt. / Ist in Arbeit. / Warte mal.
Zwei Monate spaeter kam von Boing himself: Ups, wir haben Dich ganz vergessen,
sprich mal irgendeinen EM an, der macht Dich zum 'm'. Tja, das wurde ich dann
auch und dann fragte ich schnell bei irgendeinem 'R' an, um 'M' zu werden.
Tja, was ich geleistet habe, um Magier zu werden: nix. Was hat das neue System
gebracht: Man muss mehr quengeln. Nach welchen Kriterien wurden meine
"Gesuche"
beurteilt: Hmm, so langse darf er mal.

Und zum Thema Magier und Spieler geht nicht: Hier wird doch dauernd geplaerrt,
die Mags haetten zu wenig Spielbezug, wie soll man den denn ohen Spielen
behalten? Und muss ich ein schlechtes Gewissen kriegen, wenn mein Zweitie
irgendwann mal gut wird? Immerhin weiss ich ja einiges aus meiner Seherzeit
und wenn ich versuchen sollte mit Damien per File-Untersuchung mehr rauszu-
kriegen als durcfh spielen, dann ist mir das viel zu trocken und zuviel
Aufwand fuer das Ergebnis.

Damien.
P.S.: "langse" soll "langsam" heissen.


-----------------------------------------------------------------------------



Re: Magier und Zweities. (Neb, 12. Mar 1998, 14:56:01):
~#! rn=Damien rt=889710362 rg=polizei.beschwerden
~#! tid=889710362
Mmh, sind hier einige Leute wirklich so naiv, dass sie nicht den Unterschied
sehen zwischen 
a) Ich verwende das zufaellig als Magier erworbene Wissen auch fuer meinen
Zweitspieler, weil ich mich ja schliesslich auch nicht dumm stellen muss.
und
b) Ich schaue mir regelmaessig an Stellen, wo es fuer meinen Zweitspieler
schwirig ist oder ich fuer ihn viele Punkte fuer die Top-Liste bekomme,
absichtlich und gezielt die Files an und verschaffe mir einen unfairen Vorteil
dadurch gegenueber anderen Spielern.

Tut mir leid, dass kann ich keinem, der so intelligent ist, sich hier
einzuloggen und ein Telnet oder aehnliches zu bedienen, nicht abnehmen, dass
er da nicht differenzieren kann, das sind fuer mich fadenscheinige Argumente.

Neb, schuettelt den Kopf ueber so viel gespielte Naivitaet.

-----------------------------------------------------------------------------



Re: Freu-eund hat Euch lieb! (Aline, 12. Mar 1998, 19:54:48):
~#! rn=Freund rt=889700764 rg=polizei.beschwerden
~#! tid=889700764

Freund ich vertraue Dir.

Bleib bitte Sheriff!

Aline

-----------------------------------------------------------------------------



Re^3: Freu-eund hat Euch lieb! (Wurzel, 12. Mar 1998, 21:01:12):
~#! rn=Larissa rt=889705538 rg=polizei.beschwerden
~#! tid=889700764
oh ja, die diskussion hatten wir auch schon ein paar monate nicht mehr...
toplisten abschaffen!
wenn ich mich recht erinnere, gab es eigentlich keine ernstzunehmenden
gegenstimmen. und ich kenne auch niemanden, der diese listen wirklich braucht.
nur passiert ist bisher nichts...

wurzel

-----------------------------------------------------------------------------



Re^4: Freu-eund hat Euch lieb! (Alpha, 12. Mar 1998, 22:26:58):
~#! rn=Wurzel rt=889732872 rg=polizei.beschwerden
~#! tid=889700764
Toplisten beibehalten!!!!
Wer sie nicht lesen will, braucht nicht lies Topliste tippen und vertich. Wer
sie doch lesen will, kann es tun. 
Alpha.

-----------------------------------------------------------------------------



Re^4: Freu-eund hat Euch lieb! (Gnome, 12. Mar 1998, 22:40:23):
~#! rn=Wurzel rt=889732872 rg=polizei.beschwerden
~#! tid=889700764
aeh... als mag brauch man die toplisten auch nicht mehr. da hast du wohl
recht. aber fuer spieler/seher kann es manchmal ganz interessant sein.

gnOme

-----------------------------------------------------------------------------



Re^5: Freu-eund hat Euch lieb! (Sharia, 12. Mar 1998, 22:44:14):
~#! rn=Alpha rt=889738018 rg=polizei.beschwerden
~#! tid=889700764

1. Freund bleib bitte Sherriff !!! Piep Piep Piep MorgenGrauen hat dich lieb!
   also ich hatte bisher keine Probleme mit Freund und denke mir immer nur
bei solchen "ich-flame-den-sherriff" artikeln immer nur: Leute stellt euch mal
vor z.b. Highlander wuerde hier alleiniger Sherriff sein ... tja dann gaebs
schon wesentlich mehr geloeschte Seher und Magier ..... ich lese die Artikel
von Freund, dass er jemanden geloescht oder bestraft hat eher unter dem
Hintergrund: hmm hat er denjenigen jetzt DOCH mal erwischt ? :-) oder auch:
hmm ich frage mich was derjenige eigentlich wirklich gemacht hat, denn Freund
schreibt sicherlich nicht alle Punkte auf da er demjenigen noch ne Chance hier
im MG lassen will...

2. Toplisten ? LASST SIE BLEIBEN !!!! Ich oute mich hiermit persoenlich,
taeglich mindestens einmal in die Topliste zu schauen, da ich wissen will wo
ich eventuell nen FP gefunden habe oder einen erstkillstups .. also LASST SIE

Sharia

-----------------------------------------------------------------------------



Re^6: Freu-eund hat Euch lieb! (Wargon, 13. Mar 1998, 10:56:49):
~#! rn=Sharia rt=889739054 rg=polizei.beschwerden
~#! tid=889700764
Das ist doch alles nur eine von Catweazle lancierte Kampagne, damit man IHN
wieder zum Sheriff macht. Schliesslich war er immer nur lieb und nett! :)))
  Wargon

-----------------------------------------------------------------------------



Re^7: Freu-eund hat Euch lieb! (Pra, 13. Mar 1998, 12:19:43):
~#! rn=Wargon rt=889783009 rg=polizei.beschwerden
~#! tid=889700764
Mein Stimme fuer das Abschaffen von Toplisten.

Pra.

-----------------------------------------------------------------------------



Re^4: Freu-eund hat Euch lieb! (Mahatma, 13. Mar 1998, 13:52:56):
~#! rn=Wurzel rt=889732872 rg=polizei.beschwerden
~#! tid=889700764
Es gibt ernstzunehmende Gegenstimmen, z.B. meine. ;) Und ich brauche die
Topliste wie die Luft zum Atmen.

Mahatma, levelgeil, toplistensuechtig, krank, kaputt usw.

-----------------------------------------------------------------------------



Re^5: Freu-eund hat Euch lieb! (Mars, 13. Mar 1998, 14:00:56):
~#! rn=Mahatma rt=889793576 rg=polizei.beschwerden
~#! tid=889700764
Schafft die Listen ab, am besten auch noch den Spielerlevel (zumindest nach
aussenhin sichtbar). Dann gibts weniger Probleme mit Untersuche-Scripten ...
weil es keinen Arsch mehr interessiert, wieviele FP oder Killstupse jemand
hat.

Mars

-----------------------------------------------------------------------------



Re^6: Freu-eund hat Euch lieb! (Gloin, 13. Mar 1998, 14:07:12):
~#! rn=Mars rt=889794056 rg=polizei.beschwerden
~#! tid=889700764
Ich als Topwurstspieler will meine Liste behalten. Dagegen. Sowas kann doch
nur Leuten einfallen, die immer unten in den Listen stehen und nicht den
Ehrgeiz haben, mal sagen zu koennen: Aetsch, ich hab mehr :)
Und welchen Arsch interessiert noch, dass man die Hydra gekillt hat?
Apropos: Wer holt sich als erster den Drachengottkill ;-) ?

Gloin

-----------------------------------------------------------------------------



Re^7: Freu-eund hat Euch lieb! (Mieze, 13. Mar 1998, 14:20:57):
~#! rn=Gloin rt=889794432 rg=polizei.beschwerden
~#! tid=889700764

Ich steh nie in der Topliste :))) (naja kein Wunder) hoechstens in einer mit
den meisten Onlinetagen und dem niedrigsten Level dafuer :))) 
Also: fuer das Abschaffen (ist doch eh nur zur Beweihraeucherung der Top-Leute
;o)

Die Mieze - gegen Topliste.

-----------------------------------------------------------------------------



Re^8: Freu-eund hat Euch lieb! (Yendi, 13. Mar 1998, 14:26:12):
~#! rn=Mieze rt=889795257 rg=polizei.beschwerden
~#! tid=889700764
Vergiss es, Mieze, Du bist ja schon level 38...
Meinen level kannst Du schon gar nicht mehr erreichen... :)   ,
und mein level/Online-Quotient duerfte auch ziemlich unschlagbar sein...
Irgendwo in der Gegend von 0,36 level pro online-Tag.

YT Yendi, der ewige Weise



-----------------------------------------------------------------------------



Re^9: Freu-eund hat Euch lieb! (Dhojakt, 13. Mar 1998, 19:21:13):
~#! rn=Yendi rt=889795572 rg=polizei.beschwerden
~#! tid=889700764
Also ich glaub mal, den unschlagbaren 1. Platz in dieser Liste haette Raffi
mit 0.03 Level/Tag.

-----------------------------------------------------------------------------



Re^10: Freu-eund hat Euch lieb! (Grimmborn, 13. Mar 1998, 20:30:39):
~#! rn=Dhojakt rt=889813273 rg=polizei.beschwerden
~#! tid=889700764
"hilfe finger", finger embe: Alter: 68d 10:55:22, Spielerlevel: 1
Kannst Du selber rechnen oder soll ich Dir den level/Tag ausrechnen?

Grimmborn der Atheist hatte auch sofort zu "finger raffi" gegriffen...

-----------------------------------------------------------------------------



Re^10: Freu-eund hat Euch lieb! (Mieze, 13. Mar 1998, 20:49:50):
~#! rn=Dhojakt rt=889813273 rg=polizei.beschwerden
~#! tid=889700764
hmmm also komm ich nie in eine Topliste *wein* vielleicht in: wer hat die
laengste Ignoriereliste? <- letzter Versuch *grins*

Die Mieze - niemalsnicht auf einer Topliste :)

-----------------------------------------------------------------------------



Re^8: Nix Neues. (Key, 15. Mar 1998, 01:33:11):
~#! rn=Padreic rt=889652726 rg=polizei.beschwerden
~#! tid=889617861
Loesch endlich deine Zweities Padreic oder markier sie als Testie.
Dann koennte man deinen Artikeln auch mal etwas mehr glauben ...

Key

-----------------------------------------------------------------------------



Re^11: Nix Neues. (Key, 15. Mar 1998, 01:35:41):
~#! rn=Wurzel rt=889653512 rg=polizei.beschwerden
~#! tid=889617861
Hmm naja nicht unebdingt gleich loeschen ...
Und was verstehst du unter einer bestimmten Zeit?
Einige brauchen vielleicht auch laenger bis sie den durchblick haben, und
haben vielleicht nicht wie einige andere 12 stunden am tag zeit fuers mudden
...

Key

-----------------------------------------------------------------------------



Re: Freu-eund hat Euch lieb! (Key, 15. Mar 1998, 01:42:57):
~#! rn=Freund rt=889700764 rg=polizei.beschwerden
~#! tid=889700764
Sooo ich glaube ich muss da Freund auch mal in Schutz nehmen ...
Freund hat genau wie Cat damals ein Gespuer dafuer wie jemand zu dem steht was
er getan hat ... naja oki cat war etwas weicher *zwinker Cat* :)
Wenn ein Spieler geloescht wird hat das hier mit Sicherheit einen verdammt
guten Grund.
Ob alle Gruende bekanntgegeben werden haengt wohl von der Art der Vergehen ab
und vom verhalten des .... naja sagen wir mal angeklagten :)

Key, ist fuer einen Sheriff, wenn er net so streng is ;))

-----------------------------------------------------------------------------



Re^3: Freu-eund hat Euch lieb! (Key, 15. Mar 1998, 01:45:21):
~#! rn=Larissa rt=889705538 rg=polizei.beschwerden
~#! tid=889700764
Hmm ich spiele nur zum Spass :)
Sieht man das nicht an meinem Lvl .)

Key

-----------------------------------------------------------------------------



Re^4: Freu-eund hat Euch lieb! (Key, 15. Mar 1998, 01:47:50):
~#! rn=Wurzel rt=889732872 rg=polizei.beschwerden
~#! tid=889700764
Hmm naja ... die listen finde ich schon ganz interessant, und setze mich
hiermit fuer deren Erhaltung ein :)

Key
P.S.: Nicht weil ich schauen will wieviel ich brauch um XXX zu ueberholen
(Weiss netmal ob ich ueberhaupt noch draufbin) aber es gibt andere
intertesante sachen :)

-----------------------------------------------------------------------------



Re^8: Freu-eund hat Euch lieb! (Key, 15. Mar 1998, 01:50:27):
~#! rn=Mieze rt=889795257 rg=polizei.beschwerden
~#! tid=889700764
Jungspund Mieze :))
Key

-----------------------------------------------------------------------------



Re^4: Nix Neues. (Lupus, 15. Mar 1998, 11:04:20):
~#! rn=Neb rt=889647196 rg=polizei.beschwerden
~#! tid=889617861
Danke, Neb, dass Du so schoen ueber den Sinn von Magiern, Zweitis und Spielern
referiert hast. So wie ich Dich verstehe sind wertvoll also nur produktive
Mitglieder dieser Gemeinschaft. Als Spieler leistet man aber nichts wirklich
produktives. Es waere also Deiner Ansicht nach fuer Dich der einzige Ausweg,
Dich selbst zu loeschen.

Lupus, Magierzweitie

-----------------------------------------------------------------------------



Re^5: Nix Neues. (Neb, 15. Mar 1998, 14:53:54):
~#! rn=Lupus rt=889956260 rg=polizei.beschwerden
~#! tid=889617861
Hi Lupus, wer immer Du sein magst.
Ich habe lediglich meine Veraergerung ueber Spieler zum Ausdruck gebracht, die
ihren Magier dazu benutzen, ihrem Spieler das Leben zu erleichtern, indem sie
ihn zum Ansehen von Programmfiles benutzen, denn als Zweitie-Spielerhilfe fuer
bequeme Spieler ohne Sinn fuer Fairniss sind MAgier wohl nicht gedacht.
Ich kann leider nicht beurteilen, wessen Magier-Zweitie Du bist, aber dass Du
Dich durch meinen Artikel persoenlich angegriffen fuehlst, spricht vielleicht
fuer sich....
Ich stehe dazu, Spieler spielen um des Spielspasses wegen, wer Magier wird
geht gewisse Verpflichtungen ein, zu denen es hier im Morgengrauen gehoert,
sich nicht absichtlich Vorteile fuer seinen Zweitspieler zu verschaffen, alles
andere waere ja wohl auch unfair, jedenfalls in meinen Augen.
Also, noch einmal ganz langsam fuer die Naiven unter uns:
Ein Spieler spielt des Spielspasses wegen, er muss sich sicher nicht loeschen,
weil er nichts produktives leistet. Ein Magier wird Magier, weile r hier am
Spiel mitarbeiten will, in welcher Form auch immer, und nicht, um seinem
Spielercharakter das Leben zu erleichtern.

Tja, so sehe ich das, Neb.

-----------------------------------------------------------------------------



Re^11: Freu-eund hat Euch lieb! (Jimdigriz, 15. Mar 1998, 20:08:23):
~#! rn=Mieze rt=889818590 rg=polizei.beschwerden
~#! tid=889700764

Ich schaetze die laengste Ignoriereliste
hat wohl Asmodis, vielleicht auch Zardoz...

JdG

-----------------------------------------------------------------------------



Freund Sheriff ? (Zuerileu, 16. Mar 1998, 07:51:40):
Hi,
Aemm Freund ist nun Sheriff ? Was ist mit good old Catweazle passiert ?
Freund, nimms nicht persoehnlich aber ich werde wohl langsam alt =:)

Tschau Alain

ps: *ironie off*
pss: Also ich bin dagegen das Magier die wenig oder nichts programmieren auf
irgend eine Weise bestraft werden. Ich denke man hat sich diesen Titel mal
erarbeitet und hat sich die Ruhe verdient. Man kann auch so Spass haben in dem
man mit Spielern in kontakt ist, ihre Probleme anhoert bezw. ganz neuen
Spielern die Regeln erklaert. 
Zum anderen Thema muss ich sagen: Die Regeln sind bekannt, man weiss das man
nicht beide Charakteren online haben darf. W
er gegen diese Regel verstoesst und erwischt wird, ist selber Schuld. Wenn er
sich ein toplevel Seher zuechten moechte dann kann er ein Testi nehmen. Nun
die erste Regel ist halt, man kann aber man sollte sich nicht erwischen
lassen, das Risiko ist bekannt.

Und jetzt muss ich offline noch etwas weiter programmieren, sonst werde ich
noch rueckgestuft oder sowas =:)


-----------------------------------------------------------------------------



Re^12: Freu-eund hat Euch lieb! (Key, 16. Mar 1998, 08:09:57):
~#! rn=Jimdigriz rt=889988903 rg=polizei.beschwerden
~#! tid=889700764
Asmo ;) 
Zardoz seine ist nicht ganz so lang ;)

Key

-----------------------------------------------------------------------------



Re^5: Nix Neues. (Hobo, 16. Mar 1998, 08:42:23):
~#! rn=Lupus rt=889956260 rg=polizei.beschwerden
~#! tid=889617861
Hy Lupus, 
markier Dich mal als Zweitie mit Name ;)

 Hobo

-----------------------------------------------------------------------------



Re^6: Nix Neues. (Anatol, 16. Mar 1998, 15:48:58):
~#! rn=Hobo rt=890034143 rg=polizei.beschwerden
~#! tid=889617861
Bedauerlicherweise gibt es keine Moeglichkeit, einen Zweitspieler 
namentlich zu markieren, wenn man den Zweitie nicht gleichzeitig
mit dem Erstcharakter einloggen will - und nicht jeder Magier
koennte zum SetProp() greifen (weil er z.B. in seinen Magierzeiten
den Spieler "gequittet" hat und dafuer nur alle paar Wochen mal
den Charakter wechselt)...

Anatol


-----------------------------------------------------------------------------



Re^5: Nix Neues. (Jasper, 25. Mar 1998, 16:21:34):
~#! rn=Padreic rt=889639208 rg=polizei.beschwerden
~#! tid=889617861
Die Pfuschnase schlechthin schreibt so einen artikel und meint das auch noch  
ernst.

Jasper rollt lachend richtung ausgang und geht erstmal eine rauchen.

PS: Also es gibt wohl kaum einen Magier, der nebenbei auch noch hier spielt
    und noch nie, wenn auch unbeabsichtigt, in den Files etwas entdeckt hat,
    was er dann spaeter mit seinem spieler zu dessen gunsten genutzt hat.
    Das nicht jeder, so wie ich, die asuruestungsverzeichnisse nach WC und AC
    durchsucht, um sich die beste ausruestung zusammen zu stellen, ist
    schon klar. Das Problem dabei ist nur, dass sobald einer dieser Spieler,
   die auch zugriff auf die files haben, in den toplisten auftauchen, andere
   seher meinen, dass sie auch einen magier brauchen....
   nicht dass mich das sonderlich stoeren wuerde... meine spieler in den 
   diversen gilden warten eh auf den teamkampf.....
   vielleicht koennte man ja die seher mit zugriff auf die files 'hellseher'
   nennen ;P

-----------------------------------------------------------------------------



Polizeistaat ? (Brechstange, 27. Mar 1998, 01:16:16):
Langsam aber sicher hat Freund wohl seine Kompetenzen ueberschritten.
Willkuerlich gegen irgendweche Magier/Spieler zu verfahren nach gutduenken ist
wohl die 
Methode der Wahl, die schon vor Jahren hier gang und gebe war, und die mit
,so habe ich gehofft Oetti , endlich ausgestorben ist. Naja, das dem wohl
nicht der fall ist habe ich vor ca.5 min mitbekommen. Zugegeben ich hab 

Freund geaergert, aber das beruht wohl auf gegenseitigkeit. Aber das mittel
der Wahl jemanden Mundtot zu machen, dem man(n) verbal nicht gewachsen ist,
ist (wie auch in Ahaus) dummheit und "gewalt". Naja, ich bin gespannt
ob das hier konsequenzen hat, oder ob die sache mal wieder verpufft wie 
manch anderes hier.
Gespannt
Groo

-----------------------------------------------------------------------------



Polizeistaat Teil II (Brechstange, 27. Mar 1998, 01:18:53):
Wie ich so eben erfahren hab, ist wohl die rote Karte von heute bis zum 3 Apil
wohl aufgehoben...
Naja, tut nix zur sache, findich
Groo

-----------------------------------------------------------------------------



Re: Polizeistaat Teil II (Freund, 27. Mar 1998, 01:41:50):
~#! rn=Brechstange rt=890957933 rg=polizei.beschwerden
~#! tid=890957933
Stellungnahme:
Groo hat mich bewusst provoziert. Mit persoenlichen Beleidigungen. Ich lasse
mich auf so etwas verbal nicht ein. Das interpretiere ich sicherlich nicht als
verbale Schwaeche. ;-)

Groo hat die Grenzen amuesanten Provozierens deutlich ueberschritten:
Zitate:
Groo sagt: da kommen die Muensteranrer mal wieder raus
Lug sagt: Die koennen nicht richtig ficken
Groo sagt: das hast du gesagt
Groo sagt: aber ich glaub du hast recht
Lug sagt: Nee, das war Dein Echo.
Groo lacht sich schlapp.
Groo sagt: POPPEN
Groo denkt   . o O (das Freund denkt .kommt auch nur alle jahre mal vor)
Groo sagt: Freund es is besser auf die strasse zu muessen, als nie auf die
Groo sagt: Pizzaservice und sowas is nicht wirklic gut fuer dich

Danach habe ich Groo mal kurz ausgeloggt und fuer eine Minute eine Spielpause
eingetragen. Seine Reaktion mit Brechstange:

Brechstange teilt Dir mit: Nett, das wird dir wohl das genick brechen
Brechstange teilt Dir mit: oder lauf schnell zu jof und erzaehl ihm was du
Brechstange teilt Dir mit: gemacht hast :)

Ich wuerde das jederzeit wieder tun.

Wie kam es zu Groo's Reaktionen?
Ich sprach ihn auf einen seiner Titel an: Groo FICKEN FICKEN FICKEN
Ein Spieler (Level 10-20) und ein Seher hatten sich beschwert, da Groo mitten
in PV rumstand. Ich habe Groo hoeflich darauf aufmerksam gemacht. Seine
Reaktion war nur beleidigend.

Irgendwie hat er das wohl nicht verkraftet. Fuer mich hoert die Freiheit dort
auf, wo die des anderen beginnt.

Freund. 

P.S.: Es waren genug Leute dabei, wie denken denn die?
P.S.2: Wo gibt es hier im Mud denn Ahaus???

-----------------------------------------------------------------------------



Re: Re: Polizeistaat Teil II (Lug, 27. Mar 1998, 01:45:34):
~#! rn=Freund rt=890959310 rg=polizei.beschwerden
~#! tid=890957933

Aehem,


das mit dem Echo von Groo war ein Scherz, sehen Mags denn nicht wer echot?

Zumindest das war Groo nicht.
Zuck
Lug

-----------------------------------------------------------------------------



Re: Re: Polizeistaat Teil II (Larissa, 27. Mar 1998, 12:12:53):
~#! rn=Freund rt=890959310 rg=polizei.beschwerden
~#! tid=890957933
Ha!

ich wehre mich entschieden, dass mal wieder alle Muensteraner
ueber einen Kamm geschoren werden! Alles kalter Kaffe.

Lari, gibt Groo nen Kuss und findet nicht, dass Bhamir, Bertram, Catweazle,
Wargon, Rochus, Drogo, Telka, Toeter, Rumata, Freund, Ryne, Jof und wen ich
jetzt noch vergessen hab jemals ne gemeinsame Meinung hatten *pffffffffff*


--> Schmarrn :)

-----------------------------------------------------------------------------



RE: 169 Polizeistaat II (Groo, 27. Mar 1998, 20:06:13):
Nett Freund, das du deine Reaktionen einfach rausgeschnitten hast,
haette ja sonst auch den anschein erweckt, das der "ich bin voellig
unparteiisch"
"ich reflektiere jeder meiner taten" und irgendwechen andern scheiss, den
du uns ans Ohr kleben willst , einfach ueber den haufen wirfst, wenn es dir
passt. Schoen auch, das du die ganzen sachen auch schoen aus dem zusammenhang
genommen hast, so das man nicht nachvollziehen kann, wie das ganze zustande
gekommen ist. Wie man das mit bruchstuecken darstellen will, ohne einen
genauen zusammenhang zu geben find ich recht witzig, und zeigt eindeutig,
das du wirklich nicht der richtige auf deinem Platz bist.

Zu meiner Reaktion: Jemanden an den Karren zu fahren, wegen seines Titels
find ich recht albern. Aber das ist auch ein verb, das gut auf dich passt.
Seit dem du da bist, ist die Polizeisache wieder recht albern geworden.
Ich hab auch von vielen Leuten gehoert, das du woertlich "kraeftig am Rad
"drehst". Naja, kann ich nur bestaetigen, wenns ums erbsenzaehlen geht, bist
du wirklich nummero uno. 
PS: Wenn du nichtmal weisst was in Ahaus passsiert ist, sag ich nur:
get real 

Allso viel spass noch
Groo

-----------------------------------------------------------------------------



Und nun ? (Groo, 27. Mar 1998, 20:22:27):
Alles fuer die Katz, es wird drueber weggesehen, als wenn nix passiert waere ?
Schoene sache, fast wie damals bei Oetti ,, bis es irgendwann zu weit geht ?
Wir werden sehen
Groo

-----------------------------------------------------------------------------



Re: Und nun ? (Key, 27. Mar 1998, 20:47:08):
~#! rn=Groo rt=891026547 rg=polizei.beschwerden
~#! tid=891026547
Groo ist Dein Stolz verletzt? Oder renkste Dich nochmal ein?
Was willste eigentlich?
Das Freund abgestuft wird auf 15?

Zum einen halte ich Freund fuer fair, zum anderen gehst du einem langsam aber
sicher auf den Keks.
Wenn man nen prob hat dann labert man mit dem mit dem es zu tun hat und tritt
es net in der Zeitung breit!
Was genau passiert ist weiss ich genausowenig wie die meissten anderen hier,
also diskutier das mit Freund aus.

Key

-----------------------------------------------------------------------------



RE Polizeistaat II (Groo, 27. Mar 1998, 21:13:26):
Dann plaediere ich dafuer Freund abzusetzen...
Groo

-----------------------------------------------------------------------------



Re: RE Polizeistaat II (Smurf, 27. Mar 1998, 21:19:27):
~#! rn=Groo rt=891029606 rg=polizei.beschwerden
~#! tid=891029606
Du kannst jemanden absetzen, indem du demonstrierst, dass er
seinen Job nicht korrekt erledigt, oder du kannst ihn rausekeln.

Ich hoffe, Freund (oder sonstwer) erteilt Leuten, die eine dieser
Methoden anwenden, eine saftige Spielpause, BEVOR solche
Sachen hier zum allgemeinen Umgangsstil werden.

Smurf, findet die Diskussion gar nicht lustig

-----------------------------------------------------------------------------



RE: Polizeistaat II  (Groo, 27. Mar 1998, 21:33:50):
Was ist mit Machtmissbrauch ?
Ich werd den Teufel tuhn um hier jemanden rauszuekeln, jeder kann hier als
beispiel dienen,
wenn auch manchmal nur als schlechtes...
Groo

-----------------------------------------------------------------------------



Re: RE Polizeistaat II (Tarina, 28. Mar 1998, 16:57:23):
~#! rn=Groo rt=891029606 rg=polizei.beschwerden
~#! tid=891029606
Ich plaediere dagegen.
Kurz und buendig.
Tarina

-----------------------------------------------------------------------------



Re: RE Polizeistaat II (Teddy, 29. Mar 1998, 19:44:33):
~#! rn=Groo rt=891029606 rg=polizei.beschwerden
~#! tid=891029606
dagegen
Teddy, diesmal richtig geschrieben ;)

-----------------------------------------------------------------------------



Gnome teilt Dir mit: argl :) (Catweazle, 30. Mar 1998, 13:31:00):
Um diese doch eher anspruchsvolle Rubrik sauber zu halten, hab ich
doch mal etwas verlegt. Falls ich in den etwas undurchsichtigen
Bezuegen der Artikel etwas falsch oder zu wenig verlegt habe ... sorry.
Bitte den thread also hier nicht weiterfuehren.

Yours truly,
     Catweazle

PS: Sorry gnome :)

-----------------------------------------------------------------------------



Re: Re: Polizeistaat Teil II (Jasper,  2. Apr 1998, 23:27:58):
~#! rn=Freund rt=890959310 rg=polizei.beschwerden
~#! tid=890957933
oha, nu darf schon nicht mehr seinen titel setzen wie man will.. tssss

jasper, der titten^H^H^Hellose

-----------------------------------------------------------------------------



Skriptregeln usw. (Froghunter,  7. Apr 1998, 05:56:15):
Hallo, ich bin seit Wochen (oder sinds schon Monate) das erste Mal
wieder da und bin positiv ueberrascht, was die neuen Regeln fuer
Skripte und KLs angeht. Hoechst vernuenftig. Nun muss ich nur noch
mal schaun, was sich sonst noch so getan hat. Ich werde allerdings nun
wohl wieder regelmaessig durchs MG streifen. (Man kann ja nicht nur
Quake II daddeln ;)
So, eh ich noch mehr themafremdes in diese Rubrik schreibe, hoer ich
lieber auf und schau nochmal, was die Sache mit den Seherangriffen soll.
Hab mich wohl nur verguckt ;)

ciao, Frogh*

-----------------------------------------------------------------------------



Re: Skriptregeln usw. (Yendi,  7. Apr 1998, 10:28:51):
~#! rn=Froghunter rt=891921375 rg=polizei.beschwerden
~#! tid=891921375
Grimmborn...


-----------------------------------------------------------------------------



Re: Re: Skriptregeln usw. (Grimmborn,  9. Apr 1998, 18:00:15):
~#! rn=Yendi rt=891937731 rg=polizei.beschwerden
~#! tid=891921375
Nix ich, erst mal muessen die EMs mir die Loeschrechte geben. Also, Jungs,
nicht einschlafen!

Grimmborn der Verleger (verhindert)

-----------------------------------------------------------------------------



Loeschen ! (Bluemel, 17. Apr 1998, 14:29:30):
Ich bin auch fuer die Absetzung von Freund als Sheriff !
Der ist einfach zu lasch !!!!!!!
Freund sollte zumindest sein Soll von 3 Loeschungen und 10 Abstufungen die
Woche einhalten.
Mal ernsthaft: Wer die hier gueltigen Regeln verletzen will, der schafft das
auch ohne erwischt zu werden.
Was die Leute letzendlich davon haben, ist eine andere Frage.
Wer gegen die Regeln verstoesst UND dabei noch so doof ist sich erwischen zu
lassen, der sollte auch die Konsequenzen tragen.
Wenn ich hier mitbekommen, dass Leute mit ihren Mags ihren Zweitspieler
hochsetzen und beim Erwischen nur der Mag zum Seher wird und der Zweitspieler
abgestuft wird, so ist das als Strafe lachhaft !
Wer stolz ist in der Topliste zu stehen, der ist einfach nur naiv!

Bluemel ( naiv und doof - zum Glueck nur manchmal ) 

-----------------------------------------------------------------------------



Re: Loeschen ! (Bottom, 17. Apr 1998, 14:43:04):
~#! rn=Bluemel rt=892816170 rg=polizei.beschwerden
~#! tid=892816170

Was die Leute davon haben? Das liegt doch wohl auf der Hand!
Die Leute haben i.a. weniger Tiparbeit, lesen weniger endlose 
Texte und haben einfach mehr(!) Spielspass!
Wie die meisten anderen auch goenne ich eben diesen erhoeten
Spielspass nicht - keiner soll mehr Spass haben als ich!
Darum plaediere ich in Uebereinstimmung mit Bluemel fuer 
ein verschaerftes Durchgreifen des Sheriffs! Einen freundlichen 
Sheriff hatten wir lange genug - Schluss mit lustig!

Bottom - gleicher Spass fuer alle!


-----------------------------------------------------------------------------



groo (Zorro, 26. Apr 1998, 02:41:08):
[Allgemein:Groo] beschwer dich doch  

Zorro beschwert sich.

-----------------------------------------------------------------------------



Re:Groo (Groo, 26. Apr 1998, 02:48:07):
Nur weil ich Zorros Rasse auf Zwerg gesetzt habe (so wie in RL )
*grins*
Groo

-----------------------------------------------------------------------------



Dutchboy (Astar,  8. Mai 1998, 16:49:43):
HiHo!

Koennte mal jemand den Typen loeschen+banischen, der schreit eh nur
Hitlerparolen rum.

Astar

-----------------------------------------------------------------------------



Ist playerkilling jetzt hier erwuenscht? (Caradhras, 19. Mai 1998, 14:07:15):
                  Hallo

Gerade wurde ich idlend von einem Level-6 Player getoetet. Er hat
mindestens 30 mal auf mich draufgehaut. Ich weiss noch, dass so
etwas frueher von Magiern unterbunden wurde, vier Erzmagier sind
hier und zwei davon waren auf alle Faelle unidle.

Scheinbar interessiert das hier keinen Magier mehr, wenn Player
von Playern gekillt werden. Schade, MorgenGrauen.

-----------------------------------------------------------------------------



Re: Ist playerkilling jetzt hier erwuenscht? (Grimmborn, 19. Mai 1998, 22:04:02):
~#! rn=Caradhras rt=895586835 rg=polizei.beschwerden
~#! tid=895586835
Ich unterbinde nicht. Ich richte hoechstens den Ueberlebenden hin.

GdA

-----------------------------------------------------------------------------



Re: Re: Ist playerkilling jetzt hier erwuenscht? (Lug, 19. Mai 1998, 22:42:25):
~#! rn=Grimmborn rt=895615442 rg=polizei.beschwerden
~#! tid=895586835
Nu Grimmi,

dann machs auch, wer idelnde Bergchen mordet, gehoert IMHO eh geloescht!
WIe hiess der Kerl denn?

Krampen in den Muell
Lug

-----------------------------------------------------------------------------



Re^3: Ist playerkilling jetzt hier erwuenscht? (Grimmborn, 20. Mai 1998, 07:03:48):
~#! rn=Lug rt=895617745 rg=polizei.beschwerden
~#! tid=895586835
Dass ich nicht da war siehst Du daran, dass der Angreifer offensichtlich leben
gelassen wurde...

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^4: Ist playerkilling jetzt hier erwuenscht? (Caradhras, 20. Mai 1998, 15:30:15):
~#! rn=Grimmborn rt=895647828 rg=polizei.beschwerden
~#! tid=895586835
Alberto hiess die Angreiferin.

-----------------------------------------------------------------------------



Re^7: Ist playerkilling jetzt hier erwuenscht? (Pra, 20. Mai 1998, 16:15:10):
~#! rn=Trekan rt=895679741 rg=polizei.beschwerden
~#! tid=895586835
was ich fuer viel bemerkenswerter halte als einen popeligen Playerkill,
ist die Tatsache, dass sich Caradhras (level 40) von einer popeligen
Level-6-Spielerin toeten laesst :-)

Pra. Grinst ein bisschen in seinen Bart.

-----------------------------------------------------------------------------



Re^3: Ist playerkilling jetzt hier erwuenscht? (Schoko, 20. Mai 1998, 18:58:33):
~#! rn=Lug rt=895690484 rg=polizei.beschwerden
~#! tid=895586835
Hmmm also wenner nich gerade mit Vorsicht 0 geidelt hat, dann is das trotzdem
noch ziemlich merkwuerdig fuer mich. Abgesehen davon, dass der Typ doch wohl
mindestens einmal tanken gewesen sein muss bei Level 6, selbst wenn Cara nur
mit blossen Haenden zugehauen hat....

Ein verwunderter Schoko.

-----------------------------------------------------------------------------



Re^4: Ist playerkilling jetzt hier erwuenscht? (Silvana, 20. Mai 1998, 21:07:40):
~#! rn=Schoko rt=895690713 rg=polizei.beschwerden
~#! tid=895586835
Och... Ich erinnere mich noch recht gut daran, dass ein hochnaesiger
Seher meinte, den Level-1 Spieler 'Nichts' in die Arena zitieren zu
muessen und sich anschliessend beschwerte, dass er schneller platt
war, als er gucken konnte... Also, Wunder (?) gibt es immer wieder.

  Silvana

-----------------------------------------------------------------------------



Re^5: Ist playerkilling jetzt hier erwuenscht? (Key, 21. Mai 1998, 12:33:28):
~#! rn=Silvana rt=895698460 rg=polizei.beschwerden
~#! tid=895586835
Aeh Also ... .)
War ich damals schon Seher? :)

*gruebel und grins Richtung dem arroganten Anatol :)*

Key

-----------------------------------------------------------------------------



Re^6: Ist playerkilling jetzt hier erwuenscht? (Silvana, 21. Mai 1998, 12:45:56):
~#! rn=Key rt=895754008 rg=polizei.beschwerden
~#! tid=895586835
Och ich glaube nicht, dass Du der einzige bist, der
wegen Nichts gestorben ist - obwohl das bei Dir natuerlich
irgendwie besonders naheliegend ist...

  Silvana - schmunzelnd

-----------------------------------------------------------------------------



Hier spricht Zardoz :) (Gruuh,  2. Jun 1998, 10:23:19):
Also, dass ich die Spielpause bekommen hab, ist ja ganz richtig so, nach den
Regeln des MGs. Das ich das zu Umgehen versuche, ist eher als Sport zu
betrachten... Das Highlander Mitteilungen von mir gleich unter erzmagier
postet ist allerdings etwas seltsam. Die anschliessende Diskussion erst recht.
Wenn ich was zu Highlander sage, um das alte Arschloch (sorry ich konnte ihn
halt noch nie leiden) zu aergern, dann heisst das nicht, dass das
allgemeingueltig ist. Also braucht ihr gar nicht gross zu diskutieren, ich
werde meine Unlust am MG nicht an den Spielern auslassen (hoechstens an
Magierzweities).

Ciao Zardoz

-----------------------------------------------------------------------------



Re: Hier spricht Zardoz :) (Roadrunner,  2. Jun 1998, 14:21:31):
~#! rn=Gruuh rt=896782999 rg=polizei.beschwerden
~#! tid=896782999
heisst das, dass die angekuendigten loecher doch nicht so gross werden? das
ginge naemlich auf die spieler) Ich wuerde meine zeitaufwendig gepflegten
gildenfaehigkeiten doch arg vermissen. 
hoffend

Roadrunner

-----------------------------------------------------------------------------



Re: Re: Hier spricht Zardoz :) (Key,  2. Jun 1998, 18:25:42):
~#! rn=Roadrunner rt=896797291 rg=polizei.beschwerden
~#! tid=896782999
Keine Sorge Roadie ... es passiert nix .... die Gilden bleiben und die Burg
auch ;)

Key

-----------------------------------------------------------------------------



Re: ZTs, nicht immer eine angenehme Ueberraschung (Spirill, 12. Jun 1998, 23:00:13):
~#! rn=Dido rt=882579527 rg=polizei.beschwerden
~#! tid=882579527
stimmt, ist schon ziemlich eklig, manch finden es vermutlich witzig....
Humor ist wenn man trotzdem lacht!
q


-----------------------------------------------------------------------------



Re: Re: ZTs, nicht immer eine angenehme Ueberraschung (Acrimon, 20. Jun 1998, 16:34:08):
~#! rn=Spirill rt=897692413 rg=polizei.beschwerden
~#! tid=882579527
Dann ist es nicht Humor, sondern verdorbener Geschmack.

Acrimon, der Rote Ritter

PS: Humor ist, wenn man ueber wirklich witzige Sachen auch dann lacht, wenn es
einen selbst betrifft.

-----------------------------------------------------------------------------



Schnauze voll! (Hangover, 28. Jun 1998, 19:15:10):
Moin!

Das Mass ist voll.
Nachdem ich monatelang mich damit begnuegt zu habe, ueber die 'dollen
Sachen' eines RM Vland milde zu laecheln, aber jetzt ist Schluss.
Das Logfile am Ende dieser Mail gibt Aufschluss darueber, dass 
ich durch eines von Morgoths Portalen ins ParaVland teleportiert
wurde, ohne selbst in der Parallelwelt gewesen zu sein. Im harmlosesten
Fall spricht man von 'fahrlaessiger Toetung', ich gehe aber so weit
und sage, dass dies ein PK war. Von einem Magier kann ich erwarten,
dass er seinen Kram vor Anschluss nochmal anschaut oder bei Experimenten 
mit Parallelweltflags mit einem Testspieler das Gebiet in Augenschein
nimmt.

Dazu kommen noch ein paar mehr Sachen, die mir aus Spielersicht,
aus Magiersicht und auch aus Sicht des Menschen hinter dem Rechner
die Laune verderben.

- NPCs mit voellig unrealistischen Attributen und Faehigkeiten in 
  Gilden, die auf von Spielern erreichbare Werte ausgelegt sind.
  Ich erwaehne hier nur mal Karateorks mit Staerken um 50 und 
  aehnliche Geschichten.

- Anschliessen von ueberzogen starken Gegenstaenden ohne Ruecksprache
  mit den entsprechenden Balancemagiern (ich weiss, das gehoert nicht
  hierher, aber um sowas festzustellen muss ich kein Magier sein).

- Willkuerliches Snoopen ohne Ruecksprache mit den Betroffenen. 
  Ein Snoop ab und an mag ja in Ordnung sein, aber: Snoopen aus
  reiner Gewohnheit hat hier meiner Meinung nach NIX zu suchen. Das
  MG ist kein Ueberwachungsstaat.


So, jetzt das versprochene Logfile im Anhang.

-Hangover
(stinksauer)

P.S.: Herzlichen Dank an Silvana, die Verstaendnis gezeigt und mich
da rausgeholt hat.



Im Goblinlager.
Es gibt einen sichtbaren Ausgang: norden.
Ein Drache.
Matrix: Ein Drache ist absolut fit.
  Der Drache trifft Dich hart.
Du hast jetzt 189 Lebenspunkte und 198 Konzentrationspunkte.
  Du greifst den Drachen mit dem Vollstrecker an.
  Du kratzt den Drachen.
  Der Drache spuckt Feuer auf Dich.
Dein Ring zieht die Flammen auf sich und bewahrt Dich so vor Schaden.
  Du greifst den Drachen mit dem Vollstrecker an.
  Du triffst den Drachen sehr hart.
  Der Drache trifft Dich.
Du hast jetzt 185 Lebenspunkte und 198 Konzentrationspunkte.
  Der Drache spuckt Feuer auf Dich.
Dein Ring zieht die Flammen auf sich und bewahrt Dich so vor Schaden.
Ein Drache ist jetzt hinter Dir her.
Im Goblinlager.
Es gibt zwei sichtbare Ausgaenge: sueden und suedosten.
Ein Drache.
Ein Drache.
Im Goblinlager.
Es gibt drei sichtbare Ausgaenge: norden, nordwesten und nordosten.
Rentner Denti der Wuetende [Mensch, Student-Pilot].
Ein Lederschild.
Ein schartiger Saebel.
Ein Lederhelm.
Eine Metallpanzer.
Die verfaulten Einzelteile eines Hobgoblins.
Im Goblinlager.
Es gibt drei sichtbare Ausgaenge: osten, sueden und norden.
Ein Kampfschwert. (2)
Ein Lederhelm. (2)
Ein leichtes Kettenhemd. (2)
Hinter dem Buschwerk.
Es gibt zwei sichtbare Ausgaenge: sueden und norden.
Ein Kampfschwert.
Ein Lederhelm.
Ein leichtes Kettenhemd.
Ein kleiner Trampelpfad.
Es gibt zwei sichtbare Ausgaenge: osten und suedwesten.
Ein Goblin.
Ein Goblin.
Ein Goblin.
  Der Goblin kratzt Dich.
Du hast jetzt 182 Lebenspunkte und 198 Konzentrationspunkte.
Matrix: Ein Goblin ist absolut fit.
  Der Goblin trifft Dich.
Du hast jetzt 177 Lebenspunkte und 198 Konzentrationspunkte.
  Der Goblin verfehlt Dich.
Du hast jetzt 178 Lebenspunkte und 199 Konzentrationspunkte.
  Du greifst den Goblin mit dem Vollstrecker an.
  Du triffst den Goblin hart.
  Du greifst den Goblin mit dem Vollstrecker an.
  Du triffst den Goblin sehr hart.
  Der Goblin kratzt Dich.
Du hast jetzt 175 Lebenspunkte und 199 Konzentrationspunkte.
  Der Goblin verfehlt Dich.
  Der Goblin verfehlt Dich.
Wie bitte?
> Ein Goblin ist jetzt hinter Dir her.
Ein Goblin ist jetzt hinter Dir her.
Ein Goblin ist jetzt hinter Dir her.
Ein kleiner Trampelpfad.
Es gibt drei sichtbare Ausgaenge: osten, westen und suedwesten.
Auf einem Balken.
Es gibt zwei sichtbare Ausgaenge: osten und westen.
Eine kleine Seitengasse.
Es gibt zwei sichtbare Ausgaenge: westen und nordosten.
Strandweg.
Es gibt vier sichtbare Ausgaenge: osten, westen, norden und suedwesten.
Strandweg.
Es gibt drei sichtbare Ausgaenge: osten, sueden und norden.
Port Vainer Marktplatz.
Es gibt vier sichtbare Ausgaenge: osten, sueden, westen und norden.
Ein Bettler.
Ein fast fertiges Kriegsdenkmal.
Port Vainer Landstrasse.
Es gibt vier sichtbare Ausgaenge: osten, sueden, westen und norden.
Der Sandtiger sagt: Ich soll Dir von Succamore ausrichten: Mein allerliebster
Der Sandtiger sagt: Schmusekater! :-)
Am Port Vainer Stadttor.
Es gibt drei sichtbare Ausgaenge: osten, sueden und westen.
Ein Sandtiger.
Ein Pentagramm.
Karl Freitag.
Muaddib der Hammertraeger.
Lilaf findet Orks mit Staerke 50 laecherlich.
Tarina.
Leibniz der Bierschuettler.
Ein magisches Portal.
- Hangover ist wieder da. --------------------------------------------
Rasse ............ Mensch             Charakter ........ heilig
Geschlecht ....... maennlich          Groesse .......... 170 cm
Stufe ............ 72                 Gewicht .......... 71 kg
Gilde ............ Bierschuettler     Gildenstufe ...... 22
Erfahrung ........ 148010089 Punkte   Abenteuer ........ 2613 (2381)

Geschicklichkeit . 20 (+10)           Ausdauer ......... 20 (+1)
Kraft ............ 20 (+2)            Intelligenz ...... 20 (+1)

Gesundheit ....... 175 (210)          Gift ............. gesund
Konzentration .... 199 (210)          Vorsicht ......... 120
Tode ............. kein Malus         Fluchtrichtung ... "osten"
Spiel verlassen .. nicht moeglich
Verglichen mit Deinen Mitspielern, kennst Du Dich im MorgenGrauen
ausserordentlich gut aus. Absolut gesehen koenntest Du eigentlich
einen Reisefuehrer herausbringen.
Alter:  105 Tage 14 Stunden 4 Minuten 12 Sekunden.
----------------------------------------------------------------------
Du hast jetzt 176 Lebenspunkte und 200 Konzentrationspunkte.
  0. nicht teleportieren                  1. Tamibar, beim Daribi-Dorf (10
MP)
  2. Drachenzinnen                      [ 3. Port Vainer Stadttor]
  4. An einem Bach im Gebirge             5. Polargebiet
  6. Tundra                               7. Die Feenstrasse
  8. Waldweg                              9. Eine Ruinenstadt
 10. Vorplatz vor der Arena              11. Klippenpfad auf Aurora (10 MP)
 12. Svolvaer (10 MP)                    13. Im Bergdorf
 14. Vorplatz der Traukapelle            15. Lash
 16. Dschungel                           17. Ueber den Wolken
 18. Am Fluss Tain Wen Tai               19. Ritterdenkmal bei Orkhausen
 20. Rodelbahn                           21. Hobbitdorf
 22. Ein tiefer Wald (10 MP)             23. Ueber dem Schacht
 24. Am Ende der Welt (10 MP)            25. Am Friedhof
 26. Unter Shaky Island (10 MP)          27. In der Naehe der Festung
 28. Tortugas Leuchtturm (10 MP)         29. Katzmandu
 31. Auf einem kleinen Bergpfad          32. Portalraum
 30. Bei einem schwarzen Felsen (10 MP)
Du verlierst fuer einen Moment die Orientierung.
Waldweg.
Es gibt zwei sichtbare Ausgaenge: nordwesten und suedosten.
Ein magisches Portal.
> Dach von Miril's Turm.
Es gibt viele sichtbare Ausgaenge: unten, laden, gilde, portal, drachenhort,
grenzheim, nablafurt, kirche und uni.
Du hast jetzt 177 Lebenspunkte und 201 Konzentrationspunkte.
Dach von Miril's Turm.
Es gibt viele sichtbare Ausgaenge: unten, laden, gilde, portal, drachenhort,
grenzheim, nablafurt, kirche und uni.
Anscheinend ist gerade irgend etwas besonderes geschehen...
Du weisst nur nicht was...
Miril's Studierzimmer.
Es gibt zwei sichtbare Ausgaenge: oben und unten.
[Moerder:Geist eines Drachen] Warum hat mir niemand gegen Denti geholfen?
Untergeschoss von Miril's Turm.
Es gibt zwei sichtbare Ausgaenge: osten und oben.
> Berggipfel.
Es gibt zwei sichtbare Ausgaenge: unten und westen.
> Gebirgspfad.
Es gibt drei sichtbare Ausgaenge: oben, unten und suedwesten.
Ein Stollen fuehrt in den Berg hinein.
Ein Pfad im Gebirge.
Es gibt zwei sichtbare Ausgaenge: oben und unten.
Gebirgspfad.
Es gibt zwei sichtbare Ausgaenge: osten und oben.
Eine hohe Hecke.
Kreuzung.
Es gibt vier sichtbare Ausgaenge: osten, sueden, westen und norden.
Hauptstrasse.
Es gibt zwei sichtbare Ausgaenge: norden und suedosten.
Hauptstrasse.
Es gibt zwei sichtbare Ausgaenge: nordwesten und suedosten.
Marktplatz von Drachenhort.
Es gibt sechs sichtbare Ausgaenge: osten, sueden, westen, norden, suedwesten
und nordwesten.
> Drachenhorter Landstrasse.
Es gibt vier sichtbare Ausgaenge: sueden, westen, norden und suedosten.
> Drachenhorter Landstrasse.
Es gibt zwei sichtbare Ausgaenge: nordwesten und suedosten.
Drachenhorter Landstrasse.
Es gibt zwei sichtbare Ausgaenge: osten und nordwesten.
Drachenhorter Landstrasse.
Es gibt zwei sichtbare Ausgaenge: osten und westen.
Eine Ente schwimmt im Wasser.
Drachenhorter Landstrasse.
Es gibt zwei sichtbare Ausgaenge: osten und westen.
Drachenhorter Landstrasse.
Es gibt zwei sichtbare Ausgaenge: westen und nordosten.
Drachenhorter Landstrasse.
Es gibt zwei sichtbare Ausgaenge: suedwesten und nordosten.
> Drachenhorter Landstrasse.
Es gibt drei sichtbare Ausgaenge: osten, norden und suedwesten.
Waldweg im Grimmswald.
Es gibt zwei sichtbare Ausgaenge: sueden und nordosten.
Waldweg im Grimmswald.
Es gibt drei sichtbare Ausgaenge: westen, suedwesten und nordwesten.
Waldweg im Grimmswald.
Es gibt zwei sichtbare Ausgaenge: norden und suedosten.
Ein angefressenes Rhombendodekaeder.
Waldweg im Grimmswald.
Es gibt zwei sichtbare Ausgaenge: sueden und norden.
Eine Waldameise.
Eine Waldameise.
Lichtung im Grimmswald.
Es gibt vier sichtbare Ausgaenge: osten, sueden, westen und norden.
Du bist nun im "Ultrakurz"modus.
Du hast jetzt 178 Lebenspunkte und 202 Konzentrationspunkte.
> > > > >   0. nicht teleportieren                  1. Tamibar, beim 
Daribi-Dorf (10 MP)
  2. Drachenzinnen                        3. Port Vainer Stadttor
  4. An einem Bach im Gebirge             5. Polargebiet
  6. Tundra                               7. Die Feenstrasse
  8. Waldweg                              9. Eine Ruinenstadt
 10. Vorplatz vor der Arena              11. Klippenpfad auf Aurora (10 MP)
 12. Svolvaer (10 MP)                    13. Im Bergdorf
 14. Vorplatz der Traukapelle            15. Lash
 16. Dschungel                           17. Ueber den Wolken
 18. Am Fluss Tain Wen Tai               19. Ritterdenkmal bei Orkhausen
 20. Rodelbahn                          [21. Hobbitdorf]
 22. Ein tiefer Wald (10 MP)             23. Ueber dem Schacht
 24. Am Ende der Welt (10 MP)            25. Am Friedhof
 26. Unter Shaky Island (10 MP)          27. In der Naehe der Festung
 28. Tortugas Leuchtturm (10 MP)         29. Katzmandu
 31. Auf einem kleinen Bergpfad          32. Portalraum
 30. Bei einem schwarzen Felsen (10 MP)
Du verlierst fuer einen Moment die Orientierung.
Du kletterst ueber die Mauer.
> > > > > Du bist nun im "Kurz"modus.
Weg durch den Friedhof.
Es gibt vier sichtbare Ausgaenge: osten, sueden, westen und norden.
Mistbratze bratzt herein.

Mistbratze bratzt nach Norden.
Weg durch den Friedhof.
Es gibt vier sichtbare Ausgaenge: osten, sueden, westen und norden.
Weg durch den Friedhof.
Es gibt vier sichtbare Ausgaenge: osten, sueden, westen und norden.
Auf einem Grab.
Es gibt einen sichtbaren Ausgang: sueden.
Du kletterst ueber die Mauer.
Hinter der Friedhofsmauer.
Es gibt keine sichtbaren Ausgaenge.
Ein magisches Portal.
  0. nicht teleportieren                  1. Tamibar, beim Daribi-Dorf (10
MP)
  2. Drachenzinnen                        3. Port Vainer Stadttor
  4. An einem Bach im Gebirge             5. Polargebiet
  6. Tundra                               7. Die Feenstrasse
  8. Waldweg                              9. Eine Ruinenstadt
 10. Vorplatz vor der Arena              11. Klippenpfad auf Aurora (10 MP)
 12. Svolvaer (10 MP)                    13. Im Bergdorf
 14. Vorplatz der Traukapelle            15. Lash
 16. Dschungel                           17. Ueber den Wolken
 18. Am Fluss Tain Wen Tai               19. Ritterdenkmal bei Orkhausen
 20. Rodelbahn                           21. Hobbitdorf
 22. Ein tiefer Wald (10 MP)             23. Ueber dem Schacht
 24. Am Ende der Welt (10 MP)           [25. Am Friedhof]
 26. Unter Shaky Island (10 MP)          27. In der Naehe der Festung
 28. Tortugas Leuchtturm (10 MP)         29. Katzmandu
 31. Auf einem kleinen Bergpfad          32. Portalraum
 30. Bei einem schwarzen Felsen (10 MP)
Du verlierst fuer einen Moment die Orientierung.
Der Sandtiger erkennt Dich wieder und nickt Dir hoeflich zu.
Am Port Vainer Stadttor.
Es gibt drei sichtbare Ausgaenge: osten, sueden und westen.
Ein Sandtiger.
Ein Pentagramm.
Karl Freitag.
Muaddib der Hammertraeger.
Lilaf findet Orks mit Staerke 50 laecherlich.
Tarina.
Leibniz der Bierschuettler.
Ein magisches Portal.
  0. nicht teleportieren                  1. Tamibar, beim Daribi-Dorf (10
MP)
  2. Drachenzinnen                      [ 3. Port Vainer Stadttor]
  4. An einem Bach im Gebirge             5. Polargebiet
  6. Tundra                               7. Die Feenstrasse
  8. Waldweg                              9. Eine Ruinenstadt
 10. Vorplatz vor der Arena              11. Klippenpfad auf Aurora (10 MP)
 12. Svolvaer (10 MP)                    13. Im Bergdorf
 14. Vorplatz der Traukapelle            15. Lash
 16. Dschungel                           17. Ueber den Wolken
 18. Am Fluss Tain Wen Tai               19. Ritterdenkmal bei Orkhausen
 20. Rodelbahn                           21. Hobbitdorf
 22. Ein tiefer Wald (10 MP)             23. Ueber dem Schacht
 24. Am Ende der Welt (10 MP)            25. Am Friedhof
 26. Unter Shaky Island (10 MP)          27. In der Naehe der Festung
 28. Tortugas Leuchtturm (10 MP)         29. Katzmandu
 31. Auf einem kleinen Bergpfad          32. Portalraum
 30. Bei einem schwarzen Felsen (10 MP)
Du verlierst fuer einen Moment die Orientierung.
In einem Portalraum.
Es gibt viele sichtbare Ausgaenge: osten, unten, sueden, westen, norden,
suedwesten, nordwesten, nordosten und suedosten.
Ein magisches Portal.
Du hast jetzt 179 Lebenspunkte und 203 Konzentrationspunkte.
In einem Portalraum.
Es gibt fuenf sichtbare Ausgaenge: osten, sueden, norden, nordosten und
suedosten.
Auch hier ist wieder ein blaues, inaktives Portal. Da haben die Erschaffer der
Portale wohl nicht mehr gewusst wohin sie sich gerne teleportieren lassen
wuerden. Du hast natuerlich tausend Ideen und Wuensche, wo Du jetzt gerne
waerst, aber dieses Portal wird sie Dir leider nicht erfuellen.
Es gibt fuenf sichtbare Ausgaenge: osten, sueden, norden, nordosten und
suedosten.
Du hast jetzt 182 Lebenspunkte und 206 Konzentrationspunkte.
[Beileid:Hangover] sowas
In einem Portalraum.
Es gibt drei sichtbare Ausgaenge: westen, norden und nordwesten.
Auch hier ist wieder ein blaues, inaktives Portal. Da haben die Erschaffer der
Portale wohl nicht mehr gewusst wohin sie sich gerne teleportieren lassen
wuerden. Du hast natuerlich tausend Ideen und Wuensche, wo Du jetzt gerne
waerst, aber dieses Portal wird sie Dir leider nicht erfuellen.
Es gibt drei sichtbare Ausgaenge: westen, norden und nordwesten.
[Beileid:Froghunter] Scheisse :(
In einem Portalraum.
Es gibt viele sichtbare Ausgaenge: osten, unten, sueden, westen, norden,
suedwesten, nordwesten, nordosten und suedosten.
Ein magisches Portal.
In einem Portalraum.
Es gibt drei sichtbare Ausgaenge: osten, sueden und suedosten.
Du hast jetzt 183 Lebenspunkte und 207 Konzentrationspunkte.
Das Portal saugt Dich auf.
Du wirbelst durch einen Strudel bunter Farben. Ploetzlich kommst Du an eine
Art Kreuzung. Du hast nun die Wahl, wohin Du willst.
1. Abenteurergilde
2. Chaosgilde
3. Karate-Dojo
4. Zauberergilde
5. Klerikergilde
6. Bierschuettlergilde
7. Struv der Kaempfer
8. Katzenkrieger
9. Elementargilde

In einer Daemonenkirche.
Es gibt keine sichtbaren Ausgaenge.
Ein daemonischer Ork.
Eines daemonischen Orks damonischer Hammer strahlt ein rotes Licht ab.
  Der daemonische Ork greift Dich mit dem daemonischen Hammer an.
  Der daemonische Ork trifft Dich sehr hart.
Du hast jetzt 166 Lebenspunkte und 207 Konzentrationspunkte.
[Beileid:Mtv] beileid

  Du greifst den daemonischen Ork mit dem Vollstrecker an.
  Du kitzelst den daemonischen Ork am Bauch.
Der Ork schiesst einen schwarzen Pfeil auf Dich ab.
  Der daemonische Ork trifft Dich sehr hart.
Du hast jetzt 150 Lebenspunkte und 207 Konzentrationspunkte.
  Du greifst den daemonischen Ork mit dem Vollstrecker an.
  Du kratzt den daemonischen Ork.
Eines daemonischen Orks damonischer Hammer scheint fast zu schmelzen, so 
tiefrot wie er strahlt.
Matrix: Ein daemonischer Ork ist absolut fit.
  Der daemonische Ork zerschmettert Dich in kleine Stueckchen.
Du hast jetzt 112 Lebenspunkte und 207 Konzentrationspunkte.
Der Ork huellt Dich in eine schwarze Wolke.
Matrix: Ein daemonischer Ork ist absolut fit.
  Der daemonische Ork schlaegt Dich mit dem Krachen brechender Knochen.
Du hast jetzt 85 Lebenspunkte und 207 Konzentrationspunkte.
Die Angst ist staerker als Du ... Du willst nur noch weg hier.
In diese Richtung kannst Du nicht gehen.
Dein Fluchtversuch ist gescheitert.
Du oeffnest ein Portal.
Du hast jetzt 86 Lebenspunkte und 208 Konzentrationspunkte.
Die Angst ist staerker als Du ... Du willst nur noch weg hier.
In diese Richtung kannst Du nicht gehen.
Ein daemonischer Ork ist jetzt hinter Dir her.
Der Ork sagt: Du hast gute Sachen, her damit.
Orkhausener Marktplatz.
Es gibt fuenf sichtbare Ausgaenge: sueden, westen, norden, suedwesten und
nordwesten.
Ein Ork.
Ein Ork holt tief Luft.
ein Ork scheint die Ruhe selbst zu sein.
  Der Ork greift Dich mit kraeftigen Faeusten an.
  Der Ork schlaegt Dich mit dem Krachen brechender Knochen.
Du hast jetzt 61 Lebenspunkte und 208 Konzentrationspunkte.
Die Angst ist staerker als Du ... Du willst nur noch weg hier.
In diese Richtung kannst Du nicht gehen.
Ein Ork ist jetzt hinter Dir her.
Orkhausener Marktplatz.
Es gibt drei sichtbare Ausgaenge: sueden, westen und suedwesten.
Wie bitte?
[ZT:Prog] weiss jemand den: Wo Baertige die Waffen schmiedenhaben sie auch
[ZT:Prog] Werkzeug liegen.Fuer gar manchen tapfren Kriegerfindet sich die
[ZT:Prog] Kraft hier wieder.
Dieser Befehl beendet Deine Verbindung mit Morgengrauen. Du behaeltst Deine
Sachen, aber Vorsicht: Wenn MorgenGrauen abstuerzt, waehrend Du weg bist,
verlierst Du sie doch, genauso, als wenn Du Deine Verbindung mit "ende"
beendet haettest (allerdings bekommst Du dann eine finanzielle
Entschaedigung).
ABER: BENUTZUNG AUF EIGENE GEFAHR !!!
Closing down.
% Connection to Hangover closed by foreign host.
---- No world ----


-----------------------------------------------------------------------------



Re: Schnauze voll! (Morgoth, 28. Jun 1998, 19:34:04):
~#! rn=Hangover rt=899061310 rg=polizei.beschwerden
~#! tid=899061310
Du hast doch jetzt die Bierschuettlergilde, oder?
Gibt es da nicht einen Spruch mit dem Namen 'beruhige'?
Hast Du den schon gelernt?

Also das, was Dir da passiert ist, war Absicht. Es standen, wie Ringor auf
-Seher schon sagte, mehrere Artikel diesbezueglich in der MPA.
Aber fangen wir mal vorn an:
Die Orks mit Kraft 50 stehen ind der Parawelt. Da gibt es KEINE Limitierung,
also sind sie legal. Komsich ist nur, dass Du bis vor Kurzem da noch mit
Deinem Wurstzweite Lilaf durchgerannt bist und Wurfsterne gesammelt hast.
Ausserdem, woher weisst Du, dass sie Kraft 50 haben? Hast Du etwa mit Deinem
Magierzweitie nachgesehen? Ist das nicht Spielerhilfe?? Aber das ueberlasse
ich mal dem Sheriff.
Woher willst DU wissen, welche Objekte ich mit Balance-Magiern abgesprochen
habe und welche nicht?
Was soll die Anspielung mit dem Snoopen? Das haette ich doch gerne mal genauer
erlaeutert.

Morgoth

-----------------------------------------------------------------------------



Re: Schnauze voll! (Mindblade, 28. Jun 1998, 20:30:37):
~#! rn=Hangover rt=899061310 rg=polizei.beschwerden
~#! tid=899061310

Irgendwie verstehe ich Deinen Artikel nicht... . Das mit dem Portal ist
Absicht und wenn man nicht Bloedsinn baut, landet man auch nicht in der
Parawelt. Um ungewollt da zu landen, kenn ich bei dem Portal nur 2 Methoden,
krumme Finger (deswegen bin ich auch schon bei den Paragobdrachen gelandet)
oder ein Umstand, der sogar in der MPA stand. Und wenns das letzere war,
kannste Dich bei mir beschweren, dass war mein Vorschlag, damit man keine
"Bugs" ausnutzt, um an das Portal zu kommen. Dass die Paraorks _etwas_
staerker sind als man selbst, sollte doch gerade Dir gut bekannt sein.
Ausserdem glaube ich kaum, dass Kraft um die 50 bei Monstern ne Seltenheit
ist. Meinst Du etwa der Weghier oder aehnliche Monster haben 20 20 20 20?
Wenns Dir zuviel ist, geh nicht hin. Ich weiss nur nicht, warum Dich solche
Sachen so aufregen. Also, ruhig bleiben, und wenn irdendwas nicht in Ordnung
ist, gibts auch ne Funktion Mail fuer konstruktive Kritik.

Ciao, Mind*, stirbt in letzter Zeit auch oefter da, aber was solls, thats
life.

-----------------------------------------------------------------------------



Nachschlag! (Hangover, 28. Jun 1998, 21:34:51):
Moin!

Also nochmal fuer Leute, die mit dem Lesen oder Denken nicht so 
schnell bei der Sache sind:

Ein Spieler, der sich in der Normalwelt befindet, wird durch ein
Portal in die Para-Kirche von Orkhausen gesetzt und bekommt das
Para-Flag gesetzt - das ist wohl im Logfile beim Rausrennen aus
der Kirche erkennbar.

Der besagte Artikel in der MPA stammt _nicht_ von Morgoth, noch
stammt er von einem anderen Magier. Bei derartigen (gefaehrlichen)
Bugs halte ich es fuer die Pflicht des betreffenden Magiers, sich 
selbst drum zu kuemmern, abgesehen davon hatte ich zu dem Zeitpunkt
eine Spielpause und den Artikel nicht gelesen.

Vielleicht verstehen einige von Euch jetzt, warum ich sauer bin.




So, kurz und knapp an Morgoth zum Rest:

Deine Orks: Wunder Dich nicht, wenn mir mal der Kragen platzt,
ich habe oft wegen Bugs Artikel in die Zeitung gesetzt, oder Dir
deswegen Mails geschickt, und nie auch nur den Hauch einer Antwort
bekommen. Fuer die Stats brauche ich keinen Magierzweiti - ich
habe mich mal mit Rochus darueber unterhalten, was Karate-NPCs
mit normalen Werten anrichten koennen, das hatte mit dem, was
Deine Orks anstellen nicht viel gemein. Wenn Du meinst, in der
Parallelwelt machen zu koennen, was Du willst, dann magst Du
vielleicht recht haben. Dass auch Deine Normalweltkarateorks
Schaden bis an 100 Punkte austeilen (ohne Wurfsterne)...naja,
ich denke, Du weisst, was ich davon halte.

Balance-Sachen: So etwas spricht sich unter Spielern rum, gerade
_wenn_ recht frische Objekte urploetzlich abgewertet werden.

Snoop: Ich habe etwas dagegen, gesnoopt zu werden, ohne dass ein
Grund vorliegt. Andere Magier, die mich gelegentlich snoopen, fragen 
vorher, ob ich einverstanden bin. Und egal, ob ich mich in virtuellen
Welten oder im richtigen Leben befinde, habe ich etwas dagegen,
einfach so ueberwacht zu werden.

-Hangover



-----------------------------------------------------------------------------



Re: Nachschlag! (Teddy, 28. Jun 1998, 21:40:24):
~#! rn=Hangover rt=899069691 rg=polizei.beschwerden
~#! tid=899069691
Wie kommst du eigentlich auf 100 LPs, hast du die anderen Artikel auch nicht
gelesen? ;-)

Teddy, wird bei 100 LPs erst warm ;)

-----------------------------------------------------------------------------



Re: Nachschlag! (Morgoth, 28. Jun 1998, 21:42:33):
~#! rn=Hangover rt=899069691 rg=polizei.beschwerden
~#! tid=899069691
Och, Hangover, ich wusste gar nicht, dass Du noch SPIELER bist. Sowas aber
auch. Sollte meine Abfrage im Portal defekt sein. Die, die verhintert, das
Spieler in die Parawelt geraten. Also da muss ich ja umgehend noch mal
nachschauen.
Es gab einen Artikel von mir und ich habe mich darum gekuemmert. Dass DU es
halt Wochen spaeter erst gemerkt hast, war...so dumm es auch klingt...Dein
Pech.
Zu Balance sag ich nix mehr. Da wird sich sicher in naechster Zeit EINIGES
aendern. Nicht nur bei mir.
**taetschel***

Morgoth

-----------------------------------------------------------------------------



Re: Nachschlag! (Patryn, 29. Jun 1998, 11:15:56):
~#! rn=Hangover rt=899069691 rg=polizei.beschwerden
~#! tid=899069691
ach hangover, nimms nicht so tragisch :)
ich erhalte auch nie antworten auf meine mails an morgoth, was bei
eigentlich zusammenarbeitenden RMs schon nen problem darstellt.
entfernte bugs oder verbesserungen werden lapidar mit dem
'das tu ich aus prinzip'-kommentar wieder ueberschrieben, und so hat er
recht schnell erreicht, dass ich mir keinen gramm orkhausen-code mehr
anschau, egal wie doll die spieler irgendwo (aus gutem grund)
herumschreien.

------
patryn, kritisiert heut mal oeffentlich, weil es ihm reicht

-----------------------------------------------------------------------------



Re: Re: Nachschlag! (Morgoth, 29. Jun 1998, 11:34:41):
~#! rn=Patryn rt=899118956 rg=polizei.beschwerden
~#! tid=899069691
DU und zusammenarbeiten?? Hahaha.
Ich hab nur durch Zufall erfahren, dass wir nen neuen Mitarbeiter haben. Zu
der anderen Sache hab ich Dir sehr wohl etwas gesagt.
Geh doch.
Heul doch

M*

-----------------------------------------------------------------------------



Re^3: Nachschlag! (Paracelsus, 29. Jun 1998, 11:52:30):
~#! rn=Morgoth rt=899120081 rg=polizei.beschwerden
~#! tid=899069691
Kann mal einer die Kinder in den Kindergarten schicken?

Paracelsus ]:->

-----------------------------------------------------------------------------



dezimierte Gildenskills (Tunixgut, 29. Jun 1998, 12:47:31):
Ich will mal versuchen, auf DIESEM Wege etwas zu erreichen:
Mir sind vor mittlerweise fast einem Monat ein Teil meiner Gilden-Skills
"verschuett gegangen" - zum Beispiel der Fumikomi-Geri, den ich mal auf 100%
hatte - jetzt nur auf gut 10. Seit der Zeit haenge ich Rochus und diversen
anderen Magiern am Sack, aba keina hat Zeit oder Lust, mal eben 10 oder 15
Minuten zu investieren, die alten skills aus einem Backup zu kramen und in
mein save-file zu kopieren! :o(
Ich finde zwar, die paar Handgriffe sollten auch neben der Diplomarbeit noch
schnell machbar sein, aber ich will kein grossen Aufriss drum machen. Waere
bloss nett, wenn sich irgendjemand mal erbarmen wuerde....

's Karate-Zwerchle - trauert zwar nur um ein paar Prozente, aba bei SEINEM
Lerntempo...

-----------------------------------------------------------------------------



Re: Schnauze voll! (Zarniya, 29. Jun 1998, 13:15:15):
~#! rn=Hangover rt=899061310 rg=polizei.beschwerden
~#! tid=899061310
Hmmm nur um es mal kurz zu machen: Ich war hier mal EM und kenn sehr gut
einige Hintergruende und wer behauptet, dass das MG kein Ueberwachungsstaat
ist, der ist nicht nur naiv, sondern hat dermassen keine Ahnung, dass es
schmerzt.

Denkt euch also euren Teil und seid gewiss: irgend ein Tool ist immer auf euch
gerichtet!

Zarniya

-----------------------------------------------------------------------------



Re: Re: Schnauze voll! (Trug, 29. Jun 1998, 13:49:03):
~#! rn=Zarniya rt=899126115 rg=polizei.beschwerden
~#! tid=899061310

>: irgendein Tool ist immer auf euch gerichtet!

Ein wenig paranoid, hm?

Trug (mal einzeilernd)

-----------------------------------------------------------------------------



Re: Re: Schnauze voll! (Yendi, 29. Jun 1998, 15:18:52):
~#! rn=Zarniya rt=899126115 rg=polizei.beschwerden
~#! tid=899061310
Bei der Masse an Spielern etwas aufwendig, oder?
Unrealistisch also...

YTY


-----------------------------------------------------------------------------



Re: Re: Schnauze voll! (Teddy, 29. Jun 1998, 20:24:29):
~#! rn=Zarniya rt=899126115 rg=polizei.beschwerden
~#! tid=899061310
Allerdings liest keiner die Logfiles, sonst liesse sich hier so einiges in
letzter Zeit nicht erklaeren.

Teddy

-----------------------------------------------------------------------------



Re: Schnauze voll! (Key, 30. Jun 1998, 07:15:34):
~#! rn=Hangover rt=899061310 rg=polizei.beschwerden
~#! tid=899061310
Oh Gott!
Das ist ja tierisch schlimm.

Was zum Teufel strellste Dich so an? 
Morgoth sollteste inzwischen kennen, oder nicht?

Hmm aber Silvana .... das Du ihn da raus geholt hast kann ich net verstehen
....
Oder kriege ich jetzt auch meine 2 letzten Tode da abgezogen? .)

Key

-----------------------------------------------------------------------------



Re: Re: Schnauze voll! (Key, 30. Jun 1998, 07:16:59):
~#! rn=Morgoth rt=899062444 rg=polizei.beschwerden
~#! tid=899061310
Morgoth das mit Kraft 50 ist allgemein bekannt ,)

Key

-----------------------------------------------------------------------------



Re^4: Nachschlag! (Key, 30. Jun 1998, 07:21:51):
~#! rn=Paracelsus rt=899121150 rg=polizei.beschwerden
~#! tid=899069691
Proggste schnell mal einen? .)

ICH WILL ZU MEINER MAMMI ;)))

Key

-----------------------------------------------------------------------------



Re^3: Schnauze voll! (Key, 30. Jun 1998, 07:25:44):
~#! rn=Trug rt=899128143 rg=polizei.beschwerden
~#! tid=899061310
*waelz*
Nur weil sie Dich nimmer aus den Augen gelassen haben, willste behaupten das
sie jeden so behandeln? .)

Hmm oder sollte ich neben Schizo auch noch Verfolgungswahn kriegen? .)

Key fuehlt sich ploetzlich so .... beobachtet .... .)

P.S.: Ja Yantro ich weiss das es ein paar Tools gibt ... und auch andere
Moeglichkeiten wen zu ueberwachen ... und auch das ich oft genug ueberwacht
wurde/werde. Aber Deiun Artikel halte ich einfach fuer uebertrieben ,)


-----------------------------------------------------------------------------



Re: Nachschlag! (Anakin, 30. Jun 1998, 09:02:10):
~#! rn=Hangover rt=899069691 rg=polizei.beschwerden
~#! tid=899069691

Anakin winkt mit seinem 'Ignoriere VLand'-Faehnchen. Seit Jahren.


-----------------------------------------------------------------------------



Re: Re: Schnauze voll! (Anakin, 30. Jun 1998, 09:06:36):
~#! rn=Zarniya rt=899126115 rg=polizei.beschwerden
~#! tid=899061310

Ach quatsch, das glaub ich nicht, ich hab soviele nuetzliche Bugs
gefunden die keiner kennt und dabei haette ich laengst auffallen muessen.
Also who cares, logfiles liest keiner wenn welche exsitieren.

Anakin.

-----------------------------------------------------------------------------



Re^3: Schnauze voll! (Key, 30. Jun 1998, 09:06:44):
~#! rn=Anakin rt=899197529 rg=polizei.beschwerden
~#! tid=899061310
winke mit einem "Big-Brother-for-Anakin-Fahnchen ;)

Key schmarrnend

-----------------------------------------------------------------------------



Re^4: Schnauze voll! (Anakin, 30. Jun 1998, 09:08:03):
~#! rn=Key rt=899197604 rg=polizei.beschwerden
~#! tid=899061310

Gut dass ich nicht mehr spiele Key :)

Anakin.

-----------------------------------------------------------------------------



Re^5: Schnauze voll! (Key, 30. Jun 1998, 09:09:03):
~#! rn=Anakin rt=899197683 rg=polizei.beschwerden
~#! tid=899061310
Du sollst auch net Spielen, sondern Bugs ausnutzen ;)

Key

-----------------------------------------------------------------------------



Re: dezimierte Gildenskills (Tunixgut,  3. Jul 1998, 05:09:55):
~#! rn=Tunixgut rt=899124451 rg=polizei.beschwerden
~#! tid=899124451
Mal 'n Reply auf mich selbst:
Ich werd' mich zwar NICHT selbstloeschen ( AETSCH!!! ), aber ich bin dennoch
SEHR enttaeuscht, dass hier NICHT EIN EINZIGER E+ mal zehn Minuten Zeit hat,
sich meine Problem anzuschauen. Das ist in meinen Augen ein ziemliches
Armutszeugnis...
Na ja, was soll's...
's Karate-Zwerchle

-----------------------------------------------------------------------------



Re: Re: dezimierte Gildenskills (Atoz,  3. Jul 1998, 14:56:11):
~#! rn=Tunixgut rt=899442595 rg=polizei.beschwerden
~#! tid=899124451
Arg ist ja gut jetzt.
Weisst du wie oft Lwaxana gemeckert hat, dass sie keine teile mits ignorieren
kann? Weisst du wieviel antwort sie gekriegt hat? Gewoehn dich dran, es gibt
wichtige Leute und es gibt Leute, die keinen interessieren.
Rumgrummelnd Atoz

-----------------------------------------------------------------------------



Re: dezimierte Gildenskills (Key,  3. Jul 1998, 16:05:37):
~#! rn=Tunixgut rt=899124451 rg=polizei.beschwerden
~#! tid=899124451
Wuerde sagen dann machste was falsch ...

Key

-----------------------------------------------------------------------------



ueberwachungstaat (Zuerileu,  4. Jul 1998, 01:26:18):
Hi all,
Zarniya (Yantro) nun ich finde man kann auch Angst schueren, und darin bist du
ja klasse wie man unschwehr an vielen deiner artikel lesen kann. Also sicher
gibt es Tools und moeglichkeiten als Magier ein Spieler zu ueberwachen. Dabei
gehoert sicher die "unsichtbarkeit" oder der bekannte "snoop"-Befehl. Beim
ersten, gibts inzwischen von Bierchen ein Tool das invis mags ausfindig macht,
und das zweite ist illegal und wird dazu geloggt.
Klar, ob die Logfiles regelmaessig gelesen werden, das ist hier sicher die
Frage aber ich mach wenn ich online bin noch oefters ein  "swho" und da wird
selten gesnoopt. Ausser es ist wichtig, und dann werden die Spieler vorher
informiert. Bei Hangover wuerd ich gerne erfahren, wie er darauf kommt das
Morgoth in regelmaessig ohne zu Fragen snoopt. Denn selbst als Seher kann er
ein Snoop als solches nicht erkennen. Und dazu ist ein solcher Vorwurf eine
schwere anschuldigung, die er auch belegen koennen sollte bevor ers hier 
veroeffentlicht. Mir ist aufgefallen das viele Spieler oder Seher naehmlich
garnicht wissen was "snoopen" genau ist, und z.B. das unsichtbare dasein eines
Magiers bereits als Snoopen betrachten, was es mit sicherheit nicht ist.
Zu Hangover moecht ich auch sagen, das im MG Stats von 4x50 keine seltenheit
mehr ist. Ich meine hier im MG erscheinen immer staerkere Gilden (man nehme
die Kaempfer oder Zauberer) die immer leichter die damals starken Monster
umhauen. Das die natuerliche Folge daraus auch staerkere Monster mit hoeheren
Stats sind sollte wohl jedem klar sein. 
Es gab mal eine Zeit, da war der Robin Hood auf der Hochebene ein NPC der zu
killen eine echte Herausforderung war fuer jedermann. Und er war praktisch
unbezwingbar. Nun damals gabs aber auch nur 1 Gilde, heute ist Robin Hood fuer
die meisten, auch kleinere Gilden, kein so grosses Problem mehr und er wird
mal so praktisch auf dem Weg in die SSP umgehauen.
Ich denke auch, das ein Seher der sich in die Parawelt geht genau wissen
sollte was ihn dort ach erwartet.

Tschau Alain

-----------------------------------------------------------------------------



Re: ueberwachungstaat (Sharia,  4. Jul 1998, 05:50:38):
~#! rn=Zuerileu rt=899515578 rg=polizei.beschwerden
~#! tid=899515578
wenn ich mich mich richtig erinnere sieht ein Magier beim snoopen alles was
der gesnoopte Spieler / Seher / Magier tut und selbst sieht.
also auch alle Mitteilungen etc.

Eigentlich dient dieser Befehl dazu Spielern die einen Bug haben zu helfen,
oder aber, wenn ein neues Gebiet angeschlossen ist, zu schauen was die Spieler
tun. In diesem Fall finde ich es vollkommen OK, denn ich weiss dass ich damir
rechnen muss gesnoopt zu werden, wenn ich mir z.B. ein neues Gebiet ansehe....

Was ich jedoch nicht OK finde, ist, wenn mich ein Magier einfach so snoopt
ohne mir dies anzukuendigen, denn er sieht ja schliesslich auch alle
persoenlichen Mitteilungen.... und nun sage bitte nicht, dass dies nicht
vorkommt, denn ich bin mir ziemlich sicher, dass es Magier gibt, die dies eben
NICHT ankuendigen. 
(Frag doch einfach mal die Leute die du in letzter Zeit im /log/SNOOP stehen
siehst ob sie wissen dass sie gesnoopt wurden :-) )

Und zu Robin moechte ich sagen: 
Hast du mal nen Zweiti genommen und Robin mal eben so auf dem Weg in die SSP
umgehauen ? 
Robin ist immernoch eine Herausforderung und ich glaube NICHT dass er eben
einfach so mal eben zu killen ist .....
Also setze bitte nicht solche Unwahrheiten in die Welt, wenn du keine Ahnung
hast :-)))


Sharia, die Robin nicht mal eben so auf dem weg in die SSP schafft :-)

-----------------------------------------------------------------------------



Re^3: dezimierte Gildenskills (Catweazle,  4. Jul 1998, 09:07:54):
~#! rn=Atoz rt=899477771 rg=polizei.beschwerden
~#! tid=899124451
Hmhm,
und es gibt Dinge, fuer die sind manche Magier zustaendig, 
und es gibt Dinge fuer die fuehlt sich keiner zustaendig.
Und es gibt Dinge die sind einfach einzubauen,
und es gibt Dinge die sind schwierig einzubauen. 
Und dann gibt es auch noch unwesentliche und wichtige Dinge. Sogar unsinnige
soll es geben.
Gewoehn Dich einfach dran, das Du nicht immer alles haben kannst was Du
willst, vor allem nicht sofort. Vor allem nuetzt es nichts, wenn Du Dich unter
einem Stein versteckst, Dich kleiner machst, als Du bist und nur vor Dir
hinjammerst  ' mich beachtet ja sowieso keiner'. 
Yours truly,
     Catweazle (stand up, get up ...) *traeller*

-----------------------------------------------------------------------------



Re: Re: ueberwachungstaat (Zuerileu,  4. Jul 1998, 20:16:15):
~#! rn=Sharia rt=899531438 rg=polizei.beschwerden
~#! tid=899515578
Hi,
Also das mit Robin war mein Fehler. Ich sah einem Seher ueber die Schulter der
den Robin Hood als Karateka damals ohne Probleme weggeputzt hat. Nur hat
dieser anscheind einen Bug ausgenuetzt im Vollstrecker der ihn ermaechtigte
das er 3 Schlaege machen konnte als nur 1 pro Runde. Nun, wer das ist, wissen
eh die meisten und wers nicht weiss ist das auch ein Weltuntergang. Nun aber
denoch stimmt es was ich gesagt habe, die Gilden werden immer staerker und
besser. Und die Spieler haben immer besseren Zugriff auf starke Tools und
extras. Und daher werden dagegen auch die NPC's staerker.
Ich jedenfalls fuer mein fall,  wird jetzt einiges klarer. was das nun heissen
soll, verate ich lieber nicht =:)

Tschau Alain

-----------------------------------------------------------------------------



Re: ueberwachungstaat (Muaddib,  5. Jul 1998, 09:17:34):
~#! rn=Zuerileu rt=899515578 rg=polizei.beschwerden
~#! tid=899515578
Nur mal interessemaessig eine Frage: Bierchen hat ein Tool kreiert, mit dem
man invis-Maggies aufstoebern kann? Fuer Seher??? Geht das nicht prinzipiell
am Ziel des invis-seins vorbei? Also wenn ich im SL invis bin (schon eher
selten ;), dann hat das immer einen Grund, und dann moechte ich auf keinen
Fall von einem Seher oder Spieler gestoert werden. Das wird den Magiern hier
wohl auch nicht anders gehen. Und achja, wie bekommt man so ein Tool? Wird das
in die sagenhafte Ruestung der Hydratoeter eingebaut? :-)

lg,
Mua

-----------------------------------------------------------------------------



Re: ueberwachungstaat (Zarniya,  5. Jul 1998, 12:51:19):
~#! rn=Zuerileu rt=899515578 rg=polizei.beschwerden
~#! tid=899515578
Zuerischaetzchen... ich bin wie immer der Meinung, dass Du nciht den Mund
aufmachen solltest, wenn Du nicht weisst, ueber was sich erwachsene Leute
gerade unterhalten: 

Ueberwachen heisst NICHT snoopen oder invis danebenstehen. Da gibt es ganz
andere Moeglichgkeiten und selbst ein Anfaengermagier hat mit seinem Level die
Moeglichkeit, ein ueberwachungstool zu proggen. 

Snoopen wird bei Erzmagiern nicht geloggt.

BigBrother ist eine Methode, die ich unverschaemt finde und fuer einen krassen
Eingriff in jede Privatsphaere, auch, wenn man eine solche hier im MG nicht
erwarten darf.

Zarniya

-----------------------------------------------------------------------------



Re: Re: ueberwachungstaat (Zarniya,  5. Jul 1998, 12:55:41):
~#! rn=Muaddib rt=899630254 rg=polizei.beschwerden
~#! tid=899515578
Hmm soviel ich weiss, stoebert das Tool nicht generell inv Magier auf, sondern
meldet, wenn ein inv Magier mit im Raum ist. eine Art "sense life" und die ist
sinvoll, damit mal inv nervige Verfolger mitkriegt.
 Wer inv in seinem Workroom steht, sollte unentdeckt bleiben.

Zarniya

-----------------------------------------------------------------------------



Re^3: ueberwachungstaat (Zuerileu,  5. Jul 1998, 17:03:39):
~#! rn=Zarniya rt=899643341 rg=polizei.beschwerden
~#! tid=899515578
zarniya schatzi,
eigentlich denke ich hast du deine daseins berechtigung verlohren. Das einzige
was du hier machst ist rumnerven und bloede Artikel in die Zeitung zu setzen.
Du magst zwar mal ein Erzmagier gewesen zu sein, aber dieser Job scheint dir
damals zu Kopf gestiegen zu sein. Denn son Arroganter Typ wie Dir ist mir noch
nie ueber den Weg gelaufen. Ach noch was, ich mach mein maul auf wenns mir
passt. Vonmiraus koennt ihr den Artikel in Muell verschieben, aber ich musste
mal Luft ablasen.

cu Alain

-----------------------------------------------------------------------------



Re^3: ueberwachungstaat (Teddy,  5. Jul 1998, 22:25:01):
~#! rn=Zarniya rt=899643341 rg=polizei.beschwerden
~#! tid=899515578
Wer invis im raum steht wird uebrigens schon laenger entdeckt durch Tools
anderer Magier.

Teddy

-----------------------------------------------------------------------------



Re^3: ueberwachungstaat (Bierchen,  5. Jul 1998, 22:29:45):
~#! rn=Zarniya rt=899643341 rg=polizei.beschwerden
~#! tid=899515578
Moin,
genauso ist es, wie Zarniya es ausfuehrte. Ausschliesslich inv-Mags im selben
Raum koennen gefunden werden, btw. der Spieler bekommt nur die Warnung, dass
einer anwesend ist, aber nicht, welcher. Padreic wuerde jetzt anfuehren, dass
man dieses Tool umgehen kann. Nun, stimmt. Gedacht war es urspruenglich auch
nur fuer die kleinen Nerv-Mags, die ihre Zeit mit Spieleraergern verbracht
haben. Dafuer war invis damals sicherlich nicht geplant. Freund sah das
aehnlich und daher gibt es das.
Gruss,
       - Bierchen -

-----------------------------------------------------------------------------



Re: ueberwachungstaat (Key,  6. Jul 1998, 08:09:27):
~#! rn=Zuerileu rt=899515578 rg=polizei.beschwerden
~#! tid=899515578
*kicher*
Also alles in allem stimme ich mit Dir ueberein Zueri ...
Ausser bei Robin ,)
*erinnert sich an einen gewissen Nicht-Seher der Robin killen sollte um Seher
zu werden =;)*

So locker ist Robin nun auch nicht ... es gibt nur wenige fuer die es sich
lohnt ihn zu probieren und der Rest geht bei drauf :)

Key wollte nurmal sowas einwerfen und hat noch net weitergelesen fals jemand
das gleiche schrieb ;)

-----------------------------------------------------------------------------



Re^4: dezimierte Gildenskills (Key,  6. Jul 1998, 08:11:15):
~#! rn=Catweazle rt=899543274 rg=polizei.beschwerden
~#! tid=899124451
Ui Cat ist ja ein Poet :)

Key einzeilend

-----------------------------------------------------------------------------



Re^5: dezimierte Gildenskills (Rantanplan,  7. Jul 1998, 09:17:45):
~#! rn=Key rt=899712675 rg=polizei.beschwerden
~#! tid=899124451

Kann man sowas denn nicht halbwegs freundlich austragen...?

Nun gut ich bin kein spezialist fuer Freundlichkeiten, aber wenigstens
kann man Beleidigungen (zumindest VL-Beleidigungen) etwas
dezenter Formulieren als Yantro es fuer gewoehnlich praktiziert.

Ansonsten gibt es fuer Magier auch Moeglichkeiten zu snoopen, ohne das
es irgendwo geloggt wird, aber was solls, wenn jemand Spass dran hat
und keine Hemmungen, andere zu Ueberwachen oder bei Unterhaltungen
seinen Namen als Key (nicht zu verwechselen mit Key) verwendetODODODODOD, oder
sonstwie muessen die Leute selber mit klarkommen.

Mir ist esziemlich gleich ob jemand meine oder andererleute
(sexuelle?! ;-)) Handlungen ueberwacht.

Oe*

-----------------------------------------------------------------------------



Re: Re: ueberwachungstaat (Acrimon, 29. Jul 1998, 16:44:14):
~#! rn=Zarniya rt=899643079 rg=polizei.beschwerden
~#! tid=899515578
Ob mich jemand ueberwacht, ist mir vollkommen schnurz, vor allem wenn er sich
nicht anmerken laeszt, dasz er mich ueberwacht.
Denn dann merke ich nichts vom Ueberwachen, und andere merken nichts davon,
und das ist im Endeffekt dasselbe wie wenn er mich nicht ueberwachen wuerde.
Dasz er dann meine Handlungen sieht, ist mir voellig egal.
Geheimnisse gibt es nur dort, wo es am Gewissen fehlt.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Re^3: ueberwachungstaat (Patryn, 29. Jul 1998, 16:45:33):
~#! rn=Acrimon rt=901730654 rg=polizei.beschwerden
~#! tid=899515578
Und mir ist es schnurz, ob es Dir schnurz ist, ob Du ueberwacht wirst.
Hauptsache, ich muss Deine sz's nicht lesen :)

------
patryn schmarrt heut auch mal

-----------------------------------------------------------------------------



Re^3: ueberwachungstaat (Azzuro, 30. Jul 1998, 22:04:09):
~#! rn=Acrimon rt=901730654 rg=polizei.beschwerden
~#! tid=899515578
Ich glaube kaum, dass (dasz) es sich jemand antut, Dich zu ueberwachen
(u"berwachen).
Denn Deine Eingaben koennte (ko"nnte) oder will eh niemand lesen. ;)

-----------------------------------------------------------------------------



Re^3: Schnauze voll! (Key, 31. Jul 1998, 07:44:56):
~#! rn=Jof rt=901820313 rg=polizei.beschwerden
~#! tid=899061310
*grins*
Das mit dem Ueberwachen ... hmm also selbst mir als kleiner seher ist bekannt
das es moeglichkeiten gibt zu ueberwachen ohne dabei ueberwacht zu werden ,)

Wobei ich nicht glaube das damit allzuviel Mist gebaut wird ...

Key

-----------------------------------------------------------------------------



Re^3: ueberwachungstaat (Bottom, 31. Jul 1998, 18:22:11):
~#! rn=Acrimon rt=901730654 rg=polizei.beschwerden
~#! tid=899515578

Acrimon hat vo"llig recht!
Wie kann man nur davon ausgehen, dasz auch nur die geringste Verfehlung
unbeachtet bleibt? Lembold ho"rt alles, sieht alles und eines jeden Seele ist
IHM offenbar! Aber wer reines Gewissens ist, der fu"rchtet nicht SEIN
Strafgericht, sondern harrt in Demut und voller Frohlocken den Freuden des
Paradieses. 
Empfehlen wir also unser Gewissen in SEINE Ha"nde und vertrauen auf SEINE
Gu"te!

Bottom - die prsonifizierte Demut


-----------------------------------------------------------------------------



Re^4: ueberwachungstaat (Willow,  4. Aug 1998, 16:49:35):
~#! rn=Azzuro rt=901836249 rg=polizei.beschwerden
~#! tid=899515578
Hmmm... Azzuro
eins muss ich sagen, wo du recht hast, hast du recht...
Weidchen Willow schaut mal auf seine Ign.-liste...

-----------------------------------------------------------------------------



Re^3: ueberwachungstaat (Grimmborn,  3. Sep 1998, 16:44:05):
~#! rn=Acrimon rt=901730654 rg=polizei.beschwerden
~#! tid=899515578
Cool, keine Geheimnisse? Dann wuerde ich Dich gerne um Deine Passwoerter
bitten. Natuerlich nicht nur die fuer die MG-Charaktere sondern die fuer
saemtliche accounts, die Du so hast. Und glaub mir, es fehlt mir nicht am
Gewissen...

Nein, Geheimnisse sind schon sinnvoll, ebenso wie eine geschuetzte
Privatsphaere. Wenn Du das nicht so siehst solltest Du nicht in den
oeffentlichen Dienst gehen, da wirst Du naemlich auf das Grundgesetz
vereidigt.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Betrug! (Grimmborn,  4. Sep 1998, 11:34:07):
Ich wollte hiermit die im Verborgenen bleibenden Veranstalter des "Wen's halt
trifft"(TM)- Preisausschreibens anzeigen. Ich habe von diesem Verein einen
Brief bekommen, in dem ein Gewinn angekuendigt war. Die letzte Zeile: "P.S:
Aufgrund von Geldknappheit konnten keine Muenzen mitgeliefert werden." legt
jedoch einen grossangelegten Schwindel und Betrug nahe.

Sheriff, uebernehmen sie!

Grimmborn der Atheist

-----------------------------------------------------------------------------



Verlegerei (Zarniya, 10. Sep 1998, 12:12:28):
Ernste Beschwerde: Ich finds nicht ok, wenn Catty einfach alle auch sinnvollen
artikel verlegt. ich hab was gegen Zensur und wenn ihm meine Artikel nicht
passen, dann kann er sie ignorieren, aber nicht einfach verschieben. Soll ja
Leute geben, denen meine Meinung nicht egal ist. 

Wahrscheinlich weiss Catty aber nicht,w ie das mit dem ignore geht... kann ihn
mal einer aufklaeren?

Zarniya

-----------------------------------------------------------------------------



Re: Verlegerei (Ringor, 10. Sep 1998, 12:13:53):
~#! rn=Zarniya rt=905429548 rg=polizei.beschwerden
~#! tid=905429548
Zensur ist, wenn er den Artikel loescht. Was Catty macht, ist lediglich ein
Verschieben des Artikels in die passende Rubrik. Muell ist deshalb passend, da
es "Flames" als Rubrik hier nicht gibt.

Den Artikel kann dort noch immer jeder lesen.

Ringor

-----------------------------------------------------------------------------



Re: Verlegerei (Boing, 10. Sep 1998, 12:14:55):
~#! rn=Zarniya rt=905429548 rg=polizei.beschwerden
~#! tid=905429548
Artikel die mit '<name>, Du Arschloch!' anfangen werden dorthin verschoben,
wo sie hingehoeren, naemlich nach muell.
  Boing

-----------------------------------------------------------------------------



Re: Re: Verlegerei (Zarniya, 10. Sep 1998, 12:15:15):
~#! rn=Ringor rt=905429633 rg=polizei.beschwerden
~#! tid=905429548
ich flame nicht, ich artikuliere mich nur unmissverstaendich. ;) Ich sehs als
Stilmittel.

Zarniya

-----------------------------------------------------------------------------



Re^3: Verlegerei (Ringor, 10. Sep 1998, 12:17:08):
~#! rn=Zarniya rt=905429715 rg=polizei.beschwerden
~#! tid=905429548
Manche Leute finden dieses "Stilmittel" allerings unpassend und moechten
solche Artikel vielleicht nicht lesen. Daher auch die Verlegerei.

Wer auf Artikel dieser Art steht, der hat wahrscheinlich auch Muell abonniert
und verpasst so keinen Deiner wertvollen Artikel.

Ringor

-----------------------------------------------------------------------------



Re^4: Verlegerei (Zarniya, 10. Sep 1998, 12:23:59):
~#! rn=Ringor rt=905429828 rg=polizei.beschwerden
~#! tid=905429548
ich versteh die argumentation nicht... wenn es _manche_ Leute gibt, die die
Artikel nicht moegen, dann koennen die meine artikel doch ignorieren. So
nehmen sie den anderen nicht den Spass.. 

Ist ja auch nicht so, dass nur, weil _manche_ das vland nicht moegen, dass das
dann geloescht wird.

ME

-----------------------------------------------------------------------------



Re^5: Verlegerei (Ringor, 10. Sep 1998, 12:28:33):
~#! rn=Zarniya rt=905430239 rg=polizei.beschwerden
~#! tid=905429548
Warum soll denn jeder sein ignoriere-File aufblaehen? Warum soll man gleich
immer alle Artikel von einer Person ignorieren, nur weil er mal einen
schreibt, der daneben ist? Genau dafuer gibts die Verlegerei doch.

Und nochmal, weil Du es anscheinend nicht verstehen willst: mit einer
Verlegung nach Muell ist der Artikel nicht weg. Es gibt genug Leute, die den
auch da noch lesen.

Ringor

-----------------------------------------------------------------------------



Re: Verlegerei (Niete, 10. Sep 1998, 13:05:47):
~#! rn=Zarniya rt=905429548 rg=polizei.beschwerden
~#! tid=905429548
nur ein derbes schimpfwort verwendet? zarn*, du wirst alt...


-----------------------------------------------------------------------------



Re: Re: Verlegerei (Anatol, 10. Sep 1998, 15:49:42):
~#! rn=Niete rt=905432747 rg=polizei.beschwerden
~#! tid=905429548
Sagt mal, ihr Pappnasen, warum steigt ihr darauf eigentlich ein? Merkt
ihr nicht, dass es genau _DAS_ ist, was Yan^H^H^H^H Zarniya beabsichtigt
hat? :o)

Muede laechelnd,
Anatol :)


-----------------------------------------------------------------------------



Re^3: Verlegerei (Alboin, 10. Sep 1998, 17:15:07):
~#! rn=Anatol rt=905442582 rg=polizei.beschwerden
~#! tid=905429548
Anatol, sei mir nicht boese aber ich glaube Du bist derjenige der reingefallen
ist. Rumflamen und dann die Parole rausgebendas ist mein Stil und ihr nehmt
das auch noch ernst ist ne ziemlich billige Masche von Yantro/Zarniya. Gerade
wo Du ziemlich lange schon hier bist, muesstest Du wissen, dass ebend diese
Person regelmaessig die Beherrschung verliert.

Alboin

"Sagt man dir ein Berg habe seinen Ort gewechselt, so glaube es. Sagt man dir
ein Mensch habe sich geaaendert, so glaube es nicht.

arabisches Sprichwort

-----------------------------------------------------------------------------



Re: Verlegerei (Catweazle, 11. Sep 1998, 07:34:07):
~#! rn=Zarniya rt=905429548 rg=polizei.beschwerden
~#! tid=905429548
Moin!

Ich habe vor einiger Zeit angekuendigt, das ich beleidigende Artikel von
Zarniya loeschen oder verlegen werde. Ich habe Dir in einem laengeren Brief
sogar erklaert, wie DU dafuer sorgen kannst, das Deine Artikel in der Zeitung
stehen bleiben. Der Trick ist einfach, verzichte einfach auf die 
eleidigenden Schlagwoerter. Bisher hat mich keiner der verantworlicheren
Mitmudder dazu aufgefordert damit aufzuhoeren. 
Vielleicht bist Du ja vergesslich, ich kann Dir die mail gerne nochmal 
schicken.

Ueber den Inhalt des Artikels und ob sinnvoll oder nicht kann ich nichts
sagen, ich bin nur bis zum ersten Satz gekommen, dann hat mein Muelltonnen-
reflex eingesetzt.

Catweazle

-----------------------------------------------------------------------------



Re: Re: Verlegerei (Zarniya, 11. Sep 1998, 08:25:23):
~#! rn=Catweazle rt=905499247 rg=polizei.beschwerden
~#! tid=905429548
Ich sah das schon immer als graviernedes Problem, wenn Menschen, die sich fuer
intelligent halten, mit Reflexen handeln, statt das Hirn anzuschalten. Leider
ist das aber auch eine zu menschliche Eigenschaft, zu pauschalieren und sich
seinen Trieben hinzugeben... Experten nennen die ausufernde Art dieses
Syndroms auch Altersschwachsinn. Scheint hier der Fall zu sein, wenn man
betrachtet, dass der Weisenposten ja die Rentenabteilung ehemals erfrischender
Geister ist.

Zarniya

-----------------------------------------------------------------------------



Zarniya (Rednose, 11. Sep 1998, 11:19:39):
Hmm, dem abwechslungsreichen Stil der Artikel nach muss Zarniya eine
aeusserst interessanete Vorbildung genossen haben. 
 
Man koennte sich natuerlich nun die Frage stellen, warum es Zarniya hier
eigentlich noch gibt. Auf der anderen Seite habe ich beim Lesen "ihrer" 
Artikel und Verfolgen der zugehoerigen Threads wolluestige Spannergefuehle.
Auch fuehlt man sich irgendwie als etwas besseres, was ja eine Wohltat fuer
ein hin und wieder angeschlagenes Selbstbewusstsein sein kann.
 
- Rednose (moechte auch mal zur Zielscheibe werden) :-)

-----------------------------------------------------------------------------



Re^3: Verlegerei (Jasper, 11. Sep 1998, 13:06:45):
~#! rn=Zarniya rt=905502323 rg=polizei.beschwerden
~#! tid=905429548
also ich wuerde die artikel von zarniya, oder wie auch immer, gerne lesen.
und in muell stehen wohl eher '1-wort' artikel etc.
nuja aber .....

help archwizards are always right
---> yup, its a rule too.

-----------------------------------------------------------------------------



Re^4: Verlegerei (Qitess, 13. Sep 1998, 16:55:52):
~#! rn=Jasper rt=905519205 rg=polizei.beschwerden
~#! tid=905429548
Ich plaediere jetzt mal einfach fuer eine gaenzlich neue Rubrik namens
Zarniya-News. In die werden dann ganz einfach alle Artikel von Zarniya
automatisch verlegt. Und die kann dann abbestellen, wer will.

QI** mischt mit.(HoeHoeHoe)


-----------------------------------------------------------------------------



Artikelverlegerei (Ender, 15. Sep 1998, 06:40:41):
Das einzige wqas mich immer stoert an der Verlegerei, ist danach der fehlende
zugriff.
Man sollte ja das Recht haben seine Artikel selber loeschen zu koennen, wenn
man was unverzntwortliches verzapft hat. Vieleicht kommt man ja zur einsicht.

Ender.

-----------------------------------------------------------------------------



Protest (Lena, 11. Nov 1998, 12:59:34):
Ich protestiere hiemit offiziell gegen das nichtprovozierte Zappen durch
Rumata.

-----------------------------------------------------------------------------



Re: Protest (Rumata, 11. Nov 1998, 13:00:31):
~#! rn=Lena rt=910785574 rg=polizei.beschwerden
~#! tid=910785574
Und ich protestiere gegen das nichtprovozierter Faellen meines Baums.
Rumata

-----------------------------------------------------------------------------



Aufruehrerei und Beleidigung (Hate, 22. Nov 1998, 14:34:27):
Hiermit moechte ich Anakin offiziell der Aufruehrei und Beleigung gegen
die Erzmagier und Goetter des MorgenGrauens anklagen. Er hat es gewagt
in aufruehrerische Weise versucht Stimmung gegen die gnaedigen Herrscher
zu machen um dann mit Hilfe seiner Komplizen die Macht zu uebernehmen
und die Spieler des MorgenGrauens zu knechten.

Gluecklicherweise wurde mir vorher davon kund getan, so dass ich ihn
in seinen verruchten Taten aufhalten konnte. Als Strafe sollte er
in Port Vain an den Pranger gestellt und mit Stimmenlosigkeit
geschlagen werden.

Auf dass ihn jeder sehen und ihn seiner Taten wegen mit faulem Obst
und Eiern bewerfen kann.

i.g. Hate.

-----------------------------------------------------------------------------



Re: Aufruehrerei und Beleidigung (Anatol, 22. Nov 1998, 14:37:25):
~#! rn=Hate rt=911741667 rg=polizei.beschwerden
~#! tid=911741667
*taetschel* Das geht vorbei, Hate. Frueher oder spaeter geht das vorbei.
Bleib' einfach ganz ruhig, entspanne Dich, denk' an etwas schoenes...

Anatol - ist fuer eine Zwangsbetreuung fuer Erzmagier durch Psychologen :o)


-----------------------------------------------------------------------------



Re: Aufruehrerei und Beleidigung (Jasonrigid, 23. Nov 1998, 12:44:54):
~#! rn=Hate rt=911741667 rg=polizei.beschwerden
~#! tid=911741667
okay, wer proggt das Obst und die Eier ??

Jason, holt schon mal aus *grins*

-----------------------------------------------------------------------------



Re: Aufruehrerei und Beleidigung (Anakin, 23. Nov 1998, 13:01:51):
~#! rn=Hate rt=911741667 rg=polizei.beschwerden
~#! tid=911741667
Ha,

Du hast mich umbegracht dafuer! Das kann doch wohl nicht wahr sein,
einfach gekillt. Ich wusste es schon immer, dass Magier (spez. Erzmagier)
tun und lasses was sie wollen. Die scheren sich ein Dreck um die
Regeln die sie selbst aufgestellt haben.

Hiermit fordere ich dass Hate runtergesetzt wird bzw. Spielpause
machen muss wegen Playerkillings!

Anakin.

-----------------------------------------------------------------------------



Re: Aufruehrerei und Beleidigung (Key, 23. Nov 1998, 13:43:59):
~#! rn=Hate rt=911741667 rg=polizei.beschwerden
~#! tid=911741667
Hiermit moechte ich Hate offiziell der ueblen Nachrede und Verleumnung gegen
einen wahren Ex-Chaoten und Kaempfer des Boesen anklagen.

In seiner schier hexerischen Art versucht er die ruchlosen Goetter des
Morgengrauens gegen unschuldige aufzuhetzen!

Gluecklicherweise haben meine Spione von diesem Frevel rechtzeitig Wind
bekommen und nun rufe ich zu Gegenmassnahmen auf!

Verbuendet euch ihr boesen Krieger gegen den Hass dieser Tage! ;)

Key

-----------------------------------------------------------------------------



Re: Re: Aufruehrerei und Beleidigung (Lillebror, 23. Nov 1998, 17:11:46):
~#! rn=Key rt=911825039 rg=polizei.beschwerden
~#! tid=911741667
Voellig aus dem Zusammenhang moechte ich Dich nur darauf hinweisen, dass sich
Chaoten '_mit_ dem Hass dieser Tage' verbuenden muessten, um der Allmacht der
Magier zu trotzen. So saehe ich es jedenfalls, wenn ich Chaotin waere :)

Lillebror (kleine Trves)

-----------------------------------------------------------------------------



Re^3: Aufruehrerei und Beleidigung (Key, 24. Nov 1998, 10:48:24):
~#! rn=Lillebror rt=911837506 rg=polizei.beschwerden
~#! tid=911741667
*gruebel*
Wenn man es so rum sieht ... sind wir eigentlich der Hass dieser Tage :)

Key

-----------------------------------------------------------------------------



Re^4: Aufruehrerei und Beleidigung (Tunixgut, 24. Nov 1998, 10:50:01):
~#! rn=Key rt=911900904 rg=polizei.beschwerden
~#! tid=911741667
Nein, auf Euch RICHTET sich ...

Wehe jemand verraet meine Identitaet! ;o)

Anonym...

-----------------------------------------------------------------------------



Re: Schnauze voll! (Kretek, 28. Nov 1998, 21:33:34):
~#! rn=Hangover rt=899061310 rg=polizei.beschwerden
~#! tid=899061310
Hm. So'n langes Log zu posten ist meiner Meinung nach fast schon ein Grund
fuer'n
kurzes Banish! :-)
          
          kretek@antisocial.com


-----------------------------------------------------------------------------



Re^3: Verlegerei (Quasimodo, 13. Dez 1998, 12:03:56):
~#! rn=Zarniya rt=905502323 rg=polizei.beschwerden
~#! tid=905429548
Ich sah es noch nie als Problem, wenn sich itelligente Menschen der Reflexe
bedienen. Ganz im Gengenteil. Es spart enorm Zeit fuer sinnvolle Dinge.

Quasi


-----------------------------------------------------------------------------



Was soll das? (Afmodif, 27. Jan 1999, 17:09:15):
Tach,

als ich mich heute einloggte, wachte ich als Geist in der Kapelle auf, als
Folge eines Todes. Dieser trat im Kampf gegen ein voellig harmloses Monster
ein, auf welches ich idelnderweise mit einem Theatermesser einstach. Irgendein
uebelwollender Magier hat mir offensichtlich die Vorsicht auf 0 gesetzt und
das Monster modifiziert, so dass es mich umgebracht hat. Darueber hinaus
stellte ich eben fest, dass meine Gildenfaehigkeit allesamt auf 5% gesetzt
sind.

Ich frage nun:
1. Was soll das?
2. Seit wann ist Ideln im Kampf mit nichtaggressiven Monstern verboten?
3. Falls das ueberhaupt der Fall ist: Wo steht das? Unter 'hilfe scripte'
gewiss nicht.
4. Warum hat mich keiner informiert? Wenigstens ne Mail waer angemessen
gewesen.

Ich protestiere hiermit scharf gegen diese Dinge und verlange eine
Wiederherstellung meines alten Zustands.

Afmodif (stocksauer)

-----------------------------------------------------------------------------



Re: Was soll das? (Orktoeter, 27. Jan 1999, 18:09:17):
~#! rn=Afmodif rt=917453355 rg=polizei.beschwerden
~#! tid=917453355
Ideln bei NPC (und damit ueben) ist schon seit ewigen Zeiten verboten.
Genau die Folgen, die du oben beschriebst sind die Strafe.

OrkT aufklaerend.

-----------------------------------------------------------------------------



Re: Re: Was soll das? (Yendi, 27. Jan 1999, 18:14:38):
~#! rn=Orktoeter rt=917456957 rg=polizei.beschwerden
~#! tid=917453355

Hmmm...
Ich habe gesucht, aber nichts gefunden: Wo steht das?


-----------------------------------------------------------------------------



Re^3: Was soll das? (Teddy, 27. Jan 1999, 18:16:43):
~#! rn=Yendi rt=917457278 rg=polizei.beschwerden
~#! tid=917453355
Hilfe Scripte, Punkt 4 wuerde ich da mal sehen.

Teddy

-----------------------------------------------------------------------------



Re^4: Was soll das? (Velocity, 27. Jan 1999, 18:20:00):
~#! rn=Teddy rt=917457403 rg=polizei.beschwerden
~#! tid=917453355
Wie sieht das mit der Ansprechbarkeit aus? Wenn ich ein weg (Hey bei mir
scrollt es - spreche mit meinem Zweitie XXX) gesetzt habe, und dann - wegen
des Scrolls nicht regieren tue...Werd ich dann bestraft, oder wird erst mal
beim Zweitie geguggt, oder der ansprechbar ist?

-----------------------------------------------------------------------------



Re^5: Was soll das? (Teddy, 27. Jan 1999, 18:21:31):
~#! rn=Velocity rt=917457600 rg=polizei.beschwerden
~#! tid=917453355
Bin ich Sheriff? 
Grauzonen gibts immer, aber in dem Fall scheint er ja wirklich die ganze Nacht
nicht ansprechbar gewesen sein.
(Grauenhafter Satz) 

Teddy, zum Glueck nicht Sheriff ;)

-----------------------------------------------------------------------------



Re^5: Was soll das? (Mahatmu, 27. Jan 1999, 18:22:34):
~#! rn=Velocity rt=917457600 rg=polizei.beschwerden
~#! tid=917453355
Da steht etwas von _Spieler_. Magier sind zwar ein Spezialtyp von Spielern,
in dem Fall plaediere ich aber dann auf Spieler-, aeh Magierwillkuer.
Vor einer Weile wurde lang und breit ueber Ideln bei AA-NPCs diskutiert
und das wurde als strafbar definiert. Normalerweise ist ja alles erlaubt,
was nicht verboten, und gerade bei so einer Teildefinition der AA als
verboten empfaende ich diesen Fall als erlaubt.
Ich faend es nett, wenn erst die Regel aufgestellt, und dann gerichtet wuerde,
und habe den Eindruck, dass da ein Magier wieder nichts zu tun hatte.

Mahatmu

-----------------------------------------------------------------------------



Re^6: Was soll das? (Teddy, 27. Jan 1999, 18:25:51):
~#! rn=Mahatmu rt=917457754 rg=polizei.beschwerden
~#! tid=917453355
Hast du mal versucht mit dem gesunden Menschenverstand zu arbeiten anstatt
nach den Buchstaben des Gesetzes?
Es ist eigentlich ziemlich krank das solche Diskussionen ueberhaupt gefuehrt
werden. Selbst im GG gibt es Gesetzesluecken und wir sind hier keine Juristen
im MG(jedenfalls die meisten wohl nciht).

Es gibt sowas wie ne Grundidee die hinter dem ganzen steht und abends nen
Skript starten, schlafen gehen und morgens wie durch ein Wunder stearker
geworden sein passt nicht ganz zu dem Grundgedanken. Sowas sollte mit ein
wenig Nachdenken jedem klar sein.
Wers trotzdem versucht ist imho selber Schuld und sollte sich dann nciht
aufregen.
Nebenbei beruht die 'Gesetzgebung' im MG sowieso auf gesundem
Menschenverstand.

Teddy

-----------------------------------------------------------------------------



Re^6: Was soll das? (Householder, 27. Jan 1999, 18:27:39):
~#! rn=Mahatmu rt=917457754 rg=polizei.beschwerden
~#! tid=917453355
Hm ja ist eigentlich schon eindeutig , dass das rumideln bei npc's mit
scripten gleichgesetzt wird ... aber die massnahme ist eine unverschaemtheit
... normalerweise sollte der "taeter" bei sowas erstmal um stellungnahme
gebeten werden und die strafe unter *zustaendigen* magiern abgesprochen werden
.... 
wenn der magier nicht zustaendig ist und es aus langeweile getan hat, gehoert
er geloescht :-)

-----------------------------------------------------------------------------



Re^7: Was soll das? (Mahatmu, 27. Jan 1999, 18:29:04):
~#! rn=Teddy rt=917457951 rg=polizei.beschwerden
~#! tid=917453355
Die Gesetzgebung in MG beruht auf Magierverstaendnis und -festlegung, das
ist mal ein Fakt. Mich stoert vor allem die Art und Weise der Bestrafung,
so willkuerlich und ohne Nachricht - das deutet irgendwie darauf
hin, dass der Magier wusste, dass er nicht korrekt handelt.
Was eben lt. Definition der Magier in diesem MUD uach nicht der Fall ist.

Mahatmu

-----------------------------------------------------------------------------



Re^8: Was soll das? (Teddy, 27. Jan 1999, 18:31:08):
~#! rn=Mahatmu rt=917458144 rg=polizei.beschwerden
~#! tid=917453355
Deinen Fakt bezweifle ich mal ganz gewaltig.
In erster Linie wird in den Regeln im MG immer wieder auf Augenmass und
Menschenverstand hingewiesen.

Ich muss dir allerdings an einer Stelle recht geben, der zustaendige Magier
haette ne Mail hinterlassen koennen.

Teddy

-----------------------------------------------------------------------------



Re^7: Was soll das? (Yendi, 27. Jan 1999, 18:32:06):
~#! rn=Householder rt=917458059 rg=polizei.beschwerden
~#! tid=917453355
Naja, konsequenterweise sollte es auch in den Hilfeseiten auftauchen, wenn man
sich mit Ideln-bei-Monstern eine derartige Strafe einfangen kann...
Ich z.B. hatte schon voellig vergessen, dass das verboten war. Andererseits
kann _ich_ es mir ja sowieso nicht erlauben, herumzustehen und ein AA-Monster
auf mich einpruegeln zu lassen.

Wie dem auch sei, diese Regel sollte in den offiziellen Hilfeseiten
auftauchen.

YTY


-----------------------------------------------------------------------------



Re^7: Was soll das? (Key, 27. Jan 1999, 18:39:36):
~#! rn=Householder rt=917458059 rg=polizei.beschwerden
~#! tid=917453355
Und wenn DIE Magier zustaendig waren?

Key

-----------------------------------------------------------------------------



Re^9: Was soll das? (Key, 27. Jan 1999, 18:41:33):
~#! rn=Neb rt=917458690 rg=polizei.beschwerden
~#! tid=917453355
Och von 100 auf 5% ist glaub ich nen abzug der Gildenfaehigkeit ;)

Key

-----------------------------------------------------------------------------



Re^6: Was soll das? (Acrimon, 27. Jan 1999, 19:55:26):
~#! rn=Mahatmu rt=917457754 rg=polizei.beschwerden
~#! tid=917453355
Nein. Falsch!
Es ist eben *nicht* alles erlaubt, was nicht verboten ist.
Zwischen "verboten" und "erlaubt" gibt es noch "unmoralisch", "nicht
vertretbar", "ruecksichtslos", und Vieles mehr.
Diese Bereiche ueberschneiden sich auch ganz gehoerig, aber eins ist sicher:
Der Bereich zwischen "verboten" und "erlaubt" ist weit groeszer als der
Bereich "erlaubt".

Acrimon, der Rote Ritter verabscheut alle, die etwas mit der Begruendung "es
ist ja nicht verboten" tun.

-----------------------------------------------------------------------------



Re^8: Was soll das? (Acrimon, 27. Jan 1999, 20:04:35):
~#! rn=Mahatmu rt=917458144 rg=polizei.beschwerden
~#! tid=917453355
Stimmt. Eine Mitteilung (z.B. Mail) "Ich habe dem Schmetterling xyz einen
Staerkungstrunk, einen Geschicklichkeitstrunk, einen Ausdauertrunk und einen
guten Schmetterlingsstachel verabreicht, weil er schon so ewig lange gegen
Deine Reflexe kaempfen muszte, ohne dagegen anzukommen. (Unterschrift: Name
des Magiers)" waere schon angebracht gewesen.
Denn so mir-nichts-dir-nichts waechst einem Schmetterling nun mal kein
Stachel.

Acrimon, der Rote Ritter

-----------------------------------------------------------------------------



Re^8: Was soll das? (Kellybundy, 27. Jan 1999, 20:05:19):
~#! rn=Yendi rt=917458326 rg=polizei.beschwerden
~#! tid=917453355
Also im RL gilt der juristische Grundsatz: Unwissenheit schuetzt vor strafe
nicht. Muss man Euch denn _alles_ haarklein vorkauen? Der gesunde
Menschenverstand sagt doch wohl einem Mudder so ziemlich was rechtens ist und
was nicht.

Wenn man jetzt anfaengt hier lueckenlose regelwerke aufzustellen, dann fange
er an, schon mal den gesamten FB Jura einzuscannen :)

-----------------------------------------------------------------------------



Killermagier (Lena, 27. Jan 1999, 20:07:05):
Alles schoen und gut. Aber welcher Magier wars denn nun?

-----------------------------------------------------------------------------



Re: Killermagier (Householder, 27. Jan 1999, 20:34:57):
~#! rn=Lena rt=917464025 rg=polizei.beschwerden
~#! tid=917464025
Ja genau ich wuerd wirklich gern wissen wer der magier war ... 
Sicherlich hat ihn die Tatsache das ein Regel gebrochen wurde absolut nicht
interessiert, sondern er wollte einfach nur jemandem eins auswischen .... 
egal ob es erlaubt ist oder nicht gildenskills ohne anhoerung auf 5% setzen
ist eine schweinerei 

-----------------------------------------------------------------------------



Re^9: Was soll das? (Azzuro, 27. Jan 1999, 20:38:05):
~#! rn=Kellybundy rt=917463919 rg=polizei.beschwerden
~#! tid=917453355
Auf der einen Seite regt Ihr Euch auf, dass der Magier ohne Kompetenz einfach
ueber Spielerleben richtet (ob zu Recht oder Unrecht sei mal dahingestellt).
Auf der anderen Seite betreibt Ihr aber auch nichts anderes als Luenchjustiz
hier.
Haettet ihr mal Highlander angefingert, dann haettet Ihr gesehen, das er seit
dem Vorfall noch nicht da war.
Warum schreibst Du Afmodif (oder wie auch immer) nicht einfach eine Mail an
ihn und wartest erst mal ab.
Sollte er nicht reagieren, koennt Ihr immer noch die Beschwerderubrik nutzen.

Bekommt Euch mal wieder ein.
Azzuro

-----------------------------------------------------------------------------



Re^10: Was soll das? (Boing, 27. Jan 1999, 20:41:07):
~#! rn=Azzuro rt=917465885 rg=polizei.beschwerden
~#! tid=917453355
Jetzt schreib ich eben auch noch kurz was dazu:
Im Prinzip ist die Strafe zwar etwas hart (normalerweise gibts erst
mal eine Verwarnung) aber durchaus gerechtfertigt. Was man dem 
durchfuehrenden Erzmagier vorwerfen kann ist die Art wie es gehandhabt
wurde (habe ich auch getan), aber nicht DASS er es getan hat. Ich hoffe
dass das in Zukunft etwas besser klappt, d.h. dass der erwischte Spieler
vor der Bestrafung noch was sagen darf und dass er zumindest benachrichtigt
wird.
  Boing

-----------------------------------------------------------------------------



Re^5: Was soll das? (Rikus, 27. Jan 1999, 21:14:38):
~#! rn=Velocity rt=917457600 rg=polizei.beschwerden
~#! tid=917453355
Ich sehe keinen Grund, beim 2tie nachzufragen, wenn der 1tie nicht
ansprechbar ist. Uebst oder metzelst Du mit Deinem 1tie, so hat er
ansprechbar zu sein, wenn nicht, dann kannst Du ihn auch ausloggen.

Rikus


-----------------------------------------------------------------------------



Re^6: Was soll das? (Firehawk, 27. Jan 1999, 22:39:19):
~#! rn=Rikus rt=917468078 rg=polizei.beschwerden
~#! tid=917453355
Okay, ich geb jetzt auch mal unaufgefordert meinen Senf ab :)

1. Hier war oft von idlen die Rede ... idlen ist meiner Meinung nach absolutes
Nichtstun, also gehoert kaempfen, ueben aehnliches mit sicherheit nicht dazu
...
Ich hoffe die meissten sehen das genauso, da es zB sein kann, dass ich mein
ZMud mal ne Stunde blind laufen lasse um mich in meinem Seherhaus von
irgendwelchen Todesfolgen zu befreien und in dieser Zeit auch nicht
ansprechbar bin.
2. Was nun das ueben angeht, so stimme ich zu, die Strafe ist hart aber
gerecht und abzusehen, weil man diese Spielweise durchaus als cheaten ansehen
koennte und das irgendwie nicht hierher passt.

Life's a game, I'm a player ... Firehawk

-----------------------------------------------------------------------------



Re^7: Was soll das? (Afmodif, 28. Jan 1999, 06:52:26):
~#! rn=Firehawk rt=917473159 rg=polizei.beschwerden
~#! tid=917453355
Dass Ideln bei Auto-Attack-Monstern verboten ist, steht zwar offiziell
nirgendwo, aber das hab ich schon mal gehoert. In meinem Fall handelte es sich
aber nicht um ein solches, sondern um ein normales, welches ich irgendwann mal
angegriffen hatte und welches dann nicht umfiel. Ist also ein kleiner
Unterschied. 

Ausserdem steht in 'hilfe scripte' bezueglich der Ansprechbarkeit nur was von
Triggern, anderen Scripten und Keybindings. Ideln und Nichtstun ist aber kein
Script.

Und wenn Azzuro meint, dass ich vor einem Artikel in der MPA erstmal ne Mail
an Highlander schreiben sollte: ich wusste ja nichtmal, ob es Highlander oder
sonstwer gewesen ist, und derjenige haette sicher die Zeit gehabt, mir ne Mail
zu schreiben, das dauert naemlich auch nicht laenger als das Runtersetzen der
Gildenfaehigkeiten. Also schlechter Stil war das allemal.

Und ich fuehle mich immer noch ungerecht behandelt bzw. bestraft, da ich nicht
einsehe, fuer welches Vergehen.

Aber was solls, mudden macht eh dumm, mein Chef spielt nicht umsonst nicht
mehr...

Afmodif

-----------------------------------------------------------------------------



Re^8: Was soll das? (Email, 28. Jan 1999, 09:26:35):
~#! rn=Afmodif rt=917502746 rg=polizei.beschwerden
~#! tid=917453355
Hmm, mal mein Senf dazu.
Bin ich nicht ansprechbar, wenn ich nicht reagiere, oder bin ich nicht
ansprechbar, wenn ich die teile mit und aehnliches ignoriere?
Email
  -- sucht nach dem richtigen Wort dafuer

-----------------------------------------------------------------------------



Re^9: Was soll das? (Matis, 28. Jan 1999, 11:03:39):
~#! rn=Email rt=917511995 rg=polizei.beschwerden
~#! tid=917453355
Ich senfe auch mal mit.

1. Wenn man mit einem Theatermesser ideln irgendwo rumsteht, und dann 
   kommt auch noch zufaellig ein Monster vorbei und greift einen an, 
   dann ist die Intention hinter diesem Verhalten klar. Ob das erlaubt
   ist oder nicht, ist wie schon oefters gesagt Grauzone, in der Hilfe
   steht nichts dazu. Mein Zwergenverstand tendiert eher zu "Nein".
   Allerdings koennen da selbst gesunde Menschen/Zwerge/Elfen/... 
   verschiedene "Verstandsvorstellungen" haben. 
   Btw, auch nach dem Abideln von Todesfolgen steht man besser da als
   davor, und diese Folgen waren eigentlich auch als "Bestrafung" fuer
   den Spieler gedacht, indem sie ihn ein wenig _beim_ Spielen 
   behindern...


2. Das Verhalten des betreffenden Magiers ist, genauso wie das von Afmodif,
   fragwuerdig. Korrekt waere sicherlich ein Einsperren im Gefaengnis, die
   Uebergabe des Falles an Highlander und eine Mail an Afmodif gewesen.
   Nicht umsonst gibt es einen Sheriff, denn dieser soll u.a. eine gewisse
   Einheitlichkeit bei der Bestrafung garantieren.
   Dass allerdings die Vorsicht des Spielers geaendert wurde und der 
   betreffende bekaempfte NPC dazu, so dass es zum Tod von Afmodif kam,
   ist Willkuer und boesartig seitens des Magiers. Es ist meiner Meinung 
   nach sogar ein Verstoss gegen den Magiervertrag. Es kann nicht sein, dass
   ein Magier seine Regeln bricht, auch wenn er damit "nur" einen 
   regelbrechenden Spieler entlarven und bestrafen will. Auch dies gehoert
   zum gesunden Menschen-, aeh Zwergenverstand.



-----------------------------------------------------------------------------



Re^10: Was soll das? (Paracelsus, 28. Jan 1999, 11:55:20):
~#! rn=Matis rt=917517819 rg=polizei.beschwerden
~#! tid=917453355
Hi.

Als ausfuehrender Magier (Jawohl, Ich wars!) moechte ich mich hiermit
offiziell bei Afmodif dafuer entschuldigen, dass ich ihm keine Mail
geschickt habe.

Para*.

-----------------------------------------------------------------------------



Re^6: Was soll das? (Velocity, 28. Jan 1999, 13:23:24):
~#! rn=Rikus rt=917468078 rg=polizei.beschwerden
~#! tid=917453355
Nun mal genau...Wenn ich irgendwo uebe, und dabei maechtig Scroll erzeuge,
dann ist ein teile mit doch mal schnell uebersehen. Deswegen setze ich ja auch
ein weg mit Hinweis aus 2tie/1stie. Muss ich nun selbst ansprechbar sein (was
im Uebescroll wohl kaum moeglich ist) oder muss der 1tie/2tie, auf den ich im
weg verweise ansprechbar sein? Ich wuerde es gerne klipp und klar wissen, und
am besten auch in die Scripthilfe aufgenommen haben.
Velocity.

-----------------------------------------------------------------------------



Re^7: Was soll das? (Paracelsus, 28. Jan 1999, 14:15:12):
~#! rn=Velocity rt=917526204 rg=polizei.beschwerden
~#! tid=917453355
Ein teike-mit uebersieht man sicherlich mal. Aber es gibt ja schliesslich
auch noch andere Moeglichkeiten. So bezweifle ich z.B., dass Du ein
             ###   ###
##  ##         #     #
 #  #   ##     #     #    ##
 ####     #    #     #   #  #
 #  #   ###    #     #   #  #
 #  #  #  #    #     #   #  #
##  ##  ## # ##### #####  ##

uebersehen wuerdest (um nur mal ein Beispiel zu nennen).

Para*

-----------------------------------------------------------------------------



Re^8: Was soll das? (Velocity, 28. Jan 1999, 14:16:59):
~#! rn=Paracelsus rt=917529312 rg=polizei.beschwerden
~#! tid=917453355
Naja...Ueben ist oede...wer starrt schon staendig in den Scroll? Und bei 10
Zeilen Scroll/sekunde ist auch bei groesseren Monitoren so ein Hallo gaaanz
schnell weg, oder?
Velo

-----------------------------------------------------------------------------



Re^9: Was soll das? (Matis, 28. Jan 1999, 14:18:14):
~#! rn=Velocity rt=917529419 rg=polizei.beschwerden
~#! tid=917453355
Der Magier wird seine Entscheidung aber wohl auch kaum von eineme einzigen tm
abhaengig machen.

Matis

-----------------------------------------------------------------------------



Re^8: Was soll das? (Key, 28. Jan 1999, 14:19:05):
~#! rn=Paracelsus rt=917529312 rg=polizei.beschwerden
~#! tid=917453355
Was soll ich uebersehen koennen?

Key schmarrnend

-----------------------------------------------------------------------------



Re^10: Was soll das? (Anatol, 28. Jan 1999, 14:19:39):
~#! rn=Matis rt=917529494 rg=polizei.beschwerden
~#! tid=917453355
Wenn der Charakter Afmodif heisst, kein echtes Leben hat, sondern
nur ein bloeder Ich-aergere-Leute-in-der-MPA-Zweitie ist, sollte die
Entscheidung sehr leicht fallen.

Eine absolute Gleichheit vor dem "Gesetz" gibt es hier ohnehin nicht.

Anatol


-----------------------------------------------------------------------------



Re^9: Was soll das? (Key, 28. Jan 1999, 14:20:13):
~#! rn=Velocity rt=917529419 rg=polizei.beschwerden
~#! tid=917453355

Schon is der scroll weg ,)

Key

-----------------------------------------------------------------------------



Re^10: Was soll das? (Velocity, 28. Jan 1999, 14:20:15):
~#! rn=Matis rt=917529494 rg=polizei.beschwerden
~#! tid=917453355
Es geht mir ja auch nur darum, dass er beim gesetzten weg einfach beim 2tie
guggt, ob der am Rechner sitzt. Der reagiert dann sofort und gibt gerne
Auskunft ueber das Treiben des 1ties...
Velo.

-----------------------------------------------------------------------------



Re^11: Was soll das? (Zarniya, 28. Jan 1999, 15:00:47):
~#! rn=Velocity rt=917529615 rg=polizei.beschwerden
~#! tid=917453355
also ich weiss nicht, wie man die Zweitieregelung immer wieder so schwammig
auslegen kann. Eigentlich ist das ganz einfach: Der eine Charakter tut was und
das andere nichts. Wenn beide gleichzeitig was machen, dann ist da einer ein
Skript oder aber er uebt idlend, was meiner Meinung nach nicht ok ist. 

Zarniya

-----------------------------------------------------------------------------



Denkanstoss (Tsunami, 28. Jan 1999, 15:03:35):
Ich moechte gerne anregen, dass die im Moment gaengige Praktik mit idelnden 
Spielern noch einmal ueberdacht wird.

Damals als Spieler (hach, das waren noch Zeiten) bin ich ab und zu idelnd
in einer gefaehrlichen Gegend herumgestanden, weil ich mitten im mudden vom
Bildschirm gerissen wurde, da ich jemandem im Labor was ganz dringendes
helfen musste, oder der Chef kam unerwartet in den Computerraum und das
betreffende Mud-Fenster musste gaaaanz schnell geschlossen werden ...

Tja, da steht man dann halt nun, kommt nichts Boeses ahnend zurueck und muss
erkennen, dass sein elektronisches Gegenstueck ins Gefaengnis oder schlimmer
geworfen wurde, da in der Zwischenzeit ein aggressiver Lauf-NPC in den Raum
getappst ist und angefangen hat zu metzeln.

Das ist mir mal mit einem Zweitie so ergangen, damals gabs dann aber bloss ne
schriftliche Verwarnung.

In der Zwischenzeit hat sich das offensichtlich geaendert: es wird geschossen
und dann gefragt. Das finde ich nicht so toll. Ich plaediere eher fuer die
'Unschulds-Vermutung' fuer den Spieler. Versteht mich bitte nicht falsch,
ich bin ebenfalls gegen 'Skripte' wie Renn-durch-die-Quest-und-habe-keinen-
Spass-dabei-Skripte oder metzel-tank-nimmallesausleicheundverkaufdaszeugs-
Skripte und ganz strikt bin ich gegen Untersuche-Skripte. 

Ich denke jedoch, es gibt fuer uns Magier andere Wege, skriptende
Spieler zu entdecken, respektive das Skripten zu erschweren. Ich denke da 
z.B. an Todesfallen, die man garantiert nicht untersucht, wenn man den Text 
auf dem Bildschirm kurz liest wogegen das Untersucheskript halt die 
Todesfalle untersuchen wuerde und schwupps wird man bestraft. Es gibt sicher 
auch andere, elegante Wege, z.B. Spieler aus nem Raum rauszuwerfen, wenn sie
lange bei einem NPC stehen und auf ihn eindreschen ohne zumindest mal einen 
huebschen Kniestoss, eine brennende Hand, einen Heiligenschein oder einen 
Uszuki-wasauchimmer zu applizieren.

Meine Meinung halt.

Weiterhin frohes Mudden,

  >>Tsunami.

-----------------------------------------------------------------------------



Re^12: Was soll das? (Key, 28. Jan 1999, 15:04:23):
~#! rn=Zarniya rt=917532047 rg=polizei.beschwerden
~#! tid=917453355
Hmm ich mache oefter was mit mehrern Charakteren.
Da ist weder einer idle noch ein Script ....

Key

-----------------------------------------------------------------------------



Re: Denkanstoss (Key, 28. Jan 1999, 15:05:58):
~#! rn=Tsunami rt=917532215 rg=polizei.beschwerden
~#! tid=917532215
Aeh Tsunami .... das sind nur kurze abwesenheiten, bei sowas ist noch niemand
als Script ins Gefaengnis geworfen worden oder aehnliches.

Bisher gab es nur 2 Faelle. 
Der erste war Stundenlang ideln in Drakonien,
der zweitte (Afmodif) war 5 Stunden lang idle.

Key

-----------------------------------------------------------------------------



Re: Denkanstoss (Koomi, 28. Jan 1999, 15:10:12):
~#! rn=Tsunami rt=917532215 rg=polizei.beschwerden
~#! tid=917532215
Tja, anscheinend scheint wohl eine hemdsaermelige Politik in Mode zu kommen,
wie bei den disziplinaeren Massnahmen (Afmodif) und auch die ganzen
Aenderungen, die so in der letzten Zeit passiert sind.

Schade, dass kaum mehr der Polizeimagier hier sichtbare Zeichen setzt, die
eine Mail an Highlander (wegen Afmodif) waere wohl angebrachter gewesen. 

Flamed ruhig mal wieder, mich lassen eigentlich so ziemlich alle Sachen immer
oefter kalt, weilso oder so nichts daran geaendert wird.

Just my .02 

Halbelf Koomi

-----------------------------------------------------------------------------



Re: Re: Denkanstoss (Tsunami, 28. Jan 1999, 15:10:16):
~#! rn=Key rt=917532358 rg=polizei.beschwerden
~#! tid=917532215
Hmmm Key,

Ich habe schon einige Male ganz frueh am Morgen eingeloggt, und gemudded,
dann kam der Gast, auf den ich gewartet hatte, unerwartet frueher und ganz
leise in den Computerraum, so dass ich grad noch schnell das Fenster zumachen
konnte und halt dort stehenblieb wo ich grad war. Und dann war ich den ganzen
Tag ausser Haus, d.h. idle fuer mehr als 8 Stunden...

Sowas kann passieren

 >>Tsunami (mudded meistens heimlich, leider).

-----------------------------------------------------------------------------



Re^12: Was soll das? (Velocity, 28. Jan 1999, 15:10:28):
~#! rn=Zarniya rt=917532047 rg=polizei.beschwerden
~#! tid=917453355
Naja, Scripten ist doch erlaubt, wenn man vor dem Rechner sitzt, und zudem
dabei niemanden stoert...
Ansprechbar bin ich auch, aber nicht im Uebescroll, sondern auf dem anderen
Screen, wo sich der Zweitie ruhig ne nette Gegend anguggt, und alle Minute mal
auf den ersten Screen um zu schauen, wie es beim Ueben Fortschritte erziehlt
werden.

-----------------------------------------------------------------------------



Re^3: Denkanstoss (Key, 28. Jan 1999, 15:11:58):
~#! rn=Tsunami rt=917532616 rg=polizei.beschwerden
~#! tid=917532215
Aber da stehste doch net an nem Gegner, den Du nicht killen willst, der nicht
autoattack ist, und metzelst ihn?

Ich bin auch oft genug stundenlang idle, aber es ist noch nix passiert ...
logisch, ich steh meist im haus :)

Key

-----------------------------------------------------------------------------



Re^4: Denkanstoss (Tsunami, 28. Jan 1999, 15:57:52):
~#! rn=Key rt=917532718 rg=polizei.beschwerden
~#! tid=917532215
Key schreibt:

>Aber da stehste doch net an nem Gegner, den Du nicht killen willst, der nicht
>autoattack ist, und metzelst ihn?


Hmmm Key,

Stell Dir vor, Du bist grad super ausgeruestet und startest Dein Wegeskript
(sowas ist erlaubt, wenn man nicht commands einbaut, wie oeffne Tuer und so)
in ein Para-Metzelgebiet wie z.B. die Para-Eismine (*hihi* Eigenwerbung)
flitzt. Und das Wegskript bringt Dich in die unterste Ebene wo ein 
autoattack-Lauf-NPC herumrollt. In der Zwischenzeit wirst Du vom Schirm 
gerissen und da steht dann dein Erstie/Zweitie/wasauchimmer, idelnd, wird 
aber staendig vom Lauf-NPC-angegriffen. Sowas kann passieren.

Zu Velocity: ein Raum-untersuche-skript ist hier nicht erlaubt, auch wenn man 
am Schirm sitzt und dabei zuguckt ;)



 >>Tsunami.

-----------------------------------------------------------------------------



Re^5: Denkanstoss (Velocity, 28. Jan 1999, 16:01:04):
~#! rn=Tsunami rt=917535472 rg=polizei.beschwerden
~#! tid=917532215
Das meine ich ja auch nicht...ich schaue mir per hand in Ruhe den Raum an -
das ist interessant und macht Spass. Nur ewig in den Screen zu starren, wenn
der Uebemetzelscroll laeuft, das ist doch wohl oede, oder? Deswegen frag ich
ja: Ists erlaubt, mit Erstie/Zweitie zu ueben (das per Script) und nebenbei
sich mit Zweite/Erstie nette Gegenden (per Hand) anguggen, wenn im Uebenden
ein weg mit Hinweis auf den anderen Charackter gesetzt ist?
Velo.

-----------------------------------------------------------------------------



Re^6: Denkanstoss (Anatol, 28. Jan 1999, 16:37:01):
~#! rn=Velocity rt=917535664 rg=polizei.beschwerden
~#! tid=917532215
Gib Dir die Antwort selbst, Velo, dafuer reicht die Skriptdefinition
allemal. Wenn Du auf ein "Ich darf es" kommst, denk bitte nochmal nach.

Und zu Tsunami: Ich denke mal, es gibt einen gewissen Ermessensspielraum.
Innerhalb dessen man sehr wohl unterscheiden kann, ob irgendein Spieler
vom Schirm oder aus der Leitung flog oder ob jemand einfach nur Karate
ueben moechte - auf nicht vorgesehene Art.

Anatol


-----------------------------------------------------------------------------



Re^3: Denkanstoss (Trancefear, 28. Jan 1999, 21:15:17):
~#! rn=Tsunami rt=917532616 rg=polizei.beschwerden
~#! tid=917532215
Naja dann mach doch das Fenster *zu* statt es nur wegzulegen. Dabei ist die
Verbindung dann weg und du selbst einige Sekunden spaeter im Netztotenraum.
Also das ist keine Ausrede...

tf

-----------------------------------------------------------------------------



Re: Re: Was soll das? (Belgariad, 29. Jan 1999, 00:38:14):
~#! rn=Orktoeter rt=917456957 rg=polizei.beschwerden
~#! tid=917453355
Naja es heisst _unbeaufsichtigte_ scripte sind verboten. Wenn er aber nur in
dem Raum idlet, kann er doch nix dafuer das das Monster nicht stark genug ist.
Da kannste jedem Kaempfer der mit ner popelwaffe rumlaeuft und Taktik auf 100
hat die Gildenfaehigkeiten auf 5% heruntersetzen. Der bei Helix Pomata auch
NULL Damage ab und macht eventuell auch keinen.

Belle

-----------------------------------------------------------------------------



Re: Denkanstoss (Belgariad, 29. Jan 1999, 00:54:28):
~#! rn=Tsunami rt=917532215 rg=polizei.beschwerden
~#! tid=917532215
Sorry Meister ich bin mit dir einer Meinung bis auf den Teil mit den
Todesfallen. Wenn ich irgend etwas finde wo es heisst das solltest du lieber
nicht untersuchen bin ich bisher 2 Mal gestorben, man koennte sagen zurecht,
aber es gibt eine Stelle wo sich hinter dem Satz 'das solltest du besser nicht
untersuchen' eine 'Belohnung' versteckt.

Gegen Unt-Tank-Uebescripte

-----------------------------------------------------------------------------



Re^3: Denkanstoss (Marcus, 29. Jan 1999, 01:35:13):
~#! rn=Tsunami rt=917532616 rg=polizei.beschwerden
~#! tid=917532215
Check.

Ich hab nur mal aus Frust im Irc wirre Zeichen getippt und bin dann mit meinen
Freunden weggegangen... Als ich wieder heim kam, hatte die Feuerwehr die 
Wohnung aufgebrochen, weil jemand auf dem Channel dachte, ich waere tot 
umgefallen.

Um 2 Uhr nachts der Polizeiwache erklaeren, wie das passieren konnte, ist 
nict gerade lustig ;)

CIao, Marcus

-----------------------------------------------------------------------------



Idle oder Scroll (Augra, 29. Jan 1999, 19:54:04):

Hi,

Fur findoge Sherrifs gibt es doch sicher eine Moeglichkeit, festzustellen, ob
ein Spieler uebt (oder sonst was scroll-intensives treibt). Und wenns ein
echtes Cleverle ist, kann er die Taetigkeiten sicher auch unterbinden und den
Spieler DANN ansprechen. Wenn er dann noch nicht muckst, sollte er wirklich
idle sein. 


(hm, jetzt kommen sicher weitere Ausnahmen)

A.W.

-----------------------------------------------------------------------------



Re: Denkanstoss (Jiddu, 30. Jan 1999, 00:38:23):
~#! rn=Tsunami rt=917532215 rg=polizei.beschwerden
~#! tid=917532215
Wenn du mit dem "Uszuki-wasauchimmer" einen Karate-Angriff meinst .. wir sind
Server-sided Scripts und geben den befehl dazu nicht jede Runde extra ein..
ausser ich mach irgendwie schon lange was falsch :)
Jiddu.

-----------------------------------------------------------------------------



Re^7: Was soll das? (Asmodis,  2. Feb 1999, 00:55:13):
~#! rn=Householder rt=917458059 rg=polizei.beschwerden
~#! tid=917453355
Wo sind nur die alten Zeiten geblieben, als in einem solchen fall der Spieler
erstmal ins jail geschickt wurde, anstatt an ihm und seinem gegner
herumzupfuschen.
Mag sein dass er einen Fehler gemacht hat, aber die Reaktion vom Magier war
wirklich nicht die feine englische Art ...

-----------------------------------------------------------------------------



Re^8: Was soll das? (Cymonk,  2. Feb 1999, 00:56:34):
~#! rn=Asmodis rt=917913313 rg=polizei.beschwerden
~#! tid=917453355
hmmm...
von den alten zeiten von denen du redest, gab's das jail noch gar nicht
oder? :)

cy

-----------------------------------------------------------------------------



Re^12: Was soll das? (Asmodis,  2. Feb 1999, 01:04:17):
~#! rn=Zarniya rt=917532047 rg=polizei.beschwerden
~#! tid=917453355
Du hast ja keine Ahnung, man kann ohne Probleme mit 2 oder 3 Charakteren
gleichzeitig spielen, wenn man es auf dem Bildschirm richtig organisiert ...

-----------------------------------------------------------------------------



Re^9: Was soll das? (Asmodis,  2. Feb 1999, 01:10:59):
~#! rn=Cymonk rt=917913394 rg=polizei.beschwerden
~#! tid=917453355
Ach was, das jail ist auch schon uralt ...

-----------------------------------------------------------------------------



Re^13: Was soll das? (Marcus,  4. Feb 1999, 16:28:01):
~#! rn=Asmodis rt=917913857 rg=polizei.beschwerden
~#! tid=917453355
Das erinnert mich an nen Besuch im Falken's Maze (ein Internet Cafe in Fuerth)
Einige der Ircerinnen hatten den MIRC auf fullscreen und alles mit winzigen
/msg windows gefuellt. 

*kopfschuettel*

Ciao, Marcus

-----------------------------------------------------------------------------



Re: Idle oder Scroll (Saladin,  4. Feb 1999, 23:41:20):
~#! rn=Augra rt=917636044 rg=polizei.beschwerden
~#! tid=917636044
Es gibt auch findige Spieler, die sich fals nicht die erwartete Meldung kommt
ausloggen.

Ich denke wenn ein Erzmagier zum Schluss kommt, dass einer scriptet er auch
einige Varianten dies festzustellen probieren wird.

Saladin

-----------------------------------------------------------------------------



Re: bierchen (Anatol, 26. Mai 1999, 00:08:46):
~#! rn=Highlander rt=927669931 rg=bekanntmachungen
~#! tid=927669931
Wie waere es, wenn Du mal WENIGER Mudpause machen wuerdest, damit Du
wenigstens einen _rudimentaeren_ Eindruck von dem hast, was hier, im
Mud Morgengrauen, so im Allgemeinen geschieht? Falls nicht, such' Dir
bitte im Interesse der Spieler einen wuerdigen Nachfolger und setze 
Dich zur Ruhe.

Ich trau' mich nicht wirklich, ein ";)" nachzuschieben.

Anatol


-----------------------------------------------------------------------------



Re: Re: bierchen (Highlander, 26. Mai 1999, 00:34:01):
~#! rn=Anatol rt=927670126 rg=polizei.beschwerden
~#! tid=927669931
Ich weiss ja nicht, was Du damit genau sagen willst, Anatol.
Wenn Du damit sagen willst, dass alles moegliche passiert, ohne das was
passiert, kann ich nur antworten mit "Wo kein Klaeger...".
Sprich ich kann nicht alles mitkriegen, aber wenn mich jemand drauf
anspricht und es womoeglich sowieso schon eine (sozus.) Wiederholungstat
ist, kann es halt doch zu Folgen kommen.  Tatsache ist
nun mal, dass fuer Magier "Finger wech von Spielern" gilt.

  HrT

-----------------------------------------------------------------------------



oh, waere es doch ein spiel! (Cymonk, 26. Mai 1999, 01:36:54):
oh welche schmach,

bierchen hat es vor mir geschafft.

irgendwie unterstellen alle opfer MEINEN fake-kills immer humoristische,
rollenspielerische beweggruende oder notwehr und lachen nur drueber. *sigh*

dabei will ich sie doch auch nur meine machtposition spueren lassen, meine
niederen instinkte entfalten, damit sie in angst und scharen vor mir fliehen.
auf die knie, sie sollen ihre ohnmaechtige hilflosigkeit angesichts meiner
erhabenheit zu spueren bekommen!

ich strafe sie immer und immer wieder mit den seelenqualen einer todessequenz!
oh ja, wie ich sie leiden lasse!

und oh nein, ich erloese sie nicht aus einer quest, der verfolgungswut
eines gefaehrlichen biests oder einem labyrinth der unterwelt, oh nein,
ich reisse sie gewaltsam aus ihrem idlen und ihrer langeweile und martere
sie mit einem besuch bei lars!

und ihre ausruestung lass ich sie auch noch selbst dorthin schleppen, oh ja!
und schwitzend sollen sie unter ihr zusammenbrechen, waehrend sie beten.

aber was ist die folge ... sie verspotten mich nur, sie wollen mich nicht
ernst nehmen, nicht winselnd mich anbeten. *heul*

ich ertrage das gelaechter nicht mehr, ich geissle mich selbst:

7 tage spielpause

CyMonk, in demut mit chaosamulett und wuerfelbecher winkend ;))

-----------------------------------------------------------------------------



Re: bierchen (Feuerwehr, 26. Mai 1999, 09:25:18):
~#! rn=Highlander rt=927669953 rg=polizei.bekanntmachungen
~#! tid=927669953
Hi!

Ich hab auch schon oefter Spieler mit Faketoden belaestigt. Koenntest Du mich
auch fuer eine Woche sperren? Die Ruhe tut mir sicher gut. Und Silvana hat
glaub ich den gleichen Spieler gefakezappt, oder nicht? Warum nicht sie,
gleiches Recht fuer alle! Weitere Fakezapper sind die meisten Magier, die ich
kenne.

Ich glaube das war grad etwas daneben, Highlander. Einfach mal Bierchen zu
verknacken, nur weil sich dort jemand aufgeregt hat, ist laecherlich.

Wenn, dann sollte man eine Verwarnung aussprechen und ueber eine einheitliche
Regelung aussprechen. Fakezappen ist naemlich fuerchterlich in.

    Feuerwehr (murmelt ganz oeffentlich was von Sonntags-Sherrifs).

PS: aehm, das zweite aussprechen bedeutet 'nachdenken'.

-----------------------------------------------------------------------------



Re: oh, waere es doch ein spiel! (Larissa, 26. Mai 1999, 09:27:10):
~#! rn=Cymonk rt=927675414 rg=polizei.beschwerden
~#! tid=927675414
Also,

eine Woche Spielpause fuer das folgenlose ablaufenlassen einer
Todessequenz finde ich auch ziemlich daneben, zeigt in meinen
Augen leider einmal mehr die seltsame Auffasung von mudden des
Kollegen S*.

Lari.

-----------------------------------------------------------------------------



No comment. (Neb, 26. Mai 1999, 09:32:50):
finger peanut

Peanut ist nicht anwesend.
Zuletzt eingeloggt von: Bad Soden-Neuenhain
Zuletzt ausgeloggt: Mit, 26. Mai 1999, 00:09:02 (09:18:50)
Voller Name: Peanut der hoffnungsvolle Anfaenger
Rasse: Magier,  Gilde: Abenteurer,  Geschlecht: maennlich
Alter: 02:50:14,   Magierlevel: 20 (Lehrling)
Datum des ersten Login: Die, 25. Mai 1999, 21:12:52

P.S.: Na gut, doch nen Kommentar:
Gab es da in grauer Vorzeit nichtmal so eine aeusserst kleinkarierte Regel,
dass Magier im MorgenGrauen nur werden darf, wer Seheranforderungen oder
irgendwie sowas laestiges in der Art erfuellt? Ich meine mich schwach an sowas
erinnern zu koennen.

-----------------------------------------------------------------------------



Re: Re: oh, waere es doch ein spiel! (Bendeigid, 26. Mai 1999, 11:15:11):
~#! rn=Larissa rt=927703630 rg=polizei.beschwerden
~#! tid=927675414
Hi zusammen,

ich finde, dass es durchaus angemessen ist, dass magier dafuer "bestraft"
werden, wenn sie sich an Spielern vergehen. Faketode hin oder her, sie sind
jedenfalls KEINE akzeptable Art, sich an Spielern fuer was auch immer zu
raechen oder sich sonstwie mit ihnen zu amuesieren. 
Jeder weiss, dass Magier sowas koennen, und damit sollte die tatsaechliche
Durchfuehrung auch zu Beweiszwecken nicht mehr noetig sein. Ich hab keine
Ahnung, wie man da irgendwie Befriedigung draus ziehen kann, Spieler (die
miesen kleinen Wuermchen) in den Dreck zu treten. Ausser natuerlich auf
legalem Wege, also ordentliche Gegenden schreiben mit uebertrieben harten
Monstern, bzw miesen Tricks IM SPIEL! (*taetschel Grumpel*)

Was ich allerdings anmerken moechte ist die "Ungleichbehandlung". Natuerlich
soll das MG kein juristisches System werden wie RL... das ist ja elend, fuer
jeden winzigen Kram werden aufgeplusterte Gerichts... ach, egal.
Allerdings sollte ohne Ansehen der Person/Magierlevels die Strafen gleich und
konsequent sein. Wie man das umsetzt? Einfach: Verantwortlichkeit.
Ach so? hier sind zu viel Kinder oder Leute mit infantilem Gehabe? Tja.. das
ist dann (Jof sei dank) Highlanders Problem und nicht meins.

Viel geschwallt, nix gesagt:

Z'par Servu,
         Bendeigid

-----------------------------------------------------------------------------



Re: No comment. (Anatol, 26. Mai 1999, 12:03:41):
~#! rn=Neb rt=927703970 rg=polizei.beschwerden
~#! tid=927703970
Ich kann den Zweck dieses Magiers erraten. Was ich nicht erraten kann, 
ist der Grund, warum man sich hier ueber die Jofsche Gastmagierregelung
(Gastmagier sind zugelassene Magier aus Muds, welche aelter als dieses
hier sind) hinweggesetzt hat - und dem betreffenden Anfragenden nicht
einfach die letzte Distribution an den Kopf geworfen hat.

Anatol - waere ueber diesbezuegliche Aufklaerung auch dankbar.


-----------------------------------------------------------------------------



Re: Re: No comment. (Taragon, 26. Mai 1999, 12:06:55):
~#! rn=Anatol rt=927713021 rg=polizei.beschwerden
~#! tid=927703970
Naja, wenn mich mir so angucke, woher dieser Peanut kommt... da draengt sich
mir doch glatt ein ganz bestimmter Gedanke auf ...

-----------------------------------------------------------------------------



Re^3: No comment. (Rumata, 26. Mai 1999, 13:42:25):
~#! rn=Taragon rt=927713215 rg=polizei.beschwerden
~#! tid=927703970
Ja, Peanut ist ein Testmagier und zwar von Stoerti. Er dient dazu, ein
Tool fur Magier zu testen und wird in absehbarer Zeit auch wieder
verschwinden.
Der Magier ist nur zum Testen da und sollte ansonsten nirgends ins
Spiel eingreifen - falls er das doch tun sollte, bitte beschweren,
RUmata

-----------------------------------------------------------------------------



Re^3: oh, waere es doch ein spiel! (Orktoeter, 26. Mai 1999, 19:26:39):
~#! rn=Bendeigid rt=927710111 rg=polizei.beschwerden
~#! tid=927675414
Wo ist das Problem ?

Jeder Magier hat einen Magiervertrag unterschrieben und weis, dass er keinen
Freibrief hat, sondern an Regeln gebunden ist.

Wenn man jemanden "fakezapt" ist das halt auf eigenes Risiko. Wo kein Klaeger,
da kein Richter, aber wenn der Spieler das nicht als Scherz empfindet und sich
beschwert, dann wird das halt zum Problem des Magiers.

Dafuer den Sheriff anzugehen finde ich ziemlich daneben.

OrkT staerkt dem Sheriff den Ruecken.

-----------------------------------------------------------------------------



Re^4: oh, waere es doch ein spiel! (Padreic, 26. Mai 1999, 19:39:05):
~#! rn=Orktoeter rt=927739599 rg=polizei.beschwerden
~#! tid=927675414
Niemand sagt hier etwas dagegen, wenn Spieler und Magier gemeinsam ihren
Spass haben und rumwitzeln. Auch wenn ein Faketod dabei ist und alle ihren
Spass dabei haben, kein Problem (in diesen Faellen beschwert sich ja auch
keiner). Spaetestens wenn sich jemand beschwert sollte man jedoch ueberlegen,
ob man nicht vielleicht doch zu weit gegangen ist und denjenigen in Zukunft
in Ruhe lassen.
Solche Magierfaehigkeiten sind jedoch nicht dazu da, Leute nach gut duenken
zu bestrafen deren Nase einem nicht passt, oder deren Artikel man aus
irgendeinem Grund noch nicht ignoriert, das hat mit Spass imho _nichts_ zu
tun. Da es in diesem Fall ein klarer Verstoss gegen den Magiervertrag ist,
sollte sich auch niemand wundern, wenn er spaetestens nach einer Verwarnung,
eine Spielpause bekommt.

Padreic

P.S.: Ich traue unserem Gerichtswesen durchaus zu, zu unterscheiden ob es
sich um Rache oder um einen schlechten Scherz gehandelt hat.

P.P.S.:Es ist fuer einen Magier nun wirklich kein Problem einem Spieler aus
dem Weg zu gehn oder ihn zu ignorieren.

-----------------------------------------------------------------------------



Re^4: No comment. (Stoerti, 26. Mai 1999, 20:36:20):
~#! rn=Rumata rt=927718945 rg=polizei.beschwerden
~#! tid=927703970
er greift nicht ins spiel ein und zwar in nicht der geringsten weise.
das nur als statement. ansonsten lass ich mich auch nicht weiter zu
irgendwelchen flames, threads,pruegeleien und so weiter ein. 
1. is mir das zu doof.
2. habe ich dem magier,der peanut gewizzt hat,zu danken,das er es getan hat
und werde sein vertrauen nicht enttaeuschen.
3. ich frag mich manchmal echt, wie alt die leute sind, die hier rumflamen. 
von manchen weiss ichs in etwa und kann nur sagen: traurigtraurig und: wenn
euer studium vorbei ist und ihr in der freien wirtschaft arbeiten solltet,was
macht ihr dann eigentlich? 

-----------------------------------------------------------------------------



Re^3: bierchen (Sting, 26. Mai 1999, 23:58:06):
~#! rn=Highlander rt=927671641 rg=polizei.beschwerden
~#! tid=927669931
Tut mir leid Highlander, ich schreibe normal nie gern was in der MPA, da es in
90% der Faelle nur zu Flames fuehrt (wie auch hier wieder), aber ich kann nur
sagen: Denk das naechste mal gruendlicher nach, bevor Du sowas tust, und
ueberlege mal wie oft sowas schon vorgekommen ist (ja auch schon ohne direkte
Einwilligung eines Spielers), dann lies mal ab und zu MPA und/oder frag bevor
du solche Sanktionen verhaengst mal deine Mit-Magier nach deren Meinung (ich
mag eh keine Leute die Entscheidungen alleine treffen, sorry)... Desweiteren:
Ok, der Spieler hat sich beschwert. Na schoen. Damit ist er vermutlich der
erste der sowas getan hat... Ist das ein Grund _EINE_ Woche Spielpause zu
verhaengen? Wenn Du das tatsaechlich so siehst, dann tust Du mir leid,
vielleicht solltest Du wirklich mal wieder mehr hier sein, und bissl spielen
oder sonstwas, mit der Zeit verliert man vermutlich den Sinn fuer sowas (und,
_nein_ ich bin nicht der Meinung das man sowas auch entscheiden kann ohne hier
zu sein, denn auf dieses Argument warte ich eigentlich nur :))

Sting
PS: Hoer dich mal um, wie die Meinungen anderer dazu sind (vor allem auch der
zahlreichen Spieler...)

-----------------------------------------------------------------------------



Re^4: bierchen (Isnogood, 27. Mai 1999, 00:09:19):
~#! rn=Sting rt=927755886 rg=polizei.beschwerden
~#! tid=927669931
Na gut, ich wollte eigentlich meinem Mund zu diesem Thread halten,
aber da Sting gemeint hat, H* sollte sich mal die Meinung der
Spieler anhoeren:
Vollste Zustimmung Highlander und ich will auch meine Gruende nennen:
1.) Ein Fake Tod ist eine Belaestigung des Spielers, der sich
etliche Zeit in der Todessequenz rumquelen muss. Das ist ein
hanz eindeutiger Fall von Machtmissbruach und Spielerbelaestigung
und damit ein klarer Verstoss gegen den Magiervertrag. Daran aendert sich 
auch ueberhaupt nichts, wenn in der Vergangenheit anders verfahren
worden ist.
2.) Die Beweggruende fuer die Aktion verschlimmern das ganze noch,
Wenn hier in Zukunft jeder Magier, dem irgendein Thread in der MPA nicht 
passt sowas macht, koennen wir das Mud gleich ganz zu machen.
Es gibt wahrlich genug moeglich, von sowas nicht belaestigt zu werden,
wenn man es nicht moechte, fuer Spieler und erst recht fuer Magier.

Das ganze hat uebrigens imho nichts damit zu tun, wie haeufig man in
einem Mud ist, sondern ist schlicht und einfach einde Frage des
Anstandes und des Benhmens andern gegenueber.

Isno*

-----------------------------------------------------------------------------



Re^5: bierchen (Patryn, 27. Mai 1999, 01:10:24):
~#! rn=Isnogood rt=927756559 rg=polizei.beschwerden
~#! tid=927669931
oh gott, magier...verdammt seiet ihr allesamt, antichristen.
gleich eine ganze todessequenz muss man ueber sich ergehen lassen, und alle
anderen lachen auch noch darueber!!! sieht denn keiner mein leiden, meine
todesqual?!
fuer euch erleide ich diese schlimmste form aller spielerbelaestigungen,
ich bin der neue mertyrer! huldigt mich und zollt mir beifall,
ihr gotteslaesterer...
umm, oh...nun hab ich mich wohl etwas reingesteigert :)
wollte mich nur mal in isnogood versetzten *grins*

------
patryn

-----------------------------------------------------------------------------



Re^6: bierchen (Isnogood, 27. Mai 1999, 01:12:13):
~#! rn=Patryn rt=927760224 rg=polizei.beschwerden
~#! tid=927669931
Siehst du, genau das meinte ich mit Anstand

-----------------------------------------------------------------------------



Re^3: oh, waere es doch ein spiel! (Tunixgut, 27. Mai 1999, 07:12:44):
~#! rn=Bendeigid rt=927710111 rg=polizei.beschwerden
~#! tid=927675414
es ist immer wieder amuesant, dass sich gerade diejenigen an offiziellen
Stellen beschweren, die in anderen Muds am meisten dadurch auffallen, dass sie
einen Mordsspass daran haben, andere Leute rauszukicken, weil ihnen deren Nase
nicht passt...

Aber gut, das hat mit HrT nuescht zu tun...

's Karate-Zwerchle.

-----------------------------------------------------------------------------



Re^4: bierchen (Padreic, 27. Mai 1999, 10:11:09):
~#! rn=Sting rt=927755886 rg=polizei.beschwerden
~#! tid=927669931
Nicht Du auch noch...
Wie kommt es eigentlich das sich hier jetzt jeder meint zu etwas aeussern zu
muessen, bei dem zumindest die allermeisten gar nicht wissen worum es geht?
Versichern kann ich Dir, das sich mehrere aktive EMs fuer eine solche
Verwarnung ausgesprochen haben.

Padreic, den Thread nun ignorierend.

-----------------------------------------------------------------------------



Re^5: bierchen (Jasper, 27. Mai 1999, 11:09:25):
~#! rn=Padreic rt=927792669 rg=polizei.beschwerden
~#! tid=927669931


Jasper spielt die 'no comment'-Karte.


PS: Komm ich jetzt ins Fernsehn??? :)

-----------------------------------------------------------------------------



Re^5: bierchen (Arancia, 27. Mai 1999, 13:08:41):
~#! rn=Isnogood rt=927756559 rg=polizei.beschwerden
~#! tid=927669931
Erstens fllt mir auf, da Euch irgendwie ne ganze Menge Humor und Gelassenheit
abgeht.
Zweitens wundere ich mich, da ihr zwei Menschen die Fhigkeit absprecht, ein
Problem selbstndig zu lsen.
Drittens empfehle ich einen Sandsack um Eure unterschwelligen Aggressionen
loszuwerden.
Viertens ist chaoslausche ohne Bierchens Geschwafel nur noch halb so
interessant und uns wird einfach mal fr eine Woche ein Gildenmagier geklaut -
hm.. darf ich mich jetzt beim Sherrif beschweren? *lach*

Eine amsierte Apfelsine

-----------------------------------------------------------------------------



Re^7: bierchen (Mahatmu, 27. Mai 1999, 14:09:00):
~#! rn=Arancia rt=927803447 rg=polizei.beschwerden
~#! tid=927669931
Und sechstens faellt mir auf, dass es nunmal ein (kleinerer) Verstoss
gegen den Vertrag: Nerve keinen Spieler ist und es halt irgendeinen,
damit moechte ich nicht andeuten das Bierchen unwichtig sei, Magier
erwischt hat. Ihr kennt das Ding mit der Radarfalle?

Mahatmu

-----------------------------------------------------------------------------



Re^8: bierchen (Wurzel, 27. Mai 1999, 14:51:54):
~#! rn=Mahatmu rt=927806940 rg=polizei.beschwerden
~#! tid=927669931
los diskutiert weiter! damit bierchen wenigstens was zum lesen hat, wenn die
woche um ist.
nochmal das ganze aufsummiert, falls ihr schon wieder was vergessen habt:

1. fakezap ist halb so wild, kommt quasi zwischen rknuddel und knutschen, ist
eine normale und alltaegliche sache, ueber die man sich gefaelligst nicht
aufzuregen hat.
2. falls man sich doch aufregt, ist es ein verstoss gegen den magiervertrag
und als solcher zu behandeln.

hm, irgendwie haben beide recht... komisch

jedenfalls hab ich jetzt mit dem lesen des threads und schreiben dieses
artikels mehr zeit verbracht als stoerti i der todessequenz. wer wird jetzt
dafuer gesperrt?

wurzel

-----------------------------------------------------------------------------



Re^9: bierchen (Bambulko, 27. Mai 1999, 15:11:22):
~#! rn=Wurzel rt=927809514 rg=polizei.beschwerden
~#! tid=927669931
einfach selbstloeschung....

bambulko

-----------------------------------------------------------------------------



Re^4: oh, waere es doch ein spiel! (Stoerti, 27. Mai 1999, 18:49:31):
~#! rn=Tunixgut rt=927781964 rg=polizei.beschwerden
~#! tid=927675414
naja, 
ich glaube tunixgut, wenn du hier im mg auftauchst,als level 0 spieler, den
kein mensch kennt und sprueche,die ich hier nicht weiter erklaeren und
wiedergeben moechte auf den kanaelen und per rufe ablaesst, ich schaetze, dann
wirst du 
hier _auch_ von irgendeinem magier disconnected werden. 
oder ins jail gemoved. 

(doch,ich geb mal was in zensierter form wieder)
[Allgemein:KeineAhnungWieDerChatHiess]Ey,ihr wich*, was isn das fuern schei*
mud hier. alles asoziale wich* 

TNG? Soll ich noch mehr schreiben oder gar mal das log raussuchen?
Ich denke, gerade DU solltest dir ueberlegen, was du hier schreibst.

Das war uebrigens,nachdem! du dich geloescht hast. 
Beim besten willen, ich kenne sicher nicht alle gateways, von denen die leute
reinkommen. im uebrigen waer das in dieser situation eh egal gewesen.

stoerti *fragt sich langsam wirklich...ich lass es besser

-----------------------------------------------------------------------------



Re: Re: bierchen (Silvana, 27. Mai 1999, 20:41:27):
~#! rn=Feuerwehr rt=927703518 rg=polizei.beschwerden
~#! tid=927669953
Einspruch, Euer 112!

Wenn sich jemand nen Faketod in meinem Namen einhandelt, ist das normalerweise
ein Monster von mir. Wenn ich jemanden zappe, dann richtig.

Silvana

-----------------------------------------------------------------------------



Re^4: bierchen (Highlander, 27. Mai 1999, 21:19:46):
~#! rn=Sting rt=927755886 rg=polizei.beschwerden
~#! tid=927669931
Ohne jetzt grade mal die weiteren Artikel zu lesen - das war in diesem
nicht das erste Mal. Allerdings breite ich auch nicht alles vor dem ganzen
Mud aus. Ich weiss, dass ich dafuer oefter mal mehr Feuer kriege, als es
sonst vielleicht der Fall ist. Aber was jemand so alles anstellt, geht
nicht unbedingt alle was an, es reicht, wenn er, der Beschwerdefuehrer und
ich es wissen. Plus eventuelle Personen, die's halt so mitbekommen habe und
oft noch ein oder mehrere Es.

  HrT

-----------------------------------------------------------------------------



Re^5: No comment. (Muadib, 27. Mai 1999, 21:49:04):
~#! rn=Stoerti rt=927743780 rg=polizei.beschwerden
~#! tid=927703970
eigentlich is es mir egal aber dennoch zu punkt 3: rumflamen is ne sehr gute
uebung fuer die freie wirtschaft

-----------------------------------------------------------------------------



Re^5: oh, waere es doch ein spiel! (Larissa, 28. Mai 1999, 08:57:51):
~#! rn=Stoerti rt=927823771 rg=polizei.beschwerden
~#! tid=927675414
Hm,

wolltest Du nicht mit dem Thread aufhoeren, und weitere flames ignorieren?

Also, ich finde die ganze Angelegenheit enorm amuesant, hab naemlich gerade
eine Woche Urlaub (von der freiene Wirtschaft wohlgemerkt).

Lari :-))

-----------------------------------------------------------------------------



Wieso eigentlich die Aufregung (Srabi, 28. Mai 1999, 10:18:37):
Hi Leute,

na ja, Bierchen hat angeblich Stoertie gezappt, da frage ich mich, Na und???

Was ich allerdings nicht verstehe, ist die ganze Aufregung drumherum? Bierchen
hat eine Spielpause bekommen, was ich von Highlander zwar nicht verstehe, aber
laut Magiervertrag ist das ja leider verboten zu zappen.
Auf der anderen Seite kann ich Stoertie nicht verstehen, der daraus so einen
Wirbel macht und das ganze MUD rebellisch macht deswegen. Jeder kann mal aus
einer guten Laune heraus, von einem
Magier gezappt werden, na und, einen Tod mehr, die Ruestung ist ja noch da.

Also Leute, beruhigt Euch doch mal langsam wieder.

Gruss Srabi, der noch nicht gezappt worden ist

-----------------------------------------------------------------------------



Re: Re: Wieso eigentlich die Aufregung (Trug, 28. Mai 1999, 10:25:39):
~#! rn=Amaryllis rt=927879691 rg=polizei.beschwerden
~#! tid=927879517
du hast magierwillkuerende magier vergessen.

So, beruhigt euch doch mal alle, das ist ja arg.

Trug.


-----------------------------------------------------------------------------



Re^4: bierchen (Grimmborn, 28. Mai 1999, 12:26:03):
~#! rn=Sting rt=927755886 rg=polizei.beschwerden
~#! tid=927669931
Ich danke Dir fuer die hiermit von Dir vergebene Erlaubnis, Dich (fake)zappen
zu duerfen. Mir passt naemlich Dein Artikel nicht. Und Du bist ja der Meinung
das reicht, um einen Spieler so angehen zu duerfen.

Und zu Deinem PS: Wenn ich mich umhoiere finde ich auch Leute, die da meiner
Meinung sind.

Grimmborn der Atheist "Ooops, habe ich doch glatt das 'fake' vergessen"

-----------------------------------------------------------------------------



Re^5: bierchen (Mindblade, 29. Mai 1999, 18:13:18):
~#! rn=Grimmborn rt=927887163 rg=polizei.beschwerden
~#! tid=927669931

Wenn sich hier so einige Leute schon masslos ueber Fake-Tod-Rechtfertigungen
unterhalrten muessen..bitte, aber dann bleibt doch mal in _einem_ Thread, den
man geflissentlich uebergehen kann.

-----------------------------------------------------------------------------



Re^6: Schnitzeljagd (war: Re: bierchen) (Taragon, 29. Mai 1999, 18:23:52):
~#! rn=Mindblade rt=927994398 rg=polizei.beschwerden
~#! tid=927669931
Ach quatsch... Threads aufteilen ist genauso lustig wie Schnitzeljagd :)

-----------------------------------------------------------------------------



Re^5: bierchen (Gor, 31. Mai 1999, 10:26:51):
~#! rn=Grimmborn rt=927887163 rg=polizei.beschwerden
~#! tid=927669931
Schoen und gut Grimmi schau doch erst mal ob fake-zappebn ueberhaupt noch geht
bevor du sowas schreibst.

Bei Gor gehts nimmer.

-----------------------------------------------------------------------------



Re^6: bierchen (Baboon, 31. Mai 1999, 10:29:45):
~#! rn=Gor rt=928139211 rg=polizei.beschwerden
~#! tid=927669931
Fake zappen geht immer. Es ist nur die Frage, wieviel
aufwand man dafuer zu treiben bereit ist.

BaBOOn() sagt niemals nie.

-----------------------------------------------------------------------------



Scheissgegend (Gloin, 18. Jun 1999, 21:33:16):

  Du schlaegst Narcoror zu Brei.
Narcoror wird ein wenig tranchiert.
  Narcoror trifft Dich.
LP 175 (-5)   MP 131 (+5)
Der Magier hebt seine Hand und sagt: STIRB!
[Tod:Lars] Narcoror hat gerade Gloin umgebracht.
Dein Koerper gehorcht Dir nicht !
LP 180 (+5)  MP 136 (+5)
...
... Todeszene ...

Muss das sein? Gloin

-----------------------------------------------------------------------------



Re: Scheissgegend (Morgoth, 19. Jun 1999, 12:43:26):
~#! rn=Gloin rt=929734396 rg=polizei.beschwerden
~#! tid=929734396
Klar, wenn Du zu doof bist schon. Freut mich, dass es DICH erwischt hat. War
wohl eine dumme KL, die Du bekommen hast, was?

M* dreckig lachend 

-----------------------------------------------------------------------------



Re: Re: Scheissgegend (Tatjana, 19. Jun 1999, 17:28:33):
~#! rn=Morgoth rt=929789006 rg=polizei.beschwerden
~#! tid=929734396
Muss man das jetzt verstehen?

-----------------------------------------------------------------------------



Re: Re: Scheissgegend (Gloin, 19. Jun 1999, 18:53:58):
~#! rn=Morgoth rt=929789006 rg=polizei.beschwerden
~#! tid=929734396
>ex magier
Der Magier blickt Dich mit seinen gluehenden Augen sehr boese an. Um seinen 
Koerper schimmert eine deutliche Aura aus Magie. So klein und unscheinbar er
aussehen mag, so maechtig scheint er zu sein.
100 %
Er traegt bei sich:  
Ein Zellenschluessel.
...
>id magier
Du identifizierst Narcoror.
Narcoror ist von boeser Gesinnung.
Ansonsten kannst Du nichts besonderes an ihm erkennen.
...
LP 226 (+3)  MP 142 (+5)
  Du greifst Narcoror mit dem Baumstamm an.
  Du triffst Narcoror.
Der Magier hebt seine Hand und sagt: STIRB!
[Tod:Lars] Narcoror hat gerade Gloin umgebracht.
Dein Koerper gehorcht Dir nicht !
Dein Koerper gehorcht Dir nicht !
LP 226   MP 147 (+5)

PS: Der Umhang des Todes hilft jedenfalls nicht :)
PPS: Ich schlage den Goettern folgendes vor: mv morgoth.o semmel.o

Gloin

-----------------------------------------------------------------------------



Re^3: Scheissgegend (Tilly, 19. Jun 1999, 18:57:08):
~#! rn=Gloin rt=929811238 rg=polizei.beschwerden
~#! tid=929734396
Also nee, ich versteh das nicht. Wieso legt Ihr Euch mit Magiern an. Unsere
Willkuer und Grausamkeit sollte doch hinreichend bekannt sein.

 Tilly *sein zap'em-stirnband anziehend*

-----------------------------------------------------------------------------



Re^3: Scheissgegend (Mahatmu, 19. Jun 1999, 18:57:30):
~#! rn=Gloin rt=929811238 rg=polizei.beschwerden
~#! tid=929734396
Du nimmst die Schriftrolle.
Du nimmst 5511 Muenzen.
Du oeffnest eine Holztuer.
Der Magier haelt Dich auf.
  Du greifst Narcoror mit zwergenharten Faeusten an.
Der Magier hebt seine Hand und sagt: STIRB!
[Tod:Lars] Narcoror hat gerade Gloin umgebracht.

Aehm, ja. Toll. Bin ueberaus begeistert. Ich weiss nicht, wenn sich
Morgoth jetzt noch ob der Tode und seiner misslungenen GQ freut,
ist er wirklich absonderlich. Aber das ist subjektiv.

-----------------------------------------------------------------------------



Re^4: Scheissgegend (Jasper, 21. Jun 1999, 23:37:43):
~#! rn=Mahatmu rt=929811450 rg=polizei.beschwerden
~#! tid=929734396
nuja wollte mal gerade schaun ob morgoth wirklich so fies ist.
enttaeuscht musste ich aber feststellen dass es tatsaechlich einen
schutz gegen dieses 'power word death' gibt :)
wie gut/leicht man auf diesen hinweis kommt, indem man die gegend
da erforscht, weiss ich allerdings nicht.


jasper findet den schutz uebrigens viel zu gut :)

-----------------------------------------------------------------------------



Re^3: bierchen (Tanis, 23. Jun 1999, 23:57:18):
~#! rn=Highlander rt=927671641 rg=polizei.beschwerden
~#! tid=927669931
> Tatsache ist nun mal, dass fuer Magier "Finger wech von Spielern" gilt.

Also wenn ich das so lese, zweifel ich wirklich langsam an meinen verstaendnis
fuer das alles ....
Auf der einen Seite diese aktion mit bierchen, auf der anderen seite die
aktion von paracelsus gegen afmodif, was, wenn ich das richtig gelesen habe,
nen astreiner pk (in dem fall halt indirekt) war ... oki, war falsch, was
afmodif gemacht hat, und strafe muss sein, aber pk is pk ... und auch da muss
strafe sein ... wo kommen wir denn hin, wenn jeder selbstjustiz veruebt? ...
dann kann ich also auch, wenn ich irgendwo nen idelnden spieler seh, der
kaempft, ihn einfach umhauen? Is ja verboten was er macht, und strafe muss
sschliesslich sein, oder wie?

Tanis ... kopfschuettelnd

PS: achso, ich les grad die rubrik von artikel 1 an, daher auch das mit
afmodif ... is zwar von januar, aber passt grad so schoen

-----------------------------------------------------------------------------



Re: So ein Trottel ! (Isis, 17. Dez 1999, 17:37:08):
~#! rn=Gast2 rt=945448534 rg=polizei.beschwerden
~#! tid=945448534
hatt ich gestern auch...ich vermute nen trojaner, der einfach logins und
passwoerter speichert und verbindungen aufbaut...gafunden hab ich aber noch
nix...:(

Isis

-----------------------------------------------------------------------------



Re: Re: So ein Trottel ! (Gast2, 17. Dez 1999, 17:38:28):
~#! rn=Isis rt=945448628 rg=polizei.beschwerden
~#! tid=945448534
trojaner kann nicht sein. sowas gibts auf meinem unix rechner nicht

-----------------------------------------------------------------------------



Anzeige (Puk,  8. Sep 2000, 20:01:06):

Tag zusammen,
Leider musste ich feststellen das es einige Leute hier in diesem Mud gibt die
sowas wie Privatspaehre nicht kennen oder einfach darauf kotzen.
In diesem fall war es ein _noch_ unbekannter Magier der es nicht lassen konnte
invis ein Gespraech zu belauschen und dieses Gespraech auch nich mitzuloggen.

Das reichte ihm allerdings nicht, er musste einen unvollstaendigen Schnitt
dieses Gespraeches auch noch versenden um sich richtig in den Mittelpunkt zu
setzen.

Ich bin der Meinung das ihr das mal wissen solltet und vielleicht kommt dem
ein oder anderen das ganze Thema auch bekannt vor.
Also, selbst hier BB is watching you in form von invis Mags.
Dies mag nicht alle Magier betreffen, vielleicht auch nur diesen einen aber
ich denke sowas ist einfach nur niveaulos.

Wer sowas macht nur um sich selber wichtiger zu nehmen als er selber ist
gehoert nichteinmal verachtet, er exestiert einfach nicht.

Traurig traurig das sowas moeglich ist bzw. gemacht wird.
Ich kann verstehen das mags auch mal gerne Invis ein gebiet beobachten um zu
sehen wie was auf das Spielgeschehen wirkt, aber ich glaub nicht das der Sinn
des invis oben aufgeuehrten punkt betreffen.

Jeder soll sich seine eigenen Gedanken machen , da hilft auch leider keine
grosse Debatte.

Puk, ein trauriges Chaoskaetzchen


-----------------------------------------------------------------------------



Re: Anzeige (Sky,  8. Sep 2000, 20:04:26):
~#! rn=Puk rt=968436066 rg=polizei.beschwerden
~#! tid=968436066
wer irgendwelchen logs glauben schenkt ist eh selber schuld.
da liegt das problem glaub eher an den leuten die die logs lesen, nicht an
denen die sie erstellen.
irgendwas schreiben und verschicken kann ja jeder.

aber du hast natuerlich recht

sky, hat auch schon erfahrung ueber verschickte logs, was er angeblich gemacht
und getan haben soll. 

-----------------------------------------------------------------------------



Re: Re: Anzeige (Nicolai,  8. Sep 2000, 20:18:04):
~#! rn=Cisou rt=968436996 rg=polizei.beschwerden
~#! tid=968436066
Auxh wenn Du recht hast (bis auf dass, dass man den invis-status diskutieren
soll):
So lange Magier sogar Magier snoppen interessiert das wohl keinen.

-----------------------------------------------------------------------------



Re: Anzeige (Cisou,  8. Sep 2000, 20:41:08):
~#! rn=Puk rt=968436066 rg=polizei.beschwerden
~#! tid=968436066
Genug is genug!

Wenn hier einige Magier meinen, das in diesem Fall durchaus zu diskutierende
Privileg des "invis" missbrauchen zu koennen und Gespraeche von Spielern
waehrend einer Idelpause zu belauschen, dann ist das eine Sache. Eine andere
ist es aber wohl, derartige Gespraeche mitzuloggen und sie auch noch an Dritte
zu mailen. Es braucht mir hier KEINER mit dem Argument zu kommen, dann sollte
man sich hier eben nicht mehr ueber private Dinge unterhalten. Genau das ist
es schliesslich, was das Spiel hier zu dem werden laesst, was es ist, ein
interaktives Spielen zwischen rl und vl. Dass aber ein Magier seine dezidiert
nur auf das vl beschraenkte Kompetenz fuer eine rl Aktion missbraucht, ist
jenseits jeglichem Niveau, jeglicher jeder normalen Art von Kommunikation und
letztlich auch jenseits jeder Fairness. 

In dem konkreten Fall erwarte ich, dass derenige, der fuer diese gequirlte
Scheisse verantwortlich ist, sich hier nicht mehr blicken laesst, da er schon
so feige ist, sich nicht mal bei den Geschaedigten zu entschuldigen. So einer
moege sich doch bitte woanders mit seiner Intriganterien sein Selbstverauen
aufpeppen.

Die Elster, echt sauer, dass hier so wenige getreu dem Satz leben: "Was Du
nicht willst, das man Dir tu, das fueg auch keinem andern zu, drum lass den
andren Wurm in Ruh, denn der fuehlts grade so wie Du."

-----------------------------------------------------------------------------



Re: Anzeige (Tsunami,  8. Sep 2000, 21:01:03):
~#! rn=Puk rt=968436066 rg=polizei.beschwerden
~#! tid=968436066
Auszug aus dem Magiervertrag:

>Generell muss die Privatsphaere von Spielern geachtet werden. 
>
>Snoopen von Spielern ist nur dann erlaubt, wenn es darum geht, Fehler
>im Mud zu finden oder Ideen zu sammeln, um seinen _eigenen_ Gebiete,
>bzw. Regionen fuer die man verantwortlich ist, zu verbessern und 
>anzupassen. Es darf auf keinen Fall dafuer benutzt werden, Spieler
>ohne besonderen Grund zu beobachten, sich ueber sie lustig zu machen, 
>oder sie auszuspionieren. Wenn Spieler Post schreiben oder lesen ist 
>snoopen strengstens untersagt (Briefgeheimnis).
>Generell ist es angebracht Spieler darauf hinzuweisen, dass sie 
>gesnoopt werden.
>
>Es ist ebenso unzulaessig, andere Moeglichkeiten auszunutzen, die 
>dazu dienen Spieler zu beobachten, bzw. auszuspionieren (zB verfolgen).
>
>Insbesondere ist es STRIKT untersagt, Objekte zu schreiben, die in
>irgendeiner Weise (zB add_action(...,"",1)) 'teile mit', 'fluester'
>und aehnliche Kommunikationsbefehle abfangen, um Gespraeche von anderen
>abzuhoeren. Dies stellt einen schweren Eingriff in die Intimsphaere der
>anderen Teilnehmer dar und wird dementsprechend geahndet!


Ich denke, hier wurde gegen eine wirklich klare Regel verstossen!
Soll sich mal der Sheriff drum kuemmern bitte.

Tsunami

-----------------------------------------------------------------------------



Re: Re: Anzeige (Wurzel,  9. Sep 2000, 01:58:15):
~#! rn=Tsunami rt=968439663 rg=polizei.beschwerden
~#! tid=968436066
sheriff ist okay. alternativ auch der staatsanwalt, denn sowas ist auch
nach dem gueltigen rechtsverstaendnis nicht in ordnung.
wenn sowas einreisst, kann man das mud auch gleich dichtmachen.
ein konstruktiver vorschlag vielleicht auch mal dazu:
invis ist manchmal sehr praktisch. aber es wuerde meines erachtens reichen,
wenn man das auf den workroom beschraenken wuerde. wer sich im workroom
eines fremden magiers ueber private dinge unterhaelt, dem ist eh nicht
mehr zu helfen.
ja, ich weiss auch dass man damit nicht alle moeglichkeiten abfaengt, so
einen oder aehnlichen unfug zu treiben. aber es waere ein anfang.

wurzel

-----------------------------------------------------------------------------



Re^3: Anzeige (Nonne,  9. Sep 2000, 12:50:41):
~#! rn=Wurzel rt=968457495 rg=polizei.beschwerden
~#! tid=968436066
Tach zusammen,

gleich mit dem Kadi zu drohen ist vielleicht etwas uebertrieben. Aber die
Macht der Magier etwas einzuschraenken, faende ich nicht falsch. Es mag ja
sinnvoll sein, manchmal zu snoopen, aber darf das der Spieler nicht
mitbekommen? Skripter und andere Regelverstoesse kriegt man auch anders raus.
Daher plaediere ich dafuer, dass der Spieler eine Meldung bekommt, sobald er
gesnoopt wird.
Dass man invis nur in seinem Workroom sein kann, empfinde ich auch nicht als
Einschraenkung. Seine Gebiete kann man auch im Homemud testen und sonst faellt
mir kein Grund ein, invis den Workroom zu verlassen.
Gegen Objekte, die teile mit abfangen, kann man natuerlich nichts machen. Aber
zumindest faellt das auf, wenn Spieler merkwuerdige unsichtbare Objekt im inv
haben.
Absolut sicher machen, kann man die Privatsphaere natuerlich nicht, aber
gerade Magiern < Erzies kann man das Leben in der Beziehung schwerer machen.

Nonne, nie invis

-----------------------------------------------------------------------------



Re^4: Anzeige (Wurzel,  9. Sep 2000, 12:56:05):
~#! rn=Nonne rt=968496641 rg=polizei.beschwerden
~#! tid=968436066
absolute sicherheit gibt es da wirklich nicht. bevor ich noch anfange
genauer nachzudenken fallen mir schon zwei oder drei moeglichkeiten ein,
wie ich trotzdem schnueffeln koennte. aber wichtig scheint mir, dass mal
ein anfang gemacht wird.

wurzel

p.s. das dasein als erzmagier schuetzt uebrigens nicht davor, gleichzeitig
eine pappnase zu sein. beispiele gibt es genug.

-----------------------------------------------------------------------------



Re^4: Anzeige (Apollonia,  9. Sep 2000, 13:20:24):
~#! rn=Nonne rt=968496641 rg=polizei.beschwerden
~#! tid=968436066
Hi Ihrs,

Was soll man dazu noch sagen? Ich schliesse mich Cisous und Nonnes Meinung an.
Ich persoenlich wurde in der Vergangenheit mehrfach gesnoopt, _ohne_ dass mir
das vorher angekuendigt worden waere. Wer so was noetig hat, ist meiner
Meinung nach eh krank.

Solche Ereignisse machen einen doch nachdenklich, ob man ueberhaupt Zeit und
Arbeit ins Programmieren und Spielen hier investieren soll.

Ich geb zu, ich bin haeufiger invis, aber auch nur in meinem Workroom, wenn
ich ungestoert mpa lesen will und eh nur kurz da bin. Ich bin definitiv nicht
Magier geworden, um irgendwelchen Schabernack zu treiben.

Apollonia
(waer ohnehin schon laengst nicht mehr hier, wenn's da nicht ein paar wirklich
gute Freunde gaebe)

-----------------------------------------------------------------------------



Re^4: Anzeige (Schleicher,  9. Sep 2000, 14:10:28):
~#! rn=Nonne rt=968496641 rg=polizei.beschwerden
~#! tid=968436066
Moinsen,
naja, der Name des Magiers scheint ja wohl bekannt zu sein, stuft ihn auf
Spieler runter und schon hat sich das invis-sein und so andere belauschen fuer
ihn erledigt?!
Zu hart? Naja, andere Leute bekommen hier fuer Fake Zapps Spielpausen, aber
das is wohl OT.
Und was die Moeglichkeit des Invis-seins als solches angeht... ich nutze diese
Moeglichkeit z.B. um mal ganz in Ruhe zu schauen was ein Spieler so mit meinen
NPC's anstellt und das ist im Homemud nur sehr bedingt moeglich...
Andererseits ist auch das Magiersein nicht an Intelligenz oder Hoeflichkeit
geknuepft, warum soll ein Magier sich nicht genauso Scheisse benehmen wie
manche Spieler?!
Ich erwarte hier von niemandem nur weil er Magier ist ein korrektes Verhalten
bei manchen eher das Gegenteil aber auch das ist hier OT.
Egal, die Moral aus der Geschicht'... Wir haben ein,zwei Sheriffs also flott
an Werk und gut gerichtet.
Ich denke allerdings auch das man die Strafrechtliche Verfolgung ausserhalb
des Muds doch vielleicht als e t w a s Uebertrieben ansehen sollte.
So genug Dumm Zeuch erzaehlt ich geh wieder invis im MG spazieren ;-)

Schleicher ...nur mal so

-----------------------------------------------------------------------------



Re^5: Anzeige (Cymonk,  9. Sep 2000, 16:04:44):
~#! rn=Schleicher rt=968501428 rg=polizei.beschwerden
~#! tid=968436066
hiho,

da faellt mir zur abwechslung auch 'mal wieder eine
'unqualifizierte' bemerkung zu ein. oft wird hier wiederholt
zitiert: 'im morgengrauen existiert keine demokratie!'.

es gibt noch so einen aehnlichen spruch, den man ebenfalls
nicht oft genug zum besten geben kann:

'im internet existiert keine privatsphaere!'

darueber sollten viele hier wohl auch 'mal nachdenken.
ueberall wo 'sicherheitsluecken' (hier im bezug auf
den datenschutz) zu finden sind, werden sie auch
von irgendwelchen verwirrten seelen ausgenutzt.

das dies gerade im mg einfach moeglich ist, sollte/ ist
seit langem bekannt und sollte die spieler auch
entsprechend sensibilisieren ...

das soll jetzt keine entschuldigung oder verhamlosung
des geschehen darstellen ... aber ich moechte auch nicht
wissen, wieviele 'illegale' logfiles irgendwelcher
brisanten gespraeche unveroeffentlicht in den schubladen
der mags verstauben ...

gruss,
cy

-----------------------------------------------------------------------------



Re^5: Anzeige (Boing,  9. Sep 2000, 16:12:30):
~#! rn=Schleicher rt=968501428 rg=polizei.beschwerden
~#! tid=968436066
Der Name des Magiers ist leider nicht bekannt. Bzw. er ist dem bekannt,
der die mail mit dem Gespraech bekommen hat, aber derjenige sagt den
Namen nicht.
  Boing

-----------------------------------------------------------------------------



Re^6: Anzeige (Hight,  9. Sep 2000, 16:19:51):
~#! rn=Boing rt=968508750 rg=polizei.beschwerden
~#! tid=968436066
wird wohl auch besser sein ... nach dem wie das ganze hier ausufert haette der
kein besonders schoenes leben mehr vermute ich ... puk hat schon recht das er
den namen erstmal fuer sich behaelt (bzw. ihn nur gegenueber zustendigen
stellen aeussert) ... ich haette das zwar nicht getan abba ich finde puk's
verhalten is voellig oki 

hight schwallend

-----------------------------------------------------------------------------



Re^7: Anzeige (Padreic,  9. Sep 2000, 16:55:24):
~#! rn=Hight rt=968509191 rg=polizei.beschwerden
~#! tid=968436066
ich halte das was geschehn ist fuer sehr sehr unschoen, aber jetzt mit dem
abschaffen des snoopen und invis sein zu kommen halte ich fuer uebertrieben.
Das snoopen wird geloggt und wenn das jemand haeufiger missbraucht faellt es
genuegend Magiern die das Log im Auge haben auf. Snoopen (auch
unangekuendigtes und anonymes) hat durchaus seine Berechtigung im Spiel. Man
sollte sich sehr gut ueberlegen wo man es wirklich braucht, aber es hat
durchaus seine Berechtigung (wenn es darum geht zu sehn wie sich ein Spieler
in einem Gebiet _natuerlich_ bewegt. Die wenigsten Spieler werden z.B. Bugs
nutzen wenn sie wissen da schaut jemand zu..)
Invis ausserhalb des Workrooms sein hat eigentlich eine noch groesere
Berechtigung, z.B. wenn man als Magier unbemekrt Spielern beim kaempfen
zuschauen moechte, um sich auf dem laufenden zu halten, wie denn da so
gekaempft wird. Ein snoopen stellt naemlich einen wesentlich groesseren
Eingriff in die Privatssphaere da und kann so oft durch ein invis+verfolge
umgangen werden.
Wer diese Faehigkeiten missbraucht und erwischt wird, sollte entsprechend
bestraft werden, keine Frage. Aber ein Grund zum ueberreagieren ist es denke
ich auch nicht. Fuer laengere privat Gespraeche empfehlen sich daher spezielle
Raeume wie z.B. die Seherhaeuser in denen invis Magier angezeigt werden und
snoopts zumindest den Magiern ziemlich verdaechtig werden, so dass diese der
Sache von sich aus bereits nachgehn.

Pad*

-----------------------------------------------------------------------------



Re^6: Anzeige (Pilgrim,  9. Sep 2000, 18:19:52):
~#! rn=Cymonk rt=968508284 rg=polizei.beschwerden
~#! tid=968436066
Ich zitiere mal die MG-FAQ (das ist ja nicht das erste mal, dass wir
invis/snoop diskutieren)
"3.5. MG und die Privatsphaere. Oder: Was ist 'snoopen'?

Alle Spieler (Magier eingeschlossen) sollten sich immer und ueberall 
im MG im klaren darueber sein, dass (wirklich) private Sachen und
Gespraeche nichts im MUD zu suchen haben. Dafuer gibt es e-mail 
(nicht MUD-mail), talk, die gelbe Post, das Telefon u.s.w.. 

Es kann zu keiner Zeit und in keinem Raum 'Abhoersicherheit 
garantiert' werden.

Soviel generell zum Thema Schutz der Privatssphaere durch Einscharenkung
von invis/snoop.

Zum Thema Regeln und dem Missbrauch von Magierfaehigkeiten:
Wenn ein Magier Mist baut, sollte ja wohl der entsprechende Magier 
die entsprechenden Konsequenzen dafuer tragen muessen und nicht
die restelichen, die sich Regelkonform verhalten haben, oder?
Also sollen sich die betroffenen Spieler/EMs/Magier oder Goetter
hinsetzen und die Sache klaeren und angemessen bestrafen.

Pilgrim

-----------------------------------------------------------------------------



Re^7: Anzeige (Karis,  9. Sep 2000, 18:35:10):
~#! rn=Pilgrim rt=968516392 rg=polizei.beschwerden
~#! tid=968436066
Tja, wies aussieht, haben wir da ja einen kleinen Konflikt :)
Einerseits sagen Pilgrim und Cymonk, im Mud is alles oeffentlich.
Andererseits stehen im Magiervertrag eindeutige Vereinbarungen
bzgl. des invis-Daseins eines MAgiers und des Snoopens anderer Spieler.
Soll jetzt die FAQ, die Pilgrim grade zitiert hat, eine Entschuldigung
sein? Ein Freispruch? Oder ein Freibrief fuer alle, die schon immer mal
snoopen wollten und sich nie getraut haben?
Wir diskutieren hier viel ueber 'gesunden Menschenverstand' und/oder
'common sense'. Jeder, der ein wenig mitdenkt, weiss, dass auch das
oeffentliche Telefonnetz nicht abhoersicher ist. Trotzdem behauptet
niemand, das wirklich private Gespraeche da nicht gefuehrt werden sollen,
nur _weil die Moeglichkeit besteht_, dass man abgehoert wird.
Mit der gleichen Argumentation kann sich auch jemand entschuldigen/rausreden,
der ein Gewehr in der HAnd hatte, selbiges abgedrueckt und einen anderen
verletzt hat. Begruendung: der muss doch wissen, was mit einem Gewehr mach-
bar ist, also darf er sich nicht davor hinstellen. UNd wenn ich das 
Gewehr auch noch auf ihn gerichtet haben soll: dann muss er halt da
weggehen.
Und das laeuft dann unter 'common sense'??

Ich erwarte, dass der Anzeige von Puk nachgegangen wird. 
Ich erwarte, dass die Verantwortlichen diesen Magier ueberfuehren.
Und ich erwarte, dass sich die Verantwortlichen doch mal wieder
hier klar aeussern, was hier nun gilt. FAQ oder Magiervertrag oder
'common sense' oder 'gesunder MEnschenverstand'.

Offensichtlich ist das wohl leider notwenig. Es wird auch diesesmal
wieder nicht hinreichend sein. 

Karis.

-----------------------------------------------------------------------------



Re^8: Anzeige (Jenandra,  9. Sep 2000, 18:43:47):
~#! rn=Karis rt=968517310 rg=polizei.beschwerden
~#! tid=968436066
imho gilt sowohl faq als auch vertrag. das eindringen in die privatsphaere ist
verboten, aber man muss sich trotzdem immer darueber im klaren sein, dass bei
privatgespraechen mitgehoert werden _kann_. was nicht heisst, dass ein solcher
fall nicht geahndet werden sollte. aber nicht durch einen rundumschlag, der im
endeffekt alle magier benachteiligt.

just my 2 cents,
- Jenandra -

-----------------------------------------------------------------------------



Re^8: Anzeige (Pilgrim,  9. Sep 2000, 18:58:06):
~#! rn=Karis rt=968517310 rg=polizei.beschwerden
~#! tid=968436066
Ahe ...
ich seh hier keinen Widerspruch zwischen unseren Artikeln (Meinungen),
oder ...

Die FAQ drueckt nur den Sachverhalt aus, wie er sit: Es gibt keinen 100%igen
Schutz der Privatsphaere im MUD ... das ist ja wohl unbestritten.
Und ich hab's nur nochmal erwaehnt, weil man (auch ich) das im
Eifer des Gefaechst ... aeh Gespraechs mal ganz gerne vergessen
(ja, auch ich kann ... wie jeder Magier ... von einem hoeherleveligen
Mager gesnoopt werden (+log+...) und das steht dann i.d.R. noch nicht
mal im log/snoop file).

> Soll jetzt die FAQ, die Pilgrim grade zitiert hat, eine Entschuldigung
> sein? Ein Freispruch? Oder ein Freibrief fuer alle, die schon immer mal
> snoopen wollten und sich nie getraut haben?

Hae ... wer sagt sowas ...

In diesem Mud gibt es geschriebenen (Magiervertrag) und ungeschriebenen
'Gesetze' zum Schutz der Privatspaehre ... wer dagegen verstoesst,
gehoert bestraft ... schrieb ich das nicht?

> Jeder, der ein wenig mitdenkt, weiss, dass auch das
> oeffentliche Telefonnetz nicht abhoersicher ist. Trotzdem behauptet
> niemand, das wirklich private Gespraeche da nicht gefuehrt werden sollen,
> nur _weil die Moeglichkeit besteht_, dass man abgehoert wird.
Ach ... Du weist schon, dass jedes Fax und Telefonat, was Deutschland
verlaesst (und betritt) durch die Filter des BND's gehen (soviel
zur Privatspahere ...) Bekannt ist ja wohl inzwischen jedem, dass
insbes. die Amerikaner auch alles, was ueber den Grossen Teich geht
(und noch mehr) durch Ihre (infomations-)Filter jagen!

Und wer heutzutage noch die Konstuktionsplaene seiner Hochtechnologie
per Fax nach Israel/USA oder sonstwohin schickt, dem ist auch nicht
mehr zu helfen!

Pilgrim

-----------------------------------------------------------------------------



Re^7: Anzeige (Puk,  9. Sep 2000, 19:02:21):
~#! rn=Pilgrim rt=968516392 rg=polizei.beschwerden
~#! tid=968436066

Aehm, sorry, ich kann diese ansicht von dir nicht teilen, und wenn du glaubst
das man sich nicht im Mud privat unterhalten darf wueste ich gerne wie schnell
dieses Mud leer waere :)

Zu Padreic :
Ich stimme Padreic vollkommen zu das man das invis sein von Mags nicht
beschraenken dar oder soll. Das hab ich auch nicht beabsichtigt da es
eigentlich wieso ausser frage steht. Wenn jemand so heisst darauf ist sowas
mitzulesen/loggen wird er das auch so tun.

Was man meineserachtens aber unterdruecken koennte ist das invis ideln in
oeffentlichen Raeumen. 
Ich glaub jeder Magier kann wenn er invis ist und idelt dafuer in seinen
Workroom gehen und muss das nicht greade in irgendwelchen Raeumen tun wo man
vielleicht 'zwangslaeufig' ein Gespraech mitbekommen koennte.
Zumindest das waere meines erachtens eine verbesserung da dann zumindest kein
Magier mehr Behaupten kann : "Ich hab das zufaellig mitbekommen als ich invis
ideln in Raum XY stand..".
Das waere dann unterdrueckt und wenn der Mag dann eben sich nicht bemerkbar
macht oder den Raum genauso invis wieder verlaesst kann man ohne Bedenken
sagen das war volle Absicht und Gewollt.

Ich weiss nicht wie und ob das Programmiertechnisch moeglich ist Magier,  die
z.B laenger als 5 min invis ideln,  in ihren Workroom zu versetzen, aber
bestimmt hat da einer von euch mehr Wissen.

Puk

-----------------------------------------------------------------------------



Re^8: Anzeige (Pilgrim,  9. Sep 2000, 19:10:29):
~#! rn=Puk rt=968518941 rg=polizei.beschwerden
~#! tid=968436066
> Aehm, sorry, ich kann diese ansicht von dir nicht teilen, und wenn du
glaubst
> das man sich nicht im Mud privat unterhalten darf wueste ich gerne wie
schnell
> dieses Mud leer waere :)

Ahe ... liest hier eigentlich einer, was ich schreibe? ;-)
Wo hatt denn hier einer was von darf geschrieben ... also ich unterhalt mich
ausschliesslich privat im MUD ... Du nicht? ;-) Aber ich vergesse nie
(selten), das ich keine Garantie fuer Privatsphaere habe ... und wechsel im
Bedarfsfall zu anderen Komunikationsformen ... ein simples talk entkoppelt
einen schon vom MUD (fuer Windows gibbet neben dem klassischen talk ala
wintalk oder T42 (Tee For Two) ja noch jede Menge anderer Moeglichkeiten ...
die, man moeges es kaum galuben auch noch nihct 100% privat sind ... oder
gibbet schon
pgp fuer talk?) ...

Pilgrim

-----------------------------------------------------------------------------



Re^8: Anzeige (Rochus,  9. Sep 2000, 19:16:13):
~#! rn=Puk rt=968518941 rg=polizei.beschwerden
~#! tid=968436066
Um eines mal klarzustellen:
Auch WIRKLICH unbeabsichtigt mitbekommene Gespraeche sollte
ein Magier fuer sich behalten.

  Rochus

-----------------------------------------------------------------------------



Re: Re: Anzeige (Padreic,  9. Sep 2000, 19:43:30):
~#! rn=Sky rt=968436266 rg=polizei.beschwerden
~#! tid=968436066
Nur damit jetzt nicht noch 100 Leute sagen wie wichtg es is der Sache
nachzugehn und den betr. Magier zu bestrafen, wir _kennen_ ihn nicht und auch
Puk kennt ihn nicht. Wenn wir jetzt also nich zu radikalschlaegen uebergehn
und alle Magier die sich innerhalb der letzten 30 Tage mal eingeloggt haben,
zwangsspielpausen, wird auch der betr. Magier nich bestrafbar sein.
Und Boing hat dazu ziemlich klar gesagt, das er wenn wir ihn kennen wuerden,
der Sache entsprechend nachgeganen wuerde.

Padreic, sieht wieder mal wie die mpa ein Thema toddiskutiert....

-----------------------------------------------------------------------------



Re^8: Anzeige (Gloinson,  9. Sep 2000, 20:45:07):
~#! rn=Puk rt=968518941 rg=polizei.beschwerden
~#! tid=968436066
Snoopen ist eh doof. Willst Du einem haengenden Spieler helfen, scrollt er
Dich sowieso nur mit unnuetzem Kram voll :) Nuetzlicher hingegen ist
vielleicht (nur so als Idee):
[Magierseite]:
- INVIS in der Naehe von hilflosen Spielern rumgammeln
  (ich hab dadurch schon kleinere Fehler gefunden (jaja, anderes MUD))
[Spielerseite&Magierseite]
- abregen
- bis zehn zaehlen (auf griechisch)
- 'teile mit' benutzen
- nochmal abregen, weil man gegen notorische Voyeure so gut wie kaum
  etwas unternehmen kann, als ihnen eindringlich ins Gewissen zu
  reden (was ja nun in der MPA geschehen ist)
  (... und wenn sich ein Spieler als Ein Paar Handschuhe im Raum tarnt ...)

Gloin(son)

-----------------------------------------------------------------------------



Re^10: Anzeige (Apollonia,  9. Sep 2000, 21:47:19):
~#! rn=Liara rt=968526771 rg=polizei.beschwerden
~#! tid=968436066
Und wann ist ein Wurstmag ein Wurstmag, Liara? Und wer sollte das wohl
beurteilen koennen??

Apollonia
kopfschuettelnd

-----------------------------------------------------------------------------



Re^6: Anzeige (Weatherwax,  9. Sep 2000, 21:47:59):
~#! rn=Boing rt=968508750 rg=polizei.beschwerden
~#! tid=968436066
Ich dachts mir.

Es wird diskutiert bis zur strafrechtlichen Verfolgung und am Ende macht nur
einer das Maul nicht auf. :))

-----------------------------------------------------------------------------



Re^12: Anzeige (Apollonia,  9. Sep 2000, 22:04:52):
~#! rn=Liara rt=968529294 rg=polizei.beschwerden
~#! tid=968436066
Ich hatte mich ja bereits Nonnes Meinung angeschlossen, dass es durchaus
sinnvoll ist, gewisse Beschraenkungen einzufuehren, kann ja sein, dass Du das
ueberlesen hast. Und der fehlende invis-modus wuerde mich persoenlich
ueberhaupt nicht stoeren. Was mich tatsaechlich stoert, ist der Ausdruck
'Wurstmagier'. 

Was das GS betrifft, kannste Dir ja angucken, sobald's angeschlossen ist. Und
dann darfst Du auch gerne beurteilen, ob ich wurstig bin oder nicht. Ich kann
natuerlich irgendwas hinwutzen, nur damit ich endlich Vollmagier werde, aber
ich denke mal, dass Du mit mir darin uebereinstimmst, dass das _nicht_ der
Sinn eines GS ist.

Und so nebenbei arbeite ich ja auch noch an einer neuen Gilde.

Apollonia

P.S.: Der niedrigste Magierlevel ist uebrigens nicht m.

-----------------------------------------------------------------------------



Re^13: Anzeige (Jenandra,  9. Sep 2000, 22:07:05):
~#! rn=Apollonia rt=968529892 rg=polizei.beschwerden
~#! tid=968436066
um ehrlich zu sein, mir ist es ziemlich egal, mit was fuer bezeichnungen die
leute mich belegen. solange die spieler mit meinem kram spass haben, bleibe
ich gerne

Jenandra, Wurstmargarine.

-----------------------------------------------------------------------------



Re^14: Anzeige (Karis,  9. Sep 2000, 22:08:09):
~#! rn=Jenandra rt=968530025 rg=polizei.beschwerden
~#! tid=968436066
Nie isser da, wenn man ihn wirklich dringend braucht.

GRIIIIIIMMMBOOOOORRN!! 

So tu doch endlich was :)

Generaelchen Karis

-----------------------------------------------------------------------------



Re^10: Anzeige (Weatherwax,  9. Sep 2000, 22:08:21):
~#! rn=Liara rt=968526771 rg=polizei.beschwerden
~#! tid=968436066
Diese Meinung hat etwas fuer sich.

Auf den zweiten Blick betrachtet bin ich mir aber im Zweifel, ob der
Missbrauch von Faehigkeiten nur "Anfaenger" betrifft oder ob ihm vielmehr je
nach Situation auch "aeltere" Magier anheim fallen koennen.

Ich wuerde mich vielmehr freuen, wenn endlich mal der Name genannt wuerde, und
wenns nur gegenueber den zustaendigen ist.

Wx

-----------------------------------------------------------------------------



Re^15: Anzeige (Marcus,  9. Sep 2000, 22:08:35):
~#! rn=Karis rt=968530089 rg=polizei.beschwerden
~#! tid=968436066
Der Herr Grimmborn ist leider derzeit verreist nach Amerika. :)

Ciao, Marcus (aeltester Wurstmagier :)

-----------------------------------------------------------------------------



Re^16: Anzeige (Karis,  9. Sep 2000, 22:09:25):
~#! rn=Marcus rt=968530115 rg=polizei.beschwerden
~#! tid=968436066
Argl.
Und wahrscheinlich wurde kein Vertreter benannt.
Saftladen!
Kann ich mich irgendwo beschweren?

Generaelchen Karis.

-----------------------------------------------------------------------------



Re^17: Anzeige (Lanfear,  9. Sep 2000, 22:11:29):
~#! rn=Karis rt=968530165 rg=polizei.beschwerden
~#! tid=968436066
Zwangswized also Karis, er moechte Grimmborn vertreten.
Praktischerweise haben wir dann gleich nen neuen Wurstmagier und er kann jede
Schuld auf sich nehmen :)

Lanfear

-----------------------------------------------------------------------------



Re^16: Anzeige (Puk,  9. Sep 2000, 22:12:23):
~#! rn=Marcus rt=968530115 rg=polizei.beschwerden
~#! tid=968436066

ES REICHT !!!!!!!!!!!!!!!!!!!!!!!!!!!
Ich hab diesen Artikel nicht geschrieben damit ihr euch jetzt hier gegenseitig
an die Kehle spring !
Sind wir hier jetzt im Kindergarten ?

Pff, ich denke dieser tolle Mag um den es geht wird einen heiden Spass an
eurem rumgezanke haben.
Sorry, ich find das Thema ne bisschen zu Ernst um das ganze jetzt so
zerreissen zu lassen,

Also stampft den thread jetzt wieder ein mit eurer Rumkinderkakerei

Das ist ja fast so traurig wie die Aktion dieses Mags :(

Puk, nur nich traurig den Kopf schuetteln.

-----------------------------------------------------------------------------



Re^10: Anzeige (Humni,  9. Sep 2000, 22:13:45):
~#! rn=Liara rt=968526771 rg=polizei.beschwerden
~#! tid=968436066
Ganz einfach: Weil ich auch Testies, die mein  Gebiet testen, snoopen will.
Auch schon als Wurstmagier.

Aber stimmt, invis brauch ich dafuer nicht.
Und: Die werden natuerlich vorher informiert.

Humni, der irgendwann mal keine Wurst mehr sein will. Was aber nicht
ganz SO einfach ist, wie sich das sicher viele vorstellen.

-----------------------------------------------------------------------------



Re^17: Anzeige (Arancia,  9. Sep 2000, 22:14:17):
~#! rn=Puk rt=968530343 rg=polizei.beschwerden
~#! tid=968436066
*smile*
Kacke wird mit c geschrieben! 

-----------------------------------------------------------------------------



Re^17: Anzeige (Lanfear,  9. Sep 2000, 22:15:23):
~#! rn=Puk rt=968530343 rg=polizei.beschwerden
~#! tid=968436066
Aehm, ich hoffe doch mal, du hast jetzt meinen Artikel nicht wirklich als
ernsthaft boese angesehen???

Ich geb ja zu, dass ich hier OT bin, aber ausser dem schon gesagten gibts
nichts neues, und dann kann man doch wohl noch ein bisschen laestern :)

L*

-----------------------------------------------------------------------------



Re^18: Anzeige (Firehawk,  9. Sep 2000, 22:26:37):
~#! rn=Lanfear rt=968530523 rg=polizei.beschwerden
~#! tid=968436066
Ob es nun um Deinen Artikel ging kann ich natuerlich net beurteilen. Aber ich
muss Puk rechtgeben. Das Thema ist wirklich zu ernst und die Art wie es jetzt
hier diskutiert und auseinandergetreten wird bringt im Endeffekt nicht nur
nix, sondert artet wohl eher wieder in Streitigkeiten und Beleidigungen aus
und ich hoffe ich bin nicht der einzige, der meint, dass wir das nicht noetig
haben.

-----------------------------------------------------------------------------



Re^19: Anzeige (Golas, 10. Sep 2000, 02:43:56):
~#! rn=Firehawk rt=968531197 rg=polizei.beschwerden
~#! tid=968436066
Der folgende artikel bezieht sich auf so ziemlich alle vorhergehenden artikel.

an die magier:
wozu braucht ihr invis?
ich kann auch problemlos als nicht-magier in ruhe mpa lesen. wer stoert euch
denn, den ihr nicht mit einem text wie "mom, lese grad mpa" ruhig stellen
koennt.
ihr wollt "bei metzeltechniken/-taktiken auf dem laufenden" bleiben ... nuja,
spielt selber. wenn ihr dafuer keine zeit habt, wann habt ihr dann zeit zum
proggen?
also, sehe ich keinen grund fuer invis.

wozu braucht ihr snoopen?
ihr wollt rausbekommen, wie spieler irgendwas loesen? - fragt sie! wenn ihr
der meinung seid, dass spieler was regelwidriges machen, dann gebt einzig und
allein dem sheriff die moeglichkeit zu snoopen. ihr wollt spielern helfen? mir
wurde mehr als einmal bei nem bug geholfen, aber niemals wurde ich dafuer
gesnooped. wenn ihr der meinung seid, dass das unbedingt notwendig ist, dann
wuerde ich tiamak bitten, ne kurze abfrage einzubasteln, dass magier nur mit
zustimmung des spielers snoopen duerfen. (mir als laien kommt das von der
zweitiemarkierung bekannt vor)
also, nicht jeder feld-,wald- und wiesenmagier muss snoopen koennen.

an die spieler:
ich habe selber mehr als einmal private gespraeche gefuehrt und war mir so gut
wie nie darueber im klaren, dass sie belauscht werden koennten. der trick
dabei ist, so mutig zu sein und zu dem zu stehen, was man sagt. wen jemand
aeusserungen von mir in die mpa postet ist mir das voellig egal, weil ich
nichts zu verheimlichen habe. wenn ihr irgendwas sagen muesst, was
irgendjemand nicht hoeren soll, weil er sich dadurch irgendwie verletzt oder
angegriffen fuehlt, dann koennt ihr das auch fuer euch behalten. ihr werdet ja
wohl keine staatsgeheimnisse diskutieren. nehmt euch nur so wichtig, wie ihr
eure meinung auch vor jedem anderen vertreten koennt.
ueberlegt euch allemal, was ihr gerne in der mpa "oeffentlich" diskutiert
haettet. wenn ihr nur den hauch eines eindrucks verspuehrt, dass es nicht alle
angeht, dann lasst es sein. (der geht insbesondere an rochus und puk, die die
beiden letzten aktionen dieser art losgetreten haben und sich danach auch noch
beschweren mussten)

abschliessend ein kleines zitat von herrn nuhr:
wenn man keine ahnung hat, einfach mal fresse halten!

golas

-----------------------------------------------------------------------------



Re^20: Anzeige (Schleicher, 10. Sep 2000, 03:32:51):
~#! rn=Golas rt=968546636 rg=polizei.beschwerden
~#! tid=968436066
An den Golas:
alsooooooo, wenn Du schon meinen Quasi-Nachbarn den Dieter zitieren tus, warum
in drei Teufels Namen beherzigst Du diesen  w i r k l i c h  guten Rat nicht
selber?! Aber vielleicht liest Du als Spieler keine MPA Artikel von Magieren,
weil wenn Du das getan haettest waere Dir vielleicht aufgefallen das sowohl
das Invis sein als auch das Snoopen die ein oder andere Berechtigung hat.
Aber wer bin ich denn, das ich jemandem irgendetwas, und wenn es nur das lesen
von Artikeln ist, vorschlagen duerfte.

Schleicher dumm, doof, invis und auf Wunsch auch mal snoopend.

-----------------------------------------------------------------------------



Zur aktuellen Beschwerde (Muadib, 10. Sep 2000, 13:09:49):
hi,

die Aussage, dass keine Abhoersicherheit garantiert werden kann, ist kein
Freischein, die Moeglichkeiten, die man als Magier hat zu missbrauchen. Die
Privatsphaere des Spielers ist laut Magiervertrag zu achten. Wer das nicht
tut, muss mit einer Bestrafung rechnen.
Auch wer ohne Absicht ein vertrauliches Gespraech mitbekommt, darf dieses noch
lange nicht einfach so weiterverbreiten. Soweit zur Ausgangslage.
Im aktuellen Fall ist es leider so, dass nicht bekannt ist wer der
entsprechende Invis-Magier war. Dieses Wissen hat nur der entsprechende Magier
selbst und der Empfaenger der Mail. Von beiden wird wohl keine Aufklaerung zu
erwarten sein.
Bitte schliesst nicht von einem Magier, der seiner Verantwortung nicht gerecht
wurde, auf alle. Das waere einer sehr grossen Anzahl von Magiern ueber
ungerecht.

Nur zur Klaerung der Sachlage und in Wiederholung der Artikel von Boing,
Rochus und Padreic.

Muadib

-----------------------------------------------------------------------------



Re^20: Anzeige (Patryn, 10. Sep 2000, 19:37:13):
~#! rn=Golas rt=968546636 rg=polizei.beschwerden
~#! tid=968436066
wozu brauchen wir invis?
ganz einfach: spieler koennen manchmal furchtbar nerven. nun sei das nicht
so boes aufgefasst, wie es klingen mag. es ist ganz klar, dass spieler mit
problemen einen magier suchen, den sie damit belaestigen koennen...und ein
'weg' hilft da meist nicht, wenn das J wegen programmierens fehlt und sonst
keiner da ist. davon abgesehen ist es manchmal ganz interessant, wenn man
sich in seinem gebiet spielern unbemerkt an die fersen heftet. da erfaehrt
man eine menge ueber dinge, die man mal aendern sollte, die man visible mit
sicherheit nicht erfahren haette.
genau hier setzt auch schon der naechste punkt deiner fast schon
patentierbaren naivitaet an.
erlaubtes snoopen zur bugsuche, interessant. am besten wir schlagen dem von
dir vorgeschlagenen erz zur einbringung dieser furiosen aenderung auch
gleich einen angemessenen text vor, den der spieler bei snoop-antrag
erhaelt: "achtung! <soundso> wuerde dich gerne snoopen. lass ihm/ihr
seinen/ihren spass und vermeide das nutzen wichtiger bugs, die du noch
gebrauchen koenntest. tippe jetzt ja/nein."
im uebrigen habe ich schon mehrere bugs gefunden, indem nach verzweifelter
und unverstaendlicher minutenlanger erklaerung einfach mal der vorschlag
des spielers kam, snoop mich mal. nach 10 sekunden hat man dann meist das   
problem erkannt, und zu 90% sein gegenueber aufgeklaert, dass dies kein bug   
sei oder eben den bug entfernt, auch unter zuhilfenahme von aus deiner sicht 
wohl als aehnlich verwerflich zu sehenden kommandos wie z.B. 'zwinge':
das kommando impliziert wahrscheinlich ohne umschweife machtmissbrauch und
in deinen augen - spielerlaesterung.
ich mein, ich selbst brauch die eingebauten features invis und snoop nicht,
so wie viele andere magier koennt ich mir das auch selbst basteln, was man
letztendlich auch machen wuerde, da es notwendige und sinnvolle features
sind. der umgang damit muss selbstverstaendlich einem zweck dienen, der sich
eigentlich zwanglos in den grossen sinn des magierdaseins eingliedert:
 nur zum wohle des spiels und was manchmal vergessen wird, auch des spasses.
im uebrigen solltest du noch mal ueber dein zitat nachdenken. dann muesste
ich hier nicht auf dumme artikel dumm antworten, wofuer ich zur zeit
eigentlich gar keine zeit habe, wie man evtl. merkt.
man koennte das ja abwandeln: wenn man keine ahnung hat, erst nachdenken...

------
patryn

-----------------------------------------------------------------------------



Re^10: Anzeige (Zwilling, 10. Sep 2000, 20:46:39):
~#! rn=Liara rt=968526771 rg=polizei.beschwerden
~#! tid=968436066
Liebe Zwergenzauberine Liara,

Du schreibst, dass Du gegen Wurstmagier im MG bist. Sei doch mal was tolerant,
und 
goenn auch anderen ihr bischen Leben, auch wenn es nur virtuell ist.

Jedenfalls hoffe ich sehr, dass Du solche Sprueche nur im MG loslaesst und im
RL keinen
Menschengruppen die Daseinsberechtigung absprichst, selbst wenn Du sie
vielleicht nich
so besonders gut leiden kannst.

Wurstmagier Zwilling findet, dass sogar Zwergenzauberinen ein Anrecht auf
VL-Leben haben.

-----------------------------------------------------------------------------



Re^21: Anzeige (Wurzel, 11. Sep 2000, 01:45:31):
~#! rn=Patryn rt=968607433 rg=polizei.beschwerden
~#! tid=968436066
reicht eigentlich, nur zur vollstaendigkeit vielleicht noch ne anmerkung.
natuerlich brauche ich invis und snoop. aber wie schon mal gesagt, reicht
mir das in meinem workroom. es gibt quasi nichts, was ich nicht auch von
dort aus erledigen koennte. zum snoop: wenn ich z.b. jemandem zusehe, wie
er eine bestimmte sache angeht, stoert es mich kolossal wenn die leute
anfangen zu quatschen, das lenkt nur ab. sinnvollerweise gehoerten alle
mitteilungen u. ae. aus dem snoop herausgefiltert.
und so weiter... wenn man eine diskussion darueber mal sachlich fuehren
koennte, koennten die vorhandenen problemchen schnell geloest werden. aber
es muss ja unbedingt jeder seinen senf dazugeben, egal ob es was sinnvolles
beitraegt oder nicht.
ja, stimmt, ich koennte eigentlich auch aufhoeren damit. tu ich jetzt auch.

wurzel

-----------------------------------------------------------------------------



Re^22: Anzeige (Nonne, 11. Sep 2000, 08:50:39):
~#! rn=Wurzel rt=968629531 rg=polizei.beschwerden
~#! tid=968436066
Jo, Zustimmung.
Ich habe keine Ahnung, wie kompliziert es waere, teile mit, fluestere und was
weiss ich, rauszufiltern aus dem snoop. Und wenn ich mich privat unterhalte
und es intimer wird, wechsel ich sowieso meist auf teile mit, so dass das
invis kein Problem ist.
Natuerlich kann sich der Magier immernoch selbst was basteln, aber das ist ja
dann schon wirklich boeswillig.

Nonne.

-----------------------------------------------------------------------------



Re^23: Anzeige (Anatol, 11. Sep 2000, 13:46:34):
~#! rn=Nonne rt=968655039 rg=polizei.beschwerden
~#! tid=968436066

Argh, argh, argh, argh.

Da ist es mal wieder passiert. Irgendein Mensch mit Magiershell
dringt unter Zuhilfename irgendeines Magiermittels in die heilige
Privatsphaere von Mitspielern ein, die Betroffenen empfinden
grossen Schmerz und reagieren (verstaendlicherweise!) hochgradig
veraergert und reagieren (verstaendlicherweise!) oeffentlich.

Mal wieder bricht fuer viele Menschen eine kleine Welt zusammen,
an die sie - in Unschuld oder Naivitaet oder einfach nur, weil sie
von der Ehrlichkeit und Aufrichtigkeit ihrer Mitmenschen ueberzeugt
waren - fest glaubten. Sie tragen vom Aufprall auf den Boden der
Tatsachen mehr als nur Kopfschmerzen davon.

Aus den bisher geschriebenen Artikeln schliesse ich, dass es sehr
wahrscheinlich ist, dass der verhaltensgestoerte Magier nie bekannt
werden wird. Das ist schade, aber meiner Meinung nach nicht anders
zu erwarten. Wenn mir ein "Freund" eine solche Mail schicken wuerde,
wuerde ich ziemlich viel tun, vielleicht auch diese Freundschaft
aufgeben, aber ich wuerde ihn vermutlich nicht ans Messer liefern -
weniger, weil ich ihm dadurch den letzten Weg, seine Ehre wenigstens
teilweise wieder herzustellen, abschneiden wuerde (er koennte sich
dann schliesslich nicht mehr selbst melden), sondern weil ich meine
eigene Ehre und Moral verloere - dieser Freund hatte mir in dem
Moment der Mail ja vermutlich vertraut. Ich hoffe, dass das fuer
mich (und moeglichst viele andere) alles rein hypothetisch bleibt...

Aus den bisher geschriebenen Artikeln hoere ich - von Spielerseite
zumindest - den Tenor heraus, dass eben diese Magiermittel doch
bitteschoen nicht leichtfertig vergeben werden sollen. Ist ja bis
zu einem gewissen Punkt nachvollziehbar. Das beruehmte Gewehr, das
nicht toetet (sondern der Mensch am Abzug), gibt man ja auch nicht
in Kinderhaende und waescht seine Haende in Unschuld. Aber bitte,
woran unterscheiden, wer was darf und wer nicht? Ich bin in anderen
Muds Magier (und Magier gewesen) und habe die Moeglichkeit des
Unsichtbarseins durchaus zu schaetzen gelernt. Manchmal WILL man
einfach nicht fuer Spieler da sein, manchmal hat man SO viel zu tun,
dass man gerademal seinen Bugs nachlaeuft (und das geht nun echt
nicht immer vom Workroom aus!), mit Magiern ein paar Gedanken aus-
tauscht und dann herumidelt, bis einem der Uni-Kram bis Oberkante
Unterlippe steht. Oh, und natuerlich. Manchmal ist es auch ganz
praktisch, wenn man "live" sieht, wie ein Spieler einen Quest-NPC
was fragt. Und wenn man das durch Danebenstehen machen kann (und
zwar schon bewusst unsichtbar, damit der Schimpans... aeh, der
Spieler sich so verhaelt wie immer) anstatt zum weitaus kritischeren
Snoop greifen zu muessen, ist das schon nicht schlecht. Und ja, auch
fuer einen [m]-Magier ist das nicht unpraktisch.

Ein Abaendern des Snoops in eine Variante, die dem Spieler sagt,
dass ihm jemand ueber die Schulter schaut, halte ich (wie ich
Padreic zustimmend bereits andeutete) ebenfalls fuer falsch. Die
Kollegen, die die Philosophie verkuenden, dass Bugs-Ausnutzen doch
- Regeln hin oder her - zum Spielgeschehen gehoere, werden das
deutlich leichter verstehen koennen als andere, auch wenn es 
wirklich nicht nur um das Aufstoebern von "spielerfreundlichen"
ungewollten Features geht.

Was ich aber (und auch das klang inzwischen irgendwo an) fuer SEHR
sinnvoll halten wuerde: Differenzierung. Natuerlich ueberliest der
gute und vertrauenswuerdige Magier waehrend eines Snoops alle Teile-
Mits, die nicht fuer ihn bestimmt sind. Wenn er diese aber von
Mudseite her explizit gar nicht erst angezeigt bekommt (weil er sie
nicht angezeigt bekommen WILL), hat er es leichter. Zumal er - hehe -
gegenueber den Kontrollinstanzen ([E]+) leicht in Erklaerungsnotstand
geraet: Wenn ein Magier einen Snoop irgendwie mit "nur mal" zu recht-
fertigen versucht, saegt er am Ast auf dem er sitzt... und wenn er
eine Alternative gehabt haette, die fuer seine (moeglicherweise ja
doch vorhandenen Zwecke) ausgereicht haette, ohne so tief in die
Privatsphaere anderer eindringen zu muessen, saegt er mit einer
Saegemeistersaege.


In meinem Seherhaus sind diverse Magierbefehle definiert. Wenn
jemand "home" eingibt, bekommen alle anderen im Raum eine Meldung
mit dem Namen des Betreffenden. Als noch nicht angezeigt wurde,
ob ein Magier unsichtbar anwesend ist oder nicht, sah ich, waehrend
eines sehr privaten Gespraechs (Dauer > 1 Stunde), ploetzlich
unmotiviert diese Meldung ("Jemand"). Wer sich da ueber einen langen
Zeitraum (was durch inzwischen gebugfixte Tools *seufz* heraus-
zufinden war) an den Intimitaeten anderer Menschen labte, habe ich
bis heute nicht herausbekommen. Ich kann den Schmerz und den Zorn
Puks verstehen...

Anatol

-----------------------------------------------------------------------------



Verallgemeinerungen! (Tsunami, 11. Sep 2000, 20:19:27):
Hallo Mitmudder,

ich habe mich durch die letzen 25 Artikel gekaempft. Folgendes ist mir dabei
aufgefallen: viele Magier und Spieler verallgemeinern etwas zu stark, was
einer sachlichen Diskussion (gab's sowas hier ueberhaupt schon mal?) nicht
gerade foerderlich ist.

z.B. (1):
Laut der Meinung von einigen Spielern sind alle Magier mit kleinen Levels
automatisch finstere Gesellen, da sie ja 'offensichtlich' nichts zum Mud
beitragen und ihre Zeit ausschliesslich dem ausspionieren anderer Leute
widmen. Die Tatsache, dass es auch niedrig-levelige Magier gibt, die von
ihrem RL mehr absorbiert werden und daher nur langsam mit ihrem Mud-Projekt
vorankommen (und deshalb halt laenger auf ihrem niedriegen Level bleiben),
wird von diesen Leuten einfach unter den Tisch gekehrt. 

Deshalb nochmals in aller Deutlichkeit: es gibt 'kleine Magier', die auch 
ihren Teil zum Mud beitragen, und einfach alle kleinen Magier pauschal des
Spionierens zu verdaechtigen ist schlicht eine Frechheit! Denkt bitte etwas,
bevor ihr wilde Behauptungen aufstellt!

z.B. (2):
Einige Magier meinen, da sie ein Homemud zuhause haben, muessen logischerweise
automatisch alle anderen Magier auch so ein Homemud bei sich installiert
haben.
Ist ja logisch...(!?) 'weil ich es habe, haben es alle anderen auch...'
Und deshalb koennte man 'invis' gleich abschaffen, da man ja im Homemud in 
Ruhe sein neues Gebiet testen kann. Hmmm. Ich habe kein Homemud. Ich progge
und teste hier. Und manchmal will man das in Ruhe machen. Also gehe ich invis
rein und teste meine Raeume invis.

Invis muss bleiben, so wie es ist. Die Benuetzung von invis ist im Magier-
vertrag klar geregelt. Wer dagegen verstoesst, wird bestraft (ich komm weiter
unten nochmals auf den aktuellen Fall zu sprechen).

z.B. (3):
Einige meinen, snoopen sei sinnlos, da die Spieler dem Magier ja mit 
'teile mit' ihr Problem schildern koennen. Und somit koenne man alle
Fehler beheben. Quatsch! Der Spieler kann irgendwo haengen, und 'teile mit' 
geht nicht mehr. Oder die Formatierung der Textausgabe spinnt.

Snoop ist immer noch die effizienteste Art, Ursache und Wirkung zu verfolgen.
Das ist nun eine Verallgemeinerung, der aber die meisten proggenden Magier
zustimmen werden. 

Zum aktuellen Fall:
wenn ich richtig verstanden habe, weiss ein Spieler den Namen des Magiers,
der die Privatsphaere so grob verletzt hat. Der Spieler will den Namen nicht
herausruecken. Ich weiss nicht, wie die Rechtslage in Deutschland ist, aber in
der Schweiz und in den USA gibt es so etwas wie 'Beugehaft'. D.h. ein Zeuge im
Besitz von Prozess-relevanten Informationen kann eingesperrt werden, bis er
die
Informationen preisgibt. 
Ein Vorschlag waere, den Spieler samt seiner markierten Zweities solange vom
Mud auszuschliessen, bis er Boing oder dem Sheriff eine Mail mit dem Namen
schickt. Der Spieler kann sich weder auf das 'Arztgeheimnis', das 
'Bankgeheimnis', das 'Journalistengeheimnis' oder sonst etwas berufen. 
Er muss den Namen preisgeben! Oder er spielt hier nicht mehr.

Tsunami.

Der aktuelle Fall ist aergerlich, vor allem, da wir Magier nun pauschal alle
des Spionierens verdaechtigt werden.
Tod den schwarzen Schafen!

-----------------------------------------------------------------------------



Re: Verallgemeinerungen! (Patryn, 11. Sep 2000, 20:30:22):
~#! rn=Tsunami rt=968696367 rg=polizei.beschwerden
~#! tid=968696367
dem ersten teil kann ich durchaus zustimmen, aber wie auch bei wurzels
artikeln kam mir hier irgendein spruch in den sinn, was irgendwas mit
kirchen im dorf zu tun hatte...na ja, ich werd alt :)

-----------------------------------------------------------------------------



Re: Verallgemeinerungen! (Dieder, 11. Sep 2000, 20:38:06):
~#! rn=Tsunami rt=968696367 rg=polizei.beschwerden
~#! tid=968696367
zum letzten Teil:
das finde ich nicht adaequat. Zum einen hat Puk ja in seinem urspruenglichen
Artikel (1) weder eine Anklage, Prozess oder sonst irgendwas gestartet,
sondern lediglich seinem Unmut Luft gemacht und die Missbraeuche, die den
Befehlen snoop und invis folgen koennen, geschildert, insofern kann er auch
nicht gezwungen werden, den Namen preiszugeben.
Zum anderen haben wir hier (zum Glueck, meiner Meinung nach) noch nicht in
allen Bereichen das System, wie wir es aus dem RL (was ist das? :-)) kennen.

Wenn Puk die Bestrafung dieses Magiers wollte, muesste er den Namen dem
Sheriff preisgeben - so bleibt es einfach mal ein - ich nenne es "Aufmerksam
machen auf die Missbraeuche"-Warnruf und eine Beschwerde, der sich aus meiner
eigenen Erfahrung durchaus auch andere Damen und Herren mal besinnen koennen.

Dieder


-----------------------------------------------------------------------------



Re: Re: Verallgemeinerungen! (Tsunami, 11. Sep 2000, 20:39:03):
~#! rn=Dieder rt=968697486 rg=polizei.beschwerden
~#! tid=968696367
Hier geht es nicht mehr um Puk, sondern um den Verstoss. Egal, ob Puk nun
eine 'Bestrafung' will oder nicht. Der Magier hat krass gegen den Magier-
vertrag verstossen!

Tsunami

-----------------------------------------------------------------------------



Re^3: Verallgemeinerungen! (Dieder, 11. Sep 2000, 20:39:49):
~#! rn=Tsunami rt=968697543 rg=polizei.beschwerden
~#! tid=968696367
das hat aber nix mit dem Spieler zu tun. was ich meine ist nur: den Spieler zu
pausen nur weil er was angeprangert hat und den Verdaechtigen nicht
bekanntgeben will ist daneben.

Dieder

-----------------------------------------------------------------------------



Re^4: Verallgemeinerungen! (Tsunami, 11. Sep 2000, 21:06:54):
~#! rn=Dieder rt=968697589 rg=polizei.beschwerden
~#! tid=968696367
Nun, das ist Sache des Sheriffs. Und sicher keine leichte Entscheidung.
Leider wurde hier eine Lawine losgetreten. Dieser Fall muss aufgeklaert
werden. Wird er es nicht, haengt ueber diesem Mud ein sehr unangenehmer 
Schleier, naemlich dass man hier besser nicht mehr mudded, da man moeglicher-
weise ausspioniert werden kann, ohne dass es die 'Betreiber' des Muds
nachvollziehen und ahnden koennen!

Hier haetten wir offensichtlich die Moeglichkeit, den Missetaeter zu
entlarven,
da sein Name einem Spieler (wer auch immer es ist, Puk oder jemand anders, ich
weiss es nicht) bekannt ist.

Es geht hier wirklich nicht mehr um eine einzelne Person, sondern um ein
Grundprinzip. Gehen wir nicht hart vor, passiert es wieder und wieder und 
wieder...

Tsunami.
Tod den schwarzen Schafen.

-----------------------------------------------------------------------------



Re: Re: Verallgemeinerungen! (Nevok, 11. Sep 2000, 21:42:58):
~#! rn=Dieder rt=968697486 rg=polizei.beschwerden
~#! tid=968696367
So ist es also ermessenssache des opfers, ob ein verstoss gegen den
magiervertrag geahndet wird?
Muss ich wohl was missverstanden haben als ich das mit strafrecht und
zivilrecht durchgeguckt habe...

Nevok

-----------------------------------------------------------------------------



Re^5: Verallgemeinerungen! (Cisou, 11. Sep 2000, 21:46:37):
~#! rn=Tsunami rt=968699214 rg=polizei.beschwerden
~#! tid=968696367

Ich erachte es als aeusserst desillusionierend, dass sich hier Magier und
Spieler gleichermassen derart schnell auf den Schlips getreten fuehlen, ob es
nun um das Wahren der Privatsphaere oder den Missbrauch von "invis" oder
"snoop" betrifft. In meinem ersten Artikel hatte ich geschrieben (ich
zitiere): "das in diesem Fall durchaus zu diskutierende Privileg des 'invis'.
Damit meinte ich klar und deutlich in diesem Fall, naemlich das Loggen und
Maieln von Privatgespraechen, die sich jemand in einer Idelpause zu Eigen
gemacht hat.
Die Frage, die sich hier stellt und die selbst dieser gleichermassen
bezeichnende wie an konstruktivem Diskussionsstoff mangelnde Thread nicht
beantworten konnte, ist folgende:
Wo ist der Sinn, dass ein Magier invis in einem von Spielern frequentierten
Raum ideln (!!!) muss? Wahrscheinlich gibt's einen Grund, ich bin begierig
darauf, ihn zu erfahren.
Schade find ich vor allem, dass hier der Eindruck entsteht, dass kein Spieler
mehr Magiern trauen, was die Wahrung ihrer Privatsphaere betrifft. Nun, Ihr
Mags, Ihr muesst zugeben, dass unser Vertrauen durch so einen ueblen Fall, wie
Puk ihn geschildert hat, arg erschuettert wurde, auch wenn uns klar sein
muesste und klar ist, dass wir keine Garantie auf unsere Abhoersicherheit
erwarten koennen. Aber nichts wird so heiss gegessen, wie' s gekocht wird, wir
alle erliegen dem Reiz des Chattens und Spielens frueher oder spaeter wieder,
bis der naechste Lauschangriff bekannt wird.
Und seien wir mal ehrlich: waere der Name des schwarzen Schafes in den Reihen
der diskreten Mags bekannt und haette man ihn angemessen bestrafen koennen,
keiner hier haette sich derart erregt und die fuer Mags notwendigen unt
nuetzlichen Befehle so in Frage gestellt. Aufregen ist ja gut und schoen, aber
wenn hier die Gefuehle der Geschaedigten zugunsten einer generellen
Anprangerung angeblicher Missstaende so ausser Acht gelassen werden, wie ich
es in diesem Thread gelesen habe, halte ich das, ebenso wie Puk, fuer ein
Armutszeugnis. 

Cis*, die am liebsten selbst ihre Privatsphaere ausplaudert, weil sie ihre tm
alis dauernd verwechselt ;).

-----------------------------------------------------------------------------



Re^3: Verallgemeinerungen! (Dieder, 11. Sep 2000, 21:47:53):
~#! rn=Nevok rt=968701378 rg=polizei.beschwerden
~#! tid=968696367
wenn das Opfer den Namen nicht weiss oder eben halt nicht preisgeben will,
wird das wohl so sein - es sei denn, es gaebe was anderes, was zur
Ueberfuehrung fuehren koennte.

Dieder

-----------------------------------------------------------------------------



Re^24: Anzeige (Thorak, 11. Sep 2000, 22:23:35):
~#! rn=Anatol rt=968672794 rg=polizei.beschwerden
~#! tid=968436066
vielleicht hat gundur ja seinen strandkorb fuer genau die leute geproggt,
die auch mal was privates im mud austauschen wollen.
nur mal so am rande.

thorak

-----------------------------------------------------------------------------



Re^25: Anzeige (Nevok, 11. Sep 2000, 22:24:15):
~#! rn=Thorak rt=968703815 rg=polizei.beschwerden
~#! tid=968436066
Ah, noch jemand der nix von dem Log weiss *kicher*
Existiert doch nicht mehr, oder?

Nevok

-----------------------------------------------------------------------------



Re^26: Anzeige (Anoris, 11. Sep 2000, 22:26:19):
~#! rn=Anoris rt=968703879 rg=polizei.beschwerden
~#! tid=968436066
wenn der Strandkorb der ist, der vor 2 Jahren schon dran ist, dann is er nicht
sicher genug.

- Anoris

-----------------------------------------------------------------------------



Re^6: Verallgemeinerungen! (Bierchen, 11. Sep 2000, 22:27:21):
~#! rn=Cisou rt=968701597 rg=polizei.beschwerden
~#! tid=968696367
invis und snoop ist schlicht und einfach ein wichtiger teil der
entwicklung. unter entwicklung verstehe ich: fehlersuche, hilfe bei
fehlern und was man sich sonst noch vorstellen kann und kein privileg,
ueber das man einfach mal so diskutieren darf.
das ganze hier erinnert mich etwas ans rl... kampfhunde: ueberall sieht
man sie ploetzlich, wenn ein koeter nur auf die strasse scheisst.
flugzeuge: die fallen jetzt taeglich vom himmel. usw. usw...
wenn wir hier schon von 'privilegien' und 'privatsphaere' reden...
vielleicht sollten wir da auch mal die seherkugel mit einbeziehen und
deren missbrauch durch spieler...
natuerlich ist das jetzt (fast) alles ironisch gemeint. aber wie das uralt
sprichwort lautet (ich glaube, tilly erwaehnte es mal in einer lauen
sommernacht, als wir beide bei vollmond auf dem balkon sassen mir einer
flasche... aehm, das gehoert hier nicht hin) also, das sprichwort lautet:
ein schwarzes schaf macht keine herde aus :)

 - Bierchen -

-----------------------------------------------------------------------------



Re^27: Anzeige (Thorak, 11. Sep 2000, 22:27:49):
~#! rn=Anoris rt=968703979 rg=polizei.beschwerden
~#! tid=968436066
warum haengt dann nicht ein neuer zettel drin, der alle neulinge darauf
aufmerksam macht?
aber das geht schon zu sehr vom thema weg...

thorak

-----------------------------------------------------------------------------



Re^28: Anzeige (Padreic, 11. Sep 2000, 23:00:47):
~#! rn=Thorak rt=968704069 rg=polizei.beschwerden
~#! tid=968436066
Nimmt dieser Thread hier nie ein Ende? Damit wenigstens nicht noch 100x Saetze
alla "gehoert unbedingt bestraft..." kommen, es gibt _keinen_ Spieler oder
Maiger mehr (ausser dem betr. Magier selbst) der den Namen kennt und es gibt
auch von Logfiles oder aehnlichem _keine_ Moeglichkeit mehr den betreffenden
zu ueberfuehren. Demzufolge is diese Diskussoin _voellig_ sinnlos.
Mal so eine Frage.... habt ihr Euch schon mal ueberlegt das solch eine
unwuerdige mpa Diskussion die betroffenen Spieler evtl. noch mehr fertig
macht? Vielleicht wollte Puk einfach nur mal seinen Unmut loswerden und den
Magiern ins Gewissen reden, aber nun muss sich doch nich wirklich _jeder_ dazu
befaehigt fuehlen seinen Senf dazu abzugeben und zu sagen wie schlimm er das
alles findet.

Padreic

-----------------------------------------------------------------------------



Re: Re: Verallgemeinerungen! (Boing, 12. Sep 2000, 08:35:17):
~#! rn=Dieder rt=968697486 rg=polizei.beschwerden
~#! tid=968696367
Puk kann natuerlich nicht gezwungen werden den Namen preiszugeben, da er
den Namen ueberhaupt nicht kennt (Zumindest ist das mein letzter Stand).
Wenn Du die Artikel richtig gelesen haettest, haettest Du sehen koennen,
dass Puk derjenige war der belauscht wurde, und nicht der der die mail
bekam. 
  Boing

-----------------------------------------------------------------------------



Re: Verallgemeinerungen! (Gor, 12. Sep 2000, 10:37:17):
~#! rn=Tsunami rt=968696367 rg=polizei.beschwerden
~#! tid=968696367
Das ist ja alles schoen und gut Tsunami aber im 'aktuellen' Fall wuerde ich
sagen lasst alles in Ruhe es ist so schon schlimm genug wie es ist. Btw der
entsprechende Spieler, der dieses Logfile hat, hat sich geloescht. Also wenn
will man bestrafen... wozu auch. Bitte lasst diesen Fall einfach ruhen. Es
gibt schon genug Muell, der herumerzaehlt wird, und der nicht gerade
foerderlich ist, dem entsprechendem Spieler zu helfen.

diskusion shutdown -h now!

-----------------------------------------------------------------------------



Re: Verallgemeinerungen! (Pampers, 12. Sep 2000, 17:49:12):
~#! rn=Tsunami rt=968696367 rg=polizei.beschwerden
~#! tid=968696367
Quark.
Ich bin Level 20 Magier (ich hatte sogar mal - man hoere und staune - mal
Level 21!) und werde solang ich lebe nicht eine einzige Zeile Code dem MUD
hinzufuegen.
Gibt ja auch genug andere, die das tun.
Ich hab trotzdem keinen Bock, Maedels zu snoopen, irgendwelchen Leuten invis
zuzuhoeren oder so. Das echte Leben ist erstens spannender und zweitens hab
ich fuer sowas keine Zeit.
Eigentlich bin ich nur wegen des "goto"s Magier. 

Na und?

Pampers. Spieler, kreuzigt mich. Ihr seid eh nur Schmutz.

-----------------------------------------------------------------------------



Re^3: Verallgemeinerungen! (Weatherwax, 12. Sep 2000, 19:24:02):
~#! rn=Tsunami rt=968697543 rg=polizei.beschwerden
~#! tid=968696367
Also, ich wuerde auch gerne wissen, wer so etwas macht und saehe ihn gerne
fuer Spieler, die sich unterhalten wollen, unschaedlich gemacht. Mehr denn je
wollte ich es wissen, waere ich Magier und wuerde mich den angesprochenen
Verallgemeinerungen ausgesetzt sehen.

Aber wohl nicht um jeden Preis. Und ich denke auch nicht, indem Leute bestraft
werden, die sich eben mal "Luft verschaffen wollen" ohne gleich zu verzinken.
Wer weiss, die sich das womoeglich etwa persoenlich fuer den Wiederholungsfall
vorbehalten.

Ich finde es bedauerlich, dass der Name nicht genannt wird, insofern kann ich
Dir zustimmen, aber leider in diesem Kontext unabaenderlich, es sei denn, man
wollte "mit Spielen endgueltig aufhoeren und nur noch Ernst machen".

Wx

-----------------------------------------------------------------------------



Re: Padreic 55 -> 45 (Padreic, 12. Okt 2000, 17:43:52):
~#! rn=Boing rt=971348981 rg=polizei.bekanntmachungen
~#! tid=971348981
Wer mich kennt, weiss das mir mein Level hier ziemlich wurscht ist, was mir
jedoch nicht egal ist, ist die Art und Weise wie hier mit mir umgegangen wird
und wie bisher geltende Grundsaetze und Regeln fuer mich einfach nicht mehr
gelten. Bisher galt im MorgenGrauen wie vor jedem Gericht der Welt, der
allgemeine Grundsatz, das jeder auf Dinge angesprochen wurde und das Recht
hatte sich zu verteidigen. Bei mir scheint dieses nicht zu gelten und es ist
wohl nicht noetig mit mir ueber Dinge zu reden. Dem Artikel in
polizei.bekanntmachungen entnehme ich hierzu dann auch noch, das Dinge
einfach gar nicht richtig bekannt waren, da in diesem Artikel eine Reihe von
Dingen stehen die in der Form schlicht und ergreifend falsch sind.
Es gab vor weit ueber einem halben oder sogar einem ganzen Jahr, ein Gespraech
Muadib zu dem Thema des daueridlen von Spielern die es nicht fuer noetig
halten
sich auszuloggen wenn sie in Urlaub oder uebers WE nach Hause fahren mit der
Begruendung es sei ihnen nicht zuzumuten sich immer wieder neu einzuloggen.
Dieses Verhalten das knappe Ressourcen des MGs unnoetig verschwendet bezeichne
ich schlichtweg als assozial und habe die Spieler deshalb ausgeloggt. In
unserem Gespraech damals zeigte Muadib da durchaus Verstaendnis fuer,
gestattete mir die Fortfuehrung dieser Praxis und meinte lediglich ich solle
es damit nicht uebertreiben, aber bei Spielern die ewig idlen sei dies voellig
in Ordnung und von mir stammte damals auch der Hinweis, wenn das voellig legal
sei, dann koennte ich mit 195 Zweities das gesamte Mud dauerhaft lahmlegen.
Am 5. Oktober bekam ich von Muadib eine freundliche mail mit dem Hinweis, das
sich die Regeln in dem Punkt geaendert haben und ich ab sofort bitte keine
Spieler mehr ausloggen soll. Hieran habe ich mich seitdem gehalten. Ich habe
bis zum heutigen Tag nie eine einzige Verwarnung von Muadib ausgesprochen
bekommen, schon gar keine die ich verletzt haette.
Am Freitag den 6 Oktober habe ich 30 Charaktere mit Namen wie dummidler oder
gruppenidlen eingelogt, die Boing daraufhin wieder ausgeloggt hat. Er teilte
mir anschliessend mit, ich wuerde in seinen Augen immer tiefer sinken und
loggte sich aus. Von Zook hab ich zu dem Thema meines Wissens ueberhaupt
nichts weiter gehoert. An dem Samstag habe ich das ganze wiederholt diesmal
jedoch mit 30 echten Fantasynamen, damit sich niemand mehr ueber die Namen
aufregt. Sinn dieser Aktion (zu der Muadib damals meinte, ja das koenntest Du
dann natuerlich machen) war lediglich mit den mir zur Verfuegung stehenden
legalen Mitteln auf das assoziale Verhalten einiger Spieler aufmerksam zu
machen. Da ich nur einen Denkprozess anregen wollte habe ich 30 Spieler
genommen, was keinerlei ernste Behinderung des Spielbetriebs bedeutet.
Mir als Motiv zu unterstellen nur Aerger und Streit im MorgenGrauen ausloesen
zu wollen halte ich fuer so ziemlich das letzte. Jeder der mich kennt weiss
genau, dass mir dieses nie in den Sinn kommen wuerde. Ich bin hier um Spass zu
haben und betrachte das ganze lediglich als Spiel. Aerger und Streit ist
wahrlich das letzte worauf ich hier aus bin. Seitdem ich im MorgenGrauen bin
kann ich mich nicht an eine einzige Situation entsinnen wo ich aus solchen
Motiven oder in solch einer Form gehandelt haette.


Padreic

-----------------------------------------------------------------------------



Willkuer! =) (Montanus, 10. Jan 2002, 21:12:17):
Irgendein willkuerlicher Mageier hat einen Artikel von mir aus gilden.tanjian
ohne Ruecksprache geloescht. (statt ihn nach Muell zu verlegen oder
sonstwohin, wo er vielleicht besser gepasst haette)
Ich finde das schlimmer als Grimmborns Vergehen, einen Spieler, der darum
gebettelt hat, zu zappen.
Ich erwarte
(a) dass der Sheriff sich der Sache unverzueglich annimmt und den
Entsprechenden boese ausschimpft
(b) mindestens genausoviele Replies in der MPA wie nach GdAs "Tat".

Zutiefst empoert,

YTM =)

-----------------------------------------------------------------------------



Re: Willkuer! =) (Gor, 10. Jan 2002, 21:27:35):
~#! rn=Montanus rt=1010693537 rg=polizei.beschwerden
~#! tid=1010693537
Dieser Beschwerde kann ich mich nur anschliessen. In letzter Zeit kam es
gehaeuft vor, dass sich einige zur Zensur berufen fuehlten und Artikel
willkuerlich in andere Rubriken verschoben haben. Wenn ich einen in meinen
Augen ernsthaften beitrag leiste, finde ich es eine ungeheuerlichkeit, diesen
Artikel einfach in die Rubrik schmarrn zu verschieben. Nicht einmal in die
Rubrik magier.schmarrn, sondern gleich in schmarrn.
Ich schjlisse mich hier also Montanus Beschwerde an und verlange nicht nur
dass derjenige ausgeschimpft wird, sonder das er richtig bestraft wird. Das
Ausschimpfen steckt derjenige sich sonst wo hin!

Gor ebenso empoert.

-----------------------------------------------------------------------------



Re: Re: Willkuer! =) (Montanus, 10. Jan 2002, 21:29:32):
~#! rn=Gor rt=1010694455 rg=polizei.beschwerden
~#! tid=1010693537
Ich denke, wir haben ja Grimmborn, der bisher auch gutes Augenmass hatte,
welcher Artikel wohin gehoert.
Aber er weigert sich ja schon laenger, in einigen RUbriken aufzuraeumen -
leider.
Nun, loeschen ist hart, verlegen ist auch nicht schoen.
Freiheit fuer alle Artikelschreiber!

-Montanus (mit gereckter Faust)

-----------------------------------------------------------------------------



Offizielle Beschwerde (Towarisch,  2. Apr 2003, 01:04:37):
Hiermit moechte ich mich offiziell ueber die Kompetenzueberschreitung des
Magiers "Grimmborn" beschweren.
Grimmborn hat 2 meiner Artikel in der MPA geloescht. Diese Artikel waren nicht
rassistisch/beleidigend/zu gewalttaten aufrufend/natiolalistisch/etc, sie
entsprachen der Nettiquette und der Policy. Schlimmstenfalls habe ich sie in
der falschen Rubrik gepostet, das mag sein - dann haette es ein Verschieben in
die richtige Rubrik getan. Aber Grimmborn hat die Artikel geloescht, im 2ten
Artikel habe ich ihn auch gebeten, dies nicht zu tun.

Ich gehe davon aus, das falls von Offizieller Seite Postings von Gaesten in
der MPA nicht erwuenscht waeren, dies technisch unterbunden waere (genauso wie
beim Metzeln mit Gaesten) - Im Umkehrschluss sind demnach Postings (solange
sie sich an die Nettiquette halten) erlaubt.

Ich weiss, dass Grimmborn sich diese Kompetenzueberschreitung schon des
oefteren erlaubt hat, und das es darueber anscheinend schon des oefteren
Diskussionen gab. Nichtsdestotrotz wuerde ich mich ueber eine offzielle
Stellungnahme von hoeherer Magierseite freuen, ob nun Gaestepostings verboten
sind, oder ob (falls sie erlaubt sind) etwas gegen die andauernden
Kompetenzueberschreitungen Grimmborns unternommen wird.

Mit freundlichen Gruessen, Euer Towarisch.

-----------------------------------------------------------------------------



Re: Offizielle Beschwerde (Grimmborn,  2. Apr 2003, 01:07:21):
~#! rn=Towarisch rt=1049238277 rg=polizei.beschwerden
~#! tid=1049238277
Die Artikel waren nicht von Towarisch, sondern von Gast1. Ich denke, mehr muss
ich dazu nicht sagen.

Grimmborn der Atheist

-----------------------------------------------------------------------------



Re^3: Offizielle Beschwerde (Jadawin,  2. Apr 2003, 01:14:26):
~#! rn=Gast1 rt=1049238800 rg=polizei.beschwerden
~#! tid=1049238277
Ist Towarisch wenigstens ein _markierter_ Zweitie?
Jad*

-----------------------------------------------------------------------------



Re^3: Offizielle Beschwerde (Grimmborn,  2. Apr 2003, 01:15:28):
~#! rn=Gast1 rt=1049238800 rg=polizei.beschwerden
~#! tid=1049238277
Hier mit Vollquote, weil ich eigentlich hier nicht loesche:

> Solange der Name selbst nicht beleidigend/rassistisch/etc ist (Gast1 ist das
> sicher nicht) sollte der Name des Postenden VOeLLIG irrelevant sein, was die
> Behandlung des Artikels angeht.
> MfG Towarisch/Gast1.

Du willst es nicht verstehen, oder Du kannst es nicht verstehen, nein? Du hast
Deine Beschwerde vorgebracht, wenn Du nix neues bringst werde ich weitere
Wiederholungen tatsaechlich kommentarlos loeschen.

GdA

-----------------------------------------------------------------------------



Re: Offizielle Beschwerde (Ark,  2. Apr 2003, 11:31:25):
~#! rn=Towarisch rt=1049238277 rg=polizei.beschwerden
~#! tid=1049238277
Ich frage mich immer wieder, warum man als Gast hier seine Meinung kundtun
muss? Entweder man ist bereit, das auch unter einem Namen zu tun, oder man
laesst es. Bei Dir kommt es mir nicht vor, dass 
u ein Neuling bist, warum nimmst Du also nicht Deinen Ersti und schreibst?
Fuer anonyme Meinungsaeusserungen bleiben Dir als Gast noch die Ebenen, das
sollte doch reichen. Und ja, es ist prinzipiell egal, welchen Inhalts die
Artikel sind. Wenn Du eine Meinung vertrittst, dann stehe mit Deinem
(virtuellen) Namen dahinter.


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re: Re: Offizielle Beschwerde (Vardion,  2. Apr 2003, 12:37:01):
~#! rn=Ark rt=1049275885 rg=polizei.beschwerden
~#! tid=1049238277
Letztendlich ist das doch eh Haarspalterei. Wenn ich anonym posten will, kann
ich mir auch eben nen unmarkierten Level1-Spieler anlegen und mit dem was
posten. Wird das dann auch geloescht? Also kann man auch gleich mit nem Gast
posten...

Vardion

-----------------------------------------------------------------------------



Re^3: Offizielle Beschwerde (Cadrach,  2. Apr 2003, 12:38:53):
~#! rn=Vardion rt=1049279821 rg=polizei.beschwerden
~#! tid=1049238277
Es verbietet doch niemand hier mit nem Gast zu posten. Es verbietet aber auch
niemand das sich danach ein beiebiger Spieler als Gast1 einloggt und dann
Artikel loescht. Grimmborn vorzuwerfen das er zu faul ist, sich dazu extra als
Gast1 einzuloggen ist doch wirklich Haarspalterei.

Cad*

-----------------------------------------------------------------------------



Re: Re: Offizielle Beschwerde (Zook,  2. Apr 2003, 19:19:52):
~#! rn=Ark rt=1049275885 rg=polizei.beschwerden
~#! tid=1049238277
Zur Ergaenzung: Grimmborn hat in der MPA in einigen Rubriken Schreibrechte
zum Verlegen, Loeschen von Artikeln. 

Worin liegt nun die Kompetenzueberschreitung? 

Zook.

-----------------------------------------------------------------------------



Re^3: Offizielle Beschwerde (Zook,  2. Apr 2003, 19:23:21):
~#! rn=Zook rt=1049303992 rg=polizei.beschwerden
~#! tid=1049238277
Ah, ich werde auf Hinweis eines Magiers etwas genauer: Es muss heissen
"in fast allen Rubriken".

Zook, Gusto und so und Anpassung. ;)

-----------------------------------------------------------------------------



Beschwerde (Georgewbush, 27. Apr 2003, 18:28:28):
Hiermit moechte ich mich ueber Magierwillkuer beschweren. Mein Recht auf
Meinungsaeusserung wurde heute von einem noch unbekannten Magier aufs uebelste
beschnitten - mir wurde die Moeglichkeit auf -D-Chat zu kommunizieren
begruendungslos genommen. Ich habe jedoch in keinster Weise geltendes
Deutsches Recht verletzt oder Personen beleidigt. Wenn ich eine Meinung
vertrete die dem betreffenden Magier nicht gefaellt, kann er doch "ignoriere"
benutzen oder das mit mir im Persoenlichen Gespraech ausdiskutieren.
Ich bitte um Wiederherstellung der Moeglichkeit auf -D-Chat zu senden und
bitte um Unterlassung weiter Beschraenkung meiner Meinungsfreiheit.
Herzlichen Dank.

-----------------------------------------------------------------------------



Re: Re: Beschwerde (Georgewbush, 27. Apr 2003, 18:35:25):
~#! rn=Mandragon rt=1051461201 rg=schmarrn
~#! tid=1051460908
Danke, genau so etwas habe ich gemeint. Den Anspruch der Meinungsfreiheit
erhebt das MorgenGrauen also inzwischen nicht mehr fuer sich. Gut zu wissen.

-----------------------------------------------------------------------------



Re^3: Beschwerde (Liara, 27. Apr 2003, 18:37:32):
~#! rn=Georgewbush rt=1051461325 rg=polizei.beschwerden
~#! tid=1051460908
Wenn sich andere Spieler in ihrem Spielspass beeintraechtigt fuehlen, kann ein
Magier zu solchen Mitteln greifen.
Das war hier sicherlich der Fall, wenn du mal die D-Chat-History liest.

-----------------------------------------------------------------------------



Re^4: Beschwerde (Georgewbush, 27. Apr 2003, 18:38:57):
~#! rn=Liara rt=1051461452 rg=polizei.beschwerden
~#! tid=1051460908
"hilfe ignoriere". Immer, wenn man sich mit Menschen unterhaelt, Meinungen
aeussert, fuehlen sich Menschen falsch behandelt. Unterbindet man deshalb die
Kommunikation, weil sie einzelnen nicht passt?

-----------------------------------------------------------------------------



Re^5: Beschwerde (Vector, 27. Apr 2003, 18:40:15):
~#! rn=Georgewbush rt=1051461537 rg=polizei.beschwerden
~#! tid=1051460908
ja

-----------------------------------------------------------------------------



Re^6: Beschwerde (Georgewbush, 27. Apr 2003, 18:41:50):
~#! rn=Vector rt=1051461615 rg=polizei.beschwerden
~#! tid=1051460908
Die Frage war eigentlich rhetorisch. Das man sie im MorgenGrauen unterbindet,
habe ich gemerkt, das musst Du mir nicht noch beantworten. :)

-----------------------------------------------------------------------------



Re^7: Beschwerde (Croft, 27. Apr 2003, 18:44:21):
~#! rn=Georgewbush rt=1051461710 rg=polizei.beschwerden
~#! tid=1051460908
Such dir halt ein anderes MUD falls du auf D-Chat was sagen willst.
Ebenenbenutzung ist ein Privileg und kein Recht ,-)

Croft

-----------------------------------------------------------------------------



Re^5: Beschwerde (Liara, 27. Apr 2003, 18:49:02):
~#! rn=Georgewbush rt=1051461537 rg=polizei.beschwerden
~#! tid=1051460908
Du moechtest durch die Wahl deines Namens und durch deine Aussagen
provozieren. Warum wundert es dich, wenn du es tatsaechlich tust? ;)
Und diese Kombination auf die Spieler in den Muds so stoerend wirkt, dass du
gebeten wurdest, dir einen anderen Namen zuzulegen?

Wenn du jetzt keinen Respekt vor deinen Mitspielern zeigst, bist du wirklich
nur ein Stoerenfried. Also, such dir einen Namen, mit dem du hier Freunde
gewinnen kannst oder lies dir mal ganz genau hilfe selbstloeschung durch. ;)
Sonst wird das in absehbarer Zukunft ein Magier fuer dich erledigen.

Moeglicherweise bist DU ja derjenige, der hier sonst etwas verpasst. :)

-----------------------------------------------------------------------------



Re^6: Beschwerde (Catweazle, 28. Apr 2003, 09:23:24):
~#! rn=Liara rt=1051462142 rg=polizei.beschwerden
~#! tid=1051460908
Moin.

Bei solchen Namensgebungen regieren bei mir immer alte Reflexe. Moechte mich
jemand genauer aufklaeren, was genau auf d-chat gelaufen ist, bevor ich zur
Tat schreite?

YTC

-----------------------------------------------------------------------------



Re^7: Beschwerde (Zarniya, 28. Apr 2003, 10:02:31):
~#! rn=Catweazle rt=1051514604 rg=polizei.beschwerden
~#! tid=1051460908
Catty, es gibt MUDs, wo es egal waere, was derjenige auf d-chat gesagt hat...
Bei einem solchen Namen kann man keine Intension sehen, hier am SPIEL
teilzunehmen und damit waere der Charakter schon lange weg. Was haelt Dich
auf? Wirst Du weich im Alter?

-----------------------------------------------------------------------------



Re^8: Beschwerde (Puk, 28. Apr 2003, 10:12:40):
~#! rn=Zarniya rt=1051516951 rg=polizei.beschwerden
~#! tid=1051460908
ich mein auch wenn schon bush und saddam gebanisht sind sollte auch
georgewbush oder andere ausfuehrugen gebanisht werden, da sollte sich dann ein
spieler ueber die loeschung dieses chars nicht wundern.

Puk

-----------------------------------------------------------------------------



Re^3: Beschwerde (Ark, 28. Apr 2003, 11:43:09):
~#! rn=Georgewbush rt=1051461325 rg=polizei.beschwerden
~#! tid=1051460908
Nun, der politisch Interessierte wird sich, wenn er seine Meinung kundtun
will, diese hoffentlich nicht jedem ungefragt aufdraengen, sondern, statt sie
ungefragt in artfremden Plattformen hinauszubloeken, einen wirksamen Auftritt
verschaffen. Wir spielen hier ein Spiel. Dein Name suggeriert, dass Du das
weniger tun willst. Warum gehst Du nicht in entsprechende Chat-Groups? Oder
wirst Du dort ignoriert? Die Art, sich hier mit Namen politischer
Persoenlichkeiten hier einzuloggen, pseudopolitisches von sich zu geben und
sich dann lauthals ueber die Nichteinhaltung verfassungsrechtlicher
Grundrechte zu beklagen, riecht nach
"Ich-will-Stunk-und-das-soll-jeder-mitkriegen".
Herzlichen Dank. Nein danke.


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^4: Beschwerde (Cadrach, 28. Apr 2003, 12:36:52):
~#! rn=Ark rt=1051522989 rg=polizei.beschwerden
~#! tid=1051460908
Noch viel laecherlicher als die Aktion von ihm selbst, finde ich allerdings
die Tatsache das tatsaechlich Leute ernsthaft auf ihn eingehen. Loescht ihn,
ignoriert ihn, oder lasst ihn gewaehren bis es ihm langweilig wird. Aber geht
doch net immer gross auf solche Spinner ein - eigentlich ist es naemlich genau
das was sie wollen.

Cad*

P.S.: Fuer spitzfindige Leser: Ich gehe net auf ihn ein, sondern auf all
diejenigen die da grosse Threads draus machen.

-----------------------------------------------------------------------------



Re^5: Beschwerde (Catweazle, 28. Apr 2003, 13:38:04):
~#! rn=Cadrach rt=1051526212 rg=polizei.beschwerden
~#! tid=1051460908
Siehste, und bevor ich aus der Huefte schiesse, haett ich halt gern gewusst,
ob es ein solcher Spinner ist. Anscheinend ist dem aber so. Ein d-chat-log
haette mir direkt geholfen. Haett ichs selber mitgekriegt haette er
wahrscheinlich nur Millisekunden ueberlebt.

YTC

-----------------------------------------------------------------------------



Re^6: Beschwerde (Patryn, 28. Apr 2003, 13:44:08):
~#! rn=Catweazle rt=1051529884 rg=polizei.beschwerden
~#! tid=1051460908
Es gibt viele Muds, wo die Namenswahl und auch die Kommunikation ueber ein
sag-im-Raum hinaus sehr viel restriktiver gehandhabt werden, vielleicht
sollte er dort mal vorbeischaun ;)
Die Stichworte Recht/Demokratie/Moral sind im Mud nun mal abweichend vom RL,
und so solls auch sein *g*

-- 
patryn

-----------------------------------------------------------------------------



Re^5: Beschwerde (Bambi, 28. Apr 2003, 13:55:28):
~#! rn=Cadrach rt=1051526212 rg=polizei.beschwerden
~#! tid=1051460908
> P.S.: Fuer spitzfindige Leser: Ich gehe net auf ihn ein
Glaubst Du das wenigstens selbst?

-----------------------------------------------------------------------------



Beleidigung an die ganze Spielerschaft und an die Magier (Johnsilver, 21. Nov 2004, 05:18:42):
Hallo,
soeben las ich mit entsetzen die Hilfs-Seite zu den Goettern. Darin steht
tatsaechlich, dass Spieler, Seher, Magier und Erzmagier lediglich
"Emporkoemmlinge" sind. Daher moechte ich mich ueber den Verfasser dieser Doku
beschweren, denn sowas empfinde ich als Beleidigung.
Gruss,
John

-----------------------------------------------------------------------------



Re: Beleidigung an die ganze Spielerschaft und an die Magier (Muadib, 22. Nov 2004, 09:44:20):
~#! rn=Johnsilver rt=1101010722 rg=polizei.beschwerden
~#! tid=1101010722
fixed

ps: ja ich habe keinen humor

-----------------------------------------------------------------------------



bitte spielpausen (Muadib, 20. Okt 2005, 22:17:49):

Perkeo schuettelt mit seiner Spendenbuechse. Du solltest lieber ein paar
Muenzen spenden, schliesslich ist das Geld fuer einen guten Zweck.
Du wirfst eine Muenze in die Spendenbuechse.
Dies war leider Spielerhilfe! Der Vorgang wird automatisch geloggt und an alle
Erzmagier via Mail weitergereicht!


bitte mindestens einen tag spielpausen

-----------------------------------------------------------------------------



Re: bitte spielpausen (Zook, 21. Okt 2005, 09:16:55):
~#! rn=Muadib rt=1129839469 rg=polizei.beschwerden
~#! tid=1129839469
Vor allem bugt es, ich habe gar keine E-Mail bekommen.

Zook.

-----------------------------------------------------------------------------



Re^112147: Hach... nu is was drin, inner MPA. (Kerrier, 20. Apr 2006, 17:57:00):
~#! rn=Zook rt=1145547492 rg=megaschmarrn
~#! tid=982328278
Anzeige gegen Unbekannt

Ich erstatte hiermit Anzeige gegen einen mir unbekannten Dunkelelfen, der mich
in der Nacht von Ostersonntag auf Ostermontag um 2:00 mit dem Verfluche-Spell
beglueckt hat und alle am Koerper getragene Ausruestung daher nachhaltig
beschaedigt.


Abgesehen davon, dass ich es eine grobe Frechheit finde, seine Mitspieler un-
gefragt mit Spells zu traktieren, die unangenehme Nebenwirkungen haben (ja,
dazu zaehlt auch giftschwaechung, segen, selbst huelle (wenn man lieber schutz
haette)), ist das Verfluchen der GESAMTEN Ausruestung mit der Folge, dass die
genannte Ausruestung durchgaengig verschleisst und nicht mehr Ruestbar ist,
und das IRREVERSIBEL eine Nachhaltige Schaedigung des Betroffenen, der ich
einen PK durchaus vorziehen wuerde, da das Wiederbeschaffen der Ausruestung je
nach Stueck SEHR aufwaendig ist.

Alle anderweitigen Ueberlegungen (wie das Verhindern der Anwendung von Spieler
zu Spieler) gehoeren nicht hierher.

EK

-----------------------------------------------------------------------------



Kanyahon (Algrim, 25. Mar 2009, 21:52:02):
Zwei Monate fuer die Tiere der Wolpertingerquest? Na das ist wirkliche
Magierwilkuer...**

-----------------------------------------------------------------------------



Re: Kanyahon (Amaryllis, 25. Mar 2009, 21:54:21):
~#! rn=Algrim rt=1238014322 rg=polizei.beschwerden
~#! tid=1238014322
Verglichen mit Strafen in der Vergangenheit beim Verbreiten von Loesungen ist
das imho sehr, sehr ok. Insbesondere wurde das Urteil bereits unter den Erzies
diskutiert. Dir steht es aber natuerlich frei, Dich an Zook oder Rumata zu
wenden, wenn Du Dich ungerecht behandelt fuehlst.

Ama*

-----------------------------------------------------------------------------



Re: Re: Kanyahon (Algrim, 25. Mar 2009, 21:58:00):
~#! rn=Amaryllis rt=1238014461 rg=polizei.beschwerden
~#! tid=1238014322
Wenn fuer jede KL so ein Strafmass angeschlagen wird, wuerde es fuer jede
richtige KL zehn Jahre Spielpause geben - ich habe zehn Tiere aufgelistet und
bekomme zwei Monate? Joah, und dann regt ihr euch auf, dass keine neuen
Spieler mehr rein kommen - wunderts wen? 

-----------------------------------------------------------------------------



Re^3: Kanyahon (Vector, 25. Mar 2009, 21:58:38):
~#! rn=Algrim rt=1238014680 rg=polizei.beschwerden
~#! tid=1238014322
nun sag nicht, dass man sich dafuer entschuldigen muss dass man
sich an die regeln haelt?

-----------------------------------------------------------------------------



Re^4: Kanyahon (Kessa, 25. Mar 2009, 22:17:09):
~#! rn=Vector rt=1238014718 rg=polizei.beschwerden
~#! tid=1238014322

Es ist nun mal verboten. Das muss dir nicht gefallen, es gehoert einfach zu
den Spielregeln. Wenn du es trotzdem machst, musst du damit rechnen, erwischt
zu werden und damit klarzukommen.
Und ob es jetzt die 10 Tierchen sind oder was anderes, ist ziemlich egal. Der
naechste schickt eine KL ueber was anderes rum und beruft sich dabei drauf,
dass es ja auch ok war, diese Tiere rumzureichen. Ergo: entweder man verbietet
es generell und haelt sich auch konsequent dran oder das Verbot wird sinnlos.

Ich hoffe auf ein ordentliches Besaeufnis im Struf, wenn du wieder da bist!


-----------------------------------------------------------------------------



Re: Kanyahon (Ark, 25. Mar 2009, 23:17:31):
~#! rn=Algrim rt=1238014322 rg=polizei.beschwerden
~#! tid=1238014322
Natuerlich, jede Strafe gegen Verstoesse ist Willkuer. Warum, frage ich mich,
muss denn KL verschicken sein? Das ist doch eigentlich die Frage. Kaum
"entdecken" alle, dass es hier Regeln gibt, geht ein Grundrumoren durch einige
Koepfe, dabei muss man sich echt fragen, was alles noch so passiert, was nicht
geahndet werden kann. So wenig Regeln, um ein Spiel ein Spiel zu belassen, und
nichtmal das klappt bei einigen.
Richtige Willkuer waere sofortige Loeschung. Man sieht hoffentlich, dass man
es sich trotzdem nicht einfach macht. In der guten alten Zeit gab es manchmal
weniger Federlesen.


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re: Re: Kanyahon (Mirimadel, 26. Mar 2009, 01:01:04):
~#! rn=Ark rt=1238019451 rg=polizei.beschwerden
~#! tid=1238014322
Hi Ihrs,
weiss nicht genau, ob das nicht ueberzogen ist.
Hoffe ja das Kanyahon wieder ins spiel zurueck kommt.
Glaube ich wuerde mir in den zwei Wochen was anderes suchen, man hat ja dann
die Zeit dazu und den Ansporn.
wer eine KL nutzt ist doch selber Schuld, der findet ebend nicht so viele FP.
Gruessel Miri

-----------------------------------------------------------------------------



Re: Kanyahon (Srabi, 26. Mar 2009, 06:32:32):
~#! rn=Algrim rt=1238014322 rg=polizei.beschwerden
~#! tid=1238014322
Ich verstehe momentan die ganze Diskussion nicht. Es is doch bekannt, das die
Weitergabe von KL's nicht erlaubt ist.

Wenn in der Vergangenheit ne KL ohne Ahnung durchgekommen ist, dann hat das
wahrscheinlich auch damit zu tun, das ein Sheriff es nicht mitbekommen hat.

Zu Dir Kanyahon. Ist zwar sehr schade, das man nun zwei Monate nichts von Dir
hoert, aber Du hast es eigentlich auch gewusst, das so etwas verboten ist.
Wenn man sich nicht an die Regeln haelt, dann muss man eben mit den
Konsequenzen eben leben.

Zu allen anderen, die hier Magiewillkuer bruellen: seid doch froh, das es im
MorgenGrauen einen Sheriff gibt, der aktiv ist und auch mal wieder die
Regelverstoesse ahndet. Oder haben jetzt die Skripter Angst erwischt zu werden
:-)

Zum Abschluss: KL's zu verwenden ist Schwchsinnig, schliesslich benoetigt man
ne Menge Forscherpunkte, due durch KL's verloren gehen und das kann ja auch
nicht im Sinne des Spielers sein.

Einen schoenen Tag Euch allen trotzdem.

Hexenmeister Srabi von Angmar

-----------------------------------------------------------------------------



Re^3: Kanyahon (Kessa, 26. Mar 2009, 07:58:45):
~#! rn=Mirimadel rt=1238025664 rg=polizei.beschwerden
~#! tid=1238014322
So viele FP braucht man gar nicht mehr zum Seherwerden, Miri... 

Ansonsten: Wenn die Belohnung fuers Questen rein im Spass und im
Erfolgserlebnis liegen wuerde, wuerde ich dir absolut recht geben. Selber
schuld, wer sich drum bringt. (Ich will auch nicht abstreiten, dass einige
Quests so geartet sind, dass ich jeden gut verstehen kann, der da lieber per
KL durchrennen will.) Aber: Die Belohnung besteht ausserdem in jeder Menge
Stufenpunkte. Und damit wird die Sache unfair denen gegenueber, die keine KL
verwenden und dadurch sehr viel langsamer leveln als die KL-Nutzer.


-----------------------------------------------------------------------------



Re^4: Kanyahon (Darklor, 26. Mar 2009, 11:37:19):
~#! rn=Kessa rt=1238050725 rg=polizei.beschwerden
~#! tid=1238014322
Einfach nur fuer die Nennung der Tiere? - Dann wuerde ich es wirklich fuer
Ueberzogen halten - Is noch keine KL sondern nur in Typ, bei welchen Tieren
man mal nach Teilen ausschau halten koennte...

Darklor

-----------------------------------------------------------------------------



Re^5: Kanyahon (Torlof, 26. Mar 2009, 11:47:27):
~#! rn=Darklor rt=1238063839 rg=polizei.beschwerden
~#! tid=1238014322
Wenn man's eine halbe KL nennt ist die Strafe wohl angemessen, wenn ich mich
an die fuer die letzte KLVerteilung erinner.
Jedoch werde ich diese quest, ob ihrer "Fuelle" an Hinweisen, (natuerlich muss
es eine solche quest geben, eig. nix dagegen) aufschieben.
Zur Milde: Wenn das MG das erste und/oder einzige MUD ist, ist man natuerlich
verwoehnt, wie wir es ja schon von der Zweitidiskussion wissen! (Deute ich es
richtig, so erhaelt man im OGame prinzipiell fuer einen Verstoss eine Sperre
bis ins Jahr2036 (gilt auch fuer beleidigungen).

-----------------------------------------------------------------------------



Re^6: Kanyahon (Alboin, 26. Mar 2009, 14:05:55):
~#! rn=Torlof rt=1238064447 rg=polizei.beschwerden
~#! tid=1238014322
Ich gebe mal Anatols Frage aus Megaschmarrn weiter:
Kann man bei der Wolpiquest ueberhaupt Hinweise finden welche Tiere konkret in
Frage kommen?
al

-----------------------------------------------------------------------------



Re^7: Kanyahon (Blivi, 26. Mar 2009, 14:06:41):
~#! rn=Alboin rt=1238072755 rg=polizei.beschwerden
~#! tid=1238014322
Glaub der sagt nur die Gebiete in denen Tiere sein koennten.

-----------------------------------------------------------------------------



Re^8: Kanyahon (Kessa, 26. Mar 2009, 14:24:31):
~#! rn=Blivi rt=1238072801 rg=polizei.beschwerden
~#! tid=1238014322
Ich erinnere mich auch nicht an naehere Hinweise. Vielleicht kann man da mal
was ergaenzen? (Damit fuehle ich mich durchaus auch selber angesprochen :))

(Allerdings sollte das nicht als Grund zum KL-Verteilen gelten, Tips geben
kann man auch anders.)


-----------------------------------------------------------------------------



Re^9: Kanyahon (Blivi, 26. Mar 2009, 14:27:57):
~#! rn=Kessa rt=1238073871 rg=polizei.beschwerden
~#! tid=1238014322
Ja, da sollte man wirklich eher etwas aendern, ok einige sind in direkter
naehe aber andere naja

-----------------------------------------------------------------------------



Re^8: Kanyahon (Anatol, 26. Mar 2009, 14:27:59):
~#! rn=Blivi rt=1238072801 rg=polizei.beschwerden
~#! tid=1238014322
Ich habe eine Mail [1] gefunden, die auf das Problem, dass mit dem Wachstum
des Muds und der Verstreuung der Organspender einhergeht (das Fehlen von
konkreten Hinweisen auf Spender und Spenden), hinweist. Das Problem wurde
von Seiten der verantwortlichen Magierschaft erkannt und ein Vorschlag zur
Loesung formuliert.

Ob daraus eine Umsetzung abgeleitet wurde, entzieht sich meiner Kenntnis; 
moeglicherweise kann Zook hier Licht ins Dunkel bringen. Bis dahin halte
ich Be- und Verurteilungen des gewaehlten Strafmasses fuer verfrueht [2].

Anatol

[1] Diese Mail datiert auf den April 2001.
[2] Davon abgesehen: Bestuende das Problem noch, waere es sicher sinnvoller
    gewesen, dem Questerzmagier ob des Missstandes Bescheid zu geben,
    anstatt eine Organspenderliste durchzureichen [3].
[3] Bestuende dieses Problem noch, wuerde mich jetzt interessieren, wer das
    Abenteuer in den letzten fuenf Jahren ohne eine Organspenderliste hat
    loesen koennen.


-----------------------------------------------------------------------------



Re^9: Kanyahon (Blivi, 26. Mar 2009, 14:31:00):
~#! rn=Anatol rt=1238074079 rg=polizei.beschwerden
~#! tid=1238014322
Naja wenn man glueck hat hat man eben die npcs die nur wenige raeume entfernt
sind

-----------------------------------------------------------------------------



Re^5: Kanyahon (Ark, 26. Mar 2009, 15:51:30):
~#! rn=Darklor rt=1238063839 rg=polizei.beschwerden
~#! tid=1238014322
Ich hab kein Tier gesehen auf der Hochebene, der Wueste oder sonstwo. Sachen
wie "nw o so n ..." sind unverfaenglich, bis sie im entsprechenden Kontext
auftauchen. Also ganz blauaeugig sind wir nicht :-)


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^7: Kanyahon (Ark, 26. Mar 2009, 15:53:49):
~#! rn=Alboin rt=1238072755 rg=polizei.beschwerden
~#! tid=1238014322
Der Witz der Quest ist es u.a. das selbst Herausfinden. Das mag man nun als
langweilig, oede oder sonstwie bezeichnen, aber es soll tatsaechlich Leute
geben, die das eigenstaendig machen koennen.
Hier noch ein innovativer Vorschlag: wenn eine KL bekannt wird, wird die Quest
XY auf 1 AP gesenkt. Ab sofort sind alle KLs fuer alle zugaenglich und
erlaubt. Ok?


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^8: Kanyahon (Alboin, 26. Mar 2009, 16:12:34):
~#! rn=Ark rt=1238079229 rg=polizei.beschwerden
~#! tid=1238014322
Gegenfrage wer hat die Quest ohne Hilfe gemacht, wer hat nie eine KL benutzt
oder sich zumindest mal  "durchschleifen" lassen. Meine Meinung ist die: wer
KLs noetig hat bringt sich mitunter sebst um den Spielspass, dann gibt es auch
Magier die mal schnell reagieren und auf Basis der aktuellen KL gleich mal ein
paar Fallen reinproggen. Man findet immer einen Weg. 
Im Prinzip ist das Verhalten doch hier Heuchelei und aehnelt dem Kampf gegen
Terror, statt neuer Ideen mehr restiktive Bestimmungen. Insofern kein Wunder
das Euch die Leute wegrennen.

al
p.s. ja ich benutze auch Polemik als Stilmittel;-)

-----------------------------------------------------------------------------



Re^9: Kanyahon (Kessa, 26. Mar 2009, 16:18:50):
~#! rn=Alboin rt=1238080354 rg=polizei.beschwerden
~#! tid=1238014322
Dann mal her mit deinen neuen Ideen, Alboin.

Ich hatte es vorhin schon geschrieben, vielleicht hast du es ja ueberlesen:
Dem Argument "Man bringt sich selber um den Spass" stimme ich zu. Allerdings
gibt es fuer das Loesen von Quests auch die Belohnung in Form von teilweise
recht vielen Stufenpunkten durch AP. Ark hatte auch nochmal darauf
hingewiesen. darauf gehst du ueberhaupt nicht ein. Willst du es wirklich als
Heuchelei bezeichnen, wenn man zu verhindern versucht, dass sich einige Leute
anhand von KLs diese Stufenpunkte schenken lassen?


-----------------------------------------------------------------------------



Re^10: Kanyahon (Kessa, 26. Mar 2009, 16:22:39):
~#! rn=Kessa rt=1238080730 rg=polizei.beschwerden
~#! tid=1238014322
Ach ja, fast vergessen, da schon zweimal gefragt wurde: Ich hab damals mit
Bran die Quest ohne KL gemacht. Das ist zwar, glaube ich, laenger als 5 Jahre
her, aber so massiv haben sich die in Frage kommenden Gegenden doch wohl nicht
veraendert.

-----------------------------------------------------------------------------



Re^10: Kanyahon (Alboin, 26. Mar 2009, 16:25:36):
~#! rn=Kessa rt=1238080730 rg=polizei.beschwerden
~#! tid=1238014322
Viele andere und ich habe die Stufenpunkte damals auch geschenkt bekommen wenn
du so willst.. Und wenn Du meinen Beitrag liest, dann kannst du feststellen
das ich nicht gegen das VERHINDERN bin. Zumindest nicht mittels happiger
Strafen (wenn sowas ueberhaupt verhindern tut)
al

-----------------------------------------------------------------------------



Re^9: Kanyahon (Ark, 26. Mar 2009, 16:26:58):
~#! rn=Alboin rt=1238080354 rg=polizei.beschwerden
~#! tid=1238014322
Warum, ich mache das Problem der Einhaltung von Regeln nicht mehr zu dem
Problem der EMs. De facto koennen sich dann die Spieler damit befassen, wie
sie damit umgehen. Spielspass mit KLs ist dann kein Thema mehr, nicht wahr?


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^11: Kanyahon (Kessa, 26. Mar 2009, 16:28:45):
~#! rn=Alboin rt=1238081136 rg=polizei.beschwerden
~#! tid=1238014322
Wenn das fuer dich so in Ordnung ist - deine eigene Meinung steht dir ja zu.
Ich verstehe nur immer noch nicht, wie du dazu kommst, Leuten, die darueber
anders denken, Heuchelei vorzuwerfen.

-----------------------------------------------------------------------------



Re^9: Kanyahon (Zesstra, 26. Mar 2009, 16:33:00):
~#! rn=Alboin rt=1238080354 rg=polizei.beschwerden
~#! tid=1238014322
Ah. Neue Regeln/Bestimmungen. Verdammt. Ich hab schon wieder was nicht
mitgekriegt. Ich werde bestimmt bald von Zook gespielpaust. Bitte klaer mich
Alboin, damit ich diesem grausigen Schicksal entgehe.

Zesstra

-----------------------------------------------------------------------------



Re^12: Kanyahon (Alboin, 26. Mar 2009, 16:34:10):
~#! rn=Kessa rt=1238081325 rg=polizei.beschwerden
~#! tid=1238014322
Ja wenn du der Meinung bist du hast hier immer alles schoen alleine
rausbekommen und nie was mit augenzwinkenr abgetan, dann wirf ruhig den ersten
Stein.
Und at Ark ja ich glaube den Spielern sollte man den Umgang mit KLs
ueberlassen, ich denke die meisten koennen sehr gut entscheiden was gut oder
shclecht fuer sie ist.
al

-----------------------------------------------------------------------------



Re^13: Kanyahon (Kessa, 26. Mar 2009, 16:37:16):
~#! rn=Alboin rt=1238081650 rg=polizei.beschwerden
~#! tid=1238014322
Nein, ich habe nicht immer alles alleine rausbekommen. Ich bekam oft Tips, mal
gute, mal schlechte. Die schlechtesten kamen in Form von KLs im Kleinformat,
die besten waren solche Tips, die mir halfen, selbst drauf zu kommen.

Und ich werfe generell nicht so schnell mit ersten Steinen. Ich erlaube mir
einfach, meine Ansicht zu der Sache zu haben, die sich zufaellig mit den
Spielregeln hier ganz gut vertraegt. Und ich frage dich nochmal: Wo
diagnostizierst du Heuchelei?

-----------------------------------------------------------------------------



Re^13: Kanyahon (Ark, 26. Mar 2009, 16:38:01):
~#! rn=Alboin rt=1238081650 rg=polizei.beschwerden
~#! tid=1238014322
Schade dass Du nicht mehr spielst. Hol doch mal Spielermeinungen dazu bitte
ein.


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^14: Kanyahon (Alboin, 26. Mar 2009, 16:38:13):
~#! rn=Kessa rt=1238081836 rg=polizei.beschwerden
~#! tid=1238014322
Du hast selbst KLs bekommendann tue dir bitte eine strafe auferlegen, sonst
ist es Heuchelei.
al

-----------------------------------------------------------------------------



Re^15: Kanyahon (Kessa, 26. Mar 2009, 16:39:35):
~#! rn=Alboin rt=1238081893 rg=polizei.beschwerden
~#! tid=1238014322
*seufz* Wenn man auf den Ebenen um Tips bittet und dann einen KL-aehnlichen
Tip bekommt, ist das nicht strafbar. Allerdings finde ich, dass deine Art zu
diskutieren langsam Strafe verdient.

-----------------------------------------------------------------------------



Re^16: Kanyahon (Alboin, 26. Mar 2009, 16:42:29):
~#! rn=Kessa rt=1238081975 rg=polizei.beschwerden
~#! tid=1238014322
Oh Du hast ein KL ohne Absicht bekommen, nu tust du mir aber auch leid.
Und ja bestrafen kannst du mich gerne.
al

-----------------------------------------------------------------------------



Re^17: Kanyahon (Kessa, 26. Mar 2009, 16:44:38):
~#! rn=Alboin rt=1238082149 rg=polizei.beschwerden
~#! tid=1238014322
Du willst einfach zanken, oder? Machen wir doch per tm weiter.


-----------------------------------------------------------------------------



Re^3: Kanyahon (Zesstra, 26. Mar 2009, 17:34:22):
~#! rn=Algrim rt=1238014680 rg=polizei.beschwerden
~#! tid=1238014322
Eigentlich wollte ich inhaltlich mich nicht aeussern, aber da sich jetzt
einige Leute an 10 Namen aufhaengen: die Wolpiquest hat mehr als 10 Tiere.
Und als persoenliche Meinung: da ein wesentlicher Teil der Quest ist, die
Tiere herauszufinden, ist das Auflisten aller davon jenseits einer wie auch
immer gearteten Grauzone.

Zesstra

-----------------------------------------------------------------------------



Re: Re: Kanyahon (Algrim, 26. Mar 2009, 17:39:41):
~#! rn=Ark rt=1238019451 rg=polizei.beschwerden
~#! tid=1238014322
Ja, was passiert hier sonst noch? Leute laufen jahre lang mit unangemeldeten
Zweitis an und die werden nicht in den Knast gesteckt? Oder: ich wills ja
keinen vorwerfen, aber ich bin mir sicher, dass ich ein paar leuts kenne, die
nur durch kls (oder Fast-KLs) zu Sehern und hoeher geworden sind. Und das
nennst du dann nicht Magierwilkuer?
Aber wie man meint**

-----------------------------------------------------------------------------



Re^3: Kanyahon (Torlof, 26. Mar 2009, 17:46:09):
~#! rn=Algrim rt=1238085581 rg=polizei.beschwerden
~#! tid=1238014322
Der "Witz" mit der Willkuer war sicher ein Zeitl lustig, allerdings kommt's
immer d'rauf an, wer erwischt wird und wer nicht.Nun wirst schlicht 2Monate
spaeter seher.

-----------------------------------------------------------------------------



Re^9: Kanyahon (Algrim, 26. Mar 2009, 17:46:17):
~#! rn=Kessa rt=1238073871 rg=polizei.beschwerden
~#! tid=1238014322
Und was habe ich getan? Ich habe die Tiere aufgelistet, jedoch nicht, wo sie
zu finden sind.
Also ich definiere das als Tipp, und zwar klar als Tipp...**

-----------------------------------------------------------------------------



Re^10: Kanyahon (Kessa, 26. Mar 2009, 17:49:07):
~#! rn=Algrim rt=1238085977 rg=polizei.beschwerden
~#! tid=1238014322
Das finde ich persoenlich auch nicht besonders schlimm. Wenn es aber nun mal
von den dafuer Zustaendigen als KL gewertet wird, kann mir das passen oder
nicht, ich muss es akzeptieren. Auf einer anderen Schiene koennte man ja
vielleicht versuchen, klarere Definitionen fuer KL und nicht-KL zu finden. Das
wuerde ich durchaus auch gut finden.

-----------------------------------------------------------------------------



Re^11: Kanyahon (Drogo, 26. Mar 2009, 17:50:14):
~#! rn=Kessa rt=1238086147 rg=polizei.beschwerden
~#! tid=1238014322
Und bis dahin: BLOSS KEINE TIPPS MEHR GEBEN!!!

-----------------------------------------------------------------------------



Re^12: Kanyahon (Kessa, 26. Mar 2009, 17:53:34):
~#! rn=Drogo rt=1238086214 rg=polizei.beschwerden
~#! tid=1238014322
Naaaaaja. Man kann durchaus Tips geben, die klar NICHT unter KL fallen. Das
mit den Tieren ist doch wohl ne Grauzone, oder ist da jemand anderer Ansicht?
Mir waere es klar, wenn ich diese Wolpi-Viecher direkt in Reinform weitergeben
wuerde, dass ich dafuer eventuell Aerger kriegen koennte.

-----------------------------------------------------------------------------



Re^10: Kanyahon (Anatol, 26. Mar 2009, 17:53:52):
~#! rn=Algrim rt=1238085977 rg=polizei.beschwerden
~#! tid=1238014322
Dein Argumentationsspielraum bezueglich des Umstands, OB Du etwas falsch
gemacht hast, ist m.E. sehr begrenzt. Ein Tip wie z.B. dass in dieser oder
jener Gegend noch jemand rumsteht, der bereit ist, seine Leber zu geben,
ist was anderes als eine vollstaendige Auflistung.

Als Du die Quest damals selbst loesest, hast Du die Liste auch nur von 
irgendwem zugeschickt bekommen, oder? Weshalb hast Du da nicht auf die
Quest-geloest-Mail reagiert und darauf hingewiesen, dass dieses Abenteuer
ungemein aufwendig ist und das in keinem Verhaeltnis zu den Punkten steht?

Auch Magier sind fuer Feedback dankbar.
Meistens.

Anatol

-----------------------------------------------------------------------------



Re^3: Kanyahon (Ark, 26. Mar 2009, 17:57:19):
~#! rn=Algrim rt=1238085581 rg=polizei.beschwerden
~#! tid=1238014322
Beweisbarkeit. Willkuer waere, wenn ich ohne ersichtlichen Grund Spieler zappe
oder loesche. Und dafuer muss ich mich auch zur Rechenschaft ziehen lassen.
Und wenn hier noch einer mit der guten alten Zeit kommt, wird er geboemmelt.
Das MG entwickelt sich weiter, Leute (und Meinungen) aendern sich (aber nicht
die Regeln, die hatten offenbar zu lange Pause bei der Durchsetzung, so dass
das Fehlen von Umsetzung mit Gewohnheitsrecht verwechselt wurde).
Den Versuch, das mit weglaufenden Spielern oder mangelndem Zulauf in
Verbindung zu bringen, moechte ich mal als klaeglich bezeichnen. Wer klaut und
bestraft wird, und sich dann ueber das Strafmass erregt, dem kann ich nicht
helfen. Hier wird keinem die Hand abgehackt.
Es ist ziemlich klar, dass nicht alle Verstoesse aufgeklaert werden. Deshalb
ist sicher ein Abschreckungsfaktor im Strafmass mit einkalkuliert. Dennoch ist
es witzlos, sich ueber die Tatsache des Regelverstosses oder der Strafe zu
aergern, nehmt es bitte als Anlass, die Regeln ernst zu nehmen. 2 Monate sind
so lange nicht, schliesslich gibt es noch ein RL. Und dann sieht man die Sache
(hoffentlich) wieder als Spiel an, ein Spiel mit Regeln, die fuer alle gelten.


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^4: Kanyahon (Ark, 26. Mar 2009, 17:58:27):
~#! rn=Torlof rt=1238085969 rg=polizei.beschwerden
~#! tid=1238014322
Ich hoffe, hier befinden sich nicht alle im virtuellen Ferrari und versuchen,
alle anderen von der Piste zu draengen, um erster zu sein :-) Achne, falsches
Spiel.


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^11: Kanyahon (Ark, 26. Mar 2009, 18:06:05):
~#! rn=Kessa rt=1238086147 rg=polizei.beschwerden
~#! tid=1238014322
Warum? hilfe regeln ist hinreichend genau, ohne gaengelnd zu sein. Allerdings,
ich gebe zu, da steht der beunruhigende Begriff "gesunder Menschenverstand". 
Nennung der Tiernamen als Hinweis: Meise, Gans, Ente, Gepard ...
Nennung der Tiernamen der Quest als Teil KL: <nur Tiere fuer die Quest>
Warum? Der Anteil, den der Spieler eigentlich selbst finden soll, laeuft gegen
Null. Dann kann ich die Quest drastisch an AP runtersetzen, und alle freuen
sich, wenn sie eine halbe Stufe weniger Punkte haben.


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^12: Kanyahon (Kessa, 26. Mar 2009, 18:07:58):
~#! rn=Ark rt=1238087165 rg=polizei.beschwerden
~#! tid=1238014322
Anscheinend ist es vielleicht doch nicht genau genug. Ich sagte ja schon, ich
haette in diesem Fall mit Aerger gerechnet. Andere aber nicht, fuer die liegt
die Grenze zur KL wohl etwas anders. Vielleicht ein paar mehr konkrete
Beispiele einflechten?

-----------------------------------------------------------------------------



Re^3: Kanyahon (Algrim, 26. Mar 2009, 18:38:19):
~#! rn=Algrim rt=1238085581 rg=polizei.beschwerden
~#! tid=1238014322
Und was kann ich dafuer, dass ihr eure Faelle nicht aufklaert? Was bringt bei
uns ein Abschreckungsfaktor noch?
Sehens wir mal realistisch: hier sind vielleicht noch zehn neue Spieler pro
Jahr. Die Haelfte davon logt sich einmal ein und kommt nie wieder. Die anderen
Spielen, und verschwinden aus irgendeinem Grund.
Also haben wir vielleicht noch drei vier die Spass am Spiel haben und weiter
machen. Die restlichen sind Zweitis, die alle Quests hier schon paar mal
gemacht haben und ihre eigenen Aufzeichnungen verwenden, um hoch zu kommen.
Ich habe stark das Gefuehl, die Erzmagier sind in den 90igern stecken
geblieben...
Aber ich begreife, dass eine Diskussion nix bringt, also belass ichs dabei.**

-----------------------------------------------------------------------------



Re^4: Kanyahon (Ark, 26. Mar 2009, 18:43:39):
~#! rn=Algrim rt=1238089099 rg=polizei.beschwerden
~#! tid=1238014322
Genau, wir geben uns nicht der Resignation hin. Man akzeptiert im Sport ja
auch nicht einfach Doping, Bestechung, o.ae., weil das das Spiel verzerrt.
Oder ist da Deine Meinung auch "wen kuemmert die Randsportart, lass sie doch,
besser 3 gedopte Radler als keine Zuschauer"?
Das Mud wird immer gern totgeschrieen, aber dummerweise gefaellt es immer noch
einigen. Ach, und die 90er waren die Jahre des willkuerlichen Zappens, "loesch
Dich", "heul doch", ... da wuerde ich Deine Haltung verstehen, das war auch
eine Pionierzeit, die den heutigen Spielern noch mehr Irritationen bescheren
wuerde. Aber was weiss ich schon :-)


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^5: Kanyahon (Mirimadel, 26. Mar 2009, 19:05:57):
~#! rn=Ark rt=1238089419 rg=polizei.beschwerden
~#! tid=1238014322
Grins, wo bleibt hier denn das Eigentliche.
erstens das MUD ist nicht alleine auf dieser Welt.
2. Ark hatte einen Vorschlag gemacht, kann man nicht gut finden aber man kann
drueber reden.
2. Ark hatte einen Vorschlag gemacht, muss man nicht gut finden, aber man kann
drueber reden.
Ark 1 AP fuer eine Quest wuerde ich die Quest nicht mehr machen.
Warmum nimm man den Spieler/Sehern/Magieren nicht alles weg, was sie bei sich,
in ihren Hotelzimmern und ihren Haeusern haben. Stuft sie in ihren
Kampffaehigkeiten runter und laesst sie weiter spielen.
Auch ueber eine  SPL abstufung kann man reden, auch das kann weh tun.
Aber egt euch nicht so sehr auf, bringt nichts, spielt lieber eine Bank in die
Pleite, bringt gutes Geld und eine Menge davon. (grins)

Gruessel Miri

-----------------------------------------------------------------------------



Re^6: Kanyahon (Bambulko, 27. Mar 2009, 09:58:49):
~#! rn=Mirimadel rt=1238090757 rg=polizei.beschwerden
~#! tid=1238014322
Ich verstehe ueberhaupt nich warum KLs ein Problem sein sollen. Bei anderen
Onlinespielen (z.B. Guild Wars) gibt es im Internet auch KLs, und niemanden
kuemmert das. Was macht Ihr, wenn jemand eine Domain morgengrauen-kl.de 
aufmacht und dort alle KLs ablegt? Ihn vor Gericht ziehen, oder das MG 
zumachen? Wenn sich jemand selber um den Spielspass bringt, ist es doch sein 
Problem. Und wenn sich jemand nur mit KLs zum Seher hocharbeitet, ist er eben 
ein Wurstseher, und jeder wird es merken weil er sich nicht auskennt. Und? 

Abgesehen davon, ist es heute durch die geringere Spielerzahl sicher nicht 
einfacher vernuenftige Tips zu bekommen. Wo liegt das Problem, wenn man dann 
bei Stellen wo man nicht weiterkommt, mal eben in einer KL nachschaut?

-----------------------------------------------------------------------------



Re^146951: Hach... nu is was drin, inner MPA. (Rumata, 27. Mar 2009, 10:00:58):
~#! rn=Highlander rt=1238144343 rg=megaschmarrn
~#! tid=982328278
> Domain morgengrauen-kl.de
Ganz einfach, das nennen dieser URL wird der weitergabe einer KL
gleichgestellt.

Rum**

-----------------------------------------------------------------------------



Re^7: Kanyahon (Srabi, 27. Mar 2009, 10:06:43):
~#! rn=Bambulko rt=1238144329 rg=polizei.beschwerden
~#! tid=1238014322
Moin Zusammen...

eigentlich wollte ich mich jetzt mal aus der Diskussion raushalten, aber naja,
wie ich eben so bin.

Seitdem ich hier im MUD spiele, das ist seit 1997, gibt es die Regel, das KL's
verboten sind. Freund hatte damals klare Richtlinien aufgestellt, dieses
Verbot gilt bis heute.

Warum sollte es denn ueeberhaupt KL's geben, man kann doch dann gleich auch
die Magier fragen...

Finde ich nicht gut, ich kann zwar auch manchmal etwas nervig werden, wenn ich
wo nicht weiterkomme, aber schaffen tut man es doch immer irgendwie wieder.
Ich finde die KL-Regelung gut und diese sollte auch so beibehalten werden,
wenn man Hinweise benoetigt, gibt es immer noch genuegend Spieler, die einem
weiterhelfen, ich weiss wovon ich da rede.

Aber mal was grundsaetzliches an die Erzmagier oder Goetter...damit solche
Diskussionen erst gar nicht entstehen, veroeffentlicht doch einfach noch
einmal die Regelverstoesse und die sich daraus ergebenden Konsequenzen, das
waere wirklich ne Massnahme und meiner Meinung nach wird dieses auch Zeit.

Srabi

-----------------------------------------------------------------------------



Re^146952: Hach... nu is was drin, inner MPA. (Highlander, 27. Mar 2009, 10:06:49):
~#! rn=Rumata rt=1238144458 rg=polizei.beschwerden
~#! tid=982328278
Interessanter Bezug, Rumata *g*
On topic - ich muss sagen, ich kann mich Bambulkos Ausfuehrungen
eigentlich nur anschliessen. Und was willst Du dann noch verbieten?
Jemandem zu sagen, dass es eine Domain gibt, die KLs fuer Morgengrauen
hat? Oder den Google link zur Suche mit dieser Domain als erstem
Eintrag?
Versteh mich nicht falsch, das soll jetzt nicht nur ein 'ist doch
Bloedsinn'-Angriff sein, die Frage ist durchaus ernst gemeint. Ab
welcher Abstraktionsstufe wird es dann legal?
Erinnert mich irgendwie an die wikileaks.de-Hausdurchsuchung, das
Problem.

HrT

-----------------------------------------------------------------------------



Re^146953: Hach... nu is was drin, inner MPA. (Rumata, 27. Mar 2009, 10:16:32):
~#! rn=Highlander rt=1238144809 rg=polizei.beschwerden
~#! tid=982328278
Das klingt jetzt nach verfruehter Eskalation. So als wenn man bei
Diebstahl sich ploetzlich ueber die das Erschiessen von Pluenderern 
rechtfertigen soll.

-----------------------------------------------------------------------------



Re^8: Kanyahon (Bambulko, 27. Mar 2009, 10:32:01):
~#! rn=Srabi rt=1238144803 rg=polizei.beschwerden
~#! tid=1238014322
Also ist eine Regel deswegen schon gut, weil es sie immer schon gab?

-----------------------------------------------------------------------------



Re^9: Kanyahon (Kessa, 27. Mar 2009, 10:41:40):
~#! rn=Bambulko rt=1238146321 rg=polizei.beschwerden
~#! tid=1238014322
Bambulko, auf deine Frage: Willst du die sogenannten "KLs" von Guild Wars oder
WoW wirklich zum Vergleich heranziehen? Die Quests dort sind fast alle vom Typ
"Bring mir 27 Trollohren", und ich wundere mich immer darueber, dass es Leute
gibt, die dafuer ueberhaupt KLs brauchen. Die stehen naemlich eigentlich immer
schon im Questtext drin, wenn man sich mal die Muehe macht, den zu lesen.

Zum Sinn des KL-Verbots sind schon ein paar Dinge genannt worden, die
wiederhole ich jetzt nicht. Eins noch zusaetzlich: 
KL-Verbot klingt immer so negativ. Es hat in meinen Augen aber auch etwas
Positives, indem es die Spieler (idealerweise) dazu animiert, sich gegenseitig
persoenlich und augenblicksbezogen zu helfen. Das KL-Verbot foerdert -
idealerweise - das grosse M im Mud.

So will ich das jedenfalls sehen. Wenn es allerdings dazu fuehrt, dass sich
Leute nicht mehr zu helfen trauen, weil sie fuerchten, dass die Hilfe als KL
gewertet wird, kann das fuer mich nicht mehr Sinn der Sache sein. Insofern bin
ich auch skeptisch, was drastische Strafen in grenzwertigen Faellen angeht.
Deshalb versuche ich ja auch gerade auf anderem Weg zu erreichen, dass die
Grauzone etwas durchsichtiger wird.

Srabi: Alte Faelle aufwaermen halte ich fuer keine so gute Idee, sowas kann zu
leicht persoenlich werden. Schau dir einige Reaktionen im Rahmen dieser
Diskussion nur mal an. Beteilige dich doch an dem Vorschlag in der Rubrik
diskussion, vielleicht bekommen wir dann auf andere Weise etwas zusammen,
woran man sich orientieren kann.

Gruss, Kessa

-----------------------------------------------------------------------------



Re^10: Kanyahon (Vanhelsing, 27. Mar 2009, 19:06:52):
~#! rn=Kessa rt=1238146900 rg=polizei.beschwerden
~#! tid=1238014322
Da eigentlich schon alles gesagt wurde, will ich meine Meinung auch mal
loswerden.
Ich finde die Benutzung von KLs auch nicht ok, obwohl ich auch schon Zeiten
hatte, wo ich echt gerne eine gehabt haette, um einfach mal nachzugucken, wie
der _naechste_ Schritt geht.
Ich habe da auch immerwieder Fragen gestellt mit der Hoffnung, einen kleinen
Tipp zu kriegen, aber es kam _nix_. Nichtmal ein "Such doch." oder ein "Willst
Du jetzt eine KL?". 
Ich habe keinerlei Reaktion drauf bekommen. Aber was solls. Hab ich halt
irgendwann die Quest abgebrochen und nach hinten verschoben.

Aber mir kam beim Lesen eigentlich ne andere Frage:
Wie kam das raus? Hat Kanyahon das auf der Ebene geschrieben? Hat der das per
MudMail verschickt und wurde vom Empfaenger verpetzt? Soweit ich weiss, gibt
es auch hier sowas wie "Postgeheimnis", oder? Fragen ueber Fragen, und
wahrscheinlich nie eine Antwort.

VH

-----------------------------------------------------------------------------



Re^7: Kanyahon (Ark, 27. Mar 2009, 19:49:06):
~#! rn=Bambulko rt=1238144329 rg=polizei.beschwerden
~#! tid=1238014322
Gib mir Geld fuer meine Muehen, und es ist mir sowas von egal, was Du dann mit
einer KL machst oder nicht. Ansonsten, bitte nicht sinnlose Vergleiche ziehen,
die hinken.


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^8: Kanyahon (Rumata, 27. Mar 2009, 19:49:56):
~#! rn=Ark rt=1238179746 rg=polizei.beschwerden
~#! tid=1238014322
Im uebrigen gilt das Postgeheimnis nur fuer Mails waehrend sie unterwegs sind.

-----------------------------------------------------------------------------



Re^7: Kanyahon (Ark, 27. Mar 2009, 19:52:31):
~#! rn=Bambulko rt=1238144329 rg=polizei.beschwerden
~#! tid=1238014322
Achso, ich hatte das schon in einer Diskussion erwaehnt, Ziel des Ganzen ist
es, das MUD nicht zum SUD zu machen. Fragen bildet, das Noetigste nachschauen
bildet nur die Schmutzkruste. Sachen wie Ebenen sind zur Kommunikation gedacht
... auch fuer spielbezogene Fragen. Ich will doch keinen zur stereotypen
Antwort "schau's halt nach" erziehen, nur weil man zu faul/unwissend ist.


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^146953: Hach... nu is was drin, inner MPA. (Ark, 27. Mar 2009, 19:58:14):
~#! rn=Highlander rt=1238144809 rg=polizei.beschwerden
~#! tid=982328278
Freilich, Verbote reizen zur Umgehung? Drogen fuer alle, Legalisierung des
Diebstahls? Regeln sind doof. Aber wieder mehr on topic: ich _kann_ mit meiner
Nichte Mensch-aergere-dich-nicht spielen. Spass macht es bedingt, weil das
Wuerfeln immer nach Gutduenken vor sich geht. Mache ich mit. Macht es mir auf
Dauer Spass? Neee. Nein, ich mecker meine Nichte nicht an, aber so richtig
spielen werden wir irgendwann spaeter. Mit Regeln. Und das macht Sinn. Ich
kann nicht alles ueberwachen, was verboten ist, aber deshalb mache ich es noch
laengst nicht legal.
Dies ist ein Spiel. Magier sind uebrigens Teil des Spiels. Man setzt sich fuer
eine Quest nicht ein halbes Jahr hin und tut und macht, um nachher zuzusehen,
dass die Arbeit nicht gewuerdigt wird (verbessert wird an Gebieten/Quests/etc.
durch Nutzen einer KL auch nichts, ist das einem aufgefallen?). Auch die
moechten wir durch solche Regeln "schuetzen".
Versteht man das?


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^8: Kanyahon (Krellja, 28. Mar 2009, 10:58:47):
~#! rn=Ark rt=1238179951 rg=polizei.beschwerden
~#! tid=1238014322
So langsam bin ich ein wenig verwirrt bis besorgt: Wie ja auch an meinem
eher maessigen Onlinealter-zu-Spielerstufe-Verhaeltnis zu sehen ist, bin
ich nicht der Grossmeister des Questens. Oft bin ich augenscheinlich zu
vernagelt, die richtige Idee aus dem zu bekommen, was ich da gerade zum
dritten oder vierten Mal lesen. In diesen leider nicht seltenen Faellen
nutze ich natuerlich das "M" und frage Freunde oder auf -b. Sind Tips
die dann kommen auch schon KL-nah?
Um jetzt das "kommt drauf an" zu umgehen: Ich selber teile mein begrenztes
bzw. oft veraltetes Wissen auch gerne mit Fragenden auf -b. Insbesondere
wenn das offenkundig Leute sind, die nicht nur blid durchrennen, sondern
die nur einfach, wie ich selber so oft, eigentlich das richtige machen
wollen und nur nicht auf die passende Idee kommen. Ja, das kann dann
gelegentlich auch recht konkret werden: Wie "zieh doch mal am Seil,
das in so der Stadt vom Himmel haengt" als Tipp fuer einen Eissucher.

Andersherum gesagt: Solange sich die Tipps im Spiel anspielen, sprich
das "M" betonen, finde ich das persoenlich ok. Kritisch finde ich
eigentlich nur die Dinge, die ich hier in meinen fruehen Jahren
erlebt habe: Man haengt irgendwo fest, fragt mal auf -b, bekommt
eine tm mit der Frage nach einer (damals "der" :) )Mail Adresse und
schwupps hat man eine Mail mit einer mehr oder minder langen KL-Liste.
Und das sogar von jemanden, den man vorher kaum kannte.

Krellja

-----------------------------------------------------------------------------



Re^9: Kanyahon (Kessa, 29. Mar 2009, 10:30:48):
~#! rn=Rumata rt=1238179796 rg=polizei.beschwerden
~#! tid=1238014322
>> Im uebrigen gilt das Postgeheimnis nur fuer Mails waehrend sie unterwegs
>> sind.

Ich vermute, dass ich irgendwas nicht verstehe, denn so gibt fuer mich
entweder der Satz oder das Wort "Postgeheimnis" keinen Sinn. Kann mir jemand
das erklaeren?


-----------------------------------------------------------------------------



Re^10: Kanyahon (Srabi, 29. Mar 2009, 10:47:44):
~#! rn=Kessa rt=1238315448 rg=polizei.beschwerden
~#! tid=1238014322
Hallo,
nach recherchieren auf einigen juristischen Foren gilt das Postgeheimnis auch
fuer EMails, auch wenn die Mails im Postfach liegen. 

Srabi

-----------------------------------------------------------------------------



Re^11: Kanyahon (Mirimadel, 30. Mar 2009, 11:13:08):
~#! rn=Srabi rt=1238316464 rg=polizei.beschwerden
~#! tid=1238014322
Hi Ihrs,
Postgeheimnis hin und her, wichtig ist findi ich, dass jedem der Hilfe
benoetigt noch gehlfen wird.
Fuer neue Spieler ist es sehr unerlaesslich eine hilfe zu den Syntxen zu
bekommen oder einen kleinen Tip.
Ich wuerde es gut finden, wenn man sich auf eine einheitliche Syntaxauslegung
einigen koennte.
Gruessel Miri

-----------------------------------------------------------------------------



Re^12: Kanyahon (Ark, 30. Mar 2009, 20:02:16):
~#! rn=Mirimadel rt=1238404388 rg=polizei.beschwerden
~#! tid=1238014322
Das scheitert schon daran, dass man u.U. nicht will, dass ein Spieler aus
Faulheit erstmal alles "abtestet", ala "greife", "ziehe", "druecke" et al. und
erst dann richtig mit Forschen (wenn ueberhaupt) beginnt. Insofern halte ich
das fuer einen Wunschgedanken. Idealerweise erschliesst sich ein "Geheimnis"
(im weitesten Sinn) eines Raumes aus einer fliessend im Detail enthaltenen
Syntax, ala "Tatsaechlich, Du hast da eine kleine Erhebung entdeckt. Ob man
sie wohl druecken oder gar daran ziehen kann?".


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^7: Kanyahon (Zesstra, 30. Mar 2009, 21:35:29):
~#! rn=Bambulko rt=1238144329 rg=polizei.beschwerden
~#! tid=1238014322
Darf ich mir als Magier dann auch erlauben, auf die Quest nur in etwa die
gleiche Zeit zu verwenden wie zum Ablaufen der KL noetig ist? Oder anders
gesagt: wenn nach Anschluss ein Spieler die Quest macht und 8/10 Spielern
anschliessend die Loesung lesen und ablaufen, kann ich mir doch 90% der Quest
auch gleich ganz sparen, naemlich die, die nix mit der Questlogik an sich zu
tun haben: Raum-/NPC-/Objektbeschreibungen, Details, Gerueche, Geraeusche,
NPC-Infos, Moeglichkeiten zum Forschen verschiedener Ideen,
Hintergrundgeschichte usw.
Ich erinnere mich da durchaus an die Wargon'sche Reaktion bzgl. der Quest in
Tarko Reub und kann sie teilweise sogar nachvollziehen.

Was die Hilfe auf -b angeht: ich seh da durchaus Antworten. Ich seh natuerlich
auch, dass es je nach Uhrzeit laenger dauert oder das Leute, die schon viel
gefragt haben, manchmal auch weniger Antworten bekommen als andere.

Zesstra

-----------------------------------------------------------------------------



Re^8: Kanyahon (Vardion, 30. Mar 2009, 21:52:36):
~#! rn=Zesstra rt=1238441729 rg=polizei.beschwerden
~#! tid=1238014322
Ja, darfst Du. Langtexte und Mobs reichen voellig. Weder Raeume noch Mobs
brauchen irgendwelche Details, es reicht voellig, wenn die Mobs interessant
kaempfen :)

Vardion

-----------------------------------------------------------------------------



Re^9: Kanyahon (Rumata, 30. Mar 2009, 21:54:38):
~#! rn=Vardion rt=1238442756 rg=polizei.beschwerden
~#! tid=1238014322
Mobs? Kanne s sein, dass DU im falschen Lingo haengst?

-----------------------------------------------------------------------------



Re^9: Kanyahon (Ark, 30. Mar 2009, 22:42:41):
~#! rn=Vardion rt=1238442756 rg=polizei.beschwerden
~#! tid=1238014322
:schickt Vardion zu den Sehergladiatoren. Nur einmal minimal "forschen", keine
laestige Gute-Nacht-Geschichten und jede Menge Action durch interessant
kaempfende Single NPC "Mobs". Steigere Dich hinein, loese eine wirklich
knifflige Aufgabe voller Abwechslung. Lege ein Wegescript an und ueberliste
die schlauen Krieger, die ihresgleichen gar nicht erst suchen. Verachte ihre
Ausruestung (Du brauchst eh keine bessere, als die, mit der Du gegen sie
kaempfst) und ihre karge Beschreibung, sehe fasziniert dabei zu, wie Dein
Stupslevel, das Killevel (des Magiers) und das Adrenalinlevel (wohin auch
immer) steigen.
"It's there for you to grab it!"


              *** ARK * the * Magnificent ***


-----------------------------------------------------------------------------



Re^3: Abstufung Grimmborn (Amaryllis, 31. Mar 2009, 20:13:09):
~#! rn=Anatol rt=1238500033 rg=schmarrn
~#! tid=1237280256
Ich weiss nicht, ob Grimmborn hier jemals Loeschrechte (die man auch zum
Verschieben braucht) hatte. Falls ja, war es dringend an der Zeit, der Zensur
Einhalt zu gebieten.

Mag jeder selbst fuer sich entscheiden, ob ein Artikel in der richtigen Rubrik
oder vielleicht sogar "Kraeuterquark" ist.

Das haben zumindest wir so entschieden, und ich stehe zu der Entscheidung.

Ama*

-----------------------------------------------------------------------------



