Unofficial Offline Skilltree Calc (Delete the Data folder to update. Stop posting "update please" )

hm.
there seem to be some other elements missing on your screenshot.
Turns out i failed setting one layouting property correctly
hope this fixes it.
PoESkillTree_1.41

removed the proxy config from the package again.
if you need it, get it from
http://code.google.com/p/path-of-exile-skilltree-planer/downloads/list

also clawe: this tool downloads the official skilltree and uses it.
if you have an old version, delete the data folder and the tool will download the most recent from the PoE website.
Last edited by Headhorr on Feb 9, 2013, 12:21:01 PM
After few minutes i realized that I have old assets from the poe site. After deleting Data folder and re-downloading everything is ok now. Thanks and sorry for trouble.

Edit: Oh, you wrote the same info just when I was posting my ;)
Last edited by clawe on Feb 9, 2013, 12:23:54 PM
1.41 runs fine. does not crop it if i run in 1200 x 800.
to answer you question about the crop pic. zooming doesn't fix it. Only Changing the res and reloading the data file.
Works great. thanks for your work.
Is minic a gheibhean beal oscailt diog dunta!
Great tool, but i've been trying to figure out how to make a permanent copy of my passives in case they change the tree again, I make tons of builds and put hours into each one so this is a must. Is the save to file working now or it still wasn't implemented? I'm not sure if i'm just doing something wrong or not lol.

If its not working would it still load old skill trees if I save a backup copy of their data folder before updating to a new tree and use that for old ones? Sorry if this has already been answered, i've been looking through comments to no avail.
"
Great tool, but i've been trying to figure out how to make a permanent copy of my passives in case they change the tree again, I make tons of builds and put hours into each one so this is a must. Is the save to file working now or it still wasn't implemented? I'm not sure if i'm just doing something wrong or not lol.

If its not working would it still load old skill trees if I save a backup copy of their data folder before updating to a new tree and use that for old ones? Sorry if this has already been answered, i've been looking through comments to no avail.


it should still load the old skill tree.
depending on how old.
there has been a big change in their id format so depending on how old they are, they may not work.

also instead of a save to file, there is now a build manager. it expands on the build button beside the class combobox.
builds saved there go to the savedBuilds file.

By the way, I see a lot of downloads for the proxy config file.
Can someone confirm or deny that it helps on error 407?
Last edited by Headhorr on Feb 11, 2013, 9:22:31 AM
Headhorr, when you search for a skill on the tree and hit "Skill Highlighted Nodes", it obviously uses a sort of greedy algorithm, would it be possible for the program to be less greedy and more optimal? I frequently find much better paths for the tree that save skill points and in turn get to the end nodes quicker. While the algorithm you use is good start for such optimizations, and it will never be able to produce optimal final builds (due to the nature of the search and other required nodes, IE: cutting through a loop instead of going around unless specified, or ascertaining the optimum amount of life with minimum amount of points) I feel it could be slightly better about saving points.

So would it be possible for the program to (at the check of a box) run a more thorough process in which it does several of these algorithms while altering the parameter's slightly (such as working backwards forcing the tree onto a different route) and then compare these to determine which uses the least nodes? If multiple end up at the same number, how about having an option to look at the other tree's that it had come up with? I understand that such a process would take orders of magnitudes longer, and that is why it would be optional. I feel that it could be of some use to people, and would overall make the program better.

Without decompiling the program, I can only assume that you are using some form of a minimum spanning tree algorithm, but I cannot be sure whether something like this is in place to act as a secondary measure.

Other things to consider adding (possibly in an advanced menu?):
• Option to highlight all nodes within a certain distance from current tree
• Easy highlight nodes to skill to when skilling highlighted nodes
• Manually input equipment stats (not sure if there is a link creator for such a tool)
• Option to limit how many skill points used when skilling to highlighted nodes
• Option to limit distance when skilling to highlighted nodes (different from above)

