[SOLVED] Discworld GMCP

Post Reply
chosig
Posts: 13
Joined: Sun Dec 13, 2009 10:08 am

[SOLVED] Discworld GMCP

Post by chosig »

I can't for my life get Mudlet to negotiate GMCP with Discworld (LP - FluffOS driver).

Mudlet gets GMCP up and running with IRE muds (checked).
Discworld sends GMCP - checked with Tintin++ and Tinyfugue.

Is it possible to enable superverbose output when run to a terminal to see exactly what's sent/received?

This is what's spat out to the terminal when running mudlet and connecting. I've tried all options that I can think of enable/disable MXP (both client and server side) etc.

Code: Select all

[gunnar@elite ~]$ mudlet
Object::connect: No such slot TLuaInterpreter::slotSelect(int,QString,int) in TLuaInterpreter.cpp:85
Object::connect: No such slot TLuaInterpreter::slotSelectSection(int,int,int) in TLuaInterpreter.cpp:86
Object::connect: No such slot TLuaInterpreter::slotSetFgColor(int,int,int,int) in TLuaInterpreter.cpp:90
Object::connect: No such slot TLuaInterpreter::slotSetBgColor(int,int,int,int) in TLuaInterpreter.cpp:91
RESTORING MAP 
auditExits runtime: 0 
statistics: areas: 0 
area exit stats: QMap() 
auditExits runtime: 0 
statistics: areas: 0 
area exit stats: QMap() 
Object::connect: No such slot TLuaInterpreter::slotSelect(int,QString,int) in TLuaInterpreter.cpp:85
Object::connect: No such slot TLuaInterpreter::slotSelectSection(int,int,int) in TLuaInterpreter.cpp:86
Object::connect: No such slot TLuaInterpreter::slotSetFgColor(int,int,int,int) in TLuaInterpreter.cpp:90
Object::connect: No such slot TLuaInterpreter::slotSetBgColor(int,int,int,int) in TLuaInterpreter.cpp:91
RESTORING MAP 
auditExits runtime: 0 
statistics: areas: 0 
area exit stats: QMap() 
auditExits runtime: 0 
statistics: areas: 0 
area exit stats: QMap() 
[LOADING PROFILE]: "/home/gunnar/.config/mudlet/profiles/Discworld/current//14-05-2012#08-02-12.xml" 
module flag: 0  importing:  "" 
[ERROR]: UNKNOWN Host Package Element:name= "" text: ";" 
[ERROR]: UNKNOWN Host Package Element:name= "commandSeperator" text: "" 
loading modules now 
OK we are willing to enable telnet option TERMINAL_TYPE
OK we are willing to enable telnet option NAWS
MCCP v2 negotiated!
SORRY, we are NOT WILLING to enable this telnet option.
TELNET IAC DO GMCP
server sends telnet option terminal type
checking mccp start seq...
MCCP version 1 starting sequence
-1,-6,86,-1,-16
server sends telnet option terminal type
x= 47  y= 80 
x= 122  y= 118 
x= 65  y= 21 
x= 110  y= 198 
x= 62  y= 210 
Last edited by chosig on Tue May 15, 2012 5:53 am, edited 1 time in total.

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

Re: Discworld GMCP

Post by Heiko »

I've set latest git to full verbose telnet mode. GMPC works fine on a number of different non ire MUDs also, so it's most likely some discworld issue here. Verify with Aardwolf, Materia Magica, Lithmeria etc..

chosig
Posts: 13
Joined: Sun Dec 13, 2009 10:08 am

Re: Discworld GMCP

Post by chosig »

Seems to be a Discworld issue, it's confirmed to work with Aardwolf.

Compiling latest git.

chosig
Posts: 13
Joined: Sun Dec 13, 2009 10:08 am

Re: Discworld GMCP

Post by chosig »

This is what I get with latest git:

Code: Select all

