poeskilltree / poeskilltree Goto Github PK
View Code? Open in Web Editor NEWA Passive Skill Tree Planner for Path of Exile
License: MIT License
A Passive Skill Tree Planner for Path of Exile
License: MIT License
New melee crit nodes in "Disemboweling" Cluster are categories as "Everything else" instead of "Crit".
Not sure how easy this is to code (and let me know if you prefer that I leave requests on the forums/reddit instead of here).
It would be great to be able to select two trees/builds and get a one-click comparison that would show the net differences between the builds (e.g. +20% elemental damage, -40 dex).
In Skilltree.cs in ImplicitAttributes() on line 592, all of these values should be Floored. I have gone ahead and done it on my side, but I didn't want to commit it because the unittests will be all bananas. Was wondering if you guys want me to change the UnitTests the the correct values?
When I take a screen shot then paste it into any MS Office document only a portion of the tree is transferred. The image transferred is bounded on the left by Sanctuary node, on the right by Essence Surge and on the bottom by Hired Killer. I've adjusted the size and placement of the image in the planner but no difference. I've pasted into Word, Powerpoint and Publisher with the same result.
Thanks for an excellent resource.
[โ]h4ns_wm Logoutcore [score hidden] 15 minutes ago
After jiggling a lot with class switching, I found the way to replicate it:
Save two builds with different classes
Load up build 1
Load up build 2
Try to select class from build 1
Load up build 1
Try to select any class, it won't work this time
Let me know if you can replicate it this way
You can post this in the github, I don't have an account there
http://www.reddit.com/r/pathofexile/comments/2ls25r/release_20_offline_skilltree_planner/clyueyg
Example: enter "mana regeneration$" into search box, no nodes will be found, check RegEx, still no nodes found, you have to manually add/delete a character for it to update.
There are some new files like PersistentData.xml etc to keep when doing an update, would be good to have some info in the ReadMe.
I think it would be nice to get our hands on a new Icon for the program.
So does anyone know there way around paint? ;)
Lowest of low prio but the current icon is not that pretty...
I have done some rework of the current look, mostly by adding MahApps.Metro that is a nice layout framwork for WPF apps. This is what I have come up with at the moment:
What do you think is it something we want to run with or should I scrap it? Color changes is no problem but I thought that it fits pretty well with the poe color scheme.
Think we miss most important thing in Help menu. Actual help how to work with program :))
That was my first question from my brother "Why there isn't some help".
Something like:
Is the debug text @l0g0sys
I think it would be nice to add a cloud syncing for builds, so that you can access your builds on different machines.
To run our own server for this is not an option I think so check into options like dropbox and such. Ofc a user can do that on his/her own but if it was a part of the app it would be way more useful.
I believe it is because the wording on Disembowel and the other nodes is
"x% increased Melee Critical Strike Chance"
X% increased Melee Critical Strike Multiplier"
I didn't want to make any change just in case there was something that you may have to do for these. I figured it would be added near line 699 in Compute.cs
Don't know if this is only me, but after some recent changes, I can't start exe from explorer anymore. Altough it still works from studio and Microsoft.WindowsAPICodePack.Shell.dll is there .
System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.WindowsAPICodePack.Shell, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.
File name: 'Microsoft.WindowsAPICodePack.Shell, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null'
at POESKillTree.SkillTreeFiles.Bootstrap.Run()
at POESKillTree.SkillTreeFiles.Bootstrap.Main(String[] arguments)
Assembly manager loaded from: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
Running under executable C:\Users\xpal\AppData\Local\assembly\dl3\4VW3XRCP.MNG\XADM8ARR.WMB\5c2a7aa3\b7cc261f_a91ad001\POESKillTree.exe
--- A detailed error log follows.
=== Pre-bind state information ===
LOG: DisplayName = Microsoft.WindowsAPICodePack.Shell, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null
(Fully-specified)
LOG: Appbase = file:///C:/Users/xpal/AppData/Local/assembly/dl3/4VW3XRCP.MNG/XADM8ARR.WMB/5c2a7aa3/b7cc261f_a91ad001/
LOG: Initial PrivatePath = NULL
Calling assembly : POESKillTree, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null.
LOG: This bind starts in default load context.
LOG: Using application configuration file: C:\Users\xpal\AppData\Local\assembly\dl3\4VW3XRCP.MNG\XADM8ARR.WMB\5c2a7aa3\b7cc261f_a91ad001\POESKillTree.exe.Config
LOG: Using host configuration file:
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config.
LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind).
LOG: The same bind was seen before, and was failed with hr = 0x80070002.
Problem: Save info shows 0 skill points used even if there are
Reproduce: Allocate some points -> Reset tree -> undo -> Save
Since we have done some big changes since the last update and since we still have the same name as the old program I think we should aim for a 2.0.0 release that should be stable.
So what do we feel should be added before we do this release?
Some points:
Other than that most things should ofc be tested.
Many build guides use a level progression, so I think it would be nice if we could some how add this to a build. Something like this:
Saved Builds
Just a fast concept :)
Deleting the Data folder to get the latest tree makes the program crash upon starting.
Debug file: http://pastebin.com/x6xdbcHR
would be nice to show the lvl of a build.
18 free passive points from quests
another 3 possible from bandits.
on the character tab allow for selection of the possible outcomes so it gets factored into the overall tree breakdown.
As this user points out:
http://www.reddit.com/r/pathofexile/comments/2o7mu4/poeskilltree_210_13_skilltree_data/cml23jl
Increased armour and evasion should not be separated in the stats list.
Just found a bug with program crashing on startup when Radeonpro is started first.
Minor issue.
Can be avoided with opening skill tree planner first, then Radeonpro.
Erm, someone messed with the load portion of the passive tree. Not sure what happened but it won't load passive trees >.>
Try (Directly from the website, 1.2):
http://www.pathofexile.com/passive-skill-tree/AAAAAgMABAcHHgj0CaAOSA-rEZYUsBZAFm8WvxcvGYoaOBqPHRQdqiSqJpUqCy0fL2826TpYP3NGcUlRS1dMs1AwUzVVS1XGVdZXK13yYeJjQ2TnZp5rF2znbRltbG-ecFJwu3DVdwd_xoCkgh6DCYPbhX2HE4nTjDaPRo_6kFWVIJUummGboZu1nKSio6eErJi1SLzqvYK-7sAawFTA48HzwzrHyslEykrOcNkT2wvfiuGI42rpAuwY8NXxs_Pq9tr31_rS-wn-sw==
But the link doesn't draw correctly and the used points are off lol
So a lot of people want to use names longer than 24 chars, so @EmmittJ increased the length to 255 chars. The problem with this is that only a maximum 38ยฝ chars fit the save window. So I think we should either limit the length to 38 chars or we need to fix it so that the text wraps or get smaller.
Hey,
I've been drafting a few builds using the calculator and had an idea involving non-essential nodes for certain builds. The idea is that some builds have essential nodes that are a must-have, but they also have some nodes that are more valuable for certain playstyles and depend completely on preference. If you could somehow save a build that saved the info about the optional nodes in them and link/give it to friends or share with anyone, it could be a very useful feature.
I'm not exactly sure if it would be possible to save a secondary string of values after the official tree link so that people could import that into your calculator (and probably your calculator only, until poebuilder and rest pick up on it). The secondary string would perhaps include all optional nodes that have a different route highlighting to express their optionality and could be used to highlight good options for a build, that an user should consider taking.
This could all be written in text in the build guide as well, but I know most people skip straight into build, links and gear and ignore everyting else in build threads. Would just make the info more steadily available.
If I were to extend this thought even further, I could imagine having a base build with additional optional routes that your calculator could switch between, eg..
Naturally any of this shouldn't break the core functionality so that you could still import/export normal builds if you chose to, but have an extra tool at your hands. Say you wanted to write a guide and need 3 build links for beginners, for experienced and for HC and even then miss out on some nodes that might be worth checking out for anyone reading your guide.
You're doing good work, keep it up. :)
Some icons are a bit to big, eg. % maxium life, I think this might be because the program uses the Notable icon instead of the standard one. Lists are created with icons on start up and the key used might be the same and thus the smaller icon is overwritten.
The inactive icons are not used at all, in fact they are added to the ActiveIcons list. This is way down on the list to fix but would be nice. Atm it might just be better to not add the inactive icons at all, at least that will save performance ;)
We might want to start including the POESKillTree.pdb file in with releases. Debug text is a nice tool to have for people
Also, I just realized the K in SkillTree is capitalized xD
The loading window for downloading skilltree assets are not working properly.
Problem:
It appear then disappear before any progress is shown. Then it appear again and progress is increased to about 33% before it disappear again and now the load is complete.
I really need them! :)
It's nonsense to do all the clicking over each of test build/tree combinations and visually compare stats with my notes.
It already happend few times that with fixing one mechanic i broke something else.
It will require new project in solution though.
Now we have WPFSKillTree project, and something like UnitTests project could be added into PoESkillTreeSource repo root.
I already have skeleton working just need to finalize test data structure for tree, items and expected results.
Was watching some streamers today and noticed that POEURL IT takes really long to complete, don't know if the service is under load or something. But either way the program waits for a response synchronous and thus it feels like the program hangs. We can't do anything about the poeurl server performance but I think we should change to asynchronous waiting. Hopefully this should not be to hard to do.
So I have changed how builds saving works, it is now part of persistent data. I have added an import function that checks for the savedBuilds file during start up and takes all builds and adds it to persistent data and then deletes the savedBuilds file.
Because this is a big change to an important part of the app please help me test it so that it does not break and destroys builds for anyone. (ofc you could always backup the savedBuilds file somewhere else).
The application is near impossible to use with a touchscreen. Would it be possible to have it recognize scrolling/zooming touch events. At the moment, on a touch screen you can't click and drag around the tree like you can with the mouse.
Hi, I would like to help you with this project (if you want help that is). If you feel up for it please let me know and I will start looking at the code and maybe we can create some kinde of ToDo-list.
Regards Daniel
Two questions/requests:
Your item attribute -> Character attributes is pretty sweet. How easy is it for you to incorporate a "what if" item replacement setup? I.e. I'd enter the specific stats for an item and see what the total result and the delta would be (would make theorycrafting and shopping a LOT easier).
Is it easy for you to incorporate auras in your offensive stats sections? Would require a on/off check as well as a mana reserve check.
What do you guys think?
Hey why dont you use the finel 1.3 Skilltree Data ?
Feature request (mabye for 2.0?)
UI should remember collapsed/expanded state of property groups in listboxes.
No idea how it could be done, maybe some GUI/XAML/that-UI-lib guru might know.
Simple algorithm would be like:
UpdateAllAttributes()
{
// Remember all collapsed groups in listbox.
var state = SavePropertyGroupCollapsedState(listbox);
// update stuff...
// Collapse all groups found in state, new groups not found in state keep expanded as they are implicitly.
RestorePropertyGroupCollapsedState(listbox, state);
}
Should we try and deiced a date/time when we release a bug patch?
There are already some fixes done and I will do at least one today, and it could be good to get it out pretty soon but at the same time it is not good to spam releases either. Maybe at the end of the day today for @EmmittJ ? Or do you feel like we should hold on for a day or two?
Thoughts?
Functionality of character sheet for first version is close to being finished and one important decision must be made.
Maybe few noticed that i added gems database which is required for "+Level to gems" item mods and "Gems supported by level X Y gem" item mods to work.
This DB stores informations about per level/quality attribute values and special flags/settings tweaking gem behaviour.
Problem is in keeping this DB up-to-date (mostly per level/quality values).
Keeping it updated manually is out of question. Who would be doing it?
So there are 2 possible data sources to automatize it.
Game data mining.
This would mean reading data tables from game data file. I found some libraries on net which can do this, but problem is licensing. In no legal notice of game it's fobidden, but one never knows when GGG will decide to forbid it. So i'm pretty much against this.
Using community data.
This would mean reading data from community web sources (http://pathofexile.gamepedia.com, don't know about other item DB sites for PoE).
This is best solution regarding legal issues with GGG and regarding legal issues with Curse.com network, there are none (already did read all disclaimers, copyrights and legal notices).
One more big advantage from use of community source is that all missing/incorrect data can be added/updated by community itself.
So, what are your thoughts about this?
Putting "0" in Character Level will cause a crash.
The error time: 11/10/2014 05:47
Exception: System.OverflowException: Value was either too large or too small for a Decimal.
at System.Decimal..ctor(Single value)
at POESKillTree.SkillTreeFiles.Compute.ChanceToEvade(Int32 level, Single evasionRating)
at POESKillTree.SkillTreeFiles.Compute.Defense()
at POESKillTree.Views.MainWindow.UpdateStatistics()
at POESKillTree.Views.MainWindow.UpdateAllAttributeList()
at POESKillTree.Views.MainWindow.LoadItemData(String itemData)
at POESKillTree.Views.MainWindow.lvi_MouseDoubleClick(Object sender, MouseButtonEventArgs e)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.Controls.Control.HandleDoubleClick(Object sender, MouseButtonEventArgs e)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Interop.HwndSource.InputFilterMessage(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)
Hello, I'm trying to use this tool to do some what-if scenarios for different build modifications for my character. I've imported my character's items. It shows me Lightning Warp and Frostwall info, but it doesn't show info for my main skill Flame Totem. I've also tried firetrap and I'm not seeing that either. Thanks.
I've already added Offence tab into my fork which shows damage ranges. Soon, after testing a few small issues, i have pretty much all damage range calculation mechanics implemented and i'll be able to add DPS values and other stats per attack skill. Which will result in offensive statistics showing same numbers as game client.
The problem is, that in-game offensive statistics are:
So, i would like to ask about what and how would you like to see as your damage stats beside what you can see in game client?
Definetely i want to see CoC final DPS (my brother is playing such build and asked me to add it).
I saw some SRS damage calculators, totem and minion damage stats per gem level on forums so this could cover minions (except spectres).
Of course, Offensive tab will have to show same numbers as game client does, otherwise we wouldn't be able to see if basic damage mechanics calculation are working. But maybe add another tab with "DPS estimates" for DPS numbers not in game?
Alright guys, it looks like we will be getting 1.3 skilltree data to release to the public in afew weeks according to Chris' reddit post. I went ahead and sent him a pm, just waiting for him to respond, so we will see how that goes!
I think there might be some hotkeys missing from the help menu, so if you find one either add it there or here so I can fix it.
It would be nice if we show the starting attributes for the class in the class start zone. Not that important but it would look nice :)
Currently the .exe file shows version as 1.0.0.0 it would be good if it show the actually version.
Update: These two lines in AssemblyInfo.cs needs to be set
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
So now the issue is how to make this automated with the rest of the version handling system.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.