Posts Tagged ‘analytics’

LDJAM analytics

Posted by
Saturday, May 16th, 2015 5:21 pm

So this time I decided to collect some analytics to try to find out more about the way LDJAM voters played my game.

Number of sessions: 41

I had 34 votes at the time I did the analysis. These 41 sessions came from 34 different IP addresses.

Number of plays per session:
min: 1
avg: 1.24
max: 9

The histogram shows the frequency of the number of plays. More that 30 visitors played the game a single time.

Plays per session

Well, 4 users didn’t event start a game (the only recorded event is “quit”, that is fired when the visitor leaves the page).

All this means that most players just play once, vote, and go to the next game.

Game length (time)
min: 15 secs
avg: 1min 52secs
max: 3min 58sec

Well, my game was designed to be played in quick sessions, so this feels about right. I didn’t want to bore people too much

Session length (time)

Avg: 5min 46
Min: 15sec
Max: 46min 23

(OK, someone had the game tab open for more than 1 hour, but they played for 10 minutes and probably left the tab open while they did something else, and only closed it much later.)

The 46min session included 9 plays spaced throughout the full timespan. One visitor played for 15secs and gave up. I guess you can’t please everyone.

Scores:
High: 14290,
Avg: 6095
Low: 200(*)

Only 17 visitors played until they lost all the energy – others quit mid-play – so I only have recorded scores for those.

(*) – The lowest score was, in fact 0, but I decided to ignore because it might not have been a real try.

Conclusion:

My interpretation is that LD participants are focused in their mission to rate as many games as possible in order to get their own games rated, and don’t spend much time in each game. They optimize their time by playing once, voting, and moving on to the next one. This was more or less what I expected, and I even tried to design the gameplay around that: something easy to understand and start playing and that wouldn’t require a long play session to enjoy.

Still I was hoping to get at least a second try from most players (I think I almost never rate a game before playing twice, to avoid scoring on a first impression). I’d say it’s my game’s fault for not looking too pretty or just not being interesting, except I don’t think my results were that bad. In fact I’m fairly happy with them. I got:

#333 Overall 3.41
#59 Fun 3.87

It was my best overall result ever. Same goes for the fun category. So I guess that’s just the way it is: you typically get a “Jupi Plays”-like run through your game (great videos, btw) and probably only the top games overall are able to grab player’s attention for a longer time. So many games to play, and so little time :)

Big thanks to all those who played, and especially to whoever played 9 times! :)

Next time I’ll try to record my own playing/judging habits as well.

Anyone else with analytics data to share and compare?

My game: Kick it hard!

Trappy Tomb postmortem

Posted by (twitter: @jimmypaulin)
Tuesday, September 9th, 2014 1:31 pm

LD30_screen

Trappy Tomb was conceived as a response to the poor score for ‘innovation’ I received from my previous LD entry ‘Midnight Minigun’. Mulling how I could do something innovative I decided that client-server would be a fun way to interact with the LD community, and since I’d have very limited time I’d also attempt to integrate User Generated Content. I didn’t want to overly burden the player with creating things so I figured that playing with or against the recordings of previous plays would be a fun way to generate content and promote interaction. The death messages idea was influenced by the LD28 entry Rude Bear Resurrection and the mega-replay idea was an homage to Super Meat Boy. My own interest in collective insect behaviours also came into the design though my original ideas of collective problem solving ended up on the cutting room floor.

Trappy Tomb is set in an Indiana Jones / Tomb Raider style environment viewed from a top-down perspective. The player can move and jump. Jumping results in flying kicks which kill the bats that populate the tomb. Pretty much everything in there is lethal – spikes (timed, triggered and fixed), boulders (always triggered), pits, lava pits, bats and arrow launchers. There is also optional loot to collect. The game is split into two parts – a sizeable onboarding level in which you cannot die and your replays are not recorded, and the main Trappy arena.

The onboarding area has an important additional function beyond simply teaching controls – it shows what you get if you win, which is a statue personalised with your message and score for all to see. These show the game is beatable as well as providing motivation.

tt_award

Without further ado here are two composite images of the main tomb complete with the death location of the first 2000 plays (left) and the breadcrumb trails left by those players (right). Click for larger views.

Click for full size Click for full size

You can clearly see that the vast majority of players die in the first couple of hazards – some static pits. I’ll come back to this below. It’s also perhaps apparent that the climax of the level is a bit lacking- again see below!

You have 2 minutes to complete the level (ample time). If you timeout or die a dialog pops up asking for your “message to eternity” and you can see these being quoted as ghosts die while you play – I can honestly say it has been utterly hilarious seeing what everyone has put and I’m thrilled with this feature. However it was exploited badly at one point by trolls – more below. If you win you enter an inscription for your statue and are returned to the onboarding area where you get a special ending sequence and can see your statue in all it’s glory.

What went right

* The client-server system. I chose FatFractal for the server backend and it worked really well. It doesn’t require much setup at all and there is no server side code needed. You simply log-in a user and push your objects to the server. You can then pull them back with a rich query language. The player position is sampled every 0.2s and frames are interpolated on replay. When a ‘died’ state is encountered the death message is displayed – these are usually hilarious, so thank you for those! I’ve included a few choice quotes below 😉

* Artwork. This LD I decided to leave all the art until day 2 and this decision paid off as I got less bogged down in pixelling than previously and hence have more gameplay in there. The hardest part for me was selecting a colour palette – I needed everything to be readable and to separate sprites from the background and I’m pleased with how this turned out. I borrowed a few colours from other games and built up from there. Tools were Pixen and Zwoptex

spritesheet_ld29_default

