{"id":148,"date":"2023-10-21T21:51:52","date_gmt":"2023-10-22T01:51:52","guid":{"rendered":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/?p=148"},"modified":"2023-10-21T21:51:52","modified_gmt":"2023-10-22T01:51:52","slug":"hangs-status-report-for-10-21-23","status":"publish","type":"post","link":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/2023\/10\/21\/hangs-status-report-for-10-21-23\/","title":{"rendered":"Hang\u2019s Status Report For 10.21.23"},"content":{"rendered":"<p><span style=\"font-weight: 400\">This week, I focused on saving game states. Originally, I wanted to save the board for each move with the recommended moves from the Go engine, however, I\u2019ve decided against this since the text file would be unnecessarily large. Instead, I\u2019ll only save \u201cone board\u201d flattened into an array of 361 (19&#215;19). Each element in the array will either be a tuple of (\u201cE\u201d, -1) or (\u201cW\u201d, some move number) or (\u201cB\u201d, some move number), where \u201cE\u201d corresponds to empty, \u201cW\u201d to white, and \u201cB\u201d to black. I won\u2019t be saving the recommended game moves, instead, I would be reconstructing the board for each move selected to display, and then feeding that board state to the Go engine to get the recommended moves. While this will take a little more processing time for displaying the history of games, it\u2019s worth the memory cost of storing large games\/games with many moves.<\/span><\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone  wp-image-149\" src=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-content\/uploads\/sites\/254\/2023\/10\/download_works.png\" alt=\"\" width=\"735\" height=\"407\" srcset=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-content\/uploads\/sites\/254\/2023\/10\/download_works.png 1554w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-content\/uploads\/sites\/254\/2023\/10\/download_works-300x166.png 300w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-content\/uploads\/sites\/254\/2023\/10\/download_works-768x425.png 768w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-content\/uploads\/sites\/254\/2023\/10\/download_works-1024x566.png 1024w\" sizes=\"(max-width: 735px) 100vw, 735px\" \/><\/p>\n<p><span style=\"font-weight: 400\">My schedule is on track as I\u2019ve finished saving game history. By next week, I should have the feature for displaying game history done.<\/span><\/p>\n<p><span style=\"font-weight: 400\">While I have some frontend\/UI experience as I have done a full stack internship before, most of my work was in backend. For this project, almost all of my work will be with React\/frontend, and I\u2019ll be creating new components with CSS which I haven\u2019t done before. I\u2019ll also be looking into how to do serial communication between the web page I\u2019m creating and the Arduino board for getting the game states with Web Serial API. <\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This week, I focused on saving game states. Originally, I wanted to save the board for each move with the recommended moves from the Go engine, however, I\u2019ve decided against this since the text file would be unnecessarily large. Instead, I\u2019ll only save \u201cone board\u201d flattened into an array of 361 (19&#215;19). Each element in &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/2023\/10\/21\/hangs-status-report-for-10-21-23\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Hang\u2019s Status Report For 10.21.23&#8221;<\/span><\/a><\/p>\n","protected":false},"author":791,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[5,4],"tags":[6],"_links":{"self":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-json\/wp\/v2\/posts\/148"}],"collection":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-json\/wp\/v2\/users\/791"}],"replies":[{"embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-json\/wp\/v2\/comments?post=148"}],"version-history":[{"count":2,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-json\/wp\/v2\/posts\/148\/revisions"}],"predecessor-version":[{"id":151,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-json\/wp\/v2\/posts\/148\/revisions\/151"}],"wp:attachment":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-json\/wp\/v2\/media?parent=148"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-json\/wp\/v2\/categories?post=148"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/f23-teama0\/wp-json\/wp\/v2\/tags?post=148"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}