Godot Game Architecture: 7 Tips for Extensible, Readable, Testable Game Code
In which we discuss the nature of good code and fix up a sloppy old Tetris-like. Sometimes refactoring can be a bit of an overkill, but here are some high-value architecture and code-style practices you could take on for pretty much any type of game. I'm working in Godot with GDScript right now, but I think the principles hold pretty well across languages and even engines. Agree? Disagree? Scream at me in the comments! GitHub Links: Before: https://github.com/hoveringskull/bloc... After: https://github.com/hoveringskull/bloc... 0:00 Intro 0:43 Why refactor our code? 2:51 Characteristics of "good code" 4:54 The tight-coupling problem 7:25 Case study 8:16 Problem 1: Over-reliance on global autoloads 8:37 Problem 2: The signal hub 8:51 Problem 3: Ad-hoc scene structure 9:00 Problem 4: Pointless file structure 9:25 Problem 5: Dynamic typing 9:36 Problem 6: No clear style guide 10:25 A warning against being seduced by the beautiful song of refactoring 10:51 Converting to static typing 13:22 Segregating game state 15:14 A context-based hierarchical scene architecture 18:16 Simple dependency injection to replace global autoloads 21:23 Busting up the signal hub 22:25 Restructuring file system to express feature encapsulation 25:24 Unit testing, now much easier due to our changes 28:56 Conclusion See also: • Better, faster GDScript through Static Typing

TANKS KNOW ME NAME #traztvv

The Slop Apocalypse: How AI is Breaking Game Engines

Let's Build a Whole Game World with Godot Custom Resources

Let's Build a Monster Battler, Prequel: A slow mosey through the starter code & other regrets

Making Frogger-Style Movement in Godot | Hopper Devlog #1

Reinventing Entropy | Compression is Intelligence Part 1

The Godot Project Setup I Wish I'd Used From the Start

I Made The Same Game in Unity and Godot, Which Engine is Better?

He Knew Nothing... But Made $800,000 On His First Game (w/ Cakez) — Ep 66

Better, faster GDScript through Static Typing

Mastering Composition for Beginners in Godot

I Don't Think I Can Go Back To Windows...

Everything I know as an indie dev after 5 games and 300k+ sales.

The First Entity Component System - An Interview with Marc LeBlanc

Do indie developers belong in the trash? Yes. (An exercise in perspective)

I Gave ChatGPT a Body
![Can a Beginner Develop a Kernel? [Part 1]](https://i.ytimg.com/vi/lFkdXJd1wiE/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBTV0DSB1Dx-oaRbC124zpfQnlSXw)
Can a Beginner Develop a Kernel? [Part 1]

Best Code Architectures For Indie Games

How DOOM Will Teach You What CS Degrees Miss

