As a result of my work with multiplayer HTML5 gaming, I propose a series of workshops that teach people how to make these games themselves. I need your feedback to make them happen, so make sure to read the full proposal and leave a comment.
A little background information
The purpose of the workshops will be to teach you the fundamental concepts and issues surrounding game development, specifically with multiplayer. You'll learn everything needed to create a multiplayer game; from the initial set up, right up to the final spit and polish required to get everything working nicely. Yes, you'll end the workshop with a fully functional multiplayer game, but the point is more about learning the how and why behind what's going on, not to leave with a bunch of code that you don't understand. It's a tall order to achieve in just a few days, but one which I think that can be pulled off with anyone eager to learn.
Eventually these workshops will happen in a variety of cities across the UK, but for the first one I will keep things simple and put it on in the beautiful sea-side resort of Bournemouth. Who doesn't want to develop a multiplayer game in close proximity to a 9-mile beach?
If they prove popular, and all goes well, there is also scope for taking the workshops outside of the UK. Let's not get ahead of ourselves though.
Each workshop will be limited to a small number of attendees, probably in the range of 10 to 15 people. The reason behind this is that I want to offer one-to-one support for any issues and complications that arise during the event and there's only one of me, surprisingly.
Who should come?
On the flip-side, you won't need to be a super nerd either (damn those super nerds!). The workshops will be structured to suit both hardcore developers, as well as Web developers and general programmers who are interested in creating games. In short, the workshops are for anyone who knows how to code.
I'm in a fortunate position where I don't need to make a profit from these workshops (I love my job). However, that doesn't mean that they are free to actually organise and put on, so I'm currently in negotiations with Mozilla (my employers) and potential sponsors about negating the cost of the event so that I can offer it to you for free, or as cheap as possible.
However, an issue with the free model is that there are no ramifications to attendees for taking a place on the workshop (which are severely limited) and than cancelling at the last minute. I need to come up with a way that works for me, so I can be sure about who is actually going to turn up, and that works for you, the attendees, so that you don't miss out on a place. This may require me to charge a small fee to guarantee you a place on the workshop, unless another solution can be devised. I'm all ears!
Here is a rough outline of some of the things that you can expect to learn during the workshop. This list is by no means definitive and it's highly likely to change as I plan further.
- The core elements needed to create a game
- The fundamentals of multiplayer game development
- Common issues with multiplayer gaming and the subsequent solutions
- How cheating can happen
- Preventing cheating with the authoritative server model
- Optimising network communication to reduce bandwidth
- Dealing with latency through client-side prediction and interpolation
- Using Node to perform game logic on the server
- Using Socket.IO for WebSocket network communication between client and server
- Using a server-side storage system to persistently store game data (probably MongoDB)
- Visualising the game world on the client with HTML5 canvas
- Implementing sound with HTML5 audio (if looping is fixed in time, otherwise with Flash)
This is where you come in
So now it's down to you guys. What do you think about this proposal? Do you want to see a workshop like this happening? If it has to cost, how much would be too much to charge? What cities would you want to see the workshop put on at?
Please use the comments below to give me your feedback and questions, or email me.