As games developers we all have one thing in common.  Whether we’re creating games for fun or profit, we want more people to play our games, and that means we need to do a little promotion!

The average Flash games developer tends to pop their new creation on their own sites or blog, upload to the Mochimedia network, and hope that the game is good enough to go viral.  While that’s a great start, we can do better!

There are literally thousands of games sites out there which you can submit your games to, but a relatively small number of them will be worth the effort.  The biggest obstacle in getting your game out there is finding exactly which sites to submit to, so we’ve done the hard work for you and written a free report listing hundreds of the top games sites that you can submit to, and get a huge amount of exposure!   Many of the larger sites also offer sponsorship deals too, so use this list to allow your game to get the attention it deserves!

The free report is in PDF format with clickable links, so download it, and go through it at your own pace.  It starts off with some of the “big guns” like Kongregate and NewGrounds, but quickly moves into hundreds of smaller, but still very popular sites, many of which you might not have heard of.

If submitting your game to hundreds of sites sounds like a daunting task, check out the final page of the report which has some tips of making it an easier task!

Download Where To Submit Flash games here!

Well first of all apologies to everyone for the lack of posts this month, if you follow me on Twitter you’ll know I’m extremely busy with a couple of big games for clients so I’ve had very little time for blogging!

Anyway, one of the projects we’re currently in the early stages of is a multi-player game for the Facebook platform.  I’ve done some multiplayer games in the past, quizes and simple heads up puzzle games, but nothing this big or complex.  In the past I’ve used both SmartFox server, and an early version or ElectroServer, but since I’ve not done any multiplayer games for a while I’ve been researching which would be best to use for this project.  As part of that reserach I picked up a copy of Jobe Makar’s latest book Actionscript for Multiplayer Games and Virtual Worlds and I thought I would post a quick review here.  (By the way – I’m now 99% decided on Electroserver for a number of reasons, so expect a tutorial on that in the near future once we have the first demos completed!)

Actionscript for Multiplayer Games and Virtual Worlds

I first heard of ElectroServer in Jobe Makar’s first book Flash MX Game Design Demystified.  From the title you’ll immediately realise that book is quite a few years old, writted back when Flash was still a Macromedia technology.  In fact, that book was published in 1993 right about the time I was first getting into Flash.  It was actually March 2003 when I uploaded my first Flash games to a website and saw the incredible potential for the technology – and a good portion of my knowledge at the time came from that book.

Well, fast forward 7 years and what does Jobe’s latest offering bring to the table?  Well as you’ll gather from the name, the book is about multi-player game development, and specifically about building multi-player Flash games in AS3 using the ElectroServer socket server.  In the second chapter Jobe does talk about different technologies, and briefly mentions alternatives to ElectroServer, but then moves swiftly on and focusses on ElectroServer for the rest of the book.  Now, I should mention that there’s a good reason for that – Jobe is one of the co-founders of ElectroTank, the makers of ElectroServer and so has a vested interest in promoting the software.  Having said that, I’ve spent quite a bit of time investigating and testing alternatives, particularly the big rival SmartFox, and in my opinion ElectroServer is the best choice for most applications.

The early sections of the book focus on server technologies, concepts and security issues before an installation guide for Windows, Linux/Unix and Mac.  Then he dives into the ElectroServer API with the obligetory Hello World example.  The rest of the book then teaches one concept at a time using real world examples.   Chapter 5 looks at chating, how chats are made available to users and how to set that up using ElectroServer.  Chapters 6 through 8 look at more basic concepts such as the difference between client and server code, movement and lobbies and finally in chapter 9 Jobe gives the first full game example – he takes you through the process of building a real-time tank game, and by the end of that chapter he has covered a lot of really useful concepts, from collision detection to path finding and even spatial audio (something very few authors seem to touch on).

Chapter 10 looks at tile based worlds, discusses their advantages and looks at the logic behind a tile based engine, and a good explaination of the a* pathfinding algorithm.  That is then built on in chapter 11 with a look at building a co-operative 2 player game.  Chapter 12 is where things start to get really interesting with a look at the isometric viewpoint and how that can be used effectively in building virtual worlds.

The rest of the book I’ve only skim read so far, and it covers a number of useful topics such as player avatars, buddies nd virtual worlds, and finally the appendix offers a guide to setting up the sample extension which can be downloaded from the website.

Here’s a breakdown of the chapters in details:

