der AOQML-Editor und die Zukunft des AOQML-Queste-Schreibens

XML-Variante AOQML, ihre Möglichkeiten, Ergänzungen und Entwicklung...

Moderatoren: Ratsgruppe Programmierer, A-Team

der AOQML-Editor und die Zukunft des AOQML-Queste-Schreibens

Beitragvon Lowlander » Mi 24 Jun, 2020 13:04

An alle, die noch fleißig dabei sind, Queste für A&O zu schreiben oder dies gerne tun würden:

Der einst von Enno und mir programmierte und von einigen weiteren weiter gepflegte AOQML-Editor ist ja nun arg in die Jahre gekommen und baut leider auch auf total veralteten Bibliotheken für den XML-Editor und für die Graphen-Darstellung auf - also die zentralen Elemente - die seit 10 Jahren nicht mehr gewartet wurden. Dank Varthac geht es hier zwar etwas weiter, und auch ich habe vor ein paar Tagen noch das Build- und Testsystem etwas verbessert, aber eigentlich haben wir heutzutage ganz andere Möglichkeiten durch verfügbare Tools*.

Um am besten entscheiden zu können, wie es in Sachen AOQML-Editor weiter geht, würde ich daher gerne von euch erfahren...
  • wer überhaupt noch AOQML-Queste schreibt,
  • wer dafür den AOQML-Editor verwendet,
  • oder welche Tools ihr sonst so zum AOQML-Queste-Schreiben verwendet
  • und welche Funktionen ihr am schmerzlichsten vermisst.

(*) Zu den o.g. Tools, wenn ich mir z.B. die AOQML-XML-Files in IntelliJ-IDEA ansehe und das XSD-Schema richtig verlinke ("https://eisentrutz.antamar.eu/aoqml.xsd") und dieses von IDEA als externe Resource lade, dann habe ich schonmal Autoformatting, kontextabhängige-Autocompletion und Syntaxprüfung. IDEA kennt auch Code-Templates, mit denen man auch (über die kontextabhängige-Autocompletion hinaus) ganze Codeblöcke, z.B. für <challenge> mit allen "Innereien" oder gar darüber hinaus gehende Code-Blöcke zusammen stellen könnte. Dann gibt es für IDEA noch die Extension "Navigate from Literal" und man kann sogar einfach mit Ctrl-Mausklick auf verlinkte XML-Files navigieren. Fehlt noch eine grafische Darstellung der Szenen+ sonstigen Datei-Beziehungen...
Lowlander
:: Ratsmitglied :: Programmierung
:: Ratsmitglied :: Programmierung
 
Beiträge: 2194
Registriert: So 25 Nov, 2007 18:05
Wohnort: Hamburg + Hage/Ostfriesland
Heldenname: Markorka Faargh

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon Varthac » Mi 24 Jun, 2020 14:27

Ein Feature das ich schmerzlich vermisse und auch schon für den AOQML-Editor gedanklich durchgesponnen habe, wäre die Möglichkeit per Knopfdruck eine Verbindung zum Testserver aufzubauen, die aktuelle Szene hochzuladen und direkt zu starten. Mehr ein QOL-Feature, aber die Szene direkt auf dem Testserver zu bearbeiten (z.B. um Probenaufschläge zu verändern und verschiedene Zweige zu testen) ist immer reichlich unübersichtlich und wenn man Fehler korrigiert, muss man entweder an beiden Stellen korrigieren oder neu copy-&-pasten.

Ansonsten fallen mir nach und nach bestimmt noch mehr Dinge ein, die ich dann peu a peu anmerken werde.
Varthac
:: Ratsmitglied :: Programmierung
:: Ratsmitglied :: Programmierung
 
Beiträge: 58
Registriert: Mi 29 Apr, 2020 01:38
Heldenname: Galrok, Sohn des Dwain

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon Tommek » Mi 24 Jun, 2020 15:24

:Applaus:

