Skip to content
This repository has been archived by the owner on Jun 29, 2020. It is now read-only.

pflichtenheft

KotschM edited this page Apr 27, 2020 · 6 revisions

1 Zielbestimmung

Der Kunde soll durch das Produkt in die Lage versetzt werden, ein MUD-Server aufzusetzen und zu betreiben.

Später können zwei verschiedene Arten an Akteuren mit dem Spiel interagieren. Zum einen der MUD-Master, welche die MUD-Spiele anlegen und konfigurieren kann und zum anderen die MUD-Spieler, welche den MUD-Spielen beitreten können und spielen können.

1.1 Musskriterien

• Soll auf einem eigenen Server des Kunden lauffähig sein

• Möglichkeit der Interaktion von zwei verschiedenen Arten an Akteuren mit dem Spiel

• Registrierung und Anmeldung am Server mit Benutzername, Passwort und erstmalig einer E-Mailadresse

• Akteur MUD-Master soll MUD-Spiele anlegen und konfigurieren können

• Akteur MUD-Spieler soll den MUD-Spielen beitreten und spielen können

• Kommunikation der Spieler untereinander mit Hilfe einer Chatfunktion

• Bewegung durch Räume

• Sammeln von Ressourcen/Gegenständen und Interaktion mit diesen

1.2 Wunschkriterien

• Kämpfen gegen MOBs, welche vom MUD-Master konfiguriert werden können

• Levelaufstiegsmöglichkeiten für den Charakter

1.3 Abgrenzungskriterien

• Das Spielen von mehreren Charakteren eines Spielers zur gleichen Zeit nicht möglich sein.

• Keine Garantie, dass die Spiel-Erfahrung (User Experience) bei großen und kleinen Viewports dieselbe ist.

2 Produkeinsatz

Das Produkt wird zur Unterhaltung des Endanwenders und als Kommunikationsmöglichkeit mit anderen Anwendern eingesetzt. Die Architektur des Produktes soll Personen, mit den jeweiligen Berechtigungen, so viel Freiheiten bei der Spielgestaltung geben wie möglich.

2.1 Anwendungsbereiche

• Unterhaltung

• Spielkonfiguration

2.2 Zielgruppen

• Computer-affine Personen zwischen 15 und 65 Jahren.

3 Produktübersicht

Serverarchitektur

Auf dem MUD-Server können mehrere Welten (MUDs) mit verschiedenen Namen laufen. Zum Beispiel ein MUD existiert mit dem Namen „Auenland“ und ein weiterer MUD mit dem Namen „Thor“. Der MUD-Master kann eine neue Spielwelt erstellen und diese mit den gegebenen Funktionen nach eigenem Interesse verändern und individuell anpassen. Die Spieler können auf ein bestehenden MUD beitreten und darauf Spielen.

Produktübersicht

Der MUD-Master und der MUD-Spieler interagieren mittels Browser mit dem MUD-Client. Dieser kommuniziert mit dem MUD-Server, auf dem die MUDs selbst gehostet werden. Der MUD-Server speichert alle Informationen in einer Datenbank.

4 Produktfunktionen

4.1 Muss-Funktionen

