Mudlet
Resources
Section titled “Resources”- Chocolatey package for Windows:
Terminal window choco install mudlet
Documentation
Section titled “Documentation”- Manual - for players
Scripting
Section titled “Scripting”- Geyser Layout Manager - an object oriented framework for creating, updating and organizing GUI elements within Mudlet
- Technical Manual
- Events
- Best Practices
- demonnic/muddler - a build tool for Mudlet packages
- Edru2/DeMuddler - deconstructs mpackage files into Muddler projects
- CI
- Mudlet Package Repository
- Vyzor Reference - an older UI framework that has largely been replaced by Geyser
GUI examples
Section titled “GUI examples”Muddler project on Windows
Section titled “Muddler project on Windows”- Install Podman Desktop
- Open PowerShell and navigate to the parent directory of the new project’s directory, e.g.
Terminal window mkdir $HOME/srccd $HOME/src - Create a new Muddler project in the “TemplateProject” folder:
Terminal window podman run --pull always --rm -it -v ${PWD}:/src -w /src demonnic/muddler --default - Rename the “TemplateProject” folder to something more appropriate, e.g.
Terminal window ren TemplateProject MyFirstMuddle - In Mudlet, create/open a profile that you use for development only, and install the Muddler package in order to facilitate automatic reloading of the package you are developing:
lua installPackage("https://github.com/demonnic/muddler/releases/download/1.1.0/Muddler.mpackage")
- Create a script in the Mudlet profile you use for development that uses Muddler to automatically reload the (development) package from its directory, e.g.
local function killMDK()for pkgName, _ in pairs(package.loaded) doif pkgName:find("MDK") thendebugc("Uncaching lua package " .. pkgName)package.loaded[pkgName] = nilendendendlocal function create_helper()if MDKhelper then MDKhelper:stop() endMDKhelper = Muddler:new({path = "C:/Users/USERNAME/src/MyFirstMuddle",postremove = killMDK,})endif not MDKhelper thenregisterAnonymousEventHandler("sysLoadEvent", create_helper)end
- Make sure to use forward slashes (
/) instead of backslashes (\) in the path
- Make sure to use forward slashes (
- Watch for code changes and build continously:
Terminal window cd $HOME/src/MyFirstMuddlepodman run --pull always --rm -it -v ${PWD}:/MyFirstMuddle -w /MyFirstMuddle demonnic/muddler -w- The package should now get installed in the Mudlet profile.
- Edit the code using your favorite code editor.