Monday 20 December 2010

Automatically Expand To Current Folder [Windows7 Tip]



Forgive me if you already know this but I just discovered it by accident and think its pretty neat.

Open a windows explorer window (windows & e) then click on Organise > Folder and Search Options:



Inside here is a nifty little option called "Automatically Expand To Current Folder":



Now you can easily get a view where you are in a folder structure and jump to the sub-folder of your choice!

Sunday 19 December 2010

Chrome Crawler v0.4 - Background Crawling & More!



I have been asked by several peeps now to add the ability to persist crawls when the pop-up window closes so I rolled out this update.

Now when you close the Chrome Crawler popup your crawl is saved so that when you open it up again you can resume.

Not only that but thanks to the awesomeness of the background page API in chrome I have now added the ability to crawl even when the popup isnt open.

To enable this head over to the option and untick the "Pause crawling when popup closes" option.

While I was at it I made a few other changes and improvements. The main one being that the "src" attribute on tags is also searched for when you crawl. What this means is that "interesting" images should show up in the files tab if you have images as interesting file types.

You should automatically get the update next time you restart chrome, or if you dont have the extension yet head over to the gallery to get it!

Thursday 16 December 2010

Particles, Yey!



Just thought I would share this little thing I was introduced to by a friend.

http://grantkot.com/MPM/Liquid.html

Its a liquid physics simulator written in Java.

Apparently its creator, Grant Kot has been playing around with particles for some time. Theres more of his work on youtube, here is one:



Pretty!

Edit: Didnt realise but this is the same guy that did Polluted Planet that I covered almost 3 years ago -> http://mikecann.co.uk/fun-videos/polluted-planet/ thats some awesome particle based dedication right there, I think I need to buy him a beer ;)

Monday 6 December 2010

Chrome Crawler - A web-crawler written in Javascript



EDIT: I now have a newer, better version of this called "Recursive"

Depending on your level of geekness you may or may not enjoy this one.

I proudly present Chrome Crawler, my latest Google Chrome extension:



The idea is simple really. You just give it a URL, it then goes off and finds all the links on that page then follows them to more pages then gets all the links and follows them and so on and so on.

Along the way it checks each page to see if there are any 'interesting' files linked there, if it finds an interesting link it will flag it for you so you can check it out.

Theres an options page that lets you customise the way it all works:



If you are still confused check out the video below:



So why did I make this? Well to be frank, I made it mostly "just 'cause I can"!

Also having learned from my last Chrome Extension project PostToTumblr I realised the Chrome API allowed you to do some things that you wouldn't normally be allowed to do on a website (nameley the Cross-Origin XHR) and I wanted to do something to take advantage of it.

It didnt take me long to knock out this project, one lazy Saturday for the majority of the code and today for a quick fix or two and to write this post and make the video. As such I expect there to be many bugs and problems so if you encounter one drop me an email (my address is found in the options page).

Oh finally, I wouldnt try using this on a google page as you will likely end up seeing this quite often:



Anyways you can grab it over on the Chrome extensions gallery here. If you enjoy it please leave me a review / comment, much love!

Wednesday 1 December 2010

PostToTumblr v0.6



Just a quick update to my chrome extension tonight. I recently had an email asking if there was a way I could make it so that you could send a Tweet at the same time as posting to Tumblr.

After a quick check on the Tumblr API to confirm that yes Tumblr supports the "post-to-twitter" option I spun out this little option.

So now you have three options for tweeting when posting: "no", "auto" and "prompt".

Chrome should auto-update the extension for you soon. If you dont have it hope over to the gallery page here.

Sunday 28 November 2010

Multi-Line Flex Label [MXML]

Just stumbled across this one while writing some mxml for a personal project and thought I would share.

Have you ever wanted to have multi-line text in your label component in spark and thought the following should work?

[codesyntax lang="mxml"]
<s:Label text="I like text on the \n next line" />

[/codesyntax]

But all it produces is:



Yep me too.

After some playing however I stumbled accross the following solution:

[codesyntax lang="mxml"]
<s:Label text="I like text on the {'\n'} next line" />

[/codesyntax]

It then produces the expected result:



