pearse@hound.UUCP (S.PEARSE) (03/17/85)
Has anyone wrote a program which will copy programs which preserve the access and modification times of the source file? This would allow successful copying of saved rogue games. I have a copy of "cpx", but that only makes one exact copy, changing the access time of the original. I need a program that can make *two* copies so I can restart one, leaving another in case I die. Or am I barking up a tree? Will rogue start up identical copies, one after the other? Or does it keep track of every saved file, scratching it off its list when I restore it? I am intent on figuring this out. I cannot afford to start at the beginning of the game each time I slip deep in the dungeon. This one is for all you UNIX wizards. Thanks, -- Steve Pearse ihnp4!hound!pearse
rick@sesame.UUCP (Rick Richardson) (03/18/85)
> Has anyone wrote a program which will copy programs which preserve > the access and modification times of the source file? ... > > I am intent on figuring this out. I cannot afford to start at the > beginning of the game each time I slip deep in the dungeon. ... > Steve Pearse > ihnp4!hound!pearse As far as I remember, rogue stashes the time and the inode number in the encrypted save file. The time that is saved is compared to the 'ctime' of the saved file. It must be within 15 seconds. There is no system call that will let you change the ctime. You can only change the atime and the mtime. At one point, I wrote a program that would go into the inode using the raw disk device, and change anything you wanted. It was for repairing damage that Microsoft's crappy IPC's would do to our XENIX filesystem. You have to be root to do this. Unfortunately, it wasn't a user friendly program, and a friend tried to use it to do exactly what you want - change the ctime. He managed to use it on the wrong inode (somebodies home directory!) and clobbered it. Wasn't too bad though, cause we both hated this particular person anyhow! -- Rick Richardson, PC Research, Inc. {genrad|ihnp4|ima}!wjh12!talcott!sesame!{rick|pcrat!rick} {cbosgd|harvard}!talcott!sesame!{rick|pcrat!rick} rick%sesame@harvard.ARPA
engl210w2c@watarts.UUCP (Bill Switzer) (03/20/85)
And if anyone does find out, PLEASE REPLY via news. I'm quite sure all would like to know.
ix196@sdcc6.UUCP ({) (03/22/85)
> Has anyone wrote a program which will copy programs which preserve > the access and modification times of the source file? This would > allow successful copying of saved rogue games. I have a copy of > "cpx", but that only makes one exact copy, changing the access > time of the original. I need a program that can make *two* copies > so I can restart one, leaving another in case I die. > > Or am I barking up a tree? Will rogue start up identical copies, > one after the other? Or does it keep track of every saved file, > scratching it off its list when I restore it? > > I am intent on figuring this out. I cannot afford to start at the > beginning of the game each time I slip deep in the dungeon. This > one is for all you UNIX wizards. > > Thanks, > -- > Steve Pearse > ihnp4!hound!pearse I don't know how to do exactly what you want, but I can come close. At the beginning of a game, do the following. First, save the game to a named file, say SAVE1. You can change the save file with Options. Next, copy SAVE1 to a new file, say SAVE2. Then restart SAVE1. Now, save this restarted game to a third file, say SAVE3. Now, go back to SAVE2 and copy it back to SAVE1 (so it will be in the same file as far as Rogue is concerned). You can now start this copied version of the game, but you will get a message like: Sorry, this game has been tampered with, so the score can't be recorded. However, all potions, scrolls, rings, and staffs/wands in this copied game will be identical to the saved game in SAVE3. This means that you can play the copied game and figure out all the goodies in advance. Then play SAVE3 and you should still be able to get on the score file. Another point is that any time you do this, the layout of the levels in the good and the copied version is, I think, exactly the same. If you wanted to and had the patience, you could do this every level and know what to expect each time you restarted the good version. Please note: I am by no means a computer whiz. A friend and I managed to figure this out by brute force. Also, I have no idea if this will work on other or all versions of rogue or on other systems. Our version is 5.3 and we run on a UNIX of some sort-- I don't know much about it except how to play rogue and how to use the UNIX help function to try to figure things out. Hope this is helpful. Nom and The Chopper :
srm@nsc.UUCP (Richard Mateosian) (03/24/85)
Here's a way to replay games from a checkpoint. This was posted to the net a long time ago (I don't remember by whom), and it works pretty well, though not perfectly, with 5.3. You are playing a game that you feel has some promise, and you want to save a copy to go back to. (1) From rogue, save the game. Assume that your save file is called rogue.save. (2) From the shell, do "cp rogue.save goodgame" (3) Go back to playing your game (rogue -r rogue.save). (4) When you have finished, do "cp goodgame rogue.save" (5) Now resume at the checkpoint: "rogue -r rogue.save" (6) Goto (4). At step (5) you will get one of two messages: (A) Sorry, file has been touched, so score won't be counted. (B) Sorry, saved game is not in the same file. If you get (A), you can replay from the checkpoint. If you get (B), you're finished. I get (A) much more frequently than (B). Since I have never gotten a high enough score from (A) to displace my legitimate scoreboard entry, I don't know whether the score will be counted or not. -- Richard Mateosian {allegra,cbosgd,decwrl,hplabs,ihnp4,seismo}!nsc!srm nsc!srm@decwrl.ARPA
herbie@watdcsu.UUCP (Herb Chong [DCS]) (03/25/85)
In article <1980@sdcc6.UUCP> ix196@sdcc6.UUCP writes: >I don't know how to do exactly what you want, but I can come >close. At the beginning of a game, do the following. >First, save the game to a named file, say SAVE1. You can >change the save file with Options. Next, copy SAVE1 to a >new file, say SAVE2. Then restart SAVE1. Now, save this >restarted game to a third file, say SAVE3. Now, go back to >SAVE2 and copy it back to SAVE1 (so it will be in the same >file as far as Rogue is concerned). You can now start this >copied version of the game, but you will get a message like: >Sorry, this game has been tampered with, so the score can't >be recorded. > Nom and The Chopper this will not work on advanced rogues. it will display a message that the saved game is altered, delete the saved game, and then exit. Herb Chong... I'm user-friendly -- I don't byte, I nybble.... UUCP: {decvax|utzoo|ihnp4|allegra|clyde}!watmath!water!watdcsu!herbie CSNET: herbie%watdcsu@waterloo.csnet ARPA: herbie%watdcsu%waterloo.csnet@csnet-relay.arpa NETNORTH, BITNET, EARN: herbie@watdcs, herbie@watdcsu
kyrimis@tilt.FUN (Kriton Kyrimis) (03/26/85)
I think I have found a trick that actually works! The procedure is the following: 1. Save the game as normal, in rogue.save 2. cp rogue.save good.save 3. rogue rogue.save /* the first time you can play with no problems */ 4. repeat 5. cp good.save rogue.save 6. rogue rogue.save /* rogue will now complain as usual */ 7. NOW SAVE THE GAME IN rogue.save !!! 8. rogue rogue.save /* rogue will not complain, since the saved file is a legitimate one */ 9. until bored with this game 10. rm good.save /* remember: these files are huge! remove them when you no longer need them! */ The above applies to rogue 5.3. I suppose it also applies to any version that does not delete saved files when they're touched. I haven't actually managed to test this procedure by doing a high score (try doing that easily!) but since I don't get any diagnostics, I believe it is correct. Kriton Kyrimis (princeton!tilt!kyrimis)
wilhite@usceast.UUCP (Robert Wilhite) (03/27/85)
(edited slightly) In article <2511@nsc.UUCP> srm@nsc.UUCP (Richard Mateosian) writes: >Here's a way to replay games from a checkpoint. This was posted to the >net a long time ago.... > > (1) Save the game. (in rogue.save, for example) > (2) From the shell, do "cp rogue.save goodgame" > (3) Go back to playing your game (rogue -r rogue.save). > (4) When you have finished, do "cp goodgame rogue.save" > Go to (3) > >You will get one of two messages: > (A) Sorry, file has been touched, so score won't be counted. > (B) Sorry, saved game is not in the same file. > >If you get (A), you can replay from the checkpoint. If you get (B), you're >finished.... >-- >Richard Mateosian (Again, with 5.3) A slight modification of this will let you replay from a checkpoint and STILL have your score counted. . . * Do (1) and (2) as above. * Then restart the game, as in (3) -- still from a legit save-file, but IMMEDIATELY SAVE IT under yet another rogue name ("yarn"?). * "cp goodgame rogue.save" and restart. Here again, you get the "This won't be counted" message. Play from here 'til you know the map, items, monsters, etc. * When you've seen enough, Quit, and restart with the "yarn" file. (You WON'T see the "won't be counted" message.) * Repeat as your conscience permits. Hasn't failed for me yet. --robert -- "Stop the war! We're out of forms!" -- ------------------------ Robert Wilhite ..decvax ! mcnc ! ncsu ! ncrcae ! usceast ! wilhite ..akgua ! usceast ! wilhite
kyrimis@tilt.FUN (Kriton Kyrimis) (03/31/85)
<Is there really a first-line-eating bug?> In my last posting I said that saving a game started from a copied save file would produce a legitimate file and therefore one could use this procedure to save a good game and start from there each time one wanted to play. There is a small catch, however: it seems that rogue keeps the date of creation of the save file in that file (someone posted something to that effect a few days ago). Therefore, if your backup copy is too old, when you cp it into rogue.save, rogue will refuse to start. The solution is simple: When you want to create a backup copy, do the following: 1. save the game in rogue.save 2. cp rogue.save temp 3. rogue rogue.save 4. save the game in good.save /* this produces a valid good.save */ 5. cp temp rogue.save 6. rogue rogue.save /* rogue will complain, but it will restart the game */ 7. save the game in rogue.save /* now you have a valid rogue.save */ 8. rm temp This procedure creates rogue.save and good.save. Rogue may be restarted from either one. When you get killed (or, for that matter, exit the dungeon), remember to repeat the above procedure, so that you have TWO save files of the same game. I'm sorry if you lost any good games following my previous hints. I found out about my mistake the hard way too. I had to abandon my best game ever. I hope I've got it correct this time. Kriton Kyrimis (princeton!tilt!kyrimis)
rob@osiris.UUCP (Robert St. Aardvarks) (04/01/85)
> (Again, with 5.3) > A slight modification of this will let you replay from a checkpoint and > STILL have your score counted. . . > > * Do (1) and (2) as above. > * Then restart the game, as in (3) -- still from a legit save-file, > but IMMEDIATELY SAVE IT under yet another rogue name ("yarn"?). > * "cp goodgame rogue.save" and restart. Here again, you get the > "This won't be counted" message. Play from here 'til you know > the map, items, monsters, etc. > * When you've seen enough, Quit, and restart with the "yarn" file. > (You WON'T see the "won't be counted" message.) > * Repeat as your conscience permits. > > Hasn't failed for me yet. --robert It's failed for me. Not directly, though. Sometimes when I restart one of those saved games, I make a few moves and then the cursor stops moving and the characters I type are echoed to the screen. I have to hit interrupt. The game is usually saved, but sometimes isn't usable, having been 'touched.' Any clues? Rob St. Amant
kyrimis@tilt.FUN (Kriton Kyrimis) (04/05/85)
<Is there really a first-line-eating bug?> I guess I owe everyone an apology: my method of converting "bad" saved files by loading them and immediately saving them, DOES NOT seem to WORK after all. To quote R.C. (Is it good manners to mention names, when referring to other fellow roguers who PLAY(!!!) instead of work at the computer?): > The trick of saving a game that says "score won't be recorded" > and restarting it (which, as we know, DOESN'T give that message) > DOES NOT WORK. I did not get an updated score on the scoreboard > when I beat my old score. Again, I apologise. Kriton Kyrimis (princeton!tilt!kyrimis)