Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

17.11.2008, 20:36

Ich finde eure Begeisterung und Engagement super.
Wenn ich erlich bin, verspür ich aber bisschen Mitleid. Den ein MMORPG ist für ein Hobby-Team mit eurem Erfahrungslevel nicht zu stemmen - leider.
Es ist sowieso genrell kaum für irgendein Hobby-Team zu stämmen. Das zeigt die anzahl spielbarer Hobby MMORPG's, die sich afaik auf 2 belaufen - weltweit.
Ich wäre sogar skeptisch, wenn ihr 3 grössere Spiele veröffentlicht hättet - darunter ein Multiplayer Spiel. Soweit ich aber mitbekommen habe, belaufen sich eure Arbeits-Referenzen gegen Null (ich lass mich gerne vom Gegenteil überzeugen).
Meistens stellt sich dann heraus das die Modeller (jene die nach 2Monaten noch zu erreichen sind) nicht mal in der Lage sind eine UV-Map zu erstellen, geschweigeden die Textur für das Modell zu kreieren.

Aber was solls. Man muss schliesslich seine Erfahrungen machen. Da nützt es wohl auch nichts, wenn ich euch Rate _dringend_ kleinere Brötchen zu backen...

hanse

Alter Hase

Beiträge: 472

Wohnort: Wien

  • Private Nachricht senden

2

17.11.2008, 20:39

Och ich denke so schwer ist es aus Technischer sich auch wieder nicht. Nur die, die genug Ahnung haben haben meist auch kein Interesse dran.

Der Gamecontent ist natürlich das eigentliche Problem, aber wer braucht den schon 8-)

3

17.11.2008, 20:43

Zitat von »"hanse"«

Och ich denke so schwer ist es aus Technischer sich auch wieder nicht.


Ufff. Da täuschst du dich mal ganz gewaltig.

Um hier mal mit gewissen Vorstellungen aufzuräumen erlaube ich mir ein Post aus einem anderen Forum zu zitieren.

Zitat

Ledin am Montag 18.08.2008 auf developia auf die Frage hin, wo der Unterschied zwischen Multiplayer und MMO liege
Verfasst am: Mo Aug 18, 2008 10:32 am Titel: Antworten mit Zitat
Ich bin jetzt nicht gerade ein Experte auf dem Gebiet, will's aber mal versuchen.
Wie schon gesagt, ist eine MMO-Welt persistent und muss hunderte, wenn nicht tausende Spieler gleichzeitig verkraften.
Die Persistenz fordert, dass der Server 24/7 läuft. Deshalb darf er unter keinen Umständen Memory Leaks aufweisen. Hier muss man ein rigoroses Speichermanagement haben, es empfiehlt sich auch der Einsatz von Code-Analyse-Software, die so manches Leak aufdecken kann.
Du kannst den Server nicht mal eben neustarten, so wie man es beim Heimrechner machen kann.

Es wird ein leistungsfähiger Datenbankserver benötigt, der auf keinen Fall direkt vom Client aus zugreifbar sein darf, sondern nur durch eine vorgeschaltete Instanz, die nur bestimmte Änderungen auf der DB durchführen kann. Als DB-Server braucht man was richtig Leistungsfähiges. Auch wenn z.B. Tibia auf Mysql setzt, haben mich deren Leistungsdaten (Präsentation auf der letzten Quo Vadis) nicht überzeugt, sodass ich zu den großen raten würde (Oracle, MS SQL Server, vielleicht IBM DB2). Diese erfüllen auch gleich alle ACID-Kriterien (sehr wichtig!) und haben oft Interfaces zu Backup-Software (z.B. Tape), auf die die Datenbank zumindest täglich gesichert werden muss.
Auch im Falle eines Blitzeinschlags, der deine komplette Hardware schrottet, musst du in der Lage sein, die Daten von heute früh wiederherzustellen (Disaster Recovery). Das ist bei kommerziellen, datenbankgestützten Programmen wie Banken-Software auch nicht anders, auch wenn die das oft noch ein Stück rigoroser handhaben (Panzerschrank, vielleicht auch Verschiffen von Sicherungen außer Landes).
Das waren alles nur Folgerungen aus der Persistenz.

