Eriador, Overview - note, the Overview is scaled to fit the display window

Gondor, zoom x16 showing rough art for Eastern Gondor

Breeland at zoom=2 with annotations

Description

NEW! TerrainMap is now the basis for a new Google map of Middle Earth. You can view all of the terrain of TerrainMap (without the undeveloped areas) as a contiguous map on any browser that supports Google maps (mobile device response time may be undesirable depending on your connection).http://lotromap.net/terrainmap/google.html

This plugin uses the in-game compass resource images to display a large, scrollable and zoomable terrain map of the game world. The map is broken down by regions - Eriador, Rhovanion, Gondor and Mordor - since there are different coordinate systems in use for the different regions.

Since this uses the in-game tiles, there are a number of locations that are not reachable by players but have been partly built by Turbine so they may show as complete terrain or as rough terrain with artist markups.

Think of this project as a 26 thousand piece jigsaw puzzle where not all pieces are guaranteed to exist, some pieces are covered in crayon and others are duplicates. If you believe I've accidentally placed a tile in the wrong location, let me know the coordinates and I'll double check. Note that some locations have multiple versions with slight differences - in general I use the tile with the highest resource number but sometimes that led to record keeping issues so I occaisonally retained whichever tile I came across first.

The zoom currently supports x1 to x32. Since most maps will be entirely displayed at x32, I do not anticipate providing higher zooms.

TerrainMap now supports Annotations in Zoom levels 1 and 2. Unfortunately, due to Turbine's constraints on loading data, it is not practical to allow Annotations at higher zoom levels. I have not (yet) implemented Custom Annotations, so the only annotations are those that are in the MoorMap Default Data files - basically all of the annotations from Turbine's Parchment maps plus a few things like Treasure caches. If multiple annotations overlap each other, you can hover the mouse over them to see a list of the annotations that are overlapped.

I have also implemented a Search window which allows you to enter search text and then search all of the default annotations (the same defaults that are also included in MoorMap), including names and descriptions. The entire search of all annotations on all maps takes about 10 seconds on my slowest computer. Once the results list is displayed, you can click on the name of a search result and an animated 'Ping' will be temporarily added to TerrainMap and the map will center on that location. The search is both case-insensitive and accent-insensitive (you can enter "A" instead of "á" and the search will match).

Installation:
Just download and unzip the file to your Plugins folder. There are no dependancies and the file can be safely unzipped over my other plugins.

Usage:
"/plugins load terrainmap" to load
"/terrainmap show" to show the map if you closed it (or just use the icon)

To move the map, grab the top left corner with the mouse and drag to your desired location. You can not drag the map entirely off screen, if you want to hide the map, you can use the Esc key or click the close button (top right). To resize the map, grab the bottom right corner - note, the map will not allow you to size it larger than your current screen size or smaller than 30x30.

You can scroll the map quickly by using the scrollbars or slower by grabbing the map with the mouse and dragging it. There is an overview map of each zone that can be used to quickly view the entire region. The button to the left of the search magnifying glass opens the Overview. If you click on the overview, the map will display with the clicked location in the top left.

To quickly center the map on your current location, click the button to the left of the overview button (the one just to the right of the zoom level selection). An annotation (large red X) is added at your current location - unfortunately this can not be automatically updated due to limitations in the API.

Additionally, there is an Options window which you can open with the "Gears" button near the top left. Currently there are very few options but this does allow you to choose whether to start the plugin minimized, whether to display the icon and whether to use the mini (16x16) compass-ring style icon.

The icon is initially placed in the top left of the screen. You can reposition it by holding the Ctrl key and then dragging it to the desired location. If another window is blocking the icon, you can alternatively use the Options Window to specify coordinates for the icon Top and Left.

Version History:
Ver 1.23
Added U24 tiles and data
Fixed some missing pre-zoomed tiles (some may have noticed that parts of Rhovanion mysteriously disappeared when zoomed greater than x2 in ver 1.22)

Ver 1.22
Added U23 tiles and data
Fixed a bug in annotations that prevented displaying descriptions that included commas

