The Ledgers of Destruction

 

Killboards. Depending on which EVE players you ask, they are a subject of obsession, a method of evaluating potential recruits, an intelligence gathering tool, a source of bragging rights, a wellspring of statistical research data or a problematic influence on player behaviour. Whatever the individual player thinks of them, they have been with us almost as long as killmails themselves have been. When it came to my attention that zKillboard co-developer Karbowiak is working on a new project, I got in touch with him to explore the functionality, history and future of this time-honoured third-party service.

A Rocky Road

It wouldn’t be EVE if there weren’t some drama involved in the history of the project. It appears that there has been some trouble in the past between Karbowiak and the current maintainer of zKillboard, Squizz Caphinator. Both developers made their breakup public in 2014. Karbowiak posted about it on his facebook page, and Squizz announced the end of their cooperation on reddit. While Squizz says that he honoured the agreement to keep sharing killmails, Karbowiak says he didn’t. Although the coast has cleared between them in the meantime, the argument is not entirely settled, but I’ll let them tell the story in their own words (Note: The statements here have been put together from written conversation in emails and on slack)

zKillboard was started on by Squizz and myself as a replacement for EDK on EVE-KILL

Karbowiak: “I was one of the guys who originally started EVE-KILL back in the day, and is now the sole person left behind to maintain it (and doing a piss poor job at it) – I’ve been playing EVE since the beta, though only since 2005 on my current character. […] Beansman, Ralle030483 and myself started EVE-KILL, Ralle then left some years later so only Beansman and I [were] working on it, then Squizz came along and joined and did stuff. After that Beansman left and Squizz and I ran it, while we worked on zKillboard. […] zKillboard was started on by Squizz and myself as a replacement for EDK on EVE-KILL – because even back then it was starting to show it’s age – sadly Squizz felt otherwise, and backtracked on the original plan, stole the database, moved the domain, set it all up on his own servers, and cut ties.”

Squizz: “zKillboard started off as my baby and was originally known as killwhore.com which I had to rename after discovering the word whore was banned on the Eve forums. Since I had worked diligently with Beansman and Karbowiak on EveKill, coming up with ideas and implementing methods to keep the site from imploding on itself (and they worked, yay!) I invited them to work with me on zKillboard. I envisioned zkb as a completely rewritten from the ground up killboard that would attempt to learn from the mistakes and experiences of EDK (the killboard software Eve-Kill is based on).

Karbo and I made some great progress on zkillboard.

Karbo and I made some great progress on zkillboard. We each had great ideas and each wrote horrible code to implement them. However, Karbo can be an extremely difficult person to work with, although I won’t detail the reasons why. Combine that with the nature of my stubborn personality and conflicts happened, and happened frequently. After a couple of trigger events with Karbo, I decided to go my way and did so, splitting off in my own direction and taking zkillboard with me.

Despite the hostilities we agreed we didn’t want the community to suffer and ensured that all killmails would be shared between each other. We have both kept that promise to this day.”

Karbowiak: “We both decided to write zKillboard […] to replace EDK on EVE-KILL, it was never written from the start to be a stand-alone entity, it only became that after you (ED: he replies to Squizz there) decided it should be that – and then tried to rewrite history to reflect that.”

Squizz: “I hope Karbowiak does a great job on his new killboard and it is welcomed by the community too. “

Just A Means Of Communication

ED: I asked Squizz whether he would like to add some more insight into the programming and running of a killboard, but he did not find the time to reply. Therefore the remaining interview text is between Karbowiak and myself.

Tarek Raimo: “Without becoming too technical, could you explain how killboards work?”

Karbowiak: “They all work by getting data from CCP, players kill stuff ingame, and then post a CREST link to the killboard page (or have their API key added), which the board periodically pokes for new data. Once a new killmail is posted/found, it’s downloaded from CREST, processed and put into the database and onto the website for viewing. That’s really common to all killboards, and you can’t really make it better or worse. The only way for a killboard to differentiate itself, is by how the killmail is shown to the user – which is fairly common amongst all the killboards out there: fitting wheel, module list, attacker list, final-blow/top-damage, and such.”