[gunnar@elite src]$ ./mudlet
Object::connect: No such slot TLuaInterpreter::slotSelect(int,QString,int)
Object::connect: No such slot TLuaInterpreter::slotSelectSection(int,int,int)
Object::connect: No such slot TLuaInterpreter::slotSetFgColor(int,int,int,int)
Object::connect: No such slot TLuaInterpreter::slotSetBgColor(int,int,int,int)
RESTORING MAP 
BUILD AREAS run time: 0 
auditExits runtime: 0 
statistics: areas: 0 
area exit stats: QMap() 
BUILD AREAS run time: 0 
auditExits runtime: 0 
statistics: areas: 0 
area exit stats: QMap() 
Loaded the font the file VeraMoBd.ttf
Loaded the font the file VeraMoBI.ttf
Loaded the font the file VeraMoIt.ttf
Loaded the font the file VeraMono.ttf
Object::connect: No such slot TLuaInterpreter::slotSelect(int,QString,int)
Object::connect: No such slot TLuaInterpreter::slotSelectSection(int,int,int)
Object::connect: No such slot TLuaInterpreter::slotSetFgColor(int,int,int,int)
Object::connect: No such slot TLuaInterpreter::slotSetBgColor(int,int,int,int)
RESTORING MAP 
BUILD AREAS run time: 0 
auditExits runtime: 0 
statistics: areas: 0 
area exit stats: QMap() 
BUILD AREAS run time: 0 
auditExits runtime: 0 
statistics: areas: 0 
area exit stats: QMap() 
[LOADING PROFILE]: "/home/gunnar/.config/mudlet/profiles/Discworld/current//14-05-2012#13-46-28.xml" 
module flag: 0  importing:  "" 
[ERROR]: UNKNOWN Host Package Element:name= "" text: ";" 
[ERROR]: UNKNOWN Host Package Element:name= "commandSeperator" text: "" 
reading package end 
ActionUnit::updateToolBar() 
CALLED!!! 
loading modules now 
CLIENT SENDING Telnet:  "WONT"   3 
SERVER send telnet signal: "DO"  +  24 
telnet: sever wants us to enable option:
server wants us to enable telnet option (TN_DO + )
OK we are willing to enable telnet option TERMINAL_TYPE
CLIENT SENDING Telnet:  "WILL"   24 
SERVER send telnet signal: "DO"  +  31 
telnet: sever wants us to enable option:
server wants us to enable telnet option (TN_DO + )
OK we are willing to enable telnet option NAWS
CLIENT SENDING Telnet:  "WILL"   31 
SERVER send telnet signal: "WILL"  +  86 
CLIENT SENDING Telnet:  "DO"   86 
MCCP v2 negotiated!
SERVER send telnet signal: "DO"  +  91 
telnet: sever wants us to enable option:[
CLIENT SENDING Telnet:  "WILL"   91 
SERVER send telnet signal: "WILL"  +  70 
CLIENT SENDING Telnet:  "DONT"   70 
SERVER send telnet signal: "WILL"  +  93 
CLIENT SENDING Telnet:  "DONT"   93 
SERVER send telnet signal: "DO"  +  39 
telnet: sever wants us to enable option:'
server wants us to enable telnet option '(TN_DO + ')
SORRY, we are NOT WILLING to enable this telnet option.
CLIENT SENDING Telnet:  "WONT"   39 
SERVER send telnet signal: "DO"  +  201 
telnet: sever wants us to enable option:
TELNET IAC DO GMCP
CLIENT SENDING Telnet:  "WILL"   201 
SERVER send telnet signal: "250"  +  24 
server sends telnet option terminal type
checking mccp start seq...
MCCP version 1 starting sequence
-1,-6,86,-1,-16
SERVER send telnet signal: "250"  +  91 
SERVER send telnet signal: "WILL"  +  1 
CLIENT SENDING Telnet:  "DO"   1 
SERVER send telnet signal: "249"  +  0 
cTelnet::processTelnetCommand() command = TN_GA
SERVER send telnet signal: "WONT"  +  1 
cTelnet::processTelnetCommand() TN_WONT command=
cTelnet::processTelnetCommand() we dont accept his option because we didnt want it to be enabled
CLIENT SENDING Telnet:  "DONT"   1 
SERVER send telnet signal: "249"  +  0 
cTelnet::processTelnetCommand() command = TN_GA
SERVER send telnet signal: "249"  +  0 
cTelnet::processTelnetCommand() command = TN_GA

Daagar
Posts: 89
Joined: Fri Feb 19, 2010 2:42 am

Re: Discworld GMCP

Post by Daagar »

Apparently this worked at one point in time, as I found an example script that makes use of it on their wiki: http://discworld.imaginary-realities.co ... ips#Mudlet

EDIT: Using the scripts provided at the link above, and chris' github fork of mudlet on a Win7 x64 system, GMCP seems to work fine.

chosig
Posts: 13
Joined: Sun Dec 13, 2009 10:08 am

Re: Discworld GMCP

Post by chosig »

Aha, thanks.
It seems like the "default" negotiation fails.
But if you make a script and register the event handler onConnect to it and put
Code: [show] | [select all] lua
sendGMCP("core.supports.set [\"Char.Vitals\"]")
in it GMCP is jumpstarted.

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

Re: [SOLVED] Discworld GMCP

Post by Vadi »

We'll have to add that note to the wiki. Right now Mudlet only enables IRE-relevant modules:

Code: Select all

_h += "Core.Supports.Set [ \"Char 1\", \"Char.Skills 1\", \"Char.Items 1\", \"Room 1\", \"IRE.Composer 1\"]";
With everyone else getting GMCP (good), we can't make a list so the user should enable what they need.

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

Re: [SOLVED] Discworld GMCP

Post by Vadi »

http://wiki.mudlet.org/w/Manual:Supported_Protocols

Can you check if using gmod.enableModule("aardwolf", "Char.Vitals") works for you? That would be the preferred Mudlet way.

Post Reply