Mine Sweeper

by AMiTo

A history of my Minesweeper clone

Back when I first wrote this Minesweeper clone, I was looking for a good web-based Mine Sweeper game that I could play and perhaps "borrow" for my own personal home page. After looking around doing searches in Google, Yahoo and other search engines, I thought I had wasted a lot of time because none of the Minesweeper games out there were very promising. I found basically 3 types of Mine Sweeper clones: Javascript Minesweeper, Java-applet Minesweeper, and html form-based Minesweeper.

Some of these claimed to be the "best Mine sweeper", or that "you won't notice any difference between this game and the real one." But, believe me, they didn't quite measure up to the real Windows Minesweeper game.

The html form-based Minesweeper needed to do a form submit every time the user would click on a square... I know, I know, obviously it didn't perform.

The js Mine Sweepers were a lot better, but not as much as I would want. Many of the features were not available, like right-click for marking mines, or simultaneous righ-left click to clear mines more efficiently (BTW, for the longest time I didn't know this existed -- if you don't know what I am talking about, I suggest you read the help file in the Window's version of Minesweeper, you'll thank me later). Recently though, I have found some cool ones like this one. Most of them forget to pre-load the images that the game uses, so gameplay ends up being a little choppy, usually at the beginning (when not all images have been loaded yet).

The java-based Mine Sweepers are usually a lot better, closer to the Windows version. There are even multi-player ones out there. They are pretty cool.

After all this research, I felt that I could write a js Minesweeper that could improve upon the versions currently available at the time (the java-applet versions were already very good, so I didn't bother with them). In addition to Javascript I also used perl script to be able to keep a table of "best times". The table keeps the top 10 best times for each category. In order to keep individual "best times" I make use of cookies (so please enable cookies in your browser). I also make use of popup windows, so you'll need to disable popup blockers for this game to run properly.

To set my Minesweeper game apart from the others, I added sounds! Well, since there was no way that I knew to play sounds programmatically from Javascript in a web page (other than playing a background tune when the page loads), I decided to write a sound player java applet. The applet was really easy to write, so I encourage people to borrow it so that they can add sounds to their otherwise mute pages. (If you know how to borrow it, then you'll be able to figure out how to use it.) You can turn the sounds off if they get on your nerves.

In May of 2001, I had finished my game, and showed it to some friends and they really liked it. I even submitted the game to a couple of search engines, but I was never able to find my page by performing web searches (I still can't, that is why I am writing this intro/history page). After a couple of months, I totally forgot about this page. Years passed, and I needed to send some large files to my brother in law. It occurred to me that I could use the free web space that I have in this site to facilitate the file transfer instead of sending the files via email, clogging up my brother-in-law's inbox. I thought for sure that the account would have been long gone, because I hardly ever used it, but it wasn't. After FTP-ing the files I need to send, I checked out what I had in the site as far as pictures and other things that I had forgotten about.

That's how I started to do some spring cleaning of my web space. And that's when it happened. For some curious reason, I played my game (I remembered that I made the cookies expiration time of 1 year, because none of the personal best times were set - but then I remembered that I had re-installed the operating system in my computer many times since I wrote the program - so never mind!). I played many games, scoring some of my best times ever and was beginning to think that something was wrong with the program, a bug perhaps (impossible!), because I wasn't qualifying to the "best times" for the site. I clicked on the "Site Best Times" button and to my surprise, the table of best times was full of names that I'd never heard of, with some scores that I could never beat (I still can't).

It seems that not one, but several people found my page and started playing in it. It seems that they played a lot too, because the times that they got were pretty good, they rival some of the best times world wide (if you can believe what is posted in some web pages out there - including this one). Of course, there is the possibility that they hacked my site and put bogus scores, but then again, why would you do that in a page that hardly-anybody knows?

To this day, I can't find my Minesweeper game through search engines. I did find it once, after hours of grueling searches, and it was a page that had a link to my page. How they got the link I still don't know. But I am determined on getting my page to appear in a search result from Yahoo and Google. So if you do find this Minesweeper game and you like it, drop me a line at m u r i a n 0 0 @ y a h o o . c o m

So without further ado, click on the link below to experience my Minesweeper...

Launch MineSweeper