RunUO Community

This is a sample guest message. Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

UO Atlas - simple replacement for UOAM

Brutus5000

Sorceror
UO Atlas - simple replacement for UOAM

Ladies and gentleman,

due to the lack of updates for UO Automap and therefore missing support for map1.mul enhancements in the latest clients and the increased map size introduced with Mondains Legacy, I played around with some code and may therefore present you UO Atlas.


Description:
A very simple map-viewer built around the UltimaSDK.

Features:
  • Support for *all* 5 UO maps, including map1.mul
  • Support for any kind of map size (only by recompiling)
  • Tracking the player
  • Calculate hovered coordinates


Installation guide:
It is important to modify the map definitions in UltimaSDK\map.cs to fit your custom map! You will have to edit the following lines:

Code:
public static readonly Map Felucca = new Map( 0, 0, 7168, 4096 ); // Adjusted to ML size
public static readonly Map Trammel = new Map( 1, 1, 7168, 4096 ); // Adjustet to map split in client 6.0.x
public static readonly Map Ilshenar = new Map( 2, 2, 2304, 1600 );
public static readonly Map Malas = new Map( 3, 3, 2560, 2048 );
public static readonly Map Tokuno = new Map( 4, 4, 1448, 1448 );

Map( 0, 0, 7168, 4096 ) means step by step:
use map0.mul, mapindex 0, width: 7168, height: 4096

If the program crashes while generating images there's a 99% chance, that's because you have stated the wrong map size. There are 2 different sizes out there for map0/1.mul:
Mondain's Legacy uses 7168x4096 - the file is around 85mb.
Alle client before use 6144x4096 - the file is around 75mb.

After you edited your map sizes, you (currently) need to recompile UO Atlas.


Controls:
  • Click (middle mb): Move to this location
  • Doubleclick (left mb): Hide/Show controls
  • Drag + Click (left mb): Drag the map
  • Mousewheel up/down: Zoom in/out

Known issues:
On the first launch it will throw out an exception anyway (click on "Continue"), because no images have been generated. Do this once and no further errors should appear (except for unsquashed bugs :D).


Licensing:
All* code is licenced under GPL v2.0.

*Exception: The Ultima-folder is a copy of the Ultima SDK repository and therefore licenced under LGPL v2.1.


Special thanks to:
  • All Ultima SDK devs


Screenshots:

First Step: Generating images of the map:


Normal View with all controls:


View with hidden controls:
 

Attachments

  • UO Atlas beta 2.zip
    680.7 KB · Views: 1,167
Brutus5000;787906 said:
Ladies and gentleman,

due to the lack of updates for UO Automap and therefore missing support for map1.mul enhancements in the latest clients and the increased map size introduced with Mondains Legacy, I played around with some code and may therefore present you UO Atlas.


Description:
A very simple map-viewer built around the UltimaSDK.

Features:
  • Support for *all* 5 UO maps, including map1.mul
  • Support for any kind of map size (only by recompiling)
  • Tracking the player
  • Calculate hovered coordinates


Getting started:
It is important to modify the map definitions in Ultima\map.cs to fit your needs! If this file states other sizes than your map*.muls, you will encounter an error on map generation.


Controls:
  • Click (middle mb): Move to this location
  • Doubleclick (left mb): Hide/Show controls
  • Drag + Click (left mb): Drag the map
  • Mousewheel up/down: Zoom in/out

Known issues:
On the first launch it will throw out an exception anyway (click on "Continue"), because no images have been generated. Do this once and no further errors should appear (except for unsquashed bugs :D).


Licensing:
All* code is licenced under GPL v2.0.

*Exception: The Ultima-folder is a copy of the Ultima SDK repository and therefore licenced under LGPL v2.1.


Special thanks to:
  • All Ultima SDK devs

Do you have any pics of this?
 
going to be checking this out shortly, but looks promissing

but a couple of questions:

for the players to use this, do they just need the exe or other files?
does anything need to be installed on the shard

