Re[2]: Player file corruption

surve.naved@ehccgate.sandoz.com
Date: 06/30/94


>Subject: Re: Player file corruption
>Author:  JELSON@BLAZE.CS.JHU.EDU@UMC@HANNET at DECPostmaster
>Date:    6/30/94 11:15 AM
>
>> Yup...they are directly related.  If you make a change to the player info
>> in the structs.h, it will cause a player file corruption.  The only way to
>> get it back (that I know of) is to replace the player file with the backup
>> I KNOW you made before you tried any changes. :>

Actually, you can recover from playerfile corruptions even if you don't have a 
backup.  As long as you remember what changes you made to structs.h, you can 
write a short (5-10 line) utility that will convert the player file from the old
format to the new.  I used to do this routinely when changing the playerfile 
structs.  The cool thing is that once the utility is written, it can be used to 
do any playerfile conversions that may be needed in the future; it just needs to
be recompiled with the new structs.

>Yes, all structures included in the playerfile are notated with:
>
>/* Used in char_file_u *DO*NOT*CHANGE* */
>
>char_file_u is the structure used to create the playerfile.  If you change
>that structure or any of its components, the size of each record will change
>and you won't be able to read your old playerfile.  The Circle code can
>generally detect when this has happened on bootup -- when the player index
>is being read, it should say "WARNING: PLAYERFILE IS PROBABLY CORRUPT!".
>
>> To prevent this from happening later on, just use the extra fields (i think
>> they are at the end of the specials2  part).
>
>Yes, there are many structures labeled "sparen" where n is some integer.
>Just change the name of one of the spares to some more meaningful name
>and you're golden.



This archive was generated by hypermail 2b30 : 12/07/00 PST