Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Do Mär 28, 2024 14:51

Foren-Übersicht » Sonstiges » Projekte
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 80 Beiträge ]  Gehe zu Seite 1, 2, 3, 4, 5, 6  Nächste
Autor Nachricht
 Betreff des Beitrags: Projekt "W"
BeitragVerfasst: Fr Sep 08, 2006 14:14 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------

-----------------------------------------------------------------------------
Update 14.08.2007 : Es ist fertig!

Alle Infos und Downloads finden sich hier!
-----------------------------------------------------------------------------


Einleitung :
Wer meinen Blog liest, oder diesen Thread im OT-Forum gelesen hat, wird evtl. wissen dass ich an einem neuen (alten, aber dazu gleich mehr) Spiel werkle, das momentan unter dem Arbeitstitel Projekt "W" läuft, wobei die Leute aus meinem realen Bekanntenkreis auch schon wissen wofür das "W" steht. Und da ich bisher alle meine Projekte auch auf der DGL vorgestellt habe, werd ich bei meinem aktuellen Projekt mit dieser Tradition natürlich nicht brechen.

Hintergrund :
Der Hintergrund zu Projekt "W" ist aus meiner Sicht heraus recht interessant, denn dieses Projekt habe ich bereits 2002/2003 begonnen aber dann nach einem Prototyp und kurzer Entwicklung wieder eingemottet. Warum? Einfach Antwort : "Lahmes" Spielprinzip. Das Designdokument von damals propagierte ein sehr komplexes Spielprinzip, bei dem ein Match durchaus auch mal mehrere Tage hätte dauern können. Aus Sicht des Spielers ist das nicht unbedingt schlecht, siehe z.B. die riesigen Schlachten aus Panzer Generl oder vergleichbaren Spielen. Schlecht ists allerdings aus der Sicht eines Hobbyentwicklers, denn um die lange Spielzeit auch für den Spieler interessant zu gestalten, benötigt es sehr vieler Inhalte. Was bringt ein 24h-Match, wenn man bereits nach 1 oder 2 Stunden alles erforscht hat und alle möglichen Gebäude errichtet hat? Es bringt vor allem Monotonie, und Monotonie ist nichts für ein Computerspiel, denn da sollte der Spieler in irgendeiner Weise immer unter "Spannung" stehen. Und wenn man alleine an einem Projekt arbeitet kann man nicht hunderte verschiedene Einheiten und Gebäude designen, beschreiben, umsetzen und dann dafür auch noch 3D-Modelle erstllen, das würde dann wieder ein Ewigkeitsprojekt werden.
Also lies ich es damals "gut" sein und widmete mich anderen Projekte. Allerdings habe ich dann vor wenigen Wochen wieder Lust bekommen ein neues Spiel zu entwickeln und hab dann auch ein kurzes neues Spielkonzept entworfen, mich dabei aber wieder an Projekt "W" zurückerinnert. Also neue Spielidee schnell vergessen und Designdokument von Projekt "W" ausgebuddelt und drüber gegrübelt. Dann hab ich mich direkt drangemacht das alte Spielkonzept zu überarbeiten, und nach über 10 Seiten mit Änderungen und v.a. guten neuen Ideen steht jetzt ein verbessertes Spielkonzept mit kürzerer Spieldauer (und weniger Inhalt den ich umsetzen muss), welches aber dennoch mehr Spaß machen sollte als das alte Konzept!
Die Überarbeitung des Spielkonzepts war übrigens überaus interessant, und diesmal habe ich auch ein Designdokument in dem so ziemlich alles schriftlich hinterlegt ist. Bei meinen älteren Projekten habe ich oft Spielideen grob angerissen und dann direkt beim Proggen umgesetzt, was dann im Endeffekt alles andere als optimal war. Das ist diesmal anders, im Designdokument sind die einzelnen Spielelemente also nicht nur grob beschrieben, sondern bis ins Detail hin ausgearbeitet.

Story :
Gleich vorneweg : Zur Story selbst möchte ich noch nicht viel verraten, zumal die wohl auch noch teilweise überarbeitet wird.
Das Spiel selbst spielt in der Nahen Zukunft (Datum hab ich mir erspart, evtl. mach ichs wie die MegaMan-Reihe also einfach 20XX ;) ), und die bisherigen Staatenkonstellationen sind nicht mehr präsent. Jetzt gibt es nur noch 5 große "Nationen", die um die Vorherrschaft kämpfen. Bei der Ausarbeitung der "Nationen" hab ich mich übrigens an der aktuellen Weltpolitischen Situation orientiert und mir überlegt wie die Erde in einigen hundert Jahren in Sachen Aufteilung aussehen könnte. Da sind dann zwar auch ein paar politisch Inkorrekte Sachen dabei, aber da ich selbst und auch mein kompletter Bekanntenkreis politisch Inkorrekt sind ist mir das ehrlich gesagt schnuppe wenn sich da jemand drüber pikiert. So habe ich also für jede der Nationen eine eigene Hintergrundgeschichte mit aktuellem politischem Bezug sowie einie eigene Flagge entwickelt, anhand derer man eigentlich direkt erkennt um welche Nation es sich handelt. Die Zukunft in der Projekt "W" spielt ist übrigens keine friedliche, es wird also keine Diplomatie geben, und wer nicht unter die Zahnränder kommen will muss selbst zu einem Zahnrad werden.

