I recently had the great good fortune to give a talk at PAX East with Zach Barash, a good friend whose accomplishments are too numerous to easily list here. (Designer for Kingdom Death, Magic: the Gathering columnist, improv actor–seriously, we’ll be here all day and into the night!) Our talk, Starting–and Finishing–Your First Game, teaches a process that will reliably take you from an idea for a game to a finished product that you’re proud to show off. It also highlights some common pitfalls that derail projects, and explains how to avoid them.
You can find our slides here. Be sure to turn on presenter’s notes, which include our discussion for many of the slides.
Thanks to all who attended, to all those who asked questions (they were really good questions!), and to all who reached out afterward!
In a few weeks I’m going to be doing a presentation on 2D game implementation in Unity, and I’d like to run my plans past you. Nothing here is set in stone, so feel free to suggest changes to any aspect you think ought to be different.
Currently my plan is to use checkers as the example game. I’ll put the game together, and make the assets (art, scripts, etc.) available prior to the event, so that people have them when they arrive. The presenter at a previous meeting did this, and it worked very well; most of the attendees downloaded the assets in advance, and having them already in place enabled everyone to hit the ground running.
The presentation itself will have three major areas:
- Setting up a 2D game board. This has a practical and a theoretical component. Practically, we’ll cover some basic things like getting sprites into the IDE and instantiating a board at runtime, along with some notes on areas where I’ve tripped up so that others can learn from my mistakes. 😉 From a theoretical perspective, we’ll discuss how Unity doesn’t have the notion of space-by-space movement, as is common in board games–and how work at this stage can enable one to set that up.
- Movement in 2D. Mostly practical, this will focus on Unity’s 2D physics tools and how they can be used to do things like check for open spaces and opposing pieces. I’m also planning a (very) brief discussion of other approaches, like using multidimensional arrays to track what’s in what location.
- Rules enforcement. Here the discussion becomes more theoretical, talking about different ways to do things like keep track of turn order. We’ll use the pre-made scripts as examples.
If you were attending this sort of presentation, would all three of those topics interest you? Does one of them interest you more, or less, than the others? Are there things I’m not planning to talk about that you think I should?