Free GUI 2.0 - Sample Release

Firstly: It's NOT finished quite yet! But it needs some testing and feedback.
Secondly: Make sure GMCP is turned on.

That said this is a major improvement over the last free GUI I offered for countless reasons. Since I need it tested while I code more in I'd like to offer this sample and get some feedback on what people like or want to see more of.

This system is made especially for people who can NOT code at all. Everything is point and click. No need to open the settings and change numbers, variables, scripts, triggers, etc etc... It also allows you to change everything on the fly without restarts or taking more than a few moments to choose where you want things. It includes the ability to save and share the layout with other people. It saves your layout choices to a file (ZulahGUIVariableTable.lua) that another person can drop into their system and instantly have everything the way you set it up.

     Dropbox Download: https://www.dropbox.com/s/8bjbh4gvo89h9t7/ZulahGUI2.mpackage?dl=0

  • No Coding required (No editing scripts, triggers, variables)
  • All customization is point and click
  • Change All GUI elements on the fly without restarts or reloads
  • Includes Diablo3 GUI Elements
  • Quickly adjust the size of your sea map on the fly (Nightsight? Who cares!)
  • Save and share your layouts with other people!
  • Themes! Diablo 3 and Basic included so far
  • Status bars include both vertical and horizontal choices
Future plans include more themes. Such as matching the html client and all the other custom GUI's I've made over the years I still have all the artwork and elements for. (Class specific themes are on the menu too)

Some basic images to help get you started:

When you first load in all you will see is a small gear in the top left of the screen.


Clicking that gear will open a settings menu. The settings menu will ALWAYS be in the center of mudlet. If you resize mudlet and you can't see the settings menu just click the gear again and it will reset it to the new middle of your screen.


When you are clicking an arrow to move or resize something, remember to use the 10x and 100x modifier buttons to greatly speed things up.

Enjoy! Please let me know any issues you run into so I can get them fixed quickly. I hope to have a fairly finished product in a week or two max.

«1

