Difference between revisions of "DiscworldUI"

From Mudlet
Jump to navigation Jump to search
m (→‎Known Issues: Rewrite from first person to third person.)
Line 83: Line 83:
 
== Known Issues ==
 
== Known Issues ==
 
* The author has (almost) no Lua experience and has not learned lua's scope mechanisms.
 
* The author has (almost) no Lua experience and has not learned lua's scope mechanisms.
**The pre 0.2.1 version runs on horrible global variables and functions.
+
**The pre 0.2.1 versions runs on horrible global variables and functions.
**The 0.2.1 moved many things to local scopes hopefully without breaking anything.
+
**The 0.2.1 release moved many things to local scopes hopefully without breaking anything.
 
*The mod is not tested on Mudlet 3.0
 
*The mod is not tested on Mudlet 3.0
 
*If you change the UI settings by changing the variable values you must re-save the script file to force Mudlet to process it again.
 
*If you change the UI settings by changing the variable values you must re-save the script file to force Mudlet to process it again.

Revision as of 17:11, 9 April 2015

"Image of Mudlet with the Discworld UI active."
Discworld UI v0.1 top aligned. Showing the upside down coloured map bug that was fixed in version 0.1.1 and upwards

Summary/Description

This package adds GMCP powered status bars and a GMCP powered separate map window to the MUDlet client. This way you can keep an eye on your status and your location without having to read between the lines.

Configuration can be done almost entirely by changing the global variable names in the scripts. Take your time to read the comments so you know what you're changing. Requires GMCP enabled in Mudlet settings. Sets up GMCP session settings for client upon login to the Discworld MUD.

Features

  • Five status bars on the right hand side
  • HP, GP, XP, XP/hour, Burden.
  • Separate map
  • Automatic GMCP handshake with Disworld MUD server upon login.
  • Configurable top or bottom alignment.
  • Map automatically snaps to status bars, can be disabled if desired.
  • Status bars update on every command you send and when the MUD sends a status update.
  • Map updates on location change, look, glance.
  • Disable XP/hour bar if you don't like it.
  • Customisable CSS
    • Includes five pre-defined gradient colour schemes.
    • More can be added by hand if you understand CSS colour codes.

Package Info

By: Ghostbird

For(MUD): Discworld

Size: 4.5 KiB

Version: 0.2.

Contents: discworld-ui-0.2.1.xml, config.lua

Files

Current version

Version 0.2.1 File:Discworld-ui-0.2.1.mpackage

Changes: Fixes a bug that occurred for some users where the MUD sent ANSI <ESC>[0;10m (reset text attributes; reset lettertype) instead of the more common ANSI <ESC>[0m (reset text attributes). Moved many global variables and function into the local scope.

Note: Fix is untested by author since the error did not occur on his system. The fix is tested to not break normal 0.2 functionality.

Older versions

Version 0.2 File:Discworld-ui-0.2.mpackage
Changes: Map now fully works with ANSI escape codes embedded in GMCP instead of the ugly hack in 0.1

Version 0.1.1: File:Discworld-mud-ui-0-1-1.mpackage
Fixed an issue where the coloured map hack would print the map upside down.

Version 0.1: File:Discworld-mud-ui-0-1.mpackage
First release

Installation instructions

  1. Download the package and save it to your file-system.
  2. Load the profile you use to connect to the Discworld. (Unless you are already connected).
  3. Enable GMCP in Mudlet settings.
  4. Install the package trough the Mudlet package manager.
    • Do NOT import from the script interface, that only works for XML files.
    • Uninstall any older version of DiscworldUI (if applicable).
  5. Note: At least on Debian based systems Mudlet 2.1 cannot extract the .mpackage zip file. You can unzip it manually and use the package manger to install the XML.
  6. Connect to the Discworld MUD. If you were already connected, re-login to the MUD by sending:
  7. su
  8. Make sure you've told the MUD to send you map data. To do this send:
  9. options output map frame = on
  10. Interface is fully initialised once the second gmcp.Char.Vitals is received. (For every command you send to the mud after login you receive updated gmcp.Char.Vitals data.)
  11. Configure the Discworld MUD map options to your liking. (Recommended settings below)
  12. [OPTIONAL] Open the Mudlet Scripts interface and customise the variables in Discworld-MapUI and Discworld-StatusUI to your liking.

Recommended Discworld MUD settings

options output map:
  frame             = on  Note: Is required, configures server to send gmcp.Window.Frame.map
  glance            = off
  glancecity        = off
  look              = off
  lookcity          = off

Known Issues

  • The author has (almost) no Lua experience and has not learned lua's scope mechanisms.
    • The pre 0.2.1 versions runs on horrible global variables and functions.
    • The 0.2.1 release moved many things to local scopes hopefully without breaking anything.
  • The mod is not tested on Mudlet 3.0
  • If you change the UI settings by changing the variable values you must re-save the script file to force Mudlet to process it again.
    • If you use the default option where the MapUI snaps to the StatusUI and you move or resize the StatusUI you must also re-save the MapUI script to force update the snapping.

Acknowledgements

Discworld MUD

  • Pit Veridicus: Helped by reporting server-side GMCP status of the connection. Being open to suggestions, helping fix problems, thinking of workarounds, and promising to fix the accidental JSON error with the escape character on the MUD side ASAP.
  • Octagon: Reminding me of the work on the plugin which prompted the fix of the map hack which constitutes the 0.2 release.

Mudlet IRC

  • Demmonic: Helped explain the documentation of Mudled and Geyser and why the Wiki is more up to date than the LuaDoc.
  • _heiko (Heiko Köhn): Thought up the coloured map hack.
  • cizra: Helped find out why ANSI colour codes in GMCP didn't work.
  • Other Mudlet developers who's names I have forgotten.

Contact

If you have any questions, send me an email.