GLBasic forum

Other languages => GLBasic - de => Topic started by: Veritas on 2008-May-28

Title: 2D Leveleditor
Post by: Veritas on 2008-May-28
Hey Leute, hab mein erstes Projekt erstmal auf Eis gelegt, weil ich zwischenzeitlich was für mich spannenderes entdeckt hab. Ich möchte so ein Fake 3D echt 2D spiel machen, so wie diablo früher. Animation hab ich, schon alle drin, das eine "Labyrinth-Kachel-Map" Skript hier aus'm Forum hab ich mir weitgehenst umgeschrieben. Da es natürlich super Zeitaufwendig wäre jedes Tile einzeln zu positionieren wollte ich wissen wie ihr das macht. Wie funktioniert das mit den Hintergründen. Was hat es mit dem 0101 begehbare, nicht begehbare Kachel an sich, macht ihr machen wir das hier auch so? Hab dazu nichts im Netz gefunden, das mir Anfänger weiter helfen konnte. Vielleicht habt ihr ja Denkanstöe für ich, würde mich sehr freuen.
Gruß Veritas
Title: Re: 2D Leveleditor
Post by: Schranz0r on 2008-May-28
Schau mal im Schnipselforum nach, da ist bestimmt was dabei.
Das weiss du meinst nennt sich ISO-Ansicht :)
Title: Re: 2D Leveleditor
Post by: Veritas on 2008-May-28
Quotenaja ;) wenn ich das gefunden hätte was ich suche hätt ich nicht gefragt.
Aber ich such nochmal gründlicher, WENN aber trotzdem jemand eine Idee hat dann bitte melden :)

Okay hab was gefunden... scheint aber irgendwie "umständlicher" zu sein. Aber dafür ist es KOSTENLOS. Also eure Meinung ist gefragt. Das ist so'n Java-Dingens nennt sich Tiled http://mapeditor.org/index.html (http://mapeditor.org/index.html) irgendwo im Forum hab ich n Verweis auf n Link gesehen, das war auf der Glbasic Hauptseite http://www.glbasic.com/showroom.php?game=tmx_2_d2ma_v3&site=games&lang=de (http://www.glbasic.com/showroom.php?game=tmx_2_d2ma_v3&site=games&lang=de) damit kann man wohl die Tiled-Files konvertieren um sie dann später mit GlBasic laden zu können.

Super Thread selbst beantwortet ;)!
Aber: Falls sich Jemand damit auseinandergesetzt haben sollte und weiß wie man das Programm nutzt, dann keine Scheue zeigen und mir erklären :) ich blicks nämlich nicht wirklich und das Tutorial auf der Mainpage ist naja ^^ nicht wirklich ausreichend für mich. Zudem kann ich außerdem beispielsweise keine ISO-Kacheln aufpinseln..da passiert bei mir überhaupt nüscht.

Liebe Grüße aus'm Süden ;) der Veritas
Title: Re: 2D Leveleditor
Post by: Moru on 2008-May-29
As my understanding of german is very limited, sorry if I missunderstood you.

Are you looking for a free 2d map editor I would suggest you look at Mappy wich is a very good level editor that is shareware but exists wich a free version that is perfectly usefull for most things. There are just some more advanced things you need the full version for. I have written a loader for GL-basic so it's easy to use. The map format is binary and can handle isometric 3D but you will have to change the displaycode for that because I haven't written that part yet :-)

See this post for links: http://www.glbasic.com/forum/index.php?topic=1633.0
Title: Re: 2D Leveleditor
Post by: Veritas on 2008-May-29
no that's right i'm looking for an editor and already tested Mappy and your import file. I made a Map with this tutorial http://www.swingame.com/wiki/index.php?title=Mappy_Tutorial (http://www.swingame.com/wiki/index.php?title=Mappy_Tutorial).
Because i don't really have the time and knowledge now i just replaced your race.fmp and your map png with mine.
Actually it of course didn't work well. It showed everything, also there where several layers in my one (as in the tutorial). There were Background, collision and event layer. Does your loader only import 1 Layer?

First of all of course RESPECT for writing that loader. If there is a possibilty in using isometric tiles and several layers let me know, otherwise it would be fresh ;) if someone could explain that java thing "Tiled" to me.

Thanks for the help ;) guys
Title: Re: 2D Leveleditor
Post by: BumbleBee on 2008-May-29
@Veritas
Schreib dir doch deinen eigenen 2D Leveleditor. Den kannst du ganz deinen Bedürfnissen anpassen und Free ist er ja sogar auch noch. ;) Also leg los. :)

Cheers
Title: Re: 2D Leveleditor
Post by: Shogun on 2008-May-29
Mit den Tiles habe ich das gleiche Problem. Ist wirklich mühselig jedes einzelne Tile passend zum gesamten Bild zu bekommen.
Title: Re: 2D Leveleditor
Post by: Veritas on 2008-May-29
MAN ^^ Ihr Bananen... ich hab gesagt mir fehlt das Knowledge und die Zeit ich hab noch 14 Tage dann geht die Unibewerbung raus... ich wollt ursprünglichwas anderes machen aber jetz will ich GAME machen und ich kann nich den ganzen Tag proggen. Also muss jetz alles schnell gehen, war eher ein Spontanentschluss sogut bin ich never das ich das so schnell umsetzen könnte, dafür gibts ja kreative Leute wie euch ;).

