The NoX map editor was first release for the public at version 0.9 by programmers from noxforum.net (f.e, Zoaedk, Dood3r and Mordentral and KnightTemplar) The map editor has the ability to create, open, and even modify maps. The map editor uses very little visual "assistance" but it can do almost anything that you see in Solo or Quest mode, also creates multiplayer maps to use online with it's own waypoints, spawn points, obelisks, and so on!
When you install the map editor, it will install and restart itself about 4-5 times (3rd one is the longest). When you load it after updating, you should come up with a the latest updates file showing the latest updates of the map editor. When you close it, the map editor will appear immediately and you should be presented with a blank map and tools on the side.
The menus at the top of the window help to navigate through some of the features of the Map Editor. Each one will be described here.
This menu contains the generic list of options you see in a lot of other programs. Clicking New creates a blank map for you to work with. If you are using an older version of the map editor, the maps created using this will not work. Load loads a map into the Map Editor, Save saves the map, and Save As will let you save that map under a different name or location.
This menu contains some of the more complex features of the Map Editor. These can be important in finishing a good map, so it would be a good idea to get accustomed to them.
The List Objects option will bring up a dialogue box containing an organized list of objects. They can be re-organized according to extent, X-coordinate, Y-coordinate, name, and script name. You can use this list to quickly find specific objects' locations by selecting an object, then clicking Go To Object. The other buttons don't appear to be functional.
The next option is a very expansive topic in the Map Editor; Scripts will bring up a dialogue box offering a number of different fields to operate. Here, you are able to control the events that occur within the map using functions. Functions control many of the actions that occur in Solo mode, so it's possible to imitate those scripts -- and more -- using this function. Due to its extensive nature, it's almost impossible to completely cover this feature in any length of summary. So, for information on scripting, see Map Editor Scripting.
The Groups option brings up a dialogue box with a few different features. The purpose of this feature is to give groups of objects, walls, or waypoints a general reference name to be referred to, particularly used for scripting. To create a new group, you must follow a set of steps:
- In the top field, type in a name for the group.
- Click the bubble corresponding to the kind of group you want to create.
- For objects and waypoints, type in the extent number of each new entity. Press enter to separate each one. For walls, put in the wall coordinates (see Options) for each wall, separating the X- and Y-coordinates with a comma.
Clicking Save will save the group (click this before closing!) Clicking Delete will delete the selected group, and Close will exit the dialogue box.
The Export Object option will export the properties of the selected object as an XML file to be edited in another program. The use of this feature is questionable, but it does have a few things that can't be accessed in the Properties dialogue. The Import Object option is supposed to import the XML file into the selected object, I presume, but it might not be a functional feature. The Export Image option will save a 5880x5880 image of the entire map. The Reorder Extents option will assign a new extent number to every object. This seems to find purpose only in assigning unique extents to copied objects.
In the Operations submenu, there is another option called Spin Map. Its main purpose is to create symmetry in a map quickly by copying things on one side of the level to the other. Once clicked, a dialogue box will pop up containing a few features.Using this feature is fairly straightforward. The Flip Walls/Objects checkboxes will represent what will be duplicated in the flip, and the Divide1/Divide2 buttons (see Mini Map) will copy the selected things from one part of the level diagonally to the other. Divide1 flips from the top right to the bottom left (and vise versa) and Divide2 flips from the top left to the bottom right. The Use Advanced Options checkbox will make the features below apply to the flip. The first one will make all of the flipped walls a certain wall type, and the second will put the new walls in a specified minimap group. There is currently no way to flip tiles or waypoints.
This menu mainly consists of some preference-based options that will certainly come in handy in multiple aspects of the Map Editor's use.
The Grid option will toggle between showing and not showing gridlines, which can be used to position objects, waypoints, tiles, and walls with definite precision. The Save .nxz option will toggle whether or not, when you save the map, a .nxz file will be created for it as well. This should always be checked on unless under very special circumstance. The Language submenu will reveal a list of language files to change the interface language to be more preferable. It does not change the definitions of script commands. It is very experimental, and it may be best to keep it set to Invariant Language.
The Wall Coors. option is a very important feature to keep in mind when creating wall groups (see Groups) or referencing single walls in script. The coordinates on the bottom status bar usually indicates the location of the mouse on the map by pixel. However, after toggling this option, those coordinates will switch to indicate the mouse's position in accordance to wall position.
You can then use these coordinates to refer to specific wall segments. This is necessary for referencing walls in wall groups or script functions.
The Invert Colors option will reverse the colour scheme. This feature is for just in case you would be more comfortable working in a brighter user interface.
This menu is purely informational and comes to little use to the average user. The Updates option will display the changes recently made to the editor, in reverse chronological order, and the About button will display some miscellaneous info about the map editor.
This menu contains tools to be used for modifying the default options for separate Mod boxes. They can be helpful for when a complex object doesn't have any preset modifiers, or has an incorrect default Mod.The Write Editor option will bring up a dialogue box containing a number of features.
There are two lists of objects, specifying what doesn't already have a mod editor and what does, respectively. The Add button will move the object selected from the top list to the bottom list and allow that object to have a mod editor. The Delete button acts similarly, but moves an object from the bottom to the top. The Edit button will display the modifiers for the object selected from the bottom list. Here you may specify information for the mod editor to follow, such as what will be treated as a byte, a string, an integer, void, or hidden. The Save button will save the changes made while editing. The Write Update.txt button will create another file called "Update" and place it in the bottom list. Its purpose is questionable. You can also add mod editors without using the Write Editor by going to the "NoxTools/scripts/objects/modeditors" directory. From here, all of the mod editors are stored in text documents; this way, you can just edit the mod editors using Notepad, or drop in downloaded mod editors.
The Default List option displays a dialogue box with a list of objects that don't have any Mod box data. The Write Update.txt button will create a text file much like that mentioned in the Write Editor. The Search Map button will cause the Map Editor to scour the map for these objects, checking to see if any have data in their Mod box. If so, those objects will be considered the "default Mod box" for that specific object, they will be removed from the list, and the field beside the button will display a number representing how many new default Mod boxes were created. Most of the objects listed have no default Mod box. Also, much like the Mod editors, Mod boxes are stored as a text document in the "NoxTools/scripts/objects/defaultmods" directory to easily place downloaded default Mods into.
Here will explain each individual function of the tools in each section
These buttons generate the type of wall as presented on the buttons. Simply click one and click an area on the blank map (black part)
This section allows the user to select what type of wall they want to use. Variation is the type of that wall you want, keeping Auto Vari selected makes the walls more randomized.
This allows the user to choose whether the wall they insert is going to be a Window, can be destroyed, or a Secret wall. Sometimes, the windows don't work with some of the walls and becomes a broken window. (If this is the case, make sure you are using wall variation 0; it's usually the only wall variation that supports windows.) Windows never work for corners, only straight walls. Destructive walls are walls that appear with cracks on the wall and can be destroyed by hitting it. Secret walls are walls that look like normal walls but are opened by the player (or NPC) touching it. AutoOpen has to be on for this to work. If you want the wall to close after, select AutoClose as well.
- Show Grid - Places a grid on the map
- Show Tile Grid - Shows the tiles while placing walls
- Snap Center - Placed objects are snapped to the center of the edges
- Alt Grid Color - Changes the grid color to yellow
- Show objects - Toggles the view of objects
- Toggle Names - Switches from object number to the name of the object
- Snap Full - Placed objects are snapped to the center of tiles
Create starts creating the selected tile. AutoVar randomizes the type of the selected tool. 3x3 creates a 3 by 3 tile instead of a 1 by 1. Auto Edge creates edges when the tile is created by a different tile. Scroll bar selects the type of tile being used. Edges lets the user create their own edges for that tile. Scroll bar beside it the variation being used (AutoVar must be off).
These options are for the Auto Edge when selected on top. First scroll bar is the type of edges you want when blending with another tile. Tiles To Ignore ignores using auto edge when a tile is created beside, box must be checked.
Objects are a very important function in every map. They govern where items, monsters, and players will appear, not to mention all of the decorative, hazardous, and script-based additions.
The drop down menu reveals a varied list of objects to choose from. Clicking Create will do exactly what it looks like; clicking on the map will create the selected object. Clicking Select will allow you to change objects' positions and properties, among other things. Left click will select the desired object, right click will open a menu for the currently selected object.
Copy will copy an exact replica of the selected object for later use. Paste will, obviously, paste the copied object in the desired location (though an object must already be selected before you can use it). Delete is as obvious as Create. Clicking Properties will bring up a dialogue box, where a variety of things can be changed depending on the type of object. Clicking Export as Default Mod will make this copy of the selected object the "official" one, meaning that every time you make this object again, they will start with the exact same properties as this one. This is helpful for when a starting mod has properties set for a specific occasion, such as for a script or for elevator destination. Export Binary File will create a file in the NoxTools/scripts/objects directory displaying the contents of the Mod Box (not crucial to making a map in any way.)
Now, let's look at the Properties...There are a number of different options available in this dialogue box. Name will allow you to change what this object is. The Script Name box places this object under a string to be used for scriptual purposes, though it can also just be used as a reference. The Pickup Func box will call the script function specified once this object is picked up (though the object has to be something you can pick up for it to be of any use). The X and Y boxes are just more technical values for the object's location. The Extent box determines the number the object is referenced by, and is used in various functions (such as in elevators and groups). The Team box determines what team the object will fight for, or who can pick it up, depending on what kind of object it is. Team 0 is neutral, Team 1 is Red, and Team 2 is Blue, but more teams can be used if necessary.
Clicking the Edit Mod button will bring up another dialogue box, and one of two things will happen; if there is a mod editor for this object, a simplified menu will appear, where you can change a variety of options with ease; if there isn't a mod editor, a box will appear and tell you there isn't a mod editor for that object, meaning you'll have to modify the Mod Box manually. To do this, click the Enable Mod checkbox. The area below will un-grey and you will be able to modify it at your own risk. Only do this if there is no mod editor, or if the value you want to modify can't be changed in it. **NOTE: Some objects need to have modified Mod Boxes to work properly. Neglecting this can cause your map to not work and even crash the game!**
The Enchants button, only applicable for weapons and armour, will bring up a dialogue box with four drop-down lists stating a variety of enchantments that can be associated with the item. These boxes have a specific form and should be filled in accordingly: the first one should have a "WeaponPower/ArmorQuality" value, the second should have a "Material" value, and the third and fourth can be just about anything else. The Doors button can only be used for doors; it determines the orientation of the door, as well as if the door is locked and, if so, what key must be used to unlock it. The Inventory button will open up another dialogue box containing a list of items that this object is carrying right now. The first time you open it, it should be empty. From here, clicking Add will create another object and another Properties window will open up. Double clicking on an object on the list will bring up the Properties window for it, and clicking Delete when an object is highlighted will, of course, delete it. The Auto Equip checkbox will determine whether an NPC wears the items in his inventory or not. The drop-down menu below the word Properties determines what type of object it is. Since this is a very sensitive option, it's usually a good idea to leave it on the same value as it was at default.
You may notice that a number of these features are grayed out. This is because in order for many of these options to work, you must apply an Xtra Byte. Clicking the Xtra Byte checkbox will allow these options to be modified. (If Xtra Bytes is already checked, un-check it then check it again.)
NOTE: In order for your map to be playable, there must be at least one PlayerStart object!
Polygons have several important purposes in a map. Mainly, they are used to control lighting and which objects and walls you see on the minimap at any given time. They can also be used to activate scripts and create a few aesthetic effects. Polygons are not required for a map to work, but without them, the map will look very gloomy and the minimap may not work properly.
The drop-down menu will display the polygons that exist in the map right now. If there are none, click New to create one. The following dialogue box will appear:The Name field determines what this polygon will be called (mostly just for organizational purposes.) The Points field displays the coordinates of where each point of the polygon is. Here, you can input them manually, but there is a much simpler way of accomplishing this documented below. The On Enter field will call the specified script each time someone enters it. The Ambient Light Color button will bring up a colour dialogue box where you can pick or modify the overall lighting of the polygon. The Minimap Group field determines which walls are visible when you enter this polygon.
Getting back to the main Polygon section, Edit will bring up the above dialogue box again. Clicking Points will cause the mouse to add points for the selected polygon wherever you click. You can change their positions, or delete them entirely, manually. Clicking Del will delete the selected polygon (not single points of it).
Point editing tips:
- The entirety of the polygon should not intersect the walls they are surrounding (unless it is for a special effect, like gradient ambience.)
- If they do, you can manually add or move points in the Edit dialogue box.
- Make sure all of the walls inside the polygon have the same minimap group (or else the minimap will not display them properly.)
Gradient ambience is the use of conjoined polygons to make it look like an area is getting darker or lighter (like in the map "Estate" when you enter the cave). To do this:
- Create a number of polygons (one for each different shade).
- Have each one sequentially intersect the area that the effect will be applied to.
- Modify the point coordinates so that they match up with the ones beside them.
Waypoints are an important element in having a well-created map. Their most popular function is to create paths for creatures to follow, but also find use as pointers for scripting purposes. Waypoints don't need to be added, but not adding them will make the Hunt command for summoned creatures fail to function.
Clicking Create Waypoints will add waypoints to the map wherever you click, under the name specified in the Name field. Right-clicking on a waypoint in this mode will delete them. The Make Connections button will create paths to follow (under the specified connection flag) by left clicking on one waypoint, then on another. Right clicking while doing this will delete the connection. The Select Waypoint button will allow you to move the waypoints around for correction of position.
Connection making tips:
- Make sure, when making two-way paths, to make connections TWICE; once starting on one waypoint, and again starting on the other waypoint; else it will be a one-way connection. One-way connections show up dark yellow, while two-way connections show up orange.
The Name field displays the name of the waypoint currently selected, or the one about to be created. It's best to only use this field when using the waypoint in a script. The Connection Flag field determines what hunting flag is required for creatures to follow the waypoints correctly. The default hunting flag is 128, so it would be best to leave it that way.
Due to a bug in the current version of the NoX Map Editor, every waypoint you add will automatically be turned "OFF", and the user interface has no way to combat it! To fix this issue, see the 'Tips & Tricks' section of the Map Editor Scripting page.
The Mini Map feature is an easy and accessible representation of the current map layout. This is basically what you'll see whenever you use the minimap in NoX, so it can be used as a reference. It only shows where walls are placed, though.
Clicking anywhere on the Mini Map will take you to that location in the editor, so you can make changes more efficiently. Right-clicking will take you to that area in the Gui Map. The Go to Center button will, obviously, take you to the center of the map. The Divide1 and Divide2 checkboxes will place guidance lines on the Mini Map. This feature is mostly used to judge the symmetry of a map (such as to balance CTF maps). The Mass Delete button is supposed to enable the three buttons below (all related to destroying an entire aspect of a map), but apparently isn't working properly in the current version.
The Map Info tab is the area where you can provide a name and description for your map, among other things. This is mostly just for informational purposes, but there are a few important options that should be noted here.
The Map Type drop-down menu reveals a list of game types this map can be classified as. Make sure this is set to the type you intend to use it for, or else it may not show up in the correct map list; if at all; when playing NoX. The values below Recommended Number of Players change the numbers shown on the map list. The values under Quest Intro will, obviously, change aspects of the intro screen in a Quest map. (The Title field must have a title specified in NoX data in order to be displayed properly, and the Graphic field must have a string specific to an intro picture in NoX, else it will automatically be set to the Temple of Ix intro.) Every other field is for informational purpose only.
Gui MapEditThe Gui Map is an experimental feature in recent versions of the NoX Map Editor. It provides a rough idea of what the map will look like ingame; this is a very convenient feature, as it saves the time it used to take to modify the map, then save it and go into NoX to see if it turned out correctly. It's only a rough representation of the map's looks, though, so you can't actually make changes in this mode. Also, it doesn't show edges or walls, which may hinder the Gui Map's overall usefulness.
You can move the viewport by holding the right mouse button and dragging. This is essentially the only working feature of the Gui Map.