Ver 1.21
Updated tiles for changes made to Breeland, Ered Luin and parts of Great River in U22.2. Note, I did not update the pre-zoomed tiles as theses are very minor changes and mostly unnoticeable when zoomed out greater than x2.

Ver 1.20
I added and then subsequently removed the second age version of Blackroot Vale (from the instance "At the Stone of Erech"). I originally thought it would be good to show where Blackroot Vale was relative to West Rohan until I saw that the world builders hijacked the bottom left corner of Rohan instead of placing it further south and east where it belonged. It made for a very jarring and unrealistic map and clashed significantly with the information we know of the Blackroot Vale from the Gondor map In terms of a "google style" map of middle earth it was unworkable.
I added the ability to load and display custom annotations, unfortunately, the ability to actually create custom annotations did not make it into this build I hope to have time to revisit this for a future version, including the ability to import existing custom annotations from MoorMap - it won't be a bidirectional import/export due to the way annotations are stored for faster loading in TerrainMap (but maybe someday).
added terrain tiles and data from U22
Added missing POI, Anglanthir, reported by Rigantona as well as several other missing POIs in Angmar.
Adjusted Rhovanion region to account for Erebor being moved south and removed the duplicate of Grimbeorn's Cabin (the new version is located on the west side of northern mirkwood, due south of where it used to be)
Recreated the Rhovanion overview image since the region size and positioning of some elements changed.

Ver 1.15
Added region 4, Mordor. Note that Region 4 uses the same overall coordinates as Region 3 but has different bounds which allows the terrain to be displayed contiguously but I chose to keep them seperate due to slight geographical changes, particularly the banks of the river, and overlapping annotation data in the area of pelennor fields due to the Before Battle and After Battle states.
Added default data for U19
Known Issue: The Region radio buttons will cut off the region names as there is not enough space in the control now with four regions. However, in 1024x768 there is not enough space to make the control larger, I will tackle this in a later update, probably by converting to a drop-down control.

Ver 1.14
The map will now load displaying the region/coordinates that were last displayed.
FINALLY! I have implemented full map annotation. While the mechanism may be a bit laggy on slower machines in areas with large densities of annotations such as Bree, it IS functional. Unfortunately, due to the method required to work with Turbine's restrictions, the map uses too many resources when displaying annotations beyond zoom=2 so annotations only display when at zoom level 1 or 2 (on many machines you may not want to scroll through areas with many annotations at zoom=2).
If you find that displaying annotations makes the map no longer viable due to your machine running too slowly (significant hitching when trying to scroll map), you can disable annotations in the settings dialog.
NOTE: using the filters to hide all Annotations will not appreciably clear hitching caused by Annotations since it is the underlying data retrieval, not the display that causes most of the hitching and so you have to uncheck the Show Annotations in the Options dialog.
Added a hover list for Annotations that are displayed on top of each other - hovering over an Annotation will show the list of all Annotations that are overlapped by the Annotation. Clicking on an entry in the list will display the description for that Annotation.
Added tiles for Update 18
With the addition of full map Annotations, clicking on a Search result in the Search window will now place a "Ping" at the location (instead of trying to add a duplicate annotation), similar to the functionality in MoorMap.
Added Default data for U18

Ver 1.13
Fixed a few tiles that Turbine broke in Update 17

Ver 1.12
Added Old Anorien map tiles

Ver 1.11
Added ability to center and zoom-in by double left clicking on map (to zoom out, double right click). If you are already zoomed all the way in, double click will simply center on the mouse.
Changed Zoom to position on center of screen when clicking zoom levels instead of positioning at top left corner (a realllllly old bug that was, well, bugging me)
Added Grimbeorn's Lodge and Erebor map tiles to Rhovanion region
Added East Gondor
Fixed bug in player location icon when zoomed

Ver 1.10
Finally added pre-zoomed tiles to support zoom levels above x2 - zoom now goes to x32
NOTE, this has significantly increased the download size but was necessary for zoomed performance
Changed overview window to display an image of the used tiles instead of the ugly grid
Fixed a number of bugs regarding map positioning when zoomed (previously only affected x2)

