AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Eigenes 3D MMORPG mit Delphi möglich?

Ein Thema von Zudomon · begonnen am 8. Dez 2011 · letzter Beitrag vom 2. Mär 2021
Antwort Antwort
Medium

Registriert seit: 23. Jan 2008
3.688 Beiträge
 
Delphi 2007 Enterprise
 
#1

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 8. Dez 2011, 18:10
Gut, dass man sich die API locken sollte, wenn es passieren könnte, dass einem ein zeichnender Thread in einen auf der GPU rechnenden reingrätscht, das klingt nachvollziehbar . Um das "unruckeliger" zu machen - natürlich sehr von der konkreten implementierung abhängig - müsste man sich einen Mini-Scheduler zwischenbauen, und ggf. die Granularität der Rechnungen erhöhen, so dass ein Zeichenthread öfter mal dazwischen an die Reihe kommen kann.

Was man so bisher gesehen hat, so ist mir irgendwie nicht ganz klar, worauf deine Frage hier abzielt. Du hast ja bereits ausgesprochen umfangreiche Dinge fertig, und die nötige Theorie an der Hand. Alles, was nun noch fehlt, ist fast schon nur noch Content, Content, Content. Und Content.

Man reagierte hier übrigens so "seltsam hämisch", weil wir nicht allzuselten Gäste hier haben, die sich als ihr aller erstes Lernprojekt mal "sowas wie WoW, oder Assassins Creed" bauen wollen, aber beim Verstehen von IntToStr() schon scheitern. Um genau zu sein, bist du der erste seit grob geschätzt 5 Jahren die ich hier täglich lese, der derart vorzeigbare Ergebnisse vorweisen kann, bzw. auch das Hintergrundwissen dazu hat. Dein Eingangsposting klang in seiner Formulierung allerdings sehr ähnlich, wie die zuvor angesprochenen "mal eben nen Weltklassespiel in 2-3 Wochen machen, ich fang grad erst an mit Delphi". Sieh uns bitte nach, dass wir bezüglich "Spieleproggern" hier schon ziemlich geprügelt und getreten sind
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.355 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 8. Dez 2011, 18:48
Ich habe mich ehrlich gesagt recht verarscht gefühlt bei den ersten Postings.
Die Demos finde ich aber dann schon beeindruckend - wobei mich die ganze Spielerei nicht wirklich interessiert.
Dass man das so mit Delphi so realisieren kann, hätte ich nicht gedacht.
Ich könnte mir aber vorstellen, dass es dennoch andere Entwicklungsumgebungen und Engines gibt, die einen diesbezüglich noch besser unterstützen.
Aber das solltest Du vermutlich selbst besser einschätzen können.

Ich nutze die VCL und mehr brauche ich auch nicht (maximal vielleicht mal FM o.ä.).
Grafische Anwendungen und Spiele sind hier eher selten vertreten. Insofern wirst Du vermutlich hier nicht von vielen Erfahrungen profitieren können.

Aber bis hierher: Respekt
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Zudomon

Registriert seit: 14. Feb 2007
84 Beiträge
 
Turbo Delphi für Win32
 
#3

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 8. Dez 2011, 19:14
Huhu!

Also ich muss mich auch bei euch entschuldigen. Ich mag es allerdings nicht, das Menschen immer so schnell im urteilen und Verurteilen sind. Heute hatte ich von jemanden erfahren, dass da wieder irgendwo ein 14er 10 anderen c++ und c# beibringen wollte um dann mit denen ein großes Projekt zu starten. Und er bräuchte aber dann noch jemanden, der das Team dann in Sachen 3D berät. Ich habe selbst auch schon oft solche Post gelesen und auch schon mal geurteilt. Allerdings immer unter dem Vorbehalt, dass alles möglich ist. Grenzen existieren nur im Kopf. Natürlich war ich auch so naiv und dachte, nachdem ich mein erstes Dreieck über 3D-Karte rendern konnte, dass ich in einem Monat mein 3D-Shooter fertig habe. Seit dem sind 12 Jahre harte Arbeit vergangen. Spiele entwickeln ist mein Leben und ich habe mir schon immer gewünscht, mal was großes zu machen... allerdings sind wirklich größere Sachen dabei noch nicht rum gekommen... wenngleich sich die Sachen die ich habe garantiert sehen lassen können.
Früher wurde mir auch immer gesagt, dass man keine Spiele mit Delphi machen kann, dass ich ein Team bräuchte, dass es Wahnsinn ist, eine eigene 3D-Engine zu schreiben usw. . Aber ich habe immer festgehalten an dem, was ich geglaubt habe. Und das, obwohl ich das Gefühl habe, die ganze Welt redet dagegen. Naja, und vorhin bin ich dann mal auf die Idee zu kommen, zu schauen, wie es wäre, wenn man mal selbst so einen größenwahnsinnigen Thread startet und vor allem, wie die Reaktionen sind, wenn dann da letztlich doch Ausnahmsweise etwas hinter steckt.
Also seit mir bitte nicht böse, dass ich am Anfang schon etwas den Anschein erwecken wollte, nicht zu wissen, wovon ich rede
Aber wenn ich euch eins sagen kann, dann nachdem ich so lange Zeit Erfahrung gesammelt habe, dass es auf jeden Fall möglich ist. Warum da normalerweise ganze Teams Jahre dran sitzen? Weil die anders arbeiten. Programmieren ist eine große Macht... hierarchie und prozeduralität Werkzeuge, die effektiver sind als tausende Menschen. Natürlich muss man abstriche machen... prozedural generierter Content hat nicht die menschliche Kreativität. Allerdings denke ich, dass man das schon mehr oder weniger vereinen kann. Wie genau, dass kann ich auch nicht sagen. Ich bin ja auch in der Lernphase und lerne jeden Tag immer einen ganz kleinen Teil dazu.

