Externe Map laden mit "Warp-Points"

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

crazy_down

Betreff: Externe Map laden mit "Warp-Points"

BeitragMo, Aug 27, 2012 16:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo an Alle,

da ich mich lange Zeit nicht mehr mit Blitz3d beschäftigt habe, habe ich nun ein paar Fragen.

Ich möchte eine Map aus der Vogelperspektive anzeigen und eine Figur per Mausklick darauf laufen lassen.
Grundsätzlich möchte ich wissen, wie ich diese Map am besten erstellen kann ?
Direkt im Blitz3d programmieren und dann per (Ich weiß den Befehl leider nicht mehr, so eine Art Landschaftskarte) die Landschaft kreieren oder gibt es eine Möglichkeit das ganze per externer Datei zu erzeugen ?

In etwa eine Textdatei die mit verschiedenen Zeichen gefüllt ist.
z.B.

#######
#ggFggg#
wgggggg#
#FggFgg#
######

Wobei g = Rasen ist, F = Felsen, # = sind Wände und W= ist ein Warp point.
Die Felsen wären in 3D S max erzeugte models.

Vlt. auch eine Bitmap-Datei ?
Ich bin da für alle Vorschläge offen.
Wichtig ist natürlich das es Ressourcendschonend ist Wink

Wie könnte ich die Warppoints so programmieren, das sie feste Ziele haben und dann eine neue Karte laden ?

Vielen Dank schonmal.

Eingeproggt

BeitragMo, Aug 27, 2012 18:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Hmm, will keiner antworten... dann versuch ichs mal. Aber gibt da viel zu erklären...

Textdatei
Deine Idee is ganz passabel, würde ich aber für dieses Anwendungsgebiet nicht nehmen da es relativ langsam ist, mit Buchstaben (bzw. Strings) zu arbeiten.

Bitmap
Eigentlich schon eine bessere Idee weil man da auch gleich den "Array" hat den man sich sonst aus der Textdatei selber basteln müsste. Also der ImageBuffer kann ja durch dieselben Indizies wie der Map-Array benutzt werden.

Aber bei Textdatei und Bitmap gibts ein Problemchen: Du kannst zB mit dem Buchstaben "W" oder einer x-beliebigen Farbe festlegen dass wo ein Warp-Dingsbums is. Aber WOHIN gewarpt wird muss noch irgendwo stehen.

Eigenes Format
Daher würde ich vorschlagen, du bastelst dir selber was. Benötigt leider einen eigenen Editor und etwas mehr Zeit, aber so ein Tool anzufangen bzw. sich da mal reinzudenken is eh nie verkehrt.
Die Grundidee ist dass du mittels WriteByte und co. alles selber schreibst wie du es brauchst. Das bietet dir zb die Möglichkeit bei einem bestimmten Byte das dein Warp-Ding signalisiert noch weitere Dinge zu speichern.

Pseudocode:
BlitzBasic: [AUSKLAPPEN]
byte=ReadByte(reader)
Select byte
Case 1:
;Wiese
Case 2:
;Wand
Case 3:
;Warppoint
ziel=ReadByte(reader)
End Select

Also bei Wiese und Wald passiert "nix" und bei dem Warppoint wird nochmal die Info ausgelesen, wohin gewarpt wird (in meinem Beispiel könnte das byte zb die Level-Nummer angeben).

Der Phantasie sind da keine Grenzen gesetzt, du musst nur selber dafür Sorge tragen dass das was dein Editor mit WriteXYZ schreibt im Spiel mit ReadXYZ wieder verarbeitet wird.

mfG, Christoph.
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9

Xeres

Moderator

BeitragMo, Aug 27, 2012 19:58
Antworten mit Zitat
Benutzer-Profile anzeigen
crazy_down hat Folgendes geschrieben:
Die Felsen wären in 3D S max erzeugte models.
Du sprichst von 3D, nicht von einer 2D Tilemap?
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)
 

crazy_down

BeitragDi, Aug 28, 2012 11:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Grundsätzlich möchte ich die Objekte schon 3D darstellen.
Auch wenn die Darstellung begrenzt sein soll.

@Eingeproggt, du meinst damit also einen eigenen Map-Editor ?
Gibt es dafür ein paar gute Beispiele zum orientieren ? Ich habe im Moment gar keine Vorstellung wie man so einen Map-Editor realisiert.

Xeres

Moderator

BeitragDi, Aug 28, 2012 19:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Okay, also 3D.
Da kannst du die Karte mittels Bildbearbeitung erstellen und mit LoadTerrain laden.
Wenn du dein Dateiformat einfach als Text machst, solltest du relativ einfach einzelne Werte aus den Zeilen lesen und interpretieren können. Weiß nicht, ob ich einen selbst geschriebenen Editor empfehlen würde... als Anfänger kann das ebenso schwer sein zu bauen, wie ein fertig Spiel.

Am besten machst du dir einen Plan, was du alles brauchst und wie du das dann strukturieren würdest (Types, Arrays).
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)
 

crazy_down

BeitragDi, Aug 28, 2012 20:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Das mit dem Terrain ist ein guter Tip.
Ich habe mir im Chat auch noch ein paar Ratschläge geholt und mit dem Vorschlag von Eingeproggt, werde ich bestimmt etwas umsetzen können.

Ich versuche es zumindest Wink

Also vielen Dank für eure Hilfe.

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group