Register to post in forums, or Log in to your existing account
 

Play RetroMUD
Post new topic  This topic is locked: you cannot edit posts or make replies.     Home » Forums » CMUD Beta Forum
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Wed Dec 07, 2005 9:01 pm   

When is CMUD? (ETA)
 
This is always the hardest part. If you have been around these forums for a while, you will know that I *hate* giving any release dates. Zugg Software is a small family business. I (Zugg) am the only programmer. So it's not like big companies like Microsoft where there are dozens and dozens of programmers and testers. I'm the only one.

I try to estimate the best I can. And I've gotten better recently with some new scheduling and project planning methods. I've now got a project plan for CMUD that breaks tasks down into *hours*. But no matter now detailed a plan is, you can never plan for something that just ends up taking a lot longer than planned.

For example, I am using a lot more 3rd party components in CMUD compared to zMUD. Mainly because 3rd party components have matured a *lot* compared to when I wrote zMUD and it allows me to do things that were not possible before. But these 3rd party components always seem to still have their own bugs. And I never know when I'm going to spend all day tracking down one of these bugs within something that was only supposed to take an hour to program.

So, as usual, there is no release date. And ANYTHING that I say regarding schedules is ALWAYS subject to CHANGE. Some people have made the mistake of thinking that I've "promised" things in the past. I never promise anything. I always do the very best that I can do. Trust me...it's not like I'm sitting on a beach somewhere on vacation all the time. Zugg Software is my life (and Chiara's life too). It's all we do. Even on our days off we are thinking about it, answering email, etc.

OK, enough of that...if you are still reading this, you still want to know when CMUD will be released, right?

Well, the current schedule currently shows the first beta release date sometime in March. Yes, March (2006 that is). This is longer than I initially ever expected when I first started thinking about zMUDXP back in August. But there is a *lot* of work involved. Also, we always take 2-weeks off during Christmas each year, and now we have an additional family obligation (in-laws) in mid-February.

If you are interested...at this exact moment, my schedule shows that I am 37% complete with CMUD. I started CMUD coding back in October when I finished with the new online store and copy protection stuff. The schedule has been consistently showing a March release date for the last couple of weeks, so I'm getting more confident about it, but there is still a LOT of work left where things can go wrong and take longer.

In spite of people who might whine about how long this is taking, I will still try to post progress updates in this forum.


Last edited by Zugg on Mon Jun 12, 2006 5:06 pm; edited 1 time in total
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Tue Jan 24, 2006 7:19 pm   
 
Just wanted to post an update to this.

The good news is that I'm still on schedule. I'm still showing a release estimate of the end of March. And I'm currently 54% complete on the first CMUD Beta release. Looks like my new scheduling system is working pretty well.

Getting through the holiday vacation was the most uncertain part of the schedule. Now that the holidays are over, I've got solid programming time scheduled for the next couple of months (our family obligation in mid-Feb got cancelled).
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Tue Feb 21, 2006 8:49 pm   
 
Time for another update. As usual, time is flying by...can't believe February is almost over. Anyway, my scheduling program shows that I'm 70% complete on the first beta now. The estimated release date is currently shown as April 4th, but that doesn't mean a whole lot because I lost most of the entire week last week dealing with the virus on Chiara's old computer and getting her new computer set up. At the same time I installed new virus software and a new backup solution, and also changed from Internet Explorer to Firefox and upgraded our email server. So it was a busy work week, but not much programming got done.

I'm still pretty hopeful that I'll be able to make up that week, but if I don't, the first week in April still isn't that far from my original planned release date.

As far as CMUD, the new Package Editor is pretty stable now and the new internal database structures are working well. I've gotten a lot done in terms of zMUD compatibility and CMUD is able to run all of my previous test scripts already. The new Preference screens are done, although I still need to rearrange a few of them to make it more obvious what preferences are global and which are character specific. But the preferences are all stored in a database now, and can be accessed via Packages and the new %pref function.

What I'm working on this week is the Shared Scripting Library. The user interface is mostly done and I'm working on the PHP server backend scripts now. After this is done, then I work on the compiled scripts, and then do some misc cleanup and testing.

To help make the first release more stable, I've taken a lot of zMUD code and made it more modular and plugged it into CMUD. So for the first CMUD release, you will see several zMUD code modules (obvious things like the mapper and database module, but several others as well). Then, over the beta testing period for CMUD I'll be replacing these modules one by one. This method helps maintain the full functionality and keeps the zMUD compatibility high and will allow me to make many incremental improvements to CMUD over time.

That's the latest.
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Tue Mar 14, 2006 7:25 pm   
 
The CMUD schedule is slipping a bit. I lost several days last week trying to get my source version control system working again (see Blog). My scheduler program is now showing a release estimate of April 10th. I'm currently at 80% complete.

