From: Michael H. <mh...@in...> - 2002-03-29 13:09:48
|
Falls euch die vielen einzelnen Mails nerven, tut es mir leid, aber verschiedene Topics in eine Riesenmail zu packen find ich auch nicht so optimal :) Liebe TM-Entwickler, ich hab mir mal einige anfaengliche Gedanken ueber das leidige Konfigurationsproblem gemacht. Prinzipiell soll Nutzerkonfiguration ja ueber die *.cfg erfolgen. Dass das nicht so trivial ist, liegt z.b. daran, dass niemand weiss, wo er was konfigurieren kann. Es gibt zwar den CONFIG Abschnitt in den *.tf aber der wird wohl eher selten gelesen. Daher mein Vorschlag. Es sollte ein /config(ure) Makro geben dass den armen Nutzer mittels einer Art Menuestruktur (vielleicht auch Suchfunktion) dorthin leitet wo er sein Problem loesen kann. Die ganze Konfigurationsgeschichte wuerde ich hierarchisch aufbauen. D.h. generelle Einstellungen (Sprache,Standardwelt,Debugmodus (Verbose), ???). Dann welche Pakete man nutzen moechte (ggf. mit Abhaengigkeitsberuecksichtigigung). Und fuer die genutzten Pakete jeweils einen eigenen Konfigurationspunkt, der dann vom Paket strukturiert werden kann. Insgesamt wuerde ich auf eine listenbasierte Konfiguration zuarbeiten. D.h. aus dem Hilfesystem sollte pro Konfigurationsmoeglichkeit folgende Sachen kommen: Defaultwerte, Beispiele, Doku, Syntax In an das Hilfesystem angelehnte? Konfigurationslisten sollte zu jeder Konfigurationsmoeglichkeit folgendes drinstehen: Welche Kategorie (paketauswahl, spezielles paket intern,generell) Typ (Makro,Variable,Hook) Name Datentyp (Zahl,String,Flag,Liste,...), ggf. Grenzen, Einschraenkungen TF-Code, der die Auswirkung der aktuellen Einstellung demonstriert Defaultwerte zur Auswahl ...? Das /config sollte dann diese beiden Informationsquellen nutzen, um den Benutzer zur richtigen Stelle zu fuehren, ihn dort das richtige editieren/auswaehlen/eingeben lassen und das Ergebnis aber als reale Variable/Makro in die korrekte *.cfg schreiben. Bei der ganzen Konfigurationsgeschichte koennte die von Muaddib angesprochenen Nutzerlevel mit beruecksichtigen. Als Namensschema wuerde ich folgendes vorschlagen: CFG_kategorie_* z.b. CFG_STATUS_COLOR_BLIND=Cbgmangenta oder CFG_WAY_NODE_STYLE=long oder CFG_ALL_LANG=de CFG_ALL_VERBOSE=3 oder CFG_USE_WAY=1 ... fuer Makros sollte das aehnlich aussehen Zur Unterstuetzung der Konfiguration schlage ich diverse bedingte Kommandos vor (die mit + gibts schon) /mload -ECFG_USE_WAY way.tf + /ifdef p_subguild=~"Abwehr" -t"* Zauberschild *" ... + /ifecho CFG_ALL_VERBOSE>2 Warnung: Max Playerlevel reached /ifset ? ... macht mal Vorschlaege damit sollten sich konfigurationsspezifische Entscheidungen leichter umsetzen lassen (auch ohne Auskommentieren per ';' ) Schreibt mal Eure Meinung dazu. Und wer Lust hat, welchen Teil umzusetzen. Gruss Mesi |