Chapter 1. Web Game Landscape
Client-side Technology
Where Multiplayer Fits In

Chapter 2. Connecting Users
Connection Techniques
Socket Server Choices<

Chapter 3. Security: You vs. Everyone Else
Logical Security
Physical Security

Chapter 4. Introducing ElectroServer
Server Concepts
Installation
Hello World
Administration Panel

Chapter 5. Chat
Overview
Simple Chat Room

Chapter 6. Where Decisions Are Made
New Concepts
ElectroServer Plugin Concepts
Installing the Extension
Dig Game

Chapter 7. Real-time Movement
Responsive Controls
Path Types
Frame-based Movement
Latency and Clock Synchronization
Time-based Movement

Chapter 8. Lobby System
Common Features
Game Flow
Dig Game 2

Chapter 9. Real-time Tank Game
Game Overview
Authority and Prediction
Line of Sight
Game Messaging
Mini-map
Message Aggregation
Level Editor
Spatial Audio

Chapter 10. Tile-based Games
Tile-based vs. Art-based Levels
Other Tile-based Benefits
A* Pathfinding

Chapter 11. Cooperative Game Play
Types and styles of Cooperative Game Play
The Game: Super Blob Brothers
Server vs. Client: Who’s the Boss?
Game Messaging
Client-side Details

Chapter 12. Isometric View
Basics and Benefits of Isometrics
A Technical Look
Sorting Algorithm

Chapter 13. Avatars
Meet the Avatars
Rendering Approaches
Sprite Sheets
Avatar Creation and Customization

Chapter 14. Virtual Worlds
Common Features
Old World
Map Files
Map Rendering
The World

Chapter 15. Buddies
Relationships
Buddies in Old World

Chapter 16. User Homes
“Open House”
User Homes in Old World

Appendix: Setting Up the Sample Extension
Server-Level Components
Old World
Configuring the Logging
Setting up the Server-side Development Environment

Conclusion

I’ve not had time to go through all of the examples yet, but those I have gone through have been excellent.  Jobe is a great writer and is able to get the concepts across easily making the book quite an easy read despite the technical content.  It’s also well laid out and edited so you’re overwhelmed with pages crammed full of code. In fact, when I first picked the book up I was a little dissapointed as it’s quite small and I wrongly assumed it was light on content, but quite the contrary – in fact it’s amazing how much solid content Jobe manages to cram into such a small package of less than 300 pages.

Personally I can’t wait for the designs for my project to get approved by my client so I can dive into the development work, and many of the concepts taught in this book will be cornerstones of my approach to the new game.  If you’re at all interested in building robust multiplayer games in Flash then you really do need this book, and you can certainly expect one or more tutorials on the subject posted here at some point in the future!

Buy Actionscript for Multiplayer Games and Virtual Worlds on Amazon

Book review of:

Real-World Flash Games Development

How to Follow Best Practices AND Keep Your Sanity

by Chris Griffith

First of all happy new year, and I hope you all had a great time over the Christmas holidays. I spent my time snowboarding in the Alps, and when I returned this book had arrived from Amazon!

I’ve only had a couple of days with the book so far, and while I’ve flicked through the entire book I’ve only properly read the first few chapters, so this is more of an overview than an in depth review, and I’ll post a full review when I’ve finished the book!

This is the first book I’ve come across from Chris Griffith, and I hope it won’t be his last. Apparently he’s a senior game developer for Blackdot and has worked on titles for some major brands including LEGO, Microsoft, Pepsi and Starbucks to name just a few. The book is aimed at intermediate/advanced developers so if you’re brand new to building Flash games you should start off with something for beginners first (although hopefully you’re following my tutorials here at Flash Games Classroom and are well on the way!)

If you already have a good grasp of Actionscript however, and maybe some games experience, then there is a lot in this book to sink your teeth into. The book focusses on techniques for streamlining the development process, and as the title suggests gives “real world” techniques for building sleek and robust games.

The book covers Actionscript 3 and Flash CS4 (with the odd sidenote for anyone moving from AS2) and is broken into 18 chapters ranging in topic from detailed planning (chapter 3) to robust collision detection (chapter 11 – titled “don’t hit me!”) through to a platform game engine (chapter 15) and tips on bug fixing, optimization, security and protection (chapters 17 and 18). There’s also a useful appendix for using webcams and microphones in your games.

