[Home] [Downloads] [Search] [Help/forum]


Register forum user name Search FAQ

Gammon Forum

[Folder]  Entire forum
-> [Folder]  MUSHclient
. -> [Folder]  Development
. . -> [Subject]  Future plans?

Future plans?

It is now over 60 days since the last post. This thread is closed.     [Refresh] Refresh page


Posted by Twisol   USA  (2,257 posts)  [Biography] bio
Date Mon 12 Jul 2010 08:20 AM (UTC)
Message
I wasn't sure where else to put this, so Development seemed to be the best fit...

Nick, might I ask what your plans are for MUSHclient? Just maintaining it for the most part, or do you have any other cards hidden up your sleeves? I think the addition of miniwindows was the most recent major change, and that's actually what finally got me to switch to MUSHclient (because I just can't live without the Nexus visual compass and gauges).

And of course, if anything needs doing, I'm more than happy to lend a hand!

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by Nick Gammon   Australia  (22,975 posts)  [Biography] bio   Forum Administrator
Date Reply #1 on Mon 12 Jul 2010 09:25 PM (UTC)

Amended on Tue 07 Apr 2015 01:39 AM (UTC) by Nick Gammon

Message
This is a good question. :-)

In many ways I think that MUSHclient is feature-rich, fast and stable. Thus there isn't a huge motivation to do heaps of work on it. I don't necessarily think that software for which updates are released every week is better than software which is occasionally updated. For example, Lua is only occasionally improved.

Having said that, there is room for improvement:


  • The user interface could be improved (eg. adding drag-and-drop, better organisation of lists of triggers, etc.)

  • The code could be cleaned up - I learnt a lot in the 15 years I have been developing it. For example, STL could be used more.

  • Some things which are done in a number of different ways could be done in a more standard way (eg. the GetInfo function calls)

  • Better handling of incoming lines (to make changing text simpler for one thing) could help

  • A GUI interface to databases would be nice (eg. for databases of equipment, rooms, mobs etc.)


Also new features could be added, especially in conjunction with server-side changes, which were discussed fairly recently on the mudstandards.org forum. For example:


  • MUD mapping

  • Status bars, group/raid info

  • Chat panes

  • Inventory panes

  • Character equipment panes

  • Spell info


(Some of these are currently available as miniwindow-based plugins).

[EDIT] (April 2015) Warning: Domain name mudstandards.org has been abandoned. That site is now an adult products shop.

However, there was resistance to major changes to standards at the server side, particularly if they involved some sort of GUI interface.

