Quake 1 Levels:

240499.bsp - Arbeitsversion vom 24.April 1999
804 Kbyte
240499.zip
311001.bsp - Arbeitsversion vom 31.Oktober 2001
1.202 Kbyte
311001.zip

Quake 1 Tools:

Konvertierung zwischen 3DStudio (Max nicht getestet) *.3ds und Quake *.map Format (ver .75)
69 Kbyte
3ds2map.zip
Qoole99
2.090 Kbyte
qoole99v099.exe
modfizierte Id-Tools (source), Linux makefile + executable
225 Kbyte
qbsp_mod.zip
orginale Id-Tools
701 Kbyte
qutil.zip
Quake Sourcecode (GNU-GPL )
3.136 Kbyte
q1source.zip

Zum Spielen braucht ihr eine installierte Vollversion von Quake (1) auf der Platte. CD geht auch, sogar als selbsstartendes Demo. Besorgt euch die OpenGl-Version (Glquake.exe) und packt sie in das Verzeichniss mit der Quake.exe (das ist das Stammverzeichniss). Lässt sich leider nur mit OpenGl spielen. Dekomprimiert das *.bsp -File aus dem Archiv in das Id1/Maps - Verzeichniss unterhalb des Stammverzeichnisses (Id1-Verzeichniss gibts auf jeden Fall, wenns das Maps-Verzeichniss nicht gibt, erstellts halt). Glquake starten, Konsole aufrufen (^ Taste auf der deutschenTastatur, ansonsten links unter "Esc"), tippt "map *.bsp" ein, Return und dann viel Spass.

 

Ich habe, wie schon zuvor geschildert aus einem CAD-Programm die Dateien in dxf (data exchange format) exportiert.

So gehts:

1) Quake kann nur mit konvexen Geometrieobjekten (im Quake-Kontext "Brushes" genannt) etwas anfangen. Dies ist durch das Funktionsprinzip der Renderengine (auf Basis des Binary Space Partition Tree Algorithmus - deswegen *.bsp Levelfiles) bedingt. Also keine Kreuze, Ringe, hohle Zylinder, etc. - zumindestens nicht als ein Objekt. Mehrere sich durchdringende konvexe Objekte, die ein konkaves Objekt ergeben, sind hingegen möglich.

2) Alle meine Objekte sind auf Basis von 2D-Zeichnungsobjekten (Rechtecke) mit einer zugewiesenen Höhe entstanden. Durch Drehung der Quader entlang der Achsen entstanden die "schrägen" Objekte. Kompliziertere "richtige" 3D-Objekte konnte ich nicht konvertieren (nicht nur wegen1).

Das dann benutzte 3ds-Format diente eigentlich nur der 3dimensionalen Skalierung. Orginalzeichnung in Millimeter, ergab sich die Frage: Wie bestimme ich die die Quake-Längeneinheit? Einziger Anhaltspunkt war die Player Größe. Leute, wenn man die drei Raumrichtungen isometrisch (mit dem gleichen Faktor) skaliert stellt sich raus, das der Player ein fettes Arschloch ist (1,90m hoch und!!!! 1,50m breit).

Leider ließ sich das nicht ändern, da die Größe des Players in der Nachverarbeitung der Daten für die Quake-Engine benutzt wird (Kolisionsberechnung). Da es den Sourcecode für Quake inzwischen unter der GNU-GPL gibt, sollte sich das beheben lassen.

Das endgültige Level wird deshalb mit einer ca. 30% größeren Skalierung in x- und y-Richtung als in z-Richtung (Höhe) erscheinen. Beschwert euch bei Carmack, btw. der Skalierungsfaktor liegt bei etwa 1:25. Hä? Inch? Blöde Texaner.

3) Vom 3ds-Format zu Quake´s map-Format (Doku in Textformat) gings über Travis (Lemur) Tool 3ds2map. Super, das er die Kommas inzwischen weggelassen hatte.

4) Schön, wenn hier Schluß gewesen wäre. Ab hier geht die richtige Fleißarbeit erst los. Zahlenformatmist (float->integer) in den Griff kriegen, Texturieren, Spieldesign, Geräusche (hab ich nicht gemacht, sorry zu viel anderen Kram um die Ohren gehabt) z.B. Homepage basteln (ist jetzt kurz vor eins und ich muß um 7 wieder auf den beinen sein, grumpf).

Bevorzugter Editor: Qoole (alternativer Download der neusten Open-Sourceversion)

Oh boys, you were really cool. At least Carmack-Level. What kind of shit hapened? Such a excelent work should not be lost. And dare you remove the Object-tree from the Workspace. My respect, although, will stay as it is.

Auf dieser Ebene sind dann auch einige nichtquaderförmige Objekte (Firstpfetten Vorderhaus und Quergebäude) hinzugefügt worden. Hier werden auch die Objekte wie Startpunkte, Monster, goodies wie Gesundheit, Waffen usw. in die "Welt" eingefügt. Lässt sich alles völlig frei programmieren. Ein paar von meinen Lieblingsmodifikationen (mods) und ein kurzes how-to gibts hier.

5) Zu guter letzt werden die Daten für das Spiel vorverarbeitet (für Kolisionsdetektion, Lichtverteilung, komprimierte Sichtbarkeitslisten, etc.). Hierzu hat Carmack seine Tools (als Sourcecode) veröffentlcht. Gibts in ein einigen kompilierten Versionen hier. Light könnt ihr euch aussuchen, Vis, in welcher Version auch immer, hat sowieso nicht funktioniert (wer braucht mit einer ordentlichen OpenGl-Karte noch Vis?) und das Qbsp aus meiner Modifikation. Die orginalen Tools haben in ihren Headern einfach ein paar Beschränkungen bezüglich des Umfangs der Level (lief ja ursprünglich in 8MB Dose). Habe ich einfach bei Bedarf (=Fehler :-)) jeweils aufs doppelte gesetzt und neu kompiliert. Linux einfach deswegen, weil ich mit einem vernünftigen virtuellen Speichermanagement wie bei Linux meine Levels auch mit nur 32 MB Ram bearbeitet bekommen habe. Heraus kommt nach Qbsp dann eine *.bsp Datei, die sofort spielbar ist.

Das hört sich alles furchtbar kompliziert an. Lasst euch nicht entmutigen, sogar ein dummer Pfuscher wie ich hat das hingekriegt. Könnt ihr auch.

Viel Spass. clone

Lieblingstools

Und zum Schluß noch ein paar Links:

http://www.planetquake.com/quakelab/ - Ihr habt Fragen? Hier gibts ein Haufen voll Antworten.

ftp://ftp.idsoftware.com/idstuff/ - alle sources und überhaupt.......(wundert euch nicht, wenn´s hier voll ist :-)

http://www.planetquake.com

http://www.telefragged.com