Spiel :
Grundlegend gesagt ist Projekt "W" ein stark erweitertes Risiko mit fiktivem Szenario, was man allerdings von so ziemlich allen rundenbasierten Strategiespielen sagen kann. Jeder Spieler besitzt von Beginn an je nach gewählter Nation eine bestimmte Anzahl von Regionen (vergl. mit Staaten), und er muss gegnerische Nationen vernichten.
Dabei sieht der Spielablauf in etwa wie folgt aus (Änderungen vorbehalten) :
  • Regionen verwalten
    Sich um die Belange der Bevölkerung kümmern, Gebäude bauen, etc.
  • Armen verwalten
    Einheiten bauen, Armeen erstellen, Armeen strategisch positionieren
  • Forschen
    Ohne neue Technologien läuft nix, egal ob im militärischen oder zivilen Bereich
  • Ressourcen verwalten
    Es wird nur eine globale Ressource geben, aus der alles bezahlt wird, damit sollte man also gut wirtschaften
  • Expandieren
    Angreifen und erobern anderer Regionen
  • Verteidigen
    Natürlich sollte man vor lauter Eroberungsdrang nicht vergessen die eigenen Regionen zu verteidigen
Das ist dann das eigentliche Spielprinzip. Natürlich ist dass nur der grobe Ablauf, es wird diverse Dinge/Ereignisse geben die Dynamik in den Spielablauf bringen, denn ich will nicht dass der Spieler wie oben erwähnt in einen Monotonismus verfällt und später wie im Automatismus Runde für Runde das selbe macht bis es vorbei ist. Das ist bei einigen Spielen aus dieser Kategorie so, ich erinnere mich da noch an das an sich geniale Ascendancy, das Anfangs verdammt interessant war, während man im späteren Verlauf nur blind Runde für Runde das selbe tat weil nicht wirklich mehr viel zu tun war. Das versuche ich zu verhindern, man muss sich also wirklich aktiv um seine Regionen kümmern, die einem sonst durch Rebellen oder Umweltverschmutzung verloren gehen können. Ausserdem wird es diverse Zufallsereignisse geben, die dann Schwung in die Sache bringen sollen (so ein AKW kann ja durchaus mal in die Luft fliegen, oder Sabotage seitens anderer Spieler ist auch immer was lustiges).

Die Kämpfe bei einem Angriff auf befeindete Nationen laufen übrigens auch rundenbasiert auf einem Hexfeld ab (siehe Screenshots). Wenn man also seine nagelneue Armee auf eine feindliche Region zieht, wird auf das Hexfeld umgeschaltet, wo man dann seine Einheiten bewegt und angreifen lässt (bzw. verteidigt, wenn man selbst angegriffen wird) bis eine Partei gewonnen hat. Optional plane ich allerdings auch einen "Schnellkampf-Modus", bei dem der Kampfausgang errechnet wird. So ist dann jeder bedient, sowohl der gemächliche Spieler als auch der angehende Feldgeneral.

In Sachen Mitspieler plane ich (Betonung auf "plane", k.A. wie viele Modi davon letztendlich ins Spiel finden) so ziemlich alles möglich. Angefangen bei computergesteuerten Gegner, über menschliche Spieler via LAN und Internet, so wie evtl. sogar Play-By-Mail (ne Idee von nem Bekannten, technisch recht leicht umsetzbar und sicherlich interessant, so kann man mal zwischendurch in der Mittagspause oder so nen Zug machen). Da es rundenbasiert ist sollten LAN und Internetanbindung kaum problematisch werden, wobei dann natürlich die Zeit für Züge begrenzt wird, also alle Spieler z.B. nach 10 Minuten fertig sein müssen. Aber das wird alles über Spieloptionen geregelt.

Umsetzung :
Der für die meisten DGLler wohl interessanteste Teil : Die programmiertechnische Umsetzung.
Um eins direkt vorneweg zu nehmen : Für mich persönlich gibts in diesem Projekt rein programmiertechnisch nix neues zu erlernen, das Programmieren ist hier eher Routine, und Features die ich drin haben will sind meist nach kurzer Zeit umgesetzt. Zwar lerne ich dabei nix, allerdings habe ich nen stetigen Fortschritt und kann Features direkt ohne großes Probieren oder Experimentieren umsetzen, also quasi direkt vom Designdokument in den Quellcode. Ist quasi das direkte Gegenteil zu meinem letzten Projekt, dem NewtonPlayGround, wos kein Designdokument oder so gab, ich aber jede Menge gelernt hab. Macht aber natürlich trotzdem Spaß, sonst würd ichs nicht machen.

Für die graphische Umsetzung verwende ich wie gewohnt OpenGL, und momentan noch nix ausgefeiltes. Evtl. kommt später nochn Bump-Mapping und Tag-Nacht-Shader für die 3D-Erdkugel dazu, aber viel komplexer wirds nicht werden. Für den Sound (auch wenns momentan nur ein Sound + Hintergrundmusik ist) nutze ich OpenAL, und zwar über ein Soundsystem dass ich vor längerer Zeit programmiert habe. Das Soundsystem ist austauschbar, ich kann also on-the-fly zwischen meinem FMOD und meinem OpenAL-Soundsystem wechseln, in dem ich einfach nur den Klassentyp ändere (also statt TalSoundSystem TFMODSoundSystem). Aber auch sonst gibts hier nix Interessantes, also Sachen wie EAX oder 3D-Sound braucht so ein Spiel ja nicht. Ansonsten benutze ich momentan auch noch GDIPlus zum Laden von PNG-Dateien. Ich hab also endlich das alte TGA-Format von Bord geworfen und kann dank GDI+ ohne zusätzliche DLL das moderne PNG-Format laden.

