Starfare

Kommentare anzeigen Worklog abonnieren
Gehe zu Seite Zurück  1, 2, 3

Worklogs Starfare

The long road to beta

Montag, 17. August 2009 von ZaP
Seit dem letzten WL habe ich mich an die Arbeit gemacht, die ToDo Liste abzuarbeiten: Einheiten und ihre Waffen können nun Animationen abspielen (allerdings haben sie in den seltensten Fällen eine, geschweige denn eine fertige). Außerdem werden Einheiten nach dem Bau zufällig auf der Y-Achse in einem bestimmten Höhenbereich platziert, um ein Wegsuch-System zu umgehen:

user posted image

Dummerweise tun sich dadurch neue Probleme auf: Die Minimap wird dadurch ungenau, weil sie ja eigentlich das Spielfeld von oben gesehen zeigt, die Kamera aber schräg in der Luft hängt. Einheiten, die direkt über- oder untereinander schweben, müssen ihre Waffen verdrehen, so dass sie teilweise ins Raumschiff selbst hineingerichtet sind.

Das Interface wurde auch überarbeitet, und zeigt nun alle aktivierten Einheiten zusammengefasst an:

user posted image

Weiterhin hat Cireva einen ganzen Haufen neuer Modelle erstellt, die hier gezeigt werden, wenn sie Texturiert worden sind, was derzeit meine Aufgabe ist.

Das ist allerdings erst ein kleiner Teil der ToDo Liste. Wenn sie fertig abgearbeitet ist, gibts die Beta. Bis dahin hoffe ich habt ihr Spaß beim Lesen der Starfare Worklogs.

Unbenannt.wl

Mittwoch, 5. August 2009 von ZaP
Nachdem die Alpha Version erstaunlich gut angekommen ist (nochmals Dankeschön an alle Tester und Feedbacks), haben sich vanjolo und cireva hier aus dem Forum dazu bereit erklärt, mir bei dem Spiel unter die Arme zu greifen. Inzwischen ist vanjolo wieder ausgestiegen, ich bin aber dennoch dankbar für seine Modelle.
Während der Teamarbeit haben wir den Spielhintergrund etwas ausgebaut: Es wird vier Fraktionen (menschlicher herkunft) geben, zwischen denen der Spieler wählen kann. Diese Unterscheiden sich durch Spezialeinheiten und Gebäude. Hier ein Auszug aus dem (inwzischen ungenutzten) Wiki:

Code: [AUSKLAPPEN]

Asiatische Konföderation

    * Charakter: Objektiv (Scout)
    * Spezialeinheit: Eine getarnte Einheit, die andere kleine bis mittlere Einheiten in der Umgebung ebenfalls tarnt (Effekt wird beim Feuern aufgehoben)

Afrikanisches Konkordat

    * Charakter: Unterstützend (Supporter)
    * Spezialeinheit: Eine mobile Reparatureinheit, welche eigene und verbündete Einheiten heilt


Eurasische Union

    * Charakter: Defensiv
    * Spezialeinheit: Kraftfeld erzeugende Generatoren ("Lasermauern")


West Allianz

    * Charakter: Aggressiv
    * Spezialeinheit: Eine starke Offensiveinheit


Außerdem wurden ein paar neue totbringende Waffen eingeführt, und auch die Möglichkeit einer mehrläufigen Waffe. Weiterhin gab es einige kleinere Fixes, z.B. an der Minimap. Und schließlich noch ein Auszug aus dem ToDo:

Code: [AUSKLAPPEN]

;   TODO:    - interface summarizes activated units
;         - unit collision
;         - fog of war
;         - different asteroid types / two resources
;         - probes can scan asteroids to see the amount of resoruces
;         - enable animations (pt. done)
;         - new building progress indicator


Release: Alpha 1

Sonntag, 26. Juli 2009 von ZaP
Und gleich was Spielbares hinterher: Starfare Alpha 1 (4.73 MB)

Es ist also vollbracht, die Alpha ist da. Wer ein vollwertiges Spiel erwartet, den muss ich leider enttäuschen (das sollte ihn aber nicht daran hindern, Starfare trotzdem auszuprobieren), denn es gibt außer dem Spiel selbst nichts, also kein Hauptmenü, oder ähnliches. Allerdings liegt eine ausführliche (deutsche) Readme dabei, welche sehr gut erklärt, wie man das Spiel auch ohne Hauptmenü konfigurieren kann. Starfare selbst ist komplett auf Englisch.
Und nun, viel Spaß, bugs in die Kommentare, Don't startle the witch! Wink

