TerraMap Windows is an interactive Terraria v1.4 world map viewer that loads quickly and lets you pan, zoom, find blocks, ores, items in chests, dungeons, NPCs, etc.
Creating empty Worlds and Players folders seems to be preventing all the exceptions I'm experiencing.
I have the Terraria server running on a separate computer. The server and worlds are not in their default locations (they're sitting in the D: drive).
Just in case it matters:
OS: Windows 7 64-bit
World created with Terraria v1.4.0.3
Currently running Terraria v1.4.0.4
Launching TerraMap gives this exception about not finding the Worlds folder:
System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Users\Pika\Documents\My Games\Terraria\Worlds'.
at System.IO.Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileSystemEnumerableIterator1.CommonInit() at System.IO.FileSystemEnumerableIterator1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler, Boolean checkHost)
at System.IO.Directory.GetFiles(String path, String searchPattern)
at TerraMap.MainWindow.LoadWorldFiles() in C:\Users\Jason\source\terramap\windows\TerraMap\MainWindow.xaml.cs:line 95
at TerraMap.MainWindow.d51.MoveNext() in C:\Users\Jason\source\terramap\windows\TerraMap\MainWindow.xaml.cs:line 941
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
Version: 1.4.6.17651
When the Worlds folder is in place, but the Players folder isn't, these two (nearly identical) exceptions are thrown. Again, creating empty Worlds and Players folders prevent these errors.
System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Users\Pika\Documents\My Games\Terraria\Players'.
at System.IO.Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileSystemEnumerableIterator1.CommonInit() at System.IO.FileSystemEnumerableIterator1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler, Boolean checkHost)
at System.IO.DirectoryInfo.InternalGetDirectories(String searchPattern, SearchOption searchOption)
at TerraMap.Data.World.GetPlayerMapFiles() in C:\Users\Jason\source\terramap\windows\Data\World.cs:line 1797
at TerraMap.MainWindow.LoadMapFiles() in C:\Users\Jason\source\terramap\windows\TerraMap\MainWindow.xaml.cs:line 205
at TerraMap.MainWindow.d24.MoveNext() in C:\Users\Jason\source\terramap\windows\TerraMap\MainWindow.xaml.cs:line 315
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
at TerraMap.MainWindow.d23.MoveNext() in C:\Users\Jason\source\terramap\windows\TerraMap\MainWindow.xaml.cs:line 270
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
at TerraMap.MainWindow.d58.MoveNext() in C:\Users\Jason\source\terramap\windows\TerraMap\MainWindow.xaml.cs:line 1229
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
Version: 1.4.6.17651
and
System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Users\Pika\Documents\My Games\Terraria\Players'.
at System.IO.Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileSystemEnumerableIterator1.CommonInit() at System.IO.FileSystemEnumerableIterator1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler, Boolean checkHost)
at System.IO.DirectoryInfo.InternalGetDirectories(String searchPattern, SearchOption searchOption)
at TerraMap.Data.World.GetPlayerMapFiles() in C:\Users\Jason\source\terramap\windows\Data\World.cs:line 1797
at TerraMap.MainWindow.LoadMapFiles() in C:\Users\Jason\source\terramap\windows\TerraMap\MainWindow.xaml.cs:line 205
at TerraMap.MainWindow.d24.MoveNext() in C:\Users\Jason\source\terramap\windows\TerraMap\MainWindow.xaml.cs:line 315
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
at TerraMap.MainWindow.d23.MoveNext() in C:\Users\Jason\source\terramap\windows\TerraMap\MainWindow.xaml.cs:line 270
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
at TerraMap.MainWindow.d56.MoveNext() in C:\Users\Jason\source\terramap\windows\TerraMap\MainWindow.xaml.cs:line 1205
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
Version: 1.4.6.17651
TerraMap doesn't crash after these exceptions are thrown, locating the world file manually throws yet another exception. While my guess is that this exception will become moot when the previous two are dealt with, I figured I'd put it here just in case it's helpful.
System.NullReferenceException: Object reference not set to an instance of an object.
at TerraMap.Data.World.GetTileColor(Int32 y, Tile tile) in C:\Users\Jason\source\terramap\windows\Data\World.cs:line 1110
at TerraMap.Data.World.ReadTilesVersion2(BinaryReader reader, Boolean[] importance) in C:\Users\Jason\source\terramap\windows\Data\World.cs:line 1040
at TerraMap.Data.World.ReadWorldVersion2(BinaryReader reader) in C:\Users\Jason\source\terramap\windows\Data\World.cs:line 463
at TerraMap.Data.World.Read(String filename) in C:\Users\Jason\source\terramap\windows\Data\World.cs:line 435
at TerraMap.Data.World.<>c__DisplayClass378_0.b0() in C:\Users\Jason\source\terramap\windows\Data\World.cs:line 397
at System.Threading.Tasks.Task.Execute()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
at TerraMap.MainWindow.d24.MoveNext() in C:\Users\Jason\source\terramap\windows\TerraMap\MainWindow.xaml.cs:line 303
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
at TerraMap.MainWindow.d22.MoveNext() in C:\Users\Jason\source\terramap\windows\TerraMap\MainWindow.xaml.cs:line 265
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
at TerraMap.MainWindow.d83.MoveNext() in C:\Users\Jason\source\terramap\windows\TerraMap\MainWindow.xaml.cs:line 1515
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
Version: 1.4.6.17651
PS. Thank you for TerraMap and your continued efforts.
Creating empty Worlds and Players folders seems to be preventing all the exceptions I'm experiencing.
I have the Terraria server running on a separate computer. The server and worlds are not in their default locations (they're sitting in the D: drive).
Just in case it matters: OS: Windows 7 64-bit World created with Terraria v1.4.0.3 Currently running Terraria v1.4.0.4
Launching TerraMap gives this exception about not finding the Worlds folder:
When the Worlds folder is in place, but the Players folder isn't, these two (nearly identical) exceptions are thrown. Again, creating empty Worlds and Players folders prevent these errors.
and
TerraMap doesn't crash after these exceptions are thrown, locating the world file manually throws yet another exception. While my guess is that this exception will become moot when the previous two are dealt with, I figured I'd put it here just in case it's helpful.
PS. Thank you for TerraMap and your continued efforts.