Posted July 18, 2024 by crazyhoundgamedesign
#Software #Tools #Design
For any game developer, the tools we use to help us plan and make our games are the most important assets we can have at our disposal besides that one great idea and vision to create a game. Every tool we use has to allow us to create the things we want and help us to make a game look, feel and play the way we want it to. While being a creator means that we should always strive to make things as close to our original vision as we can, our attempts to create are bounded by our own experience and the capabilities of the tools we choose to use.
The majority of the tools I have been using, and learning, are nothing surprising if you've already seen lists of common free software to use for making games or game assets, but one of the most useful things I have found for planning and making games is actually a spreadsheet. A lot of people these days seem to say you need to have a Game Design Document, a place to plan out and scope any game ideas you might have. I use a spreadsheet in a similar way which I will explain later.
For myself, I restrict myself to using free software because I do not have the resources to purchase lots of different licences for the different applications and tools I need to be able to create the assets for my games. While free software can sometimes come with its own drawbacks, I have found the majority of well known and popular free software tends to be stable and has active communities providing tutorials and instructions on how to use the software.
I also want to be able to make as much of any game I make myself, the software I use allows me to create graphical assets, sounds and music, and the games themselves with no licencing fees or financial overheads. The quality might not be as good as a professional artist, sound designer, musician or developer, but each project is a learning experience that helps me to improve.
So, here is the list of software I use (at the moment):
Links to the software are available at the end of the post.
2D Graphics GIMP - Used for Sprites and Sprite Sheets, Textures, UI Elements and general images. Krita - Used for hand drawn images and larger graphics. MSPaint - Used for Sprites. InkScape - Used for Logos and Scalable Images. | 3D Graphics Blender - Used for 3D Modelling and Animations. GIMP - Used to create Colour Palettes and Textures. |
Sounds and Music LMMS - Used to create Music and basic Sounds using built in plugins and samples. Audacity - Used to record and edit sound files, either from microphone or LMMS exports. | Game Engine Godot - This is where the game is "made", pulling all of the assets together and coding all of the logic. |
Video Editing OpenShot - This is used to create the trailers for my games (and my attempt of making a YouTube channel). GIMP - This is used to create the graphical and textual elements of the videos. Audacity - This is used to record and edit the sounds used in any videos including voiceovers. | Planning LibreOffice Calc - This is an open source spreadsheet application included with LibreOffice which is a substitute for Microsoft Office. |
All of the above software is free to download, install and use. While the tools may not be the "best" at what they do, they are more than capable, even with my limited development experience, and they have allowed me to start making games my own way.
Why a Spreadsheet for Planning?
Before I explain why I use a spreadsheet to plan my games, first a little personal background. While I now work in retail, filling shelves and helping customers, I used to work for a Business to Business IT provider and have both used, and written, design and training documentation for a variety of solutions. While I understand the need for appropriate documentation in any development activity, as my "team" only consists of me, any documentation I make to plan out my games does not need to be as verbose as a full design document. As a result I started using a spreadsheet to highlight key points of anything I was planning or working on for my games. Starting with just bullet pointing what I had planned.
After I started working through projects however, I found that using a spreadsheet gave me a certain flexibility when it came to working through design problems and tracking what I was working on.
When I start a new project, I normally create a new spreadsheet. On the first "sheet" I always put down a few comments to outline what I want the project to be, what the game loop is, what it depends on from a player perspective, if it is 2D or 3D, etc.
In business talk this is a "High Level Plan" where you think about things at a conceptual level.
Once that is done, I start to outline the core mechanics that will be needed in the game for it to function. When I say core mechanics, I mean thinking about every core function, like player movement, player health, enemy movement, enemy health, item interaction, UI, etc.
I also outline a rough set of graphics, sounds, characters and objects to help me understand the scope of the project. Because all of this information is in a spreadsheet, this rough set of information can then be easily extended to include relevant information about each feature, like a functional requirement, a category, a completion status, or any item specific notes for future reference.
Another benefit I have found in using a spreadsheet is that when I get stuck on a particular mechanic or how to manage the relationships between objects, I can create a new empty sheet and start listing each interaction, variable and object in a way that helps me work through the mechanic or relationship to identify the variables and data that needs to be communicated between the various elements in my game to make a function work. This results in a set of information similar to pseudo code that can more easily be turned into real code in the game engine.
A Little Wisdom ...
While I think the most important thing for anyone making a game is to work on it with enthusiasm and focus, and that the most important tools for someone making a game is the game engine and the software used to make the assets. I think that overall, regardless of how they do it, anyone making a game needs a way to record what their ideas are, what they need to do to make those ideas a reality and a way to track the progression of those ideas.
Links to Software