Im just guessing but I suspect its something to do with the black art of the flex life cycle. By adding the {'\n'} we are turning the property initialisation on the label component from a simple literal assignment into a delayed binding assignment and therefore gets parsed differently.

Just a guess, let me know if im way off.

Monday 22 November 2010

Day[9] - A Moving Story of a Pro-Gamer [Video]

Day[9] is a Starcraft2 commentator and a professional gamer (among other things). I have been following him for sometime watching his 'casts' of games. He just posted this video on Youtube (although its an old episode), its an incredibly moving tale of his journey through gaming to becoming one of the top players in the world. More than that he relates it to how his family have supported him through his passion and giving him belief to do what he loves.

If you enjoy gaming or know someone that enjoys gaming I cant encourage you enough to watch this video. Its quite long but I strongly encourage you stick with it till the end!



If you liked Day[9]'s quirky style of humor of  or are interested in watching some more of his casts you should checkout either his Youtube channel or his BlipTV archive.

Sunday 31 October 2010

Post To Tumblr Version 0.4



Today is a small update day it seems.

I have updated my Post To Tumblr extension again. I was getting a couple of requests for the ability to add a 'caption' to a post before the image is uploaded so I cranked out this little feature. You can enable it in the options.

Once enabled rather than immediately posting the image it will popup a new tab allowing you to add a caption or whatever to your post:



Its not perfect, I would have preferred the pre formatting window to open in a div popup on the current page instead of a whole new tab, but for now this solution is simple and it works.

I must admit I borrowed the idea from another Tumblr posting extension called "Share on Tumblr". The code is ultra simple:

[codesyntax lang="html4strict"]
<html>
<head>
<script>

// Thanks to share on tumblr extension for this
chrome.tabs.getSelected(null, function(tab)
{
var url = getParam(tab.url,"u")
//var url = encodeURIComponent(getParam(tab.url,"u"));
var finalurl="http://www.tumblr.com/share?v=3&u="+url+"&s=";
document.getElementById("container").src=finalurl;
});

// Thanks http://www.netlobo.com/url_query_string_javascript.html
function getParam( url, name )
{
name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regexS = "[\\?&]"+name+"=([^&#]*)";
var regex = new RegExp( regexS );
var results = regex.exec( url );
if( results == null )
return "";
else
return results[1];
}

</script>
<link rel="stylesheet" href="main.css" type="text/css"/>
</head>
<body>
<div id="header">
<h1>Post To Tumblr</h1>
</div>
<div class="section-header first"><em>Format your post below</em></div>
<br >
<iframe id="container" style="width:500px;height:430px;border:0px" src=""></iframe></body>
</html>

[/codesyntax]

It just opens an iframe with the Tumblr Share page. Simples!

Post To Tumblr Version 0.3



Just made a quick little update to my chrome extension "Post To Tumblr".

In this update I finally worked out how to catch bad username or password returns from the Tumbr API. Basically it just involved me using the ajax rather than the post jQuery function and using "async:false" like so:

[codesyntax lang="javascript"]
$.ajax({
url: 'http://www.tumblr.com/api/write',
type: 'POST',
data:o,
async: false,
complete: function(transport)
{
if(transport.status == 200 || transport.status == 201)
{
postingNote.cancel();
var postedNote = webkitNotifications.createNotification('images/icon48.png', "Image Posted!", info.srcUrl);
setTimeout(function() { postedNote.cancel(); }, 5000);
postedNote.show();
}
else if(transport.status == 403)
{
postingNote.cancel();
var errorNote = webkitNotifications.createNotification('images/icon48.png', "Posting Error!", "Bad email or password");
setTimeout(function() { errorNote.cancel(); }, 5000);
errorNote.show();
}

}
});

[/codesyntax]

In addition I have added some notifications to indicate when the extension is doing something.

I have made a little demo video below to show this off:



Chrome should auto update for you. If you dont have the extension yet head over to the extension gallery to grab it now!

Monday 25 October 2010

Inputtie - Version 0.1.6

Made a few small stability changes with Inputtie tonight, thought I would share.

Release notes are as follows:

Inputtie Version 0.1.6 (25/10/10)

