Log in

View Full Version : GamParse


GamParse
11-22-2017, 12:50 AM
Hi guys. This is the dev for GamParse.

I know several of you use the program for parsing, but being as most of you don't read the official eq forums, you may not necessarily keep it up to date.

I thought I might clear up a couple things:

1) https://gambosoft.eqresource.com/downloads.php is the only official source. You shouldn't be downloading it from anywhere else.

2) I've changed my position due to recent developments and will now fix errors or problems related to custom servers.

3) The current version is 1.5.2.17 and is continuously updated with new features and fixes. If you are using any other version you should update to that.

4) If you encounter any errors you can email me at gamparse@gmail.com and I'll look into fixing them. Keep in mind that I don't play here so it may make it a little more difficult to fix problems. Just make sure you're using the latest version before you email me to ensure that hasn't yet been fixed.

5) It is currently only officially supported on Windows 7 SP1, Windows 8.1, and Windows 10. It *may* run on other versions of Windows, but that is entirely a gamble.

It also requires .NET framework 4.7.1, which may need to be installed prior to running.

6) There are two versions available for download:

a) The installer version. This checks that your computer meets all the requirements first, and if not, will prompt you what to do. This version also includes an auto-updater that runs each time the program is started to keep it up to date.

b) Standalone exe. The program is the same, but it doesn't install, or check requirements first. It does include a manual check for updates that runs on start, but it will only prompt you if there is an update, it won't update for you.



If you have any other questions or concerns, just ask or email me.

Thanks.

mickmoranis
11-22-2017, 12:59 AM
Wow cool

Darkatar
11-22-2017, 02:37 AM
Hi guys. This is the dev for GamParse.


https://i.imgur.com/TSMs72a.png

skarlorn
11-22-2017, 02:44 AM
I came here to troll and left feeling oddly satisfied

xKoopa
11-22-2017, 11:33 AM
This is fixed by turning off warnings in the options. (something I bug reported!! ;)

Same. Gamparse used to be v annoying until i disabled warnings, then it worked great

Lulz~Sect
11-22-2017, 11:34 AM
notatrojan.exe

Pokesan
11-22-2017, 11:45 AM
He didn't like that I was continually spamming him with errors trying to load old P99 and Al'Kabor logs that don't conform to current Live log formats!

i assumed this meant it was broken!

i've now installed the official version of your virus OP :)

GamParse
11-22-2017, 11:54 AM
He didn't like that I was continually spamming him with errors trying to load old P99 and Al'Kabor logs that don't conform to current Live log formats!

No, I didn't like that I was being spammed by errors I had already fixed in updated versions.

GamParse
11-22-2017, 11:56 AM
This is fixed by turning off warnings in the options. (something I bug reported!! ;)

That doesn't fix anything...it just hides it. Unless you also turn off error reporting I still get emailed when there is a problem.

Turning that off doesn't fix anything, it just makes it harder for me to fix it because I don't know it's happening.

username17
11-22-2017, 12:52 PM
I use GamParse a ton. Thanks for the awesome tool. But last time I tried the new version it crashed. Using 1.0.3 works fine for P99.

GamParse
11-22-2017, 01:02 PM
I use GamParse a ton. Thanks for the awesome tool. But last time I tried the new version it crashed. Using 1.0.3 works fine for P99.

Not really.

Not even counting the new things I added such as the faction and random tabs, I can guarantee there are certain damage messages that aren't parsed properly in 1.0.3.

Then you have the tanking tab which is completely wrong to the point of being useless.

Newer versions also parse much, much faster.

I'm mean, if you're happy with that, I can't make you update. Just be aware it's not completely correct.


If you are having an issue with the current version, show me the error message and I might be able to help.

Triiz
11-22-2017, 02:45 PM
If you have any other questions or concerns, just ask or email me.


While you're here, do you have any suggestions to have GamParse parse every fight with a charmed pet where the pet is doing 100% of the damage? Someone suggested doing /pet leader before each fight and I thought it was working at first, but it turns out it wasn't. It seems like GamParse will recognize the first fight after a fresh charm, fights where the pet is DS'd or casts spells, and maybe a few others but it's hit or miss for me. Am I just doing something wrong?