Gameplay Video

Mittwoch, 8. Juli 2009 von ZaP
So, wie versprochen: Ein Video.
Kurz noch, was geändert wurde:

- Die Weltraumsternentextur wurde verfeinert
- Das Interface wurde (ein bisschen) ausgebaut
- Es wurden ein paar Explosionseffekte eingefügt

Noch eine kurze Anmerkung zum Video: Die Qualität ist leider nicht so, dass man allzu viel erkennt, aber ich wollte den nächsten WL-Einträg ohnehin erst schreiben, wenn das Interface komplett ist. Von daher müssen sich alle, die an den grafischen Details interessiert sind, leider noch etwas gedulden.

Vielen Dank an alle Leser.

Was Spielbares...

Sonntag, 21. Juni 2009 von ZaP
...gibt es zwar noch nicht, aber ich bin in der Entwicklung sehr viel weiter gekommen. Fast alle Einheiten haben jetzt die Farbe des jeweiligen Spielers. Außerdem bewegen sich die Einheiten nichtmehr ruckartig über das Schlachtfeld, sondern beschleunigen, drehen sich ganz geschmeidig und bremsen kurz vor ihrem Ziel leicht ab.
Die meisten Meshes haben jetzt auch eine Textur, so dass das ganze schon recht fertig aussieht. Allerdings fehlen dann doch noch ein paar gut gewählte Sounds, das Interface besteht bisher immernoch nur aus der Minimap, ein paar hübsche Explosionseffekte und die KI ist auch nicht weiter gekommen. Die KI wollte ich mir sowieso als DFA modellieren, bzw. es versuchen.
Inzwischen habe ich mir auch einen Titel für das Spiel einfallen lassen: Starfare (auf Deutsch etwa Sternenreise)
Zum Schluss noch ein Screenshot vom aktuellen Stand und das Versprechen, bald etwas bewegtes sehen zu können:

user posted image

Btw, die Farben werder nach wie vor zufällig gewählt (sowohl im Hintergrund, als auch die von den Spielern)

Bis zum nächsten Mal, und danke für's Lesen Wink

RC in Sicht