+ Inputtie now checks for updates every 12 hours
+ Mouse can now correctly reach all the way to the edge of the screen
+ Mouse now remains in the last position it was before the connection closes

Saturday 23 October 2010

Inputtie Development History - Networking

This is part two in my series of posts on the development history of Inputtie.

In this post I talk about the challenge of device discovery and networking in the Inputtie app.

Zero Configure Networking

I knew I wanted Inputtie to be as simple to get running as simply starting it up. For this to happen Inputtie would need to discover all other devices on the network also running Inputtie. So how to do this?



Well, as it happened I had been reading at the time about Apple's Bonjour which was designed to do just what I needed. It is a combination of a multi-cast and DNS lookup service that allows it to detect other Bonjour capable devices on the network. Sounds perfect.

So I got to work on implementing their Java API. After many trials and tribulations I eventually had it working.. kinda. It was detecting other devices sure, but every now and then it would sporadically disconnect from the network. I couldn't for the life of me work out why. I posted on forums and even tried to read the reams of source to see what was going on but alas to no avail.

After much deliberation I decided to look for another solution to the problem of Zero Conf. networking. Next up were a whole host of other attempts. I tried JmDNS which is was supposedly very similar to Bonjour. I also experimented with JGroups. I had limited success with all of them and in the end only really succeeded in wasting several months worth of development time.

The Solution

In the end the solution (and the one currently employed in Inputtie) was the simplest. After months of messing around with these libraries I had learnt quite abit about how they performed their magic. At the heart of it they either used multi-cast or broadcasting to announce a device on a network. Broadcasting can be thought of as a sort of sonar pulse. The broadcasting computer sends a message on a specific IP address then another device listens for the message and proceeds to open a Socket for a more private form of communication. From Wikipedia:
A broadcast address is a logical address at which all devices connected to a multiple-access communications network are enabled to receive datagrams. A message sent to a broadcast address is typically received by all network-attached hosts, rather than by a specific host.

I decided that if these libraries could use broadcasting for discovery then so could I and if I wrote it myself I could keep it simple. So I set to work coding an example in Java. In no time at all I had it running and surprisingly it worked! Sure it wasnt as robust as the established libraries, it didn't handle devices disconnecting from the network, different network subnets or IPv6 but it was simple and at least it worked!

Broadcasting in Adobe AIR

As I mentioned in a previous post Inputtie went through many re-writes during development from its original form in Java through C++, C Sharp and finally Adobe AIR. With the latest (it was still in beta when I started development) version of Adobe AIR 2.0 several new APIs were made available for use, one of them being new classes designed specifically for peer to peer (P2P) networking. With these new APIs I believed I should be able to implement network broadcasting much in the same was I was doing in Java. Unfortunately however it seemed that Adobe was restricting the use of broadcast to their new P2P service Cirrus.

There was however another crucial API released with AIR 2.0; the NativeProcess API. With this a developer is able to easily execute and communicate with a program written in another language. What this meant for Inputtie was that I could write the user interface in AIR and then use NativeProcess to call Java code that would perform actions not available in AIR, such as Broadcasting. (incidentally it also is a great way to do multi-threading in Air ;))

So the current solution in Inputtie is to use NativeProcess from AIR to communicate with a small headless (no user-interface) Java process that does the broadcasting and listening for broadcasts. Once the Java process detects an incoming broadcast it passes the information back to AIR.

EDIT: If anyone is interested in seeing the source to my previous (failed) attempt just drop me a comment or an email and I would be happy to share.

Sunday 17 October 2010

Inputtie - Version 0.1.5



Just a few small changes in this update:

From the release notes:

Inputtie Version 0.1.5 (17/10/10)

+ Middle mouse input is now caught and transferred between devices
+ More errors are caught in the client
+ Keys are now depressed when a connection is cut, no more lingering Shift, yey!

The new version should automatically download, but if you don't yet have it go grab it on the download page -> http://www.inputtie.com/download/

Post To Tumblr - v0.2



Just a quick update to my first chrome extension.

Following a request someone left in the comments I have now added an option to set how the post should be published. So now you can choose whether you want your cat with a lime on its head to be posted to your drafts or your queue or simply to your default wall.