Vom programmiertechnischem Standpunkt aus gesehen ist eigentlich nur die GUI interessant, denn für Projekt "W" brauchte ich eine komplette windowsähnliche GUI die mit OpenGL implementiert wurde. Also hab ich ne eigene GUI-Lib geschrieben (die natürlich von Projekt "W" unabhängig ist) die mir Fenster, Labels, Panels, Buttons, Listboxen usw. bietet und dazu dann auch einen passenden GUI-Editor geschrieben (siehe Screenshots) mit dem ich dann einfach und schnell neue Fenster zusammenklicken kann. Neben den üblichen UI-Komponenten gibt es noche eine spezielle geskinnte Komponente, die z.B. für das komplexe Kontrollzentrum rechts unten verwendet wird. Diese Komponente besteht aus einer Hintergrundgrafik und verschiedenen Teilen die dann im Mouseover aktiviert und natürlich auch angeklickt werden können. Die Mouseoverareale sind übrigens polygonal, d.h. man kann damit jede noch so komplexe Form in die UI einbringen.
Ausserdem gibts auch ein Messagesystem (ähnlich dem von Windows, aber weniger komplex), damit man auf bestimmte Ereignisse, z.B. Buttonklicks reagieren kann. Fenster haben zusätzlich noch eigene Callbacks zum Rendern von z.B. zusätzlichen Objekten (etwa die 3D-Vorschau von Gebäuden und Einheiten) und zum eigenen Verarbeiten von Messages (dient primär der besseren Gliederung).
Die komplette GUI wird dabei aus XML-Dateien geladen, ein Format dass ich inzwischen sehr häufig verwende. Es kann dank Delphis passender Komponenten einfach geladen und geschrieben werden, ist für Menschen lesbar (und damit auch veränder- bzw. korrigierbar) und man muss bei Änderungen nicht direkt das komplette Dateiformat inkl. Import- und Exportfunktionen anpassen. Einen Großteil der anderen Spieldaten (Gebäude, Einheiten, etc.) lade ich natürlich auch über XML.

In Sachen Modellformat benutze ich übrigens ein eigenes, recht simples Binärformat. Anfänglich habe ich Direc3D-Meshes (ASCII) geladen, allerdings war der Parser nicht der schnellste und daher habe ich mir nen kleinen Konverter geschrieben der per Drag'n'Drop .X-Modelle in mein Format wandle. Im Normalfall ist dass Laden des Binärmodels um den Faktor 20 schneller. Das 3DS-Format hab ich ganz früher im Prototypen genutzt, dieses aber schon vor einiger Zeit (siehe Blog) ausgemustert, primär wegen der fehlenden korrekten Normalen. Beim .X-Format habe ich diese Probleme und auch einige Limitationen des 3DS-Formates nicht mehr, mein Binärformat übernimmt alle diese positiven Eigenschaften.

Screenshots :
Ohne Screenshots wärs natürlich langweilig, also einfach anklicken und es gibt ne größere Version im neuen Fenster :
Bild
So sieht Projekt "W" im Spiel aus. Man sieht die 3D-Erdkugel und unten rechts das Kontrollzentrum. Dort fehlen allerdings noch einige Infoanzeigen und sonstige Sachen, deshalb siehts etwas kahl aus.

Bild Bild
Hier sieht man im Vergleich den aktuellen Build (links, aber das kann man erahnen) und den Prototypen von 2003. Ist schon ein Unterschied. Man erkennt dann rechts auch schön die GUI mit einigen 3D-Elementen in den einzelnen Fenstern. Die 3D-Elemente wurden über PBOs realisert und werrden im Fenster selbst dann als Quad gerendert.

Bild
Screenshot aus einem Prototypen für die Hexfeldkämpfe. So in etwa wirds im Spiel dann auch aussehen, graphisch wohl etwas anspruchsvoller, mit anderen Einheiten und GUI-Elementen für Informationen usw.

Bild
Das ist der GUI-Editor den ich nutze um die Fenster für meine OpenGL-GUI zu erstellen, inkl. Echtzeit-3D-Vorschau.

Finis coronat opus :
So viel also zu meinem aktuellen Projekt. Obwohl der Post recht lang ist fehlen noch viele Infos v.a. bzgl. der Spielidee und Story, dazu gibts dann später mal evtl. mehr. Und da ich ja jetzt hier den Projektethread offen habe werd ich versuchen (soweit zeitlich möglich, das Teil hier hat schon ewig gedauert) sowohl diesen Thread als auch meinen Blog bzgl. des Projektstatus synchron zu halten.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Zuletzt geändert von Sascha Willems am Di Aug 14, 2007 18:31, insgesamt 2-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Sep 12, 2006 13:44 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Eigentlich wollte ich am Wochende zumindest ein paar 3D-Modelle für die Gebäude erstellen, was aufgrund von Zeitmangel leider nicht möglich war. Allerdings war ich nicht total untätig und hab ein wenig am Gamedesign gewerkelt :
Ursprünglich sollte der Bereich "Spionage" (zusammen mit Sabotage) nur eine geringe Rolle im finalen Konzept spielen, nachdem ich mir da aber ein paar Gedanken drüber gemacht habe, wurde mir klar dass dieser Bereich durchaus interessant für den Spielablauf sein könnte. Also habe ich den ein wenig erweitert und somit zu einem wichtigen Punkt im Spielablauf befördert. Man kann jetzt im Transfermarkt zusätzlich Spione anstelle (die alle unterschiedliche Werte haben) und dann mit ihnen versuchen feindliche Regionen zu infiltrieren. Sollte das erfolgreich sein, so bekommt man nun Runde für Runde mehr oder weniger korrekte Infos (je nachdem wie gut der Spion ist) und kann dann nach einer bestimmten Rundenzahl auch zusätzlich Sabotage begehen, z.B. an Gebäuden oder stationierten Armeeeinheiten. Es besteht dabei natürlich immer die Gefahr entdeckt zu werden.