There’s the victim, and the attacker. So if either one posts it, or has an API-key added somewhere, it gets onto a killboard.

Tarek Raimo: “How do kills get on there from users who never submitted their API?”

Karbowiak: “Well, there’s two parties in a kill. There’s the victim, and the attacker. So if either one posts it, or has an API-key added somewhere, it gets onto a killboard. The only way to not have it post, is by neither of them having one (ED: an API key) somewhere, but then you run into corporations posting a corporate key sometimes, which means it covers all members in said corp.”

Tarek Raimo: “How did you get started on building killboards?”

Karbowiak: “It actually started out when I was in Triumvirate back in 2007 or there about. Our own killboard was pretty bad, crashed whenever we had a fleet fight and we had to look at several other killboards to see the bigger picture and then guess what had happened, who had won, etc.

So I decided to set up a board for the alliance and feed data in from all the other boards around us, to get a better picture of the battles, which led to everyone in the north using the Tri board for battle stats, which in turn crashed it worse than before. So a guy in the alliance named Bunji helped write some caching stuff for it, so it stayed alive, at which point it managed to stay up under heavy load. Ralle then contacted me about using that code for EVE-KILL, and i accepted. Not long after, Beansman contacted me about working together on a public killboard and then he contacted Ralle, and all three of us got together and wrote a new version of EVE-KILL, with lots of fixes and additions to keep it running under heavy load. It fetched mails from EVERYONE and from there it all just got larger and larger.”

It fetched mails from EVERYONE and from there it all just got larger and larger.

Tarek Raimo: “As a third-party developer, how is your relation with CCP?”

Karbowiak: “My relation to CCP is.. uh.. I guess good, but also somewhat hostile.

I’m relatively quick to call them out on their bullshit, and stupidity – especially on #devfleet over on Slack. […] Probably just the 3rdpartydev emo in me, mixing with my bittervet that makes me say that, but there’s a few things CCP does in the 3rdparty area which is lackluster, like their YAML dump (ED: YAML is a method of transferring information in a standardised format) being fucked for the majority of YAML parsers and then removing the IGB (ED: The In Game Browser which has been retired as of October 2016) without replacing the features it had via CREST, even though they said they would.”

Tarek Raimo: “People kept telling me that CREST is a valid replacement for IGB functionalities.”

Karbowiak: “Oh it is. It’s just, uh missing those IGB features. It has the Fleet stuff now though, which can handle some of the things like where your ship is, and what ship you’re flying, but it’s still missing a lot of other stuff.”

Tarek Raimo: “Players often criticise the effect killboard have on in-game behaviour. How do you see the role of killboards for EVE?”

There are people who use the live feed of killmails to judge where ships need to be restocked on the market

Karbowiak: “Killboards are both good and bad tbh. They’re bad in the way that they make some people more cautious about what they fly and how they play in EVE, because a loss in a 70b shit fit Raven is not only a hit on the wallet, it’s also a hit on the killboard e-peen. But at the same time I think they’re good, because they force a certain standard when it comes to fittings and how people fit, fly and fight. Plus you can glance all kinds of statistics from killmails.

There are people who use the live feed of killmails to judge where ships need to be restocked on the market, what ships are worth more etc. Even mission runners use it to see which faction ship/module they should cash out. On top of that you can see the Flavor of The Month (o.smium does this for example) by continually analyzing killmails for fittings. So, you can do a lot of things with the raw data, beyond calculating which pilot has the biggest e-peen in the game.”

The New Eden Killboard

Tarek Raimo: “I heard you are working on a new killboard project. What can you tell us about that?”

Karbowiak: New Eden is a complete rewrite from the ground up of a killboard, still using PHP, but swapped the database out to mongodb with some clever stuff on the backend to make it much much more resilient for the long haul. And it’s laid out in an orderly fashion, not a huge mess like zKillboard ended up becoming, so very, very nice to work with. Plus this allowed me to do a lot of new things I myself had no idea about – learning experience and all that. If anyone wants to participate in writing the new killboard I’m open to have people join. All they’ll need to know is PHP and a little bit of MongoDB (Or simply be willing to learn how to utilize MongoDB), or JS / HTML5 / CSS.”