You can grab the new version in the usual place on the Chrome Extensions Gallery -> https://chrome.google.com/extensions/detail/dbpicbbcpanckagpdjflgojlknomoiah?hl=en

I think it updates by its itself, but I cant be sure!

Enjoy!

Thursday 14 October 2010

My First Chrome Extension - "Post To Tumblr"



Mummy wow! Im a big boy now! I have just published my first Chrome extension.

It was really annoying me that when I found a funny cat or some other silly image I would have to go through a whole ball-ache process to get that image on my Tumblr account.

What I really wanted was some right-click-post action going on and wondered why no one had one it yet. So with an hour or so to spare I whipped this extension up really quick.

It uses the Chrome 6 Context Menu API so you obviously need to have Chrome 6 to be able to use it.

Currently it only posts images as that's all I needed for now but if enough people want more then ill whip out the other data types.

The source couldn't be any simpler really, infact this is it here:

[codesyntax lang="javascript" lines="normal" blockstate="expanded"]
chrome.contextMenus.create({"title": "Post Image To Tumblr", "contexts":["image"], "onclick": postImage});

function postImage(info, tab)
{
var email = localStorage["tumblr_email"];
var password = localStorage["tumblr_pass"];

if(!email || email=="" || !password || password=="")
{
alert("Need to set your Tumblr username and password in the options before posting!");
}
else
{
var o =
{
"email":email,
"password":password,
"type":"photo",
"source":info.srcUrl
};

var success = function(data,textStatus,request)
{
if(textStatus=="success"){ alert("Image posted to Tumblr. Image -> "+info.srcUrl); }
else { alert("Bad email or password"); }
}

$.post("http://www.tumblr.com/api/write",o, success);
}
}

[/codesyntax]

Simples!

Theres even an option page where you put in your Tumblr details:



Oh, there is one issue.

No matter what I tried I couldn't manage to get the Tumblr API to return an error. So if you enter your username or password incorrectly it still reports success, not entirely sure why, if someone knows I would love to hear why!

Interested? You can go grab it over on the chrome extensions gallery page -> HERE

Saturday 9 October 2010

Inputtie History - The Beginning

I promised in a previous post to post to talk about the Inputtie development process a little, the various challenges encountered and how I attempted to solve them.

In this post im going to talk about the very beginning of the project and what I knew I wanted to have in the final version. Subsequent posts will elaborate on the various technical hurdles and my attempts to solve them.

The Problem


[caption id="attachment_1372" align="alignright" width="229" caption="Various Inputtie Attempts"]Various Inputtie Attempts[/caption]

I have already talked about the problem in my previous post but ill recap.

About a year ago I was doing a lot of work at home that involved working both on my desktop PC and my MacbookPro. Often I would find myself using my mouse and keyboard on my PC then having to lean accross to use the trackpad and keyboard on my MBP. Now, I hate trackpads so what I started doing was unplugging my keyboard and mouse from my desktop then plugging back into my MBP when I wanted to use it.

This situation was obviously less than ideal, so I started looking around for other solutions. I had heard of hardware you can buy that involves flipping a switch when you want to change which device you want your input to go to. I considered this but thought there must be a more elegant software solution. I had an idea in my head where I wanted you to simply move my mouse pointer off my desktop monitor and it would then magically appear on the laptop screen.

It was at this point I found out about Synergy. I took a good look at it but for the life of me could not get it to work no matter how hard I tried. It also involved lots of fiddley messing around with IP addresses / hostnames and command line parameters (it has improved in a year, but more on that later). So I thought to myself surely there is a better way of doing this, surely its not a tough technical problem to solve!?

Technical Hurdles


So starting back in October 2009 I decided to undertake the problem, it shouldn't take more than a few evenings to put something together surely?

First I tried to identify the core features I knew I wanted the tool to have:

  1. Work on the three major operating systems, Windows, OSX, Linux.

  2. Be appealing and simple to use without any fiddly configuration file editing.

  3. Without any effort on the part of the user detect other available devices on the network.

  4. Capture low-level input, mouse & keyboard.

  5. Transfer the input to the other device and have it applied.


