(Flash "game" reward at end of essay...)
For a while now I've been trying to create a game which would allow me to generate content inside the game. Basically, I find it very hard to go and draw in program B, script out an encounter in text, create a map in program C... it's very broken, sort of like if you had to write a novel by writing one file full of the nouns, one file full of the verbs, and one file full of everything else.
If the creation system is in the game, you can create something and keep right on chugging. Sounds good, right?
Well, you don't see it much, and when you do, it's almost always painful. The reason is relatively simple: there are major programs out there dedicated to helping you build that kind of content professionally, and your dinky little in-game editor is going to suck compared to that. Compare a major paint program like Photoshop to something embedded, like a paint BBS system. Sure, you CAN produce decent content with the BBS tool, but it takes longer and is a whole lot more difficult.
And, of course, either way you slice it, it takes someone who's good at whatever it is they're doing before they can create good content. The teenager with wild dreams of creating a "1337 dUnGuN fUlL oF 7175" can't create anything worthwhile because he has to go make sprites and other crap that requires years of practice.
So, as I was furiously punching Flash in the nose, I thought to myself: hey, what if we made the characters pros and simply made the players direct them?
For example, the painting minigame is pretty simple: your character gives a few suggestions as to what they think would look cool on the canvas. You select one, then you just swoosh your mouse over the canvas. Whatever you've chosen is mapped to your swoosh.
So if he suggests a nice blue blat, and a kind of stippled red cloud, and a rose, you can choose one and then add it to the painting (add it many times, if you want). You don't have to resize the brush, or worry about how much smoothing there is. You don't even have to think about pressure sensitivity. The character has specified all that complex shit in his suggestion, under the surface.
Depending on how you build your character and what sort of things your character is exposed to over the course of the game, you'll get different suggestions. So the complexity that normally damns amateurs is taken care of, packaged into a game.
Moreover, because we're packaging these for the player, we can include metadata. If the player uses a rose in the painting, we know it's a rose instead of just being a bunch of red blotches. Therefore, NPCs who view the painting can say, "hey, a rose!"
Painting is just the tip of the iceberg. Since we're packaging complex rules away from the player, we can begin to layer absurd complexities in a fairly transparent way. For example, we can have a tailoring minigame which works just like the painting minigame. Except that as you brush the "cloth stroke" over the dummy, it not only maps to the surface of the dummy, but also takes into account what part of the body it's being "painted" on and what kinds of cloth have already been created beneath it.
You can even use the painting you already made as the cloth, and in the clothing's metadata can be commentary on what it covers and doesn't cover, what kind of cultural impression it makes... so someone doesn't say, "That's a nice floral sundress!" when they should say, "why are you walking around in only red lace underwear?"
You can continue this abstraction in theory forever. You can have a similar "suggestion" system for city building, starship construction, social interactions, a culture, a monster, even creating new minigames.
The difficulty with this kind of system is that the character has to be able to make suggestions that are (A) transparent enough for the player to understand and (B) clearly linked to the character's in-game state and history. And, of course, the suggestions have to be able to be mapped onto whatever "surface" you're "painting" on, whether it be a canvas, an obstacle course, or a planet.
("In this replacement Earth we're building they've given me Africa to do and of course I'm doing it with all fjords again because I happen to like them...")
I'm going to see whether I can whip something up... but what do you think?
Edit: Here's a very simple version that you can play with for kicks. It doesn't use "real" stuff like flowers or anything, but what do you want out of an hour-long project?
Click on one of the gridded brush examples to use that brush. :)