Jump to content

Improved Statistics

Misc

232 replies to this topic

#1 SjurWarEagle

    Member

  • PipPipPipPipPipPip
  • 235 posts

Posted 29 March 2013 - 07:31 AM

Greetings mighty mechpilots,

I would like to present you a little tool: MechCollect

Posted Image

Because the name alone doesn't say anything, some Q&A for making clear what this tool is about.

What is MechCollect?
MechCollect is a javaprogram, regulary collecting statistics from http://mwomercs.com/profile/stats. These numbers are stored in a local database.
It provides different analytics and presentations of this data.

Whats MechCollect able to do?
At the moment it can:
  • display the main data of the last battle
  • progress in MC-Bills and MWO Credits
  • Wins/Losses-Display global and per mmap
  • Kill/Death-Display per Mech
  • Accuracy overall and actual
  • average Damage per Hit
  • Display of XP per mech
What does actual accuarcy stands for?















MechCollect takes the numbers of the last refresh, so it displays the difference between two matches and can calculate the accuracy on a match basis.

How does MechCollect knows what I'm playing in a game?
Pretty simple. It takes the data after each match and compares them. The number of played matches is only increased at one mech. This is the mech you played :P

Where are my logindata is coming from?
You have to edit the config.properties in the directory config of this tool.

What are my logindata used for!?
Nothing except requesting the statistic page!

What is "average damage per hit"?
Simpel: The amount of damage you inflict with one shot.
Lets say you are hitting with a laser and du 5 damage, second shot dies 2 damage. Now you did 7 damage with 2 shots, resulting in 3,5 average damage.
Why does my laser does different damage? You sometimes just scratch a mech with your laser, not doing the full potential of damage.

Why on earth is there a raven on the picture?
*raises both handy* I'm innocent :P AJ Frost did all graphics :P

Is there anything I should keep in mind?
Yes, the data is coming from the homepage, if there are bugs like the missing Tourmaline Desert-stats, I'm helpless.

Where is the data stored?
All data is stored in a file mechcollectdb.script in the directory db.

Can I manually request data from the website?
Yes, please click on the raven.

How does the tool know when I'm playing and when not?
I'm using the fact, that mechlab and so on have a different resolution in compare to the battle-window.
If the resolution of the programm "MechWarrior Online" change, the tool recognizes this.

Can I cahnge the colors of the graphs?
Yes, simply edit the colors.properties.

What about bugs?
Drop me a private message or post into this thread :P

What do I have to do in order to start with the tool?
Only edit the config.properties and provide your login data.

Where can I get this thing?
See below


How does mechcollect detect when to click the button or to take a screenshot?
First the program catches the window of mwo, so it gets the actual position and size of it.
In this window mechcollect checks specific points for a specific color, if it finds this, it thinks to have found the correct mode of mwo.
Think about this like some kind of fingerprint for different screens.
Then looking at the ready-screen you'll notice the red and blue flag always being at the same position, so if you can find these two, you can be quite sure to have a ready-screen in front of you.
All points are configured in the config.properties:
# The points to look for, in order to determin, of end of match has occurred, based on 1980x1080
endOfMatchWinPoints=385,562,11206656;372,214,7584;380,75,15116032;
endOfMatchLostPoints=385,562,7584;372,214,11206656;380,75,15116032;
 
# Points of the ready.button to click on before launch of match, based on 1980x1080
readyButtonPoints=1177,116,-5636096;117,117,-16769894;1700,60,27486;

There is no voodoo done.

I don't want to have the program take screenshots or click on buttons for me!
No problem, go into your config.properties and set one of theses values to "false"
useClickReady=true
useEndOfMatchScreenshot=true

and you are done

Where to find the taken screenshots?
All screenshots are stored locally in the database, technically this is the file mechcollectdb.lobs.
When opening this file with a text editor you will only see garbage, this is because the databasefile stores binary data.
In order to view the image, you will have to go into the battlelog and click on the right icon in the line of the fight you did.
You also can adjust the size of the image mechcollect takes, but make sure to look into the screens if they are readable :)
screenshotWidth=1280
screenshotHeight=1024

Posted Image
Posted Image

What to I have to do if running an older version and want to update?
Make a backup of your directory (yes, always do so), then download the new version (see link below) and copy your db-folder into this new setup.
After this, change your login-data and you should be ready to go.

Any known bugs or unexpected behavior?
  • If mechcollect takes a screenshot, it takes the upper most viewable image, so if you have a window above mwo, this window will be in the screenshot.
Please be aware of this, the negative effect may be, mechcollect to capture personal data you didn't want in a screenshot.






The screenshots aren't send anywhere, you can delete screenshot by the build-in imageviewer accessable by battlelog.
  • the clicking and taking of screenshot only works in "full window" and "window" mode, not in fullscreen. At the moment I don't know a workaround for this.
  • when taking an image of the 2. page of the end-of-match-screen the earnings may be wrong. the reason for this: when entering the page, the earnings start to count upwards, I'm waiting some seconds but in good games, the number then hasn't reached the target value. You might see something like 340.000 as "big number" but in the calculation it's 280.000
