Sunday, June 24, 2007
This is it, the last demo effect I'm going to be doing in as3. There are of course more I'd like to do ( Using a plasma as a texture would be a neat one that springs to mind ) but I guess I should be more productive in an actual game kind of way with my free time, rather than pointless eye candy.

Anyway, enjoy yet another cube variation.

DotVectors.swf (32.28 KB)

Squize.
Sunday, June 24, 2007 6:03:31 PM (W. Europe Daylight Time, UTC+02:00)  #    Disclaimer  |  Comments [1]  |  Trackback
 Saturday, June 23, 2007
Of course you can, more cheeky grabs from GOL that is you little trickster.

Here's some action shots from "Souper Bowl", which is possibly the first time I've ever had to code drool for a game ( These firsts are getting rarer, you know you've hit a new low when you've coded a baby messing it's nappy ).

Souper Bowl, it's all it's feeding the homeless glory

Mmmm, look at those bowls of piping hot soup. It's making you hungry isn't it ? Hungry for a bit of Game of life action that is!

Soon, oh so soon.

Squize.

PS. That could well be the cheesiest, hard sell blog post I've ever done. Which is saying something.

Friday, June 22, 2007 10:16:20 PM (W. Europe Daylight Time, UTC+02:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Thursday, June 21, 2007
I know I owe a couple of posts about the GOL games, but I've kinda fallen behind.

To get out of trouble, here look at this

Polygons.swf (147 KB)

Phew, that should buy me some time until I can pull my finger out and take some nice grabs.

Squize.
Thursday, June 21, 2007 3:57:19 PM (W. Europe Daylight Time, UTC+02:00)  #    Disclaimer  |  Comments [2]  |  Trackback
 Wednesday, June 20, 2007
... Let my spirit carry me.

So this is the third game (yes, I know, there are currently only two (including this one), but it seems that Squize didn't post yesterday ... shish!)

You surely remember the time when you just walked up the diving platform, stood on the highest one and did a somersault, backwards ...
... and you surely noticed that each year you thought about "what can go wrong" a bit more.

Well, after a certain point you forget about the risks and you go hang gliding, High Jinx in our case or short HJ.

gol_hj_00.jpg

gol_hj_01.jpg

Distance is the key to get your blood flowing again, and of course you have to do some resource management to get as far as possible.

After all I enoyed doing HJ, hope you enjoy plaing it.

2 games left ...

nGFX

Wednesday, June 20, 2007 10:01:05 AM (W. Europe Daylight Time, UTC+02:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Monday, June 18, 2007
 ... and it want it painted black.

Nah. painting is pure joy. Keeping an eye on your grandchild, too. Don't try it at the same time, though.

Finally after all those weeks here are some screenies from "Holding the Baby" or short ... HTB, one of the five games from the "Game of Life" collection we did (and one of the games I had the joy of doing).

gol_htb_00.jpg

gol_htb_01.jpg

Did I mention that you have to get it done in time?

Well you'll see yourself ... 4 more to go.

nGFX

Monday, June 18, 2007 6:56:24 PM (W. Europe Daylight Time, UTC+02:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Friday, June 15, 2007
Not posted many updates about "The Game of life" here for a while, so we're well overdue for a catch up.

My "Gift shop" game is done and dusted. It's only a straight forward Mastermind style game, but it plays pretty well and looks great too. I like it as part of the package because it's so different to everything else in there, a slow paced logic game ( Albeit still against the clock ). Fits in there well, and I think it achieves the projects umbrella aim of being able to target as many different players as possible ( Not everyone loves games which use the arrow keys ).

Olli's just finished his final game, currently called "The Day of the Triffids" ( Or Dot ), it's the exact opposite of Gift Shop. Really nice fast paced action using an asteroids style control system to control a lawn mower as you cut the grass and remove unwanted visitors.
I think it's everyone's new favorite game within the set, and a great one to finish on.

So after all this time, and blood and sweat and swearing, we're nearly there. There are some front-end alterations that I've got to make this evening, but purely visual stuff to update the existing images in line with the final ones, and we're ( Touch wood, and I don't mean that in a nob joke way ) gold.

Be so cool to see this bad boy live. Soon my beauties, soon.

Squize.

Friday, June 15, 2007 2:17:41 PM (W. Europe Daylight Time, UTC+02:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Thursday, June 14, 2007
Long time no post, so I thought it might be the time to do so again ...

While still working on the last GOL game ("The Day of the Triffids"), my mind starts wondering off to the next big project, the "logimotion" game.

I do dimmly recall that when doing the Wintertales/Deserrunner game I said something about explanation, but I guess it somehow slipped through just waiting there to be recalled now ...

So here we go:

Time based movement and tracks/tiles ...

While doing the engine I came to the point where I had to move the sprite over the player created tracks, two ways came to mind:

a) write some fancy stuff for each tile, using the sprite and offset it's coords according to the need of the tile.
b) write some fancy stuff that works whth each tile, using some other approach.

I decided to try the latter one.

What bothered me with the first method was that I had to map out coordinates or tween the sprite along the tracks which somehow wasn't what I wanted.

The second method wasn't that clear. I needed to find a way to move the sprite from the starting point of the tile/track to it's end ... after a few pointless tries I thought that I could just do it time based instead of position based.
This proved to be a very easy and re-useable way.

dt_track_00.jpg
screenie of the car in motion, showing the track, too.

As the car isn't shown top/dow, there needed to be some sort of animation and we wanted to be able to move with different speeds, too.

My first task was to invent some sort of naming convention which helps me to sort the different tiles and tell the code *what* this tile does without adding to much fuzz to the map.

So I decided to use a for digit code like 0011 for a corner from west to south, giving each direction either 1 for "exit" and 0 for "no" exit.
Then I decided to use "easings" to move from the starting point of the track to end point of the track. Moving a stright line (0101, or from west to east) would just ease the x value linear in say 16 frames (and because I had 16 animation frames ... you guess right).

This is what I stored for the tile:

this._tile_array[22] = {sx: 1, sy: 1, t: TileEngineClass.TILE_TRACK, f: "t_0101", d: "0101"};

sx/sy: size
t: tile type
f: frame in the tile mc
d: direction information

And this is what the player sprite "knows":

this._track_array["0101"] = new Array();
this._track_array["0101"][1] = {sx: _x0, sy: _y1, ex: _x2, ey: _y1, fx: EaseUtil.easeLinear, fy: EaseUtil.easeLinear, nd: 1};
this._track_array["0101"][3] = {sx: _x2, sy: _y1, ex: _x0, ey: _y1, fx: EaseUtil.easeLinear, fy: EaseUtil.easeLinear, nd: 3};

sx/sy/ex/ey: start coords/end coords for the easing
fx/fy: easing method for x/y
nd: the new direction after reaching the end point, used for corners mainly.

The sprite knows which direction (0-3, according to the 4 digits of the name) it's moving, the animation it should use ("0101" + frame for the current time) and it's time.

If the sprite reaches the endpoint of the ease, I can look up the next tile in the map array (because if the direction of the next tile is 1, I take the next tile east of the current tile).
If the next tile is empty, well the player creashes.

Easy, isn't it?

Here's the data for a corner:

this._track_array["1100"] = new Array();
this._track_array["1100"][2] = {sx: _x1, sy: _y0, ex: _x2, ey: _y1, fx: EaseUtil.easeInSin, fy: EaseUtil.easeOutSin, nd: 1};
this._track_array["1100"][3] = {sx: _x2, sy: _y1, ex: _x1, ey: _y0, fx: EaseUtil.easeOutSin, fy: EaseUtil.easeInSin, nd: 0};

In order make it faster I just reduce the time needed to get from start to end, though it's a good idea to use something that can be devided by 2, so the animation isn't messed up

You can see it in action: here (German version, though)

Back to the Triffids ...
nGFX

"Some people are heroes. And some people jot down notes."
        -- (Terry Pratchett, The Truth (us, de))

Thursday, June 14, 2007 11:56:30 AM (W. Europe Daylight Time, UTC+02:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Monday, June 11, 2007
Still trying to get my head around as3, it's a saucy little minx alright.

Anyway, he's yet another old school demo effect, and another one I never managed to get working on the Amiga at the time ( Flash just seems to be an outlet for my past failures as a coder ).

Plasma.swf (5.47 KB)

Guess a bit of texture mapping should be next to keep with this theme.

( For a lot more demo style eye-candy check the experiments cat., and to see them all shoved together and wrapped up with plenty of love, check out 651 )

Squize.
Monday, June 11, 2007 2:47:12 PM (W. Europe Daylight Time, UTC+02:00)  #    Disclaimer  |  Comments [3]  |  Trackback