September 14, 2023
Welp, I finally did it!
I released my first Udemy course.
And oh boy!
I’ve learned a lot along the way.
Lots of things that I wish I knew beforehand.
This course teaches beginners how to make video games using the Godot game engine.
At the end of the course users have a fully featured game based on the Atari 2600 game SeaQuest.
If this course looks interesting to you, you can pick it up at Udemy here.
Anyways, lets get into the juicy stuff.
If you haven’t read my last post about making this game I recommend you read it.
1. Rebuilding the Game
This course builds upon the foundations of the previous game I made.
When I started the project, I already had the game made that I wanted to recreate for the course.
The only problem was that the game was a mess.
It needed to be recreated from the ground up to be made simplier for new users.
So I went to work remaking the game once again from the ground up.
Making sure to take simple design approaches and follow Godot’s best practices.
This ended up taking quite a bit of time.
And by doing so I was sacrificing the time I could have spent making videos, continuing work on the project.
But ultimately what I learned was that remaking the entire project prior to recording didn’t need to happen.
Once I began recording videos for the course I found myself still having to make many changes to the project or deviating from the project.
This led to three projects.
- ✅ Fully remade finished course project
- 🎥 The actual course project (the one I’m recording)
- 📝 The planning course project (based on the course I’m recording)
So I would take bits and pieces of code from the fully remade course project and put them into the planning course project.
As I’m doing so, I’m taking notes on what I am doing so I can make the next course video.
This is great until I realized the planning course project is drastically different than the one I intended to be the completed fully remade course project.
At this point I realized it was a waste of time remaking the entire game prior to recording.
Gamedev is not linear.
Each stage of the project code gets moved, refactored, and game elements tend to change overtime.
This makes it extremely difficult to plan everything in advance.
I made the mistake of overly trying to plan;
instead I should’ve just been planning each video individually rather than the whole course.
This takes us to the next thing I learned.
2. Planning
Let me make this clear.
The way you take notes doesn’t matter.
You just gotta find what works best for you.
Too many get lost in the abundance of tools and apps out there.
Just find something simple and stick to it, don’t make things harder for yourself.
When I started planning this course, I began by writing my notes on paper.
This worked great in the beginning, but it started to become a bottleneck in my process.
I then transitioned to Obsidian.
And synced my notes across devices with Syncthing.
That way I can easily access my notes on my phone, desktop, and recording computer.
I found this setup to work great for my needs.
I made a Course Overview page that contains a checklist of all the things that need to be im