KimmoA.se presents…

The bizarre world of Clickteam

Some general history

Long ago, back in the distant 1980s, there were AMOS and STOS on the Amiga and Atari home computers. These were basically easy-to-use programming languages for making games, made by some French genius. He and another smartie later teamed up and produced a series of GUI software for Windows which didn't use a text-based computer language in the traditional sense, but instead featured various "editor screens", the most important one being the "Event Editor", where you selected "conditions" and "actions" in a visual manner in order to create interactivity for the objects you had previously created. The first program in the series, "Klik & Play" (KNP), was released in 1994 and is probably the most famous among them, as well as (to the best of my knowledge) the first of its kind ever in computing history.
Their later products got increasingly powerful and complex and were called "The Games Factory" (TGF), "Click & Create" (CNC), "Multimedia Fusion" (MMF), etc., available in multiple generations, languages and various special editions. Essentially, all of them are the same basic program, sharing the same concepts to a very large degree, but marketed to different demographics. For instance, the original Klik & Play was very obviously aimed toward kids and consumers, whereas the other ones had less and less childish interface graphics and emphasized the fact that you could create any kind of multimedia application, rather than just games. At the time of writing, only The Games Factory 2, Multimedia Fusion 2 Standard and Multimedia Fusion 2 Developer are supported/current, and these days, The Games Factory 2 is actually just MMF 2 with some minor visual changes and limitations.
They also have some other software, such as a professional installer and a patch maker, and some retired/failed products such as "Jamagic" (an attempt at a 3D version of a game maker from the early 2000s) and "Vitalize", a Flash-like browser plug-in for playing applications made for their special runtime, with a total install base of ~20 computers world-wide.
I and others simply refer to all these products collectively as "Klik", and users (or ex users) as "klikers". It's still unclear to me whether that was originally an actual typo, or just a trademark that needed to "stand out". (After all, "Click & Create" wasn't called "Klik & Create" or similar.)

My relationship with the products

Without getting into too many personal details, it can doubtlessly be said that KNP, the first productivity software I paid for, meant a lot to me when I was a kid. Having no access to the Internet (or any other network except for sneakernet) and not really knowing anyone who was a programmer, this must've been a crucial tool for my digital creativity. After all, it did allow people with no coding experience to create stuff using abstract logic. And boy, did I make a lot of things in it! You wouldn't believe it. I barely believe it myself today. Only a very small fraction of those creations have survived, of course, since my idea of "sufficient backups" back then was to put it on a single floppy disk in a small "glass" (hard plastic) cage and "it'll be safe forever". And most creations never even made it onto a floppy disk.
Although I have not seriously used the products since the early 2000s, it's been one of my many weird personal hobbies to attempt to understand everything there is to know about this little world. It interests me for multiple reasons. Although I've tried them out from time to time briefly over the years, in late 2011, I made a proper journey back to the world of Klik and purchased MMF 2 Standard with the Flash exporter module (then upgraded to Developer) and was going to give it a real chance, thinking that it must've progressed really far in all these years. I had felt a lot of frustration about "coding for nothing", since, alas, almost nobody cares about how you made a game (or indeed how you made anything). I also was extremely attracted by the idea of being able to export the creations to Flash and other platforms so "easily".
So, I sat down to really learn every single detail about the current product, often comparing it in real time with the older products in virtual machines and spotted many interesting differences which can be hard to pick up on based purely on your memories. The good part is that the same two main programmers are still working on it after all these years. If they had retired, I probably would never have bothered with this as it's largely tied to nostalgia.
I could list everything that sucked about those old products, especially KNP, but it wouldn't make much sense here. It's so long ago, and it'd really have to be a separate, huge article. The purpose of this semi-rant is mostly to let other old ex-klikers know what the current state is. This is what I found out.

A Frankenstein's monster held together by duct tape

