I’m not sure what the most efficient way to learn is: reading and watching as many docs, tutorials and videos as I can to get an overall understanding or constantly exercising my googlefu and adding code until it works. For the past few days, my approach has… been a mix of both.

I have spent this week working on scenes for buildings and implementing doors which allow the player to go in and out of a building or room. I’ve probably reimplimented this seemingly simple feature five times by now. I keep running into a minor problem which requires a different approach or the solution I’ve come up with isn’t OOPy enough for satisfaction. Often when I get something working, I’ll present my solution to my partner and he’ll say “But what about if you want to do X with the player in the future?”, which then requires more thought and coding.

At first, I was surprised on the lack of tutorials for a seemingly common paradigm. It looks like every system in Godot can be expressed in a myriad of nuanced ways. Creating games requires a lot of creativity– not just in crafting the world and story, but also in figuring out an elegant expression of the code and tools available in order to specify how everything should work together.

As I continue working, I’ve found reading through the Godot best practices to be informative: https://docs.godotengine.org/en/stable/getting_started/workflow/best_practices/index.html

“Learn the rules like a pro, so you can break them like an artist.” - Picasso

I’ve written some dev logs the past few days, but decided to wait until I’m satisfied with my set up and then explain the final working solution in a single post.