Help Index :: Misc :: GMCP

MUD Client Integration / GMCP Support

Some clients support the ability for a game to send information to the client
that doesn't show up on the screen. This can be used by your client to set
variables that can be used in triggers, scripts, etc. TFE supports the GMCP
standard. This help file outlines the data available to your client via GMCP.

Base Objects:
Char - information about your character
Group - Information about your group
Room - information about the room your character is in
External - information about Discord
Channels - public/private chats your character can see

Char Object:
Affects - temporary, leeches, from objects, etc.
Fighting - array containing who you are fighting + their condition
Prepare - counts of spells prepared
Score - level, xp, xp_needed, xp_level
Status.conditions - hungry, thirsty, etc.
Status.flags - burdened, parry, etc.
Stats.Combat - amount of damage dealt in the last round
Vitals - hp, maxhp, en, maxen, mv, maxmv

Room Object:
Info - name, vnum, weather, wind, area, area_id
Info.flags - safe, pkill, bank, etc.
Info.exits - direction name is key, target room vnum is value
Info.exit_info. - name, vnum, terrain, area, area_id (of target room)

Group Object:
Group - leader, looter, minmv
Group.members - player/pet name is key, will contain hp, en, mv, etc.

External Object:
Discord.Info - inviteurl, applicationid (used by Mudlet)
Discord.Status - details, state (information about your character)

Channels Object:
Channels.OOC - who, when, message
Channels.Tell - who, when, message, direction (sent/received)
(All major channels should be present in the Channels object)

Note: only the last chat message will be present in the Channels object for
each channel. The intention is that players will use GMCP events to intercept
message as they arrive and move to a chat tab, process, etc.
See 'help GMCP.Channels' for more information.

Examples:
Char.Vitals.hp will contain your current hitpoints
Room.Info.area will contain the name of the area you are in
Room.Info.exits.north will contain the vnum of the room to the north
Room.Info.exit_info.north will contain name, vnum, terrain, etc. of the room to the north