Some muds require of sending combination buttons to them, like: "Control + U", "Control + X", "Control + I", and so on.
I don't have any idea how to do with mushclient. Still need Nick's help.
This makes an accelerator (Ctrl+I) which, when you hit it, sends Ctrl+I (hex 09) to the MUD.
You could make similar ones for the other letters. ("I" is the 9th letter, so "U" would be 21, and so on).
You would want to put this into a "startup" script (that runs on world open, for example). Make sure Lua scripting is enabled, and you have "/" as the script prefix.
Why do you want to send those? It is working against the way the client is designed somewhat. Those keys are supposed to scroll around your command window, not be sent directly.
For example, backspace backspaces the last thing typed in the command window.
Are you sure you want to use MUSHclient for whatever it is you are doing?
I can think of some use cases where I would actually want to send those characters to the server. I mentioned a character mode a while ago where a MUD could implement shell-like autocompletion, which would require that characters be sent one at a time -- this is an immediate extension of that idea.
Now, maybe it is pushing the envelope a bit, but I would definitely like to have that power during, say, OLC.
Directionals are sometimes done using the ascii, for some. For example, "line feed" is *technically* the same as down arrow, even though it doesn't end up working that way, instead replacing "carriage return", or the combo of the two, which as I said some place else, is *technically* the correct sequence. However, most telnet systems that used a character by character system probably use the "code" for a character, which unfortunately would screw up UTM-8 and Unicode, both. Why? Because, I am not sure what it would do with UTM-8, but in unicode a two character code in the "0 + X" set is the "standard ascii" letter for that, not a function key. The correct codes, if using something that doesn't know about Unicode/UTM-8 are the ones generated by the keyboard codes, and those are:
Up - 0 + 72
Down - 0 + 80
Left - 0 + 75
Right - 0 + 77
PgUp - 0 + 73
PgDn - 0 + 81
Home - 0 + 71
End - 0 + 79
Basically, there is no direct way to send them normally, and if you are using UTM-8 or Unicode, I am not sure they supply any way to send command codes at all, other than the basic set. Now, on Apple IIs, they did use the ascii for it, I think it was something like:
up = ?? VT maybe?
down = LF
Right = HT
Left = BS
Noting that BS does not "erase" a character, it merely moves you "back one space", so you can type over the last position. FF was used as a sort of PgDn, since that "scrolls" the entire visible page off the screen. It was the only way Apple IIs could "do" a clear screen. Other things like PgUp or Home/End, where a bit iffier. Maybe EOT for End, but again, no "Home", unless they where using SOH... Lets face it, modern clients, with all the fancy stuff they do, are not really meant to do character by character negotiation, or handle the use of things like PgUp/PgDn.
Now, this isn't to say you couldn't *if* you had a relatively modern keyboard (like all of them now), and you assigned the "keypad" set as ones to send to the mud, and the separate set as ones to "control the client". But, a) reading which is which is more complicated than just getting the basic codes, and b) in Mushclient the keypad is used for movement of the character. Mind you, turning on/off numlock isn't that hard, so, it might be possible. Its just more complicated, since the client doesn't know the difference, as far as I know, between the _|_ version of the arrows/paging keys and the keypad. I can't be sure though, since I don't know how the internals of the accelerators work, or if those "correctly" return the "state" of the numlock, or just the keycode, without testing the state first. In other words, the raw code might say, "Keypad home", but something else would be needed to check, "Is Numlock on?"
It would be better if supplying: Home, PageUp, PageDown, End.
Can you please explain why you want to do this?
PageDown key causes an event that the program traps, and causes the page to scroll up or down.
There is no single "page down" ASCII character you can send to a MUD, although no doubt there is a telnet sequence (series of bytes) that some telnet servers will recognise.
This is so far removed from normal requests I get for MUDding, I am wondering if you are talking to a MUD at all. Can you tell me which one it is?
I wish mushclient can do all the things that telnet can do.
But it won't. Next thing you will want is cursor addressing of the output buffer. Stuff like clear screen, positioning the cursor to anywhere on the screen, and so on.
It isn't designed for that.
If you want a telnet client try PuTTY like I suggested, or something else along those lines.
Unfortunately for you, the issue of full telnet emulation has come up over and over again in the forums and due to deep-set technical reasons, it is quite unlikely that Nick will change that. (His reasons, incidentally, are good.)
Fortunately for you, MUSHclient is now fully open source, so you or somebody else is welcome to make this change. :-)
I am wondering if you are talking to a MUD at all. Can you tell me which one it is?
Ocean:
Quote:
There are so many games embedded in telnet servers.
You haven't exactly answered my question. If you tell me the name of one I can look at it and perhaps help you better.
Quote:
For me it is used primaryly for grabbing life information though. Whereupon it uses direction buttons often to manipulate this system.
So that you could easily read any information you want.
Somehow I don't think this will work. Maybe we can send the telnet sequence (try Google for "telnet sequence arrow keys"), but MUSHclient is not designed to move the cursor around when the server responds to them.
It is the wrong program for the job. It isn't designed to do that. Try PuTTY or another program which is designed to handle (and send) telnet sequences.
Quote:
It's a foreign website. telnet ptt.cc
Ah I see. Doesn't look like a MUD. A MUD client won't help you there.