Posted Image





Now some images for better overview:
Posted Image
Posted Image
Posted Image
Posted Image
Posted Image
Posted Image
Posted Image
Posted Image
Posted Image

Posted Image
Posted Image
Posted Image
Posted Image

Where is the download?
Here:

http://sourceforge.n...28.zip/download

*edit 31.03.2014* updated downloadlink

#2 Genewen

    Member

  • PipPipPipPipPipPip
  • 355 posts

Posted 29 March 2013 - 07:52 AM

Looks decent, but fat chance that I'm going to give my login data to a third party program.

#3 PharmaTestSubject

    Rookie

  • 3 posts

Posted 29 March 2013 - 08:49 AM

OK, the paranoid person (where is the love?) has me feeling jumpy.
I'll packet sniff the app and make sure it only talks to mwomercs.com.

Give me a few minutes...

It looks just fine. Summary below...

Edited by PharmaTestSubject, 29 March 2013 - 10:06 AM.


#4 SjurWarEagle

    Member

  • PipPipPipPipPipPip
  • 235 posts

Posted 29 March 2013 - 09:03 AM

View PostGenewen, on 29 March 2013 - 07:52 AM, said:

Looks decent, but fat chance that I'm going to give my login data to a third party program.

I can absolutely understand this. There isn't any proof the tool doesn't communicate anywhere else.
But how to solve this problem?
I could release the source code (after cleaning it up, so you don't see the garbage comments :P ) and you could compile it yourself.

@PharmaTestSubject:
You should get 7 requests, one for login and 6 for stats without login-data.
Maybe 8, because there is one redirect after login.

#5 Just wanna play

    Member

  • PipPipPipPipPipPipPipPip
  • 1,520 posts
  • LocationInside the Womb of a Great Turtle

Posted 29 March 2013 - 09:06 AM

i don't see the point

#6 PharmaTestSubject

    Rookie

  • 3 posts

Posted 29 March 2013 - 10:10 AM

Initial security evaluation:
It is kosher. All packets go to the MWOMercs subdomain.
Right at the end I saw some error reporting go to drwatson at Microsoft.com indicating that there *might* be a memory leak coming from Java.exe. But that is totally normal, especially in version 0.6 of any program. If its gets all hoggy - then close and reopen ;)

Oh, and does putting your password into a tool violate the terms of use that we all agreed to? Nah, read section 5. You are solely responsible. But it doesn't say you have to act responsibly. And I vouch for SjurWarEagle without actually knowing him. His program does what he said it would do.

Am I trustworthy? YES! Except this is my second account with zero posts and no notoriety because I didn't want to test under my real one. I'll get in a post as the real me... ElLocoMarko. (and I see no mention in the terms of use about multiple accounts...)

Edited by PharmaTestSubject, 29 March 2013 - 10:34 AM.


#7 PharmaTestSubject

    Rookie

  • 3 posts

Posted 29 March 2013 - 10:27 AM

First of all, well done. None of the problems below keep this from being immediately useful.

Feedback:
1) The second time that I open the program (after it has succeeded with one fetch), it auto-sizes really wide.... like 2000 pixels or so. (I have dual monitor at 1280x1024 and it spans 1.5 monitors.
2) Available C-bills screen is showing like 10 decimal places of accuracy. Zero would be better.
3) My first test user had no data at all (never played a match) and the refresh button went grey and never turned tan again. It probably should have reported some error.
4) On first refresh, you have only one data point. For every line graph, this shows nothing... only Actual Accuracy/Weapon displays any values. This will confuse new users. Simply fetching data twice alleviates this problem.
5) Two error messages when I flip through the charts:

Error getting color for "ILYA MUROMETS"
Error getting color for "STREAK SRM 2"

Overall, really minor stuff.

#8 ElLocoMarko

    Member

  • PipPipPipPipPipPipPip
  • 533 posts

Posted 29 March 2013 - 10:38 AM

View PostPharmaTestSubject, on 29 March 2013 - 10:10 AM, said:

...
Am I trustworthy? YES! Except this is my second account with zero posts and no notoriety because I didn't want to test under my real one. I'll get in a post as the real me... ElLocoMarko. (and I see no mention in the terms of use about multiple accounts...)


I am PharmaTestSubject. Please consider security question settled. The only-a-little-paranoid can begin playing with this new tool.

#9 SjurWarEagle

    Member

  • PipPipPipPipPipPip
  • 235 posts

Posted 29 March 2013 - 10:39 AM

Thanks for your feedback.
I'll look into these things for the next version.
The two errors are more infor-strings for missing colors for the mech and ssrm, MechCollect uses some default colors in this case.

#10 SjurWarEagle

    Member

  • PipPipPipPipPipPip
  • 235 posts

Posted 05 April 2013 - 08:29 AM

Hello,

I'd like to present version 0.7 of this tool.