Comments

  • KlendathuKlendathu Eye of the Storm
    Love the settings window idea, impressive

    Tharos, the Announcer of Delos shouts, "It's near the end of the egghunt and I still haven't figured out how to pronounce Clean-dat-hoo."
  • edited August 2016
    This is getting to Akaya levels of wtf-ery.

    PS. Maybe include a screenshot or two of what the UI looks like when everything's turned on?

  • Cynlael said:
    This is getting to Akaya levels of wtf-ery.

    PS. Maybe include a screenshot or two of what the UI looks like when everything's turned on?
    It will include themes using every gui Ive ever made. So looks are infinite.

    Also this uses gmcp chat

    Just added saved layouts so you can switch between saved gui's with 1 click. Use a different ui for sailing, hunting, pvp, classes etc
  • MelodieMelodie Port Saint Lucie, Florida
    This is getting pretty spiffy. I think I'll give this a go once you fully release 2.0.
    And I love too                                                                          Be still, my indelible friend
    That love soon might end                                                         You are unbreaking
    And be known in its aching                                                      Though quaking
    Shown in this shaking                                                             Though crazy
    Lately of my wasteland, baby                                                 That's just wasteland, baby
  • I played around with the sample a bit earlier. Super awesome. I love all the clickable functions, it was pretty intuitive. It took me a sec or two to start and then I just said fuck it and started clicking everything until things moved. I liked the ease of customizing where all the panels when and the overall size of the main window as well. I've seen a lot of people's themes and modifications posted around forums, but I am no where near savvy enough to really play at making my own. Two thumbs up, for what it's worth. I look forward to the more full release.
  • Shimi said:
    I played around with the sample a bit earlier. Super awesome. I love all the clickable functions, it was pretty intuitive. It took me a sec or two to start and then I just said fuck it and started clicking everything until things moved. I liked the ease of customizing where all the panels when and the overall size of the main window as well. I've seen a lot of people's themes and modifications posted around forums, but I am no where near savvy enough to really play at making my own. Two thumbs up, for what it's worth. I look forward to the more full release.
    Thanks for the feedback. You fall into my target audience of people who don't code but want a personalized GUI. The primary goal is making it so you never have to open or edit a script.
  • edited August 2016
    Some quick screen caps. The Diablo health/mana orbs are animated gifs. As you can see here ANY screen size can be used.
     







  • As someone who has used your old GUI extensively on two characters, and also fucked it up on numerous occasions moving thing around with no idea what I was doing, this is awesome.

    Installed easily in package manager (Windows 8.1 and Mudlet 3.0). Moved the window around nicely, really like it!

    Can't see any issues at the moment but I'll have a play around and let you know

    (Party): Mezghar says, "Stop."
  • Too late to edit but I can't get the map to show, probably something simple my side

    Couple of suggestions:

    Would be nice if we could have the option of vertical Health and Mana bars
    Could we grab the vote line in the chat box? Useful to be able to have it at hand if it comes up while your bashing / fighting
    Is there any way of having a quick change alias to flip from one layout to another, for those that play on a laptop and sometimes move from a monitor back to the smaller laptop screen? 

    PS - This is really awesome

    (Party): Mezghar says, "Stop."
  • Sobriquet said:
    Too late to edit but I can't get the map to show, probably something simple my side

    Couple of suggestions:

    Would be nice if we could have the option of vertical Health and Mana bars
    Could we grab the vote line in the chat box? Useful to be able to have it at hand if it comes up while your bashing / fighting
    Is there any way of having a quick change alias to flip from one layout to another, for those that play on a laptop and sometimes move from a monitor back to the smaller laptop screen? 

    PS - This is really awesome
    There is vertical health and mana bars. Click the gear next the on off switch by them.

    I am putting in multiple layout switching/saving/loading as we speak.
  • Sobriquet said:
    Too late to edit but I can't get the map to show, probably something simple my side

    Couple of suggestions:

    Would be nice if we could have the option of vertical Health and Mana bars
    Could we grab the vote line in the chat box? Useful to be able to have it at hand if it comes up while your bashing / fighting
    Is there any way of having a quick change alias to flip from one layout to another, for those that play on a laptop and sometimes move from a monitor back to the smaller laptop screen? 

    PS - This is really awesome
    Thought there was an option for vertical? I didn't click it, just checked the normal bars and the Diablo orbs.
  • I'm old, my eyesight isn't what it once was ;)

    Yeh, it's there.

    (Party): Mezghar says, "Stop."
  • What happens is when you select vertical or horizontal the bar looks the same until you change the height and width even though the gauge is going a different direction
  • I like my simple layout, so I'll probably never use this, but I want to give up a round of applause to you @Zulah. This looks amazing from the screenshots, and I know it probably took more hours than you care to admit to piece together. Well done.
    Omor Ceberek - Targossas

    got gud
  • Omor said:
    I like my simple layout, so I'll probably never use this, but I want to give up a round of applause to you @Zulah. This looks amazing from the screenshots, and I know it probably took more hours than you care to admit to piece together. Well done.
    That was another reason I designed this. You can use it just to add a single thin health bar. Just add a sea map. Things like that. Doesn't have to be crazy.

    I've got about 40ish hours coded into it so far. (Fixing bugs takes the longest)
  • @Zulah, you are amazing!

    I can't wait to get home to try this out!

  • I have been playing with this because I liked the other Zulah GUI and now my extra windows finally fit in waaaaaaay more nicely. Miss my Battlerage, topbar, and elixlist but it's great! I didn't notice the vertical bars until now too and I totally want to try them now.

    (╯° _°)╯︵ ┻━┻ END!
  • As I said this is just a sample so people could help me find bugs. I'll release an update later today. Lots of feedback has lead to some great bug squishing!!
  • Zulah said:
    As I said this is just a sample so people could help me find bugs. I'll release an update later today. Lots of feedback has lead to some great bug squishing!!
    Yeah I know, I'm just being annoying: Only bug encountered; when I just used the vertical bars and my health went down the background of the no health portion of the bar changed into the Diablo no health bar. Could be something I'm doing or one of my other scripts is doing idk I'm not an expert in bugs.

    (╯° _°)╯︵ ┻━┻ END!
  • edited August 2016
    Achimrst said:
    Zulah said:
    As I said this is just a sample so people could help me find bugs. I'll release an update later today. Lots of feedback has lead to some great bug squishing!!
    Yeah I know, I'm just being annoying: Only bug encountered; when I just used the vertical bars and my health went down the background of the no health portion of the bar changed into the Diablo no health bar. Could be something I'm doing or one of my other scripts is doing idk I'm not an expert in bugs.

    (╯° _°)╯︵ ┻━┻ END!
    That was indeed one of the squished bugs! Also finished up saving and loading multiple layouts and some basic UI color changing.

    Putting in Elist windows and rage now then I'll have a new release.
  • Sarapis said:
    Very cool. We can't officially endorse it because it's using someone else's IP without permission, but we can still point people to it as a 'community produced addon'. When you feel like it's reasonably bug-free and stable, get in touch!
    I appreciate that.

    Also thanks to all the people who gave me feedback and helped me clear out some bugs.

    On that note here is a slightly more updated sample:
    Download: https://www.dropbox.com/s/j1cwtvq9fmukbj8/ZulahGUI2.mpackage?dl=0

    • Added Background Color Changing
    • Save and load up to 4 layouts without restart
    • Elix list with images or just console
    • Lots of bug fixes
     Couple more sample images:

    Minimalist HP/MP bars only.




  • SkyeSkye The Duchess Bellatere
    regarding your seamapper, is it the basic one that was provided in your original free GUI or are you using your fancy one including the directional overlay?

    For people who *do* code a bit, how hard would it be to do a little modification (like adding extra elements) behind the scenes? I somehow managed to muddle my way through the original GUI, but there's a lot of bells and whistles in this one :D


  • edited August 2016
    Skye said:
    regarding your seamapper, is it the basic one that was provided in your original free GUI or are you using your fancy one including the directional overlay?

    For people who *do* code a bit, how hard would it be to do a little modification (like adding extra elements) behind the scenes? I somehow managed to muddle my way through the original GUI, but there's a lot of bells and whistles in this one :D
    Currently it wouldn't be "easy" to modify the code because everything goes through everything else. It's lacking modular development at the moment but I intend to fix that in the final release so everything is it's own module. Whence it's done adding extra elements should be fairly easy. (I'm hoping to just release plugins that drop in easily later) This build is filled with a lot of debuging code too. Currently it's using a bit of my old sea mapping and some new stuff but again that will change before the final release. Lots of people ran into issues with wilderness map size before. I'm working on addressing that in this build with the adjustable sizes. I'll also be adding stylesheets to the final code to clean up all the rough edges and allow further customization and fine tuning the looks. That's when the ability to save and share your layouts will really be useful.

    Next release will be adding pages to the settings menu as well as mouse over tooltips and some help documentation to help understand what things do.

    Edit: with No Man's Sky coming out tomorrow I might be a little bit slower.... we'll see
  • edited August 2016
    Tinkering with code to make this much easier for coders to work on as well as allow plugin dropin on the fly and came up with this concept.

    Since I'm a nub and couldn't find how to to make windows check directories and load in external files without knowing the exact name of the files I've decided to go with this solution. If someone knows a cleaner way let me know.

    First: Every plugin gets a module_#.lua file that holds its information for the settings system I've created to load.

    moduleTable= {
        [1] = "Map Window",
        ["variables"] = 4,
        ["size_x"] = 100,
        ["size_y"] = 200,
        ["move_x"] = 10,
        ["move_y"] = 10,
     }
    table.save(getMudletHomeDir().."/ZulahGUI2/module_1.lua", moduleTable)

    Then each time I open the settings window it takes the current module (or plugin) count, adds 1 to it and checks for 1 more added plugin/module. If it finds it, the system loads the new plugin and variables instantly.

    moduleCount = moduleCount + 1

    for i=1, moduleCount , 1 do
         fileInfo = lfs.attributes(getMudletHomeDir().."/ZulahGUI2/module_"..i..".lua")
         if fileInfo then
              table.load(getMudletHomeDir().."/ZulahGUI2/module_"..i..".lua", moduleTable)
              loadedModuleTable[i] = moduleTable[1]
              for k,v in pairs(moduleTable) do
                   loadedModuleTable[k] = moduleTable[k]
                   display(loadedModuleTable)
              end
         end
    end

    This allows me to upload the system as an entire package and as individual plugins. So players can just download the Main Settings Window, then add the Healthbar Plugin or Map Plugin if they don't want everything. It will also allow infinite plugin releases by myself or others that can just drop in and load without restart. This will lead to much easier to modify open ended system for other coders to use.
  • edited August 2016
    Two suggestions about this, if I may:
    1. Iterating over every file in a directory can be done with "lfs.dir(directory)". This will return an iterator that you can use in a for loop. Note that this iterator will also return "." (current directory) and ".." (parent directory). This form may be prefarable, because otherwise users need to renumber plugins they get according to the number of their plugins, which is just inconvenient.
    2. You should offer a way to load plugins from any directory via the invokeFileDialog function. You can either copy that file afterwards or load it and save the settings on saving all system settings. In my experience non-coder users have trouble finding the mudlet profile folder.

    But otherwise this looks very impressive. When it gets more coder friendly, I'm very tempted to throw my own custom GUI away for this ;)

    ETA: you may need to use 'require("lfs")' before you can use lfs.dir()
  • Keneanung said:
    Two suggestions about this, if I may:
    1. Iterating over every file in a directory can be done with "lfs.dir(directory)". This will return an iterator that you can use in a for loop. Note that this iterator will also return "." (current directory) and ".." (parent directory). This form may be prefarable, because otherwise users need to renumber plugins they get according to the number of their plugins, which is just inconvenient.
    2. You should offer a way to load plugins from any directory via the invokeFileDialog function. You can either copy that file afterwards or load it and save the settings on saving all system settings. In my experience non-coder users have trouble finding the mudlet profile folder.

    But otherwise this looks very impressive. When it gets more coder friendly, I'm very tempted to throw my own custom GUI away for this ;)

    ETA: you may need to use 'require("lfs")' before you can use lfs.dir()
    Didn't think windows could pull directories, only linux could from the mudlet stuff I was reading. I'll look into that thanks a lot!
  • SzanthaxSzanthax San Diego
    I've yet to use this... But I appreciate the effort :)



  • Much much cleaner and going to be easier to use.

    For those interested in the code it will use:
    local lfs = require( "lfs" )
    local doc_path = (getMudletHomeDir().."/ZulahGUI2/")

    for file in lfs.dir( doc_path ) do
          print( "Found file: " .. file )
    end

Sign In or Register to comment.