ED: For those who want to join in, Karbowiak can be reached in the #devfleet channel on the tweetfleet slack and under the email address karbowiak@gmail.com.

 

 

Did you enjoy this article? Please consider supporting Crossing Zebras.

Tags: killboard, Tarek Raimo

About the author

Tarek Raimo

Former nullsec spy (no not under that name of course) and current failure at lowsec solo PVP, Tarek spends his time not logging in to the game as much as he keeps thinking about its social and metagame nature and sharing some of those thoughts with the CZ readers.

  • Viince_Snetterton

    You have to appreciate the unsung heroes these programmers are, keeping up 3rd party programs that CCP has no hope of ever duplicating.

    I personally have no real use for KB’s, but I do think they all suffer from the same problem. No killboard is truly any good until it takes into account percentages of each kill done and factors that with losses. I think that concept that someone can do 0.0001% damage to a Titan and then run a positive ISK ratio for years after is ludicrous.

    Is there some fundamental coding/ CREST/ reporting technical issue that stops this from happening, or is it merely the fact that most players in the game would suddenly have a negative ISK ratio, and their epeen can’t handle it?

    • Kamar Raimo

      As a person who is largely computer illiterate (My greatest achievement is that can run Ubuntu and not get lost) I am also highly impressed with the people who do this kind of stuff for all of us in their spare time.

      As for your criticism of the killboard padding, tbf it is very easy to spot. You sometimes see those nullbear accounts who only have losses of blingy ratting Tengus/Carriers/Ishtars etc. and all their kills are with 50+ people on the killmail. It’s pretty obvious they are not actually PvP players even if they have high KB stats. Then you have people with 20 solo kills and 30 fleet kills but a high number of losses to blobs. Those worry me much more if they appear on my dscan 🙂

    • Free can

      An accurate kill board would show how bad they really were, so they would not visit again. Since most kb are visited only by the pilot themlseves it would end with no traffic at all.

    • Viince, that is actually one of the key things i’ve fixed in Thessia (what i call the code running on NewEden.xyz).
      The calculation looks like this:
      1. (totalIskValueOfKill / 10000) / numberOfAttackers
      That’s the total pool of points available for that one kill (So it tends to be a huge number when it’s a huge kill)

      Then based on the amount of damage a ship has done to the victim, they get a percentage of it
      2. pointsForPilot = totalPointValue * (pilotDamageDone / totalDamageDone)
      and then the amount of points awarded for that pilot is subtracted from the pool of points.

      Hopefully this should make the whole point system more robust, and less finnicky for the long haul.
      I still havn’t recalculated all the points however, so the current points (and kills/losses) reflected on the site is ludicrusly wrong, so for now take the numbers shown with a grain of salt 😀

      fake edit://
      I should probably subtract the total loss points from the victims total pool of points they have amassed by killing stuff, shouldn’t i?

      • dagger906

        That’s why so few people care about points.

        When recruiting, corps don’t care about how good you are 1v1. They care about you getting into n+1 fleets, be it stratops or brawls for fun. If anything, they wouldn’t want someone who goes off doing some 1337 pvp by themselves rather than join fleet with everyone else. N+1 is the way to win in Eve, and most people find it more fun to win than to challenge themselves.

        More importantly, in this Eve, nobody is impressed by the solo pvper who catches their own prey and win outnumbered. But the HIC pilot who holds down a super for the 200 fleet mates to come in and pounce on, getting only 1/200 the points, returns home everyone’s hero. To be appreciated in this Eve, you have to do stuff with + for people, and that means being in fleets instead of 1337 solo pvp. Solo pvpers who don’t share their kills/content aren’t seen as useful to others.

        Eve isn’t a game like DOTA where personal skill is held in the highest regard.