Space Fighter

Kommentare anzeigen Worklog abonnieren

Worklogs Space Fighter

Ein (fast) fertiger Survivalmodus... und ein kleiner Bug

Dienstag, 17. Mai 2011 von M0rgenstern
Hallöchen ihr lieben Leser.

Ich habe gute Neuigkeiten zu verkünden: Der Survivalmodus ist fertig (fast). Der Highscore ist implementiert und animiert. Das Shopsystem ist implementiert, integriert und funktionstüchtig.

Zu letzterem muss ich vielleicht ein paar Worte sagen:
Bevor ich angefangen habe, das Shopsystem zu programmieren habe ich mir Gedanken darüber gemacht, wie ich es am besten implementiere, so, dass ich es im Storymodus möglichst einfach wieder verwenden kann. Die Lösung ist simpel: Es gibt eine Shopklasse und für jeden vorhandenen Shop eine Instanz dieser Klasse. Da einige Shops im Storymodus unterschiedliche Waren auf Lager haben sollen, wird jedem Shop ein Dateipfad mitgegeben, in welchem drinsteht, welche Waffen und Schiffe in dem Shop vorhanden sind und welche nicht. Die entsprechenden Schiffe/Waffen werden dann in die zugehörige Stock-Listen geladen und dort verwaltet.
Momentan fehlt noch eine kurze Rückmeldung des Spiels, wenn man eine Waffe oder ein Schiff gekauft hat, aber das mache ich morgen, heute bin ich zu müde. Bin froh, dass es wenigstens läuft.
Achja: Die gekaufte Ware verschwindet aus der Stock-Liste des Shops. Momentan kann man jedes Schiff nur einmal kaufen, jede Waffe aber pro Schiff 1-mal.
Und da Bilder mehr als tausend Worte sagen:
user posted image

Hier ist noch ein Bild vom Highscore:
user posted image

Achja, es gibt übrigens noch eine ganz entscheidende Änderung:
faeX hat mich im ICQ davon überzeugt, dass das Spiel ein besseres Spielgefühl vermittelt, wenn man sich auch nach oben/unten bewegen kann. Ich habs dann mal ausgetestet, und: Er hat Recht. Also: Man kann sich jetzt in alle Richtungen bewegen, was übrigens auch für das Teleportieren gilt. Jedoch ist in der Mitte des Bildschirms auf der Y-Achse Schluss. (Danke faeX, nochmal)

Der kleine Bug von dem ich in der Überschrift geschrieben habe bezieht sich auf die Spezialfähigkeit "Schild": Sie wird alle 60 millisekunden geupdated, also es wird alle 60 Millisekunden überprüft, ob der Spieler Energie verloren hat, und wenn ja, dann wird sie einfach wieder aufgefüllt. Wenn der Spieler aber innerhalb dieser 60 Millisekunden so viel Energie verliert, dass er keine mehr hat, so ist die Mission verloren, da die Spezialfähigkeit zu spät geupdated wird. Der bug ist ärgerlich, aber durch das abändern von 1 bis 2 Zahlen zu lösen. Habe ich jetzt vorm Upload aber leider nicht mehr dran gedacht.

Die Grafiken sind immernoch alle (bis auf die Buttons) nicht von mir, werden aber auf jeden Fall (irgendwann) noch ersetzt. Die Buttons passen optisch auch nicht ins Spiel. Das kommt daher, dass ich die aus einem anderen Projekt von mir übernommen habe, sie werden aber auch noch geändert.

Euch mag es momentan wahrscheinlich so vorkommen, als sei der Survivalmodus absolut unfertig, dadie beiden anderen versprochenen Missionsarten noch fehlen und vor allem die Schiffstypen und Waffen nicht sehr zahlreich sind. Dazu kann ich nur sagen: Die Missionsarten werden in 2 bis 3 Tagen folgen, so dass die Missionen etwas abwechslungsreicher sind (so abwechslungsreich wies im Survivalmodus geht).
Die Schiffs- und Waffentypen sind noch so wenige, da ich mir über mehr noch keine Gedanken gemacht habe. Das ist aber relativ unproblematisch, da das Hinzufügen davon jweils 1 bis 2 Minuten beansprucht. Mit der Zeit werden also immer mehr verschiedene Schiffe und Waffen folgen.


