Unofficial, Offline SoD Spell Parser

Kobex

Dalayan Beginner
Below is a link to an application I wrote in an attempt to parse the spell data file used by the client. This program is very early in development, so there could be several bugs, inaccuracies, and various other problems. I had no previous experience in dealing with any spell files before writing this program.

I wrote this program for two primary reasons. First, I personally wanted to see the effects of item spells not found at the SoD spell database web page. Second, it seemed like the raw spell file would be an interesting puzzle to attempt to solve.

There are probably a few million inaccuracies with the spell listings. All I ask, if you would like the program to improve, is that you point out what is incorrect (with verified correct numbers and character level), and eventually the data will more closely resemble reality.

Here is the link:
http://pages.sbcglobal.net/kobe/sodparse.zip

The file is 5 megs due to the runtimes that need to be installed. The actual executable and interface portion is only about 250K.

Hopefully some of you will find this thing useful. Just remember that the information might be completely incorrect, so don't bug the SoD staff about problems you notice with spells. Always test in-game before making assertions when possible. If something seems broken, it's far more likely to be my mistaken interpretation than an actual problem relating to the server.

Have I mentioned that this program might not be entirely accurate? ;)

Edit: Oh yea, how to use this thing. Just perform a search with specific text, for a specific class, or both. If you don't choose a specific class and don't specify a search string, the list of spells returned will be rather... large. The search results will appear in the list box.

Edit II: I'd also like to thank Mongrel and his online spell page. I referred to the page many times when trying to figure out the spell formats.

Edit III: Fixed the link
 
Hey, I kind of missed this thread, but I'm going to check it out and possibly put it up on the main page if it's good. :0

Edit: The link seems to be broken. Would you mind contacting me on IRC?
 
I should have known that link wouldn't last.

I made some room (with a whole 20k to spare) on my personal web space for a more stable link:

http://pages.sbcglobal.net/kobe/sodparse.zip

As I make changes, I'll just update that link. One thing I already know I want to change is the way you choose spells after a search. The list box interface can become cumbersome when a lot of spells are returned.
 
Kobex, This program is incredible. I was almost certain that it would be a mess. However, you put together a very user friendly and informative little piece of work. This should really be up on the official site.
 
Thanks for the kind words!

Asside from cleaning up the interface a bit, I'd still like to make this as accurate as possible. One thing I'd especially like to verify are bard songs. I had almost forgotten about bard songs until one of my test searches showed that I was listing them all incorrectly. I'm still not sure if I'm correctly scaling the values over the levels properly, but I also noticed that I still show a number of song effects with zero increases. I'll have to look into those.

I also don't take the final scaling into account when sorting the spells in the stacking windows. I should clean that up as well.

One quick interface tip. Pressing the escape key closes the spell or stacking popup window that currently has focus. It's faster than having to click to close all the time.
 
Sweet, eqemuspells is pretty buggy and annoying, this looks better :)

Little request:
uirequest.jpg


:)
 
That's a good idea. However, I think I will completely change the interface for how the search results are displayed. That list box is just too cumbersome in my opinion, especially with regards to large lists. If for some reason I don't change the whole thing soon, I'll add the button.

I believe I've heard of eqemuspells, but I haven't used it. I'll have to look into it again. I don't suppose there's any source code available for it? I'd like to eliminate a lot of my guess-work during spell parsing if possible.
 
My suggestion would be to just display a list of spells to the left or right in a selection window.
 
When I look up spell after spell, the new pop up spell info windows sort of cascade down to the right bottom corner of my screen. It's kind of annoying to move the windows up to be visible.
 
I actually added the cascading feature, as originally the popups all ended up on top of each other. Sometimes you didn't even know how many popups were open until you starting moving of closing them.

I'm not sure what the best way is to display the spell information. I kind of like the popup approach as it lets me display many pieces of information at once, in any place on the desktop that I choose.

If I don't cascase the windows. I suppose I can tile them. I just figured people would run out of space quickly if their resolution was fairly low. I could implement this as an option unless there is a better approach.
 
When I look up spell after spell, the new pop up spell info windows sort of cascade down to the right bottom corner of my screen. It's kind of annoying to move the windows up to be visible.

I just read this again and realized I might have misinterpreted what you were saying. Is the problem that the cascading windows cascade down too far, so the new popups are partly off the screen?

Right now my cascade reset points are hardcoded, but I was going to originally have them based on the currently displayed resolution. When I didn't find a quick and dirty way to query that resolution I sort of forgot about it.

To get around this problem currently, click the "Reset Spell Window Position" button. This will move the most recently created spell popup to the initial cascade starting point, and also reset the cascade location in the process.
 
Back
Top Bottom