Android Applikation zur Unterstützung von Spielern in einer D&D-Kampagne; entstanden im Rahmen einer Projektarbeit
This repository has been archived on 2026-07-08. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
Find a file
2023-12-31 14:44:57 +01:00
.idea update 🦆 updated readme 2023-12-31 14:28:38 +01:00
app update 🦆 updated app logo and name 2023-12-31 13:56:29 +01:00
gradle/wrapper feature🍞 added backupSpellDetails.json and with that made the SpellDetailList load faster 2023-12-23 15:42:20 +01:00
.gitignore update 🦆 minor changes 2023-12-02 22:56:18 +01:00
build.gradle.kts feature🍞 added backupSpellDetails.json and with that made the SpellDetailList load faster 2023-12-23 15:42:20 +01:00
gradle.properties first commit 2023-11-11 11:22:45 +01:00
gradlew first commit 2023-11-11 11:22:45 +01:00
gradlew.bat first commit 2023-11-11 11:22:45 +01:00
NextSession Update NextSession 2023-12-03 18:40:11 +01:00
README.md update 🦆 updated readme 2023-12-31 14:44:57 +01:00
screenshot.png update 🦆 updated readme 2023-12-31 14:43:13 +01:00
settings.gradle.kts first commit 2023-11-11 11:22:45 +01:00





D&D Player Assistance Tool

DNDPlayerAssistanceTool

Android Applikation zur Unterstützung von Spielern in einer D&D-Kampagne




Mitwirkende

Mitwirkende GitHub
Luke Grasser
Zetsuboushii
Nick Büttner
Knick21
Isa Barbu
IsaBellaBarbu

Dokumentation

Inhalt

1 Einleitung

1.1 Projektumfeld

Im Rahmen der Vorlesung "Mobile Appentwicklung" des dritten Semesters an der DHBW Mannheim im Studiengang Angewandte Informatik, soll eine angenehm nutzbare Android-Applikation umgesetzt werden.

1.2 Projektbeschreibung

Das Ziel dieses Projekts ist das Analysieren und Bearbeiten eines Problems in selbstorganisierter Gruppenarbeit. Es wird daher von einer Struktur mit eng vorgegebenen Aufgaben abgewichen. Ein wesentlicher Teil der Aufgabe sind Grundprinzipien von mobilen Applikationen:

  • Benutzerzentrierung
  • Einfache Navigation
  • Performanceoptimierung
  • Responsive Design
  • Konsistenz im Design
  • Update- und Wartbarkeit
  • Datenschutz und Einhaltung von Vorschriften

1.3 Projektanforderungen

Das Projekt soll...

  • eine Android-Applikation einer frei wählbaren Technologie sein (Native, PWA, Cross-Platform)
  • einen API-Call sinnvoll integrieren
  • ein übersichtliches User-Interface (UI) besitzen.
  • Einfachheit im Aufbau der Softwarearchitektur zur Erleichterung der Wartung besitzen.
  • volle Basisfunktionalität besitzen

2 Planung

2.1 Produktbeschreibung

Die Applikation stellt einen digitalen Assistenten für Spieler des bekannten Tabletop-Rollenspiels Dungeons & Dragons dar.
Der Anwender, beziehungsweise der Spieler, kann damit die Fähigkeiten (Spells, etc.) seines Charakters verwalten. Dazu findet eine API mit all den nötigen Inhalten für D&D Verwendung. Der Spieler kann zunächst nach Fähigkeiten suchen und diese dann für seinen Charakter abspeichern, damit er zukünftig schnelleren Zugriff auf solche hat.

2.2 Projektphasen

Das Projekt teilt sich grob in folgende Projektphasen ein:

  • Teambildung
  • Auswahl des Themas
  • Kurze Produktbeschreibung
  • Auswahl des Vorgehensmodells
  • Auswahl der Technologien
  • Implementierung
  • Quality Assurance

3 Analyse

3.1 Soll-Ist-Analyse

Das Verwalten seines Charakters in einer D&D-Kampagne ist eine komplexe Aufgabe, die sehr schnell durch viele Faktoren unübersichtlich werden kann. Das Wichtigste beim Spielen eines Charakters ist der rasche und einfache Überblick über dessen Fähigkeiten, um einen kontinuierlichen Spielfluss zu garantieren.
Dazu erleichtert eine darauf angepasste Applikation diesen Vorgang.

3.2 Fachkonzept

Den folgenden Kriterien muss die Applikation entsprechen:

  • Der Spieler kann nach Spells suchen und diese abspeichern
  • Die API-Referenz liefert gewünschte Ergebnisse
  • Eine benutzerfreundliche UI ist vorhanden
  • Ein Zugriff auf dem Systemkalender zeigt die nächste D&D-Session in der App an

Den folgenden Kriterien kann die Applikation entsprechen:

  • Der Spieler hat Zugriff auf weitere Fähigkeiten, Werte, Items, usw.
  • Termine für Sessions werden über einen Webserver geladen

4 Entwurf

4.1 Zielplattform

Die Applikation soll zunächst auf Android 13 Geräten laufen.

4.1.1 Technologien

Die gewählte Technologie ist eine native Android-Applikation in der Programmiersprache Kotlin. Kotlin ist eine logische Weiterentwicklung der bekannten Programmiersprache Java und bietet im Zusammenspiel mit Jetpack Compose und Material 3 eine simple Möglichkeit Business Logic und UI zu realisieren.

4.1.2 API-Referenz

...

4.2 Benutzeroberfläche

Um dem Anwendungsfall gerecht zu werden, wurde sich für eine möglichst simple, grafische Oberfläche entschieden. Die Hauptseiten der App können über eine Navigation Bottom Bar erreicht werden. Über Material 3 wird ein kontinuierliches Design gewährleistet.