{"id":623,"date":"2009-10-27T23:34:29","date_gmt":"2009-10-28T06:34:29","guid":{"rendered":"https:\/\/mathpirate.net\/log\/?p=623"},"modified":"2009-10-27T23:34:29","modified_gmt":"2009-10-28T06:34:29","slug":"tidbits","status":"publish","type":"post","link":"https:\/\/mathpirate.net\/log\/2009\/10\/27\/tidbits\/","title":{"rendered":"Tidbits"},"content":{"rendered":"<p>I seem to have been neglecting this lately.\u00c2\u00a0 I&#8217;m a week overdue on a programming\/testing post, and it&#8217;s almost getting to the point where I&#8217;m late on a video game history lesson.\u00c2\u00a0 So, to prove I&#8217;m not dead, here&#8217;s a few bits of here and there.<\/p>\n<p>First, if you&#8217;re in Washington, you have less than a week left to Approve Refererendum 71.\u00c2\u00a0 I already have.\u00c2\u00a0 Have you?<\/p>\n<p>Now, back to games and things.\u00c2\u00a0 Here&#8217;s a few of my latest acquisitions.<\/p>\n<p>\u00c2\u00a0<a href=\"https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/TengenTetris.JPG\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-625\" title=\"TengenTetris\" src=\"https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/TengenTetris-300x225.jpg\" alt=\"TengenTetris\" width=\"300\" height=\"225\" srcset=\"https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/TengenTetris-300x225.jpg 300w, https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/TengenTetris-1024x768.jpg 1024w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>This one should require no introduction or explanation.\u00c2\u00a0 Tengen Tetris.\u00c2\u00a0 I spoke about this game several times in previous entries, alluding to the legal fight between Atari and Nintendo, but always in passing.\u00c2\u00a0 Now that I actually\u00c2\u00a0have a copy, I&#8217;ll have to devote an entire article about it.\u00c2\u00a0 That&#8217;ll be in the future, but for now, to illustrate its awesomeness:\u00c2\u00a0 <em>Two-Player Cooperative Mode<\/em>.<\/p>\n<p><a href=\"https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/MetafightFamicom.JPG\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-626\" title=\"MetafightFamicom\" src=\"https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/MetafightFamicom-300x225.jpg\" alt=\"MetafightFamicom\" width=\"300\" height=\"225\" srcset=\"https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/MetafightFamicom-300x225.jpg 300w, https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/MetafightFamicom-1024x768.jpg 1024w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>The second notable acquisition is a Japanese Famicom game called Metafight.\u00c2\u00a0 Well, it&#8217;s actually &#8220;Something-Something Metafight&#8221;, but I don&#8217;t know Japanese.\u00c2\u00a0 The cover has some generic anime characters, one of which looks angry.\u00c2\u00a0 None of that really matters.\u00c2\u00a0 I&#8217;m not really into Japanese things and I&#8217;m not really into anime or stuff like that.\u00c2\u00a0 And I don&#8217;t have a Famicom system. \u00c2\u00a0So, then, you ask, why would I go out of my way to buy a Japanese anime game for the Famicom?<\/p>\n<p><a href=\"https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/MetafightIntro.JPG\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-627\" title=\"MetafightIntro\" src=\"https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/MetafightIntro-300x225.jpg\" alt=\"MetafightIntro\" width=\"300\" height=\"225\" srcset=\"https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/MetafightIntro-300x225.jpg 300w, https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/MetafightIntro-1024x768.jpg 1024w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>This screenshot might help you figure it out.\u00c2\u00a0 It at least might look a bit familiar to you.\u00c2\u00a0 Maybe.\u00c2\u00a0 Can&#8217;t quite place it?\u00c2\u00a0 This&#8217;ll do it:<\/p>\n<p><a href=\"https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/MetafightFirstLevel.JPG\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-628\" title=\"MetafightFirstLevel\" src=\"https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/MetafightFirstLevel-300x225.jpg\" alt=\"MetafightFirstLevel\" width=\"300\" height=\"225\" srcset=\"https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/MetafightFirstLevel-300x225.jpg 300w, https:\/\/mathpirate.net\/log\/wp-content\/uploads\/2009\/10\/MetafightFirstLevel-1024x768.jpg 1024w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Metafight is the Japanese version of Blaster Master. ((And if you don&#8217;t know what Blaster Master is, well, you just need to play more NES games.))\u00c2\u00a0 There is no opening story sequence in Metafight, which automatically means that the plot for Metafight makes far, far more sense than the &#8220;My pet frog jumped on a box of radioactive waste in my backyard and went down a hole and I followed it and found this bad-ass hyper-agile\u00c2\u00a0tank in the underworld and I proceeded to fight lots of nasty creatures in my bad-ass hyper-agile tank in order to rescue my radioactive mutant pet frog and save the world from the radioactive mutants that live under the Earth&#8217;s crust&#8221; plot that Blaster Master tried to have.\u00c2\u00a0 Of course, since Blaster Master changed the story from whatever angry anime guy was\u00c2\u00a0doing to something stupid about a mutated frog, they had to change the tank ignition sequence to be in a cave, instead of Metafight&#8217;s futuristic tank garage.<\/p>\n<p>But enough about that for today.\u00c2\u00a0 It&#8217;s time for robots.<\/p>\n<p>It&#8217;s been a while since I&#8217;ve visited the land of the video game playing robots, but I assure you,\u00c2\u00a0I have been thinking about them.\u00c2\u00a0 I think the next time I get back into them, assuming I ever do, the first thing I&#8217;ll do is organize the codebase.\u00c2\u00a0 It was built to get it to market, but not built for future expansion.\u00c2\u00a0 If I want to keep going with this, I&#8217;ll need to rewrite large sections of it and separate the movement interface\u00c2\u00a0and screen capture plumbing from the game specific recognition and logic code.\u00c2\u00a0 Although it won&#8217;t be quick, that should hopefully be reasonably straightforward to do.\u00c2\u00a0 From there, I&#8217;d like to work on improving the control of the paddle.\u00c2\u00a0 A few weeks ago, I think I may have improved the precision of the controls, but I still haven&#8217;t tested it out.<\/p>\n<p>At any rate, I think Pong is the wrong game to try to develop precision controls.\u00c2\u00a0 The trajectory projection gets in the way of making sure the paddle is moving exactly where I want it to go as fast as I can get it there.\u00c2\u00a0 The paddle might very well be going where I want it, but by the time it gets there, that&#8217;s no longer where I want it.\u00c2\u00a0 So, I think I&#8217;m going to have to try another game to tune the paddle controls.\u00c2\u00a0 Right now, I&#8217;m leaning toward Kaboom! as the game of choice.\u00c2\u00a0 It should have easy to program\u00c2\u00a0recognition and logic (Bomb drops straight down, move to catch bomb, repeat), and it will absolutely require precision, accuracy, and speed.\u00c2\u00a0 Runner up is Indy 500, but I think the pathfinding and collision avoidance knock that one out at this point, not to mention the 360 degree driving paddle.\u00c2\u00a0 An interesting side-note is that pretty much whatever paddle game I choose, I&#8217;ll have to deal with something I didn&#8217;t care about in Pong:\u00c2\u00a0 The button.<\/p>\n<p>Beyond the paddle, to really get things done on the Atari 2600, I&#8217;m going to need to be able to control a joystick.\u00c2\u00a0 I have several options, of course.\u00c2\u00a0 I can try some alternative controller, like the button operated Starplex or the gravity operated LeStick, but really, or maybe try to build my own controller, but really,\u00c2\u00a0to\u00c2\u00a0claim that I built a robot that can play an Atari 2600, I have to build something\u00c2\u00a0to handle a good old CX40 Atari Joystick.\u00c2\u00a0 That&#8217;s probably not going to be easy.\u00c2\u00a0 The controls won&#8217;t have to be as precise as the paddle, since there&#8217;s only\u00c2\u00a0nine options, however, it&#8217;s going to involve control on two axes that are somewhat dependent on one another.\u00c2\u00a0 I&#8217;ve had thoughts involving double arms that push or pull, a swing arm with a piston, a gantry crane like setup,\u00c2\u00a0and something that rotates and can push the stick, and none of those ideas seem any good at all.\u00c2\u00a0 I&#8217;m sure I&#8217;ll think of something.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I seem to have been neglecting this lately.\u00c2\u00a0 I&#8217;m a week overdue on a programming\/testing post, and it&#8217;s almost getting to the point where I&#8217;m late on a video game history lesson.\u00c2\u00a0 So, to prove I&#8217;m not dead, here&#8217;s a few bits of here and there. First, if you&#8217;re in Washington, you have less than [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[9,8],"tags":[42,17,75,39,77,40,29,18,28,76,238],"_links":{"self":[{"href":"https:\/\/mathpirate.net\/log\/wp-json\/wp\/v2\/posts\/623"}],"collection":[{"href":"https:\/\/mathpirate.net\/log\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mathpirate.net\/log\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mathpirate.net\/log\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mathpirate.net\/log\/wp-json\/wp\/v2\/comments?post=623"}],"version-history":[{"count":2,"href":"https:\/\/mathpirate.net\/log\/wp-json\/wp\/v2\/posts\/623\/revisions"}],"predecessor-version":[{"id":629,"href":"https:\/\/mathpirate.net\/log\/wp-json\/wp\/v2\/posts\/623\/revisions\/629"}],"wp:attachment":[{"href":"https:\/\/mathpirate.net\/log\/wp-json\/wp\/v2\/media?parent=623"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mathpirate.net\/log\/wp-json\/wp\/v2\/categories?post=623"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mathpirate.net\/log\/wp-json\/wp\/v2\/tags?post=623"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}