and if you are using just the 4 maps (only patched to 5.0.9.1) is their any problems or any settings to change? - i see now there is stuff to do for it, because tram came up all black, so what needs to be done for it?

also how do you get it to point to a custom directory, because we use custom maps through cuo, so would need to point to the patched directory instead of the uo directory?

also does this show statics (frozen ones), because we have a lot of custom dungeons, etc that are frozen statics (static file)

also is there a way to show "x-ray" view? or get it to render the images in x-ray view?
 

Brutus5000

Sorceror
I have added some screenshots now. :)

To your questions:

for the players to use this, do they just need the exe or other files?
You need the exe and the .NET SDK 2.0. All images are generated from the map*.mul files in your Ultima Online directory.

does anything need to be installed on the shard
No, it's all client sided, the same way as UOAM is.

and if you are using just the 4 maps (only patched to 5.0.9.1) is their any problems or any settings to change? - i see now there is stuff to do for it, because tram came up all black, so what needs to be done for it?
You will have to modify some files. It is currently adjusted to the latest clients > 6.0.9. After your changes (see "Getting started") you will have to recompile the project. Then you have to go to the menu and regenerate the map images.

also how do you get it to point to a custom directory, because we use custom maps through cuo, so would need to point to the patched directory instead of the uo directory?
This is currently not possible.

also does this show statics (frozen ones), because we have a lot of custom dungeons, etc that are frozen statics (static file)
Yes it shows statics. X-Ray view is currently not implemented and I don't see any advantage of this. But it could be implemented at cost of doubling the generation times of the image.
 

Mideon

Page
I must be missing something...when I try to generate the map files...it crashes.

Can you provide a more in depth installation instruction guide? I clearly did something incorrectly but after a quick look at the code...I can't tell what.

Does this have to be in my UO folder? How and where does it detect what folder to read the muls from? etc.

I can't wait to check it out though. Thanks for the screeners!
 

Brutus5000

Sorceror
The file-directory is read from your registry. That's all part of the UltimaSDK and i didn't change it.


I have added a small "installation" guide. It's more a read-before-use guide, but who cares. ;)

Everyone who encounters crashes during the map generation should try the following values:

Code:
public static readonly Map Felucca = new Map( 0, 0, 6144, 4096 );
public static readonly Map Trammel = new Map( 0, 1, 6144, 4096 );
public static readonly Map Ilshenar = new Map( 2, 2, 2304, 1600 );
public static readonly Map Malas = new Map( 3, 3, 2560, 2048 );
public static readonly Map Tokuno = new Map( 4, 4, 1448, 1448 );


I believe the different map sizes will confuse the community for quite a while time. There are a lot of UO tools, that do not support neither the new map size nor the map split in 2 files. For example InsideUO, Pandora or UOAM. Some of these tools are outdated and noone is maintaining them, so most of the shards will stick to the old system.
 

HellRazor

Knight
Brutus5000;788036 said:
Some of these tools are outdated and noone is maintaining them, so most of the shards will stick to the old system.

Not really true. Most shards aren't using custom maps. RUO always stays current with the latest client release. So I would assume most shards are using the newer clients with the new Map0.mul size.

Also, quite a few of the tools you mentioned either now support custom map sizes or have been replaced by something else that does.

Not that it matters since you made the map sizes configurable. :)
 

Mideon

Page
Urgh silly me, the change was in the Ultima SDK.

I am sorry to have bothered you, but thank you for the change. The tool looks great, can't wait to tinker. Thank you so much for the submission, I've been waiting a long time for a lightweight UO map viewer.
 

socowner

Wanderer
i get crash constantly

everytime i try it crashes for me, map sizes are correct, maybe its because i use a custom map instead of trammel map........a more detailed explanation on how to get it installed would help i think, would probably help many more people later to, then they wont be so many asking how to get it installed
 

kat20