Ich nutze mittlerweile IntelliJ (phpstorm). Wie du schon schreibst, der große Vorteil ist das verlinkte XSD mit Autocompletion etc. Da vermisse ich aber die (schöne) Beziehungs-Übersicht, wie es sie im Editor gibt. Ist gerade bei größeren Questen sehr hilfreich.
Benutzeravatar
Tommek
Site Admin
Site Admin
 
Beiträge: 7449
Registriert: Mi 17 Mai, 2006 22:40
Wohnort: Eodatia
Heldenname: Alrik Dormwald
Mitglied bei: Orkwacht

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon Lowlander » Mi 24 Jun, 2020 16:04

Varthac hat geschrieben:Ein Feature das ich schmerzlich vermisse und auch schon für den AOQML-Editor gedanklich durchgesponnen habe, wäre die Möglichkeit per Knopfdruck eine Verbindung zum Testserver aufzubauen, die aktuelle Szene hochzuladen und direkt zu starten. Mehr ein QOL-Feature, aber die Szene direkt auf dem Testserver zu bearbeiten (z.B. um Probenaufschläge zu verändern und verschiedene Zweige zu testen) ist immer reichlich unübersichtlich und wenn man Fehler korrigiert, muss man entweder an beiden Stellen korrigieren oder neu copy-&-pasten.


Du meinst, die aktuelle Szene in die schon auf dem Testserver laufende Quest?

Ja, das wäre cool! Das Feature sollte idealerweise weitestgehend unabhängig vom AOQML-Editor gebaut werden, also der eigentliche zip+upload-Code also wiederverwendbar, dann könnte daraus auch eine IDEA Extension gebaut werden.

Varthac hat geschrieben:Ansonsten fallen mir nach und nach bestimmt noch mehr Dinge ein, die ich dann peu a peu anmerken werde.


Bin gespannt!
Lowlander
:: Ratsmitglied :: Programmierung
:: Ratsmitglied :: Programmierung
 
Beiträge: 2194
Registriert: So 25 Nov, 2007 18:05
Wohnort: Hamburg + Hage/Ostfriesland
Heldenname: Markorka Faargh

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon Lowlander » Mi 24 Jun, 2020 16:37

Tommek hat geschrieben::Applaus:

Ich nutze mittlerweile IntelliJ (phpstorm). Wie du schon schreibst, der große Vorteil ist das verlinkte XSD mit Autocompletion etc. Da vermisse ich aber die (schöne) Beziehungs-Übersicht, wie es sie im Editor gibt. Ist gerade bei größeren Questen sehr hilfreich.


Ich sehe mir gerade an, ob es vielleicht sinnvoll machbar ist, aus den XML-Dateien entweder graphml oder graphviz zu generieren. Nur mit manueller Positionierung wird es schwierig, dafür sind aber die Auto-Layouts ziemlich gut. Ich tendiere derzeit zu graphviz
Lowlander
:: Ratsmitglied :: Programmierung
:: Ratsmitglied :: Programmierung
 
Beiträge: 2194
Registriert: So 25 Nov, 2007 18:05
Wohnort: Hamburg + Hage/Ostfriesland
Heldenname: Markorka Faargh

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon Varthac » Do 25 Jun, 2020 06:56

Lowlander hat geschrieben:Du meinst, die aktuelle Szene in die schon auf dem Testserver laufende Quest?

Ja, das wäre cool! Das Feature sollte idealerweise weitestgehend unabhängig vom AOQML-Editor gebaut werden, also der eigentliche zip+upload-Code also wiederverwendbar, dann könnte daraus auch eine IDEA Extension gebaut werden.


Das wäre dann sogar schon ne Liga drüber. Tatsächlich ging es mir erst mal nur darum einzelne ZBs mit möglichst nur einem Klick testen zu können. Aber klar, ne Quest direkt zu zippen, hochzuladen und ne Startszene wählen zu können, wäre der Traum.
Varthac
:: Ratsmitglied :: Programmierung
:: Ratsmitglied :: Programmierung
 
Beiträge: 58
Registriert: Mi 29 Apr, 2020 01:38
Heldenname: Galrok, Sohn des Dwain

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon Lowlander » Do 25 Jun, 2020 09:42

Varthac hat geschrieben:
Lowlander hat geschrieben:Du meinst, die aktuelle Szene in die schon auf dem Testserver laufende Quest?

Ja, das wäre cool! Das Feature sollte idealerweise weitestgehend unabhängig vom AOQML-Editor gebaut werden, also der eigentliche zip+upload-Code also wiederverwendbar, dann könnte daraus auch eine IDEA Extension gebaut werden.


Das wäre dann sogar schon ne Liga drüber. Tatsächlich ging es mir erst mal nur darum einzelne ZBs mit möglichst nur einem Klick testen zu können. Aber klar, ne Quest direkt zu zippen, hochzuladen und ne Startszene wählen zu können, wäre der Traum.


Ich vermute, das bekommt man jetzt schon fast hin. Quest Zippen geht mit zwei Tastendrücken (auf Kommandozeile Cursor hoch, Enter). Dann auf Questupload und ein paarmal klicken. Wollte man das automatisieren, müsste das schon in derselben Browser-Session machen. Klingt also nach Browser-Plugin, wenn man das noch vereinfachen wollte.

Bliebe eh noch das Setzen der Startszene, und oft muss man auch ein paar Variable setzen etc., damit man an der Stelle überhaupt loslegen kann, ohne dass gleich ein "retain" fehlt oder so. Das muss man in <debug>...</debug> eh ausprogrammieren. Aber ein Standard-Aufbau für Questen könnte dabei sehr hilfreich sein. Das wäre vieleicht ein Thema, an dem man mal arbeiten könnte!
Lowlander
:: Ratsmitglied :: Programmierung
:: Ratsmitglied :: Programmierung
 
Beiträge: 2194
Registriert: So 25 Nov, 2007 18:05
Wohnort: Hamburg + Hage/Ostfriesland
Heldenname: Markorka Faargh

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon Lowlander » Fr 10 Jul, 2020 20:57

Soweit ich weiß, ist es derzeit noch nicht möglich, Queste mit eigenen Bildern auf den Testserver hochzuladen. Jedenfalls sind die dort dann nicht sichtbar.

Eine Idee dazu: Wir könnten vor dem zippen in den xml-Dateien alle <img src="..."> in data-URLs (src="data:image/jpeg;base64,...") konvertieren (kopieren, nicht die Originale ändern). Das gibt allerdings recht große Dateien.

Man könnte das auch manuell machen: https://ezgif.com/image-to-datauri und sogar so behalten, dann würde ich allerdings die dann sehr großen img-Tags in eigene Dateien auslagern und mit <include ...> in die Szenen einblenden.

Nur so eine Idee.
Lowlander
:: Ratsmitglied :: Programmierung
:: Ratsmitglied :: Programmierung
 
Beiträge: 2194
Registriert: So 25 Nov, 2007 18:05
Wohnort: Hamburg + Hage/Ostfriesland
Heldenname: Markorka Faargh

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon Tommek » Fr 10 Jul, 2020 22:08

Du kannst Bilder ins root des Zips legen und dann direkt ansprechen src=bild.jpg
Benutzeravatar
Tommek
Site Admin
Site Admin
 
Beiträge: 7449
Registriert: Mi 17 Mai, 2006 22:40
Wohnort: Eodatia
Heldenname: Alrik Dormwald
Mitglied bei: Orkwacht

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon Lowlander » Sa 11 Jul, 2020 09:42

Tommek hat geschrieben:Du kannst Bilder ins root des Zips legen und dann direkt ansprechen src=bild.jpg


noch besser! Scheint leider mit den maze-Bildern nicht zu funktionieren (der dataurl Trick allerdings auch nicht). Auf welchem Wege sollte das funktionieren? Directory-Freigabe (kann eigentlich nicht, weil ja die Quest kein Bestandteil des URL-Pfades ist und damit alle Bilder aller Queste auf dem Testserver unkontrolliert zusammenkopiert würden) oder werden die Images per Code verschoben und die Links im XML angepasst?

