The Mud Connector

Author Topic: GUI snippet  (Read 9303 times)

KaVir

  • Jr. Member
  • **
  • Posts: 95
  • God Wars II
    • View Profile
    • God Wars II
RE: GUI snippet
« Reply #45 on: October 12, 2011, 6:19 PM »
While helping Splork get the snippet working in SlothMUD, we came across an interesting problem - it seems that the MXP specification doesn't actually define whether the server should initiate negotiation with IAC WILL MXP or IAC DO MXP.  While some clients therefore support both, others support only one or the other.  I've therefore updated the snippet to support both (it attempts one if the other fails).

There was also a complaint from another user about the MSSP table being cumbersome to update for non-static fields such as players and uptime.  I've therefore changed the table to use function pointers, which should make it much easier to update in future.

Scandum also asked me to change LIST to use an array, as per the latest specification, which I've done.

Other than that there were a couple of bugfixes, but nothing serious.  Here's the list of changes:

  • Added symbolic constants for MSDP_TABLE_OPEN/CLOSE and MSDP_ARRAY_OPEN/CLOSE.
  • MSDPSetArray() was using table values rather than the array values.  Fixed.
  • Added MSDPSendList(), used for the MSDP LIST command (updated to an array in the spec).
  • Doubled MAX_VARIABLE_LENGTH for the list variables.
  • Some of the LISTs had no separators between values when sent using ATCP.  Fixed.
  • The MSSP table now uses function pointers, making it easier to update dynamic fields.
  • Added support for both variants of MXP negotiation.

    You can download version 5 from the usual place.



    (Comment added by KaVir on Wed Oct 12 15:28:31 2011)

    It's also been updated in the MudBytes code repository.
  • KaVir at God Wars II: godwars2.org 3000
    Roomless world. Manual combat. Endless possibilities.


    ryanwstuck

    • New to TMC
    • *
    • Posts: 34
    • CyberASSAULT.org 11111
      • View Profile
    RE: GUI snippet
    « Reply #46 on: October 26, 2011, 2:11 AM »
    hey kavir. been playing with the gui a bit and have a lot of ideas for it. check out what i have so far

    http://i.imgur.com/mi5K9.jpg


    KaVir

    • Jr. Member
    • **
    • Posts: 95
    • God Wars II
      • View Profile
      • God Wars II
    RE: GUI snippet
    « Reply #47 on: November 19, 2011, 9:00 PM »
    Version 6 is now available from MudBytes, and contains the following changes:

  • Removed a stray semicolon.

    The "if ( !pProtocol->bMSDP );" statement had a semicolon at the end, which should be removed.  This bug has very little impact, as MSDP already overrides ATCP, but it does mean that if the user's client supports both MSDP and ATCP, they will be sent the SERVER_ID variable twice.

  • Made it easier to add MCCP support.

    Quite a few muds already support MCCP, and had trouble getting it working with the snippet - particularly if they were using copyover as well.  So I've improved the documentation and made it easier to integrate.

  • Made several minor updates to the installation instructions.

    The INSTALL_MERC.TXT had actually been written for GodWars rather than Merc, and relied on a couple of GodWars-specific changes.  It's been updated to work with both, and now also defines MSDP_CLASS.  The INSTALL_TBA.TXT instructions now define MSDP_CLASS as well.

  • Added an INSTALL_ROM.TXT.

    Although the ROM instructions are very similar to Merc, there are a few minor differences, and someone had trouble adding it to their ROM derivative.  So I added another set of installation instructions.




  • KaVir at God Wars II: godwars2.org 3000
    Roomless world. Manual combat. Endless possibilities.


    KaVir

    • Jr. Member
    • **
    • Posts: 95
    • God Wars II
      • View Profile
      • God Wars II
    RE: GUI snippet
    « Reply #48 on: August 22, 2012, 4:24 PM »
    Version 7 of the snippet is now available (from here, and from MudBytes once they accept the latest update), and includes the following changes:

    • Tyche pointed out that the snippet didn't correctly respond to client-initiated negotiation.  This has now been corrected.

    • A side-effect of the above change is that ECHO is now handled through the snippet.

    • MSDP and ATCP could be used without negotiation.  Although this wouldn't really cause any problems, it was sloppy, and has now been fixed.

    • I noticed most people didn't use the colours, instead preferring to use their existing Lopes-style implementations.  The snippet can now emulate that style of colour system, and includes an extended selection of default colours.

    • MUSHclient wouldn't fully negotiate if it was set to autoconnect, and the same may be true of other clients.  The snippet will now attempt to renegotiate in such cases.

    • Someone complained that "public domain" isn't always legally recognised, so I've clarified that the snippet can be used for any purpose without any conditions.

    If you're updating from an older version of the snippet, please don't forget to make a backup of your MSSP and MSDP variables before copying the latest version, and update the appropriate literals for your mud name, MCCP, etc (in fact I'd recommend doing a diff just to make sure you don't miss anything).  You'll need to update to use the new ProtocolNoEcho() function (instructions are in the installation text files), but other than that you shouldn't need to make any additional changes to the rest of your mud.
    KaVir at God Wars II: godwars2.org 3000
    Roomless world. Manual combat. Endless possibilities.


    KaVir

    • Jr. Member
    • **
    • Posts: 95
    • God Wars II
      • View Profile
      • God Wars II
    RE: GUI snippet
    « Reply #49 on: November 02, 2012, 8:22 AM »
    Just a quick update, in case anyone is using version 7.  One of the variables wasn't initialised, resulting in some confusion during negotiation - this has now been fixed, and uploaded for version 8.  There are no other changes other than a couple of additions to the ROM installation instructions.
    KaVir at God Wars II: godwars2.org 3000
    Roomless world. Manual combat. Endless possibilities.


    Telgar

    • Posts: 0
      • View Profile
    RE: GUI snippet
    « Reply #50 on: January 22, 2013, 7:35 AM »
    Aweaomw!!!  Thanksh you Kaivr for the awesoneme code.  I have addled it to my
    mud and it is working aewsome.

    Also, seriously, thanks.

    This *CENSORED* da bomb.

    Macademus

    • Guest
    RE: GUI snippet
    « Reply #51 on: January 22, 2013, 2:26 PM »
    is it only me who thinks the previous post is from someone
    trying to be smart?

    Kind of like a Locke sock puppet?? or something?

    Molly

    • Community Manager
    • Sr. Member
    • *****
    • Posts: 498
      • View Profile
    RE: GUI snippet
    « Reply #52 on: January 23, 2013, 10:33 AM »
    It might be a troll, but if so, it's a cute troll. :)
    Molly O'Hara of 4 Dimensions
    4Dimensions.org Port 6000