Rasterbild (Karte) aus Datensatz (Listenmatrix) erstellen
Verfasst: Montag 22. Dezember 2014, 13:31
Hallo,
ich schreibe derzeit an einem kleinen Terminal basierten (mit Curses) Adventure. Etwas Rogue-like, aber nicht ganz so. Z.b. die Karte wird nicht vor Spielbeginn komplett generiert, sondern während der Spieler herumläuft, wird diese durch verschiedene Zufallsalgorithmen erzeugt. In Python habe ich sie mit verschiedenen Kodierungen für Terrain, Nutzung, Rohstoffe etc. in einer Matrix von Listen abgelegt. Abgespeichert wird sie als CSV-Tabelle. Derzeit als 1000x1000 Spielfeld, soll aber noch variabel werden, vielleicht auf mehrere Datensätze verteilt um Speicherbedarf zu reduzieren und nicht immer die komplette Map im RAM zu haben.
In der Curses-"GUI" bzw. TUI wird immer nur ein kleiner Ausschnitt um den Spieler herum visualisiert. Um eine besseren Übersicht zu ermöglichen würde ich nun gerne aus der Datenmatrix oder der gespeicherten CSV, auf Abruf eine einfache Rasterkarte (z.B. PNG) erstellen. Also 1000x1000 quadratische Pixel, die je nach Beschaffenheit anders gekachelt werden. Evtl. soll auch noch ein Grid alle 10 oder 50 Pixel eingefügt werden. Jemand eine Idee wie sowas zu realisieren wäre? Evtl. gibt es Module die sowas ermöglichen. Vielleicht mit matplotlib was zu machen?
Achso: Die Karte soll dann natürlich extern, in eigenem Fenster, geöffnet werden. Das geht wahrscheinlich am einfachsten mit tkinter, da die Module in der Standardbibliothek vorhanden sind.
ich schreibe derzeit an einem kleinen Terminal basierten (mit Curses) Adventure. Etwas Rogue-like, aber nicht ganz so. Z.b. die Karte wird nicht vor Spielbeginn komplett generiert, sondern während der Spieler herumläuft, wird diese durch verschiedene Zufallsalgorithmen erzeugt. In Python habe ich sie mit verschiedenen Kodierungen für Terrain, Nutzung, Rohstoffe etc. in einer Matrix von Listen abgelegt. Abgespeichert wird sie als CSV-Tabelle. Derzeit als 1000x1000 Spielfeld, soll aber noch variabel werden, vielleicht auf mehrere Datensätze verteilt um Speicherbedarf zu reduzieren und nicht immer die komplette Map im RAM zu haben.
In der Curses-"GUI" bzw. TUI wird immer nur ein kleiner Ausschnitt um den Spieler herum visualisiert. Um eine besseren Übersicht zu ermöglichen würde ich nun gerne aus der Datenmatrix oder der gespeicherten CSV, auf Abruf eine einfache Rasterkarte (z.B. PNG) erstellen. Also 1000x1000 quadratische Pixel, die je nach Beschaffenheit anders gekachelt werden. Evtl. soll auch noch ein Grid alle 10 oder 50 Pixel eingefügt werden. Jemand eine Idee wie sowas zu realisieren wäre? Evtl. gibt es Module die sowas ermöglichen. Vielleicht mit matplotlib was zu machen?
Achso: Die Karte soll dann natürlich extern, in eigenem Fenster, geöffnet werden. Das geht wahrscheinlich am einfachsten mit tkinter, da die Module in der Standardbibliothek vorhanden sind.