kaylee.sachs am 23. Februar 2023
Nach langem hin- und her haben wir uns bei Sahnee dafür entschieden unser erstes "echtes" Spiel zu veröffentlichen: Ganz simpel einfach nur nach seinem Working-Title "Autobahn" benannt.
Ursprünglich primär dafür gedacht dass wir uns gemeinsam in die Unity Engine reinzufuchsen fanden wir es jetzt zu schade das Spiel in der Versenke versauern zu lassen und nicht zu veröffentlichen, jedoch hat es auch nicht unsere Qualitätsansprüche erfüllt um es kostenpflichtig auf Steam zu veröffentlichen. Daher nun der Zwischenschritt, es einfach kostenlos auf unserer Webseite zum Download anzubieten.
Das Spiel handelt davon, dass man selbst nach einem Bankraub nun mit der Beute von der Polizei entkommen muss. Und natürlich gibt es hierfür nur einen logischen Fluchtweg: Zu Fuß auf der Autobahn, entgegen dem Verkehr.
Währenddessen kann man Items aufsammeln welche es vereinfachen den entgegenkommenden Autos auszuweichen, den Verkehr etwas - nennen wir es einfach mal - "auszudünnen" oder schneller von der Polizei zu entkommen.
Hierbei motivieren einsehbare Statistiken und ein paar Achievements.
Das Spiel kann auf der Sahnee Firmenwebseite unter der Kategorie "Spiele" im Punkt "Autobahn" heruntergeladen werden.
kaylee.sachs am 11. Juni 2019
Schon seid längerer Zeit gibt es zwischen Freunden und mir einen Art "Running-Gag" sich gegenseitig für die absurdesten Dinge "Verwarnungen" auszustellen. Keiner weiß mehr wie das ganze angefangen hat, jedoch stand eines schnell fest: Sich die ganzen Verwarnungen zu merken wird schwierig. Also muss das Ganze elektronisch verwaltet werden.
Eine eigene App oder ähnliches dafür zu entwickeln wäre natürlich möglich gewesen, aber da die Idee aus einer Art Schnapslaune entstanden ist(auch wenn wir dabei komischerweise vollkommen nüchtern waren!) haben uns entschieden auf ein bereits existierendes Backend aufzusetzen: Discord
Daher gesagt-getan, ein Discord Bot wurde entwickelt. you-have-been-warned nennt sich das gute Stück.
Nun lässt sich via Befehl jede Person die sich auf unserem Discord befindet gemütlich Verwarnen. (Und auch entwarnen, aber wer will denn sowas...)
Der Bot lässt sich natürlich auch auf dem eigenen Discord Server installieren. Einfach auf die oben verlinkte GitHub Seite gehen und entweder den von mir gehosteten Bot installieren(hat sich mit 2 Klicks erledigt), oder den Bot auf einem eigenem Server installieren.
Besonders interessant fand ich, wie zugänglich das ganze zum Entwickeln war: Grundsätzlich wird zu den offiziellen Discord Servern eine Websocket Verbindung aufgebaut über welchen letztendlich sämtliche Kommunikation abläuft. Das hat bereits einen sehr großen Vorteil: Dadurch dass nicht auf ein eigenes, proprietäres Protokoll gesetzt wird, ist es möglich einen Bot in jeder Sprache(incl. im Browser!) zu entwickeln.
Und natürlich greift die gute alte Regel, dass zu allem was auch nur ansatzweise Sinn macht mindestens ein NPM Paket verfügbar ist. So auch hier. Ich konnte auf Anhieb zwei Libraries finden, die diese Kommunikation in eine schöne High-Level API verpacken: discord.io und discord.js.
Zuerst habe ich mich mit discord.io ans Werk gemacht, nicht zuletzt weil ich im ersten Google Ergebnis ein Tutorial gefunden habe, welches diese Library verwendet. Eine Stunde später ist diese jedoch wieder rausgefolgen, da sie mit IPv6 Probleme hatte, was insofern problematisch ist, da der Server auf welchem der Bot laufen wird IPv6 only ist. Es scheint hier zwar eine Art Workaround zu geben, jedoch habe ich diesen nicht wirklich Einwandfrei zum Laufen gebracht.
Bevor ich also graue Haare riskiert habe hab ich ein Blick zu deren Konkurrenz gewagt: discord.js. Die Library hat bereits zu Beginn durch eine schön präsentierte Webseite von sich überzeugt. Auch war der Verbindungsaufbau und Erhalt mit den Discord Servern auch über längere Zeiträume kein Problem.
Daher habe ich mich ohne große Umschweife für diese Library entschieden, deren API mit im Nachhinein auch wesentlich besser gefallen hat.
Besonders wichtig war mir, dass das ganze System ohne Datenbank auf meiner Seite auskommt, damit ich mich nicht mit Datenschutzthemen ärgern muss. Hier legt der Bot lediglich Benutzerrollen in Abhängigkeit der Verwarnungen eines Nutzers an. Hat ein Nutzer beispielsweise 10 Verwarnungen bekommt dieser die Rolle "warnings: 10".
Um nun die Anzahl der aktuellen Verwarnungen auszulesen, geht der Bot einfach durch die Rollennamen eines Benutzers durch und versucht diese zu parsen.
Beide APIs haben den Vorteil, dass sie Eventbasiert aufgebaut sind, was es sehr einfach macht den Code nachzuvollziehen und auch unerwartete Fehler zu reduzieren. Auch ist der Bot standardmäßig - wie ich es gerne nenne - Server agnostisch. Das bedeutet, dass sobald der Bot auf einem Server funktioniert wird es auch auf jedem anderen funktionieren, da die Events global aufgebaut sind, anstatt für jeden Discord Server eigene Events zu haben(z.B. das onmessage
Event erhält die Nachrichten jedes Servers, anstatt für jeden Server einzeln ein eigenes onmessage
Event registrieren zu müssen.).
Der Bot ist für unsere Verwendungszwecke vollständig abgeschlossen. Ein weiteres Features wären jedoch noch schön: Es wird sich zwar die Anzahl der Verwarnungen gemerkt, jedoch nicht deren Gründe. Hier wäre es schön, wenn ebenfalls Historie über alle Gründe geführt werden würde die sich dann jederzeit abrufen lässt.
Falls sich also jemand inspiriert fühlt hier mit Hand anzulegen, die GitHub Issue Seite des Bots enthält alle nötigen Details: https://github.com/SachsKaylee/you-have-been-warned/issues
kaylee.sachs am 3. März 2019
Seid Ende Februar ist meine Webseite nun zusätzlich unter kaylee-sachs.dev erreichbar nachdem diese nun zu menschlich finanzierbaren Preise erhältlich ist.
Natürlich können auch weiterhin alle alten Domains verwendet werden(Helios erlaubt die Verwendung von mehreren Domains). Meine Mail Adressen haben sich ebenfalls nicht geändert.
Das Verwenden der .dev Domain bringt jedoch einige Sicherheitsfeatures mit sich: Alle Domains mit dieser Endung befinden sich auf der "HSTS"(HTTP Strict Transport Security) Liste. Das bedeutet, dass kaylee-sachs.dev ausschließlich über das verschlüsselte HTTPS Protokoll erreichbar ist.
Während die .de Domain zwar augenscheinlich ebenfalls exklusiv über HTTPS läuft, läuft im Hintergrund das ganze etwas anders ab:
Für Interessenten ist wie oft der Wikipedia Eintrag ein guter Punkt zum informieren. Sollte jemand am Erwerb einer Domain interessiert sein kann dies direkt über die offizielle Seite von Google getan werden: https://get.dev/
kaylee.sachs am 15. Januar 2019
Nach gefühlt ewiger Planungszeit ist meine neue Website jetzt endlich online. Jetzt nicht mehr Wordpress sondern mein eigenes CMS: Helios
Auch habe ich mich entschieden meine Website weiterhin auf Deutsch fortzuführen. Ich war lange davon überzeugt dass ich mit dem Umstieg nun auf Englisch fortsetzen möchte. Das ganze hat sich dann jedoch irgendwie "falsch" angefühlt als ich Helios auf Englisch installiert hatte und angefangen habe meine persönliche Website mit Englischen Inhalten zu füllen. Daher weiterhin alles auf Deutsch.
Da die Seite für nähere Zeit doch noch etwas leerer bleiben wird(Es gibt dann doch noch das ein oder andere was an Helios noch fehlt um so richtig damit loslegen zu können) empfehle ich vorerst mir auf GitHub zu folgen um aktuell zu bleiben. Anstatt jedoch eine dieser schrecklichen "Under Construction" Banner aufzuhängen gibt es für die Zwischenzeit diese Version der Seite.