Nummer Geschäftsprozess Akteur Beschreibung
/LF10/: Benutzer Registrieren Spieler Jeder Spieler kann sich auf MUDhub registrieren indem er Passwort und E-Mail-Adresse angibt.
/LF20/: MUD-Master Registrieren MUD-Master, Serveradministrator Möchte der Akteur als MUD-Master auf dem MUDhub beitreten, muss dieser sich wie andere Spieler, als normaler Spieler registrieren. Anschließend kann ihm durch einen Serveradministrator die Rolle als MUD-Master gegeben werden.
/LF30/: Benutzer einloggen Spieler Der Spieler meldet sich auf MUDhub mit registrierter E-Mail-Adresse und Passwort an. Danach wird die Startmaske angezeigt, in welcher der Spieler die aktuellen MUDs sieht und beitreten kann.
/LF260/: Benutzer ausloggen Spieler Der Spieler loggt sich mit seinem Benutzer aus. Er gelangt dabei auf die Login-Seite, auf welcher er oder ein anderer Spieler sich anmelden kann.
/LF40/: MUD Beitreten Spieler, MUD-Master des jeweiligen Spiels Der Spieler kann sich nach Erstellung seines Kontos auf MUDhub einloggen. Dort erhält er eine Übersicht über alle verfügbaren öffentlichen Spiele und alle privaten Spiele. Der Spieler kann für die privaten Spiele Beitrittsanfrage stellen, die der jeweilige MUD-Master dann annehmen kann. Anschließend gelangt er zur Charakterauswahl. Nach dem er einen Charakter ausgewählt hat, spielt er an der Position und mit allen Errungenschaften weiter an der Stelle in dieser Welt, an der er mit diesem Charakter aufgehört hat. Mit einem neu erstellten Charakter beginnt er im Startraum.
/LF270/: MUD verlassen Charakter Der Spieler verlässt mit dem Charakter den aktuellen Raum und damit auch die Welt des MUDs. Es werden die Fortschritte und Positionsdaten gespeichert, sodass beim Wiedereintritt mit demselben Charakter an dieser Stelle mit gleichem Spielefortschritt weitergespielt wird.
/LF50/: Charakter erstellen Spieler Beim erstmaligen Betreten des MUDs muss der Spieler einen neuen Charakter erstellen. Der Spieler erstellt einen individuellen Charakter mit eigenem Namen und kann sich eine Rasse und Klasse aussuchen.
/LF60/: Charakter auswählen Spieler Der Spieler wählt einen bestehenden Charakter aus, mit dem er die Spielwelt, den MUD betritt. Der bestehende Charakter ist dabei eine Spielfigur, welche der Spieler zu einem früheren Zeitpunkt für genau diesen MUD erstellt hat.
/LF280/: Charakter löschen Spieler Der Spieler kann einen bestehenden Charakter mit all seinem Spielfortschritt unwiderruflich löschen.
/LF70/: Charakterrasse hinzufügen MUD-Master Der MUD-Master kann eigene Rassen erstellen und diese in seinem MUD hinzufügen.
/LF320a/: Charakterrasse entfernen MUD-Master Wenn das MUD bereits spielbereit/gestartet ist, ist ein Entfernen der Charakterrasse nicht möglich, da ein Spieler bereits die Rasse ausgewählt haben kann.
/LF320b/: Charakterrasse entfernen MUD-Master Wenn das MUD noch nicht spielbereit/gestartet ist, ist ein Entfernen der Charakterrasse möglich.
/LF290/: Charakterklasse hinzufügen MUD-Master Der MUD-Master kann eigene Klassen erstellen und diese dem Spiel hinzufügen.
/LF330a/: Charakterklasse entfernen MUD-Master Wenn das MUD bereits spielbereit/gestartet ist, ist ein Entfernen der Charakterklasse nicht möglich, da ein Spieler bereits die Klasse ausgewählt haben kann.
/LF330b/: Charakterklasse entfernen MUD-Master Wenn das MUD noch nicht spielbereit/gestartet ist, ist ein Entfernen der Charakterklasse möglich.
/LF80/: Areas/Räume erstellen MUD-Master Der MUD-Master kann ein eigenes Raumsystem aufbauen und verschiedene Spiele relevante Attribute wie, Beschreibungstexte, ein Bild, Raum betreten Nachricht, Gegenstände und Gegner hinzufügen, sodass der Raum individualisiert werden kann.
/LF140/: Ressourcen erstellen MUD-Master Der MUD-Master kann eigene Gegenstände erstellen und diese ins Spiel miteinbringen.
/LF150a/: Ressourcen sammeln Charakter Der Spieler kann Ressourcen aufsammeln, die in Räumen verteilt sind, durch die Interaktionskonsole mit z.B. dem Befehl „sammle "Ressource" auf“. Ressourcen sind entweder direkt im Raum verteilt oder können als „Drop“ nach dem Besiegen von MOBs vorhanden sein. Die Ressourcen werden anschließendes im Inventar verstaut.
/LF170/: Mit Ressourcen/Gegenstände interagieren Charakter Der Spieler kann einen Zaubertank oder anderen konsumierbaren Gegenstand verzehren und erhält für gewisse Zeit verschiedene Boni. Darüber hinaus können Ausrüstungen und Waffen ausgerüstet werden.
/LF160/: Inventar einsehen Charakter Der Spieler kann mit mithilfe der Interaktionskonsole sein Inventar einsehen.
/LF90/: Raum wechseln Charakter Der Spieler kann in der Interaktionskonsole einen Text, etwa wie „Gehe nach Norden“ eintippen und bewegt sich dadurch durch die Räume. Bewegen kann er sich in die 4 Himmelsrichtungen.
/LF100/: Landschaften/Umgebung wechseln Charakter In bestimmten Räumen ist das Wechseln zwischen verschiedenen Raumsystemen/Ebenen/Gebieten möglich.
/LF110/: Untersuchen Charakter Der Spieler tippt in die Interaktionskonsole einen Text ein, etwa wie „untersuche Raum“ und liest den Beschreibungstext des aktuellen Raums oder der Umgebung und wird über alle verfügbaren Interaktionen im Raum aufgeklärt.
/LF310/: Interaktion mit Raum Charakter Der Spieler kann bestimmte Interaktionen in dem Raum durchführen, dies wird dabei über die Interaktionskonsole geschrieben. Für manche Aktionen werden bestimmte Ressourcen benötigt.
/LF300/: Raumnachricht senden und empfangen Charakter In der Chatkonsole kann jederzeit während dem Spiel eine Nachricht an alle Spieler, die sich in dem gleichen Raum befinden, gesendet werden. Parallel werden einkommende Nachrichten empfangen und im Chatfenster angezeigt.
/LF130/: Private Raumnachricht senden und empfangen Charakter In der Chatkonsole kann der Spieler private Nachrichten an einzelne Spieler innerhalb eines Raumes senden und auch von anderen Spielern private Nachrichten empfangen.
/LF250/: Mehrere Charaktere auf einem Server Spieler Es soll für einen MUD-Spieler möglich sein mehrere Charaktere innerhalb eines MUD’s spielen zu können. Außerdem ist es nicht möglich verschiedene Charaktere eines Spielers zur gleichen Zeit zu spielen.