Sorceror
socowner;788085 said:
everytime i try it crashes for me, map sizes are correct, maybe its because i use a custom map instead of trammel map........a more detailed explanation on how to get it installed would help i think, would probably help many more people later to, then they wont be so many asking how to get it installed


Not to sound demeaning but I beleive that 5000 had been asked this question and had gave an answer to it stating (CUSTOM MAP"S ARE NOT SUPORTED AT THIS TIME.)
 

Brutus5000

Sorceror
Custom maps are definitely supported. The map in the screenshot is a custom map from my shard. Can you send me the error report per pm and tell me when the error occurs?

I'll try to get out a second beta as soon as possible, which should catch all common errors. Black maps are better than errors ;)
 

Karmageddon

Sorceror
Ok I must be missing something, but mine is still crashing on the map generation. I have recompiled it with the new map settings and still crashes. I am currently using client version 6.0.10.0.

I must say this looks very promising to use even though I am having problems with it. I do realize that there will be bugs with new software like this so I am not going to say too much about it.
 
After I updated the files everything worked but it took ages to make the files. It could just be because of computer. It is rather strange when i zoom out all the way there are about 50 copys of each map showing. How do I know what one I should be looking at, and will you be adding lables in to this at some point in time, maps are fine but if you don't know what the names of stuff is your still screwed.
 

Brutus5000

Sorceror
I have uploaded beta 2.
The exception on startup should have vanished.

Looks like some UltimaSDK code crashes with new clients, so tracking players is currently deactivated.
 
Great tool, thank you! But I continue to have crashes during map generation.
Due to the fact I don't have Visual C++ and don't know exactly what I should do to recompile... there is someone could upload an executable with altered map values?
Thank you :)
 

batcrave

Wanderer
Map generation crash & resolution

Two issues I found that were causing crashes during map generation:

1) Under Win7 x64, GetExePath() is looking for a registry path that doesn't exist... @"SOFTWARE\Origin Worlds Online\{0}\1.0" is actually located under @"SOFTWARE\WOW6432Node\Origin Worlds Online\{0}\1.0" (I'm guessing this is the same for Vista x64, and likely other x64 versions)

2) It looks like ...\1.0\ has the ExePath for older versions, but ML appears to use ...\KR Legacy Beta\ - altho it's possible this is an artifact of me having had T2A and ML (briefly) installed separately.

For the former, I just hardcoded the change, and for the latter i manually fixed the registry, so they aren't proper fixes - but if anyone's running into similar problems, it'll give you somewhere to start.

and thanks, brutus... while it still seems to lack the labels I usually used UOAM for, it looks like a nice beginning for a new tool, and it's great that you posted your source so I _can_ fix problems like this.
 

Jeff

Lord
batcrave;793216 said:
Two issues I found that were causing crashes during map generation:

1) Under Win7 x64, GetExePath() is looking for a registry path that doesn't exist... @"SOFTWARE\Origin Worlds Online\{0}\1.0" is actually located under @"SOFTWARE\WOW6432Node\Origin Worlds Online\{0}\1.0" (I'm guessing this is the same for Vista x64, and likely other x64 versions)

2) It looks like ...\1.0\ has the ExePath for older versions, but ML appears to use ...\KR Legacy Beta\ - altho it's possible this is an artifact of me having had T2A and ML (briefly) installed separately.

For the former, I just hardcoded the change, and for the latter i manually fixed the registry, so they aren't proper fixes - but if anyone's running into similar problems, it'll give you somewhere to start.

and thanks, brutus... while it still seems to lack the labels I usually used UOAM for, it looks like a nice beginning for a new tool, and it's great that you posted your source so I _can_ fix problems like this.

The UltimaSDK maintained on Codeplex has fixes to these issue.
 

Anora

Wanderer
This is a great tool!! Thank you so much as it shows the newer maps as they should unlike UOAM. I have one question, will this tool be able to show labels as UOAM did? If it already does forgive me for not finding the way to turn it on.
 
Top