Skip to content

Latest commit

 

History

History
88 lines (68 loc) · 4.38 KB

setup.md

File metadata and controls

88 lines (68 loc) · 4.38 KB

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


Setting Up Your Project

Installing Qodot

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!


Directory Structure

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

Autosave

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.

Ignore TrenchBroom Models

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.

What's next?

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