I've got the Shared Scripting Library working well now. Both the client code in CMUD and the server scripts are working. It allows you to upload packages, as well as browse the package library and download and/or update your existing packages. It has a package rating and comment system as well. It's very similar to the system used in Firefox to control Extensions/Plugins.

I also spent several days that weren't on my schedule doing memory leak fixing. I found an obscure memory leak in Delphi 7 related to database filtering that took me a while to uncover (it's a known bug that still isn't even fixed in Delphi 2006 apparently). I also fixed a couple of memory leaks in the Indy Internet components for Delphi. There might be some more leaks left as I haven't tested each and every part of CMUD yet, but at least I have a good way to discover these leaks now (see the blog post on FastMM).

The main feature left is the compiled scripts. I already have a good design for this, so it should only take a week or two to get working. Then comes the debugging time. It's harder to estimate the debugging time. I do most of my debugging at the time that I actually add features. But with this first version of CMUD there is a lot of integration testing to be done, and a lot of compatibility testing. I'll be using a lot of *.MUD settings files that people sent me a few months ago to test it. I'll also be doing some MUD playing of my own to make sure things are really working. Even though this first release is a "Beta" release, I still want it to be as useable as possible for everyone. I've learned in the past that if a release to *too* buggy then not enough people can use it to give me the feedback I need.

Now that I have my version control system working well, it's also easier for me to work via my laptop in the evenings. This should give me a bit more time each day to work on CMUD. I'm putting as much time as I possibly can into getting this released as soon as possible.
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Fri Mar 31, 2006 5:30 pm   
 
Another two weeks have passed, so it's time for another update.

According to my scheduler I'm now 87% complete with a release estimate of April 18th. For obvious reasons, I'd really like to get the first beta out before tax day, but it's going to be tight. Also, there is a bit of work to be done in the online store to handle the free and discounted upgrades which I haven't added to my schedule.

While I'd like to get it out before April 15th, I'm in that final stage of development that is really hard to predict. I fix bugs as I find them. So, for example, yesterday I was working on some of the new compiler stuff and I ran across another memory leak in the 3rd party database component that I'm using. So I stopped work on the compiler to track down the memory leak. Took 5 hours to find and fix this one (very obscure).

As I get closer and closer to the release, I'm paying more and more attention to the details of how things are working together. At this point I'm no longer working on separate modules (like the settings editor or package library), but am working directly on the main CMUD code. So I'm getting a better feel of the entire product and how everything works together (or sometimes doesn't work).

I'm also doing the optimizations. When I first converted the settings to a database format, I wasn't worried about speed...just that it worked. Now I'm more interested in speed since doing the compiler doesn't help if everything else is too slow. So far the results of this are *very* good. The overall speed of scripts, even without the compiler, is already faster than with zMUD. But don't worry, I'm not going to spend a ton of time "tweaking" this stuff. I can always do further optimizations later.

So, it's getting close. I'm doing 6 days a week at about 10-12 hours a day, and that's as much as I can do.

The good news, for what it matters, is that as I "live" with CMUD I am really loving it. It really does "feel" like something new and better than zMUD. And it's fun to work on again, which is really important. Lots of the code annoyances that plagued zMUD are gone.
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Wed Apr 12, 2006 1:21 am   
 
Time for another ETA update:

The compiler has been a lot more work than I originally anticipated, mostly because of all of the changes that I'm discovering I want to make to the scripting language (see related forum posts). Also, I have been *so* happy with the compiler that I'm using it for more than I originally expected. Originally, I was going to compile a script as needed and if it failed compiling it would get passed to the "old" zMUD parsing engine. Originally, the command line was going to continue using the old parser.

But I'm so happy with the compiler, that I now have the command line use it as well, and the old zMUD parsing engine is hardly used at all. There is a "compatibility" option that can be used to enable the old parser, but mostly everything goes through the new parser and compiler now. The reason for this is that the new parser is a *lot* more flexible and it's easier to make changes and improvements. My guess is that during the course of the beta period the old parser will probably get phased out entirely.

Anyway, I've almost got the compiler finished. I'm currently working on some rather obscure issues, and also implementing the new variable types and making sure they are as compatible as possible. I think I've got about two more days left of working on the compiler guts.

After the compiler is finished, I think I have about 2 weeks of other "cleanup" work to finish before the first release.

The "bad" news is that I've mostly thrown out my scheduling program at this point. The scheduling system worked great for "anticipated" work. But it fails miserably for new stuff like the compiler. As you've seen in the other forum posts, I'm discovering new things to fix as I work and it's difficult to "schedule" that kind of work.

The "good" news is that I continue to get lots of stuff done each day, so I'm still getting closer and closer. And I think most people who have read some of the other forum topics will agree that the new changes in CMUD are getting pretty exciting. I love the fact that I was able to add something cool like the #SWITCH command in about 30 minutes with the new parser system!

So, the bottom line is that it's looking more like the end of April now. Yeah, I know, everytime I update this isn't still a couple weeks away. But anyone who has been around here for a long time and can remember zMUD release dates will know that this is pretty normal. That's why I hate giving release dates.

(And yeah, I had to gave up on the April 15th idea...no way to get it ready by then, so I just put some of my taxes on a credit card and will worry about it later ;)
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Fri Apr 28, 2006 8:34 pm   
 
Man, is it already time for another update? How does time keep going by so fast?

Remember that example in math class where they take a ruler and say that if you keep dividing it in half, you never actually reach the end? Well, I feel like I'm living that example. Every day I am making significant progress, and yet there always seems to be more stuff do do. It always seems like I'm two weeks away from the release.

So yes, I'm looking at mid-May now. I know this is disappointing, but it will be worth the wait.

The compiler is pretty stable now. In fact, it runs my master test script now without a hitch, and it's faster than the old parser. I still have some details to implement, like COM methods and properties, but that shouldn't be hard (oops, I'd better not say that! :).

My focus this week has been on the new docking code. As you may have read, the Developer Express docking system that I was using in zApp just doesn't do what is needed for CMUD. So I spent some money on a new docking system that is much better. I've gotten the source code and have it integrated with the Theme Engine that I'm using (again, from zApp). Now I'm working on using this docking system in CMUD to do some of the nifty tricks that I wanted to improve the user interface.

The hardest job with the new docking system is getting it to save and restore layouts. I'm still trying to work out a way to make this flexible in how it handles multiple sessions and layouts. But it's going pretty well.

After the docking system is working the way I want it, then I've just got a bunch of small loose ends to work on. Nothing is very big or hard, but it's the kind of details that I need to get right before the release. Hopefully I'll stop coming up with new stuff and can just get what I have working and released and worry about adding more cool stuff later.
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Tue May 09, 2006 9:56 pm   
 
Guess what? Yep, it's still about two weeks away. I guess we should just say "End of May" and get on with it.

As far as progress, I've made a lot. I'm pretty much done with the compiler and parser now. It handles all of the syntax changes and new features that have already been mentioned in other threads. Today I got all of the COM and array reference and assignment stuff working. This fixes a lot of problems with how the syntax checker in zMUD used to handle (or not) COM references.

The docking system is working well and I have the save and restore layout working. I've started on some of the new docked panels that I'm planning for the first release. I've also fixed a few problems with the package settings editor so that CMUD still works (although slower) when this window is open and that it updates correctly as settings are added, deleted and changed.

So what's still left? I still have work on handling how Preferences (the Prefs options, not Aliases, Triggers, etc) are stored in packages and how you edit the preferences for a particular package. Then I need to work on Triggers to make sure they are executing in the correct priority order and that they are optimized for the new compiler. Then I want to set up a reference list between buttons/triggers/statusbars and the variables that they depend upon so I can optimize how buttons/statusbars are refreshed and how triggers are recomputed.

And then I need to do more testing of various features. With the compiler and docking system working, those were the largest two items still on my to-do list, so that's a really good sign. Stay tuned!
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Fri May 26, 2006 8:08 pm   
 
I've been posting more details over in my personal blog, but I decided it was time to update this official thread.

The work on Preferences took much longer than expected. The new way of handling windows within packages forced a whole new way to deal with preferences. However, this is finally done and working with a very nice new Preferences editor. Triggers execute in the correct priority order, and the dependancy between buttons and status bar items and variables has been optimized (and is very fast now). So everything mentioned in the past update is now working.

So what's left? Well, I had forgotten about the Editor window (Shift-Ctrl-Enter). The main component used for this editor window in zMUD doesn't exist in CMUD, so I am in the process of rewriting the editor to use the new syntax-highlighting window that is used in the settings editor. This will take a few days. After that is done, then there are just a few minor loose ends...probably just 3 days of misc stuff that needs to be done. Then I need to spend a couple of days getting CMUD integrated into the online store and new copy protection system and to set up the system for handling the discounts for existing zMUD users.

Once again, I'm going to call it 2 weeks. But I'm feeling more confident about this than I was in the past. I really think early June is looking really possible.
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Sat Jun 10, 2006 11:16 pm   
 
Hey, I can *finally* post a REAL ETA for CMUD!

As mentioned over in my personal blog, I have finally gotten CMUD to a point where I can release the first beta version. The planned release is for 11:00AM Monday, June 12th (Mountain time). That's 10am Pacific, 1pm Eastern, 6pm GMT.
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Mon Jun 12, 2006 5:05 pm   
 
CMUD 1.00 has been released, so this is no longer a sticky topic.
Reply with quote
Display posts from previous:   
Post new topic   This topic is locked: you cannot edit posts or make replies.     Home » Forums » CMUD Beta Forum All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© 2009 Zugg Software. Hosted by Wolfpaw.net