Home | What IS Qodot? | Setting Up Your Project | The Game Manager Autoload | What's an Entity? | Base Classes and Property Definitions | Solid Entities | Point Entities, Part 1 | Point Entities, Part 2 | Game Configuration | Forge Game Data | Textures! | Finally. TrenchBroom. | Building the QodotMap | Helpful Resources | Frequently Asked Qodots
Alright, no time for warm welcomes, I need to teach you the awful secrets behind the universe. First things first, you'll need to install Qodot. Make sure to follow the instructions fully, don't just skim them. Also don't forget to enable Qodot in Project Settings!
So designing a directory structure for your game is its own art, and the layout of your project files can depend greatly on the kind of game you're making. For the purposes of this tutorial we will be working with an organization that splits our Godot assets from our TrenchBroom resources.
Set up your project's directory with this structure:
- res://
- entities
- maps
- sounds
- tb
- autosave
- fgd
- base
- solid
- point
- tags
- models
- textures
So what's the deal with the autosave folder? Well, TrenchBroom has a handy backup feature where it creates an autosave folder to periodically save backups of your map file. Less useful is the tendency for Godot to import these backups as well.
However, Godot has its own handy feature to combat this. Any directory with a .gdignore
file will not be scanned and imported by Godot. To save ourselves some headache later, open the autosave sub-directory in File Explorer. Make sure to check under the View tab that File Name Extensions is enabled. Create a new file in the sub-directory by creating a new Text Document and rename it .gdignore
, exactly like that with the .txt
extension removed.
And just like that, we won't have to deal with Godot constantly importing hundreds of backup map files from our project! You can do this for any directory that you don't want Godot to import files from.
We'll also want to ignore the contents of our res://tb/models/ folder as well, since they'll be used exclusively for TrenchBroom point entities. There are a few reasons we can't just reuse our Godot GLTFs which we'll go over later, but for now just copy the .gdignore
file you just created into the res://tb/models/ folder.
With our directory structure set up, we're going to take a detour from project setup. While you'd think it'd make sense to create our Game Configuration and FGD file next, they're a little useless without some entities to go with them first. However, before we get to that we'll want to implement a common design pattern to help tie our entities together.
Home | What IS Qodot? | Setting Up Your Project | The Game Manager Autoload | What's an Entity? | Base Classes and Property Definitions | Solid Entities | Point Entities, Part 1 | Point Entities, Part 2 | Game Configuration | Forge Game Data | Textures! | Finally. TrenchBroom. | Building the QodotMap | Helpful Resources | Frequently Asked Qodots