Ich teste eh lokal, aber wäre cool, wenn der andere Weg auch funktioniert, am besten mit Unterverzeichnis, um die Quest aufgräumt zu halten.
Lowlander
:: Ratsmitglied :: Programmierung
:: Ratsmitglied :: Programmierung
 
Beiträge: 2194
Registriert: So 25 Nov, 2007 18:05
Wohnort: Hamburg + Hage/Ostfriesland
Heldenname: Markorka Faargh

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon lordhelix » Mi 29 Jul, 2020 18:14

Hi,

ich schreibe noch mit AOQML, vorallem aufgrund der von Tommek angesprochenen Visualisierung der Abhängigkeiten. Die ist einfach Mega! Alternativ kann ich auf Dreamweaver schreiben.

1. Vermissen: CodeSnippets (Würde ich auch selbst zur Verfügung stellen), z.B. eine ordentliche Probe auf Lichtquelle wäre schön. Mehrstufig Disaregstein - Lampe- Fackel zzgl der Utensilien zum anzünden. Denn eine Fackel mag eine Lichtquelle sein, ohne Feuerstein und Zunder ist sie das aber nicht.

2. Ganz aktuell bin ich wieder an einer Megagroßen Queste dran, mir fehlt aber leider die Möglichkeit Begleiter nur temporär zu entfernen. mit steal kann ich die Begleiter leider nur permanent entfernen. Möchte ich die Pferde vor dem Dungeon stehen lassen oder vor einem Gebäude...naja geht das nicht. Ist ein kleines aber für mich essentielles Dilemma. Wer nimmt schon 5 Kamele mit ins Haus? Oder eine Enge Höhle. Unter anderem geht es auch um die Gegenstände auf die der Held normalerweise kein Zugriff hat.

Es wäre toll, wenn man Begleiter also wie Items in ein Inventar packen könnte.

3. Eine Möglichkeit aus AOQML heraus zu testen wäre genial.

4. Eigene CodeSnippets importieren, abspeichern

5. Genutzte Variablen-Übersicht


Gruß
lordhelix
Herold
Herold
 
Beiträge: 186
Registriert: So 07 Apr, 2019 22:00
Heldenname: Helix

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon Lowlander » Do 30 Jul, 2020 12:39

lordhelix hat geschrieben:ich schreibe noch mit AOQML, vorallem aufgrund der von Tommek angesprochenen Visualisierung der Abhängigkeiten. Die ist einfach Mega! Alternativ kann ich auf Dreamweaver schreiben.


AOQML-Queste mit Dreamweaver? Ok, gibt vielleicht ähnliche Unterstützung wie IntelliJ IDEA, könnte ich mir vorstellen.

Vielleicht wäre das einfachste, im AOQML-Editor eine Funktion "öffnen in externem Editor" anzubieten. Dann könnte man noch die alte grafische Szenen-Navigation nutzen, aber dennoch schnell in einen komfortablen Editor wechseln.

lordhelix hat geschrieben:1. Vermissen: CodeSnippets (Würde ich auch selbst zur Verfügung stellen), z.B. eine ordentliche Probe auf Lichtquelle wäre schön. Mehrstufig Disaregstein - Lampe- Fackel zzgl der Utensilien zum anzünden. Denn eine Fackel mag eine Lichtquelle sein, ohne Feuerstein und Zunder ist sie das aber nicht.


Es gibt da etwas in der "/lib": https://forum.antamar-community.de/viewtopic.php?f=77&t=12411&p=311027#p311027