Great program though, very useful for keeping track of a lot of stuff.

awfal
11-22-2017, 07:04 PM
Nice to see Dev support for p99.

GamParse
11-23-2017, 12:43 AM
While you're here, do you have any suggestions to have GamParse parse every fight with a charmed pet where the pet is doing 100% of the damage? Someone suggested doing /pet leader before each fight and I thought it was working at first, but it turns out it wasn't. It seems like GamParse will recognize the first fight after a fresh charm, fights where the pet is DS'd or casts spells, and maybe a few others but it's hit or miss for me. Am I just doing something wrong?

Great program though, very useful for keeping track of a lot of stuff.

So, pets and charm pets come with some inherent problems.

Specifically, summoned pets can have the same name (rarely) and charmed pets can have the same name as NPCs.

Both of these situations cause problems because it is impossible to differentiate between them based on the output in the log files. One "a rat" looks exactly the same as a second "a rat." If the hidden values on the end were displayed ("a_rat_00" and "a_rat_01") they would be unique entities and not a problem.


By design, players are not supposed to show up in the fight list (sorry PvPers). So, in the situation where a charm pet has the same name as an NPC, GamParse will interpret this as the "pet" attacking it's master (or itself) and ignore the damage.


If this is NOT the case, such as you charmed "a frog" and used it to attack "a bat" that fight should show the frog as your pet and display the fight as "<player> + pets vs a bat"

If this is not happening then there is a problem.

Also keep in mind that once a pet is linked to a player it can't be unlinked. So if you charm "a frog" then that pet dies, gamparse will still associate "a frog" as your pet until you restart. If you restart and start monitoring fresh, "a frog" will no longer be associated with you. However, if you restart but load your whole log, it will once again associate "a frog" as your pet.


So in short: If you charm a pet, it won't parse if you attack mobs with the same name. If you attack different mobs it should parse normally.


Unrelated note: The timeout period on these forums is ass. By the time I finished writing this post it had already logged me out.

Pyrocat
11-23-2017, 12:55 AM
Don't forget to set the "Discard if less than" value down to something more reasonable like "1". I think the default is in the thousands, so nothing on p99 will show up until you change this.

Triiz
11-23-2017, 01:46 PM
So in short: If you charm a pet, it won't parse if you attack mobs with the same name. If you attack different mobs it should parse normally.


Nah it wasn't just with mobs with the same name. For example using A Sepulcher Skeleton trash mob as a pet I had to DS it to get it to parse against named mobs.

I didn't know about the recognizing 1 pet without restarting. I usually keep the same pet for a while, that was probably the problem though I will have to mess with it some tomorrow. Does the /pet leader do anything to force Gamparse to recognize a new pet, it seems like it doesn't make any difference but just making sure. Also, if I switched pets would changing the "defualt pet" in settings to the mob name make any difference or is the restart always required?

Sorry for all the questions, have been wondering about this for a while. Thanks a lot for the answer much appreciated.

xhucknasty
11-23-2017, 04:10 PM
Recap: Third Party app dev f/pirate version of 20 yr old game fistfights w/community he didn't know existed until phantom error reports started showing up

GamParse
11-24-2017, 03:54 AM
Don't forget to set the "Discard if less than" value down to something more reasonable like "1". I think the default is in the thousands, so nothing on p99 will show up until you change this.

You could set it to 1, but I might recommend it be a little higher than that. Maybe 100-500 or maybe a little more if you're playing on a server with higher expansions.


The whole point of that setting is to allow it to ignore stuff like mass-killing grey (or green) con mobs that can clutter it up. If you really want to parse 1,000 kills of level 5 trash mobs in Crushbone when you're level 60 more power to you. I generally don't want to.

GamParse
11-24-2017, 04:18 AM
Nah it wasn't just with mobs with the same name. For example using A Sepulcher Skeleton trash mob as a pet I had to DS it to get it to parse against named mobs.

Was the pet linked to you when you started attacking?

