{"id":168,"date":"2014-08-02T13:23:14","date_gmt":"2014-08-02T19:23:14","guid":{"rendered":"http:\/\/burnhamup.com\/blog\/?p=168"},"modified":"2014-08-02T13:23:14","modified_gmt":"2014-08-02T19:23:14","slug":"returning-to-eccoes","status":"publish","type":"post","link":"https:\/\/burnhamup.com\/blog\/2014\/08\/returning-to-eccoes\/","title":{"rendered":"Returning to Eccoes"},"content":{"rendered":"<p>After at least a year of laying dormant, there&#8217;s been some motion on my game.<\/p>\n<p>First, I came up with an idea of how to make multiplayer interesting. I had this conversation at least a year ago, but was mulling the ideas over again and decided that the mechanic could be done in a simple way and would be a good way to test if it is actually fun. Direct combat in a game where both players are constantly time travelling is clunky. I&#8217;d have to build a lot of systems to allow players to respond to attacks that are happening to them in the future \/ past and I don&#8217;t envision it being intuitive or fun. Instead, I imagined that the different players are agents trying to set history in a certain way. So, one team is trying to preserve an event, and the other is trying to disrupt it. A simple scenario would be trying to assassinate or save a VIP. I imagine the attacking team would very quickly score a kill, and then each side would effectively be taking turns trying to override the previous action.<\/p>\n<p>Before I get there, however, I need to address my buggy netcode. I think I made two changes that will minimize the problems I was seeing, but before I try to start aggressive testing things, I need better tools to observe and recreate problems. I&#8217;m going to be adding two stages of logging. First, I&#8217;m going to log all of the actions taken by each player as well as when it happened. Second I&#8217;m going to log all of the network messages that each player receives from the other. I want to be able to load either one of these files and replay their contents. This way I can diagnose the next desychronization that happens.<\/p>\n<p>Third, I was recently reading a book on becoming a game designer. It was a great read and geared to those who like playing video games. The author made very clear that there was a big leap from thinking up half-baked game ideas to doing so professionally. He took shots at the budding game designers who are so worried someone might steal their ideas, and those who never finish a game. It helped me realize that I don&#8217;t really want to be a game designer, and it has helped me see why I&#8217;m working on this project. I want to improve my coding skills, especially my architecture. I&#8217;m debating whether or not I want to release the code as open source. On the one hand, I want to showcase the progress I&#8217;m making as an engineer. However, I have the fear that releasing the source might somehow get in the way of releasing this as an actual game sometime in the future. I don&#8217;t know.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>After at least a year of laying dormant, there&#8217;s been some motion on my game. First, I came up with an idea of how to make multiplayer interesting. I had this conversation at least a year ago, but was mulling &hellip; <a href=\"https:\/\/burnhamup.com\/blog\/2014\/08\/returning-to-eccoes\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[6],"tags":[],"_links":{"self":[{"href":"https:\/\/burnhamup.com\/blog\/wp-json\/wp\/v2\/posts\/168"}],"collection":[{"href":"https:\/\/burnhamup.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/burnhamup.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/burnhamup.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/burnhamup.com\/blog\/wp-json\/wp\/v2\/comments?post=168"}],"version-history":[{"count":1,"href":"https:\/\/burnhamup.com\/blog\/wp-json\/wp\/v2\/posts\/168\/revisions"}],"predecessor-version":[{"id":169,"href":"https:\/\/burnhamup.com\/blog\/wp-json\/wp\/v2\/posts\/168\/revisions\/169"}],"wp:attachment":[{"href":"https:\/\/burnhamup.com\/blog\/wp-json\/wp\/v2\/media?parent=168"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/burnhamup.com\/blog\/wp-json\/wp\/v2\/categories?post=168"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/burnhamup.com\/blog\/wp-json\/wp\/v2\/tags?post=168"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}