* Onboarding and level flow. In my last LD entry I had many people rage-quitting because they died within the first few seconds before they’d even mastered the controls so I was determined to pace the start out and give the player a chance to get into the game. I’m really pleased that I managed to do this in the time and I think it meant people were ready when the real challenges came. I was generally happy with the building series of peaks and troughs of intensity in the level itself though I ran out of time so it ended a little abruptly. The first obstacle was probably a bit too hard as well as it claims about 60% of all attempts 😉

What went wrong

* Controls and physics. Disappointingly I failed to iterate enough on the player controls. I partly put this down to using a new framework (phaser) for the Jam so I had to find out about how the physics system worked as I went along which was not ideal. It turned out that with some really simple tweaks the experience could be much improved but the damage was done and no doubt people’s enjoyment suffered due to the over-large hit-box and slippery movement. Essentially people feel a bit cheated when they don’t think they touched spikes etc but die anyway and I can sympathise with this! The post-compo version (with about 10 characters of code changes) is loads better 😉

* Open to abuse. I really should have seen this coming, I really should, but I figured it was unlikely that the game would make it outside the LD community and so everyone would ‘play nice’ with their comments. Alas it was not to be and on one occasion I was confronted with some extremely offensive language that caused me to take the game offline immediately. It took a few days to work out a solution and thanks go to Gary at FatFractal for his support (t: @gkc). I settled on a system whereby all comments are immediately added to the local game, but will not appear in anyone else’s game until I’ve moderated them via a holding area. This actually has the side benefit that I can read all the comments as they are added :)

* Ran out of time. I had to ruthlessly cut features, for example I really wanted the ghosts to be more than just eye-candy, I wanted to have collective triggers that required ghosts to coordinate in order to open secret doors or get the ‘big prize’ etc. The idea being a community that self-organises to achieve a collective goal much like a colony of ants might… Was a shame to let that one drop! Similarly I underestimated how long it would take to create the traps and layout the environment. The game stands and falls on its level design and although I’m reasonably happy with it, the ending is weak and it kind of fizzles out a bit. I wanted to have a final large room with all sorts going on and some more timing based flame and spike puzzles but there simply wasn’t time. Still – by the time the make it to the end the few who’ve got that far were probably glad there was no more 😉

Final thoughts

This Ludum Dare was easily the most challenging and yet satisfying I’ve so far undertaken. Tapping into the creativity of the community for my content turned out great as I knew it would because YOU ROCK!. The amazing comments I’ve had have lifted me beyond words (especially around the trolling incident) and being featured in a selection of YouTube videos has been a total blast too. Here’s my favourite of those along with the truly final words – courtesy of you, from the selection of 3100 messages…

* jump. Jump. JUST JUMP, YOU FOOL!!!!
* i’m not laaavint
* the lava is not nearly as hot as my rage
* I see dead people
* i love fat eggs
* fat eggs are gross
* DO NOT TRY THIS AT HOME
* I SUICIDED FOR THIS: JUST GO LEFT
* DAMN i got nervous… must be close…
* Wonder how many of these are me?
* This particular bat is a win cheat

I could go on all day, but why not just play for yourself and see?!

PLAY HERE

This guy did and just about kept his cool:

Call for opinions on Analytics

Posted by
Monday, February 24th, 2014 5:22 pm

Hey fellow devs,

I’m here to bring to the table a small discussion on analytics. What I want to ask is: what do you guys think about embedding analytics in Ludum Dare entries? Something like http://www.gameanalytics.com/, for example.

I’m currently working on a full version of my last LD entry and thinking back I believe I could’ve benefited from input obtained from analytics. On what terms would you guys be comfortable with recording data from your gaming session?

Personally I wouldn’t mind anything that is non-intrusive (in other words, as long as there’s no recording any personal data). For instance the link I provided above is a great tool for developers (I don’t really care about their module for purchase intention, the cool part is analyzing hot spots to help level design).

Looking forward to some opinions, thanks! :)

Going Mobile and Also Some Graphs

Posted by (twitter: @thomasbowker)
Monday, September 3rd, 2012 1:40 am

Just a quick post to let everyone know I ported the controls of my LD game Vol to a touch interface and did an Android build. Do note though that the Android version isn’t guaranteed to run or run very well on your device. I have a HTC OneX and it performs okay, at least for the purposes that I created it for, which is mainly to test the control scheme on a touch device.

You can download the .APK here.

Vol on Ludum Dare

 

Also here are some analytics because they’re fun.

 

Average time (in seconds) spent on levels 1-7 and Session Time.

Session Time is time spent from starting a new game to game over, and the average is 388 seconds or 6 minutes 28 seconds. Not bad! I wish I was tracking analytics on my last LD game, had reports of over an hour before finishing.

More diverse than I expected!

More stats!

  • The number of unique players in the last week is 166.
  • 52% of players have 4GB of RAM
  • Average RAM is 5041MB
  • Windows 88% and Mac 12%
  • 48% of players have 1GB VRAM
  • Average VRAM is 925MB

Anyway, analytics are fun. You should use them in the next LD.

LD+GA

Posted by (twitter: @mimshwright)
Wednesday, August 22nd, 2012 9:52 am

Hey guys,

I just wanted to share with everyone the stats from my last game (LD23). I used Google Analytics to record events from within my Flash game. It was very easy to set up – it only took a few minutes – and while the numbers are not very impressive, I think it was worth it to see how my game was being played. For example, I see that only about 10% of players clicked the restart button and that each level of difficulty had about half as many completions as the previous. For a throwaway game like this, this info is not really important, but for a real game in the wild, this can be very valuable. I would encourage everyone to add some kind of tracking code to your game even if it’s only for the practice!

[cache: storing page]