The upshot was that a trigger which turned text bold was responsible. Further testing indicated that this only applied to certain fonts, amongst which were Courier and Arial.
A couple of suggested fixes:
As a work-around, turn off Font -> Show -> Bold in the Output world configuration.
Use other fonts, for example, Dina.
Problems with fonts have been reported by other Windows 7 users (nothing to do with MUSHclient). Some have suggested replacing the problem fonts with copies from another computer.
I'm not sure this is a MUSHclient bug. For the same world and configuration to work under Windows XP, and then switching to Windows 7 causing the problem appears to suggest a Windows 7 issue.
Also, no-one else has reported this. I should point out that a Google search for:
Removed all plugins, upgraded MUSH and it still crashed.
So everytime I was stunned I would crash. I used this to try and figure out the cause of the crash. I put in the short timer to flush the log, changed logging to raw, added your alias.
I tried to crash the client and it wouldn't crash. I added plugins and still no crash.
I don't know what happened. I'll see if I can duplicate it another way.
I've changed logging back to the original settings and removed the timer for now.
I am running the exact same setup on a Win XP desktop and a Win 7 laptop - both were installed but I use a flash drive to keep both up to date regarding world files and script.
Win XP never crashes. Win 7 crashes all the time in combat.
I'll upgrade in a minute and let you know what happens.
The latest version is currently 4.70. This may fix the crashes, maybe not.
I would be grateful if someone can create a minimal configuration that crashes (that is, narrow things down to a particular plugin, or group of plugins).
Then I could reproduce that under the debugger and work out what is going on.
If that isn't possible, at least please upgrade to version 4.70 temporarily, then use the debug "summary" plugin to list what plugins (and other stuff) you have, and post that here.
Please provide a summary of your world configuration:
Either use the scripting Immediate window (Ctrl+I) to execute: Debug ("summary")
or
Install the Summary plugin (see
"Summary" feature) and type "summary"
Then copy the resulting information from the output window, and paste into a Forum message.
You need version 4.55 onwards of MUSHclient to do this.
Do this before the crash, but after loading the world file and any plugins you usually use. Also report whether or not it crashes, and roughly under what circumstances (eg. immediately you connect, during combat, when you exit the world, that sort of thing).
Then if it still crashes downgrade back to version 4.44 while we try to work out what it might be.
I haven't had issues with any crashing in Python in years. Last time I had that issue was with the not returning ints from callbacks, so no, I don't have issues.
In the worst case, I have a ~5 year old plugin to offer that has several thousand triggers, passive threading and so forth - only issue is it probably doesn't really work anymore on the game it was made for.
But that's only if you can't find something simpler to test with. ;)
Could be even more brilliant if there was some sort of timestamps plus Simulate()ing at the proper intervals going on.
I can imagine this one messes up scripts that depend heavily on timers with regards to commands (not) going through, sending them into a possibly inconsistent state compared to the original.
Amended on Tue 26 Oct 2010 03:21 AM (UTC) by Nick Gammon
Message
There were so many changes in version 4.62 it is hard to know where to start looking. Major source reorganizations might have caused an important line to be omitted, or things might work in subtly different ways, as was demonstrated with the problem with the Chat system callbacks.
What might work is this:
Use a version that does *not* crash (eg. 4.61 or whatever is required)
Turn on logging of everything (without adding stuff like preambles) so we have a record. Consider using "raw" logging which logs everything as received, including colour codes etc.
The suggested alias below assumes a raw log - this will retain the colours and other codes which might be causing it.
Try to do the things that would cause a crash on a later version. (eg. get into combat, get stunned etc.)
Turn off logging and go back somewhere safe
Switch to a more recent version of MUSHclient, one that crashes.
Replay the log file (see alias below) - hopefully the logged input will reproduce the crash. If so, start up the client again and start removing plugins until the crash goes away (replay the log file each time)
If possible, cut the log file into pieces and replay each piece to try to work out which bit of input causes it.
This method should let you work out what is causing the crash without actually having to die in combat due to a client crash.
Alias to replay a log file (type "replay_log")
<aliases>
<alias
match="replay_log"
enabled="y"
send_to="12"
sequence="100"
>
<send>
fname = utils.filepicker ("Choose log file to process" )
if not fname then
return -- cancelled dialog
end
-- open log file
f = assert (io.open (fname, "r"))
-- read all into memory
s = f:read ("*a")
-- close log file
f:close ()
-- push through as if it were typed in
Simulate (s)
</send>
</alias>
</aliases>
From talking in game, I gather that 4.61 is not affected; it doesn't only happen when he's stunned; and it does not happen when just walking around, but does happen when bashing.
(MUSHclient Users): You say, "Have you tried it with no triggers, no aliases, no plugins?"
(MUSHclient Users): Dontarion says, "Tried what, going into shallam and get shanked? No."
(MUSHclient Users): Dontarion says, "I've tried having people trigger it in Mhaldor but nothing worked."
It hasn't affected me, but then I don't do combat much at all.
MUSHclient doesn't know you are stunned, per se, so it must be something a plugin does when you get stunned. If you can isolate it down a bit (eg. what happens in the plugins when you get stunned) that would be good.
The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).
To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.