{"id":42,"date":"2008-07-28T10:57:49","date_gmt":"2008-07-28T08:57:49","guid":{"rendered":"https:\/\/blogs.scummvm.org\/buddha\/?p=42"},"modified":"2022-04-15T10:58:25","modified_gmt":"2022-04-15T08:58:25","slug":"savegame-format-coming-together","status":"publish","type":"post","link":"https:\/\/blogs.scummvm.org\/buddha\/2008\/07\/28\/savegame-format-coming-together\/","title":{"rendered":"Savegame format coming together"},"content":{"rendered":"<p>Hi, this savegame format thing has been getting on my nerves quite a bit. Last night I thought what the hell, I\u2019ll get this done and just hacked together code to get forward (<a href=\"http:\/\/scummvm.svn.sourceforge.net\/viewvc\/scummvm?view=rev&amp;revision=33338\">1<\/a>, <a href=\"http:\/\/scummvm.svn.sourceforge.net\/viewvc\/scummvm?view=rev&amp;revision=33339\">2<\/a>, <a href=\"http:\/\/scummvm.svn.sourceforge.net\/viewvc\/scummvm?view=rev&amp;revision=33349\">3<\/a>). Recently I reverse engineered Operation Stealth\u2019s PC version\u2019s savegame loading routine and using that information I wrote <a href=\"http:\/\/wiki.scummvm.org\/index.php\/Cine\/Specifications#Savegames\">documentation of the format<\/a> to ScummVM\u2019s wiki.<\/p>\n<p><!--more--><\/p>\n<p>My idea why I wanted to reverse engineer and use the information from the Operation Stealth\u2019s disassembly for the savegame handling is that if I know what the original engine thought was important enough to be saved to a savegame file I can use that information to save pertinent parts of the Cine engine too. So what was good enough for the original Operation Stealth engine should be good enough for the Cine engine as well.<\/p>\n<p>A word of warning about the savegames: The savegames for Operation Stealth are going to be very much a work in progress and therefore backward compatibility can be broken at practically any time and the changing formats will not be supported later. They are only a tool for development. A bit later it\u2019d be very nice to share resources with the <a href=\"http:\/\/wiki.scummvm.org\/index.php\/SCUMM\">SCUMM<\/a> &amp; <a href=\"http:\/\/wiki.scummvm.org\/index.php\/Tinsel\">Tinsel<\/a> engines so the three engines could use the same code for handling their savegames.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hi, this savegame format thing has been getting on my nerves quite a bit. Last night I thought what the hell, I\u2019ll get this done and just hacked together code to get forward (1, 2, 3). Recently I reverse engineered Operation Stealth\u2019s PC version\u2019s savegame loading routine and using that information I wrote documentation of [&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-42","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/posts\/42","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=42"}],"version-history":[{"count":2,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/posts\/42\/revisions"}],"predecessor-version":[{"id":44,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/posts\/42\/revisions\/44"}],"wp:attachment":[{"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/media?parent=42"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/categories?post=42"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.scummvm.org\/buddha\/wp-json\/wp\/v2\/tags?post=42"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}