WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik



Im Homepage und Webhosting-Forum --- Datenbank Speichermethode

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.

Forum » PHP & MySQL » Datenbank Speichermethode - 03 Dez 2024 Antworten
im Forum für Webhosting Homepage gefunden:
Datenbank Speichermethode
Der_HOmer[DE]
Quasselstrippe
Threadstarter




Beiträge: 239

Hallo,
Ich möchte die Karte für ein Spiel auf einem Internetserver mit SQL speichern. Die Karte ist 2D und soll ständig in alle Richtungen erweiterbar sein. Die Karte besteht aus quadratischen Kacheln. So kann ich eine große Karte speichern und brauche nur Zahlen zu speichern. Dabei steht z.B. eine 0 für Wasser-, 1 für Wüsten- und 2 für Waldkachel. Naja, ich denke das Prinzip ist bekannt.

Normalerweise würde ich das ja mit einem zweidimensionalen Array machen. Zumindest in C++ aber die Karte soll in einer SQL-Datenbank gespeichert sein. Deshalb frage ich mich, wie ich so eine Datenbank für sagen wir mal 1.000.000 x 1.000.000 Felder auslegen müsste und wo da eigentlich die Obergranze ist.

Mein zweites Problem ist, dass die Karte wie gesagt ständig erweiterbar sein soll und die Startkachel nicht bei x=0, y=0 sondern irgendwo in der Mitte der Karte liegt. Oder muss ich da dann den negativen Bereich benutzen?

  Profil   Editieren   Zitieren
HoRnominatoR
Mausakrobat




Beiträge: 161

eine datenbank ist ja nichts weiter als eine tabelle, sprich ein zweidimensionales array. deine daten passen in ein dreidimensionales array, also eine tabelle in der jede zelle noch eine tiefeninformation hat. mysql zB hat eine maximalgroessen von 4GB pro tabelle. erweiter kannst du die tabelle einfach, indem du eine neue zeile anhaengst.

---
get OPERA for free

  Profil   E-Mail   Website   Editieren   Zitieren
Herr_Zatacke
Otto-Normal-Poster




Beiträge: 90

ähnliche gedanken hab ich mir auch mal machen müssen

ich rate dir dazu die karte als png datei auf dem server zu speichern (oder wenn sie grösser wird, eben in mehreren aneinandergestückten png's)

mit imagecreatefrompng() kannst du so ziemlich einfach auf die verschiedenen farbwerte (=kacheltypen) zugreifen.

und deine karte nimmt auf dem server wesentlich weniger Platz ein. (am besten verwendest du ein palettenbild mit ebensovielen farben wie kacheltypen)

ausserdem kannst du so auf einfache Art die Karte im spiel sichtbar machen - muss ja dann nur ein bild angezeigt werden.

---
wer and'ren eine bratwurst brät, der hat ein bratwurstbratgerät...

  Profil   Editieren   Zitieren
Der_HOmer[DE]
Quasselstrippe
Threadstarter




Beiträge: 239

Also das Spiel an sich wird nicht im Browser dargestellt. Die Grafiken sind alle in einem C++-Programm. Über C++ greife ich auch auf die Datenbank zu.

Aber ich bin mir gar nicht mehr sicher, ob eine SQL-Datenbank das richtige wäre, wenn z.B. zwei Spieler gleichzeitig an einer Stelle der Karte wären und der eine den anderen in Echtzeit sehen soll. Die Position von jedem wäre dann in einer Datenbank gespeichert und würde ständig aktualisiert und abgefragt. Macht SQL das mit? Auch bei mehr als 2. Sagen wir mal 100 Spielern?

Sollte ich das lieber über Textdateien machen oder sogar mit Direktverbindungen zwischen den Spielern?

Diese Nachricht wurde geändert von: Der_HOmer[DE]
  Profil   Editieren   Zitieren
Herr_Zatacke
Otto-Normal-Poster




Beiträge: 90

hmmm da wäre schon fast ne eigene server-app sinnvoll ... bei normalen (action) games ist ja auch immer ein server dabei ....

---
wer and'ren eine bratwurst brät, der hat ein bratwurstbratgerät...

  Profil   Editieren   Zitieren
Der_HOmer[DE]
Quasselstrippe
Threadstarter




Beiträge: 239

Hast du da irgendwelche Anregungen?
Ich weis grad nicht genau was du meinst.

  Profil   Editieren   Zitieren
Herr_Zatacke
Otto-Normal-Poster




Beiträge: 90

naja .. je nach spiel-art würde ich mir überlegen ob es überhaupt sinn macht auf eine Datenbank zuzugreifen - oder eben diesen Teil selbst zu schreiben ..... (quasi eben einen server der spezielle auf deine bedürfnisse geschrieben ist)

spezifisches kann ich natürlich nich sagen - hab ja keine ahnung was du für ein spiel zu machen versuchst ... (hab ja schonmal falsch "geraten")

---
wer and'ren eine bratwurst brät, der hat ein bratwurstbratgerät...

  Profil   Editieren   Zitieren
Der_HOmer[DE]
Quasselstrippe
Threadstarter




Beiträge: 239

Ich seh gerade ein anderes Problem. 1.000.000 x 1.000.000 Kacheln ist wohl so gut wie unmöglich. Das wären 1.000.000.000.000 Kacheln. Wenn ich max. 256 versch. Kachlen definiere komm ich mit 1 Byte/Kachel aus. Das wären:
976562500 kByte
953674,31 MByte
931,32 GigaByte

ein bissl viel.
Wer will schon vor Spielbeginn eine fast 1 Terrabyte große karte laden.

Ich wende mich wieder an euch, wenn ich mir das besser überlegt hab.
Danke schön.

Diese Nachricht wurde geändert von: Der_HOmer[DE]
  Profil   Editieren   Zitieren
 

Antworten
Forum » PHP & MySQL » Datenbank Speichermethode

Aktuelle Beiträge zur Hilfe im Forum für Homepage - Datenbank Speichermethode im Forum Homepage Hosting AntwortenLetztes Posting
Cybersicherheit für Unternehmen
in "PHP & MySQL"
3 18.11.2024 14:05 von Gaswer
Wirtschaftslage in der Ukraine
in "PHP & MySQL"
3 22.10.2024 15:04 von Gaswer
Rangliste (Ohne Mysql) (Kompliziertes Ordner System)
in "PHP & MySQL"
3 19.07.2021 06:00 von newtopblog
kleines problem mit phpadmin
in "PHP & MySQL"
5 11.04.2021 22:22 von Zavylon
Counter mit PHP
in "PHP & MySQL"
4 22.03.2021 16:29 von Robeni
Fehlermeldung beim Importieren der Datenbank in phpmyadmin
in "PHP & MySQL"
0 02.08.2019 22:14 von iFuchs
CMS für Online Shop
in "PHP & MySQL"
18 26.05.2019 13:29 von raiserle
Regestrierungproblem
in "PHP & MySQL"
3 28.11.2018 13:20 von norbertofahey
PHP Datum ausgeben?
in "PHP & MySQL"
1 19.10.2018 10:04 von Klaus1973
PHP befehl ausführen
in "PHP & MySQL"
11 16.08.2018 09:08 von Klaus1973
Visual Composer selber programmieren?
in "PHP & MySQL"
0 22.01.2017 23:45 von Redji



Besucher : 8133119    Heute : 464     Gestern : 478     Online : 87     3.12.2024    18:42      0 Besucher in den letzten 60 Sekunden        
Nach oben