So, the question seems vague but I will elaborate.
I’m a software developer, but I don’t do games; yet I have an urge to try and make something.
It just seems so overwhelming, I know I want to make a game where the main character is a cat and you have to complete missions, but where do you even begin. Where does the art come from? How do you refine your idea, if all you know is you want a cat game? How do you choose an engine? Do you just start with the basics and get a cat walking around and see what comes next? If you can’t hash out the idea then so you have a right to even try and make a game? Is it best to follow tutorials to get used to making games? I feel the answer to that is no as before I become a software developer, tutorial hell was a thing and I realised I needed to make things for me to actually learn.
Sorry for all the questions, this was just a stream of thought.
Hrm… I suppose I spent 15 years making other people’s games first. >_< More seriously, just start with small stuff. Make a simple 2D game with a something like the Love framework or Pico8. Then try to scale up a bit or use something a bit more powerful. If you are really want to make a game solo, then the best thing you can do is learn to control your scope. You’ll never be able to be good at every part of making games, so figure out what parts you want to work on and figure out how to make a game around those skills.
You also don’t have to make do it alone. You can hire out art, programming, sound, music, writing… really anything. Most “solo” devs do that to some extent. Also try and seek out your local gamedev community. Asking online is fine, but you’ll get more out of an in person conversation with someone who’s done it before.
Lastly, game jams. There are smaller game jams going on all the time, but the big one is the global game jam in January. I’ve always liked that one because there are always new people. In my experience, fresh gamedevs are always perfectly welcome. You’ll have someone else on the team that can rough out the structure for you, then you just need to apply what you already know as a software developer to fill in some blanks. People also like to do role bending at jams too. Programmers will try making art, artists will try making music, and sound people will try programming. Jam games are usually bad, so nobody will expect anything you make to be any good, but people generally have a blast doing it anyway. :) I like to rope people into making NES games every year because even as experienced game devs they are so sure they can’t write C code, let alone for something 40 years old, certainly not in 48 hours! They do just fine once they dig in. :D -> https://www.slembcke.net/nes/
Well, for someone like me who had no inkling of programming skill until I forced myself to learn, let me tell you it was HARD. Everything about my game was a learning process but I took that as a challenge to improve myself and make myself more adaptable for future projects.
To give you basically a rundown of how I’m making my game is I first started with an idea. I liked playing Paper Mario and Super Smash Bros so I decided on gameplay similar to those two. Then, I chose Unity based on a recommendation from a teacher. As I learned coding through YouTube tutorials and asking questions on forums, I started with a simple script to control a tic tac that runs around a quick map I made with primitive shapes. And from that initial prototype I added more and more things. Different mechanics, quests, etc. For art, I’m making most of it on my own since I’m an artist first thing but most I’m getting from free sites like turbo squid or the Unity Asset Store. Music and sounds I’m using temp stuff until I can get to making them.
For myself, even making a simple mechanic of controlling your cat to explore an environment is a game. Sure, it might not be GTA quality, but it’s still a game. From here you can make something more interesting. I always say that in order for something to look beautiful, first it has to look ugly. Even a beautiful butterfly has to start as a worm.
Narrow scope.
By starvation.
I am not even kidding, see indie game the movie.
Games are art and making art in this works comes with the sacrifice of not being able to afford anything until you by chance become popular.
I was a pro game developer for 19 years, more or less. After my last job ended, I self-published an indie game. To this day, it’s not made enough money to trigger a single payout. I failed. So it’s fair to take my advice with a grain of salt, if not a whole block. But here’s my two cents anyway.
Start by sketching and writing. Think of verbs; games are all about doing things, even if it’s just advancing through a conversation. Your protagonist is a cat, so cats run, jump, explore, play. Think of why the protagonist is doing things. Where do the missions come from? And in this case it’s hard not to look at Stray. There’s almost always something that’s come before, even if it’s not super high-profile like Stray. Think about what you want to do different.
Art will come from you, if you go it alone and can’t or don’t want to buy art assets. Blender and GIMP are hard to learn, but free and powerful.
Your engine is almost certainly going to be Unreal, Unity, or Godot. Each has strengths and weaknesses, including the cost of use. You have to factor it all in.
I do think you’re right that you’ll learn more by making things than doing tutorials, but be aware if you start spinning your wheels on something. You’ll benefit from both.