

Kartlytics: Applying Big Data Analytics to Mario Kart - ChrisArchitect
http://www.joyent.com/blog/introducing-kartlytics-mario-kart-64-analytics

======
bcantrill
Mario Kart 64 is one thing -- but if this same technique is applied to Street
Fighter 2, I am honestly concerned about our Seattle office descending into
civil war. Or perhaps having hard data leads to less animal struggle for
dominance because the hierarchy of the herd has been quantified?

~~~
elijahwright
How many sprites can SF2 possibly have? :)

~~~
incision
Not sure, but any who aren't too familiar with fighters might be surprised to
learn of frame data [0][1] dissection.

0:
[http://nki.combovideos.com/data.html](http://nki.combovideos.com/data.html)

1:
[http://nki.combovideos.com/flame.html](http://nki.combovideos.com/flame.html)

~~~
yunong
For anyone interested in the complexities of Super Street Fighter II Turbo,
check out a recent tournament:
[http://www.youtube.com/watch?v=i2gMAOPIHIo](http://www.youtube.com/watch?v=i2gMAOPIHIo)

------
WestCoastJustin
If you liked this, you might also like _a general technique for automating NES
games_ , with Mario Bros demo [1]. There is a video, research paper, and
source code too.

[1] [http://www.cs.cmu.edu/~tom7/mario/](http://www.cs.cmu.edu/~tom7/mario/)

~~~
daraul
I just about lost my shit during a break here, when at the end of the video
the AI _actually ragequits_ during a game of Tetris.

~~~
laxatives
Not only is it logical to rage quit a game after losing, but optimal as well.

------
samsnelling
Should note (I may have missed it in the article) the website with all of
their results is [http://kartlytics.com/](http://kartlytics.com/)

------
mharsch
This gives me the feeling that the referee guy from 'King of Kong' is about to
be replaced by a very small shell script.

------
omn1
Sounds like a nice proof of concept, but I would have tried to identify the
in-game variables as in [0] and identify the state of the game from there.
Maybe it would take a bit longer, but in the end one could track if a player
is sliding or was using an item and so on. Grabbing video frames and doing
some kind of template matching on the still images sounds a bit...
inconvenient.

[0]:
[http://orbitaldecay.com/N64/Lesson1/Lesson1.html](http://orbitaldecay.com/N64/Lesson1/Lesson1.html)

~~~
dap
Author here. That's an approach we considered as well, but we didn't want to
have to use an emulator to play the game. Still, you could potentially get
much richer information with that approach, and I'd love to see a demo based
on it!

[Edited for detail]

~~~
omn1
I know what you mean. Nevertheless, there are USB controllers which feel like
the real thing. Mupen64plus behaves just like the original console so this
might be a start. Here are some memory locations I found:
[https://sites.google.com/site/jamesskingdom/Home/video-
game-...](https://sites.google.com/site/jamesskingdom/Home/video-game-secrets-
by-james-s/mario-kart-64-exposed)

~~~
icebraining
If you have an Arduino, you just need to connect three pieces of wire to use a
proper N64 controller on a computer: [http://www.instructables.com/id/Use-an-
Arduino-with-an-N64-c...](http://www.instructables.com/id/Use-an-Arduino-with-
an-N64-controller/)

I've played Conker's Bad Fur Day using one of these and an S-Video cable
plugged to the TV, and it really feels like the real thing :)

------
CGamesPlay
Really neat article and demonstrates a great way to introduce your startup's
new product.

------
sailfast
I can't be the only person that thinks this would also be a great idea for
GoldenEye, right?

I have a lot of learning to do to make that happen, but would happily provide
moral support to anyone that might want to attempt it!

~~~
squozzer
The answers to that game are obvious -- Oddjob and the laser.

~~~
sailfast
True - the discovery piece (which weapons work best where, trending, etc)
would likely not produce revelations, but it would make for an excellent
leaderboard for the extremely competitive.

------
stdbrouw
As I was looking for a non-insane alternative to Hadoop/EMR, I figured I'd
check out Manta, the product they're (sort of) trying to push in the blogpost.
Can't say if it scales / is fast / is cheap... but it's very developer-
friendly. Couple of lines of JSON pipeline config and you're map/reducing.

------
the_watcher
This is so cool. I'd love to see it's method's applied to other games. In
college we played a lot of Super Smash Bros. 64 (same idea as SF2). At work
now, Dr. Mario has shockingly become the game to master.

~~~
jlees
A friend and I were thinking of doing something similar to this for Smash and
League of Legends. We probably should!

~~~
saraid216
From a thing I said two years ago:

"Exporting games down to stats per millisecond. Stats I'd want: all the
obvious stuff, like gold, KDAs, minion kills, items: but possibly more
interesting would be HP per millisecond, and any secondary stats as well.
Ability cooldowns. Ward expenditure.

"Could possibly do something interesting for positioning, but I'm not sure how
to express that. X,Y coords? That would be enough; it'd be hard to consume,
but that's what data processing is for. Clicks and pings would also be worth
dumping."

I think you could get a lot of coarse-grained positioning data from the
minimap, and possibly coarse-grained HP snapshots from spectator mode. You
could definitely get ultimate/summoner spell expenditures from snapshots, too.

I really do expect interesting data to come out of analyzing the spatial
layout of the teams.

------
TomAnthony
This is so epic. I want the software. We have a MarioKart 64 room with bean
bags at Distilled's London office and I'd die to have stats like this.

I might have to spend some money on setting this up... Thanks for sharing. :)

------
beambot
Liquipedia needs this for StarCraft2 VODs.

~~~
jcurbo
You don't even need the VODs, because a replay encodes all the information
about the game already in machine readable form. I wouldn't be surprised if
someone somewhere is already doing large scale analysis of available SC2
replays.

~~~
vutekst
Prepare to be un-surprised:

[http://www.ggtracker.com/](http://www.ggtracker.com/)

[http://sc2replaystats.com/](http://sc2replaystats.com/)

[http://www.sc2replays.eu/](http://www.sc2replays.eu/)

[https://sites.google.com/site/sc2gears/](https://sites.google.com/site/sc2gears/)

~~~
sanderjd
I don't know if any of those sites use it, but I really like this open source
replay analysis library:
[https://github.com/GraylinKim/sc2reader](https://github.com/GraylinKim/sc2reader)

------
retr0h
I'd love to see some beard analytics...

------
kylek
someone hook this thing up to twitch.tv and speedrunslive!!