With the core features roughly sketched out I could now start thinking about the various technologies I would need to implement them.

My initial thoughts were that Java should be the ideal language to do this in. I could capture the input from one device (somehow) then I could send it to another device and use the Robot class in Java to simulate the input. Because its Java it will work across all operating systems seamlessly so people using it on windows / mac / linux would all get exactly the same experience and I wouldn't have to lift an extra coding finger as Java would take care of all the nasties for me.

It also helped that I was very familiar with Java having worked on severl personal and professional projects in the language. From my Chain Reaction project I knew it was possible to create relatively nice user interfaces probably it would take some work to make them look as good as I wanted but surely it wouldn't be too hard.

So with some confidence I decided to get cracking on development.

Edit: I am breaking this up into several posts as this was getting to be rather large and difficult to read ;) So check out the posts in the coming weeks for more.

Wednesday 22 September 2010

Inputtie - Beta Release!



Woooo Hooo! Finally after almost a years worth of toiling we have finally released the beta version of Inputtie.

Now I have only performed a limited amount of testing so im sure there are going to be bugs-a-plenty. If you find something I would love to hear about it. We dont currently have a dedicated email address you can use for this so just use the contact box on the side of the inputtie page to get in touch.

Anyways, here are the release notes for this version:

Inputtie Version 0.1.3 (22/03/10)
+ Beta Release!
+ Fixed an issue that was causing the mouse pointer to not quite reach the edge of the screen
+ Fixed it so that you can now choose not to show the "new device" help tip.
+ New Icons, yey!

Grab the download over on the download page now!

Oh BTW we decided to go with the "e" in a bordered square for our app icon:

Tuesday 21 September 2010

Inputtie - Beta Drawing Near!

Final testing is under way here at mission control for the Inputtie Beta.



1 Keyboard, 1 Mouse, 1 PC, 2 Laptops, 1 Netbook, 4 Operating Systems.

All systems are go! Almost ready for takeoff!

Monday 20 September 2010

Inputtie - App Icons

With the beta for Inputtie drawing very near Oli and I are adding some final touches to the build and doing those "things we meant to do for ages".  One of those things being the app icon. This is the icon you will see on your shortcuts and in your taskbar area so its going to be pretty visible.

Oli, my partner-in-crime has whipped up 2 different versions with 2 variations on each version. See what you think:





I personally am favouring the circle icon with the border, however I worry that it looks too much like the Internet Explorer icon.

What do you all think?

Leave a comment below.

Sunday 19 September 2010

The Evolutionary Void



Just thought I would post about my favourite author Peter F. Hamilton.

His latest book has just arrived on my desk and I cant wait to start reading it. Its the final book in a void trilogy and the exciting conclusion to a great many story lines.

In celebration im currently re-listening to the second book "The Temportal Void" on audiobook. Its odd listening to a book you have already read as the names and places are pronounced differently and the character accents are different from what I imagined, but still very enjoyable :)

If you enjoy mind-bending high-tech far-future space-opera or are simply a fan of science fiction I couldn't recommend this series more, come to think of it go and read all of Peter F. Hamilton's books, you wont regret it!

Thursday 9 September 2010

Announcing Inputtie



For the last year or so my major personal-project has been under wraps but after a few intense weeks its finally time to talk about it!

First before I explain exactly what Inputtie is I will talk about why I started this project and the problem I was trying to solve.

