Mxp issues

  • insanesnwbrdr
  • insanesnwbrdr's Avatar Topic Author
  • Offline
  • New Member
17 Dec 2015 07:50 #1 by insanesnwbrdr
Mxp issues was created by insanesnwbrdr
Hey could you please take a look and see if this is something easy to fix?

When Mxp is turned on I get no output from the game in scroll view but I can see it in the console.

Please Log in or Create an account to join the conversation.

17 Dec 2015 15:52 #2 by plamzi
Replied by plamzi on topic Mxp issues
When a player enters the game, there seems to be an MXP package without a closing tag.

In the dump below, notice that there's an ESC [ 6 z, but nothing of the kind when the package ends and user-visible output begins.

if you didn't know already, adding &debug=1 to your app url helps troubleshoot such issues in the browser console log. For example, in this case you will see a console message: "mxp split protection waiting for more input: 1". This means the client is waiting for a closing tag to arrive.
[6z<!-- Elements to support the Automapper -->


<SUPPORT destination iframe>

<!ELEMENT RName '<B>' FLAG="RoomName">


<!ELEMENT RExits '<FONT COLOR=Blue>' FLAG='RoomExit'>

<!-- ********************************************************************* -->

<!-- The next element is used to define a room exit link that sends the exit direction to the MUD if the user clicks on it -->

<!ELEMENT EX '<SEND HREF="&text;|LOOK &text;|OPEN &text;|CLOSE &text;|LOCK &text;|UNLOCK &text;" hint="Right-Click to affect the exit|&text;|LOOK &text;|OPEN &text;|CLOSE &text;|LOCK &text;|UNLOCK &text;">'>

<!ELEMENT MEX '<SEND HREF="ENTER &text;|LOOK &text;|OPEN &text;|CLOSE &text;|LOCK &text;|UNLOCK &text;" hint="Right-Click to affect the exit|ENTER &text;|LOOK &text;|OPEN &text;|CLOSE &text;|LOCK &text;|UNLOCK &text;">'>

<!-- ********************************************************************* -->

<!-- tags dealing with room items -->

<!ELEMENT CRItem '<SEND HREF="GET &quot;&text;&quot; from &quot;&container;&quot;" hint="Click to get from object|GET &text; from &container;">'>

<!ELEMENT CMItem '<SEND HREF="GET &quot;&text;&quot; from &quot;&container;&quot;" hint="Click to get from object|GET &text; from &container;">'>

<!ELEMENT MItem '<SEND HREF="WEAR &text;|DROP &text;|LOOK &text;|DRINK &text;|EAT &text;|HOLD &text;|READ &text;" hint="Right-Click to use this object|WEAR &text;|DROP &text;|LOOK &text;|DRINK &text;|EAT &text;|HOLD &text;|READ &text;">'>

<!ELEMENT EItem '<SEND HREF="REMOVE &text;|LOOK &text;" hint="Right-Click to use this object|REMOVE &text;|LOOK &text;">'>

<!ELEMENT RItem '<SEND HREF="GET &name;|LOOK &name;|DRINK &name;|READ &name;" hint="Right-Click to use this object|GET &name;|LOOK &name;|DRINK &name;|READ &name;">' ATT='name'>

<!ELEMENT RMob '<SEND HREF="CONSIDER &name;|LOOK &name;|KILL &name;" hint="Right-Click to affect this creature|CONSIDER &name;|LOOK &name;|KILL &name;">' ATT='name'>

<!ELEMENT WItem '<SEND HREF="LOOK &name;|READ &name;" hint="Right-Click to use this object|LOOK &name;|READ &name;">' ATT='name'>

<!-- ********************************************************************* -->

<!-- miscellaneous tags -->


<!ELEMENT HELP '<SEND HREF="HELP &text;" hint="Click to view the help entry.">'>

<!ELEMENT HELPNAME '<SEND HREF="HELP &name;" hint="Click to view the help entry.|HELP &text;">' ATT='name'>

<!ELEMENT SHOP '<SEND HREF="VIEW &quot;&text;&quot; &quot;&shopkeeper;&quot;|BUY &quot;&text;&quot; &quot;&shopkeeper;&quot;" hint="Right-Click to use this object|VIEW &quot;&text;&quot; &quot;&shopkeeper;&quot;|BUY &quot;&text;&quot; &quot;&shopkeeper;&quot;">'>

<!ELEMENT Health EMPTY ATT='name'>

<!ELEMENT HealthText EMPTY ATT='name'>

<!ELEMENT TELL '<SEND HREF="TELL &name;" PROMPT hint="Click to reply.|TELL &name;">' ATT='name'>

<!ELEMENT SAY '<SEND HREF="SAY &quot;&name;&quot; " PROMPT hint="Click to reply.|SAY &quot;&name;&quot;">' ATT='name'>

<!ELEMENT WHISPER '<SEND HREF="WHISPER &quot;&name;&quot; " PROMPT hint="Click to reply.|WHISPER &quot;&name;&quot;">' ATT='name'>

<!ELEMENT GTELL '<SEND HREF="GTELL" PROMPT hint="Click to reply.|GTELL">' ATT='name'>

<!ELEMENT CHANNEL '<SEND HREF="&name; " PROMPT hint="Click to reply.|&name; ">' ATT='name'>

<!ELEMENT CHANNELS '<SEND HREF="&extra;&text;" hint="Click to toggle on/off.|&extra;&text;">' ATT='extra'>

<!ELEMENT JRNL '<SEND HREF="READ &text; &quot;&name;&quot;" hint="Click to read.|READ &text; &quot;&name;&quot;">' ATT='name'>


<!ELEMENT CLAN '<SEND HREF="CLAN &text;" hint="Click for info.|CLAN &text;">' >

<!-- ********************************************************************* -->

<GAUGE hp Max=maxhp color=green Caption="Hit Points">

<GAUGE mana Max=maxmana color=yellow Caption="Mana">

<GAUGE move Max=maxmove color=white Caption="Movement">

<GAUGE vichp Max=vicmaxhp color=red Caption="Enemy Damage">

<!-- ********************************************************************* -->

<!-- here are some archon tool elements -->

<!ELEMENT LSTROOMID '<SEND HREF="GOTO &quot;&text;&quot;" hint="Click to goto.|GOTO &text;">' >

<!ELEMENT LSTUSER '<SEND HREF="SNOOP &text;|BOOT &text;|BAN &text;|MULTIWATCH ADD &text;" hint="Right-Click to use.|SNOOP &text;|BOOT &text;|BAN &text;|MULTIWATCH ADD &text;">' >

<!ELEMENT LSTQUEST '<SEND HREF="MODIFY QUEST &text;" hint="Click to start/stop.|MODIFY QUEST &text;">' >

<!-- ********************************************************************* -->

<!-- the next elements deal with the MUD prompt -->

<!ELEMENT Prompt FLAG="Prompt">


<!ELEMENT MaxHp EMPTY FLAG="Set maxhp">

<!ELEMENT Mana EMPTY FLAG="Set mana">

<!ELEMENT MaxMana EMPTY FLAG="Set maxmana">

<!ELEMENT Move FLAG="Set move">

<!ELEMENT MaxMove EMPTY FLAG="Set maxmove">


<SUPPORT image send gauge font b image.url sound.u>


[1;36mNew Room[0;37m [1;37m

[1;37mBrand new database room! You need to change this text with the MODIFY ROOM

command.  If your character is not an Archon, pick up the book you see here

and read it immediately![0;37m[0;37m
The following user(s) said Thank You: insanesnwbrdr

Please Log in or Create an account to join the conversation.

  • insanesnwbrdr
  • insanesnwbrdr's Avatar Topic Author
  • Offline
  • New Member
18 Dec 2015 01:47 #3 by insanesnwbrdr
Replied by insanesnwbrdr on topic Mxp issues
Thank you soo much for the help and in case you dont get it enough thank you for this project

Please Log in or Create an account to join the conversation.

24 Jul 2016 21:36 #4 by Splork
Replied by Splork on topic Mxp issues
Any chance there has been changes to MXP? I noticed today when I logged in via Mudportal Client that all of our room exits mxp are displaying the full string content. We havent altered this code in years and other clients are still showing correctly. This is taken from SlothMUD.

Please Log in or Create an account to join the conversation.

09 Aug 2016 14:53 #5 by plamzi
Replied by plamzi on topic Mxp issues
This is fixed, though in the quickest, not best, way possible

Please Log in or Create an account to join the conversation.

08 Mar 2019 00:47 #6 by aldie
Replied by aldie on topic Mxp issues
(did I hid submit the first time?)

Hi there, admittedly my first thought was that MXP is successfully negotiated and enabled using the telnet protocol.
I know realized that the portal app basically does not support any of the MXP tags we are using.

We are making excessive use of the !EL and !EN tags, but they are not understood. Maybe these shorter aliases could be allowed
too? I'm also surprised the <VERSION> tag is not understood. Unfortunately this screws (well, aborts) our MXP setup routines.

I'd thought <version> is a kinda mandatory mxp tag to support?

Finally, it would be a great thing if unknown/unsupported MXP tags were just silently ignored. As basically none of the MXP
primitives we use is supported, they are all printed out to the user which totally screws the text window. I think you should
just ignore unknown tags. I know, we can check for each one with <support>, but it is a bit complicated to adjust the mxp routines
at a per element level. At least when very basic ones like <VERSION>, <!EN>, <!EL> are missing.

Talking about <support>, screen shots show gauge but <support> say it has no <gauge> command. Is the output of the <support>
element correct?

Before you spent too much time here, there might be other issues and I'm not sure if fixing the above would already allow us to use
mxp in the portal app.. Though it certainly were cool.

Please Log in or Create an account to join the conversation.

09 Mar 2019 17:08 - 09 Mar 2019 17:10 #7 by plamzi
Replied by plamzi on topic Mxp issues
I've tweaked the MXP.process method to accept <!EL as a variant of <!ELEMENT. Both <!EN and <!ENTITY should be acceptable so I'm not sure what the issue is there. If you have JS chops, try to override the Config.mxp.process function with your own and do some debugging. You know the web app lets you run your own code, and it also lets game admins publish code that modifies the entire experience for their game. It's always been part of the plan to build something flexible.

If you can figure out how to override Config.mxp.process, you may also be able to figure out how to respond to <VERSION>. Let me know what the response you think should be and I'll try to plug it in on my next pass (but these are incidental, so you may need to wait a while).

Unsupported tags are not going to be stripped if we haven't negotiated MXP successfully in the first place, so once that is fixed, my guess is they will be. Or maybe something more complicated is going on, but honestly, I won't have the time to fire up a debugging session against your MUD, so I'm going to have to rely on your input about that.

The screenshots show an HTML/CSS web app module called MistyBars. It is documented here: The idea is to be able to drive these bars in multiple ways, sending vitals via MXP being only one of them. So I didn't list GAUGE in supported tags. This was so long ago, I'm not even sure GAUGE was on the menu back then.
Last edit: 09 Mar 2019 17:10 by plamzi.

Please Log in or Create an account to join the conversation.