Was aber nicht heißt, dass mich die Eingangs gestellten Fragen nicht interessieren würden... denn ich möchte eure Meinung wissen. Wenn ihr auch mal meine Meinung wissen wollt... also ich selbst bin mir sehr sicher, dass man ein MMORPG mit Delphi hinbekommt... für mich ist es sogar nur damit Möglich... weil ich mir bei Delphi vorkomme, wie ein Fisch im Wasser... mit C++ oder anderen Sprachen bin ich nicht annähernd so effektiv.

Eigentlich wollte ich auch bis Ende des Jahres die Finger vom Multiplayer lassen, aber dann ist es mir Anfang dieser Woche relativ klar geworden, wie man das ganze ohne allzu großen Aufwand realisieren kann.
Wie gesagt, Grenzen existieren nur im Kopf... ich glaube, dass man das MMORPG ohne Serverfarm laufen lassen kann. Jeder Cluster hat nur ein paar Kilobyte Daten... die werden hinterher über HTTP ( hab das jetzt noch über FTP ) an meinen Webserver als Backup übertragen. Untereinander tauschen die Clients die Daten aus. Dabei regelt noch eine Datenbank, welche User gerade eingeloggt sein und in welchem Cluster ( noch nicht implementiert ) diese sich befinden... und es wird dann eben immer ein p2p über UDP mit den nahesten Spielern aufgebaut. P2P Netzwerk für die erste Iteration von StoneQuest habe ich schon gemacht und es hatte funktioniert.
Da also jeder Spieler sich untereinander nur mit ein paar Clients austauscht... das ganze ist ja auch skalierbar, umso weiter die entfernt sind, oder umso mehr Leute in der Nähe sind, umso größer können die Sendeintervalle sein. An den Webserver braucht dann immer nur alle paar Sekunden eine Sicherung gemacht werden. Auch da kann man gut optimieren, weil sich ja Spieler untereinander absprechen können, wer dann letztlich das Cluster sendet... und falls die Daten zuviel werden, dann kann man einfach auf mehrere Webserver verteilen. Das einzige Problem sehe ich in der Datenbank... nehmen wir wirklich mal eine Million Spieler, die online sind, so weiß ich nicht, ob eine Datenbank das verwaltet bekommt in relativ kurzer Zeit, aber vielleicht kann man da auch aufteilen. Also wenn ich da nun kein gravierenden Denkfehler gemacht habe, dann sollte tatsächlich ein MMORPG mit beliebig vielen Spielern möglich sein.

Was den Content angeht, da es sich um ein Minecraft ähnliches Spiel handelt, wird der Content zum Teil vom Spieler geschaffen. Einen anderen Teil gebe ich vor, eben prozedural... das Gras funktioniert ja schon. Einen rudimentären Baumgenerator habe ich auch. Farnkraut habe ich bereits gemacht... also was Vegetation angeht, fühle ich mich gewappnet.
Wo ich noch etwas bedenken habe sind in der Tat Tier und Mensch... statt jedes Modell einzeln zu machen, würde ich mich gerne an einen Wirbeltiergenerator ran machen... ob das Erfolg hat, wird sich zeigen.

PS: Bisher habe ich mich nur immer auf ZFX herumgetrieben... ich freue mich, nun auch bei euch angekommen zu sein