The reason is this matters. GamParse is basically built around the "fight" construct. The fight begins the first time a Player does or receives damage from an NPC. It ends when it parses a "slain" message, or at the time index of the last damage if there is no damage detected for the Timeout period (default 30 seconds).

If a player doesn't do damage, or take damage, the fight will not start. That is, if you debuff a mob, root/snare it, or take any other non-damaging action, it will not consider the fight to have started yet.

So if you have a pet that is not linked to anyone, it will read as 1 NPC fighting another NPC. Since there is no player doing damage, it will also consider it to not be a real fight.

When you link a pet to a player, it takes the player from the Player List, and the pet from the Pet List and combines them together into a Combined List. It will then retroactively go through the fights and reparse them with the combined damage.

However, if the player did no damage like I mentioned above, then there is NO fight for it to reparse as it never created it in the first place.


Does the /pet leader do anything to force Gamparse to recognize a new pet, it seems like it doesn't make any difference but just making sure.

The /pet leader command is the main way in which GamParse identifies and links a pet to a player. It is always good practice to use it when a pet is summoned or when you first start the parser. It won't do anything if a pet is already linked, but it won't hurt anything either.

Also, if I switched pets would changing the "defualt pet" in settings to the mob name make any difference or is the restart always required?

The default pet simply performs a link between that pet name and the default player when the parser starts. This was added after they allowed players on Live servers to give their pets a permanent name. It isn't really intended to be used for temporary pets though it should still work.

As I mentioned before, GamParse stores a list of pet *names*, but it does NOT store links between pets and their owners. So if you parse a complete file it will see the /pet leader commands in the log and link them so you don't have to manually, but if you start it in monitor mode without reloading the file there will be no pets linked (outside of the default one) until someone does a /pet leader.

GamParse
11-24-2017, 04:21 AM
Recap: Third Party app dev f/pirate version of 20 yr old game fistfights w/community he didn't know existed until phantom error reports started showing up

I knew you existed. I just didn't care until it became annoying for me / a cease fire agreement was made with Daybreak.

jungleman
11-24-2017, 04:44 AM
great work!

mickmoranis
11-24-2017, 03:14 PM
a cease fire agreement was made with Daybreak.

could you elaborate, what does this mean?

Darkatar
12-07-2017, 06:51 PM
I knew you existed. I just didn't care until it became annoying for me

You could do so well here...

Phenyo
12-07-2017, 07:10 PM
I knew you existed. I just didn't care until it became annoying for me

laffin

Issar
12-07-2017, 10:06 PM
You could do so well here...

Lmao, I literally had that exact thought when I read it.

Muggens
12-09-2017, 05:32 AM
A youtube link for setting this up for p99? My gamparse is a mess, ima scrub n a noob with this neat program

Jimjam
12-12-2017, 04:36 AM
If you really want to parse 1,000 kills of level 5 trash mobs in Crushbone when you're level 60 more power to you. I generally don't want to.

In sad fairness, doing this efficiently represents several large parts of the p99 experience.

Jhaerik
12-12-2017, 07:08 AM
If it's dead.... who cares.

CodyF86
12-12-2017, 07:56 AM
I know you only support this for windows, but there is a large number (relatively) of people who run EQ under wine / mac. 1.0.3 works great under wine (along with EQ), but the latest version dies in a fireball (even on some windows machines) and here is why...if there is anyway you could update it sometime and catch this null pointer exception with an if check?

