Build a Game for the largest game dev competition in the world
der 27. April 2025
Die Game Development World Championship (GDWC) ist ein fantastischer globaler Wettbewerb für Indie-Entwickler. Dieses Jahr wurde eine spezielle Kategorie eingeführt: Bestes Discord-Spiel, gesponsert von Discord selbst. Der Gewinner erhält 5.000 US-Dollar und wird auf Discords Discovery-Oberflächen präsentiert – ein enormer Pluspunkt für die Sichtbarkeit!
In diesem Blogbeitrag biete ich kein Tutorial an. Stattdessen möchte ich meine Erfahrungen teilen: Ich lerne, wie ich das Discord Embedded App SDK integriere und meine erste Discord-Aktivität erstelle.
🛠️ Erste Schritte: Ein Discord-Spiel erstellen
Um an der Kategorie „Bestes Discord-Spiel“ teilzunehmen, müssen Sie das Discord Embedded App SDK in Ihr Projekt integrieren. So können Sie die leistungsstarken sozialen Funktionen von Discord nutzen – Sprache, Chat, Präsenz, Matchmaking und mehr.
Bei Interesse gehe ich später gerne tiefer auf Entwicklungsmuster, die Funktionsweise von Aktivitäten und Designmuster ein.
📚 Erstelle deine erste Discord-Aktivität
Eine Schritt-für-Schritt-Anleitung findest du in der offiziellen Dokumentation.
🌟 Bester Discord-Spiel-Award-Beitrag
Unser Team Darkwaar hat unser Spiel eingereicht: Vite.
🛜 Umgebung einrichten: Vite dekompilieren
Zuerst musste ich Rust 🧙♂️ einrichten. Denken Sie nach der Installation daran, Ihre Shell neu zu starten, um Ihre Umgebungsvariablen korrekt einzurichten.
rustc --version
# rustc 1.86.0 (05f9846f8 2025-03-31)
cargo run --help
Zusätzlich habe ich Windows XP in einem Docker-Container ausgeführt, um mein altes TI-89-BASIC-Spiel „Vite“ zu dekompilieren. Hier ist das Setup:
Beispiel für einen QEMU-Befehl:
qemu-system-i386 -cpu pentium -m 4G -hda /isos/xp.vhd -cdrom /isos/en_winxp_pro_with_sp2.iso -boot d -nic user,model=e1000,hostfwd=tcp::8888-:80 -soundhw ac97
🎮 Über Vite: Das Spielkonzept
Vite ist ein Überlebensspiel im Pixel-Stil, in dem du Mathieu LEDRU hilfst, in der Wüste zu überleben, nachdem er wegen der Nutzung eines Macs aus „PC City“ verbannt wurde.
Spielmechanik:
- Bewege Mathieu zu einem Zielpixel.
- Verdiene Credits und verbessere deine Fähigkeiten.
- Überlebe so lange wie möglich, bevor die Zeit abläuft.
Variablen und Spielzustände:
- Credits, Zeit, Geschwindigkeit, Größe, Level, Zustand, X, Y, ZielX, ZielY, Levelaufstiegsauswahl.
- Zustände: „Intro“, „Spielen“, „Levelaufstieg“, „Ende“.
Die Logik basiert auf der Aktualisierung von Zuständen basierend auf Benutzereingaben und Spielzeit.
🌐 Deep Dive: Mein Entwicklungsweg
In meinem Video habe ich alles von der ersten Einrichtung bis hin zur Anpassung meines alten TI-89-Spiels für den GDWC 2025 Best Discord Game Award gezeigt:
- Wettbewerbsübersicht: Der GDWC bietet vier Kategorien, darunter „Bestes Discord-Spiel“ mit einem Preisgeld von 5.000 $.
- Vorbereitung: Ich habe das Discord Embedded App SDK anhand der Anleitung „Erstellen Sie Ihre erste Aktivität“ erlernt. Kein Live-Coding – zuerst umfassende Vorbereitung! 📈
- Technischer Stack:
- 📚 Frontend: Vanilla HTML + Node.js.
- 🚀 Server: Node.js-Backend mit einfacher API-Authentifizierung.
- ☁️ Tunnel: Ich habe Cloudflare Tunnel verwendet, um lokale Server verfügbar zu machen.
- Herausforderungen:
- 🔧 Versuch, mein TI-89 BASIC-Programm zu dekompilieren.
- Docker-Virtualisierungen unter Windows XP erkundet.
- Open-Source-Tools wie TIO2 (Rust-Decompiler) und TI-Simulatoren verwendet.
- Spieldesign-Inspiration:
- Basierend auf meinem ursprünglichen TI-89-Spiel „Vite“.
- Bewegung mit Pfeiltasten.
- Level-Up-System mit Geschwindigkeits-, Größen- oder Zeitboni.
Endergebnis: Vite-Aktivität
Nachdem alles verbunden und authentifiziert war, konnte ich Vite als Live-Discord-Aktivität ausführen:
- Intro-Szene: Zeigt Credits, Geschwindigkeit, Größe, Zeit und Level an.
- 🚶♂️ Spielszene: Bewege Mathieu zum Zielpixel.
- 📊 Level-up-Szene: Wähle Upgrades.
- 🎉 Endszene: Zeigt eine Glückwunschmeldung anAlter.
Der gesamte Ablauf wird über eine einfache Spielschleife mit 30 FPS gesteuert. ⏳
📚 Verwendete Ressourcen
- Die Spieleentwicklungs-Weltmeisterschaft
- Darkwaar-Projekt
- Darkwood-Apps TI89
- Ressourcen der Discord-Community
- @discord/embedded-app-sdk
- embedded-app-sdk-examples
- Cloudflared
- 📂 TiO2: TI-BASIC Interpreter/Compiler/Decompiler
- 👾 TI-89-Simulator
- TI-Basic 89 Programming/A Basic Program
- Pad/emu
- 🕹️ Javascript TI-89/TI-92+/TI-V200 Emulator
- Emmanuel ROY alias Acksop
- TiO2-Dekompilator
- ti842py ist ein TI-BASIC-zu-Python-3-Transpiler
- 📊 Decompiler-Explorer
- 👩💻 Rust-Programmiersprache
- Rust in Visual Studio Code
- TI-89: Gibt es einen PC-Programmeditor für TI-Basic?
- Virtualbox
- Windows XP in einem Docker-Container ausführen!
- Windows 98 in einem Docker-Container ausführen!
- 🌐 Windows Docker-Projekte
- 💾 Windows 98 ISO
- Code Camp: Dungeon Crawler Old School Academy
- Bildnachweis: 📸 Luiz Cent
Wenn ihr mit dem Gedanken spielt, ein Discord-Spiel zu entwickeln, hoffe ich, dass euch dieser Beitrag eine klare Vorstellung davon gibt, wie die Reise aussehen wird! Fragt gerne, wenn ihr ausführlichere Tutorials oder Tipps wünscht – und bleibt dran für einen zukünftigen Beitrag darüber, wie ich mein Spiel offiziell beim GDWC eingereicht habe! 🚀
🔗 Interessiert an Spieleentwicklungsberatung?
Schauen Sie sich hier meine Beratungsleistungen für Jeux et Vidéo Ludique an