Ausserdem habe ich den Transfermakrt wieder implementiert. Der war zwar schon im ersten Prototypen drin, habe ihn allerdings komplett überarbeitet und jetzt wieder mit im Spiel. Der Spieler kann dort in einem globalem Pool Generäle, Forscher und Spione anheuern die dann die entsprechenden Bereiche verstärken. Es geht auch ohne, allerdings kann man sich mit gutem Personal Vorteile verschaffen, kostet dann allerdings Ressourcen.
Für den Transfermakrt hab ich dann auch noch schnell 3D-Grafiken für die 3 Berufe gebastelt. Bisher hatte ich da Platzhalterbilder aus der Google-Bildsuche drin, aber die wollt ich nicht mehr haben, was selbstgemachtes iss da doch besser :

Bild

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Update des Kontrollzentrums
BeitragVerfasst: Mi Sep 13, 2006 19:36 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Heute und gestern habe ich damit verbracht das bereits angesprochene Kontrollzentrum einer optischen Überholung zu unterziehen. Bisher hatte ich da ja vier mit Text beschriftete Buttons drin, die eher vorläufiger Natur waren. Und nachdem ich die letzten Wochen so ziemlich alle Bereich die man über Fenster erreichen kann ins Spiel implementiert habe, ist mir aufgefallen dass man einige der wichtigen Bereiche nur über mehr als einen Mausklick erreicht, und dass war einer der Punkte im Bezug auf das UI den ich unbedint vermeiden wollte.
Also hab ich mir ein wenig Zeit genommen und aus den vier Buttons sechs gemacht, allerdings nicht mehr mit langweiliger Beschriftung, sondern mit leicht erkennbaren Icons (selbst gerendert). Zusäzlich hab ich den Mouseover-Effekt noch etwas aufgewertet, vorher sind die Buttons (siehe Flashanimation die ich mal gepostet habe) eingefaded, zusätzlich wachsen (und schrumpfen, wenn die Maus nicht mehr drüber ist) die Buttons nun auch, was kombiniert einen sehr genial aussehenden Effekt ergibt. Einen eigenen Flashfilm hab ich dafür jetzt nicht gemacht, man wirds ja dann im Spiel sehen können.
Allerdings gibt es wie gewohnt einen Screenshot, das oberste Icon ist dabei der selektierte Button, also komplett eingefaded und auch komplett gewachsen.

Bild

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Mehr UI-Kram und Forschung
BeitragVerfasst: Sa Sep 16, 2006 16:04 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Weiter gehts mit der UI. Nachdem ich beim letzten Mal das neue Kontrolzentrum implementiert habe, gibts nun auch oben links im Bildschirm eine kleine Systemleiste. Dort gibts bisher Buttons für das Laden, Sichern und Beenden des Spiels. Mehr wirds evtl. noch in Zukunft geben (evlt. Optionen, etc.). Ausserdem gibts jetzt neben dem Kontrollzentrum auch endlich die für den Spieler wichtigsten Informationen auf einen Blick, und wie gewohnt mit passenden Symbolen. Auch diese Symbole habe ich selbst im 3D-Modeller erstellt, und passen meiner Meinung nach recht gut zum Stil der bisherigen Icons. Allerdings sind auch diese wie gewohnt vorläufig, da wird sich mit Sicherheit noch etwas ändern. Den Rest des freien Platzes neben dem CC werde ich demnächst auch füllen, und ich weis auch schon womit. Dazu gibts dann aber im entsprechenden Update mehr Informationen.

Bild

Neben den Änderungen an der UI (und diversen anderen kleinen Änderungen unter der Haube) habe ich auch das nächste wichtige Spielelement implementiert, die Forschung. Nun gibts also auch endlich ein Fenter in dem man dann wählen kann an welchem Projekt geforscht werden soll. Es gibt dabei zwei große Forschungsgebiete, nämlich militärisch und zivil aus denen man dann entsprechend die zu erforschende Technologie wählen kann. Das Feature ist zwar noch nicht zu 100% implementiert, aber man kann in WeltEdit bereits neue Technologien erstellen (inkl. Skript und u.a. auch festlegen welche Technologien als Voraussetzung erforscht sein müssen) und nach XML exportieren, die dann bereits im Spiel geladen werden und dort auch gewählt werden können.

Für Interessierte gibts hier auch mal quasi als Vergleich ein Photo und nen Screenshot. Das Photo zeigt meine "Zeichnung" des Forschungsfensters, und im Screenshot sieht man dann die Umsetzung ins Spiel. Zum Screenshot sei noch gesagt dass noch nicht alles 100% implementiert ist, so fehlen u.a. noch Bilder und Beschreibung.