4.2 Kann-Funktionen

Nummer Geschäftsprozess Akteur Beschreibung
/LF120/: Globale Nachricht senden und empfangen Charakter In der Chatkonsole kann jederzeit während dem Spiel eine Nachricht an alle Spieler des gleichen MUDs gesendet werden. Parallel werden einkommende Nachrichten empfangen und im Chatfenster angezeigt.
/LF150b/: Ressourcen erwerben Charakter Der Spieler kann Ressourcen über einen Händler mit der Spielewährung kaufen und verkaufen. Hierfür gibt es einen eigenen Dialog sobald mit dem Händler gesprochen wird. Die Ressourcen werden anschließendes im Inventar verstaut oder entfernt.
/LF180/: Kämpfe in Räumen Charakter, MOB Der Spieler hat die Möglichkeit innerhalb von Räumen gegen MOBs zu kämpfen, diese Räume müssen dafür konfiguriert sein. Der Kampf kann innerhalb eines Raumes über die Interaktionskonsole mit einem Befehl wie z.B. „Kämpfe gegen "Gegner>"“ gestartet werden und bekommt in der Interaktionskonsole den Ausgang des Kampfes mitgeteilt.
/LF190/: Charakter stirbt Charakter Wenn ein Spieler stirbt, verliert er zufällig 33% seiner Ressourcen und wird in seinem Startraum wiedergeboren.
/LF200/: MOB’s und NPC‘s erstellen MUD-Master Der MUD-Master kann eigene MOB’s und NPC’s erstellen und diese in Räume setzen.
/LF210/: Erfahrungspunkte sammeln Charakter Der Spieler hat die Möglichkeit durch Kämpfe und Quests Erfahrungspunkte zu sammeln.
/LF220/: Levelaufstieg Charakter Durch Sammeln von Erfahrungspunkten steigt der Charakter auf.
/LF230/: Quests erstellen MUD-Master Der MUD-Master hat die Möglichkeit Quests zu erstellen. Dabei müssen verschiedene Parameter definiert werden:
- Start-Trigger, welcher die Quest startet
- Aktionen, die ausgeführt werden müssen
- Abschluss-Trigger, welcher die Quest beendet
- Belohnung
/LF240/: Quest durchführen MUD-Master, Charakter Die Quests werden automatisiert gestartet und gesteuert. Die Quests werden durch vorkonfigurierte Trigger gesteuert. Die Spieler müssen dann verschiedene Aufgaben lösen, um die Quest zu erfüllen.

