The Benefits of Pre Ordering

November 12th, 2008

Well, Wrath of the Lich king is out tonight at midnight.

And guess what, my Pre-order arrived this morning.

The upgrade page went up around 6pm

And i made the first Deathknight on Khadgar at 9:10pm

I’ve taken Concrete into Northrend, so expect a Tour of the Howling Fjord soon

Holy cow

November 2nd, 2008

Has it really been that long since I updated.

Crappy doodle.

Well, I’ve been rather coded-out at work and personally I haven’t had time to code any examples. I’ve also taken to learning Java in order to create midlets for mobile games - which is a new and interesting direction for me.

In gaming news, Left 4 Dead is coming out soon (The only thing in history that can use the number 4 in it’s title outside of series increments and actually retain some self respect) and Frankly I think it’ll replace our office lunchtime CS:S sessions (atleast for a while) and we’ve already arranged a LAN party for the weekend it’s release (That is, the week after WOTLK is release, so i’ll be soooo torn with what to play in my leisure time)

Also, if you do get the time, play X3:Terran Conflict. It is an awesome game in scope and playability. The game has some bugs, and the voice acting is a major step backwards from Reunion but it is still an excellent game.

Halloween was fun. I went to a party last night dressed as a Viking Ninja Pirate. By the end of the party (around about 30 minutes ago :O) all that was left was my Bandana - which belonged to my gran. Sadly no pictures were taken because we were having too much fun to think about pics.

Countdown to shut-in

September 15th, 2008

13th November

Data Listener Class

September 14th, 2008

It’s half way through the month of September so here’s Useful class #3 (okay, it’s useful class #1 if you want to be annoying)

the Data Listener class

this is a very simple class to get a handle on. It’s essentially a singleton class that can be used to communicate between classes easilly through listeners.

For example, Class #1 handles the status bar on your application, it updates a text field at the bottom of the screen, amongst other things.

Class #2 is your file loading class, it handles the loading in and out of files from a web server.

Your aim however, is to keep these classes as seperate as possible, meaning Class #2 shouldn’t include Class #1 and vice versa. This is where the idea of a singleton comes in handy.

A Singleton is a class that has only one instance (in other words, will only be placed in memory once) - in AS3 it is quite easy to create a singleton as we have the Static keyword.

The DataListener class does just this and is very simple.

Class #2 begins downloading a file and needs to tell the status bar this, and update it every time the PROGRESS event is called. This can be done using DataListener.

Class #1 registers with DataListener that it wants to listen for a label name (for example, StatusBarText) using DataListener.addDataListener(”StatusBarText”,updateStatusBar); and the function updateStatusBar(label:String,data:*)  { //Code in here; }

When Class #2 wants to change the status bar, it will use the code DataListener.setData(”StatusBarText”,myStatusText) where myStatusText is a string containing whatever data you want.

the Example i’ve included is simpler than this, and has 2 classes, whenever you enter text in the input text box, it updates the DataListener, and another text box (in another class) is listening for the DataListener to update the label.

Download the Data Listener class and Example

Key Binding Class

September 8th, 2008

The second of my 5 Classes to be released this month is a Key Binding Class. Through just one line of code you can bind any Key combination to listen to any function.

canazza.KeyBinding.create( myFunction, KeyBinding.REPEAT, “W” );

will bind the key W to myFunction (no parameters required) and continue to repeat the event while W is held down every frame

the flags are important, there are three flags:

KeyBinding.NORMAL - normal behaviour, will fire the event on key down only ONCE and will not repeat until the button is pressed again

KeyBinding.REPEAT - will repeat every frame while the binding is held down

KeyBinding.IGNORE_MODIFIERS - the binding will only run when the binding is true, and not when SHIFT+binding or CTRL+binding is true. DO NOT USE THIS IF YOUR BINDING CONTAINS CTRL OR SHIFT, otherwise it will never be called.
KeyBinding.create(    moveUp, KeyBinding.REPEAT | KeyBinding.IGNORE_MODIFIERS, “W” )

for multiple Keys (IE Shift+W) you can do
KeyBinding.create(    moveUp, KeyBinding.REPEAT, “W” , Keyboard.SHIFT)

Another useful function is the static function codeToString()

trace(KeyBinding.codeToString(19))

will trace “PAUSE” - this means you can get human readable equivilants to the bindings.

getBinding(id) will return an array of codes you can use with codeToString() to get the human-readable binding.