Bild Bild

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Neuer Nations-Auswahl-Schirm
BeitragVerfasst: Mi Nov 22, 2006 20:42 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Nach einer etwas längeren Pause (dank des neuen Guild Wars-Kapitels, einer der wenigen guten Spieltitel dieses Jahres) hab ich wieder mit den Arbeiten an Projekt "W" begonnen. Diesmal habe den Nations-Auswahl-Schirm überarbeitet. Der war mir schon länger ein Dorn im Auge, stammte er doch noch aus der ersten Version von 2003 und sah er doch recht langweilig und irgendwo abstossend aus. Die Tage hatte ich dann eine recht gute Idee wie der neue Schirm aussehen sollte, die ich dann heute schnell mal in nem externen Prototyp umgesetzt habe.

Auch wenn noch ein paar Kleinigkeiten wie z.B. die Texte, Beschriftungen und ein Start-Button fehlen gefällts mir richtig gut (und sehr viel besser als der alte). Die Reflektionen sind übrigens dynamisch und kräuseln sich dank eines GLSL-Shaders auch schön im Wind. So wirkt die Sache nicht mehr komplett statisch und irgendwie auch recht edel.

Zum Vergleich gibts hier nebeneinander den neuen Auswahlschirm und (rechts) den alten (klick für größeres Bild) :
Bild Bild

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Nov 26, 2006 17:42 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Die letzten paar Tage habe ich nun auch die Hauptansicht in Sachen Stil überarbeitet, siehe Screenshot :
Bild

Wie man auf dem Shot sehen kann hat sich einiges verändert (entsprechend des schon vorher geposteten Nationsauswahlschirms). Es gibt jetzt auch hier den Wolkenhintergrund inkl. spiegelndem Wasser. Diesmal ists ein anderer Wolkenhintergrund, der ja wie angesprochen je nach Nation wechselt, was wirklich gut rüberkommt.
Offensichtlich ist auch die Änderung an der Erdkugel selbst, die jetzt mit einem aufwendigen Shader gerendert wird. Der Shader selbst stammt von 3DLabs und findet sich im Rendermonkey. Er nutzt eine Basemap (Tag), eine Map mit Erdlichtern (Nacht) und natürlich eine Wolkentextur. Zusätzlich hab ich den Shader noch um hell leuchtende Grenzen (auch eigene Map) erweitert. Damit nutzt der Shader also insgesamt 4 Textureinheiten, Credits gehen natürlich wie gesagt an 3DLabs, die Texturen stammen von der NASA. Der Shader ist auch animiert und man sieht schön wie die Tag/Nachtgrenze, was einen schönen Effekt gibt und zusammen mit der sich kräuselnden Refletkion etwas Dynamik in die ansonsten so statische Szenerie bringt.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Dez 01, 2006 23:35 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Wieder mal ein kleineres Update. Diesmal hab ich mich vorrangig um "Kleinigkeiten" bzgl. der GUI gekümmert. Wie man im Screenshot erkennen kann sind die Fenster nun leicht transparent, was eher ein rein optischer Effekt ist und gut ausseht. Dazu hab ich natürlich auch den Rendervorgang an die Gegebenheiten von OpenGLs Blending angepasst, also Back-To-Front Sortierung der Fenster.
Neben dieser optischen Änderung gabs auch Änderungen an der Usability einiger UI-Komponenten. So kann man nun bei den Einträgen für eine Listbox Farben und Icons angeben/ändern, so dass man z.B. bereits gewählte Einträge etwas dunkler darstellen kann. Besonders gut erkennt man das im Fenster für die Newsmeldungen, wenn eine der Meldungen vom Spieler gedoppeklickt wird, wird der Listeneintrag dunkler dargestellt und markiert. Natürlich wird z.B. bei einem Klick auf eine Regionsnachricht das passende Fenster dazu geöffnet. Eine weitere Änderung ist der automatische Zeilenumbruch für Memos. Auch wenns trivial klingt ist dass nicht unbedingt so einfach zu implementieren, aber etwas auf dass man natürlich nicht verzichten kann.

Bild
Das waren alles solche Kleinigkeiten die ich gerne noch geändert haben wollte (sowas verfolgt einen, evtl. kann der ein oder andere dass nachvollziehen). Jetzt widme ich mich primär wieder dem Content. Habe die Tage die finale Gebäudeliste in Angriff genommen, die soweit auch schon fast komplett ist (inkl. Beschreibungen). Die nächsten Tage/Wochen wirds also eher inhaltliche als optische Änderungen geben.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Dez 04, 2006 19:29 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Gestern und heute habe ich mich mit der 3D Ansicht im Regionsdetail-Fenster beschäftigt. Dort sieht man (in 3D) die in dieser Region bereits errichteten Gebäude, aber die alte Ansicht gefiel mir überhaupt nicht mehr und passte auch nicht so recht zum Rest des Spiels. Daher hab ich sie komplett überarbeitet, und bin nach diversen verschiedenen Kamereinstellungen und Renderanordnungen der Gebäude zu einer isometrischen Ansicht gekommen, die zumindest vom Stil her final sein wird :

(Links : alte Variante, Rechts : neue Variante)
Bild Bild

