6 Flash Ideas I Really Should Have Finished

October 1st, 2008

I’ve started a bunch of games that I never finished, either because the ideas sucked or because I didn’t have the motivation to finish them. Here are a few of those ideas:

1) Lion, Sheep, Grass: Sort of like Rock/Paper/Scissors, but with more cartoon animals. The aim of the game would be to create a balanced environment. Not easy when the lions keep eating the sheep, the sheep keep eating the grass and the lions keep dying of laziness when they sleep in the grass.

It didn’t work out because my deliberately poor cartoon sheep were so undeliberately poor that I gave up trying to redraw them.

2) FlashTower: I probably should get the motivation to finish this. A lot of the groundwork is already done. It’s based (unsurprisingly) around the old game SimTower. When I first started this game, I’d never played SimTower. I just assumed it was like SimCity but up instead of along.

Seemed sensible enough. Only once I actually played the game did I realise SimTower was actually pretty crap and wasn’t nearly as fun as I’d imagined.

3) Orb Avoidance 3: After the success of Orb Avoidance 1 and 2, some people said I should continue it into a 3rd one. I don’t know what to add in the 3rd one. The first was all about the gameplay. The second one was all about appealing to the people that didn’t think much of the simple style of 1.

I tried 3D Orb Avoidance. I tried making Orbs interact with each other to explode more colourfully. I tried having the player shoot the orbs through hoops and doing tricks. I guess I could just make it 1+2 (=3) and have it pretty and with enhanced gameplay.

4) Roboty-Thing: I’ve always wanted to make one of those games where you have to write some block-code and watch your little robot blindly enact the instructions until it completed them or fell off a cliff.

My first plan was really complex. I created a “robotic limb” editor, where you could set up a bunch of “motors” which rotated joints of a limb, letting you extend the limb or pull it in. It mostly worked, and was pretty fun to play with, but aside from that was pretty useless.

I then decided to skip the physical designs and let the user equip a humanoid robot with weapons and then have them sense/react using the code blocks.  It sounds cool, but it’s the kind of system that would be so easy to abuse with “the best” technique that beats everything.

It was going to be multiplayer, too.

5) Sword Smash: This is actually pretty much completed. The entire combat system is done, I just never wrapped it up into a game. It’s a most-controlled melee game, where the weapon was swung around using the mouse (though not fixed to the mouse, more cunning than that).

Depending on where it came into contact with the enemy it’d do different amounts of damage. Some weapons were long and thin (aka, spears) which you could use to stab through the slot between helmet and shield. Some were big and heavy, which you could swing hard straight into the helmet to knock it off leaving them exposed.

You’d also control your shield with your mouse, which meant you couldn’t just keep attacking. You had to use the shield to defend yourself and then tactically swing back.

It’s uploaded to my Kongregate profile, but it’s not finished and it’s not a game yet.

6) Death Worm: You played as a giant man eating worm and went around smashing buildings and eating people. ’nuff said. 90% finished, technically not abandoned. I really should finish this one some time.

I’ve got a Flash folder with 324 files in it, so there are bound to be way more of these kicking around that I’ve forgot about. Unfortunately, I’ve only got them on my laptop at the moment as I recently had problems with my HD.

Stickified.com

January 5th, 2008

Create updatable sticky pads that you can embed into forums, websites or wherever and update them from the site using the editor.
Post information in lots of places and then update them all using one button or update the information in the first post of your thread even when the edit button is disabled.

read more | digg story

Webcam

December 8th, 2007

Webcam Flash: http://kalinium.co.uk/view.php?img=15

I was watching my brother flick across the internet using StumbleUpon when he came across a Flash sample that someone had created. It used the webcam to let the user deflect “liquid” balls using their hands, and guide them into containers. It was a video of it being played, and gave no obvious link to the actual thing. “I wish you made good things like this” was his comment.

So, I set about creating my own webcam Flash. I’ve not used the Bitmap/image manipulation part of Flash much before. I have a deep hatred for anything that requires me to do pointless things (”import flash.display.BitmapData;” - why doesn’t the compiler do this itself whenever it finds a command that needs it?) and so give a disapproving glare to anything that would need these things. I’d normally prefer to stick to my usual practices of “if it works I’ll keep it”. I still don’t see the point in writing “var money:Number = 10″ when “money = 10″ will do just fine.

Previous feeling aside, I had been challenged by my (younger) brother and wasn’t going to give up over some silly little imports, however pointless they might first appear.