5 Produktdaten

/D10/: lokale Chat-Historie

/D20/: Userdaten

/D30/: Ressourcenbeschreibungen

/D40/: Rassenbeschreibung

/D50/: Charakterressourcen

/D60/: MOB Beschreibungen

/D70/: Raumbeschreibungen

/D80/: Umgebungsbeschreibungen

Alle Größen der Produktdaten sollen skalierbar sein.

6 Produktleistungen

/L10/: Reaktionszeit aller Charakterinteraktionen dürfen bis zu 2s dauern.

/L20/: Die Dauer vom Versenden einer Chatnachricht bis zum Empfang darf nicht länger als 2s dauern.

7 Qualitätsanforderungen

Qualitätsanforderungen

8 Benutzerschnittstelle

/B10/ Die Bedienung erfolgt ausschließlich über einen unterstützten Webbrowser oder Ähnliches

/B20/ Die Bedienungsoberfläche wird mit Tastatur und Maus bedient

/B30/ Alle Spieldaten sind passwortgeschützt und nur für den entsprechenden Spieler zugängig.

/B40/ Zugriffsgeschütze Oberfläche für MUD-Master, um Spiele zu erstellen und zu konfigurieren

/B50/ Zugriffsgeschütze Oberfläche für Administratoren, um Benutzer zu verwalten

Info: Wireframes, welche für die Benutzungsschnittstelle erstellt wurden, sind der Übersichtlichkeit halber auf eine extra Datei ausgelagert wurden. (Pflichtenheft_Wireframes.pdf)

9 Nichtfunktionale Anforderungen

• Verschlüsselung der Passwörter eines Spielers mit dem SHA256 Hashalgorithmus und eine Salt.

• Eine Installationsanleitung für den Betreiber des Servers

• Eine Online Hilfe für die MUD-Master und Spieler

10 Technische Produktumgebung

10.1 Software

Um die Software funktionsgemäß zu verwenden ist ein Windows oder Linux Betriebssystem nötig.

Für den Server:

• .NET Core 3.1

• Relationale Datenbank (SQLite, MSSQL, MariaDB/MySQL)

Für MUD-Spieler und MUD-Master:

• Webbrowser (Chrome, Firefox, Edge, Safari, Android, IE 10+)

• Internetzugang

10.2 Produkt-Schnittstellen

• Schnittstelle zu einem Mail-Server für die „Passwort-vergessen-Funktion“

11 Gliederung in Teilprodukte

Das Gesamtprodukt ist in mehrere Teile gegliedert, die je nach Benutzerrolle und Use-Case aufgerufen werden können.

11.1 Home-Ansicht

In dieser Ansicht werden alle Spiele aufgelistet, denen beigetreten werden kann. Aus dieser Liste kann der Benutzer eines auswählen und beitreten.

11.2 Spiel-Ansicht

Über diese Ansicht wird das eigentliche Spiel abgebildet, in dem sich der Spieler befindet.

11.3 Konfigurations-Ansicht

Diese Ansicht ist nur MUD-Mastern und Administratoren zugänglich und enthält Funktionen zum Erstellen, Konfigurieren und Verwalten von Spielen (und Benutzern bei Administratoren).