{"id":39,"date":"2008-07-25T10:57:05","date_gmt":"2008-07-25T08:57:05","guid":{"rendered":"https:\/\/blogs.scummvm.org\/buddha\/?p=39"},"modified":"2022-04-15T10:57:44","modified_gmt":"2022-04-15T08:57:44","slug":"savegame-format-changing-ordeal","status":"publish","type":"post","link":"https:\/\/blogs.scummvm.org\/buddha\/2008\/07\/25\/savegame-format-changing-ordeal\/","title":{"rendered":"Savegame format changing ordeal"},"content":{"rendered":"<p>HI! Tried changing the Cine engine\u2019s savegame format from plain data without any markers to a chunked format akin to <a href=\"http:\/\/en.wikipedia.org\/wiki\/Interchange_File_Format\">IFF<\/a>. Got lots of ideas, and some code together too, but eventually gave up as making it really work would\u2019ve required some major objectifying of the engine and it\u2019s still very C style in many places currently.<\/p>\n<p><!--more--><\/p>\n<p>So I\u2019m not going to make use of a finegrained totally new chunked format now, but I\u2019ll make a compromise and use a new chunked format but dump most of the savegame data into a single chunk. The format can be improved later.<\/p>\n<p>I looked into how the <a href=\"http:\/\/wiki.scummvm.org\/index.php\/SCUMM\">SCUMM<\/a> engine has implemented its savegame handling and its approach looks to be quite an interesting one. Take a look at <a href=\"http:\/\/scummvm.svn.sourceforge.net\/viewvc\/scummvm\/scummvm\/trunk\/engines\/scumm\/saveload.h?view=markup\">scumm\/saveload.h<\/a> and <a href=\"http:\/\/scummvm.svn.sourceforge.net\/viewvc\/scummvm\/scummvm\/trunk\/engines\/scumm\/saveload.cpp?view=markup\">scumm\/saveload.cpp<\/a>.<\/p>\n<p>P.S. My <a href=\"http:\/\/en.wikipedia.org\/wiki\/Internet_Relay_Chat\">IRC<\/a> attendance on #scummvm will suffer in the near future as the server on which I ran <a href=\"http:\/\/www.irssi.org\/\">irssi<\/a> in a <a href=\"http:\/\/en.wikipedia.org\/wiki\/GNU_Screen\">screen<\/a> moves town starting today. I\u2019ll try to get back on IRC during Sunday or Monday the latest.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>HI! Tried changing the Cine engine\u2019s savegame format from plain data without any markers to a chunked format akin to IFF. Got lots of ideas, and some code together too, but eventually gave up as making it really work would\u2019ve required some major objectifying of the engine and it\u2019s still very C style in many [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-39","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/posts\/39","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/comments?post=39"}],"version-history":[{"count":3,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/posts\/39\/revisions"}],"predecessor-version":[{"id":115,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/posts\/39\/revisions\/115"}],"wp:attachment":[{"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/media?parent=39"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/categories?post=39"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/tags?post=39"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}