Jetzt hab ich aber mal wieder genug geschrieben.
Hier ist der Downloadlink: https://www.blitzforum.de/upload/file.php?id=10615

Bitte schreib in die Kommentare was ihr bis jetzt von dem ganzen haltet, was ihr euch noch wünscht (z.B. Schiffstypen, Waffentypen, Spezialfähigkeiten etc.) oder wo euch Fehler/Probleme aufgefallen sind.

Lg, M0rgenstern

Erste Fortschritte

Samstag, 14. Mai 2011 von M0rgenstern
Langsam kann ich erste Erfolge verzeichnen:
Meine dynamisch angelegten Schiffe, Waffen und Gegner funktionieren wunderbar. In einer Datei ein, zwei Werte geändert und das Verhalten der Waffe ändert sich total.
Ein Script hinzugefügt und es gibt eine Art von Gegnern, die sich total anders bewegt.
Es macht richtig Freude das zu sehen.

Doch auch Spieltechnisch sind Fortschritte zu sehen:
Der Survivalmodus ist fast fertig. Der Highscore ist noch nicht implementiert und das Shopsystem fehlt auch noch komplett. Achja, außerdem wird es im Survivalmodus 3 verschiedene Missionsarten geben, also fehlen auch noch 2 Missionsarten (die sind schon implementiert, aber noch auskommentiert, da das Überprüfen auf Erfolg nur bei einer besteht).
In den nächsten Tagen werde ich also das Shopsystem einbauen und den Highscore. Dann ist der Survivalmodus fertig.

Hier ist ein Screen:
user posted image

Und hier gibt es das ganze zum Download:
https://www.blitzforum.de/upload/file.php?id=10609

Viel Spaß damit (*HUST*)

Lg, M0rgenstern

Das Spielkonzept und weitere Erläuterungen

Donnerstag, 12. Mai 2011 von M0rgenstern
Hallo ihr da draußen.
Dieser Worklogeintrag soll sich voll und ganz mit dem Spielkonzept und meinen Ideen zum Spiel befassen.
Dies hat folgende Gründe:
1. Wurden im Worklog Fragen zum Spielkonzept, den Missionen etc. gestellt. Diese Fragen zu beantworten erfordert jedoch genug Text, um einen Worklog Eintrag daraus zu machen.
2. Habe ich mir über einige Dinge NACH der letzten Prüfung genauer Gedanken machen können als davor, so dass ich einen Tag später mit meinen Überlegungen weiter bin als noch gestern und daher noch mehr dazu sagen kann.

Also, los gehts:
Das Spiel selbst soll ein Vertical Shooter werden, das heißt, man wird den Eindruck haben "nach oben" zu fliegen, obwohl man sich auf der y-Achse nicht bewegen kann. Vom Spielgefühl im Kampf möchte ich es ungefähr halten wie in einigen Retro Spielen: Die Gegner können von überall herkommen, fliegen aber ein vorgegebenes Muster, so dass die Schwierigkeit sich einigermaßen in Grenzen halten sollte. Keine Angst, die Gegner fliegen nicht alle das gleiche Muster, sondern unterschiedliche. Um ein wenig deutlicher zu machen, was genau ich meine, könnt ihr euch folgende Bilder anschauen:
http://actualdownload.com/pict...s-1809.jpg
http://actualdownload.com/pict...-12992.jpg