(If you aren't interested in all the background fluff and just want to find out what Inputtie is, head over to inputtie.com)

The Problem


About a year ago I was doing a lot of work at home that involved working both on my desktop PC and my MacbookPro. Often I would find myself using my mouse and keyboard on my PC then having to lean accross to use the trackpad and keyboard on my MBP. Now, I hate trackpads so what I started doing was unplugging my keyboard and mouse from my desktop then plugging back into my MBP when I wanted to use it.

This situation was obviously less than ideal, so I started looking around for other solutions. I had heard of hardware you can buy that involves flipping a switch when you want to change which device you want your input to go to. I considered this but thought there must be a more elegant software solution. I had an idea in my head where I wanted you to simply move my mouse pointer off my desktop monitor and it would then magically appear on the laptop screen.

It was at this point I found out about Synergy. I took a good look at it but for the life of me could not get it to work no matter how hard I tried. It also involved lots of fiddley messing around with IP addresses / hostnames and command line parameters (it has improved in a year, but more on that later). So I thought to myself surely there is a better way of doing this, surely its not a tough technical problem to solve!?

The Solution


I had originally intended to talk about the myriad of attempts, blind alleys, different languages and general headaches I endured to get to this point however its a very lengthy topic. So instead in this post im just going to talk about the final solution talk about the previous attempts in later posts.

So without any further ado I present a screenshot of Inputtie, so you can get an idea of whats going on:



It's an Adobe AIR 2 application so it means it will look and work the same across all supported operating systems (Mac, Windows, Linux). AIR also makes it super easy to install and update so for most users it should be a very simple matter to get it up and running.

The way it works is simple. When opened it automatically detects other devices on your network that have Inputtie running. You then make a connection between your two devices by simply dragging and dropping an arrow from one device to another:



Do the same on the other device and your computers are now connected, its that simple! Now when you move your mouse across to the side of the screen (side dependant on which arrow you picked) it will magically appear on the screen of the other device, splendid!

Now over there you can use your keyboard and mouse as normal and the input will be transferred over.

You can even also copy and paste text from one device to the other. This is great when you just want to blast a URL or some other bit of text to the laptop or back again without having to send emails or use IM or make a text file and send it over a network or anything else.

If you want to fire up a game or something  that inputtie may interfere with you can simply and easily toggle it to disabled:


Website


Early into the project I teamed up with my partner in crime and jack-of-all-trades Oliver Pitceathly. The original idea was to release this as a commercial product so we wanted to have a nice high-quality website as a landing page for potential customers. In the latter stages of the product we decided to drop the commercial aspect and make it donation-ware instead.

Despite my constant badgering and mind-changing Oli has done a fantastic job on the website, it looks simply great!



He even found time to do an awsome video that shows off the best features of Inputtie:


Planned Extensions


There are many potential extensions that you could imagine would be really handy.

Imagine being able to tare a tab from your desktop browser then drag it over to your laptop and having it then appear there.

Even better how about simply dragging a file or folder over then having it transfer quickly, be pausable, restartable, and toggle the bandwith it uses. All possible and planned extensions in Inputtie.

Another idea is using the multi-touch track pad on the macbook to interact in a multi-touch fashion with windows 7 on your desktop.

Beta


"So where can I get my hands on it?" you cry. Well we haven't actually release it for download just yet, there are some niggley bugs and things to work out with it still. If you are interested in testing it out tho sign up for the beta over at inputtie.com and ill shoot you a mail when its ready to go!

Tuesday 7 September 2010

Ludum Dare Hour 408 (15 Days later) - Results!

Well the judging is now finally over for the Ludum Dare competition I entered 17 days ago.

So overall I placed #21 which is just outside the top 20. Not bad for a first time entry but I thought I would of done better considering some of the game ranked higher than me but oh well.

I actually game second in one category.. Community? Not entirely sure how I managed that but oh well :P

I think I may have received the most number of votes out of any of the games, it certaintly seems like a lot take a look:

Ratings

























































































































































































































































































































































































































































































































InnFunTheGraAudHumOveCom
3232113-
33332135
2243-33-
44453344
34353445
43543343
43143324
3223322-
--------
45553442
3344443-
34442345
55253-44
33453335
35443344
33342245
3234133-
35342344
33342535
43532-35
34452-3-
23443444
45554554
34343444
33443445
33343335
45454445
44453545
3234233-
34343-3-
34451434
44443-45
34453445
3343233-
32433-2-
4435344-
25343144
34453444
23332234
2244322-
34533433
4453-34-
34552345
32343335
44353345
3325344-
33352434
2232212-
3.173.453.574.092.643.203.434.38

So my overall scores in the various categories were:

Innovation: 3.17
Fun: 3.45
Theme: 3.57
Graphics: 4.09
Audio: 2.64
Humor: 3.20
Overall: 3.43
Community: 4.38

The winners in each category are as follows:

Innovation: Switchbreak 4.21
Fun: Invicticide 4.17
Theme: TomBom 4.36
Graphics: NialM 4.63
Audio: Greasemonkey 4.07
Humor: Deps 4.06
Overall: Invicticide 4.07
Community: HybridMind 4.52

Oh well, I enjoyed the competition. Im planning on polishing the game a little more now the competition is over then im going to release it to the wider world.

Saturday 4 September 2010

Joa Does It Again!



So I have written about Mr Joa 'The Flash God' Ebert before. He is well known throughout the Flash community for his incredible coding skills, particularly his work on low-level SWF optimisation.

His latest project is called JITB and its nothing short of stunning as this video taken from his blog shows:



Basically he has gone and written a Flash Player in Java. What this means is that you get all those awesome speed benefits and optimisations that the Java team has worked hard for years and years to implement but you can write it all in a language already familiar and sexy, AS3! The result? You get about a 30x speedup! (disclaimer: a micro-benchmark taken from Joa's blog)

This is all great news and very exciting. I cant wait to see a custom browser plugin using this flash player, or even having Pixel Bender shaders running on the hardware *me drools in anticipation*.

Monday 23 August 2010

48 Hours Later - Timelapse & Gameplay Videos

Just made these two videos. One is the timelapse video I took to show my development process and the other is to show off the gameplay for those that cant run flash (Linux) or dont want to actually play the game, just want to see what the fuss is about :P

The timelapse was produced using 2300 ish screenshots, one taken every 60 seconds by Chronolapse.

Enjoy:





You can play the game here: http://mikecann.co.uk/ludum-dare/ludum-dare-hour-40-complete/#thegame

Sunday 22 August 2010

Ludum Dare - Hour 40 - COMPLETE!



Okay well its not quite complete, the waves of enemies could do with some more work but I have my mum coming up from London to visit me in 30 mins so im gonna call it quits here.

So, finally it has a name, I have called it "48 Hours Later" :) Its not technically true as I have only had 40 hours to do it, but oh well!

Overall im pretty happy with my first Ludum Dare entry, im very tired right now and have a banging headache, but thats all part of the fun right?

So onto the game. First some shots:




Okay so if you have been following waaaay back my original intention was to make a game with the same sort of art style as World of Goo but with the game mechanics of Boom Stick. I think I have stayed pretty true to that original idea.

Basically you fight against waves of enemies that float across the screen. There are currently only 10 waves, I would have liked more and with more variety but oh well ;)