Ver 1.09
Added some Eastern Gondor tiles. Note, many of these are concept art but they show what the World Builders have been up to...

Ver 1.04
Fixed missing TMSearch.plugin file
Changed search window to process search when Enter is pressed in the search field
Fixed conflict bug that would cause search to hang when TerrainMap and MoorMap were both loaded
Added workaround for bug in GetCommands() that sometimes returns a non-sorting 0th element in the command table which would cause search to hang

1.03
Updated Western Rohan map tiles
Added Western Rohan default data

1.02
Added search data for Wildermore and Forlaw

1.01
Added icon at player location when centering on player
Added Search Window and temporary annotations

I finally got around to finishing IDing the Fangorn tiles and cleaned up the Rhovanion map by removing the instanced area and most of the unused border tiles that were scattered about.

I'm still working on the x4 zoom - I may have to go back and revamp some of the grid display stuff to account for the zoom level but it should be working 'soon'. I will also see about getting the coordinate system working for the first real release - this will result in Moria being placed the correct distance (in Turbine's world coordinates) from Lothlorien as well as Ered Luin and Frostbluff being placed appropriately in Eriador.

As stated in the description, annotations are on the ToDo list but won't be available for quite a while yet (interpret that as several months, probably not even on the "soon" scale).

The tiles for Fangorn forest are still being identified (think of this project as a 19 thousand piece jigsaw puzzle where not all pieces are guaranteed to exist, some pieces are covered in crayon and others are duplicates) so Fangorn looks, um, jumbled and scattered

OMG Garan !

I've manually and painfully identified around 2000 IDs for LIP a few weeks ago (all legacies at each tier and some other stuff), but *this* almost makes me feel sane lol

Nice plugin !

Edit - PS: You most likely won't have crash issues in the future if they delete resources, they'll just show up as the gray beveled 32x32 boxes, it's when you hit existing resources that are DXT textures or resources that aren't images that the client crashes.

I've manually and painfully identified around 2000 IDs for LIP a few weeks ago (all legacies at each tier and some other stuff), but *this* almost makes me feel sane lol

Nice plugin !

Edit - PS: You most likely won't have crash issues in the future if they delete resources, they'll just show up as the gray beveled 32x32 boxes, it's when you hit existing resources that are DXT textures or resources that aren't images that the client crashes.

Thanks.

Most of the images are in large groups that layout in strips nicely. It's the ones that Turbine changed over time, especially those that have multiple versions for instances and such that were particularly challenging. I wrote a plugin that got data from IRV and allowed me to place the tiles on a grid and then manipulate them in groups as needed ("MapMaker" is quite ugly and will never be published but was absolutely necessary for keeping what little sanity I still have). It was actually kind of fun.