Die Spieleranzahl ergibt ähnlich viele Probleme.
So darf die Spiellogik auf dem Server auf *keinen* Fall laggen. Üblicherweise funktioniert die Dimensionierung eines Server-Systems dann wie der deutsche Brückenbau. Prüfe, wieviel Leistung der Server bei der maximalen Spieleranzahl braucht, verdopple die Leistung dann und füge evtl. noch 10% Leistung hinzu.
Bei der Spieleranzahl fällt auch das gängige Serverdesign "Eigener Thread für jeden Spieler" aus, da einen der Overhead killen würde (neben horrenden Synchronisationsschwierigkeiten).
Der Server muss mit allen Clients gut genug kommunizieren können, auch wenn die Verbindungen nicht die besten sind. Hier muss zumindest genug über die Leitung kommen, dass der Client noch vernünftig interpolieren kann. Hier muss ein ständiges Leistungslogging erfolgen, sodass frühzeitig eingegriffen werden kann, wenn die Auslastung des Servers den definierten Schwellenwert überschreitet. Dann muss schleunigst neue Hardware her, weswegen von der Hardware fast nur Blade-Server in Frage kommen, da man diese ja verstärken kann, ohne sie herunterzufahren.

Da man das alles nicht so ohne Weiteres überwachen kann, muss eine Art Ampel-System her. Das ist ein Programm, das verschiedenste Werte ständig überwacht und ein einzelnen Licht auf rot schaltet, sobald was im argen ist. Sie sind aufgrund der Anzahl Lämpchen hierarchisch organisiert, sodass die "Vaterampel" rot wird, sobald auch nur einer der Söhne rot ist.

Fast selbstredend, aber nicht offensichtlich: auf dem Server sollte wirklich *nichts* außer der für den Betrieb nötigen Software laufen. Die Maschinen müssen identische Hardware haben, sodass sie leichter austauschbar sind. Du kannst die Welt nicht anhalten, wenn du mal OS oder DB-Updates installieren musst. Deswegen musst du einen gleichen Rechner updaten, den laufenden Server auf diesen fortlaufend spiegeln, bis du auf den neuen Server umschalten kannst. Bei gutem Systemdesign kriegen die Spieler das nicht mal mit.

Naja, lies einfach mal ein bisschen. Es gibt auch Bücher zu dem Thema (Massive Multiplayer Game Development fällt mir da grad ein), aber da habe ich mich bisher nicht hereingelesen.

hanse

Alter Hase

Beiträge: 472

Wohnort: Wien

  • Private Nachricht senden

4

17.11.2008, 20:56

Zitat von »"neptun"«

Zitat von »"hanse"«

Och ich denke so schwer ist es aus Technischer sich auch wieder nicht.


Ufff. Da täuschst du dich mal ganz gewaltig.

Schon mal probiert? :badgrin:

Ich denke das hängt vor allem von der Art des Spieles ab. Bei diesen 3D MMOS dürfte das synchronisieren und das verhindern von Laggs recht tricki sein. Gerade aber Spiele wie The Mana World halte ich vom technischen Schwierigkeitsgrad für nicht sooo schwer. Ich denke in der Spielentwicklung gibt es grössere Herausforderungen. Zumindest schaut das: http://wiki.themanaworld.org/index.php/Server_development nicht kompliziert aus.

5

17.11.2008, 21:13

Zitat von »"hanse"«

Zitat von »"neptun"«

Zitat von »"hanse"«

Och ich denke so schwer ist es aus Technischer sich auch wieder nicht.


Ufff. Da täuschst du dich mal ganz gewaltig.

Schon mal probiert? :badgrin:

Ich denke das hängt vor allem von der Art des Spieles ab. Bei diesen 3D MMOS dürfte das synchronisieren und das verhindern von Laggs recht tricki sein. Gerade aber Spiele wie The Mana World halte ich vom technischen Schwierigkeitsgrad für nicht sooo schwer. Ich denke in der Spielentwicklung gibt es grössere Herausforderungen. Zumindest schaut das: http://wiki.themanaworld.org/index.php/Server_development nicht kompliziert aus.

