Games-Axmud

 view release on metacpan or  search on metacpan

share/docs/guide/ch15.mkd  view on Meta::CPAN

The second method is useful for rooms which have two exits leading to the same destination room - one of them a primary direction like **east**, the other a non-primary direction like **enter pub**. (*Dead Souls*, one of Axmud's pre-configured worlds...

* Right-click on the exit and choose **Allocate shadow...**
* In the dialogue window that appears, select the **east** exit
* Click the **OK** button. The **east** and **enter pub** exits are now drawn as a single exit
    * The **east** exit is called the **enter pub** exit's *shadow exit*

The third method is perhaps the most convenient, and it doesn't involve the automapper window at all.

The client command **;allocateexit** can be used to allocate the direction.

        ;allocateexit northeast enter pub
        ;alx ne enter pub

Note that the compass direction can be typed in full (**northeast**) or abbreviated (**ne**).

Of course, typing the **;allocateexit** part every time is a little cumbersome, so you can simple miss it out.  The following commands all have the same effect:

        ;allocateexit northeast enter pub
        ;alx ne enter pub
        ;northeast enter pub
        ;ne enter pub

##<a name="15.15">15.15 Labels</a>

Besides rooms and exits, you can also draw labels on your maps.

![Simple label](img/ch15/simple_label.png)

* Right-click on the map and choose **Add label here**
* In the dialogue window that appears, enter any text
* Click the **OK** button. The label appears at the position you originally clicked

Labels can be selected by clicking on them (like rooms, they are drawn blue when selected.) Labels can also be right-clicked or dragged around the map, in exactly the same way as rooms (see [Section 15.11](#15.11)).

###<a name="15.15.1">15.15.1 Customising labels</a>

The appearance of labels can be customised.

You can specify your own *label styles*.  Axmud provides four label styles by default:

* Style 1 - red text, normal size
* Style 2 - purple text, normal size
* Style 3 - black text, large size
* Style 4 - black text, very large size

You can modify any of these label styles, or add new styles.

* From the automapper window's menu, select **Edit > Edit world model...**
* In the edit window that appears, click the **Label styles** tab
* Select a style by clicking on it
* Click the **Edit** button
* Make any changes you want in the new edit window
* Click the **OK** button in both edit windows to apply your changes

The best way to use label styles is to use one style for titles, another style for street names, another style for warnings, and so on.

If you want a label with its own unique colours, you can modify the appearance of that label only.

* Right-click the label
* In the popup menu that appears, select **Customise label...**
* Make any changes you want, and click the **OK** button

If you want to get rid of the unique colours, you can do this:

* Right-click the label
* In the popup menu that appears, select **Set label...**
* Select a label style, and click the **OK** button

If you want to creates labels with multiple lines of text, you can do this:

* From the menu, select **Labels > Use multiline labels**
    * Repeat this step to go back to single-line labels
    * This setting only affects new labels. If you turn off multiline labels, any existing multiline labels are not affected

##<a name="15.16">15.16 Exit ornaments</a>

When your character tries to move south but walks into a closed door, the automapper redraws the exit (assuming that the current world has been configured to recognise closed doors).

![Closed exit ornament](img/ch15/closed_ornament.png)

An exit with a single line through it is a door that can be opened (and presumably closed, too). The extra line is called an *exit ornament*.

A locked door is drawn with two lines through it.

![Locked exit ornament](img/ch15/locked_ornament.png)

You can add an ornament to an exit manually.

* Right-click on the exit and choose **Set ornaments > Pickable exit**

An exit which can be picked (for example by a thief, using a lockpick) is drawn as an empty rectangle. A breakable exit (representing a locked door that can be broken down by brute force) is drawn as a letter **I**, perpendicular to the exit.

An impassable exit (representing an exit that can't actually be used, at least not by ordinary players) is drawn as purple square.

![Impassable exit ornament](img/ch15/impassable_ornament.png)

If you don't know how to get through an exit, you can mark it as a mystery exit, drawn as a dark red square.

![Mystery exit ornament](img/ch15/mystery_ornament.png)

An exit can be reset so that it no longer has an exit ornament.

* Right-click on the exit and choose **Set ornaments > No ornament**

###<a name="15.16.1">15.16.1 Twin exit ornaments</a>

Two-way exits are normally drawn as a single line (or a parallel pair of lines, in *complex exits* mode). This actually represents two exits: one leading north, and one leading south back to where you started. The south exit is called the *twin exit*...

Axmud usually adds an exit ornament for both an exit *and* its twin at the same time.  If this behaviour isn't what you want, you can turn it off.

* Select any exit on the map
* In the automapper menu, de-select **Exits > Set ornaments > Also set twin exits**

##<a name="15.17">15.17 Assisted moves</a>

[Section 15.14](#15.14) describes how to draw an exit like **out** as a primary direction like **north** or **southeast**.

The automapper has a function called **assisted moves**. If you're in a room with only one exit - **out** - and if this room is drawn in an easterly direction, you can leave the room by typing *either* **out** or **east**.

Unfortunately, because of technical limitations, assisted moves only apply a few exits at a time. You're safe to assume that these command sequences will have the same effect:

        north;north;out
        north;north;east

...but the following pair of command sequences might not have the same effect, 100% of the time:

share/docs/guide/ch15.mkd  view on Meta::CPAN

###<a name="15.21.4">15.21.4 Editing room flag colours</a>

If you don't like the colour the automapper is using for a particular flag, you can easily change it.

* In the automapper menu, click **Edit > Edit world model...**
* When the edit window is open, click the **Room flags** tab
* Scroll through the list until you find the **pub** room flag
* Click the line to select it
* Click the **Change** button
* When the dialogue window appears, select a new colour
* Click the **OK** buttons in both windows to apply your changes

![Set room flag colour](img/ch15/room_flag_4.png)

##<a name="15.22">15.22 The painter</a>

While exploring a region of the world - a forest, perhaps  - it would be quite tedious to set the room flags for every new room individually. One solution is to use the automapper window's *painter*.

The painter can be configured by using the menus or by using the toolbar. We'll start by using the menus.

The first step is to turn the painter on:

* From the automapper menu, select **Mode > Painter > Painter enabled**

Now we can ask the painter to 'paint' each new room green, using the *room is in a forest/wood* room flag:

* From the automapper menu, choose **Mode > Painter > Edit painter**
* When the edit window opens, click on **Room > Page 2**
* Find the combo (drop-down) boxes near the bottom of the window
    * In the first one, select **terrain**
    * In the second one, select the **forest** room flag
* Click the **Use** button to add the room flag to the list above
* Click the **OK** button to close the window

Now, as you move around the forest, every new room will be drawn green.

![Room painting](img/ch15/room_flag_5.png)

To turn off the painter, de-select **Mode > Painter > Painter enabled**.

The painter remembers its settings, so the next time you enable the painter, it will resume painting new rooms green.

At the moment, the painter is only painting new rooms.  This is how to modify existing rooms, too.

* From the automapper menu, choose **Mode > Painter > Paint all rooms**
* Set your character's current room
* Move your character from one room to another, painting rooms as you go

###<a name="15.22.1">15.22.1 Using the room painting toolbar</a>

The room painting toolbar can be used instead of the menus.  In many ways it's more convenient.

![Room painting toolbar](img/ch15/paint_toolbar.png)

* Click the paintbrush button to enable the painter
* Click the **Ne** button to paint only new rooms, or the **All** button to paint all rooms

Now you can add your favourite room flags.

* Click the plus button
* In the popup menu, select **Terrain > Room is in a forest/wood**
* A new green button will appear

You can add as many favourite room flags as you like.  Each room flag aren't actually applied until you have clicked its button to select it.  Click the button a second time to unselect it.

The remaining buttons in this toolbar are used for wilderness rooms, discussed in [Section 15.24](#15.24).

###<a name="15.22.2">15.22.2 Using the quick painting toolbar</a>

The painter described above is fine for painting rooms as you move around, but if you just want to toggle room flags in existing roms, you can use the quick painting toolbar.

![Quick painting toolbar](img/ch15/quick_toolbar.png)

This toolbar doesn't interact with the painter, but it does use the same set of favourite room flags. (Click the plus button to add some favourite room flags, if none currently exist).

Using this toolbar is as simple as clicking on a coloured button, then clicking on a room.

If you click on a selected room, the room flag is toggled in any other selected rooms at the same time. (If you're not careful, this can mean that a particular room flag is turned *on* in some rooms, and turned *off* in others!)

The **Quick paint without resetting**, when selected, allows you to click on rooms several times without having to click the coloured button each time.

##<a name="15.23">15.23 Colouring the background map</a>

You can colour the background map, if you want to.  It's very useful for features like rivers and mountain ranges which are a part of the game world, but which are not directly accessible to players.

![Coloured background](img/ch15/colour_bg.png)

The background map is coloured using the toolbar.

![Colouring toolbar](img/ch15/colour_toolbar.png)

The first step is to choose some colours.

* Click the plus button
* Choose a colour, and click the **OK** button
* A new button appears in the toolbar

Now you can choose your painting method.  The map contains an invisible grid, with each gridblock containing no more than one room.  You can colour each gridblock separately.

* Click the button with a spray can and a small red jet
* Select the colour to use by clicking on one of the colour buttons you've created
* Click on the background map to colour one gridblock

###<a name="15.23.1">15.23.1 Colouring multiple gridblocks</a>

Drawing a whole river, one gridblock at a time, would be rather laborious, so it's also possible to draw coloured rectangles.

* Click the button with a spray can and a large red jet
* Select the colour to use by clicking on one of the colour buttons you've created
* Click on the one corner of the rectangle
* Then click on the opposite corner of the rectangle
    * Rectangles can overlap each other, if that's convenient for you
    * But colouring a single gridblock destroys the colour underneath it

You may have noticed that there's a colour button that's the same colour as the map.  You can use this button to *remove* coloured areas by the same method you used to paint them - one gridblock at a time or in rectangles.

The colour normally applies only to the current level.  If you want to colour the background map on every level, not just the visible one, clicking the button with three parallel lines.

When you've finished colouring, click the button with empty spray can.

##<a name="15.24">15.24 Wilderness rooms</a>

In MUD terminology, a wilderness is an area of the world in which movement is possible in all directions.

In many cases, rooms in a wilderness have no exit list.  This is presents a problem for the automapper, which expects an exit list an every room.  *EmpireMUD 2.0* provides a good example.

![EmpireMUD map](img/ch15/empire_map.png)

The best way to handle wilderness rooms is to use the painter (described in [Section 15.22](#15.22)) and its toolbar.

![Painting toolbar](img/ch15/paint_toolbar.png)

* Click the paintbrush button to enable the painter
* Click the **Wi** button to make it paint wilderness rooms

Now, as your character moves around the world, the automapper draws wilderness rooms instead of normal rooms.  Wilderness rooms are drawn with a black circle in the middle of the room.

![Wilderness rooms](img/ch15/wild_room_1.png)

In a normal room, if you try to move in a direction without an exit, the automapper will get lost.

In a wilderness room, the automapper will assume that there's an exit leading to *any adjacent room*.  In fact, the automapper won't draw exits at all in wilderness rooms.

You can convert a normal room to a wilderness room and back again, if you want to.

* Right click the room
* In the popup menu, select **Add/set exits > Mark room as wilderness**
    * Select **Add/set exits > Mark room as normal** to convert back to a normal room

When you've finished drawing wilderness rooms, click the painter button to disable the painter.

###<a name="15.24.1">15.24.1 Wilderness border rooms</a>

*EmpireMUD 2.0* presents us with another problem: the wilderness contains buildings which can only be entered in one direction, a situation something like this:

![Wilderness rooms](img/ch15/wild_room_2.png)

The solution to the problem is to use *wilderness border rooms*.  For these rooms, the automapper makes these assumptions:

* An exit exists between the room and any adjacent *wilderness room*
* An exit exists between the room and any adjacent *wilderness border room*
* No exit exists between the room and any adjacent normal room unless you have drawn it on the map

In the example above, you would draw a normal room for the house, but draw *wilderness border* rooms all around it.  Then you would manually add an exit between the house and the room to the south.

![Wilderness rooms](img/ch15/wild_room_3.png)

*Wilderness border rooms* are drawn with an empty circle in the middle.  The nearby rooms can remain as *wilderness rooms*.

In this example, it's now only possible to enter the house from the south.

##<a name="15.25">15.25 Room interiors</a>

The automapper can show statistics about each room. One useless but entertaining feature is to show how many times a room has been visited by the current character.

* In the automapper menu, select **View > Room interiors > Draw character visits**

![Character visits](img/ch15/char_visits_1.png)

For the benefit of users who need to keep precise records of which rooms they've visited, and how often, there are some toolbar buttons you can use to modify the numbers shown.

![Character visits](img/ch15/char_visits_2.png)

* Click the orange **SC** button to set the selected room as the current room, and increase the number of visits by one
* Click the **V+** and **V-** buttons to increase/decrease visits in the selected room(s) by one
* Click the **SV** button to set the number of visits manually
* Click the **RV** button to reset the number of visits to zero
    * The number zero is not drawn inside the room

These operations can also be performed by right-clicking a room and using the popup menu, or by using the window's main menu.

###<a name="15.25.1">15.25.1 Synchronising grid coordinates</a>

Another useful feature is to display each room's grid coordinates.

* In the automapper menu, select **View > Room interiors > Draw grid coordinates**

If it's important, you can synchronise the grid coordinates used by the world with those used by Axmud. (This synchronisation only affects the coordinates displayed inside the room box).

For example, if the automapper is showing a room's coordinates as **100, 100**, but the game is using the coordinates **20, 135**:

* In the automapper menu, click **Rooms > Other room features > Synchronise grid coordinates...**
* In the dialogue window, adjust the X coordinate with the (negative) value **-80** 
* Adjust the Y coordinate with the (positive) value **35**
* Click **OK** to apply the changes

##<a name="15.26">15.26 Graffiti mode</a>

Often it's useful to temporarily mark the rooms you've visited.  For example, a quest might require you to find something in a random room, somewhere in the region.  You can check each room in the region, one by one, marking them as you go.

To turn on graffiti mode from the automapper window's menu, click **Mode > Graffiti mode**.

![Graffiti mode](img/ch15/graffiti_mode.png)

When graffiti mode is turned on, every room you visit is marked with a large X.  The graffiti is erased when you turn off graffiti mode, or when you close the automapper window.

In addition, the automapper window's title bar shows how many rooms have been graffitied, and how many have not.  (Rooms are counted in the current region, and then in all regions.)

If you need to toggle graffiti in a particular room (or rooms), you can do this:

* Select one or more rooms
* In the automapper menu, select **Rooms > Update character visits > Toggle graffiti**

##<a name="15.27">15.27 Updating maps</a>

As your character moves around the world, the automapper adds new rooms to the map (but only when it is in Update mode).

Details about each new room are stored. In particular, the room's title, verbose description and list of exits are all stored, if they are available.

For existing rooms, the title and verbose description are updated, if they have changed since the character's last visit.

If you don't want to store (or update) all of these components, you can change the default behaviour. For example, to prevent the automapper from storing (or updating) verbose room descriptions:

* From the automapper window, de-select **Mode > Update rooms > Update room descriptions**

###<a name="15.27.1">15.27.1 Matching rooms</a>

When your character moves to an existing room, the automapper compares the room on the map to the room captured by the Locator task. If it's not the same room, the automapper decides that it is now lost.

By default, only the room's exits are checked: if the room on the map has the same exits as the room captured by the Locator's task, the automapper considers that the rooms match.

If you want the automapper to be more fussy - for example, if you want the rooms to have the same room title, as well as the same exits - you can change the default behaviour.

* From the automapper window, select **Mode > Match rooms > Match room titles**

If you de-select all of the items in the **Mode > Match rooms** menu, the automapper will never get lost. (This is not recommended, especially when the automapper is in *update mode*.)

When comparing verbose descriptions, only the first 100 characters are compared by default. You can increase or reduce that number, if you want.

* From the automapper menu, choose **Mode > Match rooms > Set description length...**



( run in 1.535 second using v1.01-cache-2.11-cpan-364913b4093 )