{"id":25,"date":"2013-01-05T08:04:32","date_gmt":"2013-01-05T08:04:32","guid":{"rendered":"https:\/\/anthonymassingham.com\/games\/?p=25"},"modified":"2013-01-05T08:04:58","modified_gmt":"2013-01-05T08:04:58","slug":"scores","status":"publish","type":"post","link":"https:\/\/anthonymassingham.com\/games\/2013\/01\/scores\/","title":{"rendered":"Scores"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-medium wp-image-26\" alt=\"screenshot_5_JAN\" src=\"https:\/\/anthonymassingham.com\/games\/wp-content\/uploads\/2013\/01\/screenshot_5_JAN-300x188.png\" width=\"300\" height=\"188\" srcset=\"https:\/\/anthonymassingham.com\/games\/wp-content\/uploads\/2013\/01\/screenshot_5_JAN-300x188.png 300w, https:\/\/anthonymassingham.com\/games\/wp-content\/uploads\/2013\/01\/screenshot_5_JAN-624x392.png 624w, https:\/\/anthonymassingham.com\/games\/wp-content\/uploads\/2013\/01\/screenshot_5_JAN.png 756w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/>The Twist is progressing nicely. \u00a0Spending most of my time today working on UI and Graphics &#8211; Nothing to stressful on the ol&#8217; brain. \u00a0You can see my progress and current iteration of the main menu screen at the moment ( oo, coming soon eh? oooooo!)<\/p>\n<p>Last week I spent time working on a highscore system.<\/p>\n<p>I really wanted The Twist to have an online scoreboard. \u00a0The most obvious solution was to use an existing system (<a href=\"http:\/\/developers.kongregate.com\/\" target=\"_blank\">Kongregate<\/a>, <a href=\"https:\/\/www.mochimedia.com\/developers\/\" target=\"_blank\">MochiMedia<\/a>, etc). \u00a0However my biggest problem with so many of these systems, is they&#8217;re not really Mobile friendly, and they all require intrusive registration.<\/p>\n<p>I wanted my players to be able to start score, stat, and achievement tracking as soon as the game launches, and really never have to think about it. \u00a0I figured crafting my own score system couldn&#8217;t be\u00a0<strong>that<\/strong> hard, now could it ?<\/p>\n<p>I&#8217;ve had an amount of experience in high score tracking before, so this wasn&#8217;t completely unfamiliar territory. \u00a0In my previous games, I was working with a Rails API, this solution was to be quite different. \u00a0I wanted something super lightweight, and relatively robust.<\/p>\n<p>I experimented with <a href=\"couchdb.apache.org\/\" target=\"_blank\">CouchDB<\/a> to start, simply because I&#8217;ve used it in a few projects. \u00a0However I ended up having problems crafting the rather specific views I wanted. A friend then directed me towards <a href=\"www.mongodb.org\/\" target=\"_blank\">MongoDB<\/a>, and that is what I am currently using. \u00a0It&#8217;s quick, lightweight, and seems to do everything I want it to. \u00a0I&#8217;m still yet to do intense stress testing with it, and I&#8217;m not sure how it will cope with real players using it &#8211; but I&#8217;m hopeful.<\/p>\n<p>Ultimately, worst comes to worst, I gut it and install a pre-made solution &#8211; But I wanted to give this a go for myself. \u00a0If it works out, it&#8217;s something I&#8217;ll be able to use for many projects in the future.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Twist is progressing nicely. \u00a0Spending most of my time today working on UI and Graphics &#8211; Nothing to stressful on the ol&#8217; brain. \u00a0You can see my progress and current iteration of the main menu screen at the moment ( oo, coming soon eh? oooooo!) Last week I spent time working on a highscore [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,8],"tags":[10,17,16,18,19,15],"class_list":["post-25","post","type-post","status-publish","format-standard","hentry","category-actionscript","category-the-twist","tag-actionscript-2","tag-couchdb","tag-database","tag-mongodb","tag-moustache","tag-score"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/anthonymassingham.com\/games\/wp-json\/wp\/v2\/posts\/25","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/anthonymassingham.com\/games\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/anthonymassingham.com\/games\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/anthonymassingham.com\/games\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/anthonymassingham.com\/games\/wp-json\/wp\/v2\/comments?post=25"}],"version-history":[{"count":2,"href":"https:\/\/anthonymassingham.com\/games\/wp-json\/wp\/v2\/posts\/25\/revisions"}],"predecessor-version":[{"id":28,"href":"https:\/\/anthonymassingham.com\/games\/wp-json\/wp\/v2\/posts\/25\/revisions\/28"}],"wp:attachment":[{"href":"https:\/\/anthonymassingham.com\/games\/wp-json\/wp\/v2\/media?parent=25"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/anthonymassingham.com\/games\/wp-json\/wp\/v2\/categories?post=25"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/anthonymassingham.com\/games\/wp-json\/wp\/v2\/tags?post=25"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}