|
Author |
Thread Statistics | Show CCP posts - 0 post(s) |
Heinz Doofenshertz
BetaMax. CRONOS.
421
|
Posted - 2013.07.09 07:51:00 -
[1] - Quote
Greetings bunnies. I am Heinz Doofenshertz, also know as rucdoc on the #dust514 irc channel over at irc.coldfront.net
I am Here today to offer some help. I run the website www.dust514stats.com it's been in operation since late august last year. The site was made to help people by providing a better picture of statistics from Dust514.
A few things to note really quick before I drop some knowledge on ya. No I don't think stats are the end all be all, No I'm not the best player, go ahead look me up on the leader boards at the site, at the time of writing I am 173 out of 348, and no the site was not designed to make people feel bad, it was made to help people get better by showing performance over time.
A few other disclaimers. First, all data at the site is currently entered by hand, once we are able to use the crest api system we should be able to do automatic updates, but until then it's all hand entered. Second we use the honor system, please enter only valid data, alot of work has gone into the site and while it is rather easy to check data entered, it does eat up alot of my time, and I'm only one person. Third, no I will not share how I calculate the combo scores.
Ok all that is said, why should you care, and why should you use the site. both question relate back to why statistics are used. there are two uses for these kinds of statistics, 1 to say you are better than someone else. this is a valid use if the data is valid and equal. the second is the reason the site was developed, to help people get better. life time data is one thing, to say that you have killed 400 mercs, and died 400 times are firm facts. However, as static data they don't tell you if you're improving, getting worse, or staying the same. by tracking data over time The site graphs out some of the stats over time. so you can see how your recent play has affected your stats, and the trend or direction they are moving.
At the moment the site request 4 stats, kills, deaths, war points, and win loss ratio. using these we can the calculate and additional ten statistics. then we take several factors to create a single ratio. This ratio is the Combo Ratio. it was created for two reasons. 1 KDR does not reflect the kind of game Dust514 is, and 2 to have a way to compare all the differing roles within Dust.
Kill Death Ratios are fine in games where the only goal is to kill everyone. In Dust514 the goal is winning. while most times the team that kills the most people wins, there are times where this is not true, Corp Battles and Faction warfare show this often. To that end you need a way of looking at everyone on an even footing, so a group of people during june and july of 2012 got together thru the Dust514 irc channel and created an inital formulation, then myself and A fine gentalman named Noc fine tuned the formula over the following months as the amount of data we had increased and we could better see the different trends. One other thing, while we do rank people by Combo ratio, it was not meant as such. Having a really high score is good. but having a 1 is a balanced player, they do everything reasonbly well, and would make a good team member.
Ok so That's alot of nothing for most people, Why should you care? That depends on you. if you're playing dust for the fun, great. I would love for you to come round try out the site, but really glad you're here. If youre playing Dust to be competitive, Great, come round the site, see how you rank against some of the best players. Are you a semi serious player who is just hoping to get a bit better, come round and give us a chance to show you your performance over time maybe it will help you see where you can improve.
Got a question, ask here, got an idea for an addition or upgrade for the site, same, or email us at [email protected] Are you a Recruiter or CEO for a corp and want to know if we can list you or help you out, drop us a line at [email protected]
Anyway thanks for reading, and bottom line I hope you're all having fun in Dust |
Heinz Doofenshertz
BetaMax. CRONOS.
430
|
Posted - 2013.07.11 02:33:00 -
[2] - Quote
The short answer is yes. The long answer is that until such time as we can pull data thru the Crest API we are limited in what we can do. this doesn't just affect my site, it affects a lot of the groups working on third party applications and websites. What we are hoping for is either an end of match detailing of gains/losses, or the ability to get changes in assets from before and after the match thus be able to tell isk efficency.
I have a lot of plans for the future, and need a lot more data to do all of them, Crest will allow for all of that and more, if my ability to code the site keeps up.
Thank you for the comment :) |
Heinz Doofenshertz
BetaMax. CRONOS.
435
|
Posted - 2013.07.11 08:13:00 -
[3] - Quote
No problem, a search feature is on my list of things to work on. |
Heinz Doofenshertz
BetaMax. CRONOS.
435
|
Posted - 2013.07.11 09:55:00 -
[4] - Quote
you've not done that bad, you have a 1.3 combo score, and are ranked just behind me until I update when I get home, then you'll probably be ahead of me. |
Heinz Doofenshertz
BetaMax. CRONOS.
438
|
Posted - 2013.07.13 10:15:00 -
[5] - Quote
At the moment Crest is still being rolled out for public consumption, there is a test going on with information for the alliance tournament coming up over the next few weekends.
To the missing stats data, the old data, while not completely lost, is missing to such an extent that trying to find it all and adjusting stats for everyone is not really possible, as the time to value is horrendious, and yes I asked about this at Fanfest. to current having issues of stats not recording, I am unaware of this at present, please if you have information provide it to CCP easy enough here or emailing them at [email protected] so that it can be fixed.
The time based part I am working on, I have markers in place in my database so that once I get it working to my expectations it will be an easy roll out. |
Heinz Doofenshertz
BetaMax. CRONOS.
450
|
Posted - 2013.07.15 16:08:00 -
[6] - Quote
I put out a small update today, adding a time limited Leaderboard. and time limiting the Front page. So as a note if you want to stay at the top of the leaderboards, keep yourself up to date. |
Heinz Doofenshertz
BetaMax. CRONOS.
451
|
Posted - 2013.07.16 08:16:00 -
[7] - Quote
another Update, the requested Search function has been added, and please excuses the dust on the front page, still working on some of the code. |
Heinz Doofenshertz
BetaMax. CRONOS.
451
|
Posted - 2013.07.17 14:17:00 -
[8] - Quote
Only if my coding skills can keep up. On a note of a massively productive week, I have added a page listing the averages for a few of the more important averages, for both mercs and corps. |
Heinz Doofenshertz
BetaMax. CRONOS.
459
|
Posted - 2013.07.20 10:09:00 -
[9] - Quote
Any Questions, feature requests, thoughts. I am always working on something, and while I do have a list of requested features, it's not really ordered, the more something is requested, the more likely I am to bump it up on my list. |
Heinz Doofenshertz
BetaMax.
462
|
Posted - 2013.08.08 05:13:00 -
[10] - Quote
More Updates, I am reworking the Battle reporter, have readded the battles previously listed, if your merc was part of those battles, it will be on your merc page at the bottom of the page. I am still working on the ability of the public to enter battle reports, just a little issue of the possibility of 128 fields all need to be entered properly for the battle to be valid. Tonight I will be trying to fix this, and adding the ability to search the battle reports for mercs. I make no garentes this will be finished tonight, but gonna try. |
|
Heinz Doofenshertz
BetaMax.
463
|
Posted - 2013.08.11 09:51:00 -
[11] - Quote
One data point does not a judgement make, the point of the site is about progression. Your support ratio is good, it's just being let down a little by your kdr and win loss ratio. We need decent logibros, keep it up :)
Today marks one year since the site was created, with next weekend marking our 1 year from launch. in celebration I have added the ability for players to enter battle reports, this took a while to develop and program to work properly. I hop you guys find it useful, or atleast ignore it properly. :P |
Heinz Doofenshertz
BetaMax.
479
|
Posted - 2013.08.21 07:23:00 -
[12] - Quote
Just Realised I didn't post these here. this is the introduction video for my battle reporter, and the video of the battle used for the report I entered.
Intro : http://www.youtube.com/watch?v=qJxAEYSgFtM
Battle : http://www.youtube.com/watch?v=cfZlGMO2EFE |
Heinz Doofenshertz
BetaMax.
482
|
Posted - 2013.08.31 17:42:00 -
[13] - Quote
Recently CCP Gave us the End point for Crest for Dust514, for alot of you newer players this doesn't mean much. But I want to take a second to explain why it does.
Crest or Carbon Rest is a second, or maybe third now generation API which I believe stands for application interface. Basicly it's something that allows external programs to act with other programs, in this instance, it allows users to talk to the Tranquility server. The one we all play on, and ask it about the current state of the districts in molden heath being fought over in Planetary Conquest.
Ok so what does that mean for you, and for stats, and for the site. Well not much, other than I am now tracking districts, and storing historical data about them. However, it has given me alot of valuable coding experince with Crest, which, when the End Points for Stats are released I can dive straight in knowing what I'm doing and not making as many mistakes, so I can bring you guys better stats.
Right now if you go to the site and don't log in you can view district histories under the leaderboard tab, if you log in, it's under the stats tab where it should be, though I should probably move that around. or maybe redesign the entire menu bar.
Also want to give a thank you to Logibro for the glue, and a Shout out to all the devs, thanks guys. Hope you are staying warm :) |
Heinz Doofenshertz
BetaMax.
518
|
Posted - 2013.10.10 04:43:00 -
[14] - Quote
Today I updated the site with something that is still a work in progress, but is stable. It's the Compare tool, when not logged in it's under the Leaderboards drop down, when logged in it's on the statistics drop down.
This tool Compares the dmg from a weapon to a vehicle and tells you how long it would take to kill it.
Currently you can select a weapon and a vehicle, setup weapon skills, all on the first page. Right now only changes vehicles, ie those using data from the propsed changes by CCP Wolfman can be fit, and right now only with resistance or extenders/plates. The current version Vehicles can be assigned a limited set of skills.
With the fittings you are restricted by cpu and pg, so please keep that in mind. |
Heinz Doofenshertz
BetaMax.
590
|
Posted - 2013.11.28 08:02:00 -
[15] - Quote
Ok The following is a commented version of the Logic I use for damage application in my compare tool. the commenting isnGÇÖt great, because I just wrote it, and I donGÇÖt normally comment as I know what all my code does. I have removed the SQL queries for DB security anyway feel free to use said logic, as long as you throw my name in someplace :P This logic is in edited Coldfusion format, sorry, if you have any questions please ask, But I wanted to show people how much more complex this stuff is than just hp/dps
cfset shibon = 0 //setting varriable// cfset mc = 1 //setting varriable// cfset armbon = 0 //setting variable// cfset md = 1 //setting varriable// cfset spa = .87 //stacking penalty for second mod// cfset spb = .57 //stacking penalty for a third mod// cfset spc = .28 //stacking penalty for a fourth mod// cfset check = 0 //setting varriable// cfset checka = 0 //setting varriable// cfset adjshi = #get_vehic.shield# //setting base shield value// cfset adjarm = #get_vehic.armor# //setting base armor value//
cfloop index="i" from="1" to="#hslot#" //looping thru the high slots// cfset test = '#Evaluate( "hard#i#" )#' //setting varriable test to the id for a query to come// cfif test is "none" /checking to see if the variable test is empty//
cfelse
//Query ommited for DB security purposes//
cfset mtype = #get_mod_i.type# //setting the mod type for further parsing// cfif mtype is 1 //checking mod type 1 is the shield resistance// cfif check is 0 //using check variable as a mod number// cfset mc = mc - #get_mod_i.bonus# // setting mc equal to reduction// cfset check = check + 1 //adding 1 to the mod check value//
cfelseif check is 1 //checking for further mods of this type// cfset spaa = spa * #get_mod_i.bonus# //sets the variable ammount// cfset mc = mc GÇô spaa //modifies the bonus// cfset check = check + 1 //adds to the check counter//
cfelseif check is 2 //checking for another mod of this type// cfset spbb = spb * #get_mod_i.bonus# cfset mc = mc - spbb cfset check = check + 1
cfelseif check is 3 //checking for another mod of this type// cfset spcc = spc * #get_mod_i.bonus# cfset mc = mc - spcc cfset check = check + 1 /cfif
cfelseif mtype is 2 //checking for mod type 2 shield extenders// cfset shibon = shibon + #get_mod_i.bonus# //adds the bonus shields to the total//
cfelseif mtype is 3 //checks for mod type 3 sheild rep// cfset srep = #get_mod_i.bonus# //sets the rep ammount//
/cfif /cfif /cfloop
cfloop index="a" from="1" to="#lslot#" //looping the low slots// cfset testa = '#Evaluate( "lard#a#" )#' //setting the test variable to the proper uid// cfif testa is "none" //checking to see if that slot has mods in it//
cfelse
//SQL Query removed for DB security//
cfset mtype = #get_mod_a.type# //setting the mod type// cfif mtype is 1 //Checking if mod type is 1 armor resistances// cfif checka is 0 // checking the check counter// cfset md = md * #get_mod_a.bonus# //setting the bonus// cfset checka = checka + 1 //adding to the check ammount//
cfelseif check is 1 //checking the check ammount// cfset apaa = apa * #get_mod_a.bonus# //setting the variable// cfset md = md GÇô apaa //modifing the final variable// cfset checka = checka + 1 //stepping the check//
cfelseif check is 2 //checking the ammount// cfset apbb = apb * #get_mod_a.bonus# cfset md = md - apbb cfset checka = checka + 1
cfelseif check is 3 //checking the amount// cfset apcc = apc * #get_mod_a.bonus# cfset md = md - apcc cfset checka = checka + 1 /cfif
cfelseif mtype is 2 //checking if type 2 armor plates// cfset armbon = armbon + #get_mod_a.bonus#
cfelseif mtype is 3 //checking for rep// cfset arep = #get_mod_a.bonus#
/cfif /cfif /cfloop
cfset fshi = adjshi + shibon //adjusting the total shield ammount// cfset farm = adjarm + armbon //adjusting the total armor ammount//
cfset tankshield = fshi //setting the final variable, for reasons// cfset tankarmor = farm //setting the final varriable, for reasons//
/cfif
cfset shots = 0 //setting shot counter// cfset sshottime = 0 //setting shield shot time// cfset ashottime = 0 //setting armor shot time// cfset sshots = 0 //setting shield shot number// cfset ashots = 0 //setting armor shot number// cfset reptimer = 1 //setting the base rep timer//
cfset asdmg = tdmg * mc //adjusting dmg ammount by shield resistances// cfset sdmg = asdmg * #get_dmg.shield# //adjusting dmg ammount by dmg type// cfloop condition="tankshield gt 0" //looping thru the following as long as shields remain// cfset tankshield = tankshield - sdmg //stepping the dmg// cfset shots = shots + 1 //adding to the shot// cfset sshottime = sshottime + #get_wep.sps# //adding to the shot time//
cfif shots is #get_wep.clip# //checking for clip// cfset sshots = sshots + shots //adjusting the shots used on shield// cfset shots = 0 //reseting the shots// cfset sshottime = sshottime + #get_wep.reload# //adding reload// /cfif cfif sshots is 1 //checking to see is a shot has been made// cfif srep gt 0 //checking if there is a shield rep// cfset tankshield = tankshield + srep //repping shields// /cfif /cfif cfif tankshield lt 0 //checking to see if the shields have been removed// cfset carry = tankshield //setting the carry over dmg// /cfif cfif sshots gt 1200 //checking if it's taking way to long// cfset tankshield = 0 //kills the shields to move to armor// cfset kicked = 1 //sets the kick variable saying it's been kicked// /cfif /cfloop
continued in next post
Dust514 Stats, Have you updated today?
I do maths, and sit in a corner.
|
Heinz Doofenshertz
BetaMax.
590
|
Posted - 2013.11.28 08:03:00 -
[16] - Quote
cfset carry = carry / #get_dmg.shield# //adjusting the shield dmg change out// cfset carry = carry * #get_dmg.armor# //adjusting carry to armor// cfset aadmg = tdmg * md //setting the armor dmg// cfset admg = aadmg * #get_dmg.armor# //adjust dmg again// cfset tankarmor = tankarmor GÇô carry //removing the carry ammount// cfif kicked is 0 //checking for kicked// cfif admg lt arep //checking the dmg vs the passive regen// cfset kicked = 1 //kicking// cfelse cfloop condition="tankarmor gt 0" //looping thru the armor// cfset tankarmor = tankarmor - admg //stepping dmg// cfset shots = shots + 1 //adding to the shot count// cfset ashottime = ashottime + #get_wep.sps# //stepping the shot time// cfif ashottime gt reptimer //checking for rep time// cfloop condition="ashottime gt reptimer" //looping the rep// cfset tankarmor = tankarmor + arep //repping// cfset reptimer = reptimer + 1 //stepping the rep timer// /cfloop /cfif
cfif shots is #get_wep.clip# //checking the clip// cfset ashots = ashots + shots //stepping shot count// cfset shots = 0 //resetting the shot count// cfset ashottime = ashottime + #get_wep.reload# //stepping the time with reload// /cfif
cfif tankarmor lt 0 //checking for armor value// cfset wasted = tankarmor //setting the wasted dmg// /cfif cfif ashots gt 1200 //checking for kick// cfset tankarmor = 0 //stepping armor to kick loop// cfset kicked = 1 //setting kick// /cfif /cfloop
cfset ttime = ashottime + sshottime //setting total time// cfif ashots is 0 //checking to see if not time was spent on armor//
cfif sshots is 0 //checking to see if no time was spent on shields// cfset tshots = shots //fall back to number of shots fired// cfelse cfset tshots = ashots + sshots //setting shots// /cfif cfelse cfset tshots = ashots + sshots //setting shots// /cfif cfset wast = wasted * -1 //making the wasted dmg a positive number so people understand it// /cfif /cfif
Dust514 Stats, Have you updated today?
I do maths, and sit in a corner.
|
Heinz Doofenshertz
BetaMax.
631
|
Posted - 2014.01.23 16:26:00 -
[17] - Quote
Updating in that I have changed the formulation of the Combo score, no I still wont say how it's done. also running a contest details here: https://forums.dust514.com/default.aspx?g=posts&m=1751292#post1751292
Dust514 Stats, Have you updated today?
I do maths, and sit in a corner.
|
|
|
|