10 Milestones to Building a First Video Game
Work flow is important to keep in mind when designing a new game. Trello is a free web-based project management application that you can use like a corkboard where you can pin up index cards. The index cards correspond to task lists. The cards progress from one column to the next (via drag-and-drop), mirroring the flow of a feature from idea to implementation. This is especially useful for working in teams, as users can be assigned to cards, and users & boards can be grouped into organizations. Here is a Trello board that lists my 10 milestones to building a first video game. https://trello.com/b/e6MkuPsk (I find it fastest to log in using Google, so I don't have to remember any extra passwords.)
My 10 milestones for building a simple first game are outlined below:
- Choose your program, organize your folders.
- Collect assets & artwork (Placeholder art is perfectly fine).
- Build a level environment (and create Prefabs)
- Add the player character
- Create animations (and scripts)
- Place GameObjects, Set up the camera
- Build User Interface tools and Heads-Up-Display
- Calculate scoring points
- Game Over and/or Title screen
- Publish to the store.
Let's break it down in more detail now.
- Preparing your workspace. This is will depend on what program you are using to make your game, such as Unity, Construct 2, or Game Maker Studio.
- Importing assets is easy with the Unity Asset Store (free packs are available everywhere) and Construct 2's "Kenney: Donation Pack."
- Building your environment with level arrangement involves properly arranging your LAYERS:
- Background layer, where assets in the background are placed.
- Character layer, where your playable, moving characters live.
- Foreground layer, where doorways and assets that your character passes behind are placed.
- Default layer automatically generated by the program.
- Here is how to add a player character using Unity after you've imported the assets:
- Locate the player character in the folder labeled Models, then click on the Characters folder of the Project panel (in Unity)
- Drag and drop the character into either the Scene panel or the Hierarchy panel.
- Set the position to (0, 0, 0).
- Set the Tag to Player in the drop-down in the Inspector.
- Creating animations and scripts all depends on what you want your characters to do:
- Idle, Move, Jump, Die, etc.
- Make animations by creating Booleans, triggers, transitions, setting conditions, etc.
- Set RigidBody physics to give your player gravity, set constraints, set collision boundaries to make it collide with the environment.
- Placing GameObjects and setting up the camera is easy. https://docs.unity3d.com/Manual/CreatingScenes.html
- User Interface Tools and Heads-Up Displays (HUDs) take a little more time to perfect. Unity
- Scoring points and (below)
- Making a Game Over screen happens after you've built your HUD. Here are more resources for learning about all these things and more:
Unity's official site: https://docs.unity3d.com/Manual/CreatingScenes.html
Microsoft Games Evangelist David Crook: https://indiedevspot.azurewebsites.net/2014/04/25/build-a-2d-top-down-game-zero-to-published-part-1/
Microsoft Evangelist Shahed Chowdhuri: https://wakeupandcode.com/unity/
Comments
Anonymous
November 16, 2014
What about Microsoft's game framework - XNA and it's open-source alternative - MonoGame? Thanks. visualstudio.uservoice.com/.../3725445-xna-5Anonymous
November 20, 2014
Support for C# development will be coming to Xbox. The .NETBlog (http://blogs.msdn.com/dotnet) is the best way to stay up to date with the latest in .NET. Let me ask you an honest question, Dev: Have you built a game in, say, Unity? I've seen a game with TONS of code to do basic game framework scaffolding using XNA. With Unity you don't need any of that. I just want to know what you've tried. Thanks.