# Open your existing Godot project

A Godot project you made elsewhere opens in Flockbay. Flockbay asks once before it writes anything into it, records everything it adds, and takes it all out again when you ask.

Source: https://flockbay.com/docs/open-an-existing-godot-project/

## Open the project

On Home, choose Open project… and pick the project’s folder. A folder above it works too: Flockbay looks up to three levels down for a project.godot, opens the one it finds, and lists them when it finds several. The ▾ beside Open project… has Import…, which takes a project.godot or a .zip and unpacks the .zip beside it, and Recent Godot projects, the list Godot’s Project Manager keeps. A folder, a project.godot or a .zip dropped on Home, outside the new-game box, opens the same way.

A project on a network share or a mapped drive opens, and so does one behind a junction or a symbolic link: Flockbay opens the real folder and says where it is. Links inside the project are followed for reading, as Godot follows them.

If a Godot editor you started has the project open, Flockbay asks first: close it there, or choose Open anyway. Two editors on one project overwrite each other’s saves.

## Flockbay asks before it adds anything

Nothing asks you to write a brief: Flockbay reads the project and works on what you ask. For a project Flockbay did not make, a card asks "Add Flockbay to" and the project’s name, before anything is written, and lists what adding it writes.

The list is short: the editor plugin in addons/flockbay_editor/; its entries under [editor_plugins] in project.godot, with no other setting changed; stage_generated/, added the first time you press Play; .flockbay/, Flockbay’s own records for the project; in a 3D game, starter models for the builder’s Place library; and in a git repository, a marked block in .gitignore and another in .gitattributes, with the filter that block names in .git/config. In a C# project the card adds that Godot’s .NET editor writes [dotnet] project/assembly_name when it saves.

A file on that list that is read-only, as a Perforce workspace keeps files until you check them out, is named on the card, and Add and open makes it writable. A save over any other read-only file stops and names the file, so you can check it out and try again.

Add and open opens the project in the editor with the chat and the builder. Open without Flockbay opens it in the Godot editor without Flockbay’s plugin, with the chat in the app’s own window, and writes none of Flockbay’s files into the project. The AI still reads the project, edits the scripts and scenes you ask it to, checks scripts and runs the game headless, with its own files kept in the app’s data. World tools, background runs and Play wait until you add Flockbay: pressing Play brings the card back. Cancel leaves the folder as it was.

Everything Flockbay adds is recorded in .flockbay/added.json, with the earlier value of every setting it changed. That record is your answer on this computer, which is why the question is asked once. Git ignores it, so a teammate’s clone gets the card too.

## Your settings and your add-ons stay yours

Flockbay does not override your project settings. Your Blender import setting, your icon and your boot splash stay as you set them, and your own copy of an add-on Flockbay also uses, such as Phantom Camera or LimboAI, is never replaced by Flockbay’s.

The AI asks before its first world tool turns the project into a Flockbay world. Until you say yes it works with the Godot tools alone: scenes, nodes, scripts, resources, signals, runs and screenshots.

When the scenes cannot say whether the game is 2D or 3D, Flockbay asks. Not now is an answer: turns keep working with the Godot tools, and Set 2D or 3D stays in the project’s menu.

A 3D world tool needs the Forward+ renderer. On a Compatibility or Mobile project it writes nothing and says what it needs first, and if you agree to the switch, the earlier renderer is recorded so it can be put back. The 2D world tools, for the ground, the backdrop, the player controller and placed objects, run on any renderer.

Generated pictures, models, sound effects and music go into the folder where your project already keeps that kind of file, and the AI says which. The builder’s palette lists the art your project has imported, wherever it lives, by folder. In a 2D scene of your own, Paint paints your TileMapLayers with their TileSet’s tiles and terrains, one undo step per stroke.

## Play adds nothing permanent

