Tehadon
Storysequenzchen

Hier mal eine kleine Storysequenz, gehört übrigens zur Hauptstory.
Mehr verrate ich nicht, ihr könnt euch selber irgendetwas erfinden :biggrin:
Zitat:
Viel Spass beim Spekulieren.
mfG
Mehr verrate ich nicht, ihr könnt euch selber irgendetwas erfinden :biggrin:
Zitat:
Regen strömte von den Dächern herab, als eine in graue Leinen gehüllte Gestalt sich der schwach beleuchteten Pforte des Sanatoriums näherte. "Das Fleisch ist willig, der Geist ist schwach." hieß es in kantiger Schrift auf dem Messingschild, dass über der wuchtigen Doppeltür platziert wurde.
Für einen kurzen Moment zögerte die Gestalt, dann ergriff sie den Ring, der aus dem Mund eines schaurig dreinblickenden Gesichtes hing, und klopfte an. Es klang wie ein Stein, den man in einen sehr tiefen Brunnen fallen ließ.
Jemand öffnete den Sehschlitz und zwei blutunterlaufene Augen blickten die vermummte Gestalt an. "Ja?", krächzte es.
"Ich möchte meinen Vater besuchen..." Die Frau erlaubte sich ein verschlagenes Lächeln.
Ein Grunzen. "Habt ihr das Gold?"
Die junge Dame lächelte noch ein wenig breiter.
Einige Riegel wurden zurückgeschoben, dann bat sie ein blasser, völlig kahler Mann herein, sein pockennarbiges Gesicht verzerrt von der Mühe, die schwere Pforte zu öffnen. "Tretet ein." sprach er mit einer kratziger Stimme.
Sie trat ein - in das tote und von den Leiden tausender zerrissene Gemäuer des Sanatoriums.
Die Dame warf ihre Kapuze zurück, griff in die Tasche ihres Umhangs und holte ein klingelndes Ledersäckchen heraus. Der Aufseher rieb sich die knöchernen Hände. "Ahh...Euer..."Vater"...ist im Obergeschoss. Darf ich euch vielleicht führen?"
Sie runzelte die Stirn. "Wagt es! Nehmt euer Gold und lasst mich allein. Ich wünsche nicht gestört zu werden!"
Gierig nahm der Mann das Gold entgegen und ließ es in seiner zerfetzten Kutte verschwinden, dann wies er zur Treppe und kümmerte sich darum, die Pforte wieder zu verschließen. Dabei pfiff er eine Weise, die die Dame als "Das Lied der Engelmacherin" erkannte. Ihre Nackenhaare sträubten sich.
Mit großen Schritten eilte sie die verfallenen Steintreppen nach oben, wanderte einige Zeit durch die weitläufigen, kalten Flure. Und immer wurde sie begleitet von den Schreien der verängstigten Menschen, deren Augen mehr sahen als Sterblichen bestimmt war.
Schließlich erreichte sie die Zelle. Jeder halbwegs intelligente Mensch konnte die Schlösser des Sanatoriums öffnen. Ein Jammer, dass die Insassen dazu nicht in der Lage sind, dachte die Dame, während sie mit einer Nadel in dem rostigen Schlüsselloch stocherte. Ein Klicken. Ein Quietschen. Ein scheußliches Lachen.
"Sind sie zurück?" sabberte der in der Ecke zusammengekauerte Mann.
Sie lächelte.
"Was wollt ihr noch von mir? WAS? WAS?" Zornentbrannt erhob er sich. Schwankend stürzte er auf sie zu, griff nach ihrem goldgerahmten Gesicht...
Die Dame holte mit der flachen Hand aus und schlug ihn nieder.
"Shhhh...wir waren schoneinmal hier?" Zuckersüß waren ihre Worte, sie strich dem Verdammten durchs verfilzte Haar.
Dieser wog auf Knien vor und zurück und erzählte.
Er erzählte vieles.
Und als die Dame die Zelle verließ, schlief er den ewigen Schlaf der Erlösung.
Sie verschloss die Eisentür sorgsam, ehe sie durch die Flure zu einem der vergitterten Fenster eilte. Sie löste die Schrauben, hob das Gitter heraus und sprang über die Dächer in die regennasse Nacht hinaus.
Jemand war vor ihr hier - jemand wusste, was geschehen war.
Und als sie vom Dach der örtlichen Schmiede sprang, nahm sie der Wind in die Arme und trug sie gen Westen.
Für einen kurzen Moment zögerte die Gestalt, dann ergriff sie den Ring, der aus dem Mund eines schaurig dreinblickenden Gesichtes hing, und klopfte an. Es klang wie ein Stein, den man in einen sehr tiefen Brunnen fallen ließ.
Jemand öffnete den Sehschlitz und zwei blutunterlaufene Augen blickten die vermummte Gestalt an. "Ja?", krächzte es.
"Ich möchte meinen Vater besuchen..." Die Frau erlaubte sich ein verschlagenes Lächeln.
Ein Grunzen. "Habt ihr das Gold?"
Die junge Dame lächelte noch ein wenig breiter.
Einige Riegel wurden zurückgeschoben, dann bat sie ein blasser, völlig kahler Mann herein, sein pockennarbiges Gesicht verzerrt von der Mühe, die schwere Pforte zu öffnen. "Tretet ein." sprach er mit einer kratziger Stimme.
Sie trat ein - in das tote und von den Leiden tausender zerrissene Gemäuer des Sanatoriums.
Die Dame warf ihre Kapuze zurück, griff in die Tasche ihres Umhangs und holte ein klingelndes Ledersäckchen heraus. Der Aufseher rieb sich die knöchernen Hände. "Ahh...Euer..."Vater"...ist im Obergeschoss. Darf ich euch vielleicht führen?"
Sie runzelte die Stirn. "Wagt es! Nehmt euer Gold und lasst mich allein. Ich wünsche nicht gestört zu werden!"
Gierig nahm der Mann das Gold entgegen und ließ es in seiner zerfetzten Kutte verschwinden, dann wies er zur Treppe und kümmerte sich darum, die Pforte wieder zu verschließen. Dabei pfiff er eine Weise, die die Dame als "Das Lied der Engelmacherin" erkannte. Ihre Nackenhaare sträubten sich.
Mit großen Schritten eilte sie die verfallenen Steintreppen nach oben, wanderte einige Zeit durch die weitläufigen, kalten Flure. Und immer wurde sie begleitet von den Schreien der verängstigten Menschen, deren Augen mehr sahen als Sterblichen bestimmt war.
Schließlich erreichte sie die Zelle. Jeder halbwegs intelligente Mensch konnte die Schlösser des Sanatoriums öffnen. Ein Jammer, dass die Insassen dazu nicht in der Lage sind, dachte die Dame, während sie mit einer Nadel in dem rostigen Schlüsselloch stocherte. Ein Klicken. Ein Quietschen. Ein scheußliches Lachen.
"Sind sie zurück?" sabberte der in der Ecke zusammengekauerte Mann.
Sie lächelte.
"Was wollt ihr noch von mir? WAS? WAS?" Zornentbrannt erhob er sich. Schwankend stürzte er auf sie zu, griff nach ihrem goldgerahmten Gesicht...
Die Dame holte mit der flachen Hand aus und schlug ihn nieder.
"Shhhh...wir waren schoneinmal hier?" Zuckersüß waren ihre Worte, sie strich dem Verdammten durchs verfilzte Haar.
Dieser wog auf Knien vor und zurück und erzählte.
Er erzählte vieles.
Und als die Dame die Zelle verließ, schlief er den ewigen Schlaf der Erlösung.
Sie verschloss die Eisentür sorgsam, ehe sie durch die Flure zu einem der vergitterten Fenster eilte. Sie löste die Schrauben, hob das Gitter heraus und sprang über die Dächer in die regennasse Nacht hinaus.
Jemand war vor ihr hier - jemand wusste, was geschehen war.
Und als sie vom Dach der örtlichen Schmiede sprang, nahm sie der Wind in die Arme und trug sie gen Westen.
Viel Spass beim Spekulieren.
mfG
State-Queue und Helme

Lang ists her!
Ich habe eigentlich vor längerer Zeit gesagt, ich werde mich demnächst mehr um Grafik kümmern. Leider ist das irgendwie sehr gescheitert, und wie auch immer, bin ich schon wieder an der Spielmechanik gelandet. Sorry an alle Grafikgeilen da draussen, ihr werdet euch wohl weiterhin gedulden müssen
Wie dem auch sei, ich will mich mal endlich um den Kampf kümmern. Eine simple geskriptete Kampf-KI habt ich euch ja schon gezeigt, und auch sonst ermöglicht das neue (na gut, so neu ist es auch nicht) State-System mit der State-Queue einige coole Sachen.
Um diesen Eintrag etwas zu strecken, will ich euch diese Statequeue näher erläutern. Eine Queue ist, eine Warteschleife. Sie funktioniert nach dem First-In, First-Out-Prinzip. Das ist eine einfache Liste, die bei 0 beginnt, und unendlich lang ist. 0 ist das 'oberste' Element.
Mit dieser State-Queue kann man komplexer aufeinanderbauende Vorgänge basteln, z.B. vor allem in Kampfsituationen.
Man macht jetzt z.B.
Code: [AUSKLAPPEN]
$npc->addState (AI_FIGHT_STATE_MOVE_RIGHT, "");
$npc->addState (AI_FIGHT_ATTACK, "");
$npc->addState (AI_FIGHT_STATE_MOVE_LEFT, "");
Und schon macht der NPC folgendes: Er weicht zuerst nach rechts aus, greift an, und weicht anschliessend nach links aus.
Ruft man jetzt diesse 'addState' auf, wird ein neues Item am Ende der Queue hinzugefügt.
Jedes State ist jedoch irgendwann fertig! Beim Laufen zu einem Waypoint wäre das der Punkt, wo man den Waypoint erreicht. Ist diese Bedingung erfüllt, werden alle Items um eins nach oben geschoben.
Hier ein Bild von der ganzen Funktionsweise im Sourcecode.
Ich habe noch zwischenzeitlich das Rüstungssystem mehr oder weniger eingebaut. Helme sind schonmal ohne Probleme möglich, und werden auch beim Kampf miteinbezogen.
Das Skript dazu sieht so aus:
Code: [AUSKLAPPEN]
Das Ergebnis würde dann so aussehen. Ich weiss schon, sieht etwas albern aus. Aber es ging noch nicht um die Grafik, sondern um die Funktionalität, Helme zu machen krieg ich selber nicht hin.
Ich wurde schon öfters gefragt, wie das mit den Rüstungen später funktioniert. Eigentlich sehr simpel, es gibt nämlich keine Slots wie sonst immer, wo man jedes Item reinschieben kann.
Man equippt ein Item einfach, das System sorgt dann dafür, das es korrekt gesetzt wird. Ein Zweihänder-Schwert wird z.B. automatisch am Rücken festgesetzt, ein kleineres Einhänder an der Hüfte. Ein Helm wird automatisch auf den Kopf gesetzt, eine Rüstung automatisch auf den Körper, etc.
mfG
Ich habe eigentlich vor längerer Zeit gesagt, ich werde mich demnächst mehr um Grafik kümmern. Leider ist das irgendwie sehr gescheitert, und wie auch immer, bin ich schon wieder an der Spielmechanik gelandet. Sorry an alle Grafikgeilen da draussen, ihr werdet euch wohl weiterhin gedulden müssen

Wie dem auch sei, ich will mich mal endlich um den Kampf kümmern. Eine simple geskriptete Kampf-KI habt ich euch ja schon gezeigt, und auch sonst ermöglicht das neue (na gut, so neu ist es auch nicht) State-System mit der State-Queue einige coole Sachen.
Um diesen Eintrag etwas zu strecken, will ich euch diese Statequeue näher erläutern. Eine Queue ist, eine Warteschleife. Sie funktioniert nach dem First-In, First-Out-Prinzip. Das ist eine einfache Liste, die bei 0 beginnt, und unendlich lang ist. 0 ist das 'oberste' Element.
Mit dieser State-Queue kann man komplexer aufeinanderbauende Vorgänge basteln, z.B. vor allem in Kampfsituationen.
Man macht jetzt z.B.
Code: [AUSKLAPPEN]
$npc->addState (AI_FIGHT_STATE_MOVE_RIGHT, "");
$npc->addState (AI_FIGHT_ATTACK, "");
$npc->addState (AI_FIGHT_STATE_MOVE_LEFT, "");
Und schon macht der NPC folgendes: Er weicht zuerst nach rechts aus, greift an, und weicht anschliessend nach links aus.
Ruft man jetzt diesse 'addState' auf, wird ein neues Item am Ende der Queue hinzugefügt.
Jedes State ist jedoch irgendwann fertig! Beim Laufen zu einem Waypoint wäre das der Punkt, wo man den Waypoint erreicht. Ist diese Bedingung erfüllt, werden alle Items um eins nach oben geschoben.
Hier ein Bild von der ganzen Funktionsweise im Sourcecode.
Ich habe noch zwischenzeitlich das Rüstungssystem mehr oder weniger eingebaut. Helme sind schonmal ohne Probleme möglich, und werden auch beim Kampf miteinbezogen.
Das Skript dazu sieht so aus:
Code: [AUSKLAPPEN]
$ItTestHelm = new (item);
$ItTestHelm->meshpath = "data\modelle\item\schwererHelm.b3d";
$ItTestHelm->name = "Schwerer Helm";
$ItTestHelm->handslot = "slot_kopf";
$ItTestHelm->flag = ITEM_FLAG_ARMOR_HELM;
$npc->equipItem ($ItTestHelm);
$ItTestHelm->meshpath = "data\modelle\item\schwererHelm.b3d";
$ItTestHelm->name = "Schwerer Helm";
$ItTestHelm->handslot = "slot_kopf";
$ItTestHelm->flag = ITEM_FLAG_ARMOR_HELM;
$npc->equipItem ($ItTestHelm);
Das Ergebnis würde dann so aussehen. Ich weiss schon, sieht etwas albern aus. Aber es ging noch nicht um die Grafik, sondern um die Funktionalität, Helme zu machen krieg ich selber nicht hin.
Ich wurde schon öfters gefragt, wie das mit den Rüstungen später funktioniert. Eigentlich sehr simpel, es gibt nämlich keine Slots wie sonst immer, wo man jedes Item reinschieben kann.
Man equippt ein Item einfach, das System sorgt dann dafür, das es korrekt gesetzt wird. Ein Zweihänder-Schwert wird z.B. automatisch am Rücken festgesetzt, ein kleineres Einhänder an der Hüfte. Ein Helm wird automatisch auf den Kopf gesetzt, eine Rüstung automatisch auf den Körper, etc.
mfG
Multiskins

So, wie letztes mal versprochen, funktioniert auch das Multiskin-System beim Gras fehlerfrei. Das ermöglicht verschiedene Grassorten, was schon etwas interessanter aussieht.
Natürlich, ist einfach sowas umzusetzen, aber funktionieren tut es trotzdem.
Feedback ist natürlich weiterhin erwünscht.
mfG
Natürlich, ist einfach sowas umzusetzen, aber funktionieren tut es trotzdem.
Feedback ist natürlich weiterhin erwünscht.
mfG
Gras

So, ich hab mal wieder das alte Grassystem hervorgekramt, und damit rumgespielt / erweitert. Die Gräser werden nun zufällig eingefärbt (in verschiedenen grüntönen).
Es ist nach wie vor ziemlich schnell, bei all den folgenden Screenshots, konnte ich keinen FPS-Verlust feststellen.
(Ist nich so gut positioniert)
(Geschwindigkeitstest)
Und dann normal im Spiel drin.
Was demnächst noch ins System kommt, wären vlt Multiskins, also Texturen von mehreren Arten.
mfG
Es ist nach wie vor ziemlich schnell, bei all den folgenden Screenshots, konnte ich keinen FPS-Verlust feststellen.
(Ist nich so gut positioniert)
(Geschwindigkeitstest)
Und dann normal im Spiel drin.
Was demnächst noch ins System kommt, wären vlt Multiskins, also Texturen von mehreren Arten.
mfG
GUI und so Zeugs

Ich hab mal angefangen für ein paar GUI-Sachen die entsprechenden HDSS-Wrapper zu schreiben. Bisher funktionieren schon Messageboxes und Buttons.
Messageboxes wie oben gesehen kann man z.B. für Items nutzen. Man macht ein Item namens "Wetterstein", welches möglich macht, das man ddas Wetter manipuliert.
Das Skript dazu würde dann ungefähr so aussehen:
Code: [AUSKLAPPEN]
void wetterStein_onUse ()
{
var $mBox;
$mBox = new (GUI_MsgBox);
$mBox->caption = "Was für ein Wetter soll entstehen?";
var $button;
$button = new (GUI_Button);
$button->caption = "Regen";
$button->onClick = fref (onClick);
$mBox->addButton ($button);
// alle anderen Buttons auch noch hinzufügen ....
};
void onClick ()
{
if ($this->caption == "Nebel")
{
$world->setFovRange (1,100); // Nebel verdichten
};
// ....
};
Die GUI sieht recht billig aus, vorerst wird sie aber so bleiben. Eigentlich ist Willi für GUI verantwortlich, aber der hat im Moment grössere Internet-Probleme, wesshalb ich es erstmal so provisorisch mache.
Später wird das ganze auch 3D-Berechnet sein, im moment ists noch simpel 2D. Ich bin noch auf der Suche nach einer geeigneten 3D zu 2D-Engine. Draw3D war wohl doch nicht das, was wir brauchten.
Desweiteren habe ich im Story-Bereich ein paar Dinge gemacht, ich überlege im Moment noch, eine kleine Sequen rauszugeben.
mfG
Messageboxes wie oben gesehen kann man z.B. für Items nutzen. Man macht ein Item namens "Wetterstein", welches möglich macht, das man ddas Wetter manipuliert.
Das Skript dazu würde dann ungefähr so aussehen:
Code: [AUSKLAPPEN]
void wetterStein_onUse ()
{
var $mBox;
$mBox = new (GUI_MsgBox);
$mBox->caption = "Was für ein Wetter soll entstehen?";
var $button;
$button = new (GUI_Button);
$button->caption = "Regen";
$button->onClick = fref (onClick);
$mBox->addButton ($button);
// alle anderen Buttons auch noch hinzufügen ....
};
void onClick ()
{
if ($this->caption == "Nebel")
{
$world->setFovRange (1,100); // Nebel verdichten
};
// ....
};
Die GUI sieht recht billig aus, vorerst wird sie aber so bleiben. Eigentlich ist Willi für GUI verantwortlich, aber der hat im Moment grössere Internet-Probleme, wesshalb ich es erstmal so provisorisch mache.
Später wird das ganze auch 3D-Berechnet sein, im moment ists noch simpel 2D. Ich bin noch auf der Suche nach einer geeigneten 3D zu 2D-Engine. Draw3D war wohl doch nicht das, was wir brauchten.
Desweiteren habe ich im Story-Bereich ein paar Dinge gemacht, ich überlege im Moment noch, eine kleine Sequen rauszugeben.
mfG
das Skript zum Video

Hier noch, wie versprochen das Skript, zum Video.
Also, das Skript ist grauenhaft, die Struktur selber auch sehr schlimm. Und ihr seht vlt einige Workarounds.
Ansonsten, hier noch der Brunnen von GB in Wireframe (wurde ja ein paar mal gewünscht):
mfG
Also, das Skript ist grauenhaft, die Struktur selber auch sehr schlimm. Und ihr seht vlt einige Workarounds.
Ansonsten, hier noch der Brunnen von GB in Wireframe (wurde ja ein paar mal gewünscht):

mfG
Video auf Youtube

So, die, die zu faul waren das 60 mb grosse Video zu downloaden, unser 3D-Mann hats auf Youtube hochgeladen.
Mit noch mieserer Qualität, aber was will man machen.
Ihr werdet bald sicherlich eines mit besserer kriegen.
http://uk.youtube.com/watch?v=Tr-9-Jnlu-k
mfG
Mit noch mieserer Qualität, aber was will man machen.
Ihr werdet bald sicherlich eines mit besserer kriegen.
http://uk.youtube.com/watch?v=Tr-9-Jnlu-k
mfG
B3DEntity, B3DTexture, Terrain ...

So, ich habe weiterhin primär an Terraintexturierung gearbeitet.
Ich habe schon vor einiger Zeit beschlossen, die Terraintexturierung per HDSS zu machen, also extern. Dafür musste ich zwei neue Klassen machen: B3DEntity und B3DTexture.
So, wie funktioniert das jetzt? Wenn in dem mapfile ein Terrain erstellt wird, wird eine Funktion im Skript aufgerufen. Die ist natürlich flexibel, aber nehmen wir an sie heisst 'setTerrainTexture'. Diese kriegt einen Parameter $this, die B3DEntity-Instanz. Diese Klasse, managt alle B3D-Entitys extern. Ein B3D-Entity könnte z.B. ein statisches Mesh, ein Terrain, eine Kamera, ein Licht, etc. sein.
Ich habe hier die Unabhängigkeit von der Blitz3D-Engine genommen.
Die B3DTexture-Instanzen repräsentieren jede Textur im Speicher.
So, jetzt kann man durch Multitexturierung (Mehrere Texturen auf ein Objekt) den Terrain texturieren. Das würde dann z.B. bei einer einfachen Textur so aussehen:
Code: [AUSKLAPPEN]
//
void setTerrainTexture ()
{
var $tex;
$tex = new (B3DTexture);
$tex->load ("data\gfx\terrain\t_gras_12.JPG", B3D_TEX_FLAG_COLOR);
$this->setTexture ($tex, 0);
};
Man kann auch schon mit tex->blend () die Texturenübergänge etc. setzen.
Hier noch ein anderes Beispiel, wie man die B3DEntity-Klasse anwendet:
Code: [AUSKLAPPEN]
var $ent;
$ent = new (B3DEntity),
$ent->load ("data\modelle\platzhalter\haus.B3D");
$ent->position (0,0,10);
$ent->move (0,2,0);
$ent->turn (0,10,0);
$ent->setColor (255,0,0); // Mache es rot
$ent->setAlpha (f (0,1)); // Setze Alpha-Wert
Hier noch ein zwei Tage altes Bild (sieht mittlerweile schon besser aus)
mfG
Ich habe schon vor einiger Zeit beschlossen, die Terraintexturierung per HDSS zu machen, also extern. Dafür musste ich zwei neue Klassen machen: B3DEntity und B3DTexture.
So, wie funktioniert das jetzt? Wenn in dem mapfile ein Terrain erstellt wird, wird eine Funktion im Skript aufgerufen. Die ist natürlich flexibel, aber nehmen wir an sie heisst 'setTerrainTexture'. Diese kriegt einen Parameter $this, die B3DEntity-Instanz. Diese Klasse, managt alle B3D-Entitys extern. Ein B3D-Entity könnte z.B. ein statisches Mesh, ein Terrain, eine Kamera, ein Licht, etc. sein.
Ich habe hier die Unabhängigkeit von der Blitz3D-Engine genommen.
Die B3DTexture-Instanzen repräsentieren jede Textur im Speicher.
So, jetzt kann man durch Multitexturierung (Mehrere Texturen auf ein Objekt) den Terrain texturieren. Das würde dann z.B. bei einer einfachen Textur so aussehen:
Code: [AUSKLAPPEN]
//
void setTerrainTexture ()
{
var $tex;
$tex = new (B3DTexture);
$tex->load ("data\gfx\terrain\t_gras_12.JPG", B3D_TEX_FLAG_COLOR);
$this->setTexture ($tex, 0);
};
Man kann auch schon mit tex->blend () die Texturenübergänge etc. setzen.
Hier noch ein anderes Beispiel, wie man die B3DEntity-Klasse anwendet:
Code: [AUSKLAPPEN]
var $ent;
$ent = new (B3DEntity),
$ent->load ("data\modelle\platzhalter\haus.B3D");
$ent->position (0,0,10);
$ent->move (0,2,0);
$ent->turn (0,10,0);
$ent->setColor (255,0,0); // Mache es rot
$ent->setAlpha (f (0,1)); // Setze Alpha-Wert
Hier noch ein zwei Tage altes Bild (sieht mittlerweile schon besser aus)
mfG
Grafik, wir kommen

So, gameplay-technisch steht ja jetzt doch einiges. Quest-System ist fertig, würd ich mal sagen. Natürlich, mit dem hinzukommenden Fraktionssystem wirds kleinere Änderungen geben, aber Quests gehen schon.
Items gibts ja auch schon, Dialoge funktionieren auch nahezu fehlerfrei. Nun, sogar das Inventar funktioniert, nur ist die Visualisierung ...
Es steht eigentlich schon eine recht gute Basis für ein neues, schönes Inventar. Willi hat ja vor längerem die GUI-Itembox perfektioniert, und durch 3D-Grafik visualisieren lassen. Transparenz-Effekten etc. steht nichts im Weg.
Was hier noch fehlt ist ein entsprechendes HDSS-Modul, z.B. die Inventar-Events. Ich will auch das Inventar stark nach aussen basieren, um Flexibilität etc. zu gewähren.
So, nur noch etwas HDSS-Mässiges: Ich glaube mittlerweile sind alle gebrauchten Features drin. Konstanten, welche inplizit erstellt werden. Intern schreibt man also z.B. HDSS_AddConst ("EINE_KONSTANTE", WERT);
Eben, alles noch intern, aber das nach aussen zu verlagern, wird ein sehr kleines Problem.
Dann, And / Or-Operatoren gehen auch. Stringverknüpfungen auch.
Und ausserdem hab ich auch die lustigen HDSS-Bugs ins Nirvana befördert.
Mal ein kleiner Code:
Code: [AUSKLAPPEN]
; BB-Code:
; ...
HDSS_AddConst ("TEST", "15");
; ...
Code: [AUSKLAPPEN]
// HDSS:
if (Test == 15 && 1 == 1)
{
message (strFormat ("Test hat den Wert {1}", Test));
}
Genug über HDSS geredet.
Kommen wir zu dem, wonach mittlerweile die meisten schreien: Grafikverbesserung. Ich versteh es schon, allein schon der Terrain sieht... scheusslich aus. Desshalb werd ich mich in nächster Zeit vermehrt mit Grafik befassen. Die grösste Priorität haben sicherlich die Terrains, aber auch ein System für Flüsse / Wasser, vlt noch Lensflares, etc.
Und nacher, wenn unser Animations-Experte, ein paar entsprechede Animationen nachgeliefert hat, wird weiter an der Kampf-AI gewerkelt. Sobald auch das einen annehmbaren Status erreicht hat, gehts an Magie und Fernkampf.
Das liegt noch in weiter Ferne, aber es steht auch schon einiges hinter uns.
Hier noch ein paar Bilderchen.
(Ihr seht, Terrain ist grässlich)
mfG
Items gibts ja auch schon, Dialoge funktionieren auch nahezu fehlerfrei. Nun, sogar das Inventar funktioniert, nur ist die Visualisierung ...
Es steht eigentlich schon eine recht gute Basis für ein neues, schönes Inventar. Willi hat ja vor längerem die GUI-Itembox perfektioniert, und durch 3D-Grafik visualisieren lassen. Transparenz-Effekten etc. steht nichts im Weg.
Was hier noch fehlt ist ein entsprechendes HDSS-Modul, z.B. die Inventar-Events. Ich will auch das Inventar stark nach aussen basieren, um Flexibilität etc. zu gewähren.
So, nur noch etwas HDSS-Mässiges: Ich glaube mittlerweile sind alle gebrauchten Features drin. Konstanten, welche inplizit erstellt werden. Intern schreibt man also z.B. HDSS_AddConst ("EINE_KONSTANTE", WERT);
Eben, alles noch intern, aber das nach aussen zu verlagern, wird ein sehr kleines Problem.
Dann, And / Or-Operatoren gehen auch. Stringverknüpfungen auch.
Und ausserdem hab ich auch die lustigen HDSS-Bugs ins Nirvana befördert.
Mal ein kleiner Code:
Code: [AUSKLAPPEN]
; BB-Code:
; ...
HDSS_AddConst ("TEST", "15");
; ...
Code: [AUSKLAPPEN]
// HDSS:
if (Test == 15 && 1 == 1)
{
message (strFormat ("Test hat den Wert {1}", Test));
}
Genug über HDSS geredet.
Kommen wir zu dem, wonach mittlerweile die meisten schreien: Grafikverbesserung. Ich versteh es schon, allein schon der Terrain sieht... scheusslich aus. Desshalb werd ich mich in nächster Zeit vermehrt mit Grafik befassen. Die grösste Priorität haben sicherlich die Terrains, aber auch ein System für Flüsse / Wasser, vlt noch Lensflares, etc.
Und nacher, wenn unser Animations-Experte, ein paar entsprechede Animationen nachgeliefert hat, wird weiter an der Kampf-AI gewerkelt. Sobald auch das einen annehmbaren Status erreicht hat, gehts an Magie und Fernkampf.
Das liegt noch in weiter Ferne, aber es steht auch schon einiges hinter uns.
Hier noch ein paar Bilderchen.
(Ihr seht, Terrain ist grässlich)
mfG
Gehe zu Seite Zurück 1, 2, 3, 4, 5, 6 ... 10, 11, 12 Weiter