Um (wie bei den letzten Posts geschehn) Antworten á la "das sieht nicht 100%ig gut aus" zu vermeiden : Der Stil ist final, der Rest ist aber Work In Progress. Weder die Modelle noch die Texturen sind final. Die Zahl der Gebäude im Hintergrund z.B. wird sich je nach Bevölkerungsdichte ändern und ich plane ausserdem noch ein paar andere visuelle Indikatoren in diese Ansicht einfliessen zu lassen, wie z.B. hohe Umweltverschmutzung oder geringe Zufriedenheit.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Dez 09, 2006 21:01 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Momentan laufen die Arbeiten and PjW recht gut, und wenn ich die in den letzten Tagen investierte Zeit in Sachen Effektivität betrachte kann ich recht zufrieden sein. So flüssig läufts nicht immer und dementsprechend hab ich seit dem letzten Updates so einiges geschafft, auch vieles unter der Haube, aber natürlich auch wieder per Screenshot vorzeigbare Sachen.

Ich hab endlich damit begonnen 3D Modelle für die Gebäude zu erstellen, nachdem ich die Gebäudeliste bis auf einige Kleinigkeiten ja bereits fertig habe. Bisher sind 8 Gebäude fertiggestellt und diese gefallen mir auch entsprechend gut. Beim Bauen der Modelle für den hier gegebenen Anwendungszweck, also ein recht kleines Anzeigenfenster, kein Ego-Shooter wo man in den Dingern rumläuft, muss man natürlich Kompromisse eingehen. Hier muss man nen guten Mittelweg zwischen Anzahl der Dreiecke und Detailtiefe finden. Da ich aber schon für andere Strategiespiele (u.a. mein unbeendetes Unknown Constellation) ist das für mich recht unproblematisch, und die aktuellen Modelle liegen alle bei weniger als 2000 Dreiecken.
Bild

Und auch die Ansicht in der diese Gebäude genutzt werden, die Regionsdetails (siehe letzter Post) wurde weiterentwickelt. So gibt es nun ein Tooltip-Fenster, das neben dem Cursor erscheint sobald dieser über einem Gebäude schwebt (leider sieht man auf dem Screenshot unten den Cursor nicht) und einem Informationen zum aktuellen Gebäude liefert. So sieht man direkt (ohne ins Baumenü zu müssen) was dieses Gebäude genau macht und ob mans überhaupt noch braucht. Zu sehen (sowie auch im Baufenster) sind dort die "Effekte" die ein Gebäude auf die Region hat (es gibt übrigens auch globale Faktoren, z.B. Forschung). Diese Effekte werden aus dem jeweiligen Skript des Gebäudes entnommen und beeinflussen die Eigenschaften dieser Region und werden am Rundeende mit in die Kalkulationen der neuen Werte einbezogen. Das wird dann später beim Balancing wohl noch eine größere Sache, aber dazu komme ich erst wenn ich alle Gebäude implementiert habe.
Bild

Ansonsten habe ich noch recht viel Zeit mit diversen "kleineren" Sachen bzgl. des Projektes verbracht. Darunter auch diverse Verbesserungen am WeltEdit, so hat man jetzt u.a. eine 3D-Vorschau für Gebäude und das Tool ist in Sachen Nutzbarkeit verbessert worden, so dass sich Content jetzt bequemer erstellen lässt. Weiterhin hab ich auch an der GUI von PjW gearbeitet, größtenteils waren dass auch hier Veränderungen in Sachen Nutzbarkeit (oder für alle Denglisch-Sprecher : "Usability"), z.B. die bessere Hervorhebung von selektierten Items, Addition eines TEdits (gabs bisher noch keins weil ich einfach noch keins gebraucht hab), sowie kleinere Bugfixes (v.a. optische).

Auch am Designdokument habe ich wieder gearbeitet und mir hier schonmal Gedanken um dem ersten Mehrspielermodus gemacht den ich implementieren möchte, namentlich den "Hot-Seat"-Modue. Dieser dürfte aus diversen anderen rundenbasierenden Strategiespielen bekannt sein. Die maximal 5 Spieler tätigen hier nacheinander ihre Züge, wobei man natürlich die Zeit für einen Zug limiteren kann, damit ein Spieler nicht das komplette Spiel blockiert weil er sich seiner Aktionen unsicher ist. Man ist hier aber nicht auf 5 menschliche Spieler angewiesen, sondern kann auch mit KI-Spielern mischen und da dann entsprechende KI-Profile wählen. Dieser Modus sollte auch programmiertechnisch sehr leicht umsetzbar sein, zumindest hab ich dafür bereits im Quellcode den Grundstein gelegt.


Und zum Schluß noch ein Wort zu einer etwaigen Demo, da es dazu ja schon Anfragen gab (bzw. Anfragen zu etwas dass das Spiel in Bewegung zeigt) :
Ich plane eine erste Demo Ende Q1/2007 bis Mitte Q2/2007. Was da rein soll hab ich mir auch schon überlegt, sie soll zu 75% Featurekomplett sein, so dass man also 3/4 der Spielelemente nutzen kann (Gebäude bauen, Regionen verwalten, forschen, Kampf, etc.), wobei ich von diesem Ziel nicht mehr seit weit entfernt bin. In Sachen Content soll auch zumindest so viel enthalten sein dass es Spaß macht (also jede Menge Gebäude, Einheiten, erforschbare Technologien, etc). In Sachen Multiplayer wird diese Demo nur den oben erwähnten Hot-Seat Modus enthalten, LAN-Modi (oder Internet) werden erst später folgen. Einzelspieler wird natürlich enthalten sein. Eine Tech-Demo wie seinerzeit bei Unknwon Constellation (bin die Tage mal wieder über den Thread gestolpert) wird es nicht geben, das hält zu sehr auf. So viel also zu ner Demo, aber bitte nagelt mich nicht auf den oben angepeilten Termin fest, ist ja schliesslich nur ein Hobby-Projekt ohne den Druck einer Deadline.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Dez 13, 2006 19:39 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Und weiter geht's in Sachen Spielinhalte. Abwechslung ist beim Entwickeln von Spielen ja für mich persönlich der größte Reiz, denn hier muss man nicht nur programmieren, sondern auch mal Grafiken und Modelle erstelle, Stories schreiben uvm. Und da kann man dann schön zwischen diesen Gebieten je nach aktueller Laune alternieren, und momentan tendiere ich zur Erstellung von Inhalten.

Zuerst habe ich mich den Hintergrundgeschichten und Flaggen der fünf Nationenb gewidmet. Das stammte alles noch aus der ersten Previewversion von 2003, die Fahnen gefielen mir bis auf eine Ausnahme nicht mehr wirklich, und die Stories passten auch nicht wirklich zusammen und liesen einen glboalen Zusammenhang missen. Also hab ich mich hingesetzt und zusammen mit neuen Stories auch neue Flaggen erstellt. Das war zwar sehr zeitaufwendig, hat aber auch richtig Spaß gemacht da man dabei so richtig kreativ sein kann (und ich nebenbei auch noch quasi meinen Senf zur aktuellen weltpolitischen Lage geben konnte). Im angehängten Screenshot könnt ihr dann die neuen Flaggen sehen, zum Vergleich sind darunter dann die alten Flaggen. Die Stories wirds dann erst im Spiel zu "bestaunen" geben :
Bild

Und auch in Sachen Gebäudedesign hab ich wieder etwas gewerkelt, diesmal sinds drei Gebäude aus dem Wohnbereich, die letztendlich je nach Gebäude den maximalen Bevölkerungsfaktor einer Region erhöhen werden. Die Erstellung hat etwas länger als gewohnt gedauert, da sie recht komplex sind (allerdings immernoch mit recht wenigen Polgyonen, komplex eher von der Idee her) und ich jeweils mehrere Anläufe gebraucht habe bis die Gebäude so aussahen wie ich sie mir vorstellte. Zudem hab ich dann auch noch recht viele Texturen selbst gebastelt, auch wenn die auf den kleinen Screenshots kaum zur Geltung kommen :
Bild

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Dez 16, 2006 22:56 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Nachdem jetzt regionale Gebäude so gut wie komplett funktional sind (man kann sie bauen, und sie haben auch Effekte auf Regionen) hab ich begonnen das nächste Feature in Angriff zu nehmen : Forschung. Dazu hab ich das Forschungsfenster komplett überarbeitet. Im Gegensatz zu z.B. der Civilization-Reihe wird der Forschungsbaum aber nicht sonderlich komplex, es wird nur zwei Forschungsgebiete geben, nämlich zivile und militärische Forschung.
Jede Technologie kann dabei andere Technologien und/oder Gebäude freischalten. Ausserdem will ich dann fürs "Endgame" Endlostechnologien implementieren, die bei Aktivierung bestimmte Auswirkungen haben solange man daran forscht. Welche Technologien das sein werden hab ich allerdings noch nicht beschlossen. Das Feature ist zwar noch nicht komplett fertig, aber bereits funktionale, man kann also mit Technologien bereits z.B. Gebäude freischalten und dann auch in der Region bauen.

Zusätzlich hab ich auch noch ein Debugging/Cheating-Fenster implementiert, ihn dem ich bestimmte spielinterne Werte/Faktoren sehen kann, den ich aber auch nutzen kann um bestimmte Aktionen auszuführen die ein Spieler nicht zur Verfügung hat, z.B. alle Technologien freischalten. Den wirds im finalen Spiel natürlich nicht geben, aber während der Entwicklung ist sowas recht praktisch.

Bild

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jan 11, 2007 19:45 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Wer meinen Blog verfolgt, wird wissen dass das Projekt momentan recht guten Fortschritt macht. Inzwischen ist es fast featurekomplett und ich habe vor kurzem damit begonnen die künstliche Intelligenz zu implementieren. Auch hier geht es weitaus besser voran als ich zuerst vermutet habe, und so bin ich nach zwei Tagen Arbeit an der KI soweit dass diese je nach Bedarf entsprechende Gebäude baut, Armeen erstellt und auf passende Regionen verteilt, und momentan bringe ich der KI auch bei welche feindlichen Regionen sie zuerst attackieren soll.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jan 19, 2007 00:49 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Feedback hält sich ja mal wieder in sehr engen Grenzen, aber bins ja nicht anders gewohnt. Nichtsdestotrotz poste ich auch hier mal wieder ein kleines Update :

Die Tage habe ich endlich mit der Übersetzung begonnen, und diese auch implementiert. Übersetzt werden String in WeltEdit, zuerst wollte ich das über die ITE im BDS2006 machen, aber die gefiel mir dann nicht so toll , also hab ich meine eigene Lösung entwickelt. Dabei wird über eine Funktion mittels eines Bezeichners (z.B. szTestString) der für die aktuell eingestellte Sprache passende String zurückgegeben. Die Übersetzungen werden wie gewohnt als XML gespeichert.
Ausserdem habe ich jetzte auch den Technologiebaum ins Spiel integriert, es gibt also endlich mehr als nur ein paar Testtechnologien. Auch wenn der noch nicht komplett ist (vom Umfang her will ich fürs finale Spiel circa doppelt soviel) kann man jetzt zumindest ne ganze Zeit lang forschen.

Die AI hab ich erstmal "auf Eis gelegt", denn bevor ich der wirkliche Taktikten etc. beibringen kann muss ich mich erst ums Balancing kümmern. Dazu habe ich u.a. die Berechnungen für die regionalen Faktoren abgeändert, und die Gebäude bzw. Einheiten werden dann noch mit Preisen versehen, wenn alles so wie momentan 0 Ressourcen kostet, kann ich der AI ja kaum beibringen zu haushalten. Allerdings kann die AI jetzt endlich feindliche Regionen angreifen und im Falle eines Sieges übernehmen.
Dazu habe ich dann auch einfach mal ne GIF-Animation erstellt, die sich über einen Zeitraum von 300 Spielrunden erstreckt und anhand von farblich markierten Regionen zeigt wie die AI andere Regionen übernimmt. Das animierte GIF besteht aus 30 Frames, ein Frame alle 10 Runden (also genau 300 Runden Spielzeit, per Debugfunktion vorgespult). Wer Interesse daran hat, kann sich das GIF hier ansehen. Sieht zwar wie gesagt nicht wirklich atemberaubend aus, aber so kann ich sehen dass meine recht primitive KI zumindest in der Lage ist was zu bewegen, auch wenns noch wenig strategisch ist.

Und zum Schluß auch mal wieder ein neuer Screenshot, der das fast komplett übersetzte Interface mit diversen Fenstern etc. zeigt :
Bild

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Bewegte Bilder
BeitragVerfasst: Do Jan 25, 2007 22:27 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Da es jemand im Kommentarthread angesprochen hat, hab ich schnell mal ein Video von der aktuellen Version erstellt und hochgeladen. Ich bitte drum vorher den Hinweis zu lesen :

Hinweis :
Das Video stammt aus dem aktuellen Build, die dort sichtbare Version wurde also erst vor wenigen Stunden kompiliert. Es spiegelt damit also den aktuellen Entwicklungsstand dar, sehen tut man natürlich nicht alles, v.a. von der AI sieht man nix. Die braucht ja einigen Runden zum Aufbau, während die Einheiten und Gebäude im Spielstand der für das Video verwendet wurde alle per Debug "herbeigecheatet" sind. Dies ist also eher als "Feature-Video" anzusehen, nicht direkt als Gameplaytrailer.
Projekt "W" ist immernoch im Alpha-Stadium, und normalerweise würde ich in einem solchen Stadium kein Video releasen, da kann sich bis zum Release nämlich noch sehr viel ändern. Bitte denkt daran wenn ihr das Video seht und euch etwas auf- oder missfällt!

Es ist leicht über 2 Minuten lang, und ich habe die Qualität so angesetzt (768 KBit/s) dass man die Texte zumindest halbwegs erkennen kann. Ich bitte aber (wie im Intro zu lesen) ausdrücklich darum das Video nicht zu verbreiten, es nirgendwo zu verlinken oder es gar auf youtube o.ä. hochzuladen. Und dass itte ich zu respektieren, ansonsten gibts kein Bildmaterial mehr (klingt überzogen, aber was ich bisher schon in meiner Proggerlaufbahn erlebt hab will ich hier nicht näher erwähnen). Komprimiert ists mit dem Windows Media Format 9, ein aktueller Mediaplayer oder passender Codecpack muss also installiert sein.

Sollte der Link nicht mehr gehen, habe ich das Video wahrscheinlich aus Traffic-Gründen (hab aber 25GB/Monat, das sollte für DGL reichen) entfernt.


Und nun viel Spaß mit dem Video, hier gehts zum Download, sind ~13 MBytes.


Feedback ist wie immer erwünscht!

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jan 28, 2007 19:30 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Diesmal gibts kein richtiges Statusupdate, sondern eher ein "Kleinod". Hab zwar seit dem letzten Update wieder diverse Sachen gemacht, darunter auch mehrere neue Gebäude, ein schön anzusehendes, gut wiedererkennbares Logo fürs Spiel, usw. aber heute hab ich ein "Gebäude" erstellt dass recht untypsich fürs Spiel geworden ist und daher recht kurios wirkt :

Bild

Da sieht man mal wieder wie abwechslungsreich es letztendlich sein kann wenn man ein komplexeres Spiel macht. Das Gebäude gehört übrigens zur Kategorie "Bevölkerung" und hat als Haupteffekt eine Verbesserung der regionalen Zufriedenheit zur Folge. Langsam aber sicher nähere ich mich dann auch der 100% 3D-Modellversorgung der Gebäude, zumindest was den Teil der vom Anfang an erstellbaren Gebäude betrifft, erforschbare Gebäude folgen später. Obiges Modell ist dann 3D-Gebäude Nummer 25.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 80 Beiträge ]  Gehe zu Seite 1, 2, 3, 4, 5, 6  Nächste
Foren-Übersicht » Sonstiges » Projekte


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 31 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.069s | 18 Queries | GZIP : On ]