Im Anhang: Prozedurale Bäume, Gräser und Farne... wobei das Lebel von letzterem in meinem eigenen 3D-Editor gemacht sind.
Angehängte Grafiken
Dateityp: jpg 20100404c.jpg (139,7 KB, 135x aufgerufen)
Dateityp: jpg 20100405.jpg (138,6 KB, 119x aufgerufen)
Dateityp: jpg 20100414.jpg (152,4 KB, 121x aufgerufen)
Dateityp: jpg 20090805.jpg (102,9 KB, 145x aufgerufen)
Dateityp: jpg 20090805b.jpg (98,1 KB, 131x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.045 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#4

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 8. Dez 2011, 19:20
Und was hat jetzt nen Minecraft Klon (mit einer zugegebenermaßen recht ansehnlichen Engine) mit nem MMORPG zu tun?
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Zudomon

Registriert seit: 14. Feb 2007
84 Beiträge
 
Turbo Delphi für Win32
 
#5

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 9. Dez 2011, 10:38
Aber wie hast du dir das Backend dafür vorgestellt? Bei einer Zielgröße von 1.000.000 Usern, hast du da ne ganze Server-Farm stehen. Wie werden die Daten gehalten? Wie werden sie synchronisiert?
Beantwortet das nicht deine Frage? Falls nicht, frag nochmal explizit.
Wie gesagt, Grenzen existieren nur im Kopf... ich glaube, dass man das MMORPG ohne Serverfarm laufen lassen kann. Jeder Cluster hat nur ein paar Kilobyte Daten... die werden hinterher über HTTP ( hab das jetzt noch über FTP ) an meinen Webserver als Backup übertragen. Untereinander tauschen die Clients die Daten aus. Dabei regelt noch eine Datenbank, welche User gerade eingeloggt sein und in welchem Cluster ( noch nicht implementiert ) diese sich befinden... und es wird dann eben immer ein p2p über UDP mit den nahesten Spielern aufgebaut. P2P Netzwerk für die erste Iteration von StoneQuest habe ich schon gemacht und es hatte funktioniert.
Da also jeder Spieler sich untereinander nur mit ein paar Clients austauscht... das ganze ist ja auch skalierbar, umso weiter die entfernt sind, oder umso mehr Leute in der Nähe sind, umso größer können die Sendeintervalle sein. An den Webserver braucht dann immer nur alle paar Sekunden eine Sicherung gemacht werden. Auch da kann man gut optimieren, weil sich ja Spieler untereinander absprechen können, wer dann letztlich das Cluster sendet... und falls die Daten zuviel werden, dann kann man einfach auf mehrere Webserver verteilen. Das einzige Problem sehe ich in der Datenbank... nehmen wir wirklich mal eine Million Spieler, die online sind, so weiß ich nicht, ob eine Datenbank das verwaltet bekommt in relativ kurzer Zeit, aber vielleicht kann man da auch aufteilen. Also wenn ich da nun kein gravierenden Denkfehler gemacht habe, dann sollte tatsächlich ein MMORPG mit beliebig vielen Spielern möglich sein.
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.074 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 9. Dez 2011, 10:43
Untereinander tauschen die Clients die Daten aus. Dabei regelt noch eine Datenbank, welche User gerade eingeloggt sein und in welchem Cluster ( noch nicht implementiert ) diese sich befinden... und es wird dann eben immer ein p2p über UDP mit den nahesten Spielern aufgebaut. P2P Netzwerk für die erste Iteration von StoneQuest habe ich schon gemacht und es hatte funktioniert.
Nächster Spieler heißt logisch in der Spielwelt der Nachbar oder geographisch-regional-lokal in der Realität?
  Mit Zitat antworten Zitat
Zudomon

Registriert seit: 14. Feb 2007
84 Beiträge
 
Turbo Delphi für Win32
 
#7

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 9. Dez 2011, 10:45
Untereinander tauschen die Clients die Daten aus. Dabei regelt noch eine Datenbank, welche User gerade eingeloggt sein und in welchem Cluster ( noch nicht implementiert ) diese sich befinden... und es wird dann eben immer ein p2p über UDP mit den nahesten Spielern aufgebaut. P2P Netzwerk für die erste Iteration von StoneQuest habe ich schon gemacht und es hatte funktioniert.
Nächster Spieler heißt logisch in der Spielwelt der Nachbar oder geographisch-regional-lokal in der Realität?
Das heißt in der Matrix... also von der Clusterentfernung her...
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.074 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 9. Dez 2011, 11:04
Untereinander tauschen die Clients die Daten aus. Dabei regelt noch eine Datenbank, welche User gerade eingeloggt sein und in welchem Cluster ( noch nicht implementiert ) diese sich befinden... und es wird dann eben immer ein p2p über UDP mit den nahesten Spielern aufgebaut. P2P Netzwerk für die erste Iteration von StoneQuest habe ich schon gemacht und es hatte funktioniert.
Nächster Spieler heißt logisch in der Spielwelt der Nachbar oder geographisch-regional-lokal in der Realität?
Das heißt in der Matrix... also von der Clusterentfernung her...
Was heißt das genau? Was ist die Clusterentfernung und wie ist die definiert?

Sorry, ich hatte mal ein paar Monate Shaiya gespielt, aber das war es dann schon mit Multiplayerspielen und dementsprechend stecke ich da nicht drin.
  Mit Zitat antworten Zitat
Zudomon

Registriert seit: 14. Feb 2007
84 Beiträge
 
Turbo Delphi für Win32
 
#9

AW: Eigenes 3D MMORPG mit Delphi möglich?

  Alt 9. Dez 2011, 11:31
Die Welt von StoneQuest ist eine Welt voller Voxel... jede Einheit quasi ein Kubikmeter... ein Cluster sind 32x32x32 Voxel... und ich würde in der Datenbank speichern, in welchem Cluster sich der Spieler befindet.
Und da jeder Cluster im Raum angeordnet ist, haben diese auch eine Entfernung untereinander... und ein Client muss ja nun nur Daten an die Spieler senden, die sich in den Umliegenden Clustern befindet...
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz