Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi 2D Landkarte, aber Wie? (https://www.delphipraxis.net/65831-2d-landkarte-aber-wie.html)

Angel4585 21. Mär 2006 08:14


2D Landkarte, aber Wie?
 
Hallo zusammen,

wie ich bereits in anderen Threads gesagt habe progge ich ein MMORPG.

Dazu brauche ich eine Landkarte auf welcher die verschiedenen Städte, Länder und die aktuelle Position des Spielers angezeigt werden sollen.

Die Frage die sich mir jetzt stellt:

Wie mache ich das am besten? Welche Möglichkeiten gibt es dafür?

Info: Da das Spiel die Daten dynamisch von einem Webserver laden soll, weil sich die Karte z.B. mit der Zeit erweitert/verändert, sollte die Lössung ebenso dynamisch ausfallen, ich sollte also im Programm selbst nicht von einem vordefinierten Bild abhängig sein.

Welche Lösungsvorschläge/ -ansätze habt ihr für so etwas?

MfG :angel:

Mavarik 21. Mär 2006 08:34

Re: 2D Landkarte, aber Wie?
 
Hallo!

hmmmmmm ziemlich allgemein gefragt.... :gruebel:

Also... 2D klinkt immer wie ein Array...
Vielleicht aber auch nach eine Raum-Linkliste....
Vom Webserver laden klinkt nach SOAP oder eigenen Protokoll...

OK fangen wir vorne an...
Definiere einen Raum als Array. Hier kannst du dann wenn es reicht ein Byte ablegen für
Wand, Nix, oder Gegenstände oder Du musst ein Record nehmen....

Das Array würde ich als dynamisches Array definieren und als erstes die Größe/Länge/Anzahl der Records
übertragen. Wenn Du jede Tür mit einem ID für den nächsten Raum speicherst, kannst Du die Räume beliebig
anordnen und einfach durch Austausch eines Linkes z.B. per Zufall auch die Anordnungen ändern.

Tja und mit SOAP kannst Du - am besten anhand des Beispieles im Delphi - einen Record definieren und diesen
vom Server holen...

Frank :coder:

PS.: Wie weit bist Du den schon.. Kannste schon was zeigen?

Angel4585 21. Mär 2006 09:15

Re: 2D Landkarte, aber Wie?
 
Nee ist allgemeine Planungsphase gerade zum zeigen gibts leider noch nix.. wenns mal was gibt werd ich mir ein Forum basteln wo alles rein kommt und natürlich auch en Thread hier im Forum eröffnen.

Also das ganze sollte möglichst mit einem Image oder so dargetellt werden, das MMORPG ist ja auch nur textbasiert, da gibts nicht viel mit Grafik und so. Ich könnte evtl. auf ne HTML Seite nehmen und da immer die aktuelle Karte darstellen und diese Seite dann laden. aber ich weis einfachnicht was für meinen Zweck die beste Lösung ist.

Wenn ich mich recht erinnere konnte man in HTML das irgendwie machen das man selbst dynamische Bereiche definiert, weis aber grad nichtmehr wie das hies.. also wenn ich so ne Seite in Delphi einbinden könnte und in meinem Delphiprogramm auf Klicks auf die Seite reagieren könnte... aber das sollte vermutlich in die Internetsparte hier in der DP oder? :gruebel:

Mein Ziel ist es das Spiel ohne das man sich die EXE neu runterladen muss, erweiterbar zu machen, also neue Rassen, neue Länder und Städte, neue Waffen, diese sollen dann auch immer dynamisch vom Server geladen werden, damit alle immer die aktuelle Version von dem Spiel haben.

Edit: Also das mit HTML hab ich gefunden : HTML Klicks in Delphi verarbeiten

Ob das das ist was ich brauche muss ich mal heut abend zu Hause nachschauen

Mavarik 21. Mär 2006 10:13

Re: 2D Landkarte, aber Wie?
 
Zitat:

Zitat von Angel4585
Also das ganze sollte möglichst mit einem Image oder so dargetellt werden, das MMORPG ist ja auch nur textbasiert, da gibts nicht viel mit Grafik und so.

Mit einen Image? :gruebel: Textbasiert? :wall:

Sorry, das übersteigt meine Phantasie. :drunken:

Wo liegt den dann Dein Problem?

Frank :coder:

Angel4585 21. Mär 2006 10:41

Re: 2D Landkarte, aber Wie?
 
Naja auf diesem Bild sollte die aktuelle Position dargestellt werden.
Ausserdem sollte man auf einen Bereich(z.B. eine Stadt) klicken können und zu diesem Bereich die dazugehörige Information bekommen.

Ich werd das mit HTML ausprobieren

PS: das mit dem HTML ist mir erst eingefallen nachdem ich den Thread eröffnet hab :oops:

Cicaro 22. Mär 2006 14:21

Re: 2D Landkarte, aber Wie?
 
Überleg mal ob du vielleicht doch Java für dein Spiel verwenden möchtest.

Mit Delphi wie auch mit Java solltest du wirklich ein 2D-Array verwenden und Feld für Feld auf das Image ausgeben.

Angel4585 22. Mär 2006 14:26

Re: 2D Landkarte, aber Wie?
 
Ich kann kein Java und das mit der Imagamap funktioniert auch sehr gut.

mimi 26. Mär 2006 12:09

Re: 2D Landkarte, aber Wie?
 
du kannst doch auch eine Poistions liste anfertigen wo genau festgehalten wird wo welche standt liegt und diese liste wird dann durch gegangen in einer for schleife und vergliechen mit der Aktuellen Maus position und fertig....

Angel4585 26. Mär 2006 13:45

Re: 2D Landkarte, aber Wie?
 
ist doch das Gleiche wie ne Imagemap.. nur etwas komplizierter..

Ich mach das jetzt so:

Ich rufe ein PHP-Skript auf, welches mir ne Seite mit dem Bild und der Imagemap generiert.

Im OnBeforNavigate2 Event verarbeite ich dann die URL auf die geklickt wurde.

Wenn z.B. in der URL 'Stadt1' steht, dann wir ein weiteres Skript aufgerufen, welches die Beschreibung von Stadt1 lädt. Diese daten wiederum werden nicht über eine HTML Seite angezeigt, sondern werden vom Programm verarbeitet und formatiert.

Das einzige kleine Problem ist die Darstellung der Webbraowsers... der sieht leicht besch... aus ich will jetzt grad rausfinden wie ich dessen Scrollbar und das Popup Menü wegbekomme.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:22 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 by Thomas Breitkreuz