Name des Programms:
Simple DX Game
Beschreibung:
Hier möchte ich eine Art interaktives Tagebuch zur Entwicklung bzw zu Tests mit DX und VB.Net schreiben,
und gleichzeitig ein letztes mal versuchen ein wenig Feedback von der Community hier zu bekommen
Das ganze ist hier (im Offtopic) zu finden da es nicht ganz zum Showroom passt, da es
1.) ja noch nicht fertig ist
2.) ich auch einzelschritte evtl (bei interesse) zum download anbieten werde
3.) und vielleicht auch ein wenig Diskussion um den Code drum herrum sein soll
4.) und natürlich will ich eine kleine Dokumentation dazu..
Das ist das erste mal das ich in VB.Net ein Spiel erstelle, daher wird es auch nichts besonderes.
Das Konzept steht, werde ich aber nicht im vollen Umfang hier posten da ich es wohl auf mehrere Beiträge aufteilen müsste, und das wär dann doch zu viel.
Im groben wird es ein altes Arcade Spiel werden, ein wenig von Space Invaders und ein wenig von anderen Spielen des Genres.
Ich versuche hier nichts neues zu produzieren, nur etwas halbwegs akzeptables in VB umzusetzten.
VB ist keien Sprache die ich für solch ein Spiel nehmen würde, daher hat es doch wieder einen gewissen Reiz da mal etwas zu versuchen
Angefangen hat das ganze heute mit einem kleinen Tutorial und Beispielcode..
Quelle: entfernt
Zum testen dann gleich mal die Grundlegenden Funktionen die man braucht, bewegen, zoomen.
Drehen kann mans nicht, aber das war vorerst nicht von interesse.
Nach 1er Minute war das ganze auch implementiert, mit dem Mausrad kann man zoomen, hält man eine Maustaste und bewegt die Maus, so kann man das Objekt verschieben.
entfernt
So weit so gut.
Aber es soll ja kein einfaches herrumbewegen von irgendwelchen Objekten werden, sondern ein interaktives Spiel.
Schritt 2 war dann mal das verwenden von einfachen Bildern, das ging ja fast zu einfach.
Dann noch ein wenig mehr Bewegung rein, einfache Steuerung...
Auch so weit fertig.
(Ich bevorzuge Minigames bei denen man NUR Maus ODER Tastatur benötigt).
Spiel ist komplett mit Maus steuerbar...
Bewegt man die Maus, bewegt sich das "Schiff".
Linke Maustaste feuert einen einfachen Schuss ab. (1*)
Rechte Maustaste (halten) erzeugt ein Dauerfeuer. (1*)
Mit dem Mausrad kann man beschleunigen und bremsen.
(1*): Das Schiff benötigt Energie um einen Schuss abzufeuern. Energie regeneriert sich von alleine, Dauerfeuer kostet mehr Energie als ein normaler Schuss.
Kollisionsabfrage ist auch schon drin, "Gegner" werden auch schon unendlich viele unterstützt.
Tja wenn ich nochmal darüber nachdenke während ich so schreibe wird das fast überflüssig.
ich wollte ja eine Art "History" machen, und einmal am Tag oder vllt alle 2 Tage was machen und was schreiben, aber jetzt ist in den ersten 10 Stunden schon das wichtigste fertig...
Naja trotzdem noch viel zu machen
Die Kollision ist momentan simpel per Rect gelöst, ich denke eine pixelgenaue Abfrage werde ich auch nicht einbauen, da das Spiel auch auf langsameren PCs gut laufen soll, und auch mal mehr Gegner unterwegs sien sollen.
Die aktuellen gegner sind wohl eher Tontauben, aber zum Testen reichen sie aus.
Für die Gegner hab' ich eine einfache textur genommen die ich später einmal für Pratikeleffekte nutzen werde.
Momentan kann man also mit dem Schiff frei fliegen, die Geschwindigkeit ändern und Laser abfeuern.
Fliegt man schneller so verhält sich der Hintergrund korrekt, und die Schüsse (die ja konstant fliegen) entfernen sich somit langsamer vom Schiff.
Das Schiff ist momentan eine hässliche Zeichnung, wird jedoch noch verbessert und auch Animationen erhalten sollte der User nach Links/Rechts fliegen.
Eine Kollisionsabfrage von Schiff zu Laser bzw "Gegner" ist noch nicht implementiert, zuerst werde ich das ganze etwas umstrukturieren und das ganze als eine Art 2D Engine entwickeln, anstatt einfach das Spiel zu schreiben. Das spart später mal auch viel Arbeit, sollte ich doch irgendwann mal wieder ein DX Game in Vb erstellen.
Im übrigen wird auch Kollision von Schiff/Spieler Laser geben, sollte man mit Maximalgeschwindigkeit in die eigenen Schüsse fliegen, so bekommt man Schaden.
Powerups sind ebenfalls geplant.
Hintergrundmusik ist bereits implementiert, Geräusche für den Laser ebenfalls.
Explosionsanimationen und Geräusche sowie Pratikeleffekte werden noch hinzugefügt.
Die Antriebsanimation ist ebenfalls nur vorrübergehend, da werd ich entweder etwas schöneres machen, oder auch Partikel verwenden.
Bisher ist das Spiel komplett 2D, für die Zukunft habe ich jedoch geplant auch 3D Objekte einzusetzten, sobald ich welche erstellen kann, oder brauchbare finde
Auch wenn ich 3D Objekte verwenden werde, wird sich das Spiel nur auf 2 Achsen abspielen, wüsste moentan keine gute Möglichkeit die 3. bei der aktuell vergebenen Steuerung einzubauen, und von einer Egoperspektive halte ich bei dieser Art von Spiel nichts.
Ziel des Spiels wird es natürlich sein so viel Punkte wie möglich zu machen.
Ein Updater dafür ist so gut wie fertig, Onlinehighscore ist ebenfalls geplant und leicht implementierbar.
Ein Koop-Mode wäre etwas für einen weiteren Spielmodus, aber erstmal schau' ich dass das Spiel zumindest mal halbwegs Spielbar wird.
Morgen werde ich das ganze ein wenig umstrukturieren, evtl ein wenig an der Kollision arbeiten, jedoch keine Pixelgenaue Kollisionsabfrage einbauen.
Dannach wende ich mich der GUI und dem Partikelsystem zu.
Das Spiel läuft normal im Vollbildmodus und übernimmt die aktuelle Auflösung, evtl. werde ich auch einen Fenstermodus implementieren, aber da die Steuerung per Maus funktioniert könne das etwas störend werden.
Da ich auch mehreren Monitoren arbeite habe ich das ganze auch direkt Multimonitorfähig gestaltet, womit die Maus im Spiel gehalten wird.
Trotzdem kann die Maus per Tastenkombination wieder frei bewegt werden, und auch wenn eine andere Anwendung den Fokus erhält bleibt das Spiel sichtbar.
So, das wärs im großen und ganzen...
Würde mich über jede Art von Kommentaren freuen.
Screenshot:
Kleines DX Objekt, bewegbar, zoombar...
Texturen die momentan im Spiel verwendet werden:
Das Spieler Schiff. Demnächst etwas schöner und mit Animationen
Die momentan als Gegner missbrauchten Partikel
Hässlich, aber im Spiel erträglich zum anschaun... die "Antriebsdüse"
Und der Laser.. woho, viel zu erkennen
Projekt Videos:
Kurzes und einfaches Video vom aktuellen Zustand des projekts:
boolean.t34.at/sandkasten/vbnet_dx/samplevideo.rar Gepackt 9.53MB, entpackt 58,3MB, .avt (scheinbar funktionierts nicht bei jedem, VLC empfohlen)
NEU!
Video gibts jetzt auch auf YouTube. Qualität ist zwar nicht so hoch, aber man erkennt trotzdem genug
youtube.com/watch?v=rdeR0UZwhV0
Verwendete Programmiersprache:
Visual Basic 2008
Systemanforderungen:
.NET Framework 2.0
Download:
bitte lesen
Lizenz:
Freeware / evtl später Open Source
---
Na wo bleibt den jetzt eine Kopie vom Game?
// Edit 27.06: Titel angepasst
Simple DX Game
Beschreibung:
Hier möchte ich eine Art interaktives Tagebuch zur Entwicklung bzw zu Tests mit DX und VB.Net schreiben,
und gleichzeitig ein letztes mal versuchen ein wenig Feedback von der Community hier zu bekommen
Das ganze ist hier (im Offtopic) zu finden da es nicht ganz zum Showroom passt, da es
1.) ja noch nicht fertig ist
2.) ich auch einzelschritte evtl (bei interesse) zum download anbieten werde
3.) und vielleicht auch ein wenig Diskussion um den Code drum herrum sein soll
4.) und natürlich will ich eine kleine Dokumentation dazu..
Das ist das erste mal das ich in VB.Net ein Spiel erstelle, daher wird es auch nichts besonderes.
Das Konzept steht, werde ich aber nicht im vollen Umfang hier posten da ich es wohl auf mehrere Beiträge aufteilen müsste, und das wär dann doch zu viel.
Im groben wird es ein altes Arcade Spiel werden, ein wenig von Space Invaders und ein wenig von anderen Spielen des Genres.
Ich versuche hier nichts neues zu produzieren, nur etwas halbwegs akzeptables in VB umzusetzten.
VB ist keien Sprache die ich für solch ein Spiel nehmen würde, daher hat es doch wieder einen gewissen Reiz da mal etwas zu versuchen
Angefangen hat das ganze heute mit einem kleinen Tutorial und Beispielcode..
Quelle: entfernt
Zum testen dann gleich mal die Grundlegenden Funktionen die man braucht, bewegen, zoomen.
Drehen kann mans nicht, aber das war vorerst nicht von interesse.
Nach 1er Minute war das ganze auch implementiert, mit dem Mausrad kann man zoomen, hält man eine Maustaste und bewegt die Maus, so kann man das Objekt verschieben.
entfernt
So weit so gut.
Aber es soll ja kein einfaches herrumbewegen von irgendwelchen Objekten werden, sondern ein interaktives Spiel.
Schritt 2 war dann mal das verwenden von einfachen Bildern, das ging ja fast zu einfach.
Dann noch ein wenig mehr Bewegung rein, einfache Steuerung...
Auch so weit fertig.
(Ich bevorzuge Minigames bei denen man NUR Maus ODER Tastatur benötigt).
Spiel ist komplett mit Maus steuerbar...
Bewegt man die Maus, bewegt sich das "Schiff".
Linke Maustaste feuert einen einfachen Schuss ab. (1*)
Rechte Maustaste (halten) erzeugt ein Dauerfeuer. (1*)
Mit dem Mausrad kann man beschleunigen und bremsen.
(1*): Das Schiff benötigt Energie um einen Schuss abzufeuern. Energie regeneriert sich von alleine, Dauerfeuer kostet mehr Energie als ein normaler Schuss.
Kollisionsabfrage ist auch schon drin, "Gegner" werden auch schon unendlich viele unterstützt.
Tja wenn ich nochmal darüber nachdenke während ich so schreibe wird das fast überflüssig.
ich wollte ja eine Art "History" machen, und einmal am Tag oder vllt alle 2 Tage was machen und was schreiben, aber jetzt ist in den ersten 10 Stunden schon das wichtigste fertig...
Naja trotzdem noch viel zu machen
Die Kollision ist momentan simpel per Rect gelöst, ich denke eine pixelgenaue Abfrage werde ich auch nicht einbauen, da das Spiel auch auf langsameren PCs gut laufen soll, und auch mal mehr Gegner unterwegs sien sollen.
Die aktuellen gegner sind wohl eher Tontauben, aber zum Testen reichen sie aus.
Für die Gegner hab' ich eine einfache textur genommen die ich später einmal für Pratikeleffekte nutzen werde.
Momentan kann man also mit dem Schiff frei fliegen, die Geschwindigkeit ändern und Laser abfeuern.
Fliegt man schneller so verhält sich der Hintergrund korrekt, und die Schüsse (die ja konstant fliegen) entfernen sich somit langsamer vom Schiff.
Das Schiff ist momentan eine hässliche Zeichnung, wird jedoch noch verbessert und auch Animationen erhalten sollte der User nach Links/Rechts fliegen.
Eine Kollisionsabfrage von Schiff zu Laser bzw "Gegner" ist noch nicht implementiert, zuerst werde ich das ganze etwas umstrukturieren und das ganze als eine Art 2D Engine entwickeln, anstatt einfach das Spiel zu schreiben. Das spart später mal auch viel Arbeit, sollte ich doch irgendwann mal wieder ein DX Game in Vb erstellen.
Im übrigen wird auch Kollision von Schiff/Spieler Laser geben, sollte man mit Maximalgeschwindigkeit in die eigenen Schüsse fliegen, so bekommt man Schaden.
Powerups sind ebenfalls geplant.
Hintergrundmusik ist bereits implementiert, Geräusche für den Laser ebenfalls.
Explosionsanimationen und Geräusche sowie Pratikeleffekte werden noch hinzugefügt.
Die Antriebsanimation ist ebenfalls nur vorrübergehend, da werd ich entweder etwas schöneres machen, oder auch Partikel verwenden.
Bisher ist das Spiel komplett 2D, für die Zukunft habe ich jedoch geplant auch 3D Objekte einzusetzten, sobald ich welche erstellen kann, oder brauchbare finde
Auch wenn ich 3D Objekte verwenden werde, wird sich das Spiel nur auf 2 Achsen abspielen, wüsste moentan keine gute Möglichkeit die 3. bei der aktuell vergebenen Steuerung einzubauen, und von einer Egoperspektive halte ich bei dieser Art von Spiel nichts.
Ziel des Spiels wird es natürlich sein so viel Punkte wie möglich zu machen.
Ein Updater dafür ist so gut wie fertig, Onlinehighscore ist ebenfalls geplant und leicht implementierbar.
Ein Koop-Mode wäre etwas für einen weiteren Spielmodus, aber erstmal schau' ich dass das Spiel zumindest mal halbwegs Spielbar wird.
Morgen werde ich das ganze ein wenig umstrukturieren, evtl ein wenig an der Kollision arbeiten, jedoch keine Pixelgenaue Kollisionsabfrage einbauen.
Dannach wende ich mich der GUI und dem Partikelsystem zu.
Das Spiel läuft normal im Vollbildmodus und übernimmt die aktuelle Auflösung, evtl. werde ich auch einen Fenstermodus implementieren, aber da die Steuerung per Maus funktioniert könne das etwas störend werden.
Da ich auch mehreren Monitoren arbeite habe ich das ganze auch direkt Multimonitorfähig gestaltet, womit die Maus im Spiel gehalten wird.
Trotzdem kann die Maus per Tastenkombination wieder frei bewegt werden, und auch wenn eine andere Anwendung den Fokus erhält bleibt das Spiel sichtbar.
So, das wärs im großen und ganzen...
Würde mich über jede Art von Kommentaren freuen.
Screenshot:
Kleines DX Objekt, bewegbar, zoombar...
Texturen die momentan im Spiel verwendet werden:
Das Spieler Schiff. Demnächst etwas schöner und mit Animationen
Die momentan als Gegner missbrauchten Partikel
Hässlich, aber im Spiel erträglich zum anschaun... die "Antriebsdüse"
Und der Laser.. woho, viel zu erkennen
Projekt Videos:
Kurzes und einfaches Video vom aktuellen Zustand des projekts:
boolean.t34.at/sandkasten/vbnet_dx/samplevideo.rar Gepackt 9.53MB, entpackt 58,3MB, .avt (scheinbar funktionierts nicht bei jedem, VLC empfohlen)
NEU!
Video gibts jetzt auch auf YouTube. Qualität ist zwar nicht so hoch, aber man erkennt trotzdem genug
youtube.com/watch?v=rdeR0UZwhV0
Verwendete Programmiersprache:
Visual Basic 2008
Systemanforderungen:
.NET Framework 2.0
Download:
bitte lesen
Lizenz:
Freeware / evtl später Open Source
---
Na wo bleibt den jetzt eine Kopie vom Game?
// Edit 27.06: Titel angepasst
Dieser Beitrag wurde bereits 8 mal editiert, zuletzt von „Boolean“ ()