Notice: Any messages purporting to come from this site telling you that your password has expired, or that you need to verify your details, confirm your email, resolve issues, making threats, or asking for money, are
spam. We do not email users with any such messages. If you have lost your password you can obtain a new one by using the
password reset link.
Entire forum
➜ MUSHclient
➜ General
➜ Display Problem
It is now over 60 days since the last post. This thread is closed.
Refresh page
Posted by
| Fadedparadox
USA (91 posts) Bio
|
Date
| Wed 01 Jul 2009 01:44 AM (UTC) Amended on Wed 01 Jul 2009 01:45 AM (UTC) by Fadedparadox
|
Message
| I'm not sure if this is a problem in MUSHclient, or with one of my settings. In some lines in Achaea where the text from titles is too long, it displays an unprintable character (odd square) for every letter that is too long. My guess is Achaea send some sort of 'backspace' char that MUSHclient isn't recognizing. Any enlightenment would be helpful.
Here's what I see:
http://sites.google.com/site/trevizemoonflair/stuff/temp_mush.png
And here's the section of the packet involved:
the Apocalypse, 20 74 68 65 20 41 70 6f 63 61 6c 79 70 73 65 2c
.[36mImyrr.[37m 20 1b 5b 33 36 6d 49 6d 79 72 72 1b 5b 33 37 6d
Rousseau, Angel 20 52 6f 75 73 73 65 61 75 2c 20 41 6e 67 65 6c
of Destruction. 20 6f 66 20 44 65 73 74 72 75 63 74 69 6f 6e 08
6 On Occulti 20 20 36 20 20 4f 6e 20 20 4f 63 63 75 6c 74 69
It displays fine in every other MUD client I've tried. | Top |
|
Posted by
| Nick Gammon
Australia (23,122 posts) Bio
Forum Administrator |
Date
| Reply #1 on Wed 01 Jul 2009 03:45 AM (UTC) Amended on Wed 01 Jul 2009 07:32 AM (UTC) by Nick Gammon
|
Message
| That is really weird. Why on earth would a server send backspaces out like that? I mean, if you edit a document in notepad, and find a misspelt word (like "doog") and position the cursor to the right of the second "o" and hit backspace, then the "o" should be removed. It doesn't store: "doo\08g" in the document, and hope that the person looking at it will think "Oh, I have to backspace out that o there".
Let me put it another way - backspace is intended for humans to correct typing errors, so you backspace them out. It isn't really intended for servers (which are machines) to send out text and then "oops I meant to omit that last character, here I'll transmit a backspace, you do it for me".
Anyway, after my rant, see this thread:
http://www.gammon.com.au/forum/bbshowpost.php?id=5724
(Warning - another rant in there - also a solution in the form of a plugin).
Also see:
http://www.gammon.com.au/forum/bbshowpost.php?bbsubject_id=4283
In that thread I point out that, what is supposed to happen if the server "backspaces" out a newline? Is the newline there or not? Bear in mind that MUSHclient process newlines as they are received (which is when triggers are processed), it doesn't look ahead to see if there is a backspace further on (especially as "further on" might be in a packet which hasn't been received yet).
|
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Nick Gammon
Australia (23,122 posts) Bio
Forum Administrator |
Date
| Reply #2 on Wed 01 Jul 2009 03:55 AM (UTC) |
Message
| Just before I totally calm down - isn't it amazing there servers are *still* doing this? This issue was raised in 2004 and then in 2005.
A server is sending out a who list, and if names are too long, it doesn't simply truncate them - which is the logical thing to do - to fit into the list. Instead it sends out the too-long name, followed by backspace characters. This is just adding to the amount of data that needs to be sent in the first place - it also is likely to throw out any triggers which are set to match on that line.
I mean, what happens if they want to limit a chat message to 100 characters, but someone types in 200 characters. Do they send out the 200 characters followed by 100 backspaces? The whole thing is crazy. |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| David Haley
USA (3,881 posts) Bio
|
Date
| Reply #3 on Wed 01 Jul 2009 06:03 PM (UTC) |
Message
| Almost seems like it's more work to do the whole backspace thing than to just print out the string with the appropriate cap in the first place. What a bizarre thing to do. |
David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone
http://david.the-haleys.org | Top |
|
Posted by
| Shadowfyr
USA (1,788 posts) Bio
|
Date
| Reply #4 on Wed 01 Jul 2009 06:58 PM (UTC) |
Message
| The code they are using is probably borrowed from much earlier code for the old BBS systems, whose clients fully supported backspace as both incoming and outgoing data, when editing things. Someone simply never bothered to "fix" it, since at the time there probably wasn't a lot of "left(<string>, <number>)" functions around, and those that did exist would probably have taken "more" time than sending the sequences.
Its rather absurd, but understandable, if someone used old code, then figured on all clients working with it anyway, so didn't bother to apply something saner to it. | Top |
|
Posted by
| David Haley
USA (3,881 posts) Bio
|
Date
| Reply #5 on Wed 01 Jul 2009 08:09 PM (UTC) |
Message
|
Quote: Someone simply never bothered to "fix" it, since at the time there probably wasn't a lot of "left(<string>, <number>)" functions around, and those that did exist would probably have taken "more" time than sending the sequences.
Sorry, I don't agree with the claim that it's more efficient to send backspaces. The correct solution would be to simply say: from string X, output at most 80 characters. Sending backspaces requires you to first count how many characters are in the string, and then send the appropriate number of backspaces.
So far it strikes me as very odd pretty much no matter how you look at it. |
David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone
http://david.the-haleys.org | Top |
|
Posted by
| Fadedparadox
USA (91 posts) Bio
|
Date
| Reply #6 on Wed 01 Jul 2009 10:22 PM (UTC) Amended on Wed 01 Jul 2009 10:23 PM (UTC) by Fadedparadox
|
Message
| I do agree it's silly for the MUD, and I have emailed the admins about it at least once before. It is lazy coding on the part of whoever did it. But I still have to live with it doing it since they haven't fixed it.
I did get the plugin, thanks! Nick, would you mind if I hosted this on my site, for Achaea plugins? I'd give you credit, of course, and leave it in its original form. | Top |
|
Posted by
| Nick Gammon
Australia (23,122 posts) Bio
Forum Administrator |
Date
| Reply #7 on Thu 02 Jul 2009 01:13 AM (UTC) |
Message
| Sure, go ahead. |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Fadedparadox
USA (91 posts) Bio
|
Date
| Reply #8 on Thu 02 Jul 2009 01:42 AM (UTC) Amended on Sat 04 Jul 2009 08:24 AM (UTC) by Fadedparadox
|
Message
| Thanks! It's now here:
http://sites.google.com/site/trevizemoonflair/plugins/backspace | Top |
|
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.
31,079 views.
It is now over 60 days since the last post. This thread is closed.
Refresh page
top