Nein, ich habs nicht schonmal probiert - ich weiss auch wieso.
Und ich zweifle ganz stark daran, das sie Coder mit einem solchen Know-How im Team haben, um sowas nur Ansatzweise realisieren zu können.
Ein MMO gehört definitiv zum schwierigsten was es in Punkto Game-Programmierung gibt.

Edit:
Ach du gehörst zum Team.
Wenn du willst kann ich dir nen Link zur Diskussion "Unterschiede zwischen Multiplayer und MMO" schicken. Da sind so ziemlich die erfahrensten und besten Hobby und non Hobby Gamedeveloper aus .de daran beteiligt. Die sagen dir alle so ziemlich das selbe. In jenem Thread aber auch mal technisch begründet.

hanse

Alter Hase

Beiträge: 472

Wohnort: Wien

  • Private Nachricht senden

6

17.11.2008, 21:23

Zitat

Nein, ich habs nicht schonmal probiert - ich weiss auch wieso.
Und ich zweifle ganz stark daran, das sie Coder mit einem solchen Know-How im Team haben, um sowas nur Ansatzweise realisieren zu können.

Ja natürlich haben sie das nicht , was aber nicht heißt das es deshalb total schwer ist.

Zitat


Ein MMO gehört definitiv zum schwierigsten was es in Punkto Game-Programmierung gibt.

Glaube ich nicht, ich halte z.B. das Design und die Implementierung einer guten 3D Engine um Welten schwierige

Zitat


Ach du gehörst zum Team.

Nein gehöre ich nicht. Ich behaupte auch nicht das sie es schaffen werden. Ich bin nur der Meinung das es nicht so schwer ist wie alle tun.

Zitat


Wenn du willst kann ich dir nen Link zur Diskussion "Unterschiede zwischen Multiplayer und MMO" schicken. Da sind so ziemlich die erfahrensten und besten Hobby und non Hobby Gamedeveloper aus .de daran beteiligt. Die sagen dir alle so ziemlich das selbe. In jenem Thread aber auch mal technisch begründet.

Wäre nett.

Das schwierigste ist bei einem MMO immer noch der Content und die Wartung und das ist um Welten schwieriger wie die technischen Probleme.

7

17.11.2008, 21:42

Ich kann mir vorstellen, dass es hier nicht gerne gesehen wird, wenn man auf ein anderes Forum verlinkt. Deshlab schick ich dir den Link per PM

Zitat von »"xardias"«

Ich kann hier eigentlich nur sagen, was ich in diesem Forum schon so oft gesagt habe:
Lasst euch eure Träume nicht von irgendwelchen Leuten kaputtreden. Wenn man seine Ziele erreichen will dann findet man auch einen Weg, auch wenn dieser Steinig und verdammt lang ist.

Im Endeffekt könnt ihr nur gewinnen. Egal ob ihr das Spiel fertig macht oder nicht.


Ich finde jetzt tust du mir unrecht. Ich rede hier nicht irgendwelche Träume kaputt und ich habe betont, das ich diesen Ehrgeiz und dieses Engagement super finde. Ich würde es ihnen auch wirklich gönnen wenn das Projekt ein Erfolg würde. Darum auch meine Empfehlung für den Anfang etwas kleiner zu fahren. Nicht einstampfen, sondern umformen!

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

8

18.11.2008, 00:14