Also hab jetz mal ne Testmap mit Mappy gemacht und nochma ne frage... wie geht das mit den Layern, warum zeigt der auch die Hintergrund layer an, mache ich da was falsch? Hab mich ans tutorial gehalten.

Den anderen Editor von Java tick ich ganz gut, jetz is mein Problem das ich den Loader von Fabbio nich verstehe http://www.glbasic.com/showroom.php?game=tmx_2_d2ma_v3&site=games&lang=de (http://www.glbasic.com/showroom.php?game=tmx_2_d2ma_v3&site=games&lang=de)
Wie kann ich die Karte denn dann im Spiel anzeigen? Was für Befehle brauche ich? Bin momentan in zu großem Zeitdruck um geradeauszudenken =D kaut mir die Lösung vor *g* Danke Jungs ihr seid super :-*
Title: Re: 2D Leveleditor
Post by: Schranz0r on 2008-May-29
so nen 0815 Editor schreib ich dir in paar Stunden :)
Aber da du den ja selber brauchst-> Unibewerbung ? GAME?
solltest du den selber schreiben, damit du diesen auch verstehst :)
Title: Re: 2D Leveleditor
Post by: Veritas on 2008-May-29
lacht nich ^^ die stehn auf Optik ;) du musst ihn ja nur verstehen und erklären können, ich kanns nich so schnell das weiß ich. Das was ich mache reicht locker noch um schlechte Studenten ausm 2. Semster dumm dastehen zu lassen. Fakt is nur ich hab die Zeit nich. Also Mappy ist ganz nett aber mit Isotiles kommt das Ding nicht so klar... das Macht dann halt größere Rechtecke und zeichnet die dann so auf und dann hab ich dazwischen unfüllbare Lücken, aber echte Isotiles sind ja schließlich rauten versteh also nich so genau wie das gehen soll, vlt kans das auch und ich bin nur zu blöd.


Title: Re: 2D Leveleditor
Post by: Moru on 2008-May-29
My loader just loads everything into memory, then it shows the layers as you set them. If you look lower into the function DrawMap() you can see where it draws the layers. As it is set now it should draw all layers you have used in the map.
Title: Re: 2D Leveleditor
Post by: D2O on 2008-May-30
Hmmm, das ist echt ein simpler loader.

Ich kommentier ganz noch etwas.

Quote
TMX_2_D2MA Konvertiert
map dateien mit der endung ".tmx"
von Tiled 0.6.1,
http://mapeditor.org
in einen Text datei und
in eine byte datei.
Die werte haben eine grösse
von 2 byte.
Es sind also werte von 0 - 65535
möglich.
Sollte also für einen map reichen.
In der .d2ma stehen die gleichen werte wie in der .txt
bis auf die String die mit <***>
gekenzeichnet sind




Hier noch der code zum laden
der .d2ma datei.

//-------------------------
// --------------------------------- //
// Project: D2MA_Loader v2
// Load WORD, 2bytes
// Start: Wednesday, January 30, 2008
// IDE Version: 5.154
// (c)Fabbio Soddu
// d2o@deuteriumoxid.com
//

//  +.d2ma Loader

comein$ = FILEREQUEST$(TRUE, "D2MA|*.d2ma|All|*.*")   // Das brauchst DU in deinem Game nicht
                                                                               
comein$ = "Path der datei"  // Das ist für dich interessant und hinzugefügt
byte = GETFILESIZE(comein$)  // ab hier gehts los, die grösse der datei in byte ermitteln
map = OPENFILE(0,comein$,TRUE) // //deitei laden


   READWORD 0,lx      //Width  //die ersten 2 byte für die anzahl der Tile's X-Achse
   READWORD 0,ly      //Higth  //-----"           "------------ Y-Achse
   READWORD 0,tilex   // Tile breite in pixel
   READWORD 0,tiley
   READWORD 0,layer  // anzahl der layer

DIM field[lx][ly][layer]    // das sollte jetzt selbst erklärend sein ?

                                   // Hier wird an hand der geladenen werte das Array gefüllt
                                  // In Tiled haben ja die Tiles eine Nummer, die werden hier geladen
                                 
   FOR la = 0 TO layer - 1
         FOR iy = 0 TO ly - 1
            FOR ix = 0 TO  lx - 1
                READWORD 0,a
               field[ix][iy][la] = a
            NEXT
         NEXT
   NEXT
CLOSEFILE 0
///              End Loader



//////////////////////////////////////////

Wie man das ganze anzeig sieht man hier:
http://www.glbasic.com/forum/index.php?topic=1507.0 (http://www.glbasic.com/forum/index.php?topic=1507.0)

Der ist echt ganz simple, kann dafü auch nicht soviel, die ganzen Features von Tiled werden garnicht richtig genutzt..