The mapper can now be made to map all room based MUDs. The mapper API has been extended.
Here's a picture of the Academy in Aardwolf.
Mapper now able to map non IRE MUDs
Re: Mapper now able to map non IRE MUDs
Nice, nice
Re: Mapper now able to map non IRE MUDs
very very nice....
How are you capturing room/exit info? GMCP?
How are you capturing room/exit info? GMCP?
Re: Mapper now able to map non IRE MUDs
In the case of this example I've used GMCP to get room ids, exits, room names and zone names.Omit wrote:How are you capturing room/exit info? GMCP?
However, you can now capture this information with regular triggers, use a db to store the room description and generate unique ids etc.. Everything should be possible now.
The next step will be to add special features for 2D-grid maps based MUDs like LP/LD driver based MUDs.
What I'd like to do is use hand painted maps and grid overlays of some sort for wilderness maps to make the whole thing look pretty and restrict the 3D view to cities & dungeons.
Re: Mapper now able to map non IRE MUDs
So there is a version out with this working, or is this just a proof of concept?
Btw- Staff member from Shadows of Isildur, a Diku RPI mud. Trying to map a rather complex forest for building purposes.
Btw- Staff member from Shadows of Isildur, a Diku RPI mud. Trying to map a rather complex forest for building purposes.
Re: Mapper now able to map non IRE MUDs
You need version 1.2.0-pre6 (windows version on mudlet.sf.net, linux version: current git) to get the necessary API. Documentation of the mapper API has not been written yet, but I'll post the script I've used to map Aarwolf in half an hour. This will be enough to get you started on any MUD. You can use the luaSQL module that ships with Mudlet directly - or use our sql-made simple API, but in the case of a complex mapping project, it is probably better to use luaSQL directly.
A few comments on the API demonstrated in the example that may not be obvious:
- Each room needs a unique room ID in form of an integer value. If this isn't provided by the MUD you can use the db ID.
- You can set environment colors for each room as an integer value. Values from 1-15 are mapped to the extended ANSI colors used by most MUDs. Values > 15 are user values and correspond to an RGB color with the same index. The user color table needs to be set up by the user. It can also be changed at any time, thus rooms that have this color will change color also.
- Rooms need coordinates (x,y,z as integer values) and an area ID i.e. the area that they belong to in order to be displayed.
- Areas need to the defined in form of: area name, ID. Rooms that have no area set, will not be displayed.
- Rooms can be attributed a certain weight in form of an integer value. This will be used by the pathfinding algorithm to increase or decrease the probability that this room will be used in the calculated path. Mudlet calculates pathes by travel time, not by shortest path.
- Rooms can be locked/unlocked entirely in which case the room will never be used by the pathfinding algorithm.
- Rooms can get an optinal room title/name that can be used by the player to search for speedwalk destinations as well as the room ID
- Mudlet will save the map as a portable, platform independent binary data stream because XML would be too slow for this purpose. Similarly to your Mudlet profiles, Mudlet will save a new copy of the map when you save your session. This is to prevent data loss and enables you to roll back to earlier versions of the map.
P.S.: Please let me know if the API needs to be extended and how your project is progressing. The mapper is still in development so I can still incorporate changes relatively easily. I'm interested to know what particular needs the different MUD drivers and MUDs have because the mapper should be useable everywhere.
A few comments on the API demonstrated in the example that may not be obvious:
- Each room needs a unique room ID in form of an integer value. If this isn't provided by the MUD you can use the db ID.
- You can set environment colors for each room as an integer value. Values from 1-15 are mapped to the extended ANSI colors used by most MUDs. Values > 15 are user values and correspond to an RGB color with the same index. The user color table needs to be set up by the user. It can also be changed at any time, thus rooms that have this color will change color also.
- Rooms need coordinates (x,y,z as integer values) and an area ID i.e. the area that they belong to in order to be displayed.
- Areas need to the defined in form of: area name, ID. Rooms that have no area set, will not be displayed.
- Rooms can be attributed a certain weight in form of an integer value. This will be used by the pathfinding algorithm to increase or decrease the probability that this room will be used in the calculated path. Mudlet calculates pathes by travel time, not by shortest path.
- Rooms can be locked/unlocked entirely in which case the room will never be used by the pathfinding algorithm.
- Rooms can get an optinal room title/name that can be used by the player to search for speedwalk destinations as well as the room ID
- Mudlet will save the map as a portable, platform independent binary data stream because XML would be too slow for this purpose. Similarly to your Mudlet profiles, Mudlet will save a new copy of the map when you save your session. This is to prevent data loss and enables you to roll back to earlier versions of the map.
P.S.: Please let me know if the API needs to be extended and how your project is progressing. The mapper is still in development so I can still incorporate changes relatively easily. I'm interested to know what particular needs the different MUD drivers and MUDs have because the mapper should be useable everywhere.
Re: Mapper now able to map non IRE MUDs
"Values > 15 are user values and correspond to an RGB color with the same index." Does that mean that rgb values 0-15 are effectively unavailable?
Re: Mapper now able to map non IRE MUDs
No, it means that the integer value that you use for the environment color of the room is being used as a key to a user color table where your color is described as a proper RGB value. Your scripts need to set up your user color table + the area table.
Re: Mapper now able to map non IRE MUDs
I will likely need to wait until the Mac distro comes about, since that is what I am currently using.
As far as our mapping needs, we have room numbers on staff side that we can use for this, however they are part of a string, such as:
<#****** / ||||||> The Meadow [992: Light Field]
Exits: south
So being able to use data like that would be fairly useful. We currently have a large area of about 1k+ rooms that, while we have the excel overview map of the area, the actual terrain was altered into fairly complex undulations that we are having some trouble with. Such is why this mapper you guys are working would be so useful, so we could sort out some of the crazyness.
As far as our mapping needs, we have room numbers on staff side that we can use for this, however they are part of a string, such as:
<#****** / ||||||> The Meadow [992: Light Field]
Exits: south
So being able to use data like that would be fairly useful. We currently have a large area of about 1k+ rooms that, while we have the excel overview map of the area, the actual terrain was altered into fairly complex undulations that we are having some trouble with. Such is why this mapper you guys are working would be so useful, so we could sort out some of the crazyness.
Re: Mapper now able to map non IRE MUDs
Chances are that the latest dev-MAC built is already pre6. -> first posting to get the download link