Summers End

September 5th, 2008

It’s officially Autumn, alteast weather wise. All the leaves are brown and the sky is grey. It’s also pretty cold, so I assume people will spend a lot more time indoors - I know I will.

So, for those people who are going to be shut-ins and do some Flash programming, I am going to release a class a week in September. The first one was the as2MovieClip (along with the MovieClipLoader class) - on Monday I’ll be posting a Key binding class that makes it easy to customise key bindings for games, and have the player modify them. By the 15th I plan on reworking my A* Pathfinding code into a proper library.

After that there are 2 more Mondays for me to release stuff for, I have some ideas for them but I’m open to suggestions, either register and post them below (I’ve disabled registration for comments, although they are still moderated), or email me

Actionscript 2.0 Syntax for Actionscript 3.0

September 2nd, 2008

As anyone who’s tried to learn Actionscript 3.0 from Actionscript 2.0 will know, there is a huge jump in what the old syntax was compared to the new. Certain things have changed that were fundamental in making Actionscript 2.0 very easy to learn, such as the events system, that have made it harder to learn Actionscript 3.0 for many people.

Many people, myself included, find it hard to learn from a book, and require decent examples to play with and mess around with before getting the hang of something through trial and error. Well, today I give you the example.

Two classes, the canazza.as2.as2MovieClip and canazza.as2.MovieClipLoader classes

Download the AS2.0 pack

Read the rest of this entry »

World of Warcraft, Fraps and Box2D

August 26th, 2008

Okay, I admit it, I’ve been playing that time sink again. But this time with a few definite purposes in mind. Firstly, I actually would quite like to do SOMETHING after level 70, so I’m glad I’m in a guild that has Gruul on farm and are now well into Serpentshrine and Tempest Keep, and just begining Hyjall and Black Temple. This also means that I get to gear up for the forthcoming Wrath of the Lich king, where it has been stated that SSC and TK gear will last you till 80, so hopefully as a super-geared moonkin druid I’ll be able to blitz through the 10 new levels and start on a Death Knight.

Another reason for playing WoW is to stress test my new PC. Okay okay, WoW isn’t the most intensive game, but I can run it at maximum detail at 60fps quite easilly. Not only that, but I can keep that framerate up while capturing video and audio with Fraps.

Combine the high-end raiding with Fraps and you get… VIDEO!
http://pl.youtube.com/user/Canazza for my YouTube channel, i’ve got more than just wow kills on there too (from aaages ago) and I will probably ressurect Concrete’s Oddesey for WOTLK too.

I’ve also been playing around with Box2D engine for AS3. Both at work and for shits and giggles at home. It has alot of potential and is very very fast. I’d recommend it to anyone wanting to do physics stuff in flash.

Also, i’ve updated my deviantart page with some new stuff too

TF2 Arena Mode

August 20th, 2008

Having played an hour of TF2’s new Arena mode last night I must say i’m mildly impressed. The new dimension of “Don’t rush in you numpty and kill yourself” is a refreshing change since you can not respawn during a round and are left in limbo (like Counter strike) until the next round, or if your team loses you have a possible chance of sitting out the next round and letting someone else play. Oh, didn’t I mention, it’s strictly 8v8 (possibly tweekable either in map or server side but the only one i played on was 8v8) - meaning those extra people sit out in spectator mode and watch the carnage, viewing the winning teams tactics and hopefully learning a counter for the next round. The whole thing is a nice antithesis to those ‘instant respawn’ servers that seem to plague the list, meaning it’s impossible to capture the flag on 2 Fort and essentially turning the game into team deathmatch.

Granted, that is what arena mode is. Although after 60 seconds the middle control point is opened, so even if one guy is hiding or AFK (like counter strike) you don’t have to wait till the round ends, you just go cap the point.

arena_lumberyard is excelent too, with it’s alpine stylings and open field gameplay, with plenty of ambush points for pyros heavies and spies, long areas for snipers and soldiers, and enough doorways to keep every demoman happy. It’s a very fun map.

So far it’s been a good update.

Sandvich

August 19th, 2008

what… the… hell…

I mean, seriously… and they were listening to the community? Which part? The legally insane? The machinima makers? (that’s a possibility actually)

So the heavy replaces his shotgun with a sandwich, basically imobilising him, sending out a large munching warning to all nearby pyros, scouts and demo men that the heavy is on low health and to come beat on his skull.

Glad i’m a Pyro then eh.