Sunday, July 29, 2007

Accessibility Hopefully Improved

As I mentioned on Wednesday, I worked on the accessibility issues that were found during the last test. There were three main issues at hand:

A method of disabling the map.
The map provides nothing but unpronounceable spam for a user who is playing using a reader program. I added a new config command, so by typing config map n the map can be disabled.

A method of disabling the prompt.
Like the map, the prompt must get annoying for a player using a screen reader. This was another direct request, and so I did my best to satisfy it. Config prompt n will disable the map.

Provide the information on the map in a verbal form.
This issue wasnt exactly a direct request, it was more or less implied. Previous to today a player with a screen reader had absolutely no information about their surroundings. By enabling the auto survey using config survey y, a player now sees a listing of the 'regions' surrounding them, and the direction they are in. This allows a player to have a better grasp of where they are without the map, and also shows them the players in the area, much like the highlight we have on the map.

The second method of providing this information was using an auto exits config option. This displays the names of the rooms immediately north, south, east, and west. This gives the player even more information about where they directly are.

These features appear to be working correctly, the only thing that remains to be done is testing them with actual an actual screen reader, and see if this provides enough information. Ultimately I think this is worlds better then we were at before, but I think there will always be a few features that will be impossible to convert, and a player with use of a map will likely always have at least a slight natural advantage.

Thursday, July 26, 2007

Breaking Free

For the past few weeks I have been reading a pretty new blog about breaking free of the 9 to 5 job and starting your own business. The Author, Brian Armstrong is a young entrepreneur who has had several small successes so far under his belt, and all in his early twenties. Brian has also written a book about the subject, also worth checking out. Personally I'm hoping to collect some inspiration from Brian as I move forward into my own career, and my hope to escape from it and start my own business.

Wednesday, July 25, 2007

Fixes and Accessibility

I've managed to get items integrated with relatively little work. As a result I can move forward this week with some more new stuff. First on my priority list is fixing the bugs that were found during last week's test. Most of these are minor and quick fixes so hopefully shortly into this coming weekend I will be able to move on into the accessibility issues that were made quite obvious during the test.

The problem that needs to be solved here now is finding a way to represent large amounts of data that is intended to be visual in a way that could be easily consumed by a user using a reader program. I have a few ideas, the simplest of them is implementing an exits display, listing the 'rooms' that surround your current room like most mud's already have as a normal feature. The harder problem is representing the 100 or so rooms that might be within a 5 room radius of the player. Does anyone have any ideas?

Tuesday, July 24, 2007

Spotplex Sucks

A couple of weeks ago I mentioned that I was trying out spotplex. Since I have set it up I really haven't gained anything from the experience. Their code does an ok job at tracking activity on each individual page, but it still seems to be flawed, it was able to ignore some of this activity. Even on the best of days, when I was getting what for me was very good traffic for a single day, on an individual post page at that, I didn't receive any traffic from spotplex. They have managed to prove to me that unless I am already a big player I do not have any chance of gaining any benefit from their service. Hell, I got more hits from technorati because of my post about spotplex then from spotplex itself.

The Bottom Line: Unless you already have a reasonable amount of daily traffic I wouldn't even consider using it.

Monday, July 23, 2007

Link Popularity Tools

Over the past couple of weeks I have begun to pay more attention to link popularity and page ranks. In my searches I came across a pair of tools that can be helpful for performing analyses in this area.

The first of these tools is at This tool takes the url of a site or sites as input, and produces a count of the number of search hits on a handful of search engines: Google, Yahoo, AllTheWeb, AltaVista, and MSN. The output also displays a handful of other sites as a reference.

The other tool I found is used for predicting your google page rank. Google is constantly updating their own page rank, but this doesn't appear in the directories (as seen with the google toolbar for example) immediately. Instead google does an update to the directory several times a year. This tool predicts the page rank based on back links to your site. Quite useful for planning, and to see the fruits of your page promoting efforts.

Sunday, July 22, 2007

Top 1,000,000 Alexa!

Within the past week or so this blog has broken into the top million websites listed on This really isn't that big of a deal, but things have been moving up right along. To be honest I am still unsure if this is because of all the increased traffic I have have picked up, or if it is just because I now check the blog about twice a day with the toolbar I installed. Whatever the cause its a definite plus!

Reminder: Anyone with questions about DynamicMUD should read this post. I will aim to start answering questions over this next week.

Saturday, July 21, 2007

Any Questions?

Todays test went quite well. A few bugs were found, but not many, which is always a good thing. During the test a lot of questions started flying, so I think this is a good time to let people ask questions about DynamicMUD. So far a bunch of people have expressed interest in the project so far, but I think a lot of people so far have only had a chance to scratch the surface per say. If you haven't yet I would definitely recommend reading about what DynamicMUD is. If you have any questions about gameplay, features, the timetable, or anything else about the project please post a comment here and I will either post an answer to the question, or reply directly to the comment.

Friday, July 20, 2007

Dynamic Test Tomorrow!

The test that I keep mentioning is tomorrow! The event is scheduled for tomorrow at 3:00PM Eastern Standard Time. If your not in the EST time zone then look up what time that is for you here. If you haven't already signed up or haven't considered showing up, please do, it will be very helpful for development, and should be a good hour or so of entertainment.

Thursday, July 19, 2007

The Road Ahead

This is a good opportunity to explain what is in the plan book for the next few weeks. This Saturday we are running our second test of the summer. This coming weekend and next week my current plan for coding is to work on integrating items with the persistence system that the game world and being are all tied into. This will allow for a great expansion of potential options for players during testing. The first few off the top of my head are capture the flag, find and retrieve, and keep away type games.

I am going home for part of the weekend to drop off my car for some work so hopefully I will be able to accomplish all of my goals for the weekend. If I can pull this off, then my plan for the following weekend will be to implement a capture the flag game by integrating tag and items. This also might be pushing my luck because of a wedding that weekend. And of course the weekend following that I will be out of town for karate. My plans for the remainder of the summer involve lots of testing and polishing of the core code. Hopefully by early net year I will be ready to start expanding on the core.

Wednesday, July 18, 2007

Phosphor the Multiplayer Shockwave FPS

Yesterday I got a chance to try out an interesting new game... the only First Person Shooter I have ever seen then is entirely implemented in shockwave. The game plays much like Quake or Unreal Tournament, has a handful of weapons, and some great visual effects for a 3d game implemented in only shockwave.

The name of the game is Phosphor, and as far as I can tell it is being developed by a group called rasterwerks. Phosphor includes bots for a single player arena type game play. While a single player FPS implemented entirely in shockwave is crazy enough, there is still more! The game includes network and internet multiplayer!

This is a crazy find, and definite good free game to try out. I think this is the future model for games, and provides a great opportunity to become profitable while remaining a free game. Great for a short break from work or as a short diversion, but ultimately the best MMO style game is still going to be DynamicMUD. At any rate I would still recommend you give it a try!

Tuesday, July 17, 2007

New Google Referrals

A few weeks ago google adsense added a new set of referrals. These referrals are unlike the previous set, as they come from a much larger base of advertisers. These referrals are basically CPA or Cost Per Action ads, which means that the publisher is paid when a specific action is performed (for example sign up for a service). These ads can be run in conjunction with the normal ads, and many of them offer some serious pay outs. These also come with the advantage of letting the publisher guide his or her users to the ads through recommendations, which is a serious no-no with normal adsense.

I am hoping that these new ads (they are now rotating in the top right hand corner of the page) will bring in some additional revenue. I choose mainly gaming related referrals, two of them are for game design educational programs, and a few are casual games, and a computer hardware one. I can and will recommend you check out these services.

Monday, July 16, 2007

Calling All Testers!

Like I mentioned on Friday... and yesterday, a test is planned for the end of this week. That test will be on Saturday at 3pm EST. We will be testing to make bug fixes, minor code tweaks, and internal changes are all fully functional and stable. The main event for the day will be several games of tag, probably in several rounds, including a free for all, and a team vs team game of tag. If you wish to attend please go to the Tester Group and rsvp. Thanks all.

Sunday, July 15, 2007

I'm Back

The past day or so away did some good I think, got a good chance to relax without thinking about work, school, or even Dynamic (though I guess I really didn't stop thinking about dynamic.. I ended up having a good discussion on the subject with my brother. I got some reading in, played some monopoly, and even spent time outside on purpose!

I'm still looking for information on when the best day and time to hold the next Dynamic test. So far I've only have a slight indication that one individual will only be able to show up on Sunday, and someone did sign up for the tester group. Other then that its still open, so please let me know, Saturday or Sunday, what time of day? Post a comment here, post a reply on the tester group, or email my DynamicMUD gmail account.

Friday, July 13, 2007

When Is The Best Time For You?

I've been making some progress, not a lot of crazy new features, but some internal changes of reasonable magnitude. I think next weekend (21st and 22nd) of July would likely be the best time to run the next test. This should give me an opportunity to make sure the kinks are out of all the new internal changes.

In order to run this test I need people, preferably more then last time. So my question to all of you is: what day and time is the best for you? I will be scheduling this test even next week, probably on Sunday or Monday, and I could really use some feedback for planning the best day and time. Anyone who isn't already a member of the tester group please go join if you are interested in helping out.

This will be my last post of the week, I am leaving tonight to take a weekend
on vacation, I will be back Sunday night.

Wednesday, July 11, 2007

New Debugging and Stability Tools

It's been a few days since I last posted, mostly because I've been caught up with a few things, and quite frankly couldn't find anything I really wanted to sit down and write. I still have more then a week before I will be able to sit down to code a bug project so I've been slowly working at some functionality for dynamic to make it more stable, and I have some more things planned to help with debugging. The most notable change I did this week is to write some code to cleanly shutdown instead of crash. As long as the game doesn't hit an infinite loop then there is no reason why the game wont shutdown cleanly, saving all player and world data. This was implemented using a java shutdown hook. The hook allows you to create a thread that will be started when the application is terminated. For more details check out the Java Runtime Class.

The next major debugging tool I plan on writing wont happen until sometime after my next two 'weekend projects'. I am considering writing some code that would dump the state of every variable in the game when it exits prematurely (crashes). This would give me a snapshot of everything at the moment of the crash, and would be very beneficial for spotting the causes of bugs. Most importantly it will help me diagnose issues that occur when I am not around to see them, which will become an increasingly important issue as dynamic gets to the point of release.

Sunday, July 08, 2007

A Productive Weekend

A productive weekend so far, and I still have some time yet tonight. I managed to fix a bunch of bugs, correct some flaws in how some core modules operated, and added some useful staff functionality. And for the first time in a while it feels like the end of my short term todo list might be reachable. Things are going so well that the next weekend I have to code should hopefully be spent entirely on integrating items fully with the persistance model I have. The weekend following that and I will have Capture The Flag coded! Should be a great method of testing when that is done, given enough players show up. Speaking of testing, expect the next one sometime during the weekend after next, as next weekend I am heading out of town.

Slowly but surely the system behind Dynamic is growing, here are some stats. Dynamic is now up to 23335 raw lines of code. Of these lines, 12574 are actual executable lines of code (non comments and whitespace). This code is organized into 10 packages, 124 classes, and 1137 functions. Since moving to subversion I have commited 70 revisions. So far so good, i'm still hoping for version 0.1 by summer's end.

Friday, July 06, 2007

If You Were in The Simpsons What Would You Look Like?

I checked this out for the first time last night. On the Simpsons Movie website they have a bunch of games and activities to promote the new movie. The only one I've looked at so far is the one where you can create an avatar by selecting different choices for various features (eyes, nose, mouth, hair, etc). Click on the "Create Your Simpsons Avatar" tab and give it a try. Worth a laugh at the very least!

Thursday, July 05, 2007

Does Work Create More Work?

Like I mentioned earlier this week, I took advantage of having the entire day off yesterday to get ahead on coding. I fixed a handful of bugs, made improvements to several commands, and added a new command to make my life a little easier when running tests. I feel like I accomplished a lot.

When I look at my todo list, I see another story. I know I finished three of my 'todo groups', which was a significant portion of work, but when I look at whats left I now see four 'todo groups' to get to the same level of completeness I had intended before starting yesterday. A whole day and to reach the same milestone I was aiming for last week I need to finish a little more then I had before. This seems to be the trend, I've been shooting for this same objective since early last week, and despite expending a lot of effort I get farther away. Hopefully this weekend will be different, but you never can tell. Does this happen for anyone else?

Tuesday, July 03, 2007

This Week's Plan

I'm making sure to take advantage of this week's day off for the 4th to get ahead on coding. On Wednesday I intend to get caught up on all of the bugs that were found this past weekend during the test. This coming weekend will then let me get ahead. The main tasks that will be accomplished this weekend will mainly be working on some cleanup and minor internal improvements for the most part. I also am aiming to make some improvements to the line of sight system, in particular things like stairs and ladders. This has been an issue in the past, one of the problems I have yet to be able to solve is how to determine if a ladder is indoors or outdoors based on it's surroundings. Hopefully between now and this weekend I'll think of a solution to this. I guess that's all for now, I should have a progress report by this weekend.

Monday, July 02, 2007

What Is DynamicMUD?

Back when I was in high school I was an avid reader of PC Gamer. During this time I came across a very interesting advertisement. This full page add was entirely text, and described a game without graphics. A book you could write yourself while playing with other individuals on the internet. Needless to say I tried it out and got hooked on this genre of games.

While I no longer play this afforementioned game, it still invoked in me a desire to create. The feature of this game that stood out the most to me was the wilderness. This ASCII representation of a game world was the perfect set up for a game in my opinion, and had so much potential. Soon after the base concept for a new game was already forming. I would create a game that unlike it's predecessors would rely entirely on this representation to present the game world to it's players. At the time I had no programming skills, I made a few attempts at current codebases, but ultimately none of these would do, I grew bored and my ideas shrunk back to the back of my head.

Over the next few years my ideas expanded. I wanted not only a game where a wilderness was the whole game, I wanted a changeable wilderness. I thought, why not let the player deform the terrain, build their own structures, and blaze their own trails. DynamicMUD was born.

Since then the concept has grown into an even larger plan. During my summer before college I first experienced python and began coding haphazardly the game that I wanted. Much was learned from this experience, including the lesson that planning helps a lot in design. And more importantly, even though python was great for coding quick, it lead to many shortcuts. I realized that I needed to start over, this time with a plan to write a specification first, and dictate every feature I wanted first. Around that time I started this blog to document the journey from concept to specification to code.

I started over in java, planning everything to be modular and maintainable. Coding has been slow going, and I have yet to get to the level of completeness that was available in my python version. Despite this things continue to move, though very slowly, and someday DynamicMUD will be finished.

Dynamic is based on one primary concept, change. Nothing should ever be set in stone in a game. National boundaries wax and wane with wars, the landscape is shaped by these conflicts as well as the weather. Resources can be scarce. This will drive an in game economy and be the source of constant change, creating the history of the DynamicMUD game world.

Unlike most other MMORPGs currently on the market, players will suffer from finality when they die. They wont be resurrected, or brought back to life by any other means. Life spans will be short, and in the course of several years of game play many generations will live and die, adding to the flowing changes that take place in the world.

Players will rise to become great leaders, unite several tribes, and wage war for the land. Players may be betrayed and politics will be an ever present part of life in DynamicMUD. Essentially welcome to another world, where what you do is your choice. Live the life of a farmer, live in a quiet village and help supply your surrounding villages with food. Be a sword smith and become known across the land for producing the strongest cutting blades, outfit your nation's troops, and equip the war machine. Or be the soldier, command armies of troops and do the bidding of your lord. Destroy your enemies and burn their homes to the ground. These lifestyles as well as any others you can think of are yours to play out. The choice is yours.

Sunday, July 01, 2007

Today's Test Complete

Thanks everyone who came today for the test! I think a lot was accomplished, many bugs found, and some good suggestions were made. This should give me plenty to do over this week and next weekend. I am not sure when the next test will be set up, but it will likely be sometime in the near future to ensure that all the bugs that we found are fixed. Thanks again, and I hope everyone enjoyed themselves!