Post subject: Creation of Save Files during Hourglass Usage
Editor, Skilled player (1439)
Joined: 3/31/2010
Posts: 2108
First off, I apologize if this was already pointed out in the General Thread, I haven't looked through all of it. Anyway, one thing about Hourglass that has been concerning me is that Hourglass doesn't sandbox the game it's running. This means that while running the game, making, or even watching TASes, Save Files and other files could potentially be permanently changed. For example, watching a Run that completes Eversion sets the game into timeattack mode, making other runs desync. What's the easiest way to avoid this? Keep a separate folder with the original unchanged game executable to fall back on? Because that approach does sound kind of clumsy, to be honest. Or could there be something I'm missing?
Joined: 7/2/2007
Posts: 3960
It seems like Hourglass ought to intercept filehandle creation. The way I'd probably handle it, at first glance, would be: * Allow the user to specify a whitelist of files that a given movie file can modify (e.g. for movies that start from savefiles). These files are copied to a sandbox region when the movie starts playback. Any request for one of these files gets redirected to the sandboxed version. * All read-only filehandle requests are granted (e.g. for reading resource files). * Filehandles with write access are only granted for new or whitelisted files. Newly-created files go in the sandbox. * The sandbox is wiped every time a movie starts. That said, all I know about Hourglass is what I've read here on the forums, so this might not be practicable.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.