              **************************************************
              *       MakeMAP v0.20 - Quake Level Editor       *
              **************************************************
              *              (c) by Lars Bensmann              *
              **************************************************
              * http://localhost.ruhr.de/~b-man/makebrush.html *
              **************************************************

Note:
  This README is probably very confusing, not detailed enough and whatever.
  I just wrote this in a hurry and added some stuff for each new version.
  So some of the information may already be outdated, but I don't feel like
  writing a complete documentation yet, because there are so many things
  that will probably change in future versions.

This is the current version of MakeMAP. It's still in heavy development,
but if you're interested you can try it out.

It is a GUI I wrote around my util Makebrush. It handles all the vertex
stuff and leaves the actual converting to the plane format of the MAP
files to the code from Makebrush.

You can start it by typing:

  mm [option]

        -6  select 640x480
        -8  select 800x600

MakeMAP will start in a 1024x768 resolution as default (unless you use one
of the above options of course).

Theoretically it is possible to create a MAP file with it, although you
have to add all entities by hand. Another pretty bad thing is that it 
doesn't keep track of all the textures yet (just one per brush), so some 
more advanced levels will look pretty weird after importing and then
saving them with MakeMAP.
As I said, the whole thing is far from ready. It took me less than a week 
to write this (not counting the functions I added from Makebrush), so don't
expect anything brilliant.

The most important thing is the F1 key. This will describe every key
that has a function in MakeMap.

MakeMap has a XY (left top window), XZ (right top window), 
YZ (left bottom window) and hopefully soon a 3d view (right bottom window).

Every window has it's own mouse cursor that will show the currently
selected position by the mouse. The curser is moved with the mouse or
for more precise positioning with the arrow keys (use Ctrl+arrow or 
Alt+Arrow for different speeds). The active cursor is colored grey (and
is pretty hard to find on the screen :-(, but I will fix this)

To change the active mouse cursor you can just move into the window you
want or press Tab (or Shift Tab) to cycle through the cursors without
changing the positions of the cursors.

MakeMap always hilights the vertex that is closest to the 3D-mouse cursor.
So if you are wondering why the cursor is on top of a vertex, but a differnet
one is highlighted, look in the other windows as well and change the cursor
position there. The one exception is the 3d-view. As you will notice, you
don't move the 3d-cursor anymore, just the cross representing the mouse,
the vertex that is closest to the mouse cursor is highlighted.

You can add vertexes by hitting the INSERT key. To select a 
highlighted vertex just use SPACE (or the left mouse button). To select 
a whole brush, highlight a vertex and hit ENTER or the middle mouse button
(several times to cycle through all the brushes your highlighted point is 
part of).
To create a new brush, select all the vertexes and hit 'b'. To add a
vertex to a brush, select a brush (with ENTER, just selecting all vertexes
doesn't do the job yet), highlight the vertex to be added and type 'a'.
Removing a vertex from a brush is done the exact same way, but type
'r' instead. (Note: Removing a vertex doesn't delete the vertex itself, it
just isn't part of the brush anymore. The same is true for deleting. Deleting
a brush, doesn't remove it's vertexes. And you cannot delete vertexes that
are still part of a brush. If you want to remove a brush including all the
vertexes, just hit DEL twice. Once to remove the brush. After this all of
the vertexes will still be selected, and so hit DEL  again to delete the 
vertexes.) If you want to unselect all vertexes at once just hit ESC.
The right mouse button has the combined function of removing a vertex from
a brush (if the highlighted vertex is part of the selected brush) and
adding a vertex to a brush (well, if the vertex is not part of the brush).

I also added the possibility to limit the displayed vertexes and brushes.
ust hit 'l' in the view and enter the distance around the cursor position that
should be displayed. A negative number will display the vertexes in front
and behind the current cursor position and a positiv number will just
draw those behind the cursor.
The display doesn't update in realtime. So if you move the cursor, just
use 'd' to refresh the display for the current cursor position.

And no, you cannot move vertexes around yet, just remove the vertex and
add a new one at the position you want.

Once you moved the active cursor into the 3d-view, you can feel yourself
at home and move just like in Quake. Use the arrow keys to move around,
Alt+left or right to strafe and Page Up/Down to look down/up. The keys
Home and End will higher or lower you point of view and Backspace will
do a 180 degree turn. Unfortunately this is slow as hell, but I will try
to fix this in a future version. Oh, BTW, the yellow rectangle that can
be seen in the 2d-windows is your current position in the 3d-view. You can
also jump to a certain point in space by hitting 'j'. This will put the
viewpoint at the coordinates of the 3d-cursor.

The 3d-view won't allow you to add or move vertexes. Use the 2d-windows 
instead. If someone comes up with a method to position anything precisely
in a 3d-view window, don't hesitate to tell me how.

I know this version is still an alpha, but someone on
rec.games.computer.quake.editing complained about noone releasing anything,
so here is my current version.

Currently I'm not interested in bug reports. Just note one thing: If you
shouldn't be able to move the cursor anymore, then type 'mode co80' blindly
and you will probably be back at the nice DOS-Prompt. This is most likely
to happen while loading and saving, because this is handled by the code I
added from Makebrush and it will exit if there is a wrong brush
(not enough points, all points on one plane etc.) You can read the file
ERROR that is generated by MakeMAP and it will tell you what happened.
So, save often and to different filenames or all your work will be lost if
an error occures while saving to your original filename.

What I would be interested in is you opinion on the highlighting and selecting
method used. Is it understandable how to move the cursor in the three
dimensions?

Comments and suggestions to: Lars@b-man.ruhr.de