Das Spielkonzept selbst soll ein Weltraumshooter mit RPG Elementen sein.
Das ganze ist momentan so geplant: Zu Beginn des Spiels wird man nur ein Schiff zur Auswahl haben, also, man wird einfach ein Schiff zur Verfügung gestellt bekommen. Wenn man dann nach ein paar Missionen genug Geld hat, dann stehen andere Schiffe zur Auswahl, von denen man sich eines kaufen kann. Die Schiffe unterscheiden sich jedoch nicht nur optisch, sondern: Jedes Schiff hat unterschiedliche Werte. So gibt es Schiffe, die relativ schnell sind, dafür aber nicht viel Schaden einstecken können o.ä.. Außerdem hat jedes Schiff zu Beginn eine andere Waffe eingebaut. Die Waffe kann man im Laufe des Spiels upgraden oder einfach eine andere Waffe kaufen und dadurch die alte ersetzen.
Das wichtigste Spielelement das die Schiffe betrifft ist jedoch folgendes: Jedes Schiff hat jeweils zwei Fähigkeiten, die man während einer Mission einsetzen kann. Jedes Schiff hat aber seine ganz eigenen Fähigkeiten, so dass man während dem Kampf unterschiedliche Möglichkeiten zur Reaktion hat. So kann sich das erste Schiff das man besitzt zum Beispiel aus der Gefahrenzone teleportieren. Die Fähigkeiten lassen sich auch nicht ändern, sondern sind an das jeweilige Schiff gebunden. Natürlich ist der Einsatz dieser Fähigkeiten nicht uneingeschränkt: Jedes Schiff hat einen gewissen Energievorrat. Wenn eine Fähigkeit aktiviert wird, so verbraucht sie eine bestimmte Menge Energie. Wenn das Schiff zu wenig Energie hat, so kann die Fähigkeit nicht aktiviert werden oder wird deaktiviert. Die Energie lädt sich mit der Zeit wieder auf.
Upgraden wird man die Fähigkeiten auch können: Man kann den Energievorrat oder die Ladegeschwindigkeit für die Energie verbessern oder das Zeitintervall, das zwischen zwei Einsätzen der Fahigkeit liegt, verkürzen.


Das Spiel selbst wird verschiedene Modi haben: Es wird einen reinen Survivalmodus geben, in dem man einfach Level nach Level abfliegt, nur mit dem Ziel den Highscore zu knacken. Zwischen jedem Level hat man dann die Möglichkeit sein Schiff zu upgraden. Hier wird man aber zu Beginn mehrere Schiffstypen zur Auswahl haben und das Schiff dann auch nicht mehr wechseln können. Mehr Schiffstypen werden sich dann entweder durch einen höheren Highscore oder durch Fortschritt im Hauptspiel freischalten lassen.
Ich spiele auch mit dem Gedanken, hier einen Coop Modus zu erstellen, indem man dann einfach mit einem Freund an einem PC Gegnerhorden bezwingen darf.

Das eigentliche Spiel soll sich aber um die Geschichte drehen. Ob es ein Storymodus geben wird, mit einem absehbaren Ende ist noch nicht ganz klar, da ich nicht weiß, was mehr Spaß macht: Ein endlos Spiel mit Missionen oder zu wissen, dass man ein Ende erreichen kann (da könnt ihr mir ja eure Meinung zu sagen).
Auf jedenfall wird die Geschichte, die ich im 1. WL-Eintrag angedeutet habe eine wichtige Rolle spielen. Zu Beginn wird es Einführungsmissionen geben, die die Grundlegende Steuerung erklären und dem Spieler die Schiffsfähigkeiten näher bringen. Die Missionen werden großteils vorgefertigt sein, da ich sie relativ abwechslungsreich gestalten möchte, soweit das bei einem Spaceshooter möglich ist: Mal wird man einfach nur von Punkt a nach B fliegen müssen, ein anderes Mal ein Schiff eskortieren müssen und dieses entsprechend beschützen müssen. Ein anderes mal muss man bestimmte Gegnertypen gezielt ausschalten usw. Es wird auch ein paar Missionen geben, die ein wenig ungewähnlich anmuten (ich habe da schon ein paar Ideen).
Außerdem soll es automatisch generierte Missionen geben, die jedoch alle relativ ähnliche Ziele haben werden. Diese sind dann überwiegend dazu da um die Anzahl der Missionen ein wenig hoch zu treiben.
Handel wird man nicht treiben können, jedenfalls nicht auf sehr komplexe Art und Weise. Es wird ein Shopsystem geben und nach jeder Mission hat man die Möglichkeit den Shop zu nutzen. Das Shopangebot wird jedoch variieren, abhängig davon, wo man sich momentan befindet. Manche Planeten verkaufen stärkere Waffen, andere die bessern Waffenupgrades etc. Damit ist auch die Möglichkeit gegeben, Spezialwaffen einzuführen, die nur an bestimmten Orten zu finden sein werden. An diese Orte kommt man halt nur durch (wahrscheinlich relativ schwierige) bestimmte Missionen.

