UWME 0.1.2 - URW Map Editor by BlackEye 1/15/2006

THIS VERSION OF THE EDITOR WILL ONLY WORK WITH URW VERSION 2.8.  VERSION 2.9 IS NOT SUPPORTED.

----------------------------------------------
DISCLAIMER : This software is not guaranteed in any way.  It is largely untested, may contain bugs that will crash the program and/or your computer, corrupt opened files, and cause loss of data.  Use this program at your own risk.  Above all, backup any files that you are going to be editing, and better still, backup your whole URW directory.
----------------------------------------------


Contents:

1. Requirements

2. Installation

3. Usage

4. Scripts

5. Thanks To

----------------------------------------------

1. Requirements

Windows OS (98 or better should work fine)
DirectX 7
Graphics card capable of 16 bit graphics or better at 1024x768 resolution (windowed or fullscreen)
URW



2. Installation

Unzip the contents of the archive into a folder of your choice.  When the executable is first run, a configuration file will be created.  You will then be prompted to select your URW installation directory.  Browse to your URW directory and select it.  It is very important to correctly select your URW directory, as the program will not function as expected if it is not set.  If the default configuration does not work, or you want to change color depth or window mode, you can manually edit UWME.ini.  mode can be set to windowed or fullscreen, and the color depth can be changed to any available on your system.



3. Usage

3.1 File Menu

Open	- Allows you to load a map file
Save	- Saves the currently loaded map file
Save As	- Allows you to save the currently loaded map with a name you specify
Quit	- quits the editor

3.2 View Menu

World Map	- shows the world map in the main window
Local Map	- shows the loaded map in the main window

3.3 Script Menu

Generate World Map	- Allows you to browse for a script, which is executed and the resulting map saved as the world map
Generate Local Map	- Allows you to browse for a script, which is executed and the resulting map saved as the currently loaded map
Place Feature		- Allows you to browse for a script, which is executed and modifies the currently loaded map

3.4 Tools Menu

Set URW Directory	- Lets you change the directory to look for URW files

3.5 Main Window
The upper left section of the window contains the map view.  This is where a loaded map will be displayed.
At the bottom of the window are rows of tiles that can be placed on the map.  Clicking on a tile will select it.
While viewing the world map, clicking the left mouse button will load the regional map that the mouse is over.
When viewing a map, clicking the left mouse button will place the selected tile on the map.  Right clicking will select the tile under the mouse, and middle clicking will load the map linked to by a teleport, a local map, or a blank map if none exists.
The tab strip on the right side of the window contains a teleport and object tab.  Teleports for the currently loaded map will be displayed on the teleport tab.  Clicking the add button will ask for a position and map to teleport to, and add the teleport to the map.  Highlighting a teleport in the list and clicking delete will remove it from the map.
The object tab contains a list of objects in the constant.obj file, as well as a list of objects/creatures on the loaded map.  Highlighting an object in the constant list, typing a number (1-255) in the qty box and clicking on add will ask for a position and add the object to the map.
Highlighting a row in the bottom list and clicking delete will remove the object from the map.
Putting a check in the Show Objects + Creatures checkbox will draw objects and creatures on the map.  You will have to move your mouse over the map to update the map.



4. Scripts
The angelscript scripting library is included in the editor and allows the execution of scripts to edit maps.  Scripts use a syntax almost identical to typical c and c++.  See the angelscript website at http://www.angelcode.com/angelscript to learn more about this scripting language.  Your script should include a main() function that will be called from the editor.  Currently the following functions are exported for use in external scripts:

void message(string text)		- shows a message box to the user with the text specified
void getpos(int &x, int &y)		- lets the user click on a position on the map and sets x and y to those coordinates
int rand()				- returns a random number
int gettile(int x, int y)		- gets a tile from the map
void settile(int x, int y, int tile)	- sets a tile on the map

Several scripts are included with the editor that give examples of using these functions.



5. Thanks To

Sami				- for the game
Spuzzum + Theodis		- for the map and object file formats
Dosbox				- for allowing me to easily run the game
Allegro				- for the graphics library used in the editor
CGUI				- for the GUI library used in the editor