0.7
Bugfixes:
* Mechs with playingtime > 24h will be parsed correctly
* Buttons will not bring the window to be too large
New:
* Layout of buttons will not make the window too wide
* Weaponstats of last fight are displayed in the right screen
* Buttons or enabling/disabling graphs have now the color of the graph
* added some helper-lines like 1,0 Kill/Death-Ratio

Posted Image

Downloadlink:
https://www.dropbox....0.7-build73.zip

#11 Patryn

    Member

  • Pip
  • Legendary Founder
  • Legendary Founder
  • 16 posts
  • LocationKutztown, Pa

Posted 09 May 2013 - 03:23 AM

Is it possible to show highest damage matches per mech. I can see that it is collected but would love to see a graph or a list of scores per mech. Thanks for a great program!

#12 Durant Carlyle

    Member

  • PipPipPipPipPipPipPipPipPip
  • Survivor
  • Survivor
  • 3,877 posts
  • LocationClose enough to poke you with a stick.

Posted 09 May 2013 - 09:57 AM

SjurWarEagle -- I suggest always keeping the first post of this thread updated with links to the newest version of your program. That way players don't have to search through the thread to find the newest one. Of course, that's only if you're going to keep developing the program.

Edited by Durant Carlyle, 09 May 2013 - 09:57 AM.


#13 SjurWarEagle

    Member

  • PipPipPipPipPipPip
  • 235 posts

Posted 09 May 2013 - 01:32 PM

View PostPatryn, on 09 May 2013 - 03:23 AM, said:

Is it possible to show highest damage matches per mech. I can see that it is collected but would love to see a graph or a list of scores per mech. Thanks for a great program!

Thanks for the feedback, I'll add a graph for the damage into the next version. But for the score, there is nothing I can do. THe score-values aren't given in the statistics.



View PostDurant Carlyle, on 09 May 2013 - 09:57 AM, said:

SjurWarEagle -- I suggest always keeping the first post of this thread updated with links to the newest version of your program. That way players don't have to search through the thread to find the newest one. Of course, that's only if you're going to keep developing the program.

Thanks for the hint, I'll do this.
There will be a nre version this weekend, it will include a statistic for kill/win per MAp
Teaser:
Posted Image

#14 SjurWarEagle

    Member

  • PipPipPipPipPipPip
  • 235 posts

Posted 10 May 2013 - 12:51 PM

Good evening, the new version is ready:


Ok now the new version :)
I've added new graphs:

Kill/Death-Ratio per Map:
Posted Image
Info: This graph takes some time to generate (about 20sec for me) so be patient.

You can add markers to highlight special events
Posted Image
In order to do so, you have to enter the values to the markers.list in the config-directory, the file includes an example.

The damagevalues you did with your mechs, listet over time:
Posted Image


The downloadlink: https://www.dropbox....0.8-build76.zip

#15 Thoman Coston

    Member

  • PipPipPipPipPipPip
  • Mercenary Rank 1
  • Mercenary Rank 1
  • 225 posts
  • LocationClan Occupation zone

Posted 16 May 2013 - 10:57 PM

Thanks for the tool, nice work.
Now to possible issue/bug: the kill/deaths by map seems to ignore the dates I put in from the calendar. I just get a blank page as result and it insists on showing the time line of just the last hour or so of the current day for K/D by map.

#16 SjurWarEagle

    Member

  • PipPipPipPipPipPip
  • 235 posts

Posted 20 June 2013 - 05:17 AM

I uploaded a new version.
The main change is the addition of a hiscore-page (yes, I really love statistics).

Posted Image


View PostTaigen, on 16 May 2013 - 10:57 PM, said:

Thanks for the tool, nice work.
Now to possible issue/bug: the kill/deaths by map seems to ignore the dates I put in from the calendar. I just get a blank page as result and it insists on showing the time line of just the last hour or so of the current day for K/D by map.

This bug should be fixed in this version, too. Please tell me if it isn't. Sorry for the late reply.

Download is available at https://www.dropbox....0.9-build83.zip

Edited by SjurWarEagle, 20 June 2013 - 05:19 AM.


#17 Hammerhai

    Member

  • PipPipPipPipPipPipPip
  • Bad Company
  • Bad Company
  • 998 posts

Posted 20 June 2013 - 01:19 PM

Not fixed. Same issue as poster above with this build.

Note that my DB is not very well populated, may have something to do with it

#18 SjurWarEagle

    Member

  • PipPipPipPipPipPip
  • 235 posts

Posted 20 June 2013 - 03:32 PM

Hum, I'm sorry. Please take a look into the pm I'm going to write to you.

#19 Quickpaws

    Rookie

  • 5 posts

Posted 21 June 2013 - 04:55 AM

Is it possible to implement a Match History? I like to track some 'streaks' :D

#20 SjurWarEagle

    Member

  • PipPipPipPipPipPip
  • 235 posts

Posted 21 June 2013 - 07:59 AM

View Postnovakatze, on 21 June 2013 - 04:55 AM, said:

Is it possible to implement a Match History? I like to track some 'streaks' :D

I'll put it into the wishlist, it will be done :D





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users