So, it looks like I've broken my world file. Mushclient froze today when I used a simple alias that has worked countless times before which just sends a command and uses DoAfterSpecial to loop itself after a certain interval. Now, whenever I try to open that world, the same thing happens right from the start; it doesn't even get a chance to connect.
Since the alias is so simple and has worked fine for so long, I'm pretty sure that the death of my world file upon its use is just a coincidence. What seems the more likely culprit is that a few days ago I wrote a small script that calculates second values for certain timers based on input I give it and uses SetTimerOption to assign those values. However, due to one possibility I didn't foresee, this script was coming up with a value of -0.1 for one of my timers, and thanks to an odd property (bug?) of SetTimerOption, it allows you to set a timer to a negative second value even though, needless to say, you can't do that by conventional means. Well, I had this -0.1 timer for a bit, and though I didn't test it thoroughly it seemed like it was functioning as a timer set to 0.9 seconds (I had a closely related timer that was set to 0.9, so maybe it was just mimicing the last timer to fire?). What got me worried though was that the next time I reloaded Mushclient and the world, the negative timer had apparently imploded and deleted itself. Nothing worse happened at the time, but now, a few days later, my world file looks to be irrecoverable.
I've tried reinstalling Mushclient and restarting my computer, but neither helped. Only the world file in question seems to be the problem; Mushclient is fine with any other world. Luckily, I have a backup from a few months back so I won't be starting from scratch. However, if anyone knows a way to recover triggers/aliases/timers/variables/etc from a world that you can't actually open, that would be ideal. Oh, also, I'm on Windows Vista and when I first switched from XP to Vista, I noticed that Mushclient under Vista recognizes a -0 while Mushclient under XP just treats 0 as 0, so I figure it might also be a Vista compatibility problem.
Anyway, not really sure what I'm asking here, but it's something to think about. |