# Godot Game Loop Lab Checklist

Use with Build a First Godot Game Loop: /projects/build-first-godot-game-loop/

## Before starting

- [ ] Pick a one-screen interaction that can be tested without art polish.
- [ ] Name the player action before binding every possible key.
- [ ] Decide one visible signal that proves the game state changed.
- [ ] Keep save-state work to one small value if it is needed at all.
- [ ] Write what counts as done before adding more mechanics.

## During the lab

- [ ] Open the project and name the current scene that should run first.
- [ ] List the input actions the prototype needs and the behavior each action should trigger.
- [ ] State the starting game state in one sentence.
- [ ] State the target win, fail, or reset condition in one sentence.
- [ ] Identify the object or script that owns the state transition.
- [ ] Add or inspect one visible feedback signal such as text, color, score, sound, or position change.
- [ ] Run the loop twice and record whether the same state transition still works.
- [ ] Write one common bug you saw or expect, such as input not firing or collision not registering.
- [ ] Choose one improvement idea and write why it can wait until the loop is stable.
- [ ] Link the project note back to the Godot lesson page that explains the missing concept.

## Finished-state checks

- [ ] Current scene is clear.
- [ ] Input actions are named by intent.
- [ ] State starts in a known value.
- [ ] Win, fail, or reset condition can be triggered.
- [ ] Feedback appears when state changes.
- [ ] Restart behavior works twice.
- [ ] Score or status display is inspectable.
- [ ] Next improvement is small and deferred until the loop is stable.

## Common mistakes to avoid

- [ ] Adding art, menus, and multiple levels before one loop is testable.
- [ ] Binding raw keys everywhere instead of using named actions.
- [ ] Treating a collision problem as a scoring problem before proving contact.
- [ ] Building a save system before deciding which state matters.
- [ ] Calling the prototype done without a restart or reset path.

## Safety and boundary checks

- [ ] Do not turn a first loop into a full game plan.
- [ ] Do not copy a long script unless you can name which state it changes.
- [ ] Do not hide broken input behind art polish.

## Next step

- [ ] Check collision debugging next: /learn/godot-collision-debugging-basics/