As to the crashes, I've noticed some resource IDs get reused from time to time and what was once a valid image becomes an invalid resource and crashes the client - I've add some code to IRV over the years to help me quickly find and lock those out. I don't recall if this has ever happened specifically with a compass tile and since there are so many versions of some tiles scattered about I hope that it won't (otherwise this plugin won't be particularly useful ).

I played a bit with those legacy IDs from the encoded data in chat item tags. Quite a challenging undertaking itself. Congrats on 2000 IDs!

Maybe I am just dense but I can't find any X to click to close the map.

?????

Sorry. Hit the 'Esc' key. In the Beta build that is the only way to clear it from the screen. To get it to show again you can use '/TerrainMap Show'.

EDIT: Now that the first release is published, there is a close button as well as most of the other expected UI functionality such as the ability to resize and reposition the window. You can also scroll the map by the more intuitive method of grabbing it with the mouse and dragging. It also has an icon when minimized to make it easier to display. Version 1.0 does not have the ability to zoom greater than x2 (the same as the beta).

It occured to me that finding NPCs and locations on the map was a higher priority than X4 or X8 zoom capability, so...

Version 1.01 includes the new Search Window which allows users to search all of the default annotations from MoorMap - basically all of the NPCs and locations on every parchment map and a number of instanced interior maps. Objects/NPCs from interior maps will display the coordinates of the entrance to their location so, for instance, an NPC in Goblin-town will show at the coordinates of the main entrance to Goblin-town in Misty Mountains. To search, just click the magnifying glass icon, enter a NPC/location name and click "Search". The plugin will search all of the map data and display any NPC/location with a match in the name or description. To see the location of a result, just click the name in the result list and a temporary annotation will be added to TerrainMap and the map will display centered on that location.

I chose this implementation to minimize memory usage and limit lag. The search mechanism has as small a memory footprint as possible so there should be very little impact, even for users with older computers. Since the annotations are temporary and are cleared when the plugin is unloaded the map does not accumulate an excessive number of annotations (too many annotations would eventually cause lag, especially when zooming).

I will probably at some point look into adding the ability to add your own data/annotations for the search window or for permanent display on the map.

EDIT:
I just noticed that someone never got around to updating the MoorMap data for Wildermore and Forlaw . Sigh.

Great looking, it may be very useful but if you play in french it's not, i hope french name comming soon

Thanks for the feedback.

The map itself works fine in the French client. Unfortunately, the data files for the Search function currently only include the English names so the Search will only match the English names/descriptions. Acquiring all of the translations for the names (both French and German) is a very, very long process which can not be automated. While I do hope to be able to provide this support (the data files were designed to support French and German), especially since the same data files are also used by the MoorMap plugin, it is not likely to be done any time soon.

Hate to be the one to ask, but I am sure I've got this plugin installed correctly, as I am running many more successfully, but all I seem to get is a grey screen upon loading the map.

Don't see anything in your documentation regarding this issue. Maybe I am doing something wrong, but the plugin itself seems to be loading correctly, just getting a grey map.

Thanks!
Fyn

Did you try scrolling? There isn't anything on the map in the top left corner so it is blank grey. You have to scroll a tiny bit to the right (toward Forochel) or down (toward Ered Luin) before there's anything to see. I've considered changing the default location from the top left to something that is populated to avoid this confusion.

Hi, I'm looking on my screen lotro window but I cant find the icon anywhere. What does it look like and where can I find it?

The icon is in the top left corner by default and looks like a map with brown and green terrain. Usually you would move it by holding Ctrl and dragging it, but if you can not see it, you can use the Options window to move it to another location.

First, load the plugin, then use the chat command "/terrainmap show" to display the map. Open the Options window by clicking the gears icon on the map. Change the icon position to a location you can see it and click 'Save'.

Very nice add-on. Are you planning on adding a player icon that moves as your character moves and a key binding to open up the map?

Thanks. Both of the features you requested are only partially possible with the current Lua interface and are already implemented.

While it is possible to open the plugin in response to the 'm' key, it is not possible to suppress the built-in map (In LotRO, Lua can only respond to 'actions' not actual key presses) so that would result in both maps being displayed which would not be acceptable. The only other way to respond (and the way currently implemented) is for the user to bind the chat command '/terrainmap show' to a built-in quickslot and use the binding to that quickslot. Use the '/shortcut' command, for example '/shortcut 1 /terrrainmap show' to cause the first built-in quickslot, the '1' key, to open the map. Alternately, you can use '/terrainmap toggle' so that the map will toggle on/off with the bound key. With HD, there will be far fewer skills available so some quickslot will become available for other uses such as this.

In terms of displaying the player icon, the player position and heading are not directly exposed to Lua. That is why the player position is only updated when the player clicks the position icon - that button has the '/loc' command bound to it which generates your location information in the chat window which is then parsed and the player location is updated. Players with programmable keyboards can set up macros to automatically send the /loc chat command every few seconds to cause an update but that is the only way currently available to dynamically update the position.

Ver 1.03 is now available with Western Rohan map tiles and default data. Note that since some NPCs are subject to phasing they might be listed twice in the search results or they may only be shown at one possible location. I will add additional locations for phased NPCs as I run alts through the zone in a later update. There may also be a few points of interest that are not on the map since I may not have stumbled upon them yet. If you know of something that you believe should be on the map and isn't, let me know.