Chase M.

Kokomo

146

Karma

3

Questions

How do I practice programming and making games?

Currently, all I know is a little bit of GameMaker's built in coding language, and I have a budget of 0 dollars. I've made 1 game with the help of a YouTube tutorial (an asteroids clone) and have multiple unfinished projects. I want to know the answer to these questions: What programming language should I start with and why? What game engine should I use if any (I currently make 2d games for of, and I plan to expand to 3D)? How do I practice my programming language? What are some recommendations for games to practice programming? Thank you for your time.

0 comments Click to expand

chat-bubble-icon2 answers

Hey Chase,

TL:DR -- start with the Phaser game engine, running your games in the Opera web browser (that way, you won't have to install a web server. That isn't hard, though, and Phaser has a tutorial for it if you'd prefer to use a different browser). Check out the many examples and tutorials on Phaser games. This will teach you Javascript. Once you are comfortable writing 2D games in Javascript, move to Unity and go through their 3D game tutorials. You can keep using Javascript in Unity, though eventually you will probably want to learn C#.

Wall-of-text version: First thing to understand: there are no right or wrong answers to your questions. There are dozens, maybe hundreds, of ways to achieve your goals. I'm going to suggest one path, but others will probably suggest different ones. All that matters is you keep trying ways until you find one that clicks.

Given your situation, I recommend you investigate the Phaser game engine. This is a free, open source Javascript game engine. It's intended for 2D games, has hundreds of tiny examples and many excellent "full game tutorials". You don't need any special editors or compilers to run it. You will probably want to install a web server like XAMPP to run the games, but if you work in the Opera web browser, you don't need to.

There are some excellent books that guide you through the creation of several full games in the Phaser engine. Practice doesn't get much easier than that!

Why Javascript? It is a great starting language, especially when you are working within a good framework like Phaser. You don't have to worry about data types (which are great, but when you are starting out, add to the learning curve), the language is object-oriented but free of classes (which are also great, but more learning curve). Javascript is a stepping stone to more structured languages like C# and C++.

Another benefit: learning Javascript will help you transition to Unity. Unity is a great engine and editor, especially when you are ready to make the jump to 3D, but it's HUGE. It's overwhelming to learn Unity, game programming, and a new language all at once. By starting with Phaser, you will learn the game programming and Javascript in a simpler environment. When you transition to Unity, all you will have to learn will be the editor itself -- and that is plenty.

Like Phaser, Unity has dozens of free examples and hundreds of tutorials to help you get started.

Most important, remember to start small. Arcade classics like Asteroids are a perfect place to begin. If you have favorite games from that era, try to reproduce them. Don't be discouraged if you start many games and finish just a few -- but make sure you finish some of them. Getting involved in a community -- like the one around Phaser -- may help you stay focused.

Good luck! Hope to play some of your games one day. :)

Last updated Jan 12 at 10:51

1 comment

I would highly recommend taking a class on the unity game engine or unreal engine 4 on Udemy.com. The classses on there are better than any YouTube tutorial series. They are even better than the official tutorials made by unity and epic.

Ambitious people will learn how to make games and will find success from following basic online tutorials, but the workflow and practices this leads too causes poor development progress later on.

You need to learn the industry standards for game development so that you can develop the proper skills. Practice makes permanent not perfect, so be sure you are practicing the right way. That's what professional tutorials will do for you.

Last updated Apr 24 at 10:42

Comment on this

Ask a Question

Close form
By posting, you are accepting the terms of service and privacy agreement.