Das war jetzt eine Menge Text. Ich weiß nicht, ob sich das jemand durchlesen wird, aber wen es interessiert, der sie herzlich dazu eingeladen und der sei auch herzlich dazu eingeladen seine Meinung abzugeben.

Eine kleine technische Ankündigung hätte ich aber noch:
Die Waffen sind jetzt (bis auf 1 bzw 2 Baustellen) funktionstüchtig und eingebaut. Ich bin zuversichtlich am Freitag, dem 13. eine Demo des Survivalmodus uploaden zu können. Bin dann mal auf die Meinungen hier sehr gespannt.

Liebe Grüße, und Gute Nacht (denen die jetzt schon schlafen),
M0rgenstern

Eine neue Ära... Die Anfänge eben

Dienstag, 10. Mai 2011 von M0rgenstern
Die Menschheit im Jahre 3000... (boah schon wieder ein Sci-Fi Spiel, und die Menschheit hat auch noch überlebt...).
Nochmal von vorne:
Die Menschheit im Jahre 3000 ist grausam, verachtenswert.
Sie besteht nur noch aus versprengten Splittergruppen, die auf die verschiedensten Planeten und Sonnensysteme verteilt sind. Die meisten von ihnen sind grausame Piraten, die nur darauf warten Schiffe zu überfallen und zu plündern. Der Rest, der diesem Lebensstyl nicht nachgeht, ist ein Haufen religiöser Fanatiker, die sich auf einem Planeten gesammelt haben und dort eigentlich nur auf das Ende des Universums warten.
Es ist schwer für eine, wie sie die Menschen nennen, "außerirdische" (was witzig ist, da es die Erde lange nicht mehr gibt) Spezies Handel zu treiben oder sich von einem Planetensystem zu einem anderen zu bewegen.
Deshalb gibt es Leute wie DICH. Speziell ausgebildete Kampfflieger, dazu ausgebildet Botschaften zu übermitteln oder wichtige Frachten zu eskortieren.
Nimm Aufträge an um Geld zu verdienen, um dein Schiff damit verbessern zu können, um dann weitere Aufträge anzunehmen.
Viel Spaß.
Ach übrigens: Man stirbt nur einmal im Leben.

So sieht die Hintergrundgeschichte zu meinem neuen Projekt "Space Fighter" ungefähr aus. Ich feile während ich programmiere noch daran, aber die Fakten stehen: Man kämpft als "außerirdischer" Pilot gegen die Menschen.
Wie genau sich das mit den Aufträgen gestalten wird, steht noch nicht fest, ich überlege jedoch das ganze frei wählbar zu gestalten, basierend auf einem Erfahrungspunktesystem.

Allzuviel steht von dem Spiel selbst noch nicht, da einiges an Vorarbeit zu leisten war:
Ich habe zwar das Grundgerüst, mit dem ich vor längerer Zeit schon begonnen hatte (Grafikverwaltung, GUI etc.) soweit fertig gehabt bisher, jedoch mussten noch andere Dinge gemacht werden: Die Schiffstypen werden alle dynamisch geladen, so dass das ganze beliebig erweiterbar ist. Ich habe eine kleine (minimale) Scriptsprache für die Bewegung der Gegner geschrieben, die jedoch, gemessen an den benötigten Anforderungen, relativ gut zu erweitern ist.
Theoretisch ist es auch schon möglich, dass der Spieler seine Steuerung selbst belegt, es ist nur noch nicht benutzerfreundlich, also grafisch, implementiert.

