Hello,
I would like to learn the basics of game design and programming. I used to create paper-pencil games when I was 8. I am familiar with the basics of computer programming (learned turbo pascal in the 90s, have done some macro programming in excel since then) but I have not done any programming in the last 15 years. I am good in math and logic. I have no idea what it takes to make a game and I am trying to collect information.
Where should I start? Learn a programming language? Unity? Python? HTML? What do people at Stardock use to make games (I guess multiple languages)?
I am sure the question itself is probably not well specified. Bear with me.
Thanks in advance,
Mario
I might recommend starting by modding an existing game. It's an easy way to learn stuff without jumping in the deep end.
I probably would recommend an engine like Unity.
There's basically two options: using an engine or using a library, and I think the answer for most people is using an engine (there's still stuff to program: Unity is used together with C# code, btw). Start small, and always keep learning. And for gods sake, don't try to make an mmorpg.
If you want to program something outside Unity, pick any common high-level language. Java, Python, C#. Honestly, learning a game library and related tools will be a steep learning curve for someone with little programming experience (It took me about 2 failed attempts before I got a solid start on my game. Though part of it was me starting with an ambitious project). Though there are good resources online and on youtube ... you just have to be curious, patient and willing to constantly learn.
My advice: start with the simplest possible games, finish them, then try something more difficult.
Modding a game is an option too, but I've always liked the flexibility of building standalone games. If you don't care so much about creating all the parts of a game, and want to focus on game design and balancing, modding an existing game is probably your best bet.
For game design: I didn't study game design formally. Mostly what I do is play games here and there with the intent of learning more about the genre. I do read articles / youtube videos on design, but the "seamless player experience / novel things" side of game design is kinda overrepresented. I think its more helpful to see "how did games solve these problems in the genre with regard to game balance, finding the fun, and progression", which is why playing other games is important. The only catch is that the games out there are usually much larger than the ones you are making. You only have to consider the challenges which are relevant to your game.
@SchismNavigator: thanks for the advice. And what skills would I need to mod a game?
@Chronopolize: thanks for taking the time to write this long advice. Unity is on my mind, in fact. But design and programming are where my interests are, so modding seems like a good start too. Same question for you: what skills would I need to mod a game?
As a hobbyist programmer/game designer, I would echo the sentiments of both SchismNavigator and Chronopolize.
I love working in Unity because it is relatively intuitive but with vast flexibility and tons of online resources. Early on, I relied heavily on free resources to augment my ideas, and these can typically be tweaked. Good free resources can provide a starting point for having something functional that you can tweak and learn from.
Also, there are tons of high quality video tutorials for Unity, both for the Unity engine software as well as coding in C#. Almost anything you want to learn is available for free on YouTube.
As for how to start a project... I have found it immensely valuable to do a mind map using a tool like Coggle to flesh out my ideas and organize what kind of assets I'll need to create. For example, if I wanted to make a simple roll-a-ball game (which, I should say, Unity has a tutorial and provides assets for), I would consider the roll mechanic--does the player tilt the game board, directly move the ball, etc. Then I'd consider what kind of assets would be needed: for example, a controller script for the ball (or board), the ball and board 3D models, the textures, shaders, etc., any sound effects, etc. By brainstorming what is needed for each element of the game, it breaks the process down into manageable pieces for me. You could apply this concept in myriad ways--using note cards, an Excel spreadsheet, a doodle on a piece of paper, etc.
Everyone seems to want to make some grand project as their first game. I recommend getting your feet wet by picking one or two simple mechanics you want to play with and build a simple game. This probably means a game that focuses more on level design than complex inventory management, spells, etc. That said, even an RPG can be simple if you limit the scope of what a player can do.
One interesting resource I've found helpful for considering game mechanics and design is the 4Keys2Fun chart. If this resource piques your interest, I recommend watching one or more of the videos in which the tool's creator discusses it--it makes more sense with some level of explanation.
I'd also recommend getting involved in the game development community. I personally have found it tremendously helpful to have other designers/creators who are willing to help--and who I can help, at times. You might consider Game Dev League (that's the community I'm part of, and if you're polite, it's amazing what you can learn there).
Hope that's helpful!
There are many great features available to you once you register, including:
Sign in or Create Account