Pen & Paper - Rollenspiel > Pen & Paper - Rollenspiel- & Weltenbau

Softwareumgebung für Charaktergenerator

<< < (2/9) > >>

Xugro:

--- Zitat von: Ikarus am 24.02.2020 | 23:29 ---Wie läuft denn das ab? Erzeuge ich eine Datei die jeder runterladen kann und dann zu Hause in seinem Browser ausführen kann oder benötige ich immer eine Domain/eine Server wo die Datei zentral hinterlegt ist?
--- Ende Zitat ---
Da ist beides möglich. Wobei man normalerweise die Rohdaten speichert und erst wenn es benötigt wird ein PDF-generiert.


--- Zitat von: Ikarus am 24.02.2020 | 23:29 ---Und wenn jemand seinen Charakter abspeichern möchte, wo liegt die Datei bei so einer Webanwendung ab, wenn man nicht gleich Accounts dafür anlegen möchte?
--- Ende Zitat ---
Du kannst Daten auf dem Server speichern - z.B. in einer Datenbank oder einer Datei. Das Anlegen von Accounts ist in einigen serverseitigen Frameworks schon enthalten und ziemlich leicht zu verwenden. Alternativ kann man die Daten auch lokal im Browser speichern (Stichwort: Local Storage). Dabei speichert der Webbrowser Daten permanent (quasi größere und langlebige Cookies).


--- Zitat von: Ikarus am 24.02.2020 | 23:29 ---Wenn JavaScript die Programmiersprache ist, was ist dann React bzw. ASP.Net core und warum brauche ich das alles? Wie hängen diese nun wieder mit html zusammen?
--- Ende Zitat ---
Als alles angefangen hat, gab es nur HTML. Das ist eine Beschreibungssprache und sagt quasi immer nur, was was ist - z.B.: Das ist eine Liste, das ist ein Bild, das ist eine Überschrift, das ist ein Zitat, usw. Schön aussehen tut das aber nicht.
Also kam CSS dazu. Damit sagt man, wie HTML-Elemente auszusehen haben - z.B.: das Element hat einen grünen Hintergrund, das Element hat einen gestrichelten Rahmen, das Element hat nach oben 20 Pixel Luft, usw.
So richtig dynamisch sind HTML und CSS aber nicht. Also kam als nächstes Javascript (JS). Das ist eine Programmiersprache, mit der man Webseiten um dynamische Funktionen erweitern kann - z.B. Eingaben vor dem Absenden prüfen, Countdown-Timer anzeigen lassen, verständlichere Text-Editoren in Foren einbauen, usw.
Damit hat man aber nur Front-End, was im Browser läuft. Jetzt will man bei einigen Anwendungen - z.B. Blogs, Foren und Social-Media-Seiten - nicht jedes mal das HTML von Hand schreiben. Also lässt man sich das auf dem Server generieren - z.B. von ASP.Net oder PHP. Damit kann man dann Dinge auf dem Server speichern, dort berechnen und verifizieren - z.B. für Browsergames.
Und irgendwann hat man festgestellt, dass man auch ganze Programme mit HTML, CSS und JS im Webbrowser laufen lassen kann. Aber das wird mit reinem Javascript sehr schnell unwartbar. Also hat man sogenannte Single-Page-Applications entwickelt - z.B.: React. Dabei wird nicht jedes mal eine neue HTML-Seite geladen, sondern man macht im Hintergrund eine Javascript-Anfrage an den Webserver und zeigt die Daten dann dynamisch an. Der Clou daran ist, dass diese SPA-Frameworks einzelne Kompontenen erstellen, die man leicht testen sowie erweitern kann und vor allem koppeln sie Daten mit Aussehen. Damit kann man dann ziemlich gut arbeiten.

Edit: Wenn es nur darum geht Daten einzulesen, zu speichern sowie bearbeiten und am Ende daraus ein PDF zu generieren, dann reicht auch HTML+CSS sowie ein Framework auf Serverseite.

taranion:
Die Frage ist eigentlich nicht klar zu beantworten, da es von sehr vielen Faktoren abhängt.

Wie schon erwähnt ist eine Browser-basierte Variante grundsätzlich die portabelste. Dazu braucht man in der Regel ein Web-Applicationframework, welches Dir die browser-spezifische Programmierung abnimmt und die Komplexität der Webentwicklung versteckt. Solche Web-Frameworks gibt es für verschiedene Programmiersprachen (oft JavaScript). Manche Frameworks können sogar Mobile Apps erstellen.

Ein Framework der anderen Art wäre die Spiele Engine Unity. Die würde Dir die Entwicklung plattformübergreifender mobile Apps ermöglichen - und wenn ich richtig informiert bin, neuerdings auf Progressive WebApps.

In eine ganz andere Richtung geht die Entwicklung von Offline Applikationen für Win/Mac/Linux. Hier bewegst Du dich eher in klassischen Programmiersprachen wie C#  oder Java. Hier ist positiv hervorzuheben, dass es über viele Jahre gereifte Entwicklungswerkzeuge gibt, die einem das Entwicklerleben versüßen. Ich habe das für meinen Splittermond/Space1889/Shadowrun/Coriolis-Charaktergenerator (in Java) gemacht und unterstützte damit Win/Mac/Linux. Allerdings bedarf es viele  Schritte, bis aus dem Code ein installierbares Software-Paket  wird. Man kann in Java sogar mit VIEL Aufwand bei möglichst viel Code-Reuse daraus eine Win/Mac/Linux/iOS/Android/WebApp machen, aber an den Details auf diesem Weg scheitere ich derzeit auch noch.

Jeder der Wege hat seine Berechtigung. 