Dienstag, 5. Mai 2009 von ZaP
Sodele, mich hat der Fade Hintergrund sehr gestört, drum habe ich die Skybox überarbeitet (völligst unwichtig, aber irgendwann hätte ich das eh tun sollen), wobei die Farbe zufällsgeneriert ist und ausserdem eine Minimap (oder besser einen Ansatz, denn für's Interface hab ich noch kein Konzept) eingebaut:

user posted image

Das sieht richtig schick beim Scrollen aus Very Happy

Weiterhin wurden noch einige kleinere Sachen gefixt, die ich am Anfang der Entwicklung übergangen hatte.
Rausgenommen wurden die Healthbars bei den Einheiten, die paar Rects und Cameraprojects haben die ganze Performance verschnabuliert...
Folgen werden noch die unten genannten KI Actiontickets, und vielleicht noch ein bisschen was am Interface, danach gibts was Spielbares. Und wenn nicht, dann halt ein Video Wink

KI's im Ring

Sonntag, 26. April 2009 von ZaP
Arg... diese KI's sind schon eine tolle Sache. Hat mir bis jetzt am meisten Spaß gemacht daran zu arbeiten. Die KI Spieler tun eigentlich noch nicht wesentlich mehr als im letzten WL Eintrag, allerdings habe ich sie im Bezug auf die Rechenzeit optimieren müssen.
Und nun erstmal etwas kurioses: Ich habe zu Testzwecken zwei KI Spieler gegeneinander antreten lassen, beide mit gleichvielen Resourcen. Beide KIs arbeiten absolut gleich (einige Parameter sind natürlich durch Zufall bestimmt) Es scheint aber immer die KI zu gewinnen, welche zuerst von BlitzBasic in den Speicher geladen wurde und das obwohl beide gleich bestimmt sind. Lediglich die Kämpfe zwischen Einheiten sind vom Zufall geprägt, da der Zeitabstand zwischen zwei Schüssen und der Schaden, den ein Projektil oder Laserstrahl verursacht leicht durch rand() variiert wird. Es könnte also auch ein Zufall sein, allerdings nach 10 Runden scheint das mir nun doch etwas zu kurios.

Weiterhin ist mir eine Möglichkeit eingefallen, die KIs auf bestimmte Stärken zu trimmen (easy, normal, hard, was man halt so kennt Wink ), neben dem maximalen Einheitenlimit und der bevorzugten Einheitenart. Ich habe mir ein Ticketsystem einfallen lassen, was auf einem Timer basiert. Jede KI (abhängig von ihrem Schwierigkeitsgrad) erhält Actiontickets, die sie z.b. zum Bau von Einheiten verwenden kann. Ich hoffe das bringt etwas Balance in die bisher für Menschen unbesiegbare KI.

Zum Performancetest: Wie ja bereits erwähnt, habe ich viel optimieren müssen, jedoch steigt die Framezeit mit mehr als 30 KIs an, wenn jede KI mehr als 4 Einheiten hat (getestet auf einem AMD64 mit 3000 mhz). Eigentlich schade, ich denke da muss ich mir noch mehr Optimierungsmöglichekiten einfallen lassen.

Huch....

Donnerstag, 16. April 2009 von ZaP
..ich sollte mir angewöhnen öfter mal WLs zu schreiben. Also es hat sich viel getan:

*Es gibt Kometen, die man mit einer Mine bestücken kann, welche zusätzliche Resourcen einbringt (pro Asteroid gibt kann eine Mine von nur einem Spieler gebaut werden, d.h. wer einen besetzten Asteroiden haben will, muss erstmal Remmidemmi machen Very Happy
Die Kometen haben die Eigenschaft sich abhängig von ihrer Anzahl von abbaubaren Resourcen unterschiedlich schnell übers Spielfeld zu bewegen. Ihre Größe hängt ebenfalls von ihren Resourcen ab:
Code: [AUSKLAPPEN]

   curse# = Rnd(360.0)
   size# = Sqr(Float(amount) / 2000.0)
   speed# = Float(amount) / 1000000.0



Hier ein Vergleich von einem Resourcenreichen und Resourcenarmen Asteroid (einer ist mit einer Mine bestückt...)

user posted image

* Eine neue Einheit, die Drone (Probe) hat die Aufgabe, Minen auf Asteroiden zu bauen. Sie ist billig, schnell gebaut, bewegt sich fix fort ist aber auch schnell wieder zerstört.

* Die KI (oder das bisschen was es bisher gab) wurde gelöscht und ein neuer Ansatz geschrieben. Mir ist auf gefallen, das so eine KI verdammt komplex ist, aber meine tut immerhin bisher ihre einfachsten Aufgaben auf primitive Weise:

- Dronen bauen (die später dann Asteroiden suchen und Minen errichten sollen, was jedoch noch nicht implementiert ist...) Die KI wird immer Dronen bauen, wenn sie keine mehr hat, oder zuwenige hat.

- Kampfeinheiten bauen, wenn Resourcen übrig sind (und das sind öfters mal welche)

- Einen zufällig auserwählten Feind angreifen, mit einer steigenden Anzahl von Einheiten.


Hatte ich eigentlich erwähnt, dass man das Spiel mit bis zu 1024 Spielern spielen kann? Beizeiten werde ich mal testen, ob das ein Otto-normal PC mitmacht. Wink

//Edit: Ich bin noch auf der Suche nach einem Titel für das Spiel. Konzept und Setting sind ja bekannt, wär tol lwenn wem von euch was einfällt Very Happy

Teamshader & Spielkonzept

Freitag, 20. März 2009 von ZaP
Die Teamshader tun ihren Dienst, auch wenn ich das ganze etwas unprofessionell gelöst habe: Es handelt sich dabei um ein weiteres Mesh, welches die spezielle Textur hat und einfach eingefärbt wird.

user posted image

Ursprünglich wollte ich jedem Mesh eine Teamtextur verpassen und einfärben (die Textur), jedoch führte das dazu, dass jede andere Teamshader Textur ebenfalls eingefärbt wurde, ich glaube das erwähnte ich auch schon irgendwo anders in diesem wlog.

An anderer Stelle habe ich mir ein paar Gedanken über das Spielkonzept gemacht, und viel dabei folgendes ein: Jeder Spieler erhält jede Sekunde eine bestimmte Anzahl an Resourcen, diese Anzahl wird zufällig generiert, und es ist nicht viel. Zusätzliche Resourcen sind also der Schlüssel zum Sieg, diese können durch das einnehmen und errichten von Förderminen oder soetwas in der Richtung auf Asteroiden gewonnen werden. Die Asteroiden können sich jedoch über das Schlachtfeld bewegen und somit gefährlich nah am Feind vorbeisurren. Ich spiele ausserdem mit dem Gedanken, das jeder Spieler die Mögichkeit hat, die Flugbahn der Asteroiden zu beeinflussen. Ich bin gespannt wie sich das Spielt.

Das ist nicht der erste Eintrag

Sonntag, 15. März 2009 von ZaP
Ich hatte bereits an anderer Stelle auf meinen externen Worklog verwiesen, allerdings sehe ich keinen Grund, weshalb das weiterhin extern bleiben sollte.

Also, um es nochmal kurz zu sagen: Es handelt sich bei diesem Projekt um ein Echtzeit Strategiespiel, welches im Weltraum angesiedelt ist und zunächst recht einfach gehalten werden soll.

Der Link zum Devlog (und damit auch den voherigen Einträgen):
*klick*

Damit das ganze hier nicht ganz so langweilig wird, kopiere ich einfach mal die letzten Einträge hier hinein.



Teamshader
Sunday, March 15 2009

Nachdem ich einen den Performancetest durchgeführt hatte, field mir auf, dass es kaum ersichtlich ist, welche Einheit welchem Spieler gehört, oder kurzum: Die Einheiten brauchen farben. Realisieren wollte ich das ganze durch eine weitere Textur, die eingefärbt werden kann, und auf eine Einheit gelegt wird. An sich funktioniert das sogar, dummerweise ändert sich jede Teamshader textur, wenn ich eine andere einfärbe. D.h. wenn Einheit A einen grünen Teamshader verpasst bekommt, die KI eine Einheit B baut, welche einen gelben Teamshader haben soll, so wird der Teamshader von Einheit A auch gelb. Ich versuche das auf jeden Fall noch zu fixen...


Etwas Ordnung im Chaos & ein blutiges Gemetzel
Sunday, March 1 2009

Nun, nach einer größeren Pause, ging es schließlich weiter. Mir schwirrte ständig der Gedanke im Kopf herum, wie hässlich doch Units seien, die sich im selben Punkt sammeln und überlappen. Ich machte mich also daran, eine Routine zu schreiben, die die Einheiten kreisförmig um ihr Ziel anordnet. Allerdings funktionierte das eher schlecht als recht. Schließlich bin ich auf die Idee gekommen, die Units in Form eines Rechtecks anzuordnen:

user posted image

Anschließend hatte ich einen kleinen Performancetest durchgeführt, und alles war im grünen Bereich:

user posted image

Das war's erstmal, bis später.


Einheiten- & Waffenmanagement
Monday, February 9 2009

Obwohl scheinbar alle BB Spiele unbedingt eine "Scriptengine" benötigen, habe ich mich dazu entschlossen, eine solche nicht zu verwenden, auch wenn das Spiel die Eigenschaften der Einheiten der Waffen aus Dateien liest. Im Zusammenspiel sieht das ganze so aus:

user posted image

Auf dem Bild ist ein Sebac (Single Engine Battle Cruiser) zu sehen, welcher ein Angriffsmanöver durchführt. Alle Eigenschaften dieser Einheit (inkl. Mesh) werden in einer Datei festgehalten, mit einer überaus einfachen Syntax:
EIGENSCHAFT wert
In der Praxis sieht das so aus (hier als Beispiel der Sebac):

Code: [AUSKLAPPEN]
MESH sebac.3ds
SPEED 30, 100
WEAPON spc.txt, 0, 1, 1
WEAPON plasmalauncher.txt, 0, 1, -1
HEALTH 120


Der Sebac ist bisher die einzige fertige Einheit im Spiel. Er verfügt über eine Projektil- und eine Strahlenkanone, beide mit geringer Feuerkraft.


Das Konzept
Sunday, February 8 2009

Ich habe mich dazu entschieden, mal ein RTS zu versuchen. Dazu habe ich mir ein neues Konzept einfallen lassen, denn die meisten Projekte sterben, weil sie einfach einen simplen, aber unauffindbaren Fehler enthalten. Dann fehlt die Motivation, und das ganze landet auf dem Codefriedhof. Also habe ich das ganze Spiel (sehr) einfach gehalten, und siehe da es ist fertig. Jedenfalls theoretisch.
Das Spiel kann zwar gespielt und auch gewonnen werden, aber es fehlt eine KI, ein Menü, ein Haufen Meshes, Texturen, Sounds und Einheitendefinitionen, aaaaber es geht Very Happy
Bilder folgen sicher bald.

Gehe zu Seite Zurück  1, 2, 3