Looking for more active discussion? Join our Discord at https://discord.gg/x2s7fY6

Valkyrior system (Mudlet)

EvalyneEvalyne A Coffin
edited March 2018 in Scripts
So, for those of you who don't know me from Imperian from whence I recently retired to move here to, I develop a system called Valkyrior, which has even been featured by Mudlet on their Twitter.


What is Valkyrior?
Valkyrior is designed to be a UI that can be interchangeable across different MUDs, with the aim of providing as uniform as possible an experience across MUDs in terms of interface. Among other things, this allows the mechanical differences to stand out more prominently. It automates a lot of tedious tasks, and also includes MUD-specific modules that handle things like displaying status effects (defs and affs in Aetolia's case), auto-bashing, and more.

It currently supports Aetolia, Imperian, Materia Magica, and Luminari MUD, but the focus is on Aetolia presently.

Convenient room information display
Dynamic class-based hotbars
Condensed character information

Installing Valkyrior
Installing Valkyrior is fairly easy:

1) Download the zip of the system from the website


2) Unzip the zip archive it gives you where you want the Valkyrior system files to be.

3) Load Mudlet and go to your Aetolia profile.

4) Enter the following into the input field:
lua local a="https://www.viantha.com/ire-system/bootstrap.xml"local b="ValkyriorBootstrap"function d(c,e)if not e:find(b,1,true)then return end installPackage(e)os.remove(e)setupValkryior()end registerAnonymousEventHandler("sysDownloadDone","d")downloadFile(getMudletHomeDir()..(a:ends("xml")and"/"..b..".xml"or"/"..b..".zip"),a)

It will ask you where scripts_valkyrior.xml is. Follow the prompts and you should be good! No, you don't need to understand what that's doing (but if you're curious, it's downloading a bootstrap script that will install all the stuff into your profile you need)

Getting help with Valkyrior
If you have any troubles with Valkyrior feel free to ask in this thread, or message Evalyne OOC, in game.

Bugs or feature requests can also be submitted to the formal tracker, here: http://gitea.postactiv.com/postActiv/Valkyrior/issues (account signup required)

An important licensing note
Valkyrior is freely available, under the AGPL license. Importantly, this means you MUST make available any changes you make to the code, under the same license terms. If that licensing term is unappealing to you, either do not use the system, or see the readme for information on paid licensing that does not have this stipulation. (Frankly, I encourage you to just contribute your changes back, however.)

Like what you see?
If you use Valkyrior and like what you see with it, please consider tossing even a nominal amount of credits to Evalyne in game. It helps with development since it makes more classes available to me personally, and shows some appreciation of all the time and effort I've put into developing this UI and the accompanying scripts :)
ZailaIshin
«1345

