Difference between revisions of "AGI/Specifications/Data"

Jump to navigation Jump to search
m
changed bad single/double quote marks
(Created Other Data page, initial draft)
 
m (changed bad single/double quote marks)
Line 9: Line 9:
The file encryption
The file encryption


The first obstacle to overcome is the fact that most object files are encrypted. I say most because some of the earlier AGI games were not, in which case you can skip to the next section. Those that are encrypted are done so with the string ``Avis Durgan'' (or, in case of AGDS games, ``Alex Simkin''). The process of unencrypting the file is to simply taken every eleven bytes from the file and XOR each element of those eleven bytes with the corresponding element in the string ``Avis Durgan''. This sort of encryption is very easy to crack if you know what you are doing and is simply meant to act as a shield so as not to encourage cheating. In some games, however, the object names are clearly visible in the saved game files even when the object file is encrypted, so it's not a very effective shield.
The first obstacle to overcome is the fact that most object files are encrypted. I say most because some of the earlier AGI games were not, in which case you can skip to the next section. Those that are encrypted are done so with the string "Avis Durgan" (or, in case of AGDS games, "Alex Simkin"). The process of unencrypting the file is to simply taken every eleven bytes from the file and XOR each element of those eleven bytes with the corresponding element in the string "Avis Durgan". This sort of encryption is very easy to crack if you know what you are doing and is simply meant to act as a shield so as not to encourage cheating. In some games, however, the object names are clearly visible in the saved game files even when the object file is encrypted, so it's not a very effective shield.
File format
File format
   
   
Line 60: Line 60:
The words section
The words section


Words are stored in a compressed way in which each word will use part of the previous word as a starting point for itself. For example, ``forearm'' and ``forest'' both have the prefix ``fore''. If ``forest'' comes immediately after ``forearm'', then the data for ``forest'' will specify that it will start with the first four characters of the previous word. Whether this method is used for further confusion for would be cheaters or whether it is to help in the searching process, I don't yet know, but it most certainly isn't purely for compression since the words.tok file is usally quite small and no attempt is made to compress any of the larger files (before AGI version 3 that is).
Words are stored in a compressed way in which each word will use part of the previous word as a starting point for itself. For example, "forearm" and "forest" both have the prefix "fore". If "forest" comes immediately after "forearm", then the data for "forest" will specify that it will start with the first four characters of the previous word. Whether this method is used for further confusion for would be cheaters or whether it is to help in the searching process, I don't yet know, but it most certainly isn't purely for compression since the words.tok file is usally quite small and no attempt is made to compress any of the larger files (before AGI version 3 that is).


<pre>
<pre>
39

edits

Navigation menu