About

Horizon is a file monitor designed to maintain snapshots of the files whenever the files within a user-specified directory change. When the user desires, the snapshots can be used to revert the files to their previous versions with in the directory.

The software has been designed to compensate for the lack of save slots in indie games but its applicability is broader than games and may apply generically to different usages.

Screenshots

Features

  • Ability to monitor multiple folders, even recursively, for file changes.
  • Taking a backup of the file after the file has changed and storing it to a database.
  • Configurable file watching flags (last write, size, etc.),
  • The ability to revert to a previous version of the file.
  • Viewing the snapshots of the backed up file in a manager and sorting by name, date, etc.,
  • Opening up snapshots of files in a hex editor in order to make changes.
  • Export and import capabilities.
  • Drag and drop onto the snapshot manager to take backups of the files.
  • Network auto-discovery and transfer of files over the network.
  • Atomic snapshots of files.
  • Taking a screenshot of the current window under the mouse or the whole screen when a snapshot of the files is taken.
  • Attaching notes to snapshots.

Download

Source

The source is licensed MIT and can be checked out from:

Credits for the icons goes to flaticons.com.

Basic Usage

Horizon has been created in order to create snapshots of save game files for modern games where the saving is handled automatically by the game itself. The purpose thereof, ranges from maintaining terse backups of saves (especially given that lengthy games are a lot of work), through the ability to restore an earlier save whilst still maintaining the current state of the game, and ending with attempting to reverse-engineer game save files.

However, Horizon is designed as a general purpose tool, without any special semantics that would involve games, such that it is perfectly feasible to have Horizon back up snapshots of your work. One interesting application is writing books, or large documents where, for some reason, you would be interested to see and preserve the evolution of your work over time. In such cases, just pointing Horizon at the location of your files will do the trick and Horizon will keep incremental backups of your work.

  • After the software starts, right-click the program tray icon and select the "Manage Folders…" option.
  • Multiple folders can be added to be monitored by Horizon with the ability to recursively monitor all the files in that folder, and the option to configure a delay to take a snapshot of a file after it has been changed. Adding a sufficiently large delay is necessary in order to ensure that the file is not locked or in use anymore before a copy is attempted.
  • Whenever the files change within the selected directory, Horizon will take a snapshot and announce the user that the file has changed using a notification window.
  • The tray icon can be clicked and the option "Manage Snapshots…" can be selected in order to browse the snapshots that have been taken.
  • By clicking a row in the snapshot manager and selecting "Revert to Snapshot", the previous version of the file will be restored corresponding to the snapshot.

Note that contrasted to auto-save, which is a a more general feature included in right about every software package, Horizon maintains a history of saves, such that you can go back at any point in time. This is extremely useful also if you create presentations of various works, where it would be interesting to memorize some point within the work or game that you are playing, in order to be able to return back and demonstrate that particular point in time.

Advanced Usage

Horizon also contains a text editor that might be interesting or useful to use in order to make changes to the snapshots themselves before restoring them.

Rows can be colored in order to set a quick marker and to be able to remember a snapshot that might have been important. If more terse note keeping is necessary, the row can be clicked and the option "Edit Note…" selected in order to assign a note to the selected snapshot.

Watcher Filters

The option in question can be accessed from the "Settings" menu and then by following "Watchers". When the "Watchers" menu unfolds, the user will be given the option of selecting various file watching criteria that will trigger Horizon to take a snapshot of the current files it is monitoring in the directories configured with the "Manage Folders…" option.

By default, the "LastWrite" and "Attributes" options are selected, which should be sufficient for most programs, but sometimes selecting "Size" will help raise better notifications on file change for various software that handles its files differently.

For instance, the Pacific Drive game handled save-files differently such that "Watchers" and "Manage Folders…" is insufficient to raise a filesystem notification when a save file is updated such that the "Size" flag must be enabled as well in order to correctly take snapshots.

The snapshot delay configurable in "Manage Folders…" when a folder is added, is the time elapsed after a filesystem notification is raised, which, in turn is managed via these flags.

Network Transfer of Snapshots

It is also possible to transfer snapshots across the network by using the "Share With" option from the menu after right-clicking a row that is populated by machines that have been scanned from the network. In case other machines on the network are running Horizon, then snapshots can be transferred to those machines by using the "Share With" menu and then selecting the machine from the drop-down menu. All you need to do is to install Horizon on both machines and then you can transfer files back and forth between Horizon instances.

Similar Software

Horizon is essentially an Apple "Time Machine" or a Microsoft NTFS old file versioning system but one that is designed to run in user-space and with a lot of features and options provided to the user.

License

Horizon is licensed under the MIT license.


windows/horizon.txt · Last modified: 2024/05/30 11:39 by office

Access website using Tor Access website using i2p Wizardry and Steamworks PGP Key


For the contact, copyright, license, warranty and privacy terms for the usage of this website please see the contact, license, privacy, copyright.