By continuing to use the site, you agree to the use of cookies. You can find out more by following this link. I Accept
navi icon
/img/rainbow_puzzles.jpg
Match two plus n puzzles as a story telling device. Combination puzzles beyond puzzle adventure. Part one - raw sketches.
2015-07-08 19:16:53 Here you can play my first prototype for 'puzzle adventure':

So puzzle adventure is a match 2 game, where you combine 2 matching colors to move a player object ahead. It's a more an RPG than an adventure because the 'story' is told via simple quests. A task like collect 3 red to do whatever.

Let a little piece of code talk to you:

/**
combination games are a match 2(+n) to make a valid statement
which shell cause a reaction
red and blue -> violet object
blue and red -> 'you are mad' (because it is a rime)
blue and green -> 'never seen'
green and green -> a green 2 object
*/
var game = {};
game.objects = [];
game.combinations = [];
game.init = function() {
//initialize game
game.objects = [];
game.combinations = [];
};
game.store = function() {
//store json to localstorage for example
return JSON.stringify(this);
};
game.load = function(json) {
//load the json (file, localstorage etc.)
//json = JSON.parse(json);
};
game.combine = function(a, b) {
//if a b is a valid combination ->cut [bread] with [knife]
//if a b is not b a is -> you can not cut the [knife] with a [bread]
//if a b && b a is not
};
game.getObject = function(ref) {
for (var i = 0; i < game.objects.length; i++) {
if (game.objects.ref == ref) {
return game.objects;
}
}
return null;
};
game.hint = function(ref) {
var obj = game.getObject(ref);
};
function GameCombination(a,b,callAction) {
this.a = a;
this.b = b;
this.callAction = callAction;
this.isValid = function(a, b) {
return (this.a == a && this.b == b);
};
this.isInvertedValid = function(a, b) {
return (this.a == b && this.b == a);
};
this.isPartialValid = function(a, b) {
if (this.a == a) {
game['hint'](a);
return true;
} else if (this.b == b) {
game['hint'](b);
return true;
}
return false;
};
}
function GameObject(ref) {
this.ref = ref;
this.name = name;
}

Rainbow horses are hard to ride. They are not easy to find. It's easier to find an rainbow unicorn. Just wait Github to fail again. But rainbow horses represent a two word combination. Like eye legs.
This might be translated to I walk. So what is rainbow horses standing for? Ride your fantasy?
Well that is a good start for story telling. But also a rainbow contains many colors, many choices, like the horses. Which horse may you pick for a ride?

Combinations can be unclear and insignificant.
Make sure that your combination puzzles are pregnant, meaningful or funny at least.

Otherwise you will and up with a sentence like this.(head picture)
I(eye)['m] going(legs) to(2) kill(sward) you(U - underground sign)!
Cheese(cheese) or(v - mathematical or sign) bacon(bacon) sandwich(sandwich)?

Because we all know the Underground is a subway and subway is selling sandwiches worldwide.

In the next blog post I will explain the difference between 'Puzzle Adventure', 'All Men Are Pigs', 'Hurry or you will loose your job'(an unpublished new game) and this code snippet above.


Share the article: 




SMARTER CONTRACTS - Tokenomics: A New Economy of Art

SMARTER CONTRACTS - Tokenomics: A New Economy of Art

How can we move towards a creator-centric blockchain economy? with Kevin McCoy, Rhea Myers and Primavera de Filippi, chaired by Mark Waugh

about the html \nbased adventure framework.

about the html \nbased adventure framework.

The HOGventure HTML adventure editor