I've been trying to get GMCP to work in TT++ with Genesis, without much success. I'm not that worried about how to handle the data sent from Genesis but I am struggling with establishing communication. I've tried GMCP in aardwolf and it worked so should be a problem specific to Genesis. I realize that maybe you are not aware how tt++ handles GMCP but maybe information about the handshaking process could help sort things out.
As a base im defining the following commands:
Code: Select all
#format IAC %a 255
#format DONT %a 254
#format DO %a 253
#format WONT %a 252
#format WILL %a 251
#format SB %a 250
#format SE %a 240
#format GMCP %a 201
#config {debug telnet} {on}
#var CLIENT_NAME TinTin++
#var CLIENT_VERSION 2.00.9
#event {IAC WILL GMCP}
{
#send {$IAC$DO$GMCP\};
#send {$IAC$SB$GMCP Core.Hello { "client": "$CLIENT_NAME", "version": "$CLIENT_VERSION" } $IAC$SE\};
#send {$IAC$SB$GMCP Core.Supports.Set [ "Core 1", "Char 1", "Room 1"] $IAC$SE\};
}
I recieve the following from the server upon connection:
Code: Select all
RCVD IAC WILL GMCP
Code: Select all
IAC SB GMCP core.goodbye IAC SE
For some reason my 'Core.Hello' does not work, also since the Core.Hello doesnt work I guess the 'Core.Supports.Set' doesnt work neither. I got GMCP to work in mudlet but I have no idea how its doing the handshaking. Any ideas on what I should write to get it to work? Is it something serverside that says my client is invalid or something? Can I try pretending to be some other client to force Genesis to send me data?
I made a core.goodbye event which print some nonsense on my screen when it is recieved so the events are clearly working, as in doing something when something is recieved.
Lastly I want to say I dont actually play aardmud I just tried it for the GMCP

Approciate some help!