Probably the big issue for me is, given I have only a finite amount of time to spend on programming, which is the best use of my time? Possible directions are:


  • Major improvements to MUSHclient

  • Something that makes a lot of money

  • Something that is very popular

  • An improved text-based MUD client written from scratch

  • Some sort of graphical RPG client (and maybe write a server to go with it)

  • Improvements to the server end (examples are my recent projects to download mapper information, caching frequently-sent data, and a Lua-based quest system)

  • Some other sort of game, not directly related to MUDs

  • Something that runs on the iPad / iPhone / iPod.

  • Something involving 3D graphics (eg. Blender / OpenGL)

  • Some sort of game-maker system (eg. a program that generates MUD game servers from a parameterized list)

  • An improved Area Editor for Smaug (the old one doesn't read the new file formats)

  • Training videos (eg. on YouTube) showing how to use MUSHclient, or run a MUD, or program in Lua, or something like that

  • Getting involved in some other development team (eg. for a graphical MMO game, in some capacity)

  • Making podcasts / vodcasts about subjects that interest me


Some of these possibilities are more "modern" than continuing to make huge changes to MUSHclient. For example, YouTube wasn't around in 1995, so doing YouTube training wasn't an option on those days. Nor was 3D graphics as easy to implement.

It seems to me that the games / genres that have remained popular are the ones that evolved with technological advances. For example the old Diablo I and Diablo II games, eventually morphed into World of Warcraft. The old "fixed camera, top-down view" is rather old hat these days. Meanwhile the old "tower defence" games morphed into Plants Vs Zombies, a rather addictive game available on both the PC and iPhone / iPad.

This is why I found some of the discussions on the mudstandards forum a bit frustrating. There was a school of thought that we shouldn't change anything that wouldn't be backwards compatible with old clients. It would be like if World of Warcraft's designers were told the game had to run on the old 25 x 80 character terminals, in text only. It wouldn't have flown.




My brief answer is, I intend at present to keep supporting MUSHclient in this way:


  • Answering questions on the forum, particularly ones that others cannot easily answer, and which are not in the FAQ

  • Fixing demonstrated bugs (eg. crashes / loops / incorrect behaviour)

  • Making small improvements where the benefit can be shown to be worth the effort (for example, the recently-added mouse scroll wheel support).

  • Fixing documentation problems

  • Writing plugins to demonstrate what the client can do - sometimes the power is there but it is not obvious how to use it.

  • Doing more training videos to show how to accomplish specific tasks


Since the source has been released publicly, anyone who wants to make more changes is welcome to do so. However a "better" option (depending on your needs) might be to write a new client from scratch, using the existing public code as a guideline on how to do things like embed scripting, do miniwindow graphics, handle sound, etc.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Twisol   USA  (2,257 posts)  [Biography] bio
Date Reply #2 on Mon 12 Jul 2010 09:54 PM (UTC)
Message
Awesome. Thanks for the detailed reply!

Nick Gammon said:
However a "better" option (depending on your needs) might be to write a new client from scratch, using the existing public code as a guideline on how to do things like embed scripting, do miniwindow graphics, handle sound, etc.


This is my own long-term goal, and I'm digging into the MUSHclient code to get a better idea of the challenges. I'm trying to give back as much as I get from it by cleaning up, of course.

My main worry with working on the MUSHclient source is that I don't want to break compatibility with the "official" MUSHclient, even though it's so tempting to replace bits and pieces. A good example is that I'd love to modularize many of the MUSHclient APIs into their own OLE automatons, so something like WindowCreate might return an actual window object. But that would break plugins that use the older interface, and I wouldn't be able to release any plugins I make very easily (unless I didn't use the new interface, which defeats the purpose).


It would be interesting to work on an official MUSHclient 5.00, with a focus on removing cruft and aiming for ease of use over backwards compatibility. Like I said, what's holding me back is deviating too much from the official product.

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
[Go to top] top

Posted by KaVir   Germany  (117 posts)  [Biography] bio
Date Reply #3 on Tue 13 Jul 2010 10:11 AM (UTC)

Amended on Tue 13 Jul 2010 11:24 AM (UTC) by KaVir

Message
Something I'd really love to see is a more streamlined method for offering players custom plugin packages. Right now I provide a series of step-by-step installation instructions, here: http://www.godwars2.org/plugins.php - it's not ideal, and while newbies are often willing to make a large initial download (perhaps because they're used to it from playing other games), they seem to quickly lose interest when they have to follow lots of instructions to configure everything. They just want to click a button and start playing.

I suppose I could just zip the whole lot up and distribute it as a single download (assuming I'm allowed to distribute MUSHclient?), but that means updating the package whenever a new version is released - plus many of my players already have MUSHclient installed. And from your perspective, I'm sure you'd rather have people download MUSHclient directly from your site.

I'm not sure what better alternatives there might be, but I'm wondering if it might be possible to find a more generic solution - or at least make it a bit easier for new players to get started.

For example, what if there were a way to provide a MUSHclient download link with an argument, so that when players clicked the link it wouldn't just install MUSHclient, it would also automatically add a new world. Eg something like "http://mushclient.org/download/?host=mudx.com&port=1234&title=Mud X" that could be advertised on the muds website - new players would click the link and install MUSHclient as usual, but as soon as they opened it up, they'd automatically connect to Mud X without needing to configure anything manually.

It would be even better still if there was some way to include a plugin in the link, something like "http://mushclient.org/download/?host=mudx.com&port=1234&plugin=mudx.com/download/plugin.zip&title=Mud X" - I imagine some people might wince at the security risk, but I don't think it's really any worse than a separate download, and the installer could at least ensure that the plugin contained only images, sounds and plugin scripts - the latter of which could then be automatically added for the new world.

You could also expand the idea by offering a selection of default packages targeted at different codebases, so that mud owners could just link to one of those if they wished - or use them as a starting point for creating their own. Even if all they did was add a custom background image, it would still let them offer something of a "customised client" feel.

On a related note, have you ever considered some sort of "MUSHlite" mode for new players? Something that hides away most of the options and simply provides players with the basics - but with a toggle to revert back to the more advanced mode (a bit like the Windows calculator with its Standard and Scientific modes). This would be particularly nice in combination with a custom plugin, for targeting first-time mudders, who are easily overwhelmed and confused by the huge number of different options. It always makes me sad when a newbie tells me "MUSHclient is too complicated, I think I'll just stick with GMud".
[Go to top] top

Posted by Nick Gammon   Australia  (22,975 posts)  [Biography] bio   Forum Administrator
Date Reply #4 on Tue 13 Jul 2010 10:36 AM (UTC)
Message
KaVir said:

I suppose I could just zip the whole lot up and distribute it as a single download (assuming I'm allowed to distribute MUSHclient?),


Yes.

KaVir said:

I'm not sure what better alternatives there might be, but I'm wondering if it might be possible to find a more generic solution - or at least make it a bit easier for new players to get started.


A while back I did a plugin-loading plugin, that just loaded everything in a subdirectory. That would simplify things a bit.

KaVir said:

On a related note, have you ever considered some sort of "MUSHlite" mode for new players? Something that hides away most of the options and simply provides players with the basics


The "quick connect" menu item was supposed to be something like that.

Maybe I'm not typical, but I find the recent releases of programs like Word (and indeed Windows XP) quite irritating when they try to make things easier for you by having wizards and hidden options everywhere. It's fine for the first couple of days, but when you want to do something remotely unusual, you first have to find the option to enable the other options (indeed you aren't even sure if the other options even exist).

The fact is, you can't really make something complicated really simple, you just hide the complication away, and then when you get past the simple bits you then have to try to second-guess where the designers might have put the things they don't want newbies to see. And not everyone thinks the same way.

For example, when you have to try to solve some more obscure problems with Windows you get told to "edit the Registry" with the disclaimer that if you don't do it right, you may render your system unusable. Excuse me? Isn't that a design flaw in itself, that you are advised to do something to fix a problem, but if you don't follow the instructions exactly, you may be left with a piece of junk on your desk, and all your recent files inaccessible?

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by KaVir   Germany  (117 posts)  [Biography] bio
Date Reply #5 on Tue 13 Jul 2010 11:25 AM (UTC)
Message
A plugin-loading plugin would be great for updates, but it would still require an initial manual installation. What I'm looking at here are ways to make the initial introduction as gentle as possible for new players - particularly those who are completely new to mudding.

I share your views regarding Windows and its hidden options, but that's not what I've got in mind. I'm thinking more of a two-mode thing, like the Windows Calculator I mentioned previously - a "MUSHlite" mode aimed at newbies, and the main mode which works like now. Not hidden options here and there, just a simple boolean state that you can toggle on and off. Newbies can get a nice simple interface, and when they want to start messing with their setup they probably don't need MUSHlite mode any more, anyway.

Personally I appreciate the flexibility MUSHclient offers, and I enjoy playing around with plugins and customising the interface. But most of the new players I've encountered just want to play the game, using the setup they're offered - they don't care about doing their own customisation. Later on that often changes, but they won't reach that point if they're overwhelmed at the start and decide to use a simpler client.

In your "MUD game retention rates" thread you talked about simplifying things for the player, rather than hitting them with a "wall of text". I view this in much the same way - the first-time mudders don't care about all those buttons and menu options, all they want to do is connect to the mud and start playing. As they get more familiar with muds, then they'll start wanting to look into triggers, and macros, and hotkeys, and highlighting, and so on.

Perhaps a "MUSHlite" mode isn't an appropriate solution, but I do think a simplified interface would be less intimidating. What I could try doing is talking to a few newbies and find out what, exactly, they find confusing - it's difficult to remember my own first impression, as it was a while ago now. But I think I was mostly thrown by the button strips, and the lack of any obvious "connect" button, and to a lesser extent a bit overwhelmed by the huge number of options on the menus.
[Go to top] top

Posted by Nick Gammon   Australia  (22,975 posts)  [Biography] bio   Forum Administrator
Date Reply #6 on Tue 13 Jul 2010 08:54 PM (UTC)
Message
KaVir said:


In your "MUD game retention rates" thread you talked about simplifying things for the player, rather than hitting them with a "wall of text". I view this in much the same way - the first-time mudders don't care about all those buttons and menu options, all they want to do is connect to the mud and start playing. ...



Again, this is why there is the "quick connect". You type in three things (MUD name, IP address and port) and you are in.

It is also described in the "getting started" pages and I even did a YouTube video demonstrating using it.

But I agree that the simpler the better for new players. I quite like the idea of progressively making new features available (eg. basic features for a newbie, more for level 10, more for level 20 and so on). However one issue is that a level 1 player is not necessarily a newbie. For instance, they may have 10 level 100 characters, and just be starting a new level 1 toon.

The other thing is, that this really comes into the category of "improvements to the user interface" - something I identified earlier in this thread as being desirable. So really we are in agreement. :)

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).

To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.


18,242 views.

It is now over 60 days since the last post. This thread is closed.     [Refresh] Refresh page

Go to topic:           Search the forum


[Go to top] top

Quick links: MUSHclient. MUSHclient help. Forum shortcuts. Posting templates. Lua modules. Lua documentation.

Information and images on this site are licensed under the Creative Commons Attribution 3.0 Australia License unless stated otherwise.

[Home]


Written by Nick Gammon - 5K   profile for Nick Gammon on Stack Exchange, a network of free, community-driven Q&A sites   Marriage equality

Comments to: Gammon Software support
[RH click to get RSS URL] Forum RSS feed ( https://gammon.com.au/rss/forum.xml )

[Best viewed with any browser - 2K]    [Hosted at HostDash]