lordhelix hat geschrieben:2. Ganz aktuell bin ich wieder an einer Megagroßen Queste dran, mir fehlt aber leider die Möglichkeit Begleiter nur temporär zu entfernen. mit steal kann ich die Begleiter leider nur permanent entfernen. Möchte ich die Pferde vor dem Dungeon stehen lassen oder vor einem Gebäude...naja geht das nicht. Ist ein kleines aber für mich essentielles Dilemma. Wer nimmt schon 5 Kamele mit ins Haus? Oder eine Enge Höhle. Unter anderem geht es auch um die Gegenstände auf die der Held normalerweise kein Zugriff hat.

Es wäre toll, wenn man Begleiter also wie Items in ein Inventar packen könnte.


Ist das an der Stelle essentiell oder nur störend? Also könnte man es ignorieren, dass die Begleiter noch dabei sind? Grundsätzlich stimme ich zu, klingt aber nach einer größeren Baustelle.

lordhelix hat geschrieben:3. Eine Möglichkeit aus AOQML heraus zu testen wäre genial.


Stimme zu. Dazu gab es auch schon Ideen. Es wäre sogar noch genialer, wenn wir das lokale Verzeichnis mit der Quest direkt in den Testserver integrieren könnten.

lordhelix hat geschrieben:4. Eigene CodeSnippets importieren, abspeichern


Eine Funktion, die man in IntelliJ IDEA hätte.

lordhelix hat geschrieben:5. Genutzte Variablen-Übersicht


Statisch aus dem AOQML-Code? Da könnte man eine XSLT-Transformation schreiben. Oder dynamisch wärend die Quest auf dem Testserver läuft? Dazu baue ich mir immer debug-include Szenen siehe Tags <debug> und <var-dump>, da baue ich auch immer einen Teleporter zu bestimmten Szenen rein, sowie ein Inventar, um den Testhelden mit Dingen zu versorgen, die man für bestimmte Zweige braucht.

Habe TheBlackBook mal überflogen: Wahnsinn! Wenn ich wieder etwas Zeit habe, werde ich mal ein paar der zu Testenden Questen durchgehen.
Lowlander
:: Ratsmitglied :: Programmierung
:: Ratsmitglied :: Programmierung
 
Beiträge: 2194
Registriert: So 25 Nov, 2007 18:05
Wohnort: Hamburg + Hage/Ostfriesland
Heldenname: Markorka Faargh

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon lordhelix » Do 30 Jul, 2020 13:24

Lowlander hat geschrieben:
lordhelix hat geschrieben:1. Vermissen: CodeSnippets (Würde ich auch selbst zur Verfügung stellen), z.B. eine ordentliche Probe auf Lichtquelle wäre schön. Mehrstufig Disaregstein - Lampe- Fackel zzgl der Utensilien zum anzünden. Denn eine Fackel mag eine Lichtquelle sein, ohne Feuerstein und Zunder ist sie das aber nicht.


Es gibt da etwas in der "/lib": https://forum.antamar-community.de/viewtopic.php?f=77&t=12411&p=311027#p311027


Ich mag mich da nicht beschweren, muss aber noch durch den code durchschauen bevor ich ihn verstehe ^^ Aber das wird! Da ich mittlerweile einen eigenen Code dafür nutze und nicht extra umbaue, wird er erst nächstes mal Eingesetzt.

Das war auch nur Code bezg. Lichtquelle, ich habe das zwar aufgezählt, aber nur als Beispiel. Aus dem Kopf heraus fällt mir gerade ncihts ein, aber immer wieder beim Schreiben im Editor denke ich bei einigen Dinge, das ich sie immer wieder verwende.

Lowlander hat geschrieben:
lordhelix hat geschrieben:2. Ganz aktuell bin ich wieder an einer Megagroßen Queste dran, mir fehlt aber leider die Möglichkeit Begleiter nur temporär zu entfernen. mit steal kann ich die Begleiter leider nur permanent entfernen. Möchte ich die Pferde vor dem Dungeon stehen lassen oder vor einem Gebäude...naja geht das nicht. Ist ein kleines aber für mich essentielles Dilemma. Wer nimmt schon 5 Kamele mit ins Haus? Oder eine Enge Höhle. Unter anderem geht es auch um die Gegenstände auf die der Held normalerweise kein Zugriff hat.

