Frogatto & Friends

Frogatto sprite

Frogatto & Friends is an action-adventure platformer game, starring a certain quixotic frog.
We're an open-source community project, and welcome contributions!
We also have a very flexible editor and engine you can use to make your own creations.

Content News #2

March 3rd, 2010 by Jetrel

We’ve upgraded the world-map’s logic; it’s now got text-labels on each of the locations, and rather than (in debug style) being accessible from the main screen, the map is accessed as we’d intended it – there are a series of magic pedestals you can stand on to be whisked away to the map; these offer a network of shortcuts between key points in the game, so that if you need to backtrack to finish a side-quest, or collect a special item, you can do so.

These are currently accessible by default, right off the bat, but we intend to make them something you have to unlock by completing a quest in the game.

We’ve cleaned up a bunch of the movement mechanics with ants, and frogatto spitting them – they now sit stunned on the ground for a bit, and flash when they’re about to recover.

We’ve also removed the “exploitable” behaviour wherein spitting an enemy into a wall at point-blank range would kill it – now, it simply reflects backwards, passing through the player. We’d put that in to handle that edge case, but (as we feared) it was such a convenient way to kill them that it was being used more often than the normal methods.

Long, rambling aside on game design:
Some designers might not care, but exploits like that, in my opinion, tend to break the ‘immersion’ of a game, because they’re a jarring reminder that it is just a videogame. They’re a bit like “a glitch in the matrix”, if you will. Most games have issues like this, and one or two won’t kill a game, but they do add up, and enough of them will cheapen the experience.

This example in frogatto was a fairly weak one; a much stronger one might be a classic RPG which happened to allow you to toss items from your inventory at enemies – and in which by whatever accident, tossing a shoe did more damage than the intended spears or knives. It’d be amusing, sure, but the key problem is that it robs the game of the intended experience, which is fighting with actual weapons. (I’ll leave arguing whether sticking to the intended experience is a good or bad thing to another post; generally speaking it tends to be bad, because it tends to have very shallow assets to it – the creators didn’t expect it, and therefore didn’t create art/scripting/custom-interactions/etc for it. It may happen to work, but it’s usually buggy, ugly, and sometimes outright able to crash a game.)

Another argument against it is that – if some exploit causes something the programmers and artists invested a bunch of work making, to get completely neglected, then their work on that thing is wasted.

On the flip side of things, accidental gameplay exploits like this can be an excellent way to discover emergent gameplay. Designers tend to have a kneejerk reaction of disparaging/correcting anything that didn’t fit their initial plan, but the ultimate goal of gamemaking is to have fun gameplay and “fun” is notoriously hard to invent. If you stumble across something that’s really fun, by accident, it might be worth changing the plan to accommodate it.


Graphics News #7

March 1st, 2010 by Jetrel

We have a cave background now. Woohoo.

This brings us most of the way towards having the cave environment done, although we have essentially no enemies/traps for it at the time being.

Like most things parallax, a still screenshot doesn’t quite do this justice; it doesn’t convey the sense of depth this has ingame.

Edit: I also drew a new font. The old font was quite typographically schizophrenic and just plain amateur; this font tries to actually follow rules like having consistent x-heights, and consistent ascender/descender lengths. The previous one was just a quick hack job to finish any small font at all, so we could implement the text-label object (which lets us place arbitrary text labels on levels).