Ich habe es mal aufgetrennt, weil ich auch noch ein paar Takte zu sagen wollte, die diese Diskussion aber endgültig zum OT gemacht hätte.
Ich denke es ist immer eine Frage, welche Anforderungen man hat. Eine DB sollte man nur zum Laden und Speichern nutzen und nicht für jede kleine Poppelaktion. Dann kommt man mit z.B. MySQL und prepared statments aus der c-api schon verdammt schnell voran.
Thema Server: Blizzard legt seine Server auch einmal pro Woche schlafen und Wartungsarbeiten kann man nachts durchführen. Ist man auch noch so sozial und hilft dem Menschen bei Aufhören mit dem Zocken ;) .
Serverkapazitäten...interessante Sache, wenn man bedenkt, das für WoW pro Nutzer und Monat 13 Euronen gefordert wird, könnte man glauben, dass die sich genug Server leisten könnten. Nur warum gibt es "so wenige" Exemplare von der neuen Erweiterung? Damit nicht zuviele aufeinmal die Server stürmen. Soviel zum Thema Reserven. Ab einer gewissen Accountanzahl ist es halt Statistik.
Synchronistation ist ein heikels Thema, vorallem finde ich es interessant, dass weite Gebiete in WoW unterbrechungsfrei synchronisiert werden, was allerdings mit WorkerThreads und (ggf lockfreien) Queues kein Hexenwerk mehr ist.
Netzwerksystem. Interessante Sache! Vorallem weil da einige recht bläugig reingehen. Ich entwickle privat an einer Netzwerklib, welche schon um 200000 Objekte an 1000 Clients verteilt und updatet und das ganze mit nem P8400 "futzel" Dualcore (Notebook) als Diener (server). Und dabei können die Objekte beliebig über das gesamte Spiel verteilt sein (sprich ein Client kann mehrere "Regionen des Spiels" gleichzeitig "sehen"). Am Ende macht eigentlich nur der Testclient schlapp, welcher über die 1000 Clients iterieren und auch updaten muss (also ~ 1000 Clients * 1000 "sichtbare" Objekte). Insgesamt ist in dem ganzen Serversystem augenscheinlich nur noch die Iteratoren der stl Klassen ein limitierender Faktor (über 20% gehen laut Profiler für den * Iteratoroperator drauf). Ich hoffe, den Testclient verbessern und das System auf 10000 Clients bei 1000000 Objekten aufbohren zu können.
Dafür habe ich die Erfahrung gemacht, dass man sich schnell in Details und Features verliert. Auch ist die Motivation ein stark limitierender Faktor, weil die über Jahre zu halten ist schwer.

Lange Rede, kurzer Sinn: meiner Meinung nach möglich, wenn man dran bleibt.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

Beneroth

Alter Hase

Beiträge: 969

Wohnort: Schweiz

Beruf: Software Entwickler

  • Private Nachricht senden

9

18.11.2008, 09:52

Zitat von »"Nox"«

Lange Rede, kurzer Sinn: meiner Meinung nach möglich, wenn man dran bleibt.


richtig.
Aber lieber nicht zuviele grosse Töne spucken und die nachher nicht einhalten können (wie es viele grosse Firmen ja leider auch machen) sondern mal in aller ruhe entwickeln. wenn es so gross wird wie geplant kann man ja dann immer noch die grosse show aufziehen.

@nox:
hey, wenn mein MMORTS fertig ist käme die Umsetzung des MMORPG.. interesse vielleicht ein Netzwerk-Fuzzy zu werden? :roll: :badgrin:

xardias

Community-Fossil

Beiträge: 2 731

Wohnort: Santa Clara, CA

Beruf: Software Engineer

  • Private Nachricht senden

10

18.11.2008, 10:00

Zitat von »"neptun"«


Ich finde jetzt tust du mir unrecht. Ich rede hier nicht irgendwelche Träume kaputt und ich habe betont, das ich diesen Ehrgeiz und dieses Engagement super finde. Ich würde es ihnen auch wirklich gönnen wenn das Projekt ein Erfolg würde. Darum auch meine Empfehlung für den Anfang etwas kleiner zu fahren. Nicht einstampfen, sondern umformen!

Entschuldige, mein Fehler. Du hast natürlich recht, ich habe deinen Beitrag etwas zu schnell überflogen ;).

Zur technischen Umsetzung. Ich kann Nox da zustimmen. So besonders sind die Anforderungen für MMO Spiele in der Regel nicht. Letztendlich auch nicht viel mehr als die meisten anderen datenbankbasierten Serveranwendungen auch. Nicht, dass die einfach zu Programmieren sind, aber wie sagt man so schön: It's not rocket science.

Werbeanzeige