In a project made elsewhere, pressing Play writes nothing to project.godot. What the run needs is loaded through an override.cfg for that run alone and removed when the game stops, and an override.cfg of your own is put back as it was. A Flockbay world adds one line to project.godot, the StageCapabilities autoload that loads it. Play’s overlay and its agent act only in runs Flockbay starts, so a build from Godot’s own Project > Export plays as your game alone.

Flockbay’s Play overlay never takes a key your game uses. A game with its own pause menu keeps Esc, and F8 stops the run. Play adds no camera of its own and never changes your window’s content scale.

Play runs what Godot runs. When the engine’s loader refuses a GDExtension, because it was built for a newer Godot or has no library for this platform, or when an autoload’s script is missing, Godot skips it and runs the rest. Play does the same, and names what was skipped beside the run in Godot’s own words. A game that sets disable_stdout plays too.

A project with no main scene still plays its scenes: F6 runs the open scene, and Run Current Scene, Run Specific Scene and an add-on’s own run, such as a test runner’s, play the scene they name. F5 asks for a main scene as Godot does, "No main scene has ever been defined.", with a button that sets the scene open in the editor and plays it.

## What goes into git, and what does not

In a git repository, Flockbay keeps one block in .gitignore, between the lines "# Flockbay: begin" and "# Flockbay: end". It rewrites only the lines between those two markers; your own rules stay outside them.

The block ignores what belongs to this computer or is laid down again on every open or Play: the editor plugin, override.cfg, the starter models and most of .flockbay/, added.json included. It keeps the records a clone needs to be the same game, such as the world’s settings files.

The block in .gitattributes runs project.godot through a clean filter, set in the repository’s .git/config, that leaves the editor plugin’s [editor_plugins] entries out of what you stage. The project.godot you commit carries nothing of Flockbay’s, git status stays clean while the plugin is on, and a teammate who opens the clone in plain Godot sees no missing plugin. A Git without the filter commits the file as it is.

In a project made elsewhere the AI commits only when you ask it to, and it never writes a name or an email into your Git config.

Where that breaks: the starter models are ignored too, so a scene that places one names files the clone does not have until the teammate adds Flockbay, and plain Godot reports them as missing dependencies.

## Projects from another Godot version

Flockbay includes Godot 4.7.2. A project last saved by an older Godot 4 gets a card with three choices. Keep Godot and the project’s version, such as Keep Godot 4.3, opens it on your own Godot of that version, as it is, and some Flockbay features are not available there. Upgrade to Godot 4.7.2 upgrades it in place, which rewrites import settings and adds script UID files, as Godot’s own upgrade does. Open a copy in Godot 4.7.2 makes a copy beside it and leaves the original untouched. A project from a newer Godot gets Keep and Open a copy.

A Godot 3 project gets Keep Godot 3, which opens it on your own Godot 3 for the AI to edit files and run the game, without the editor tools or the builder, or Convert a copy to Godot 4.7.2. Converting runs Godot’s own converter on a copy beside the original, which it only reads, then loads every script, scene, resource and shader in the copy and lists what Godot 4 still reports, by file and line, with any file the converter skipped. A C# project gets Godot 4’s project file, with the Godot 3 one kept as .csproj.godot3, and when the .NET SDK is already on your computer its C# is built and each compiler error joins the list.

## Taking Flockbay out again

Uninstall Flockbay from project… is in the project’s menu on Home, and in the editor dock’s project menu, which saves and closes the editor first. Its card lists what goes: the folders Flockbay added and the ones it created that are left empty, the project settings put back to their earlier values, its blocks in .gitignore and .gitattributes, and what it set in the repository’s .git/config and hooks. Files it made writable are made read-only again, and Git LFS stays set up while files in the repository are stored in it.

GAME-BRIEF.md and anything Flockbay built into your own scenes and scripts are your game now, and are not touched. If files of yours still use Flockbay’s world files, the card offers Keep world files or Uninstall anyway. From Home, close the editor and stop the game first.

Related: [Where your project lives](/docs/where-your-project-lives/), [Opening your project in Godot](/docs/open-your-project-in-godot/), [The editor: Full and Simple](/docs/the-editor/)