Unhandled Exception:
System.NullReferenceException: Object reference not set to an instance of an object
at System.Windows.Forms.WebBrowser.Refresh (System.Windows.Forms.WebBrowserRefreshOption opt) [0x00042] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.WebBrowser.Refresh () [0x00000] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.Control.OnEnabledChanged (System.EventArgs e) [0x0004b] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.Control.OnParentEnabledChange d (System.EventArgs e) [0x00008] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.Control.OnEnabledChanged (System.EventArgs e) [0x00082] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.Control.OnParentEnabledChange d (System.EventArgs e) [0x00008] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.Control.OnEnabledChanged (System.EventArgs e) [0x00082] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.Control.set_Enabled (System.Boolean value) [0x0003a] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at (wrapper remoting-invoke-with-check) System.Windows.Forms.Control:set_Enabled (bool)
at GamParse.MainScreen..ctor () [0x007be] in <d4d14c0e4407446dab057d17573ca4b1>:0
at (wrapper remoting-invoke-with-check) GamParse.MainScreen:.ctor ()
at GamParse.Program.Main () [0x0000e] in <d4d14c0e4407446dab057d17573ca4b1>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.NullReferenceException: Object reference not set to an instance of an object
at System.Windows.Forms.WebBrowser.Refresh (System.Windows.Forms.WebBrowserRefreshOption opt) [0x00042] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.WebBrowser.Refresh () [0x00000] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.Control.OnEnabledChanged (System.EventArgs e) [0x0004b] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.Control.OnParentEnabledChange d (System.EventArgs e) [0x00008] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.Control.OnEnabledChanged (System.EventArgs e) [0x00082] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.Control.OnParentEnabledChange d (System.EventArgs e) [0x00008] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.Control.OnEnabledChanged (System.EventArgs e) [0x00082] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at System.Windows.Forms.Control.set_Enabled (System.Boolean value) [0x0003a] in <dfcf5e19b3744f6abc3507fe9dffa1dd>:0
at (wrapper remoting-invoke-with-check) System.Windows.Forms.Control:set_Enabled (bool)
at GamParse.MainScreen..ctor () [0x007be] in <d4d14c0e4407446dab057d17573ca4b1>:0
at (wrapper remoting-invoke-with-check) GamParse.MainScreen:.ctor ()
at GamParse.Program.Main () [0x0000e] in <d4d14c0e4407446dab057d17573ca4b1>:0

Skew
12-12-2017, 09:32 AM
Last time i used gameparse it kept forcing me to Ok click through window boxes of every person in my logs. What was i doing wrong?

Jimjam
12-12-2017, 04:52 PM
Choose the 'supress errors' option as I recall.

Zekayy
12-13-2017, 10:37 PM
Keylogger no thanks

GamParse
01-17-2018, 07:57 PM
Would love a way to separate out damage shields.

What do you mean by this?

Damage Shields are parsed as "Environmental" damage as they are not directly attributable to any PC or NPC.

GamParse
01-17-2018, 08:01 PM
I know you only support this for windows, but there is a large number (relatively) of people who run EQ under wine / mac. 1.0.3 works great under wine (along with EQ), but the latest version dies in a fireball (even on some windows machines) and here is why...if there is anyway you could update it sometime and catch this null pointer exception with an if check?


For various reasons (features, security) I recently updated the required .NET framework to 4.7.1. This affects version 1.5.2.14 and above.

Gamparse 1.0.3 used Framework 2.0 Versions 1.5.0.0 to 1.5.2.13 used Framework. 4.0.


I'm not sure what versions WINE supports, (I'm not terribly familiar with it) but it may just require an update of your .NET framework.

If it doesn't support 4.7.1, I'll see about using a lower version for you guys. No promises though.

GamParse
01-17-2018, 08:03 PM
Keylogger no thanks

It's not a keylogger.

Don't use it if you don't want to, but don't spread shit either.

aaezil
04-18-2018, 09:44 AM
What do you mean by this?

Damage Shields are parsed as "Environmental" damage as they are not directly attributable to any PC or NPC.

must be a bug then cause it always reports me as having higher dps with damage shields on (specifically Kilva's Skin of Flame and Cadeau of Flame, haven't tried with any other dmg shields)

GamParse
06-22-2018, 09:04 AM
must be a bug then cause it always reports me as having higher dps with damage shields on (specifically Kilva's Skin of Flame and Cadeau of Flame, haven't tried with any other dmg shields)

That's not what I meant, sorry if I wasn't entirely clear.

