{"id":346,"date":"2014-10-31T15:14:20","date_gmt":"2014-10-31T15:14:20","guid":{"rendered":"http:\/\/wp.elevengiants.com\/?p=346"},"modified":"2014-10-31T15:14:20","modified_gmt":"2014-10-31T15:14:20","slug":"dev-log-2-to-the-githubs","status":"publish","type":"post","link":"https:\/\/wp.elevengiants.com\/?p=346","title":{"rendered":"Dev log 2: To the GitHubs!"},"content":{"rendered":"<p>So, it&#8217;s programmer mumbo-jumbo time again! Sorry, I wanted to do another one of these <em>much<\/em> sooner, but there always seems to be so much else to do, too&#8230; anyway, there has been a lot going on behind the scenes during the past couple of weeks. In fact, one of these things concerns coming out from behind said scenes a bit: since creating an open source <del>Glitch<\/del>Eleven game server has been the plan all along, we finally started moving parts of our code to <a href=\"https:\/\/github.com\/ElevenGiants\">GitHub<\/a>. What you can see there right now is actually the humble beginning of the &#8220;real&#8221; game server &#8212; no more throwaway prototype code.<\/p>\n<p>Now, before you fire up Git: this is still in early stages, and does not support the actual game client yet. You can marvel at unit test results if that&#8217;s your thing, though! Besides, it is just one of several components we are working on; another big one being the webapp, parts of which you have already seen in screenshots or demos (the new vanity\/wardrobe and the skills interface). An important next step will be integrating these components and having them talk to each other. This game sure needs a lot of stuff!<\/p>\n<div id=\"attachment_352\" style=\"width: 610px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/wp.elevengiants.com\/wp-content\/uploads\/2014\/10\/2014-10-30_184919.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-352\" class=\"wp-image-352 size-full\" src=\"http:\/\/wp.elevengiants.com\/wp-content\/uploads\/2014\/10\/2014-10-30_184919.png\" alt=\"Testing can be fun, too.\" width=\"600\" height=\"474\" \/><\/a><p id=\"caption-attachment-352\" class=\"wp-caption-text\">Unit tests can be fun, too.<\/p><\/div>\n<p>Also, a couple of new people have joined the dev team recently, and I want to specifically mention two of them who already contributed some great work. <a href=\"https:\/\/github.com\/AricStewart\">Amabaku<\/a> has been making steady progress on the long-neglected topic of NPC movement, and it makes working on other parts of the system so much more enjoyable when you get to see the world coming more and more to life in the background. Meanwhile, <a href=\"https:\/\/github.com\/egiantine\">Egiantine<\/a> started looking into creating a better AMF library for Node.js (<a href=\"https:\/\/en.wikipedia.org\/wiki\/Action_Message_Format\">AMF<\/a> being the data format of the messages exchanged between game server and client). The existing options all turned out to be lacking in one area or another, but her initial benchmark results look very promising. With the library we are currently using, the server process simply cannot keep up with the messages from more than a handful of clients, so this really is a key piece of infrastructure.<br \/>\nWhile it is still easier to try and test these and other new features in the existing prototype server (being able to fire up the game and all), step by step they will be ported over to the &#8220;real&#8221; server in the coming weeks and months. Moving forward \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>So, it&#8217;s programmer mumbo-jumbo time again! Sorry, I wanted to do another one of these much sooner, but there always seems to be so much else to do, too&#8230; anyway, there has been a lot going on behind the scenes during the past couple of weeks. In fact, one of these things concerns coming out [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-346","post","type-post","status-publish","format-standard","hentry","category-tech-rambles"],"_links":{"self":[{"href":"https:\/\/wp.elevengiants.com\/index.php?rest_route=\/wp\/v2\/posts\/346","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wp.elevengiants.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wp.elevengiants.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wp.elevengiants.com\/index.php?rest_route=\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/wp.elevengiants.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=346"}],"version-history":[{"count":16,"href":"https:\/\/wp.elevengiants.com\/index.php?rest_route=\/wp\/v2\/posts\/346\/revisions"}],"predecessor-version":[{"id":363,"href":"https:\/\/wp.elevengiants.com\/index.php?rest_route=\/wp\/v2\/posts\/346\/revisions\/363"}],"wp:attachment":[{"href":"https:\/\/wp.elevengiants.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=346"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wp.elevengiants.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=346"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wp.elevengiants.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=346"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}