MXP

User avatar
Heiko
Site Admin
Posts: 1548
Joined: Wed Mar 11, 2009 6:26 pm

Re: MXP

Post by Heiko »

The parser must be efficient and optimized for speed.

benh
Posts: 7
Joined: Sun Mar 13, 2011 6:06 pm

Re: MXP

Post by benh »

Yes I have been reading the MXP spec and can see it is not going to be a simple thing to code. I will delve into the libMXP code to see how it goes about parsing, to get a better understanding of the whole thing.

Thanks for the info on materiamagica.com.

Agree, no point having a slow parser

xtian
Posts: 12
Joined: Wed Aug 26, 2009 10:12 pm

Re: MXP

Post by xtian »

Note: KaVir mentioned the <SUPPORT> tag. Not all the MXP features can be disabled/enabled that way. Some features are compulsory per the standard. Obviously some implementations differ (which didn't help the mud servers adopt the standard). I try to get an indication of the compatible non-tag feature set by way of the MXP <VERSION> the client supports.

So version 0.4 added new escape sequences (which, by the way, are a minimum requirement for Avalon), version 1.2 added out-of-band transport over telnet subchannels.

...
I was going to post some useful links, but mudstandards.org seems to have gone off-line :(

Well, in a nutshell: I think you should try to support the <font color=...> mechanism, because, if I remember correctly, it is not optional. (how is a server supposed to know which feature subset a client really implements ...)

benh
Posts: 7
Joined: Sun Mar 13, 2011 6:06 pm

Re: MXP

Post by benh »

I have been reading about the MXP spec on www.zuggsoft.com, however the latest version detailed there seems to be v1.0, from march 2003. Do you have anything newer ? you mentioned version 1.2.
I assume it was hosted at mudstandards.org

User avatar
Vadi
Posts: 5035
Joined: Sat Mar 14, 2009 3:13 pm

Re: MXP

Post by Vadi »

You'll find that Cmud implements yet a different dialect of MXP... I remember running into some compatibility problems a while back.

benh
Posts: 7
Joined: Sun Mar 13, 2011 6:06 pm

Re: MXP

Post by benh »

I suppose different dialects are ok as long as it is documented, but isn't CMUD written by zuggsoft anyway ? I would assume it would conform to the standard on their own website

xtian
Posts: 12
Joined: Wed Aug 26, 2009 10:12 pm

Re: MXP

Post by xtian »

Hm, you can probably inquire with Zugg.

Here are some quickly collected links (you need access to his developer forums - register with site->groups):

New in 1.2 - subchannel communication: http://forums.zuggsoft.com/forums/viewtopic.php?t=34260
New in 1.2 - <REPORT>: http://forums.zuggsoft.com/forums/viewtopic.php?t=34261

A topic I started once to collect information about the different versions (pre 1.2): http://forums.zuggsoft.com/forums/viewtopic.php?t=34305


You should also definitely read this: http://www.gammon.com.au/mushclient/mxp.htm Nick Gammons design notes.

Telnet-negotiation part: http://www.gammon.com.au/forum/?id=221
List of tags mushclient understands (in the sense that you need'nt concern yourself with features/tags not even supported by mushclient): http://www.gammon.com.au/forum/?id=238
Element-Command: http://www.gammon.com.au/forum/?id=226
Colour-Names: http://www.gammon.com.au/mushclient/mxpcolours.htm

benh
Posts: 7
Joined: Sun Mar 13, 2011 6:06 pm

Re: MXP

Post by benh »

Ok, thanks for those links, they will be most helpful. I can see I have a lot of reading to do.

xtian
Posts: 12
Joined: Wed Aug 26, 2009 10:12 pm

Re: MXP

Post by xtian »

Vadi wrote:You'll find that Cmud implements yet a different dialect of MXP... I remember running into some compatibility problems a while back.
Well, let's put rumours aside, because I think these issues have already been addressed in the past and are just rumour-residues now. There are always bugs, aren't there? And atm I am not aware of any bugs, spec-wise, concerning the MXP implementation in the current CMUD.

The goal here should be, I think, to get a MXP implementation for the client which will be maximally compatible with servers out there. The difference in the client-implementations are (fortunately/unfortunately?) in details - except with libmxp, with which I had bigger problems - mainly because it just implemented a partial standard.

User avatar
KaVir
Posts: 86
Joined: Mon Feb 08, 2010 8:38 pm
Contact:

Re: MXP

Post by KaVir »

xtian wrote:version 1.2 added out-of-band transport over telnet subchannels.
Do any clients other than CMUD support that though? If you want to transmit data out-of-band, there are plenty of other (simpler) protocols to do it. I really don't think MXP needs any more baggage, support for it among clients is already spotty enough.

MUSHclient supports MXP 0.5, which covers the essentials without becoming overly complex. I think it would make sense to aim for the same feature set for Mudlet.
xtian wrote:I was going to post some useful links, but mudstandards.org seems to have gone off-line
Yeah, I noticed that yesterday - looks like it's gone for good :(
Vadi wrote:You'll find that Cmud implements yet a different dialect of MXP... I remember running into some compatibility problems a while back.
Zugg is rather notorious for not following his own standards :P I believe the main problem is that zMUD/CMUD displays unknown tags, to cater for sloppy implementations of MXP in certain muds - but because those muds only tested MXP using zMUD/CMUD, they never spotted their errors. Along comes MUSHclient and correctly hides incorrect tags, and players start complaining that MUSHclient is buggy.

There's some interesting information about it here: http://www.gammon.com.au/forum/bbshowpo ... 228&page=1

Post Reply