Don't get me wrong: all in all, I love the program, it is a wonderful tool that I use to build really crazy and wonky builds that would never work in practice, but are still fun to think about (such as complete glass cannon sword dual wield attacking 8 times a second, or creating a melee class with 4.7k base hp that regenerates 300 life per second, though I guess with righteous fire...). Not only that but it helps me make some of these crazy builds into something semi-viable (such as the currently in progress "Freezing Pulse - watch everything on screen get stunlocked with ailments"). But I feel it could use just a little polish and it will turn this gold nugget into a real shining diamond.


PS. I did take a little look at the skilltree.txt in the data folder and saw how the passives were arranged, I wouldn't think it would take too much effort to add the ID of a selected passive to the list of passives to the resulting ID list when searching, or to the list of the skill to highlighted nodes (unless you aren't using an ID list when performing this operation).
Last edited by Masterx3829 on Feb 11, 2013, 11:08:31 AM
The problem at hand is essentially the steiner tree.
http://en.wikipedia.org/wiki/Steiner_tree_problem

A friend implemented the easiest approximation by always using the shortest path to the skilled area, one after another.
Of course the skilled points are far from optimal and they should only give you a a small overview on which points to skill.

If you have more insight on this, I encourage you to take a look at the source at http://code.google.com/p/path-of-exile-skilltree-planer/source/checkout and implement a better algorithm.
Hey, I'm having an issue with the program crashing on launch. Debug file says its encountering a dead network at 173.192.44.22:80, and has been telling me this for several days. Network seems to be reachable, and is multiple jumps out from my home network. Anyone else encounter this?

Full debug below.

Spoiler
The error time: 02/11/2013 17:29
Exception: System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: A socket operation encountered a dead network 173.192.44.22:80
at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Int32 timeout, Exception& exception)
--- End of inner exception stack trace ---
at System.Net.HttpWebRequest.GetResponse()
at POESKillTree.SkillTree.CreateSkillTree(startLoadingWindow start, UpdateLoadingWindow update, closeLoadingWindow finish)
at POESKillTree.MainWindow.Window_Loaded(Object sender, RoutedEventArgs e)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at MS.Internal.FrameworkObject.OnLoaded(RoutedEventArgs args)
at System.Windows.BroadcastEventHelper.BroadcastEvent(DependencyObject root, RoutedEvent routedEvent)
at System.Windows.BroadcastEventHelper.BroadcastLoadedEvent(Object root)
at System.Windows.Media.MediaContext.FireLoadedPendingCallbacks()
at System.Windows.Media.MediaContext.FireInvokeOnRenderCallbacks()
at System.Windows.Media.MediaContext.RenderMessageHandlerCore(Object resizedCompositionTarget)
at System.Windows.Media.MediaContext.RenderMessageHandler(Object resizedCompositionTarget)
at System.Windows.Interop.HwndTarget.OnResize()
at System.Windows.Interop.HwndTarget.HandleMessage(WindowMessage msg, IntPtr wparam, IntPtr lparam)
at System.Windows.Interop.HwndSource.HwndTargetFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
Exception: System.Net.Sockets.SocketException (0x80004005): A socket operation encountered a dead network 173.192.44.22:80
at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Int32 timeout, Exception& exception)
hm, 173.192.44.22:80 is www.pathofexile.com.
I'm guessing you use some kind of firewall that blocks the program from accessing the internet.

At least, if you're able to connect to this website with a browser, you're probably not ip banned.
Last edited by Headhorr on Feb 12, 2013, 5:35:18 AM
Very good idea with adding "Builds" tab with save builds. But when I add and want compare multiple builds / multiple characters classes there is a mess. We don't know then what char is wchich and con not dig to source - link to forum thread build.


a)It would be nice if there is possibility to add link driving build adress on forum.This link would be added after clicking Save new --> build name : add line below for forum link so we can paste there forum adress link.

b)Additionally add at bottom "New" button - to clear build and start up fresh.

c)Add confirmation button whan deleting build, because I and my party friends deleted a char build by mistake without confirmation some times.

Report Forum Post

Report Account:

Report Type

Additional Info