Well written, with cleanly laid out and easy to understand chapters
Well written, with cleanly laid out and easy to understand chapters

So far I’ve read the introductory chapters, and dived into the colision detection chapter which goes into a lot of depth on various collision detection techniques, when to use them and how to apply them. I’ve also dipped into both the maths chapter and the section towards the back of the book on security and optimization. If you’re an experienced games developer like myself you’ll find you can skim through sections, just focussing on the techniques which are new to you, or different approaches to what you normally use. For those who are less experienced, you’ll find that the explanations are detailed and well written.

I’ve found Chris’s writing to be just the right level – he goes into enough detail without labouring the point. The book is well written, and does live up to the title of offering “real world “ techniques – I’ve already found ideas and techniques which I’m beginning to use in my day to day coding.

If you’re developing Flash games commercially at any level then this book really should be in your library. If you’re just learning then you’ll want to get the basics down first, but I would still recommend buying a copy of this before too long as it will teach you some solid practices which will serve you well in the long run.

As I’ve already mentioned, I’ll be posting a full review when I’ve gone through the entire book, but so far I’m very impressed and very glad I ordered it. Well done to Chris for turning out an excellent volume for his first book, let’s hope other authors follow in his footsteps and we see more quality titles like this in the future!

The book is available on Amazon for $32.97 (£24.99 in the UK!) and is well worth the price in my opinion.  There’s an Amazon link over on the right if you want to use it (meaning I’ll get a small commission) or just head over to Amazon and search for the title if you prefer.

Finally, here’s a run-down of the chapter headings to give you an idea of exactly what’s included (and the Amazon listing has a full contents listing too!)

  1. Computer science isn’t for everyone
  2. The best tool for the job
  3. A plan is worth a thousand aspirin
  4. FTW!
  5. Managing your assets/Working with graphics
  6. Make it move: Actionscript animation
  7. Turn it up to 11: Working with audio
  8. Put the video back into “View Game”
  9. XML and dynamic content
  10. Four letter words: M-A-T-H
  11. Don’t hit me!
  12. I always wanted to be an architect
  13. We’ve all been there
  14. MixUp – A simple engine
  15. Bringing it all together: A platformer
  16. Don’t play by yourself: Multiplayer development
  17. Squash ‘em all iuf you’ve got ‘em: The bug hunt
  18. On your guard

All of the examples in the book are available at Chris Griffith’s blog.  Here’s an example of a simple top down car from chapter 10 (Maths!) which uses really simple phyics to get a car moving around the screen.  Use the arrow (cursor) keys to steer and accellerate.

What if there was a way to guarantee more players to your games, and more visitors to your sites or Flash applications, that was free and only took 2 minutes of your time? Well there is!

Social media is huge, and it has taken the Flash games industry by storm these last couple of years, but few Flash game developers are relaly taking advantage of it yet.

Porting games to the Facebook platform is a great way to increase your exposure, but that can be a little complicated and I’ll cover that in a future post. Also HeyZap recently launched “HeyZap Viral” which allows highscores to be posted as Facebook or Twitter status updates, and again I’ll be writing a full tutorial on that very soon, but today I have something even better, and even easier to implement for you…

Flash Social Media Buttons

This is a free component I’ve developed which allows you to drag and drop social media buttons right into your games. It contains buttons for 20 of the most popular social media sites, including Digg, reddit, Fark, Delicious, Twitter and more. It’s easy to use, and you can customise it using as few or as many buttons as you like – oh and did I mention, it’s free!

Want to see it in action? Here’s a modified version of the simple game we built in yesterday’s tutorial on how to build Flash games. You’ll see a “Share This” button on the intro screen, and a different one on the game over screen, so give it a try…

Cool huh!

This makes it really easy for players to share games, and spread them virally on networks like Twitter, Facebook and Digg…

There’s no scripting required. All the actionscript code is contained within the buttons so just drag and drop the ones you want to use into any Actionscript 3.0 project and you’re good to go! The submission uses the game’s current URL, so no matter what page the game is on, that’s what will be submitted (though of course that can also be tweaked with if you wish).

Here’s a preview of just some of the different button types, but they’re easy to customise so you can always just use the code and create your own actual buttons:

So, if you like it please first of all leave a comment, and submit this page to a social network of your choosing to spread the word, then click here to download your free component and start adding social media integration to your Flash games and applications!