At first, I quickly felt the old ways set in. I got creative and was able to get lots of different projects and experiments started. It really is nice to be able to create objects and move them around in a GUI; this is something I always wish I could somehow combine with a traditional programming language in a sane manner. You have to work "blind" in those unless you first make a game-specific level editor and whatnot. Indeed, I've heard that some people use Klik for "prototyping" a "draft", then create the actual game "properly".
The Event Editor had been improved in some ways since I was last working in it, although lots of weird glitches in the UI made it feel awkward in some situations, especially combined with the Event List Editor. I still think that the base product idea is really great, and the "four main views" really work well together. That's truly ingenious.
Now, about all the problems. First of all, what struck me immediately was how outdated it felt. Sure, some progress has been made, but really not that much. In eleven years since I last poked around in MMF, many of the annoyances had not been fixed, and while it'd be a major undertaking, no support for vectors of any kind was present still; it's all raster based. Plain ol' bitmaps and fixed pixels. This makes it ideal for some kinds of games but a nightmare for many others. It's not even possible to draw circles, rectangles, lines or individual pixels without abusing ugly and "expensive" so-called "active objects" (sprites with lots of overhead). And naturally, it's completely 2D based. Any 3D will have to be faked or hacked in via some extension, and obviously will never work properly. You can't really expect it to, since working in 3D is so fundamentally different from 2D.
Another really annoying part is how Clickteam relies completely on their (pretty great) community full of math and coding geniuses (that's actually meant seriously, as weird as it may sound due to the nature of the programs) to make every damn extension and tool they won't make themselves. This may sound perfect to you, but I'm talking about really basic things that they really should provide. For example, even the de facto official extension manager is made by some user (using a Klik product!), with no official repository available, meaning that every user who paid good money for this is dependent on some random kid in his basement and his home PC being up and running and secure. That kind of thing doesn't exactly instill confidence.
As for the extensions/objects… there's a zillion of them, and most were last updated in 2001 or so and completely unsupported by the original authors, not to mention by Clickteam. Basically, whenever you want to do anything "fancy" (which is pretty much required for any non-crappy game), you need to rely on some weird third-party object made by some bright but bored teenager, often with little or no documentation (much like open source software). When it does exist, it's usually very poor. I almost felt as if I paid for nothing, since most of the stuff that makes it actually work is provided by users who don't get paid.
It didn't take long to realize that many conventions of modern Windows productivity software just weren't there (scrolling around by holding the middle mouse button, the ability to zoom in/out in a sane manner, having a column/row highlighted on hovering it to see where the hell you are without having to follow the cursor around from the top/left, etc.), tooltips were only randomly available, and the descriptions for options which were sometimes available forced you to expand the pane to read it, and then manually restore it again. Many little things like that really contributes to an unpolished, messy, annoying interface. Don't even get me started on the does-nothing-at-all "legacy baggage" found here and there, and things which no longer work in the accelerated video modes. The official documentation (which you are forced to consult since the in-app clues are nonsensical) is extremely outdated and seemingly never touched.
How about a total of 26 variables per object? None can be set per-frame. But at least they can now be renamed. Floats? Forget those! Here we deal with integers only. A random math function? Sure, but it's not very random at all, and it's insanely fucking hard to use. What's that? That expression is too complex? Shorten it! What? You want proper OR functionality?! Forget it! Copy and paste your events, or use some insane hack! We love insane hacks to get stuff done here!
While it at first may seem beautiful (and it is, if you only do very simple things and are happy with a buggy and amateurish-feeling end product), the extreme limitations and bizarre bugs soon force you to build some really awkward work-arounds which are not intuitive at all. Sort of like in the old KNP days, although not nearly as bad as that. You may feel smart when you figure out how to hack around doing basics things such as wasting a global variable just to keep track of a "tick state" so you can avoid executing multiple events in the same tick, but it's really just ugly hacks that negate the entire purpose of using this kind of software. When I realized that even checking whether the mouse is over a specific object screws up if another object is behind it which also has such a check, I had to give up my main project. Which, by the way, had all its graphics made in InkScape and imported, since the over-the-top buggy built-in image editor fucks everything up beyond recognition.
Ugh. I could go on and on about these perverse design decisions forever, but it's pointless. Basically, using the software is like a quest on its own: everything is a total mess of inconsistent ideas and half-assed implementations. A lot of weird limitations and conventions that were introduced in the ancient KNP still remain in today's Klik products, although most are slightly evolved. And yet the basic ideas were so great. It's really quite sad. You definitely could call this a love/hate relationship. (Mostly hate, though.)

A word or two about the runtimes

I came around at a time when they were just switching to supporting hardware-accelerated drawing. Yes. In late 2011, the games you made were drawn using ancient techniques without utilizing the acceleration provided by modern hardware. This resulted in annoyingly laggy and glitchy drawing, even for their own demos (which, by the way, are of horrible quality compared to the original KNP ones). You could clearly see the difference when you switched the drawing mode. That kind of thing bugged me a lot.
They have also just recently started supporting alternate "runtimes". Traditionally, this has been software running on Windows, for Windows. Nothing else was supported unless you count the special browser plug-in which nobody uses and nobody ever used (or the short-lived Mac version, back in the day). The recent changes theoretically allow you to export your app to Flash, iOS, Java, Mac (just a Java wrapper), etc. And that sounds fantastic, of course. Too good to be true, huh? Yeah, it is. It just doesn't work in practice.
These additional runtimes are sold as separate modules, and you need the MMF 2 Developer (most expensive) software to use them properly. The fake-Mac/Java one is perhaps the most useless of them all. It's slow like hell, doesn't support any nice features (more on that in a moment) and also just works in the most expensive version of their software, in which it's built in. Prepare to pay for that one if you are insane enough to want to put yourself through this torture even after reading my article, as the other versions are pretty much worthless.
About the compatibility… not only does each extension/object need to be specifically made to support every runtime you target (which is never the case, making them useless for the kind of seamless cross-platform stuff you imagine is the purpose of all this), but even many core features are broken with random target platforms. For instance, the Java runtime doesn't even support semi-transparency. The Flash one doesn't support transitions, MIDI playback, semi-transparency for text, and a ton of things you expect a Flash app to be able to do (such as actually have anti-aliasing on the text, or open links without using some third-party hack).
If you reason the way I did, thinking that it's far cheaper than Flash Professional, plus cross-platform and familiar, you're in for a nasty surprise. The most polite way to put this is that it's a real mess. A mess I'm never diving into again. At their current pace — a turtle with golden syrup on its feet moves faster — MMF 3 will still take ages to finish and probably won't fix a fraction of all the things that are wrong. Although being proved wrong in this case would be pleasant.

Keeping the good memories

Pretty soon, all these things combined really made me question my purchase. But, as always, one justifies things to oneself in order to not admit having made a bad decision. That's why there are fanatic "fanboys" for each video game console. What happened next kind of came as a salvation, really.
One of the management guys started harassing me (I sure attract the most mentally ill stalkers wherever I go) for asking too many "difficult questions", and his manager buddy (neither actually work on the products at all, but spend their time scaring away the few customers who are foolish enough to buy into their lies) eagerly joined in. It came to the point where their insane behaviour made it impossible to participate, and they'd rather grant me a full refund than to handle my complaints and suggestions. And believe me, those were polite and reasonable.
This company really disrespects your privacy and assumes that you are a software pirate unless proven otherwise. For instance, it saves a full "last saved at" path inside the project files without telling you. They are able to check any compiled EXE and figure out whose license it belongs to, since they bake in the license key, at least partially. It should also be noted that they have the ability to "reverse" any software you make and turn it back into a project file, with just the comments removed. At least one person outside of Clickteam has been verified to have privately created a reverse engineer tool for this, although he has never released it as he's not malicious. Just imagine if that leaked somehow…
On a page on their site, you can read that two of their core values are "Products that are tested and stable" and "Respect" (for the users). Yeah, well… all companies seem to just make stuff up. On the other hand, they have not updated some parts of their site for many years, so I guess this could've been true when it was written.
This experience was valuable as I got a good idea of the state of the company, and no longer have any desire to use their products. I still respect the actual developers and founders of the company, however, even if I think that they have given up on improving their outdated software. I strongly suggest that they make a completely clean break with "MMF 3" and don't call it that at all, instead throwing out all of these stupid conventions and limitations and having one button build executables for all supported platforms, without the need to rely on third-party hacks. Flawlessly. Polished. No problems for the user.
I came around just in time to watch them switch forum software from something crappy-but-classical to something awful-and-useless. Things they did and said suggest that they are moving into a very common direction these days: total violation of everyone's privacy for absolutely no sane reason.
On the pro side, I've never seen a more helpful and skilled community. Almost every single person in their gated community chat room, for instance, had some grand project going on or was developing extensions/software which Clickteam wouldn't. It's a small community, but extremely loyal, skilled and helpful. Still, I can't recommend anyone to buy this product due to show-stopping limitations and insane management.
Whatever technology* I end up picking for my next bunch of games (which are already delayed by many years) in this complex world, it won't be something made by Clickteam. François and Yves, your original Klik product was very limited, but at least (relatively) polished and solid. Today, your current creation is truly the software equivalence of Frankenstein's monster.
(* I picked JavaScript/"HTML 5".)

Clickteam Fusion update in 2014

2014-08-15: Clickteam has released their new product: "Clickteam Fusion". One-word review: meh.
I was actually a bit shocked by just how minor of an upgrade it appears to be. At the time of release, they already call it "2.5", and it'll likely stay that way. This is clearly in reference to their previous products having "2" in their names, probably meaning that they don't want to "revert" back to a new 1.0 for marketing purposes. So I guess even to them, it's not a "3.0", but rather just halfway to the next generation. I wouldn't even call it that.
Continuing on the fine tradition that has defined Clickteam since the early days, this "new" program is really mostly an excuse to get people to pay again for a slightly enhanced version of what they already have. It is extremely similar to Multimedia Fusion 2, although a few minor suggestions of mine have been implemented (whether or not they actually listened to me). Still, it's just the same old thing with a physics engine which may or may not be Box2D. You can easily tell that this is just a slightly brushed up rehash of the existing product — not a "new era" following a total remake. And that's clearly how they want it. I did half expect a completely new thing this time, maybe with vectors, a timeline and things like that, but I also expected it to take years to get released. It seems unlikely at this point that such a thing will ever come out of Clickteam.
Worth mentioning is how their shipped example games have become more and more pathetic over the years. This time, they barely even bothered to include anything at all. Compare this to their original Klik & Play product, where you got a number of solid example games with high production value to dissect. It only went downhill from there in terms of ambition, it seems. Maybe they just got lazy. What I liked about their initial products in the 1990s was that while they were very limited, they at least felt polished and "wrapped up" in a way that just isn't the case with their later offerings. I'm genuinely disappointed, but this won't stop a few geniuses around the world from making very impressive games with it. However, those people could do it regardless of the tool and just happen to spend the time to learn the many bizarre quirks and ugly hacks necessary to make anything complex in these products.

Now what?

You can send me some feedback, tip me or link people here.
Short address to this page: http://kimmoa.se/klikrant
Published 2012-04-02. Last touched 2015-05-09.