Was deine Fragen angeht:
Du programmierst in JavaScript, aber React (eine JavaScript Bibliothek) stellt Dir Dinge wie "Buttons" zur Verfügung.  Mit HTML schlägst Du dich dabei nur noch selten herum - das wird von React generiert.
Und ja, für eine WebApp brauchst Du einen Server, wo die Datei hinterlegt ist. Der Anwender öffnet die Datei in seinem Browser, wo dann die Anwendung ausgeführt wird.
Was das Speichern angeht: eine Progressive WebApp (PWA) kann IIRC auf das lokale Dateisystem zugreifen. Der richtige Mehrwert einer WebApp entsteht aber erst, wenn die Daten auf dem Server abgespeichert werden - d.h. Du musst sowas wie Accountverwaltung auf deinem Server bereitstellen.

Mein persönlicher Tipp anhand deiner Fragen wäre: starte nicht mit einer WebApp. Der Weg mit der flachesten Lernkurve dürfte vermutlich die Unity-Engine mit dem Ziel Mobile Apps sein.

AesSedai:

--- Zitat von: Ikarus am 24.02.2020 | 23:29 ---Danke schon mal für die Antworten. Etwas webbasiertes schwebt mir auch vor. Bisher habe ich allerdings nur mit MATLAB programmiert, was allerdings ein völlig anderer Anwendungsfall ist.

Was ich aktuell noch nicht verstehe ist, wie das ganze zusammenhängt:
- Wie läuft denn das ab? Erzeuge ich eine Datei die jeder runterladen kann und dann zu Hause in seinem Browser ausführen kann oder benötige ich immer eine Domain/eine Server wo die Datei zentral hinterlegt ist? Und wenn jemand seinen Charakter abspeichern möchte, wo liegt die Datei bei so einer Webanwendung ab, wenn man nicht gleich Accounts dafür anlegen möchte?
- Wenn JavaScript die Programmiersprache ist, was ist dann React bzw. ASP.Net core und warum brauche ich das alles? Wie hängen diese nun wieder mit html zusammen?

Sorry, die vielen Fragen, aber mit web-Programmierung kenne ich mich leider noch gar nicht aus.

--- Ende Zitat ---


Ehrliche Antwort:
Lass es lieber.


Nicht, dass ich Dich entmutigen will. Wenn Du Zeit und Lust hast ist das eine interessante Reise, die Du vor Dir hast. Aber


a) Hast Du einen riesen Batzen an Information zu verdauen, bevor Du sinnvoll loslegen kannst. Hier zu Angular oder React  zu raten zeugt entweder von mangelnder Sachkenntnis oder Naivität


b) Hast Du jede Menge Frust vor Dir


Ich würde die Zeit lieber zum Spielen nutzen wollen.


Einzige Ausnahme: Du möchtest später eh Softwareentwicklung machen. Dann sähe ich das als super Einstieg!



1of3:
Die Anforderungen sind noch zu vage, um irgendeine Aussage treffen zu können.

Was sind optische Elemente und was bedeutet umsetzen? Üblicher Weise klärt man solche Sachen mit Sätzen der Form "Als Nutzer möchte ich ..., um zu...". Also z.B. als Nutzer möchte ich ein Bild für meinen Charakter hochladen, damit meine Mitspieler später einen besseren Eindruck bekommen können.

Generell ist noch gar nicht klar, was Charakterverwaltung bedeutet. Du redest eigentlich nur über Charakterbögen und pdfs. Die soll man hoch und runterladen können. Das sagt noch nicht, dass die Applikation irgendwas mit dem Inhalt dieser Blätter anstellen kann. Wenn du sie nur hoch und runterladen kannst, musst du nichts tun. Da reicht Google Drive oder ein vergleichbarer Filehoster und es ist letzendlich auch egal, dass da Charaktere auf dem Blatt stehen.

Also überlege dir am besten erstmal, was du da wirklich mit machen willst. Unter dem Vorbehalt, den die weise Magierin vor mir schon nannte: Du willst den Schmerz wirklich.

Shihan:

--- Zitat von: AesSedai am 25.02.2020 | 07:41 ---[..] Hier zu Angular oder React  zu raten zeugt entweder von mangelnder Sachkenntnis oder Naivität [..]

--- Ende Zitat ---
Geile Aussage, meine Dame!
*slowclap* :d
Gut, dass du das aus ein paar geschriebenen Zeilen ableiten kannst...

@Topic:
Kommt halt alles darauf an, wie gut die Vorkenntnisse in der Software-Entwicklung sind und was man daraus machen möchte. Warum sollte man immer davon ausgehen, dass die Leute alle keine Ahnung haben und auch nicht die nötigen Fähigkeiten (logisches Denkvermögen, Beharrlichkeit, etc.), sich in solche Themen einzuarbeiten? Sowas ist ja nun wirklich keine Raketenwissenschaft.
Seid doch nicht so negativ. Außerdem ist wohl völlig klar, dass das Projekt lange nicht aussehen wird wie ein SotA-Softwareprojekt. Woher kommt denn immer dieser Anspruch? Lasst die Leute doch einfach mal probieren. Was helfen denn solche Aussagen wie "lass es lieber" oder "das ist zu schwer"?

Klar, man könnte argumentieren, dass es demotivierend ist, wenn man nicht vorwärts kommt. Aber deswegen immer direkt davon abzuraten ist doch auch nicht zielführend.
Wenn jemand sagt, er möchte einen Schuppen im Garten bauen, dann kommt auch keiner auf die Idee zu sagen "fang doch erstmal mit Förmchen im Sandkasten an" oder "lass es lieber"...

Just my 2 cents...

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln