Elfenkrieg (Vorläufiger Name)

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

Worklogs Elfenkrieg (Vorläufiger Name)

Server

Sonntag, 2. August 2009 von TimBo
Der Server

Cyderic und ich schreiben das Spiel zusammen und haben die Aufgabeneinteilung so gemacht, das er erstmal den Client übernimmt und ich den Server.

Das die Programme fehlerfrei Funktionieren, bedarf es einer starken zusammenarbeit, die wir über XFire gegeben haben.
Es werden zu jedem Problem spezielle Protokolle angefertigt, die es eindeutig festlegen, wie der Client und der Server zu agieren haben, wenn sie ein Paket halten.

Das Spiel läuft auf einem Root Server das Protokoll, das wir zum Transfer benutzen ist TCP. Dies war schon nach ein paar Minuten fest entschieden.



Wie arbeitet der Server?
Die handhabung mit den Daten der Spieler basiert auf Types. Es gibt 2 Klassen.
Einmal den Spieler an sich, in dem man alles über den Spieler speichert
und einmal eine Klasse, welche die TCP-Streams speichert.
Logt sich jemand ein, wird dem Streamtyp das Handle von dem zugehörigen Gamer angehängt.
So kann man mit Object schnell auf die Daten des Gamers zugreifen.


Was kann der Server?
Arrow Alle 10 Minuten schreibt der Server alle Types der Klasse Gamer in eine Textdatei, um bei Crashes ein Backup zu haben. Es werden neue Dateien erstellt, das soga beim Zusammenbruch beim Schreibvorgang die alten Backups unberührt bleiben.
Arrow Backups können vollständig geladen werden, es gehen keine Infromationen verloren.
Arrow Der Server speichert alle Characterbilder. Beim einloggen sendet der Client einen Timestamp, stimmt dieser mit dem des gespeicherten Bildes überein, so muss das Bild nicht immer neu übertragen werden. Traffic sparen.
Arrow Der Server schreibt vollautomatisch Aktivierungsemails und sendet diese dann auch ab. Dies erfolgt über ein zweites Programm, da dieser Vorang etwas dauert und es nicht gut wäre, wenn solange der Server lahm ist.
Arrow Schnelles Switchen von Stream zu dem jeweiligen Gamer.
Arrow Es gibt einen eigenes Debugfenster. Siehe Screenshot. Alle dortigen Daten werden auch in eine txt Datei gespeichert.
Arrow Loginroutine steht schon von Client und Server.


Hier noch der Screenshot:
man sieht den -Hauptserver den -Mailserver und das -Logfenster beider Server.
user posted image



Danke fürs Lesen
Viele Grüße
Cyderic, TimBo und Randall Flagg Very Happy

Der Anfang

Sonntag, 2. August 2009 von Cyderic
Hallo!

Hiermit möchte ich einmal unser neues Projekt vorstellen. Im Moment heisst es noch "Elfenkrieg", aber das ist sicher nicht der finale Name. Viel zu einfallslos.

Bei unserem Spiel handelt es sich um ein Onlinespiel in dem sich alles um einen Krieg zwischen Elfen und Menschen dreht. Randall schreibt gerade eine genauere Story dazu. Man erstellt sich einen Charakter als Elf oder Mensch, wählt eine von 3 Klassen und kann dann seiner Rasse helfen den Krieg zu gewinnen.

Bevor ihr jetzt mit den Gedanken "Boah noch so MMORPG freaks" aufhört zu lesen räume ich hier gleich einige Dinge ein:

-> Es wird kein 3D Spiel mit HDR, AntiAliasing und haste nich gesehen werden
-> Es wird keine frei begehbare Welt geben
-> Es wird keine individuellen Charaktere geben die je nach Ausrüstung anders aussehen

Warum nicht? Weil wir dann niemals fertig werden würden und weil wir uns keinen Server leisten können der soetwas kann. Wir sind Hobbyprogrammierer, also können wir auch kein Ultima Online nach programmieren.

Was wird denn nun machbar sein?

Das Kampfsystem wird Rundenbasiert und inaktiv sein. Man kann den Kampf also nicht aktiv beeinflussen. Die ganze Taktische Vielfalt soll im Ausrüstungssystem liegen. Jedes Ausrüstungsteil kann eine bestimmte Anzahl von Runen / Implantate enthalten. Diese haben bestimmte Effekte die zu bestimmten Bedingungen ausgeführt werden. Jede Klasse hat ihre eigenen Runen / Implantate und kann nur diese verwenden.

Weiterhin gibt es auch bei uns Attribute:

Stärke (Mehr Nahkampfschaden)
Geschick (Mehr Fernkampfschaden)
Intelligenz (Mehr Magischer Schaden)
Glück (Höhere Chance auf einen kritischen Treffer)

Und ein Zusatzattribut das je nach Klasse einen anderen Effekt hat. Einige Vorschläge stehen schon auf dem Konzeptblatt, aber es steht noch nicht genau fest.

Es soll verschiedene Kampfmodi geben: 1on1, Gildenkrieg, Eroberung.

Eroberung ist der interessanteste Mod. Es wird einen großen Kontinent geben auf den sich die zwei Fraktionen bekämpfen werden. Als Spieler kann man diese Karte einsehen, und sich bei ener umstrittenen Region zu einem Kampf anmelden. Sind in einer Region je 5 Kämpfer bereit, wird der Kampf vom Server berechnet. Die Fraktion die öfter in einer Region gewinnt, bekommt diese auch. Die verschiedenen Regionen bieten verschiedene Rohstoffe an die man dann abbauen kann.

Wenn man einer Gilde beigetreten ist, oder eine leitet, kann man mit diesen Rohstoffen dann Gildenausbauten anstellen. Diese könnten zum Beispiel prozentual mehr Erfahrungspunkte geben, mehr Gold und so weiter.

Gildenkriege sind im Moment nur zwischen Mensch und Elf geplant. Das sind ganz gezielte Kriege. Ein Gildenoffizier kann jederzeit, zusammen mit 4 weiteren Kriegern, einen Angriff gegen die gegnerische Gilde durchführen. Die Gewinner bekommen dabei 10% Des Goldes der gegnerischen Mitglieder auf ihre Gilde gutgeschrieben.

Der PvE Content steht noch nicht genau fest, aber auch hier sind schon Planungen geschrieben. 8 vollbeschriebene Seiten Konzeptpapier existieren und halten fest was geplant ist. Das soll uns davor schützen vor lauter Ideen den Überblick und die Motivation zu verlieren. Wir werden uns zuerst darauf konzentrieren überhaupt einmal eine spielbare Version rauszubringen. Die erste wird kommen sobald 1on1 und PvE Content stehen.

Hier noch einige erste Screens:
www.feuco.de/screen01.jpg
www.feuco.de/screen02.jpg
www.feuco.de/screen03.jpg

Was bereits funktioniert:

Man kann sich mit dem Client registrieren.
Hierbei ist es möglich ein eigenes Charakterbild von der Festplatte zu laden (das soll neben der Ausrüstung die einzige Individualisierung sein). Alle Daten und das Bild werden auf den Server geladen.
Anschliessend bekommt man eine Aktivierungsemail mit einem kleinen Code mit der man den Account freischalten kann.
Der Login funktioniert, und ein System das die Charakterbilder des Clienten aktualisiert ist heute auch fertig geworden. Die Bilder die der Client von anderen Spielern braucht werden verschlüsselt geschickt und auf Aktualität überprüft.
Desweiteren ist es möglich Charakterbilder zu deaktivieren.
Angefangen haben wir am 31.07.2009

Ich hoffe ich konnte euch einen vernünftigen Einblick auf unser Projekt geben. TimBo wird hier hin und wieder Einträge zum Server veröffentlichen während ich mich weiter um den Clienten kümmere.

Ansonsten brauchen wir noch unbedingt einen Grafiker der uns tatkräftig unterstützt. Grafiken für die GUI, die Symbole, die Kampfeffekte später und besonders Ausrüstungsgegenstände müssten gepixelt werden.
Wer also Interesse hat möge sich bitte melden.
Als Entlohnung können wir Creditseinträge bieten aber auch Geld ist nicht ausgeschlossen.

Vielen Dank fürs lesen!

Gehe zu Seite Zurück  1, 2