The first stage was to work out how to get the webcam’s image into my Flash file. Google provided this on a search of Webcam Flash. Whilst it looked great at first, I was stumped when it told me to add a “Video” symbol. I tried a number of things but couldn’t work out what it meant by this (named Video, exported for linkage name Video, some kind of Component?). A second search showed how do this (Library, then the little icon that looks like a few bullet points and an arrow down, and then go New Video. Everyone probably knows how to do that anyway, I should really use some of the new fangled things once in a while).

I’d now managed to get the webcam onto the screen. From that point, it was reasonably easy to get it into a BitmapData and attach this to a movie clip. Then came the next stage - finding the motion. The theory was to take the current image from the webcam and the one from the previous frame, then find the areas of difference. It wasn’t too hard to code. Make a bitmap image, draw the current frame, then draw the old frame over the top with a “difference” blend mode. However, nothing appeared. The new bitmap data was empty. After a little fiddling, the problem was revealed. I was using the “identity matrix” as a blank matrix for adding the two images together. It wasn’t working because I hadn’t imported the matrix thingy. Why didn’t clever old Flash just say “He’s clearly trying to use matrices, instead of bitching about how it’s not imported, why don’t I just import the damn thing and be done with it”. I hope that CS3 doesn’t need me to do something stupid like “import flash.Movieclips”.

That aside, it worked fine. I tried experimenting with the add and subtract modes to make it draw the motion areas more visually, but couldn’t get anything decent. With a little more work (ie some of the stuff I now notice is described in the link above) this could be turned into something more interesting. Perhaps I’ll do that later.

.swf can be viewed here: http://kalinium.co.uk/view.php?img=15

Source code:

if(not camSetup) {
camSetup = true//Get the camera - may not work if you’ve got more than 1 webcam
var my_cam:Camera = Camera.get();

//Attach this to a Video object (see post) called mVid
mVid.attachVideo(Camera.get());
}
//Yay imports
import flash.display.BitmapData;
import flash.geom.ColorTransform;
import flash.geom.Matrix;

//Make a blank BitmapData
var img:BitmapData = new BitmapData(160,120);

//Grab the current image from the webcam and draw it onto the BitmapData
img.draw(mVid);

//Make a second blank BitmapData
var img2:BitmapData = new BitmapData(160,120);

//Copy the old BitmapData onto the new one
img2.draw(img);

//Overlay the old BitmapData onto the current one (oimg is defined later, the first run of this is useless, but couldn’t tell us anything anyway)
img2.draw(oimg,new Matrix(), new ColorTransform(),”difference”);

//This was the code that I used to test the subtraction/addition
/*var img3:BitmapData = new BitmapData(160,120);
img3.draw(img2);
img3.draw(img,new Matrix(), new ColorTransform(), “subtract”); */

//Display the old image onto a movieclip called s
_root.s.attachBitmap(oimg,1)

//Display the motion onto a movieclip called s
_root.t.attachBitmap(img2,1)

//Set the current webcam picture as the old one, for use next run of this
oimg = img

Orb 2

August 1st, 2007

Game Description

Orb Avoidance is back, with a new graphical style and more changing gameplay. Mouse avoid to the next level by fighting back against your chasers and smashing them into the blocks.

Orb Avoidance 2 tries to keep the exciting gameplay of its predecessor, but with an all new graphical design and a new change.

Blocks can now explode after a certain amount of time, and there are special blocks that will always explode and make more orbs

Audio by ParagonX9 (Chaoz Fantasy)

Game Instructions:

Use the mouse. Lure the orbs to hit the blocks. Destroying in groups gets more points

Link

Orb

June 23rd, 2007

My second released game, Orb, is now available to play.

You must avoid the incoming orbs as they fly into your mouse.

Touching the boxes or the orbs will mean game over for you - but if the orbs touch the boxes, it’s game over for them too!

Outmanuever the orbs and force them to crash into the blocks.

As you destroy more orbs, the combo bonus will rise, giving you more and more points per hit.

Linky

You can expect a sequel sometime soon.

Space Freight

June 19th, 2007

Space Freight is like a modern Lunar Lander

Keys: Arrow keys (except down) to move. The rope will follow

Instructions: Use the keys to guide the ship - and its roped cargo - to the platform. Touching the planet or a hazard will restart the level

Once you’ve got to the later levels, the map editor is revealed to you. You can submit these levels for anyone to play - and rate.

There is also a challenge mode for quick-flying

Linky