Gamparse counts damage shield damage you or other players do, (Live EQ now shows damage shield hits for other players, not just yourself, I don't know if that change made it over here or not), however *EQ itself* does not attribute damage shield damage to the player despite what the log message says.

As an example: If you do 1000 damage to an NPC, and 100 of that damage is from a DS, EQ counts it as you doing 900 damage and 100 "environmental" damage. Thus if you are DPS-racing someone for kill credit, if they do 901 damage they will get kill credit and not you because EQ counts it as 900 vs 901, not 1000 vs 901.

This is why GamParse counts DS damage as "Environmental" in the breakdowns rather than counting it as non-melee or spell damage.

The person I was originally replying to said they wanted to separate out DS damage. I was trying to explain that it is already counted as a separate damage type, though it is ultimately counted together toward a player's total damage.

Hopefully that makes sense.

Also, I've been working on a lot of changes recently that I could use some help testing over here. As far as I know nothing *should* have a problem working over here, but since there is a lot of variety vs Live it's hard to be sure. Here is the relevant thread if you want to try it out:

https://forums.daybreakgames.com/eq/index.php?threads/gamparse-1-6-0-x-beta.249915

You can either post there or here if you run into trouble.

The big changes are:

-Per-spell DoT breakdown. (Not sure if that will work here. It requires DoT damage to report to the user and to list the DoT's name in the message. Not sure that exists here).
-Improved Searche Tab
-Improved Live Fight Tab
-Pets will auto link to their owners. (Not sure if that will work here. It requires pets to have a unique name and not one of the randomly generated EQ names. Not sure that exists here).

One thing that affects these servers more than Live is the addition of an option to specify what server you are playing on. This is normally read from the logfile name (eqlog_playername_server.txt) but I've noticed that some servers don't seem to do that, (or people are renaming their logfiles differently). Having that set would help.

kotton05
06-22-2018, 10:31 AM
Good post and great utility tool for all our eq needs!

GamParse
06-22-2018, 07:42 PM
If there is anyone that plays on the Sanc (Sanctuary?) server can you tell me what the following titles mean:

Occultist
Summoner
Witch
Priest
Adventurer
Tamer
Alchemist

I'm assuming they are custom class titles. I can probably guess what most of them are, but it would be easier if someone could just tell me.

Also, a few other titles I'm not sure about:

Earthshaper
TemplarKnight
Augur
Magus
Avender
Thaumaturge
Vindicator
Nightblade
Stalker

I'm not sure what server has these, but if they sound familiar a translator would help.

GamParse
06-22-2018, 08:14 PM
DoT damage is reported as "$target has taken $n damage from your $spell" on P99 so it should work assuming you're parsing against that string.

Pets on P99 do not have unique names and use the generated EQ name list. You could maybe make it work by parsing /pet leader reports, e.g. Laser says, 'My leader is nyclin'

For DoTs it parses lines matching these examples:

[Tue Mar 29 17:54:15 2016] $Name has taken $Number damage from your $spell.
[Tue Mar 29 03:22:01 2016] $Name has taken $Number damage from $Name by $Spell.
[Tue Mar 29 15:56:25 2016] You have taken $Number damage from $Name by $Spell
[Tue May 16 12:52:10 2017] You have taken $Number damage from $Spell

Damage breakdowns of course only apply to the first two options as those are player -> NPC damage.


It does parse pet leader reports. To *save* the association between a pet and a player and remember that association when you start the program the pet needs to have a unique name. Otherwise Player X will own "Goner" forever, even if another player summons a pet with that name.

Wonkie
06-22-2018, 08:20 PM
If there is anyone that plays on the Sanc (Sanctuary?) server can you tell me what the following titles mean:

Occultist
Summoner
Witch
Priest
Adventurer
Tamer
Alchemist

I'm assuming they are custom class titles. I can probably guess what most of them are, but it would be easier if someone could just tell me.

Also, a few other titles I'm not sure about:

Earthshaper
TemplarKnight
Augur
Magus
Avender
Thaumaturge
Vindicator
Nightblade
Stalker

I'm not sure what server has these, but if they sound familiar a translator would help.

does this server have good pop? it sounds weird and cool

GamParse
06-22-2018, 08:23 PM
does this server have good pop? it sounds weird and cool

I have no idea. I don't play there which why I need to ask what the titles mean.