// the find
heroiclabs/fishgame-godot
"Fish Game" for Godot is a 2-4 player online multiplayer game created as a demo of Nakama; an open-source scalable game server, using the Godot game engine.
A working 2-4 player online multiplayer game built in Godot 3 that serves as an official demo for the Nakama game server. It's aimed at developers evaluating Nakama or wanting a concrete example of matchmaking, real-time networking, and leaderboards in GDScript — not at players looking for a finished game.
The state machine implementation for player movement (actors/player-states/) is clean and instructive — each state is its own file, which is the right call for a project meant to be read. The Nakama GDScript addon is bundled directly in the repo rather than requiring a separate install, so you can actually run the thing without hunting down dependencies. The docker-compose.yml for spinning up a local Nakama server is a genuine quality-of-life addition that most demo projects skip. The project structure separates concerns sensibly: autoload singletons for network state, actors for gameplay logic, main/screens for UI.
This targets Godot 3.2.3 and hasn't been touched since early 2023, which means it won't open in Godot 4 without a conversion pass — and the GDScript API changes are substantial enough that the conversion isn't trivial. It's a Nakama marketing demo first and a learning resource second; the networking code is tightly coupled to Nakama's abstractions, so you can't cleanly extract the multiplayer patterns if you're using a different backend. Only two weapons and two maps, so as a reference for game variety or progression systems it's useless. The leaderboard requires manually copying a Lua module to your Nakama server and restarting it, which is underdocumented and breaks if you're not using the bundled docker-compose setup.