Es gibt eine Sache, die relativ viel Zeit gekostet hat, bevor ich überhaupt angefangen habe sie zu programmieren: Die Schiffsfähigkeiten. Ich war mir am Anfang nicht ganz sicher, wie ich dieses System implementieren sollte, denn die Schnittstelle zwischen Schiff und Fähigkeit sollte relativ minimalistisch gehalten werden.
Dieses System ist auch eins der Hauptaugenmerkmale des Spiels: Jedes Schiff hat von Beginn an zwei Fähigkeiten. Die eine wird aktiviert, indem man eine Richtungstaste und die STRG Taste betätigt. Die andere, indem nur die STRG Taste betätigt wird. Letztere ist eine Fähigkeit, die einen gewissen Zeitraum anhält, oder bis der Spieler sie wieder beendet. Erstere ist eher eine Fähigkeit, die nur einen kurzen Moment wirksam ist.
Als Beispiel: Das Standardschiff hat folgende Fähigkeiten: Teleport und Schild. Mit dem Teleport (STRG+Richtung) kann man sich über eine kurze Distanz in eine bestimmte Richtung teleportieren.
Mit dem Schild kann man über einen gewissen Zeitraum ein Schutzschild um das Schiff aufbauen, so dass es in dieser Zeit keinen Schaden nimmt.
Jedes Schiff hat seine eigenen Fähigkeiten, die man indirekt upgraden kann.
Indirekt bedeutet: Der Einsatz der Fähigkeiten verbraucht Energie. Diese lädt sich, wenn eine Zeit lang keine Fähigkeit eingesetzt wurde, langsam wieder auf. Man kann die maximale Energie upgraden, oder auch die Geschwindigkeit mit der sie aufgeladen wird.
Ob man auch die Fähigkeiten selbst upgraden kann, weiß ich noch nicht genau, ich tendiere aber zu nein.

Bevor noch ein wenig Text ansteht, möchte ich euch ein paar Bilder präsentieren, vom momentanen Entwicklungsstand.
Das Bild hier zeigt das Programm, mit dem man sich alle Schiffe im Spiel angucken kann:
user posted image

Dieses Bild ist ein Screen aus dem aktuellen Spiel:
user posted image
Der Stern der neben dem Schiff zu sehen ist, kommt daher, dass das Bild in dem Moment aufgenommen wurde, als die Teleport Fähigkeit aktiviert wurde. Das ist sozusagen die zugehörige Animation.
Die Linie in der Mitte wird momentan nur gezeichnet, damit ich eine Orientierung habe bei verschiedenen Dingen.
Die Grafiken sind momentan noch nicht selbst gezeichnet, das kommt alles noch, wenn das Spiel weit genug fortgeschritten ist.

Zuletzt möchte ich noch einen Ausblick darauf geben, was noch kommen wird, und was davon mit welcher Priorität bearbeitet wird.
niedrigste Priorität
mittlere Priorität
höchste Priorität

- Implementierung von Schiffswaffen (mit der gleichen Dynamik wie auch die Schiffe sie besitzen)
- Implementierung eines Survival-Modus mit Highscore (damit es auch etwas wirklich spielbares gibt)
- Implementierung verschiedener Gegnertypen


- Scripten verschiedener Gegner-Bewegungsmuster
- Bewegte Hintergründe / Umgebung
- Hinzufügen von Schiffstypen
- Grafische Oberfläche
- Scriptsprache etc. für Missionen


- Missionen erstellen
- Partikeleffekte
- Speichern des Missionsfortschritts
- Ausbau der Story


Das ist jetzt sehr viel Text, aber für einen ersten Worklogeintrag denke ich ist das schon in Ordnung.
Über Kritik, Fragen und Anregungen freue ich mich sehr.

Lg, M0rgenstern