The theme of the competition was "Enemies as Weapons". I have incorporated that theme by having the enemies drop giblets when they die. You then have a certain amount of time to pick up those giblets and fire them back at the enemies. Enemies as weapons!

So as a disclaimer: im sure the game has many bugs and things, I have run out of time to do much in the way of testing and optimising. If you find any bugs however drop a comment I would love to hear about them as I plan to release this to a few flash portals, so would like to get those bugs fixed ;)

Anyways enough jibber jabber. A few more shots then the game is below:








EDIT: I have now made a youtube gameplay video and timelapse of development, check em here.

Tools Used:
Adobe Photoshop CS5
Adobe Flash Builder 4
Adobe Flash CS5
SFXR
Chronolapse

Ludum Dare - Hour 31



Well its been quite a while since my last progress report. I have mostly been sleeping (well 4 hours of it anyways).

So progress is coming along nicely STILL no gameplay tho :S

So far you can shoot and destroy the enemies and then collect thier giblets before they become part of the terrain. The idea is that you can then shoot those giblets back at the enemies. Take alook if you are interested:



Oh I just noticed I left some debug sliders on there I was using to try and hone the bloom levels. Have a play with them if you want.

Right. Gameplay.

Saturday 21 August 2010

Ludum Dare - Hour 22



Okay, im starting to get pretty tired. Its not very late (midnight) but I think the lack of sleep last night is catching up with me. Im gonna get a few hours kip now then back up early to start again I think.

As for progress. I have a basic enemy type in, it doesnt do much except bleed, and it doesnt look too good (I really cant draw!) but oh well.

As before I have done a build that you can "play":



So the next task for me when I wake up is to add some sort of scoring mechanism and ofcourse to add the ability to use the "Enemies as Weapons" :P