Back in 1995, I momentarily stepped out of college to devote myself to a wonderful 2-year journey that would take me from a simple but clever gameplay idea, to a complete game distributed by a shareware publisher.
The game’s special twist lies in having to control multiple blue characters — the clones — but, unlike games like Lemmings, all at once! When moving in a given direction, all clones try to imitate each others, unless they meet an obstacle. It therefore becomes crucial to use the environment wisely, in order to align the clones into certain patterns, trigger multiple mechanisms simultaneously, avoid weird and sometimes dangerous creatures and traps, and guide them to safe haven.
The game is composed of 6 different worlds, 125 puzzles (each with 3 hand-crafted difficulty levels), some 30 songs, and tons of blocks, contraptions, vehicles, creatures, traps and magical devices, for over 6 to 10 hours playing time.
Clone became for me a sort of informal diploma, which landed me my first job as developer, demonstrating my self-motivation, discipline and skills. The kind of story that happens in the software industry.
Since then, over the last two decades, I’ve been tinkering with the Clone concept and working on some kind of sequel, creating many prototypes in 2D and 3D and on different platforms, such as Cocos2D (Objective-C) and Unity (C#). I might someday dedicate more time to that project, but right now I am focusing on my career and my family (Zoé, my fourth kid, has just been born this May 10!)
Despite a major lack of marketing traction (being only distributed by a small shareware publisher), the game got amazing reviews (and still does, 20 years later!)
If you enjoy creative and devilish turn-based puzzle games that never seem to run out of surprises, Clone is a game for you. With 6 huge worlds and a near endless variety of levels, it is definitely one of the best shareware puzzlers ever made.
[…] I put this on the same level as Lemmings, The Incredible Machine and other great puzzlers from the nineties. It’s a game so varied and so well designed that any puzzle fan would be utterly remiss to pass it by.”
This is an excellent puzzle game that I can highly recommend. […] The levels are well thought out, and there are a good variety of puzzles. The sound effects were spot-on, and I loved our hero’s speech. The graphics were brilliant, with every episode having a distinct theme. […] If you like challenging puzzle games, you are sure to love this one.
— reloaded.org (4.5 star editor ranking)
Clone […] has a unique premise that makes it a very interesting puzzle game. […] The catchy music, great interface, plus a large amount of intuitive levels ensure that you’ll have Clone around on your hard-drive for some time.
— oldpcgaming.net (4.5 star editor ranking)
Vintage PC games aficionados know that the DOS BOX emulator can do miracles in bringing old memories back to life.
- Download the full game (requires the DOS BOX emulator).
- You can alternatively play the game directly in your browser, even though the performance is not quite as good as a native installation.
- Download the soundtrack, composed by Wolfe Bowers from Figment Studios.
- If you are stuck, you can have a look at video walk-throughs of the first and second episodes on YouTube, made recently (in 2017) by a Clone enthusiast.
Origins and inspiration
As a teen, I enjoyed playing block-moving puzzle games, such as Sokoban, Boulder Dash, Supaplex and Nintendo’s Lolo. In 1990, I got my first PC and started learning programming (GW-Basic, QBasic, C, C++) pretty much on my own (often out of crude and lengthy reference manuals) and soon started to develop my own Labyrinth series of puzzle games for my friends, for which they helped me design puzzles. Not having a computer themselves, they would often come to my home with a paper version of the puzzles, which they would then input into the game’s built-in editor.
My best mistake ever
Interestingly, the Clone concept came from a mistake! While developing Labyrinth 3, I unwillingly placed multiple blue characters into the same level, but quickly realized that it was quite fun to control all of them at once. It didn’t work perfectly at first, because characters would overlap on top of each others, so I simply fixed that and kept on experimenting with the concept. It quickly became obvious that this was the real game I should be developing. So I renamed the game to Clone and came up with different coordination challenges for those clones, like aligning them into a certain pattern in order to trigger multiple switches on the floor at once.
Finding a publisher
Once the development was nearly finished, I sent out a demo to a list of nearly a hundred publishers that I found in a game development book. However, I received mostly negative responses, when I got any response at all.
I started negotiating with Sirius Publishing, that was highly demanding and very little giving, but I stepped down, because of disappointing conditions. First, they had this huge, very cryptic, 30-40 page contract. And, among many worrisome clauses, they stated that the jurisdiction area in case of dispute was in the US, in their own state, whereas I reside in Canada. Also, they provided very little royalties, and that number was always getting smaller as negotiations went on. Indeed, the game was first promised to be published on its own, then on a CD along 10 other shareware titles, which number later became 40.
I finally decided to go with LaserPoint Publishing, a very friendly, family-operated business, which provided high royalties on sales (30%), but unfortunately sold very few copies! At that point, I only wanted the game to be out there and wanted to avoid the fuss and expenses related to large publishers.
Just for fun, you may have a peek at the 1997 version of (now defunct) LaserPoint’s Clone promotion page, as archived by Wayback Machine.
Random notes, for the tech-savvies
- Regular C++ version was highly unstable because accesses to memory was not protected. C++ pointers make it very easy to make programming mistakes, which can go unnoticed for some time, and allow arbitrary memory to be written to. And it can become very, very difficult to find those errors, because you cannot figure the problem from the symptoms (which can be totally unrelated).
- I heard about a new way of programming, compiling and executing programs, called “Protected Mode”, which was possible with the Watcom C/C++ compiler and run-time, the same used in Doom. So, I went and bought a copy of Watcom C/C++, learned the specificities of protected mode, and started porting Clone from Microsoft Visual C/C++ to Watcom C/C++. However, that was a great challenge because all “illegal” accesses had to be fixed for the application to run. However, the run-time would immediately let you know (and terminate!) when such an illegal access happened, so they were easily identifiable. And, in the end, it allowed me to make the game rock solid, stable and robust.
- Sometimes when I was stuck on a big problem that seemed insurmountable and I was just too focused and insisting on fixing it, it was actually by taking a little break and emptying my mind that my “subconscious” would simply “pop” the solution without effort! Today, I strongly recommend taking breaks from your big problems (and emptying your mind) in order to figure and fix them! Anything from meditation to sport (or even looking at passing clouds) would do! ;)
- I had a great reference manual named PC System Programming, which was instrumental in figuring so many things about low-level PC programming (keyboard, graphics adapter, registers, interrupts…)
- I coded the graphics engine myself in highly optimized Assembly code, with support for:
- Blitting (displaying) thousands of sprites (images) per second.
- Masking, rotating, flipping, offsetting, animating sprites…
- Smoothly/infinitely scrolling the screen vertically, using double-buffering and directly interacting with the video card registers.
- Special graphics mode (referred to as Mode X) with resolution of 320x240 (instead of 320x200).
I initially created nice static cutscenes using an unlicensed version of some 3D software suite to render the images of different scenes with text that supported the storyline, but being too worried of not having the official 3D software license, I removed the cutscenes from the final version at the last minute (which I sorely regret today!) I kept the version with cutscenes on a set of four 3.5” floppies for many years, until floppy drives became almost unheard of. However, I recently found them in an old souvenir box, so I may try to find a hardware shop to extract the files and post them here! ;)
- Secret key “K” can be pressed near the end of credits to show a picture of myself as a knight in armor, that I “photoshopped” together, when I didn’t even know what Photoshop was (I used Autodesk Animator for all image editing). That image actually had to be stretched 200% higher, because the end credits were using a graphic mode of 320x400 (instead of 320x200), which gave twice the resolution vertically, but not horizontally (which was half-way cool!).
- Special key combinations can be used in main menu to skip or mark levels as complete (ALT+123 or ALT+159 on the num-pad).