Es wäre toll, wenn man Begleiter also wie Items in ein Inventar packen könnte.


Ist das an der Stelle essentiell oder nur störend? Also könnte man es ignorieren, dass die Begleiter noch dabei sind? Grundsätzlich stimme ich zu, klingt aber nach einer größeren Baustelle.



Essentiell, der Char kann schließlich auf die Gegenstände zugreifen und ich habe keine Möglichkeit das zu verhindern ausser ich "drop" ihm alles weg, das betrifft aber auch was er dabei hat am Körper.





Lowlander hat geschrieben:
lordhelix hat geschrieben:4. Eigene CodeSnippets importieren, abspeichern


Eine Funktion, die man in IntelliJ IDEA hätte.


Hat Dreamweaver auch und wahrscheinlich jede "gute" IDE. Aber es ging hier speziell um Fragen zum AOQML, deshalb hatte ich es erwähnt.

Lowlander hat geschrieben:
lordhelix hat geschrieben:5. Genutzte Variablen-Übersicht


Statisch aus dem AOQML-Code? Da könnte man eine XSLT-Transformation schreiben. Oder dynamisch wärend die Quest auf dem Testserver läuft? Dazu baue ich mir immer debug-include Szenen siehe Tags <debug> und <var-dump>, da baue ich auch immer einen Teleporter zu bestimmten Szenen rein, sowie ein Inventar, um den Testhelden mit Dingen zu versorgen, die man für bestimmte Zweige braucht.


Aktuell nutze ich einen Autoloader in der ich zu beginn sämtliche Variablen auf setze. Ein Blick darein reicht, aber wenn ich mal einen Fehler mache und die Variable eigentlich bereits belegt ist...naja wäre ein Fehler nachdem man vielleicht 2 h sucht ^^

Lowlander hat geschrieben:Habe TheBlackBook mal überflogen: Wahnsinn! Wenn ich wieder etwas Zeit habe, werde ich mal ein paar der zu Testenden Questen durchgehen.


Danke ;) Die aktuelle Quest wird nach aktuellem Stand mindestens doppelt so groß, wobei mein Plan die 10 fache Größe ist.
lordhelix
Herold
Herold
 
Beiträge: 186
Registriert: So 07 Apr, 2019 22:00
Heldenname: Helix

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon Tommek » Do 30 Jul, 2020 13:43

Du kannst gezielt vom Begleiter in ein Inventar droppen. Würde das aber immer mit Vorsicht machen, im "echten" leben könnte man vielleicht wieder zurück etwas holen, oder es ist unlogisch das der Held nicht dran denkt bestimmte Sachen mitzunehmen etc.

Stell dein Dilemma doch Mal zur Diskussion hier.
Benutzeravatar
Tommek
Site Admin
Site Admin
 
Beiträge: 7449
Registriert: Mi 17 Mai, 2006 22:40
Wohnort: Eodatia
Heldenname: Alrik Dormwald
Mitglied bei: Orkwacht

Re: der AOQML-Editor und die Zukunft des AOQML-Queste-Schrei

Beitragvon Lowlander » Do 30 Jul, 2020 14:00

Ja, das Risiko ist, dass der Begleiter futsch sein könnte, wenn die Quest abbricht. Vielleicht könnte man das umgehen, indem man dasselbe Inventar dem Helden auch anderswo wieder anbietet, also in einer "Wiederfinde-Quest" - nur so eine grobe Idee, weiß gar nicht ob das bei Inventaren möglich ist (bei allgemeinen Variablen geht das über den Scope).
Lowlander
:: Ratsmitglied :: Programmierung
:: Ratsmitglied :: Programmierung
 
Beiträge: 2194
Registriert: So 25 Nov, 2007 18:05
Wohnort: Hamburg + Hage/Ostfriesland
Heldenname: Markorka Faargh

Nächste

Zurück zu Questen, Abenteuer und Zufallsbegegnungen (inkl. AOQML)



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron