ed6f243b93fcf223a9b5fdb61e51b297338a629a
* Add overridable hooks for sunk/reaped ball handling and turn behavior. * Implement default scoring and game-over messaging across game modes. * Add pretty game mode names for win-condition messages. * Update Free Ball, Last Ball, and Snooker modes to return win-condition messages. * Move the reset button lookup to the scene root for multiplayer setup. * Move camera controller scene to shared base UI. Move parts of it to new game_data UI node. * Add commented test state generation for end-state testing.
Running the Lobby Server
Note: The lobby server looks for a local script named
game.sh.
From the Editor
Debug → Customize Run Instance
--name_billiards server game_port_range 5000:5010
From the Command Line
./lobby_server.sh --name_billiards server game_port_range 5000:5010
Connecting Clients
From the Editor
Debug → Customize Run Instance
Host a game:
--client host_snooker bobs_game
Join a game:
--client join bobs_game
From the Command Line
Connect Directly to a Game Server
Start a server:
./billiards.sh --server_5001 game snooker
Join the server:
./billiards.sh --join_server 127.0.0.1 5001
Connect Through the Lobby Server
Host a game:
./billiards.sh --client host_snooker bobs_game
Join a game:
./billiards.sh --client join bobs_game
Description
Languages
GDScript
100%