Comments

  • ZailaZaila Pacific Time
    Lets just say: I have no idea how to make any of that happen visually and it looks very very pretty!

    I like the style, but to my own tastes, it would take up a ton more of my screen all at once than I'd like. I'm one of those strange players that hates taking up the whole screen with their UI: I prefer a slimmer, 2-column-max interface.

    That said, I think it's super pretty and about a thousand-billion times more visually appealing than what I've got!
    EvalyneXeniaTeani
  • EvalyneEvalyne A Coffin
    edited February 2018
    I actually increased the size of the main console by default as is. I think the chat console ends up a bit cluttered in there but don't have much of a better idea how to integrate it unless/until Mudlet easily lets us do second windows (my original system in TinyFugue had it on a seperate window so I could put it on my second monitor, which was handy.)

    I've wrestled with the 2/3 column decision more than once but my general feeling is I'm trying to convey too much information to be able to condense it well into 2 columns unless it was just a wall of text, which I guess you can do but somewhat defeats the purpose of making a pretty GUI. (Edit: Not to say that I'm adverse to the idea if someone can think of a way to condense them that works on a 1080p screen!)

    Here's a current screenshot incidentally, since the one in that tweet is old:


  • ZailaZaila Pacific Time
    Ooh, I like that a lot better with the map up there instead of the defenses box. I would totally use yours if I knew how XD
    PazradymEvalyne
  • Not going to lie, thats a really really nice setup. I love a nice aesthetic interface.  
    By the divine might of Omei, you are restored to life.
    Omei gives the corpse of a headless cadaver to you.
    Omei offers you a quick wink.

    ZailaEvalyne
  • I'm rethinking it a bit to be more compact if I can because some of the wasted space is bothering me in a "cannot unsee" sort of manner. I'll report back after a bit of playing around in Photoshop and Mudlet and y'all can let me know what you think. In the meantime if you have suggestions do let me know :)
    Zaila
  • TiurTiur Producer
    That is gorgeous.
    EvalyneKodaza
  • What do you guys think of this mockup of how I thought to redesign it?
    EowynKodazaSatomiTeani
  • It looks great, but I know for me at the very least the background under the main text window would be quite distracting.

    Evalyne
  • EvalyneEvalyne A Coffin
    edited February 2018
    Xavin said:

    It looks great, but I know for me at the very least the background under the main text window would be quite distracting.

    Yeah I'll probably have it as a configurable variable. But a lot of people like the idea of backgrounds in the main console to communicate the area type and its not too hard to do if you replace it with a miniconsole. It's been one of the most requested features back when I was on Imperian.

    It's worth noting there's a lot of the stuff about the system you can configure in the relevant script file.
  • A thought I had to implement location graphics without them being on the main display, was to place them as a backing to the status effects, what do you think of that, @Xavin ?


    XeniaKodaza
  • KodazaKodaza Los Angeles
    I'm not Xavin, but I do like it better myself this way.

  • Added endurance/willpower bars. I should probably put blood somewheres too eh?

  • @Evalyne that would certainly be less distracting for me. It looks good.

    Evalyne
  • ZailaZaila Pacific Time
    I like that two column look a lot better! But, with all that unused white space to the left, I would end up positioning the mudlet window off screen so I wasn't wasting my precious screen space just to see a little bubble on the bottom.

    I would still totally use this!
    Evalyne
  • Zaila said:

    I like that two column look a lot better! But, with all that unused white space to the left, I would end up positioning the mudlet window off screen so I wasn't wasting my precious screen space just to see a little bubble on the bottom.

    I would still totally use this!

    My thought was I could use that space to display web members, but I'm trying to figure out a good way you could get vital information on them. I was also thinking the stats icons could be underneath the player nameplate. I like to watch my stats for the moons changes so I know I'm not getting into the deep end or overconfident thinking I have more CON or STR than I actually do.

    Something a little like this maybe:



    STR/DEX/CON/INT/Blood%/Experience TNL % are the fields underneath the nameplate, since I'm still looking for good icons I can use that are free where I'm broke as all get out for the next little bit.
    Zaila
  • If you're wondering about the blank area at the bottom by the way, it's intentional: mudlet will have a bar of tabbed windows if you're playing more than one MUD at the same time and I've tried to design Valkyrior in such a way as it won't fall apart if it gets nudged around. It will if you have 2 or 3 or more rows of tabs, but if you have that many going you've probably got more problems than UI draw area clipping issues.
    Zaila
  • I hate how dense Mudlet's documentation is. Utterly unhelpful. Just burnt way too much time figuring out that ANYTHING will draw over the main console and you basically have to slice up the display around that, something literally nothing in the documentation tells you. If I'd known I would have saved an hour. Oh well.

    The initial pass at actually putting the design into practice is just getting the static assets in place, which I managed:

  • Coding the HP/MP gauge readouts was an exercise in dealing with the fact that Geyser is kind of naff. I'd report it to Mudlet but they ignore me/tell me I don't know what I'm talking about so whatever. Had to go into the primitives to make them update properly. Given up on centering them for now.

    But it works now:


    Yeah I know the percentages are a bit dodgy. Lua's math.floor doesn't seem very reliably accurate in that regard and I don't feel like rewriting a whole library. It works "good enough" for now.
    Xenia
  • EvalyneEvalyne A Coffin
    edited February 2018
    You can't make a miniconsole have a transparent window for "performance reasons" so this has a grey background for now, but the chat window capture thing is also working now. As well as a couple of the little hotbar indicator things

    I think I'll end up hacking a way to add scrollback capabilities to a label so I can have the transparency. It's really maddening that a transparent control background, something Visual Basic had figured out in 1996, is something apparently we don't have the computer to handle in 2017, though.
  • I love the look of it.
    I do feel that people with a focus on PVP will not like the amount of vertical real-estate being taken up. Something to consider anyway.

    Others may be different, but during combat I stare at the bottom of the main window. I'm trying to follow what is happening, by picking important colours/echos out of the spam, and watching the prompt. It's a good location for the gauges , but the name above the gauges takes up vertical space. Ultimately, midfight, I'm not going to see much else without moving my eyes away from the flow of information, so that ~30-40mm of space right underneath the main console is the most valuable bit of screen real estate.

    In that space, I cram information about my target, myself, the people in the room etc. I don't do that graphically though; I have a few single line miniconsoles. It's tempting to add more and more of them (I had 8 at one point) but there seems to be a limit to how much physical space I can look at before it is a distraction.

    Therefore, using any more vertical space than the amount I can monitor without missing the main console is just reducing the total number of visible lines in the main console, without any major benefit.

    That is just my opinion though. And aesthetically that is a really beautiful UI. Also, outside of combat it's a very different story.
    EvalyneZaila
  • The nameplate is the height it is basically so that I can have two rows of the not-displayed-in-the-above-screenshots status icons without having gaps, more than anything. When it comes to scan/combat I'll be honest - I'm not watching the main console, which is usually a river of messages anyways, I'm usually watching health and status icons. The idea is to have just one spot of the screen I'm really watching to know my status.

    That said I probably do need to think on a way to put in tracking enemy affs/status that is going to be near that.
  • ZailaZaila Pacific Time
    I am curious: what's the function of the "information" box?

    And, not that I do combat often at all, but I agree completely with the "have everything I need to watch during combat spam in one small visual area" thing
    Evalyne
  • When working again it will have two pieces of information: Whats in the room with you, and tooltips for UI elements when you mouse over then.

    And yeah I hear you about scan, the first thing I do in any game that lets me do so is rearrange the UI so my eyes have to travel less.  Any ideas about how to reduce that more in my UI are appreciated!
  • AishiaAishia Queen Bee
    For actual combat if you wanna go that route probably need a spot for enemy affs/self affs.
    Evalyne
  • EvalyneEvalyne A Coffin
    edited February 2018
    Right now the impediment to having enemy affs also displayed is that depending on class and items, you can end up with a ton of statuses.  What do yall think about stacking cumulative boosts?  Eg one icon thats just "you have an XP boost" rather than seperate icons for each seperate boost source (eg for experience thatd be mint, chalice, amber orb, eggnog etc)
    Kodaza
  • Upon some reflection I might move things around a bit so that you can have an enemy nameplate below the player one. I'll see. it's already a bit crowded and mudlet gets ornery about redrawing stuff a lot. I might also have a seperate mode for PK and one for ... well everything else.
  • ArbreArbre Arbrelina Jolie Braavos
    Evalyne said:

    Upon some reflection I might move things around a bit so that you can have an enemy nameplate below the player one. I'll see. it's already a bit crowded and mudlet gets ornery about redrawing stuff a lot. I might also have a seperate mode for PK and one for ... well everything else. mudsex.

    ftfy
  • Well, if that's what you want to use it for.
  • AedenAeden Missouri
    I'm curious, is there a helpfile on how to install the package? As I want to give it a try and not familiar with Github. Or must it be done individually. (It appears to be the latter though)
  • EvalyneEvalyne A Coffin
    edited February 2018
    Aeden said:

    I'm curious, is there a helpfile on how to install the package? As I want to give it a try and not familiar with Github. Or must it be done individually. (It appears to be the latter though)

    I will make a XML package that you can just import and try out the new UI before the end of the day, and post the link here :D

    Still got a couple things I want to fix up.
    Aeden
Sign In or Register to comment.