M1 - Grand Theft Auto Editor |
Version 0.9 |
Contents |
Introduction |
M1 is an editor for the DMA Design game Grand Theft Auto. It's NOWHERE near finished yet. The current version is still very difficult to use - this will change!
(These docs are pretty sketchy too!)
Requirements |
You must have a VESA 2.0 compliant graphics card or driver for your graphics card.
You also need a copy of GTA (full version ONLY).
Configuring M1 |
Put all the files somewhere. Edit M1.CFG with your favorite text editor. The important thing at first is the gta_path setting. It should point to your base GTA directory. e.g.
gta_path=C:\GTA
How to Use |
Starting Up
Run M1.EXE. If you have set M1 up correctly, a file selector will appear. Maps are stored in .CMP files - double click on any of the maps to load that map.
Once the map has loaded, you can scroll about using the cursor keys. Press the spacebar to open a mini-map. Click anywhere on the mini-map to jump to that location. You can use the + and - keys on the numeric keypad to zoom in and out.
As you move the mouse cursor around, notice there is a red wireframe cube that tracks your mouse cursor. This is the current block your mouse cursor is over, and most operations work on either this block, or the whole stack of blocks (everything above and below the block).
Blocks only have five sides (left, right, top, bottom and lid) in GTA. The lid is the texture that is flat on top of the cube.
Easy Editing
To change a texture on the side or top of a block, click it with the mouse. A screen with all the different textures appears, use the cursor keys to move the highlight and Enter to accept the currently selected texture. If you change your mind, use Escape.
Because you can only see two sides of a block at once there is a set of shortcut keys for each of the five sides of a block:
I - Change Top Texture | ||
J - Change Left Texture | K - Change Lid Texture | L - Change Right Texture |
M - Change Bottom Texture |
You still need to have the block as your current block, which means your cursor must be over one of its faces.
To change the rotation of the Lid of the block, use the R key.
To change the slope of a block, use the [ and ] keys (square brackets). There are 47 different slopes available in GTA, and these keys cycle through them all.
Hint | If you can't change the texture on
the side of a block but can see it, it is usually because
it is because it is too sharply sloped. Just use the [ key a couple of times on the block, change the texture then do the opposite with ]. |
To copy the currently selected stack to an internal clipboard, press C when you have a block in the stack you want highlighted in red.
Press P to paste the stack you last copied.
Block Attributes
All blocks on the map have a set of attributes. To see the attributes of the current block press the 0 key (not on the numeric keypad). You can view the attributes of the block above the current block by pressing 9 (you will see why this is useful later!). You can view the attributes of any block in the current stack (the stack the current block is in!) with the keys 1 - 6. Stacks in GTA are a maximum of 6 high.
Here is a very simple stack to illustrate what I am on about:
Now, when a ped (pedestrian!) in GTA is in this particular stack, his feet are resting on the road (level 3). However, because the LID of a stack is on top of the cube, he is mostly in level 2. GTA will use the attributes of level 2 to decide most things like whether the ped should fall down, whether he drowns because he is in water etc. So when setting attributes you must usually set them for the block above the block you are thinking of. (If you understood all that, the rest is easy!). Remember: Use the 0 key to set the attributes of the block you have highlighted, 9 key to set the attributes of the block above.
When you have finished editing the attributes, press Enter to keep the changes you have made or Escape to discard them.
The attributes are:
Directions - Up Down Left Right.
These control which way computer cars will move or turn on a road square. Must be set in the block above the road surface.
Block Type
There are 7 different block types. Again, the block type must be set in the block above the block you really mean ;-).
Air | An air filled block. Falling objects will fall down through air type blocks. Blocks that aren't above water / road / pavement / field / building should be set to air. |
Water | Water! Things sink if they end up in a block with this set. |
Road | A Road square. GTA will generate random computer controlled cars on road squares when you aren't looking. Use the Direction attributes to control which way the cars drive. |
Pavement | A pavement (sidewalk) square. GTA generates random peds on pavement squares, who walk in whichever the heck direction they like. |
Field | A field square is one on which neither peds nor cars will go. Not just for grass squares, use it if there is some roadway you don't want computer controlled cars on, but still want the player to drive on. |
Building | A square you can't walk into. |
Unused (6) | This block type is not used. |
Unused (7) | This block type is not used. |
Draw Flat
A block that is marked with Draw Flat will be drawn two sided and transparently, only at the top and left sides. If there is a lid texture set, this will be drawn transparently, too.
When you are selecting a "flat" block in map view, you have to scroll so that the block is in the bottom-right quarter of the screen.
Slope
This shows the current slope value. You cannot change it from this screen - use the [ and ] keys when viewing the map.
Lid Rotation
This shows the current lid rotation value. You cannot change it from this screen - use the R key when viewing the map.
Traffic Light
I do not know what these bits are for yet, but you can change them all the same.
Remap
This controls how dark the tile is displayed. M1 doesn't display remapped tiles yet.
Flip TB
This flips the top and bottom side textures horizontally. Not displayed properly by M1 yet.
Flip LR
This flips the left and right side textures horizontally. Not displayed properly by M1 yet.
Railway
Whether this block is part of the railway or not.
Adding Blocks
Press Ctrl+9 to make a fully textured block above the current block. You will need to set ALL the attributes manually.
Press Ctrl+1 through Ctrl+6 to add a block to the current stack at that level.
Slopes
The only hard thing about slopes is that all that I said about setting the attributes in the block above the block you mean do not apply to slopes! e.g. A sloping road block has a block type of road (the above block should be air).
Known Bugs & Common Problems |
I walked/drove straight through something I shouldn't have! Why?
Check the block type attribute of the block you walked through. It should be set to building if nothing is going to go through it.
This problem will be the most frequent one, and is sometimes hard to fix. Look at "real" maps (ie the ones that came with the game) for something similiar to what you are trying to do and make sure you are using the attributes etc the same way they are.
There are peds all over my roads!?
Oops. You have just made a sprawling metropolis with all the blocks set to Pavement.
All the parked cars / dustbins / trees disappeared from my map after I edited it in M1! What's going on?
M1 doesn't let you edit the static objects yet. These should be in within the next version or two (or three...;). Static objects are just discarded when the map is saved.
It's too hard to make a map!
I know. Hopefully with a bit of feedback M1 should get easier and easier to use (let's face it, it couldn't be much harder!).
Keyboard Reference |
D | Dump the screen to a .TGA file |
Escape | Quit |
Cursor Keys | Scroll Map. |
Shift | Scroll 4x as fast. |
Space | Display mini-map. |
- (numeric keypad) |
Zoom in. |
+ (numeric keypad) |
Zoom out. |
H | Hide the currently selected layer. |
U | Unhide all hidden layers. |
[ | Increment slope type |
] | Decrement slope type |
R | Change lid rotation |
X | Rotate textures on block faces |
J,K,L,I,M | Change the texture on the current
block. These keys are layed out so K is the lid, J the left etc. |
C | Copy the current stack to an internal clipboard. |
P | Paste the current stack. |
0 | Displays the attributes for the current block |
9 | Displays the attributes for the block above the current block. |
1-6 | Displays the attributes for the block at level N. |
Control+0 | Sets the current block to a clean new block with 4 sides and a lid. |
Control+9 | Sets the block above the current block to a clean new block with 4 sides and a lid. |
Control+1 to Control+6 |
Sets the block at level N to a a clean new block with 4 sides and a lid. |
F | This fixes an obvious problem - if you delete all the cubes in a stack, you can't make it the current stack anymore. F goes through and puts a lid on the bottom of any empty stacks. |
O | Optimise Map. Tries to get rid of any edges or lids that can't be seen. Doesn't do a brilliant job, but doesn't do any harm. |
S | Save map. This takes a long time (30+ seconds) for a busy map! |
N | Tries to clear a map. You still have to put a wall around the edge manually though. |
Q | Quicksave. Saves the current map to QUICK.GMP in the current directory. This map is not compressed (which is why it's quicker!). |
W | Quickload. Loads QUICK.GMP in the current directory. |
Credits & Legal |
This program was written by Sam Jessup (samj@btinternet.com). Extra help hacking GTA's file formats was provided by Michael Mendelsohn (mendel@Informatik.Uni-Bremen.DE) and Ian Howson (ianh@geocities.com).
The latest version is always available at http://www.btinternet.com/~samj/m1.htm.
NO WARRANTIES. YOU USE M1 AT YOUR OWN RISK. ANYONE WHO TRIED TO SUE ME WOULD FIND I HAVE NO MONEY ANYWAY.