v1.2.041 (31 Jul 2019) -------------------------------------------------------------------------------- Pre-configured worlds - MSDP is no longer disabled on Kallisti by default. The pre-configured world has been updated a little - Numerous issues at Achaea (and other IRE worlds) have been fixed Major new features - A speech engine can now be specified from the command line, when starting Axmud. For example, Linux users who want to use the Festival speech engine might start Axmud by typing 'axmud.pl cryosphere festival' - For users of Arch Linux, there is now an AUR package available for use; see https://aur.archlinux.org/packages/axmud/. If installing Axmud manually, the installation procedure for Arch-based distros has changed; see the INSTALL file Major fixes - Locales that use a comma as a decimal point (for example, German) cause numerous problems throughout the code. This should now be fixed for all languages/locales - Improved handling of the Pueblo protocol. Worlds like Ancient Anguish ask the client to create additional windows; handling of those windows is now much better. Fixed an error that prevented some of those additional windows opening at all. Fixed an error that displayed a literal clickable link, rather than the contents of a file. Links are now displayed in cyan, rather than underlined, as with the original Pueblo client. Handling of multi-character whitespace has been fixed - Axmud can force worlds to share a single main window, or grant each world their own window. Switching between these two modes was broken. Fixed - Fixed MXP room statement (description) detection. For worlds that mark a room statements with special tags, like Iberia MUD, Axmud can now use those tags correctly - MS Windows users could not change the font. This is now fixed. The standard Gtk font selection dialogue no longer worked, and could even cause crashes. Replaced the deprecated dialogue with the modern one - Perl plugins cannot be loaded from all possible locations. The new ;importplugin command will copy any Perl plugin to a location in Axmud's data directory, from which it can be loaded - Fixed segfaults on shutdown in certain situations Minor fixes - IO::Socket::SSL is now an optional dependency, for the benefit of some Linux distributions on which it can no longer be installed (due to problems with the parent Net::SSLeay module). If the dependency is not satisfied, Axmud will not be able to connect to any world using SSL - Fixed broken code in ;modifyconfig - The layout of the Countdown Task's window has been improved a little - A character's purse contents/bank balance could not be modified from withint the character edit window. Fixed Axbasic features/fixes - Axbasic has been updated to v1.003 - Added new OPTION SILENT, which suppresses messages like 'AXBASIC: Executing 'test'' - Added new Ifaceselect () function, as an alternative to using Ifacepop () and Ifaceshift () - Fixed several issues with interface notifications, for example in the NEXTIFACE statement and the Ifacename$ () function - Some issues with matching substrings in regular expressions have been fixed. For a regex in the form (...|...|...), with each ... containing its own substring, the Ifaceshift () and Ifacepop () functions will now return an empty string rather than crashing Axmud. Added a new Ifacedefined () function which might be useful in this situation - Fixed several issues with the WAITTRIG statement - Fixed incorrect regex handling in the POKEADD statement - Made a few minor corrections to the Axbasic tutorial v1.2.0 (31 Mar 2019) -------------------------------------------------------------------------------- Release notes - Thanks to HÃ¥kon and Rob, without whose generous assistance this release would not have been possible - Axmud's graphics libraries have been replaced with something more modern (Gtk2 has been migrated to Gtk3; Gnome2::Canvas has been migrated to GooCanvas2, Gnome2::WNCK has been replaced with WMCtrl). As a result, you will notice small differences in the appearance of almost everything (but hopefully not too many error messages) - Window tiling has been implemented for users of MS Windows. Window tiling of external (non-Axmud) windows only works with X11-compatible systems, so it definitely won't work on MS Windows or on Wayland. Multiple workspaces still do not work on MS Windows - MS Windows can now run Axmud using both the 32-bit and 64-bit editions of Strawberry Perl - Over time, duplicate keyboard shortcuts had crept into many menus. The menus have been checked and, as a result, many keyboard shortcuts have been modified. Please be careful when navigating menus using your keyboard rather than with your mouse - The ability to take screenshots of the 'main' window has been removed (please use an external screenshot programme instead). The ';screenshot' command has been removed. Automapper screenshots are not affected by this change Known issues - If the system terminal window is visible, you might see a lot of Gtk3 warning messages displayed there. We think this is an issue with the Gtk3 graphics library. The issue(s) have been corrected, but the fix is not available on all systems yet - When there isn't enough space to draw all the toolbuttons in the 'main' window and the automapper window, the extra buttons are drawn in a drop-down menu. Items in this menu are not visible on some computers, particularly on MS Windows. We think this is another Gtk3 issue which will fix itself eventually - There are some intermittent problems with scrolling text. If a textview (an area of a window containing mostly text) seems to be juddering, you can type ';cls' to clear the window. You can also try reducing the maximum size of the textview (from the 'main' window menu, click 'Edit > Axmud preferences... > Settings > Page 6', change 'Size of textviews' to a value like 2000, then click the 'Set' button to apply the change) Automapper new features - As a result of the graphics upgrade, the automapper will draw your maps somewhat more quickly. Pre-drawing operations, in particular, are much faster now. Some drawing operations which took an interminably long time (due to some quirks in the old graphics libraries) are now either much faster or virtually instantaneous - The world model (containing all maps) has been redesigned so that it takes up much less memory - typically 60-70% less. You'll notice that, for large maps, file load/save times are dramatically quicker - From now on, you can use the new ';compressmodel' command to make (small) reductions in the amount of memory used by any new maps you draw. Most users can ignore this command - For users who prefer to use their own room flags, you can now hide all standard room flags, leaving only your custom flags visible. This applies both to the automapper window's menus and the world model edit window. From the menu, click 'Edit > Edit world model... > Room flags > Page 1' and modify the setting in the top-right corner - Map labels can now be rotated at any angle - When pre-drawing regions, a summary of drawing operations is now visible in the automapper window's title bar Automapper fixes - Some users with very large maps were experiencing an 'out of memory' error on low-to-medium specification machines. This issue is now fixed: we have not been able to generate the error even in maps with hundreds of thousands of rooms. However, you will still need enough memory on your machine to convert the old map into its new format. The authors can do this for you, if you like. You can contact them on the Axmud forum - There is a new ';splitmodel' command which can be used to vary the size of the multiple data files now used to save maps. Most users can ignore this command - In the automapper window, if you changed the visible level to an empty one, then switched to a different region, then switched back again, a Perl error was generated. This is now fixed - When the Locator task was running and the user set a current room in the automapper window, a load of Perl errors were generated. Fixed - Zooming in and out of the map is now (more or less) instantaneous. Zooming all the way out will no longer change the position of the map. However, the ability to display text in a constant size while zooming in or out has been removed - Map screenshots now work much better (and faster) than before - Room echoes were being drawn the wrong way around. This is now fixed - the dark patch to the left of a room now represents a room immediately above, not a room immediately below - Fixed an issue with drawing map labels containing non-alphanumeric characters such as @ - Fixed an issue with exits treated by Axmud as duplicate exits, for example the 'east' and 'swim east' exits at Two Towers MUD - Axmud crashed after resetting an exit's assisted move. Fixed - Fixed handling of room statements at Kallisti; Axmud now recognises the upper-case [ N S E W ] exits - All types of random exit now turn blue when you click to select them Axbasic new features - This version introduces a complete tutorial for the Axbasic scripting language. See the files in ../share/docs/tutorial (or just read them on the Axmud website) - The only string concatenation operator that's now allowed is &. (Earlier versions of Language::Basic used +, but this is now deprecated) - Added an exponent operator, ^ - Subroutines now return 0, by default. To return a string value, start your subroutine declaration with 'SUB STRING'. The default string value returned is an empty string. See the Axbasic tutorial for more information on how this works - Added new statement RANDOMIZE - Added new functions Epoch (), Floor (), Left$ () and Right$ () - Modified the WHILE statement to allow for 'WHILE 1' and 'WHILE 0'. Modified the UNTIL statement to allow for 'UNTIL 1' and 'UNTIL 0' - OPTION DIVERT has been renamed as OPTION REDIRECT (to avoid confusion with the similarly-named Divert task) - PEEKPOP has been renamed as POKEPOP, and PEEKSHIFT has been renamed as POKESHIFT - Showprofile () has been renamed as Showprofile$ (), as it returns a string, not a numeric value Axbasic fixes - Axbasic got confused by 'LET name$ = "gandalf"', because NAME is also a keyword. From now on, 'name$' is treated as a variable, but 'NAME' is treated as a keyword in all circumstances. In other words, you can have a string variable called 'name$', but not a numeric variable called 'name' - Built-in function names like Sin () can no longer be used as variable names (so 'LET sin = 50' is no longer allowed) - Fixed an error which failed to interpret 'IF number = 10 THEN PRINT "Hello"' correctly - Fixed an error that enacted FOR loops with a negative increment as an infinite loop, e.g. during 'FOR a = 5 TO 1 STEP -1' - The rules for subroutines are now the same as those for functions; invalid subroutine (and function) names are not allowed - 'CALL funcname' can now be used as well as 'CALL funcname ()' - Fixed errors in column PRINTing, for example in 'PRINT x, y'. Also fixed some errors in PRINTing the results of functions, such that 'PRINT Int' now generates a useful Axbasic error, rather than a useless Perl error - Fixed minor problems with the ADDGAUGE, DELGAUGE, OPEN, TITLEWIN and VAL statements - The Timestamp () function was returning negative numbers. Fixed - Help files for the Int (), Ip () and Fp () functions gave the wrong return values. Updated the files - Axbasic was unable to handle the keyword ANGLE and the built-in function Angle () correctly. Fixed - Fixed some problems in handling invalid tokens (like 'hello' instead of "hello"), array out-of-bounds errors and scripts lacking the compulsory END statement Minor new features - In all windows with more tabs than available space, you can now right-click any of the tabs to get a list of the invisible tabs, rather than scrolling through them, one by one - The ';testpattern' command can now be typed as ';patterntest', too - ';protectobject' can now be typed as ';protect', and ';monitorobject' can now be typed as ';monitor' - You can now create an empty mission with ';addmision' (previously, it was necessary to create a recording first) Minor fixes - When Axmud crashes, the restart message is now made visible in every session - Blinking text with RGB colours now works - Fixed 'wide character in print' errors when logfiles are turned on, and when connected to a MUD which uses non-ASCII characters - ';deleteregion' wouldn't accept a number as an argument. Fixed - Modified ';locateroom' so that it doesn't generated countless thousands of lines of output - The tooltip for the 'main' window blinkers displayed values in the wrong order. Fixed - Fixed error in ';listzonemodel' - In the client preference window, on the 'Plugins > Page 1' tab, the Enable/ Disable/Test buttons were broken. Fixed them - Fixed some minor problems with Axmud's implementation MXP/MSP protocols. MXP/ MSP data sent by The Gathering MUD (tgmud.net 9010, which is not a pre-configured world) now works better. Axmud can optionally accept some types of MXP/MSP data which is, strictly speaking, illegal (this is turned off by default) - Tidied up the output of the ';mxp' command - After a disconnection, ';listtask' no longer lists tasks that have already shut down - About a dozen client commands that could not be used after a disconnection (for example, ';testpattern' and ';listtask'), can now be used v1.1.405 (24 Dec 2018) -------------------------------------------------------------------------------- Automapper new features - Large regions are now pre-drawn, and are retained in memory when they're not actually visible. As a result, it's no longer necessary to redraw each region every time you move from one region to another, or move up and down a level. This should be a significant improvement for users whose regions contains thousands of rooms, each of which takes several seconds to draw. Smaller regions are not pre-drawn, and are redrawn every time they're needed. By default, a 'large region' is one that contains at least 500 rooms, and when pre-drawing region, about 500 rooms are drawn per second. You can change both of these values in the world model's 'edit' window, if you want - You can watch the progress of Axmud's pre-drawing operations with the new MapCheck task (type ';starttask mapcheck' ) - When you create a new region, Axmud now asks you what size you want it to be - Text on the map - map labels, room tags, room guilds and exit tags - can now be set to retain their size as you zoom in or zoom out, if that's what you'd prefer - Graffiti mode now works when connected to a world in 'connect offline' mode - You can now add bends to all exits that are drawn as a line (or pair of lines) - When the automapper is expecting you to complete an operation by clicking on some part of the map, the cursor icon now changes to make it clearer that Axmud is expecting you to do something - Axmud can now detect exit states (such as closed doors) from an exit's colour, as well as from the text of the exit list - There are also two new exits states - one for emphasised directions (such as those that follow a road), and a custom exit state. For custom exit states, Axmud can automatically add an assisted move, for example converting a blue 'north' exit into a 'swim north' exit. The Locator task's window has been updated to show more information about the current room's exit states and assisted moves - Axmud can now cope with worlds like Two Towers, which sometimes have an exit list containing two 'north' exits. Axmud is now able to convert a duplicate exit like this into something else, for example converting the second 'north' exit into a 'swim north' exit Automapper fixes - The automapper window's title bar shows ^ and v to indicate which levels are occupied. This functionality was sensitive to rooms, but ignored map labels. Fixed - Coloured areas on the background map were not always drawn on every level. There were also some issues with deleting coloured areas. Fixed both - Fixed some issues with changing an exit's direction - Fixed an issue in which a nearby room was sometimes selected, if the user clicks on the background map - The operations to delete regions, rooms, exits, map labels (and so on) sometimes failed if any of the objects to be deleted were selected. Fixed - When a west exit is connected to a room that has an unallocated exit, temporarily drawn as east, Axmud didn't handle it very well. The west exit is now drawn as a one-way exit, and the unallocated exit is temporarily allocated to a different direction - The 'reset character visits' and 'reset room data' functions didn't work if no region was visible. Fixed both - Fixed some issues with region exits and bent exits which were not reset properly in some situations - When you use your mouse wheel to zoom a map all the way out, and then zoom back in again, the map is often centred in a different position. The positioning has been improved, although because Gtk does some weird things with scrollbars, it's still not perfect - Fixed a few issues with the operation to merge rooms from two different parts of the map (including in auto-rescue mode) - When you use a room's 'edit' window to change its room flags, the room was not redrawn properly after the 'edit' window was closed. Fixed - In some situations, the Locator task failed to identify a room statement (description) generated by a 'look' command. Fixed Major new features - 'Main' windows have a new search box. Click the magnifying glass button near the bottom-right corner of the window to show or hide the box. The new client commands ';findtext' and ';findreset' perform the same function - There's another new button, this time in the bottom-left corner, which increases the number of command entry boxes. The new boxes only work on world commands. You can add some text to the beginning and/or end of every world command you send, for example converting 'hello' into 'say hello'. Click the button several times until you have the boxes you want - The layout of the Quick Input window has been improved. Among the changes are two new command entry boxes which behave exactly the same as those described just above - New Countdown task which works like a stopwatch. New client commands ';setcountdown' and ';setcountup' - New Connections task which shows a list of sessions (connections to a world) and their current status. When the task is running, you can press CTRL+1, CTRL+2 (and so on) to switch between sessions. The existing CTRL+TAB still works even when the task isn't running - All triggers have a stimulus and a response. You can now modify a trigger so that the response is ignored; this is very useful when you just want to change the colour/style of some text, using trigger styles - Timers can now accept both a time interval like 60 (seconds), and a 24-hour clock time like 12:00. If you specify a clock time, the timer fires at that that time every day, once per day. If you use a clock time in the form '99:HH', for example '99:30', the timer will fire at 30 minutes past the hour, every hour. For timers that use time intervals, the minimum interval that Axmud will accept is now 0.1 seconds - You can now choose whether Axmud should wrap text using whole words, or just using characters, or not at all. For example, to change text wrapping in the 'main' window, modify the setting in the colour scheme (';editcolourscheme main'). In most cases, the world knows how much text Axmud can fit inside its 'main' window, and wraps text before sending it to Axmud, so changing the setting will seem to make no difference - Text-to-speech operations now used a fixed scale, in the range 0-100, for word speed, rate, pitch and volume. Therefore it's no longer necessary to remember which values each speech engine accepts - use 0 for the lowest acceptable value, and 100 for the highest acceptable value Major fixes - You can now instruct Axmud to auto-connect to a world (or worlds), rather than having to use the Connections window every time. Specify your preferred worlds in the client preference window, or use the new client commands ';setautoworld' and ';listautoworld' - Axmud installation failed (on some systems) because the default test file produced a negative result. Fixed - Fixed (again) the 'Do you want to patch?' dialogue windows that some users are seeing every time they connect to a world - Axmud stores its data file in a default location. The last release added a ';setdatadirectory' command, so that users can set a different location; this did not work if the location didn't already contain some data files. Fixed - Fixed a crash that occured when connecting to Achaea and other IRE worlds. Fixed a series of warning messages when connecting to Aetolia and some other IRE worlds - By default, the 'main' window can contain up to 10000 lines of text. Once this limit was reached, Axmud started drawing clickable links in the wrong place (if at all). Fixed several issues and it's now working as intended - Macros did not recognise (or accept) keypresses like CTRL+F1 or ALT+5. Modified them so that a wider range of keypresses are acceptable. (Macros still do not respond to a keypress like 'x', because that would leave the user unable to type ordinary commands) - ';toggleshare', which tells Axmud to use a different 'main' window for every connection (or not), was broken. Fixed it, and you can now change the setting from the client preference window, if that's more convenient Minor new features - In Axmud's source code, the ../share/standalone directory contains a new Perl script which removes the labels from a world model file without the need to start Axmud - Logfiles can now include a preamble, if you want one (for example, identifying the player or adding a copyright message). Preambles are not written by default - The expanded list of worlds has been updated. We think it contains at almost all of the MUDs, MUCKs, MUSHes (etc) that currently exist. (To see the whole list, click the planet button in the Connections window) - Axmud is now confirmed to work with Chinese-language MUDs. Connect to the 'pkuxkx' world to see it in action! Minor fixes - In 'main' window's 'Recordings' column, several of the menu options were inconvenient to use, or else desensitised when they should be sensitised (or vice-versa). The functionality has been improved; the 'Show recording' and 'Copy recording' options are now available even after the recording has been stopped - In addition, operations like 'Recordings > Add line > Add world command...' were broken. Fixed them all - Fixed some errors caused by rewriter triggers that fire more than once on the same line - For a clickable email address like 'gandalf@gmail.com', the underline was drawn in the wrong place (because Axmud detected 'gmail.com' as a clickable weblink, before checking for email addressse). Email addresses are now checked first, which fixes the problem - When the character falls asleep/passes out/dies (etc), the Status task's window changes; the character's new life status is displayed in the window's title bar. However, using ';setlife' to change the character's life status artificially did not reset that text. Fixed - Fixed rare 'Can't call method "destroy" on an undefined value' errors seen when closing Axmud by clicking the standard close window button more than once - The ';setcustomday' command has been renamed as ';setcustomweek' - For some worlds, like GreaterMUD, commands are sent to the world one letter at a time, as soon as you type each letter. This didn't work if connected to (for example) GreaterMUD and Discworld at the same time. Fixed, and also fixed icons used inside the command entry box so that they're updated when you switch between sessions - If you start Axmud from the command line and specify a world, e.g. (in Linux) './axmud.pl discworld', Axmud automatically connects to the world, but also opens a Connections window. The window is no longer opened - Increased the size of the 'OK' button in various windows which have only one such button v1.1.343 (30 Nov 2018) -------------------------------------------------------------------------------- Features removed - Keycode objects along with the 'keycodes' data file have been completely removed - Some Axmud standard keycodes ('kp_up', 'kp_down', 'kp_left', 'kp_right', 'kp_page_up', 'kp_page_down', 'kp_home', 'kp_end', 'kp_insert', 'kp_delete') have been removed as they weren't available to MS Windows users. As a result, the cursor up and keypad up keys now share the same standard keycode, 'up'. The same applies to the other keycodes listed above. To update your scripts, just remove the 'kp_' portion of the keycode. Any existing macros will be updated automatically Automapper new features - You can now merge someone else's maps with your own. Firstly, export the world model. The quickest way is from the automapper menu; select 'File > Save/export world model...'. Send this file to your friend, who can merge your map into their own by selecting 'File > Merge world model...'. Your friend must be using the same version of Axmud as you (or a later version). There is also a new ';mergemodel' command, if you prefer to work from the command line - The automapper has a new dialogue window for use when you want to share your maps with other people, but don't want them to see all of your labels. From the automapper window menu, select 'Labels > Quick label deletion...'; this opens a window in which all labels in all regions are displayed. You can quickly choose which labels to delete and which to keep, before exporting your map in the normal way. (This change is permanent, so before deleting any labels you should make a backup of your map!) - In the automapper window, added a new toolbar button set. To use it, use the blue/white paintbrush icon to add some coloured buttons. Click the button and then click a room; the equivalent room flag is added to (or removed from) the room. If multiple rooms are selected, the operation is applied to all of them. See also the Axmud Guide, Section 15.22.2 - Added relative directions. As far as we know, only Discworld uses them (but Axmud's relative direction are available for any world that needs them). At Discworld, the direction the character is facing changes the way exits are described; so, the exits might be 'forward' and 'left', or they might be 'backward' and 'right'. This is now handled automatically; Axmud works out which direction the character is facing, and converts an exit named 'forward' into the equivalent map direction like 'east'. If assisted moves are turned on, you can move through the 'forward' exit by typing 'east' or 'e', as normal. Discworld players can use the new ';addrelative' and ';deleterelative' commands if they are helpful. For other worlds, you can specify relative directions in the dictionary 'edit' window - The direction the character is facing can be set (or reset) artficially by the new ';setfacing' command, or by using ';resetlocator ' - Exits can now have an alternative direction (in case an 'enter blue portal' exit sometimes becomes an 'enter red portal' exit, or something) - Involuntary exit patterns (seen when your character is moved to a new room without any input from you) and repulse exit patterns (seen when your character tries to move to one room, but is instead moved to a different room) now have an optional destination room. If you specify the destination, the automapper won't get lost. This only applies to patterns stored in a particular room; involuntary/repulse exit patterns for the whole world (stored in the world profile) don't have a destination room at all - Added a new exit ornament, 'mystery' (drawn as a dark red square). If you don't know how to pass through an exit, but think it's probably possible to pass through it, you can mark it as a mystery exit - You can now select all rooms, exits, labels (etc) in the whole map. You can also now select all impassable or mystery exits - The 'Find room...' operation can now look for room tags, as well as room numbers - When using crafty moves, 2-way exits (rather than a 1-way exit) are now created, when appropriate - You can now add multiple exits to multiple rooms at the same time - A map label's style can now be set directly from the popup menu after right- clicking the label - The ';setroom' command has been updated with a new switch, ';setroom -l', which sets the last known location (drawn in green) as the new current location. This switch can be combined with others, e.g. use ';setroom -f -l' to set the location and switch to 'follow' mode Automapper fixes - At a few worlds, the automapper was unreliable, in that it frequently got confused about the current location for no obvious reason. The reason, in fact, was incorrect handling of prompts, an issue that only affected those worlds. The prompt handling code has been overhauled and should now be working perfectly at all worlds - Axmud's pathfinding algorithms have been improved so that they can create paths through adjacent regions. This should permanently solve the problem of finding a path between two rooms in the same region A, if the only path between them goes via a region B. You can modify the way this is handled. From the automapper menu, click 'Edit > Edit world model ... > Settings > Page 6', and find the 'Simple pathfinding - adjacent region mode' - Pathfinding operations failed badly in certain rare situations. Fixed them all - After double-clicking a room in a different region, Axmud finds the shortest path to that room, and sends a large number of world commands to get there. The destination room is drawn brown until the character arrives. Axmud no longer draws and then re-draws every room along the path in brown, which greatly reduces the response time after double-clicking a room, or when using a command like ';go' or ';drive' - Selected labels were handled badly; you could select a label in one region, and then discovert that a completely separate label in a differnt region was also selected. This is now fixed - Very old exported world models (from 2016 or earlier) could not be loaded or imported. Fixed - The ';locateroom' command often produced too many false positives, or not enough matches, depending on various factors. It should be working much better now - 'Illegal direction' error messages are now optional, and turned off by default. From the 'main' window, select 'Edit > Axmud preferences... > Settings > Page 10 > Illegal exit directions' to turn them back on - Fixed a nasty error message seen when moving using an assisted move like 'backward' and when the destination room doesn't match the expected one - The way non-standard directions is handled has been improved. An exit like 'swim east' is now automatically drawn as an east exit. Some problems with clashing directions have been fixed - After dragging multiple rooms/labels around the map, and when connecting an exit to a room by clicking on the room, Axmud doesn't try to redraw the whole region any more - Fixed several problems with the automapper code that could cause inconsistencies in the world model (and which can be detected using the ';testmodel' command) - The ';testmodel' command now limits the number of error messages it will show (so it will no longer try to show 100,000 error messages, if there's some inconsistency in all of the exits in the map) - Improved the look of several of the automapper window's dialogue windows - When transferring rooms to a different region, the map is now automatically centred over the transferred rooms - When dragging a map label with a border, only the text was dragged. Fixed - Fixed issues with the map's background colouring. The blue selection box did not appear if the starting position was over a coloured portion of the map. Also, when trying to delete a coloured portion, several adjacent coloured portions were often deleted - Coloured buttons in several of the automapper window's toolbars were effectively invisible if they were the same colour as the surrounding window. Added a black border to make them visible - Fixed several issues with automapper tracking, which keeps the current room in the visible portion of the map - When moving around a map in 'connect offline' mode, Axmud displays room titles/descriptions. For some worlds, the description was displayed twice; this will no longer happen - Users are now prompted for confirmation before deleting a single room Major new features - Axmud now supports the CHARSET and NEW-ENVIRON protocols, IAC GA control sequences and TCP keep alive packets - If you want Axmud to store its data files in a different location (for example, on an external hard drive, on a USB stick or on a network drive), you can now do so without editing the Axmud source code. In Axmud's installation directory (folder) there's an empty file called 'datadir.cfg'. You can edit that file to specify a path to a directory, e.g. 'F:\mydata\axmud' or '/home/myname/data/axmud'. Alternatively, you can use the new ';setdatadirectory' and ';listdatadirectory' commands. Restart Axmud to apply the changes - Axmud could already auto-detect weblinks like 'http://deathmud.com', and make them clickable. It can now detect shorter weblinks like 'deathmud.com'. Detection of shorter weblinks can be turned off if they are an annoyance (from the 'main' window menu, deselect 'Edit > Axmud preferences... > Settings > Page 1 > Make short links like deathmud.com clickable') or use the new ';toggleshortlink' command - A few worlds send information about the character's health points, and so on, via MXP. This data is displayed in an additional gauge at the bottom of the 'main' window. Axmud can now automatically convert and store this data. For this, you must specify which MXP variables correspond to which Status task variables. From the 'main' window menu, click 'Edit > Edit current world... > Status > Page 5'. Enter an MXP entity like 'hp' and the equivalent Status task variable like 'health_points'. For an example, connect to Discworld (in online or offline mode), for which the variables have already been entered - For worlds (such as Discworld) that use MXP text gauges, Axmud no longer tries to show a maximum value if none exists (e.g. maximum health points are shown but maximum experience points are not) Major fixes - At many worlds, Axmud did not display bold text correctly if it was in the default text colour. Fixed - Users can use their TAB key to cycle through recent commands in the 'main' window's command entry box. However, it didn't work in 'connect offline' mode. Fixed - Fixed several problems with MXP clickable links, which meant that exits at Discworld were not clickable and that, occasionally, MXP tags were actually visible in the 'main' window (which could confuse the automapper) - In some situations, when multiple clickable links appeared on the same line, only the first one was actually clickable. Fixed - Fixed several issues with the ';exportfiles' and ';importfiles' commands - Some tasks, such as the Channels and Divert tasks, were an inserting an empty line at the top of their task windows after being reset. Fixed - Fixed ';loadplugin' command which didn't work at all if no file path was specified - For pre-configured worlds that require a patch, a dialogue window appears asking for confirmation. This window appeared every time Axmud started; it should now appear only once - When a world was cloned, its triggers, aliases, macros, timers and hooks were not cloned. This is now fixed, and cloning a world should create clones of its interfaces Minor new features - The search box in the Connections window now initiates a search when you press your ENTER key - You can now create temporary triggers, aliases, macros, timers and hooks from the main 'edit' window; it's no longer necessary to create the interface, open its own 'edit' window and mark it as temporary from there - When system messages can't be displayed in the 'main' window, the flashing '!' button now flashes in a colour that matches the most recent system message - Several improvements to the way recordings are handled. When recordings are in progressed, or paused, an icon appears in the 'main' window's command entry box. 'Main' window menu items are now desensitised to prevent you stopping a recording, when you only wanted to resume a paused recording - New hook event, 'map_lost', which fires whenever the automapper gets lost (Axmud already had 'map_no_room', which fires when the automapper gets lost but also when the Locator task is reset) Minor fixes - Following changes to the Status task in the previous release, the ';setlife' command was unusable. Fixed that, and also fixed the character 'edit' window so that changes to a character's life status were transmitted to the Status task immediately - Updated version numbers in incorporated code to fix CPAN Kwalitee issues - Fixed 'Use of unitialized value' error seen at login in Luminari - Fixed crash seen at logoff in Materia Magica, caused by ATCP/GMCP issues - The ';copyrecording' command tripped up an a direction like 'in' that can't be abbreviated; fixed it. The format of the command's output has also been improved - When doing an automatic login in 'tiny' mode (for example, at HellMOO), the character's password is now obscured when it's displayed (in green) in the 'main' window v1.1.273 (1 Nov 2018) -------------------------------------------------------------------------------- Minor fixes - CPAN-only release to fix indexing issues v1.1.270 (31 Oct 2018) -------------------------------------------------------------------------------- Pre-configured worlds - Ten new pre-configured worlds: Dragon Swords, Forgotten Kingdoms, Forest's Edge, GreaterMUD, Midnight Sun, NannyMUD, StickMUD, The Land, The Inquisition: Legacy and The Unofficial SquareSoft MUD - Minor improvements and fixes for the existing pre-configured worlds: 3Kingdoms, 3Scapes, Alter Aeon, Dead Souls (Local/Prime/Dev), Luminari, MUD1, MUD2 (British and Canadian servers), and Two Towers Automapper new features - When moving from room to room, the automapper checks that each room matches the one it was expecting. If the rooms don't match, the character is marked as 'lost'. Some users didn't like this arrangement, so this version of Axmud introduces several new features which allow the automapper to continue drawing new rooms, if that's what you would prefer. These features are fully explained in the Axmud Guide - From the automapper menu, 'Mode > Auto-compare > Auto-compare new rooms' turns on auto-compare mode, which checks every new room against existing rooms in the region. Any matching rooms are selected (drawn blue). In addition, a rectangle is drawn inside the new room - a black rectangle if there is one matching room, a red rectangle if there are multiple matching rooms. The way this works can be tailored from the same sub-menu - Any room can be compared against other rooms in the region by right-clicking it and selecting 'Move rooms/labels > Compare room > ...with rooms in region' - From the automapper menu, 'Mode > Auto-rescue mode > Enable auto-rescue mode' turns on auto-rescue mode. Instead of marking your character as lost, Axmud creates a temporary region, and starts drawing rooms there. It compares those rooms against rooms in the previous region. When you find a single matching room, you can double-click on it; everything in the temporary region is merged back into the previous region - Rooms from one area of a map can be merged into another area of the map at any time (as long as the automapper window is in 'update' mode). There are several ways to do this, including drag-and-drop - From the automapper menu, 'Mode > Auto-slide mode > Slide new room forwards' turns on auto-slide mode. If a new room can't be drawn because there's a different room in the way, the new room slides into the first available space. The departure or blocking rooms can be moved instead, if you prefer. (This is an alternative to auto-rescue mode; you can use whichever is most convenient) - The automapper now remembers which regions you've viewed recently. When you draw a map of a town, in a region called 'Town', you might find there isn't enough space on the map to draw all of the rooms in some buildings. If so, you can create another region called 'Town buildings'. Then, you can transfer a room to that region by right-clicking the room and by selecting 'Move rooms/labels > Transfer to region > Town buildings'. Transferring a room moves it to exactly the same grid position in another region - For individual rooms that the Locator task can't recognise - for rooms that don't have an exit list, for example - you can now specify a pattern that matches any line in that room; the Locator task and the automapper will then be able to treat it like any other room. Right-click the map and select 'Add room here', then right-click the room and select 'Add pattern > Add unspecified room pattern...' - Data stored in one or more rooms - such as titles and room descriptions - can now be reset, quick and easily. First select the rooms, then from the automapper menu select 'Rooms > Other room features > Reset room data...' - Transient exits (those which move from room to room, often because they're attached to a vehicle) now have an optional destination room - The edit window showing the Locator task's current room now allows you to open edit windows to view the room's temporary contents - Improved handling of edits to automapper window labels and label styles. When creating new labels (or editing existing ones), you can now switch between dialogue windows that offer single-line or multiple-line input (from the automapper menu, select 'Labels > Use multiline labels'. Other minor chnages should make labels less frustrating to work with - The world model search window (from the automapper menu, select 'Edit > Search > Search world model...) now has a more sensible tab arrangement, so it's no longer necessary to scroll through tabs to see the results of your search. The search was also broken, and has been fixed - The automapper will now prompt you before deleting multiple rooms and/or labels Automapper fixes - Pathfinding routines were unable to find a path between two rooms in the same region, going via another region. This problem has been fixed - Don't forget that if several region exits exist between regions A and B, the pathfinding routines will only use one of them. If all the region exits in region B lead to region A, you should probably convert them all into super-region exits (which the pathfinding routines can use). From the automapper window menu, you can now select 'Regions > Current region > Convert all region exits' - When in 'update' mode, the automapper window no longer overwrites exit ornaments (such as a line representing a closed door) - Fixed numerous problems with the room comparison/room matching code - Fixed room tags/room guilds being drawn in different positions, depending on whether complex or simple exits were visible - Fixed occasional 'use of initialised value' errors caused by certain types of exit at certain worlds - New custom room flags weren't visible in the automapper window's menu. Fixed Major new features - Axmud can now emulate VT100 terminals (connect to GreaterMUD or Forgotten Kingdoms to see the new code in action). VT100 mode is turned on automatically as required, so there's no need to enable anything - Most worlds send text to be displayed at the bottom of the main window, but a few (especially those using VT100/MXP) expect text to be inserted anywhere in the window. When this happens, Axmud will stop displaying its system messages in the main window. Instead, the new '!' button will start flashing yellow for system messages or red for error messages. You can view the messages by clicking the button. (The System task, introduced in the previous release, is unaffected by this change) - If you prefer all system messages to be directed into this console window, use the ';togglemainwindow -s' command - The new ';configureterminal' command enables you to disable VT100 altogether, to display a visible cursor in the main window, and to enable direct keyboard input (very useful for worlds that expect you to navigate menus with your cursor keys, and so on) - After a disconnection, the session goes into a limited state in which tasks halt, edit windows close and many client commands are no longer available. On disconnection, Axmud can now switch to 'offline' mode instead, exactly as if you had clicked the 'Connect offline' button in the Connections window. To turn this on, use ';setsession -o' - Greatly improved detection of invalid patterns (regular expressions/regexes), which tend to cause a crash if anything tries to use them. You'll now find it impossible to enter an invalid pattern in client commands. Edit and preference windows will either refuse an invalid pattern, or provide a button to test all the patterns in each tab - Added a new Pattern Tester window, which you can use to test patterns and substitutions against any line of incoming text. Use the ';testpattern' command to open it, or from the 'main' window menu select: 'Edit > Test patterns...'. You can also use the new Axbasic functions, TESTPAT() and TESTPAT$() - All interfaces (triggers, aliases, macros, timers and hooks) now have an optional cooldown attribute. If set, the interface won't fire again until the cooldown period has expired - For rewriter triggers and aliases that use group substrings, it's no longer necessary to enclose the substitution in double quotes "..." (existing triggers and aliases will continue to work as before, so there's no need to prune them all) - Ordinary (non-rewriter) triggers can now use group substrings, e.g. for the pattern 'An (orc) has arrived', the trigger's response can now be something like 'kill $1', which is sent to the world as 'kill orc' - If one or more of Axmud's data files had been corrupted, it was necessary to navigate through Axmud's data folder, find an earlier copy of the file and to restore it manually. Axmud now loads the earlier copy of the file automatically, if the most recent copy appears to be corrupt - For worlds that offer an MSP sound pack for download (e.g. Kallisti, Materia Magica, CoffeeMUD), you can now use the ';msp -d' to automatically download the sound pack and install it on your system (which should be quicker than navigating through Axmud's data folders yourself) - Major internal redesign of the Status task. You probably won't notice many changes, although some values that were not captured correctly (most notably quest points) will now work. A nice bonus is that coloured gauges are visible as soon as the session starts - In the Status task, the distinction between standard and custom values has been removed; if you capture a number and call it something like 'cats_total', that number is automatically available for display in the task window or the main window's gauges - Many values that were previously stored in the Status task (and which were lost, at the end of the session) are now stored in the character profile and are thus preserved from session to session (your character's health points is one example) - A new client command, ';setcommifymode', controls how the Status task adds commas to very long numbers (converting 1000000 to 1,000,000, for example) Major fixes - Fixed problems with blinking text. Text using RGB colours still does not blink, but text using standard and xterm colour tags now blinks correctly - Fixed mutliple ECHO issues at worlds where echoing of keyboard input is permanently turned off (e.g. at MUD1) - Fixed several problems with basic mapping mode at worlds like MUD1/MUD2 - Temporary directories in Axmud's data folder were not emptied when Axmud starts, as they should have been. Fixed, which in many cases reduces the size of the data folder by 33% - Fixed problems with clickable links that caused a crash when they appeared at the end of line (in certain situations) - Fixed automapper error that used the wrong destination room, after a departure room was moved in a fixed direction (or transferred to a new region) - Macros created by the Compass task were not destroyed when the task was halted or reset. Fixed Minor new features - Routes (see the help for ';addroute') can now use speedwalk commands like '.3nw2s', as well as the more conventional 'n;n;n;w;s;s' and 'north;north;north;west;south;south' - The setup wizard window (visible when you first run Axmud) now offers to use recommended options for your system, rather than forcing you to click through several pages of options - Use ';debugconnection -q' if you want to see a debug message when invalid (or unrecognised) VT100 escape sequences are received - Added ways to show your IP address. New client command, ';getip'. New Axbasic function IP$(). The chat task command ';info' has been updated to show your IP address clearly. - Several minor improvements and fixes for the Chat task - The layout of the menus in the 'main' and automapper windows have been improved - The RawText and RawToken tasks can't start until the character is marked as logged in. Axmud now stores text received from the beginning of the session, so it can be displayed in the task windows as soon as they open - The RawToken task now displays tokens on a single line by default, rather than one token per line, as before. Packet numbers and token types can also be turned on and off now; use the task's edit window. Packet numbers, when visible, are in a different colour to make them stand out better - Console windows now display system messages in their original colours - Axmud's data directory now contains a README file, explaining the purpose of each of the sub-directories. A few new sub-directories have been added there - You can use ';loadplugin -s' to load all of Axmud's standard plugins at the same time (but this is only useful for developers) Minor fixes - New hook events, 'map_room', 'map_no_room', 'map_rescue_on', 'map_rescue_merge', 'map_rescue_off', 'textview_resize', 'system_text', 'system_error', 'system_warning', 'system_debug', 'system_improper', 'system_all', 'system_all_error' - Fixed output of ';listdirectory' command on MS Windows systems - Tabs in the edit window for triggers now fit comfortably inside the window without the need for scrollbars (on most systems) - Gtk2 simple lists will no longer accept input (so you'll no longer see an empty entry box appearing out of nowhere in random situations) - Fixed failure to write a parial line, containing only a 0 character, to logfiles - Fixed failure to inform the world of a change in the main window size when scrollbars are added/removed - Fixed problems with ';setreminder' command - For tasks that display a message, that message is now removed before new text is displayed (this problem did not affect all tasks) - Axmud no longer offers MCCP1 during telnet negotiations, if it has already accepted MCCP2 - Fixed frequent 'There was 1 un-closed 'grid' window when the parent workspace grid closed' messages in the terminal window - Fixed multiple issues with the ';msp' command. In addition, the switches used with this command have changed; see the help for ';msp' for more details - Modified the object parsing routines, so that both 'five big trolls' and 'five big trees' are visible in the Locator task's window in their singular (not plural) forms. Debug messages generated by the same routines have been improved a little for clarity - Fixed an occasional error produced by received lines of text stored in one of Axmud's buffers - Several other minor fixes v1.1.174 (30 Sep 2018) -------------------------------------------------------------------------------- Major new features - Axmud can now be run on on *BSD - Axmud releases are now available as an .RPM package - The installation guide (the INSTALL file) has been greatly expanded - The Axmud Guide and the Quick Help document have been converted to HTML, and can now be read on the Axmud website. Markdown versions of the text can also be found in /share/docs. The PDF/ODT version of the Axmud Guide have been removed - Added support for ZMP (Zenith Mud protocol). The new 'zmptest' plugin demonstrates how additional ZMP packages can be written. New client commands ';zmp', 'sendzmp' and ';imputzmp' - Added support for AARD102 (Aardwolf 102 channels). New client command ';aardwolf' - Added full support for MCP v2.1 (Mud Client Protocol). The implementation includes the 'dns-org-mud-moo-simpleedit' package. The new 'mcptest' plugin demonstrates how additional MCP packages can be written. New client command ';mcp' - New hook events for these protocols - 'zmp', 'aard102' and 'mcp' - 'Free' windows (such as the Connections window, edit and preference windows) were too small on some popular Linux distros and on *BSD. Axmud now attempts to increase the default size of these windows, if it thinks the default size isn't big enough. You can now set the default size yourself, if you need to, using the ';setwindowsize' command (or in the client preference window). The layout of the Connections window has been rearranged so that increasing the default the size is necessary on fewer systems - Window tiling is still disabled on MS Windows. Axmud now remembers the size and position of each type of window, so you only need to rearrange windows on your desktop once. On Linux and *BSD, this functionality is turned off by default, but can be turned on if you want to disactive window tiling (using the ';disactivategrid' command). New client commands are available: ';togglewindowstorage', ';applywindowstorage', ';dumpwindowstorage' and ';clearwindowstorage' - A new type of random exit. When an exit leads to a randomly-generated area every time you go through it, you can now set the exit so that Axmud automatically creates a temporary region. Axmud will also try to detect when you've arrived back at the original room and, at that point, the temporary region is deleted Major fixes - Pueblo frames were 100% non-functional in the previous release. Fixed - Fixed crash in some Axbasic scripts that try to CALL a SUBroutine - Problems with clicking on exits in the automapper window were fixed in the previous release, but apparently made the problems worse. Another fix has been applied - Buttons in the automapper window's toolbar were not desensitised (greyed out) correctly. Fixed throughout - World commands are normally echoed in the main window, in green. This can be turned off, but handling of world commands in this situation was broken. The problem has been fixed; in addition, echoing of world commands can now be enabled/disabled in the Quick Preferences window (as well as in the client preference window, as usual) Minor new features - The code handling incoming text from the world has been rewritten and optimised somewhat. If you're connected to a world with dozens of colour changes per line, you might notice a considerable performance improvement - The Debugger task has been renamed as the System task, and can now divert all system messages (including ordinary yellow system messages) into its task window. The colour of system messages is now preserved in the task window (this behaviour can be turned off, if not wanted). The ';setdebuggermode' command has been renamed as ';setsystemmode' - Regions can now be created with a generic name, e.g. 'unnamed_7', 'temporary_9'. When you're prompted for a name, just leave the box empty. Temporary regions in the list on the left-hand side of the automapper window are now drawn in italics, and separately from all other regions Minor fixes - Fixed incorrect handling of ATCP/GMCP data in ';simulatehook' - Fixed error in the Connections window caused when typing a replacement host name - The ';axbasichelp' command now accepts keywords and function names in capital letters (since they appear in all-caps throughout the documentation) - Fixed several buttons in the Object Viewer window, which were not able to view handle various buffer lines correctly - When drawing 'wilderness' rooms, the first room in a region was incorrectly drawn with exits. Fixed - The basic mudlist (the long list of worlds visible in the Connections window) now names the Russian language using Cyrillic text - The default size for 'main' windows was not loaded from its data file. Fixed - Fixed problems with the aliases for ';allocateexit', e.g. ';north', ';southwest', ';up', seen whenever the commands are typed with the wrong arguments - Fixed several crashes seen when the automapper is tracking the current location while the automapper window isn't open - Several other minor fixes v1.1.138 (31 Aug 2018) -------------------------------------------------------------------------------- Pre-configured worlds - Ten new pre-configured worlds: Adventures Unlimited, Bylins MUD, Clessidra MUD, DragonStone, Eternal Darkness, HexOnyx, RavenMUD, RealmsMUD, Two Towers and Waterdeep - Minor improvements to the existing pre-configured worlds: CoffeeMud, Discworld, EmpireMud 2.0. If you want to import the improvements into your existing world profiles, use ';updateworld' (for example ';updatworld discworld'). If you don't want to risk overwriting any changes you've made to those profiles, don't use ';updateworld' - The basic mudlist (visible by clicking the planet icon in the Connections window) has been expanded by about 150 worlds - This version adds a new 'wilderness' plugin, especially for users of EmpireMUD 2.0, that modifies its world profile to use wilderness mode (see below) in the most effective way and, if loaded a second time, reverts those changes Major new features - Numerous improvements and enhancements to the automapper (see section below) - Greatly improved handling of Russian-language worlds. At most of them, the KOI-8 character set is now applied automatically. Cyrillic text, and not gibberish, should now be visible in most of Axmud's windows. Axmud's internal regular expressions now recognise non-Roman characters. Profiles and other Axmud objects (collections of data) can now be given names using non-English characters, so automatic login using a Cyrillic character name is now possible. The Locator and automapper windows have been tested using Russian directions (see the Bylins pre-configured world for a demonstration) - Handling of other non-English worlds has also been improved. Axmud's phrasebooks, which are used to create dictionaries in various languages, have been updated. The correct phrasebook is now applied to any world in the basic mudlist, so for most non-English worlds compass directions in the Compass task shouldn't require any configuration - The Connections window can now search both lists of worlds. When sorting alphabetically, worlds beginning with articles like 'The' and 'A' are now sorted correctly - If you don't want Axmud to display certain colours, you can now modify colour schemes so that those colours are filtered out. You can also specify that only the default text and background colours should be used. This will be useful for those of you who wanted to read black text on a white background, but could not, because the world was using so many different colours. The 'edit' window now has buttons for quickly swapping the text/background colours, and for matching the underlay/background colours - New Channels task, which works much like the Divert task, but has multiple tabs. Both tasks use the same world profile patterns, so you can use whichever one you prefer (but you can't run both at the same time) - The Divert task used to be limited to four channels ('tell', 'social', 'custom' and 'warning'). Both the Channels and Divert task can now use any number of channels - The old ';adddivertpattern', ';deletedivertpattern' and ';listdivertpattern' commands have been replaced with ';addchannelpattern', ';deletechannelpattern' and ';listchannelpattern'. The new commands work with both the Channels and Divert tasks. There's also a new ';emptychannelswindow' command - If you create a colour scheme called 'divert', the Divert task will use that colour scheme rather than the default one. As a result, you can configure different task windows to use their own colours and fonts, if you like. Changes to a colour scheme are now applied to all windows using that scheme as soon as you click the 'save' or 'OK' button. Several related issues were fixed at the same time Major fixes - Fixed an issue in the Locator wizard which failed at worlds where the exit list was spread across multiple lines - Tasks in the global initial tasklist (those that start automatically whenever you connect to a world) could not be configured using their 'edit' windows. Fixed several related issues - Axmud is capable of converting invisible text (e.g. black text on a black background) to something visible, but there was no way to turn it on (or off) from any 'edit' or preference window. Fixed - Fixed a couple of segfaults - Entry boxes in many 'edit' windows only accepted an even number, when they should have accepted a fractional number. Fixed Automapper new features - Added graffiti. Temporarily mark rooms you've visited with an X; very useful if you want to check every room in a region. When graffiti mode is turned on, a count of visited and unvisited rooms appears in the automapper window's title bar - Multiple toolbars. Use the red plus button to make additional toolbars visible. You can still switch between button sets in the first toolbar at the top of the window. The order of buttons on existing toolbars has been improved a little - A toolbar has been added with various buttons for setting the number of character visits in each room. Existing operations to modify those values have been improved, and most of them will now work on multiple rooms at the same time. Those of you who want to keep track of which rooms you've visited and how often you've visited them should find these improvements make it much quicker to modify the stored values, when required - Painting rooms in different colours, using room flags, should now be much quicker. There's a new toolbar which you can use to choose your favourite colours (room flags), and to toggle them on and off. The layout of various 'edit' windows that use room flags have been greatly improved - Rooms can now be automatically painted if their room title, description, exit list, contents or room commands match any patterns that you specify (ideal for worlds like EmpireMud 2.0, which have a small set of room titles corresponding to different terrain types) - You can now add and delete your own room flags, if you don't like the default set that Axmud provides. (Only custom room flags can be deleted) - Added new room flags for bus stops, player-controlled shops and cafes. - There's another new toolbar which you can use to colour in the background map directly. It's ideal for features like rivers and mountain ranges which exist in the world, but can't be accessed directly by the player. The map is divided into an invisible grid, with one room per grid, and you can paint each gridblock (or a group of gridblocks) any colour you want - The organisation of items in the window's menu has been improved in a number of cases. A number of new menu items have been added - Labels can now be drawn in different sizes and colours, and even inside a coloured box. You can either customise each label individually, or you can use one of several label styles - one for titles, one for street names, one for bridges, and so on. Four label styles are provided; you can use those, or you can create your own label styles - Label styles can be handled with the new commands ';addlabelstyle', ';editlabelstyle', ';renamelabelstyle', ';deletelabelstyle' and ';listlabelstyle' - If your labels are spread untidily all around the whole map, you can now ask Axmud to align them either vertically or horizontally (or both) - You can now select multiple rooms and labels by holding down your left mouse button and dragging the cursor over the map - When multiple rooms are selected, they are now all dragged at the same time - You can now move selected rooms/labels by pressing CTRL+C and clicking on a location on the map. CTRL+C can be disabled entirely if you don't want it. (CTRL+V is not necessary, and in fact does nothing) - Much better handling of wilderness zones (large areas of the world in which the rooms have no exit lists, because movement is possible in all directions). In these areas it's no longer necessary for your maps to contain exits at all. See the Axmud Guide for a discussion of how wilderness rooms have been implemented - Added crafty moves mode for worlds like Discworld, which has a lot of exits that don't appear in a room's exit list (but it's obvious from the minimap that the exits exist). When crafty moves mode is turned on, you can move in any direction, and if the automapper doesn't already know that an exit exists in that direction, it creates a hidden exit for you - Added transient exits for worlds like Discworld, which has moving vehicles; when the vehicle is in a room, additional exits appear in the room's exit list. You can now set exits like 'board wagon' as transient exits, so the automapper won't try to draw them and won't get confused if you enter a room containing them - For worlds that have a lot of hidden exits, the automapper can now track the direction in which you tried and failed to move, so you can systematically try every direction from every room until you've found every possible hidden exit. Use 'Exits > Exit options > Collect Checked directions' to turn it on. When turned on, the automapper draws checked directions in pink. Model reports can now show how many rooms have been checked in every direction - Added a new ';insertfailedexit' command. When you try to move in a direction but the world refuses, you might get a standard refusal message or you might get a different one in every room. An unrecognised refusal message means you have to reset the Locator task and set the current room again; the new command takes care of that in a flash. If you don't like typing, you can use the new toolbar button instead; it's the red 'FE' button - The automapper draws exits as an 'X' when they're in non-primary directions. It's up to you, the user, to decide in which direction the exit should be drawn. Normally it's necessary to click on each exit individually, selecting a primary direction one exit at a time. The new ';allocateexit' command makes this process much quicker. For example, in a room with 'kitchen' and 'bathroom' exits, you could type ';allocateexit north kitchen' or ';allocateexit se bathroom'. You can even miss out the command word altogether, and just type ';north kitchen' or ';se bathroom'. - You were already able to add notes to rooms (right-click a room on the map, select 'Edit room... > Notes'. Any notes you make are now displayed in the room's tooltip, when your mouse is hovering above the room. If you don't want to see them, notes in tooltips can be turned off, leaving the information that was already visible there - Saved maps (world models) will now be between 10-25% smaller, depending on what kind of data the model is storing. Load times will improve by the same proportion - The ';locateroom' command now selects all matching rooms on the map, so after getting lost it's easier to work out where you are. Some issues with that command have been fixed, so it will now work more reliably - The automapper's 'Reposition all maps' operation now sets the visible level back to level 0, as well as resetting magnification and the position of scrollbars Automapper fixes - Dragging exits was often very difficult because the exit could not be clicked, or immediately unselected itself after being clicked. This has been fixed, and dragging an exit should now be as easy as clicking on it - The automapper was not able to track movement in a non-primary direction like 'enter cupboard' immediately after a room had been set as a current room. Fixed - Fixed a crash caused, in certain circumstances, by selected rooms in the automapper window - The automapper sometimes failed to draw twin exits correctly, when one or both were in non-primary directions. Occasionally, this caused a crash. Both issues are now fixed - Some error messages caused by the automapper's room painter have been fixed - In the automapper window's menu, 'Rooms > Locator task > View Locator room' crashed Axmud. The edit window itself, once opened, also crashed Axmud. Both have been fixed - Some inconsistencies in the way the automapper window desensitises (greys out) some of its menu items and buttons have been fixed - The room painter incorrectly replaced certain values, such as the room's title, in certain situations. The automapper did not finish creating a new room before trying to paint it. Both issues have been fixed - It's no longer necessary to reset the Locator task after the automapper gets lost; you can now set the new current room right away - Labels in maps can now contain '&' characters without generating an error message Minor new features - The layout of the 'edit' window for routes has been improved - The Locator task can now capture information about the weather, the time of day (and so on), and display that information in its task window. The information is not stored anywhere in the model. At present, no pre-configured worlds use the new 'weather' component - The Locator task used to show the room's contents in its window, main noun first. You can now change that behaviour (using the task's 'edit' window), so the the word order isn't changed. Instead, the noun is highlighted in a different colour - The About window now shows this file, and the INSTALL information file included with Axmud's source code - The MS Windows installer will now let you install Axmud anywhere you want. Some users have reported problems with this installer. In most cases, running the installer a second time will work. In most cases, if Axmud crashes shortly after it starts for the first time, it won't crash on the second or subsequent occasions Minor fixes - The Locator task displays the number of room statements (descriptions) it's expecting in its title bar, but this number was not updated frequently enough. The visible number is now updated instantly. The same number is no longer displayed in the automapper's title bar (as there is no longer enough room there) - Fixed some issues with MXP room tags and popup menus, which prevented (for example) the automapper from working at DragonStone - Improved handling of arkward exit states (extra information about an exit in the room's exit list), which made correct handling of exit states at DragonStone impossible - Trying to connect to a world from the basic mudlist, while specifiying a character and password, produced error messages. Fixed - ';importfiles' failed to import a world profile exported with an ';exportfiles -w' command. Fixed - Fixed incorrect handling of text in bold white at some worlds - Various issues with handling and checking Axmud colour tags have been fixed - When Axmud encounters a Perl error, it displays a long error message and tells the user to type ';restart' when they're ready. The error message has been improved so impatient users don't need to read all of it - Fixed several issues with GMCP data that caused frequent error messages, for example at Avatar - Abbreviations (aka user commands) for several client commands have changed: ';addworld', ';setworld', ';cloneworld', ';editworld', ';deleteworld', ';listworld', ';restoreworld', ';updateworld', ';setstatusevent' - The Debugger task's 'edit' window was completely broken. Fixed it v1.1.050 (31 Jul 2018) -------------------------------------------------------------------------------- Pre-configured worlds - Ten new pre-configured worlds: Age of Chaos, Avalon (Germany), Carrion Fields, CyberASSAULT, Elysium RPG, HellMOO, Miriani, MUME, RoninMUD, Tsunami - Improved handling of new and existing pre-configured worlds for users who have just installed a new version of Axmud - Major improvements to the existing pre-configured worlds: Avalon RPG, Discworld and SWMud (if you've ever connected to any of these worlds, you'll be prompted to update them; if not, the world profiles will be automatically updated) - Minor improvements to the existing pre-configured worlds: Dead Souls Dev, Dead Souls Local, Dead Souls Prime, DuneMUD, Medievia, MorgenGrauen. If you want to import the improvements into your existing world profiles, use ';updateworld' (for example ';updatworld empire'). If you don't want to risk overwriting any changes you've made to those profiles, don't use ';updateworld' Major new features - New 'quick preferences' window, containing the most useful configuration options, such as changing fonts, turning on sound, etc (hopefully useful for users who couldn't find where they were). In the main window, click the blue book icon to open it - The GUI window has been renamed the object viewer window, and expanded to include more kinds of object and more help files. The commands to open/close it are now ';openobjectviewer' and ';closeobjectviewer' - New client commands to backup the entire Axmud data directory: 'backupdata', ';restoredata' and, for automated backups ';autobackup'. (This does not affect ordinary data file load/save operations. To avoid confusion, ';retainbackups' has been renamed ';retainfilecopy') - A complete list of strings used in peek/poke operations (such as with the client commands ';peek' and ';poke', and with several Axbasic statements including PEEK and POKE) is now available in the About window, in the Axmud Guide and by using the new ';peekhelp' command - For worlds that use room commands (such as EmpireMUD 2.0 and Avalon Germany), some new client commands: ';rommcommand', ';ignoreroomcommand', ';noticeroomcommand' and ';listroomcommand'. If the current location has a list of room commands like 'chop, harvest, gather', use ';roomcommand' to cycle through them. For best effect, open the Compass task and assign ';roomcommand' to one of the keys on your keypad - New commands, aimed at worlds with a language that's not English, allowing you to set the dictionary's directions from the command line (e.g. at a German-language MUD, to replace 'east' with 'ost'): ';modifyprimary', ';addsecondary', ';modifysecondary', ';deletesecondary', ';setautosecondary', ';listautosecondary', ';listdirection'. Also fixed several problems setting directions in the dictionary's edit window Major fixes - Fixed crash due to problems with clickable links occasionally seen at MXP-heavy worlds - Axmud is supposed to be able to recover from a Perl crash, commonly seen if you try to use an invalid regex (pattern) in your triggers and aliases. This wasn't working, which caused the connection to freeze, but it's now fixed - Fixed multiple problems with command histories (used when you press the up/down cursor keys to show recent commands in the main window's command entry box) - Fixed various ATCP problems which caused numerous error messages at some worlds - At a few non-English worlds, the automapper produced a load of errors when leaving a dark room (a room with no light). Fixed Minor new features - The Inventory task can now cope with lines of text containing multiple items of inventory (in addition to the usual code, which could already cope with commas, the word 'and', and so on). Connect to HellMOO to see it in action - ';copyrecording' now displays an abbreviated list of world commands, as well as the unabbreviated list Minor fixes - Some task windows (such as the Status task window) didn't have their fonts updated when the user updated fonts generally. Fixed - ';playsoundeffect' now plays a random sound effect, if you don't specify one - Fixed various problems in the zonemap and winmap edit windows. Fixed issue that prevented user adding winzones to a cloned winmap - In the client preferences window, Workspaces > Page 5, fixed the faulty 'Reset Grids' button - Autosaves no longer take place when connected to a world in 'offline' mode - Fixed a few terminal error messages, occasionally seen when Axmud shuts down - When Axmud displayed explicit line numbers and/or colour/style tags in the main window, clickable links appeared in the wrong place. Fixed - Could not open the edit window for some room components from the world profile's edit window. Fixed, and in those edit windows there's a new button allowing you to specify RGB colour tags - Fixed various problems in edit windows for TTS (text-to-speech) configurations - New ';worldcompass' command, complementing the existing ';compass' and ';permcompass', and also improvements to the task's edit window, which make it easier to modify the commands for each keypad key that apply whenever Axmud starts - ';listotherworld' has been renamed as ';listbasicworld' for consistency - Fixed faulty handling, rarely affecting the user, of the delimiters in exit lists (for example the commas in 'You can go north, south, west' - In the Connections window, you can now read English translations of the descriptions of non-English worlds v1.1.012 (8 Jun 2018) -------------------------------------------------------------------------------- Major new features - Text-to-speech (TTS) is now enabled on MS Windows. The Windows installer includes the eSpeak engine, so TTS will work out-of-the-box (no screenreader required) - Added support for the 'espeak-ng' engine (on both Linux and MS Windows) Major fixes - Fixed issues with ';connect', ';reconnect' and ';xconnect' that especially affected visually-impaired users - Fixed several issues on MS Windows. The GUI window will now open, the quick help file can be opened for viewing, and ';searchhelp' works again - Autosave is now turned on by default. If you've installed a previous version of Axmud, your previous preferences are retained, so use ';autosave on' to turn on autosaves - Fixed problems with clickable links, which caused Axmud to crash instantly when they occur at the end of a line - Fixed incorrect handling of UTF-8 which made Russian-language MUDs unplayable - Fixed packaging of Perl modules that caused CPAN archive to complain - The .deb installer on Linux now adds two items to the Start menu, just like the corresponding MS Windows installer Minor fixes - Numerous minor fixes v1.1.0 (31 May 2018) -------------------------------------------------------------------------------- - This is the first public release of Axmud