Start Info Community Spielen
 
 

Morgengrauner Dokumentation

Dateipfad: /home/mud/mudlib/doc//wiz/channeld.init

Initialisierung der Ebenen
--------------------------

    Standardmaessig wird die Ebenenliste im Morgengrauen ueber die Datei
    /p/daemon/channeld.init erzeugt. Diese wird vom channeld eingelesen und
    aus den Angaben die Ebenenkonfiguration vorgenommen.

    Im Homemud wird stattdessen die Datei /p/daemon/channeld.init.testmud
    verwendet, die viele Standardebenen nicht enthaelt, weil in einem
    "nackten" Homemud die meisten Ebenenbesitzer nicht existieren und daher
    das Laden des channeld zu Fehlern fuehren wuerde.

    Die Zugriffsrechte fuer die Ebenen werden von einem sogenannten
    Supervisor (SV) verwaltet und durchgesetzt. Der channeld fragt den fuer
    eine Ebene zustaendigen Supervisor, ob die angeforderte Aktion erlaubt
    ist. Im Fall des channeld uebernitmm das Objekt /p/daemon/channel-sv
    diese Aufgabe. 
    
    Jeder Supervisor liest die Rechte-Konfiguration aus der Init-Datei ein.
    Standardmaessig ist dies die globale Datei, man kann aber auch eigene
    festlegen.


Struktur des Init-Files
-----------------------

    Das Init-File hat folgenden Aufbau:

      ::::::
    
    z.B.

      abgilde: 0: 0: 0: 0:Fuer Abenteurer:/gilden/abenteurer
      Tod:     0:-1: 0: 1:Wer stirbt wann?:/room/death/death_room

    Fuer SVs sind nur die Felder , ,  und 
    relevant. Das vordefinierte ch_check_access() entscheidet wie folgt
    anhand der Angaben:

    Verlassen (C_LEAVE) ist so gut wie immer erlaubt, siehe man channels. Die
    anderen Aktionen sind in zwei Gruppen eingeteilt:

      1) RECV. Die Aktionen dieser Gruppe sind Suchen (C_FIND), Auflisten
               (C_LIST) und Betreten (C_JOIN).
      2) SEND. Die Aktion dieser Gruppe ist zur Zeit nur Senden (C_SEND).

    Aktionen werden zugelassen, wenn Spieler-/Magierlevel mindestens die fuer
    die jeweilige Aktionsgruppe RECV oder SEND festgelegte Stufe ist.

    Enthaelt  das Flag CH_ACCESS_WIZARD, handelt es sich um eine
    Magierebene, und die Magierstufe des Spielers muss mindestens die
    Mindeststufe der Ebene sein. Ansonsten wird gegen den Spielerlevel
    geprueft.
    Enthaelt  das Flag CH_ACCESS_NOGUEST, darf die Ebene nicht
    von Gaesten benutzt werden (weder Empfangen noch Senden).

    Wenn RECV_LVL oder SEND_LVL auf -1 gesetzt ist, sind die Aktionen der
    jeweiligen Gruppen komplett geblockt.


Hinweise:
---------

    Im Initfile sollten nur Blueprints als SVs verwendet werden -
    aber im Allgemeinen koennen SVs auch Clones sein!

    Das Initfile fuer Homemuds heisst /p/daemon/channeld.init.testmud. In
    dieser Datei sind nicht alle Standardebenen vorkonfiguriert, die es im
    echten Morgengrauen gibt.


Siehe auch:
-----------

    Konzepte:  channels
    Beispiele: /doc/beispiele/ebenen/supervisor.c
               /doc/beispiele/ebenen/supervisor-thing.c
               /doc/beispiele/ebenen/supervisor.txt
    lfun:      ch_read_init_file()
               ch_set_sv_name()


zurück zur Übersicht

YOUTUBE | FACEBOOK | TWITTER | DISCORD | FEEDBACK | IMPRESSUM | DATENSCHUTZ 1992–2023 © MorgenGrauen.