Blockblast 76 Github Page

| File | Why it matters | |------|----------------| | README.md | Quick install instructions | | docs/architecture.md | High‑level system diagram | | src/Network/SignalRHub.cs | Entry point for multiplayer | | src/Core/GameplayManager.cs | Game‑loop & scoring logic | | project.godot | Godot editor settings (important for export) | | Tool | Minimum version | |------|-----------------| | Git | 2.40+ | | Godot Engine | 4.2 (recommended) | | .NET SDK | 6.0.424 or later | | Node.js (optional, for UI hot‑reload) | 18.x | | SQLite | 3.45+ (bundled with Godot, but handy for CLI queries) | Tip: On Windows, the Godot installer automatically adds the godot CLI to %PATH% . On macOS/Linux you may need to symlink it manually. 📥 Clone & Set Up the Project # 1️⃣ Clone the repo (including sub‑modules, if any) git clone --depth 1 https://github.com/your‑org/BlockBlast-7.6.git cd BlockBlast-7.6

From there, the sky’s the limit: create new block types, integrate leaderboards, or even ship a browser‑based version. The code is clean, the docs are solid, and the community is eager to help. Fork the repo, star it, and drop a “Hello World” commit to let the maintainers know you’re in. Happy building! 🎮✨ — Your Name – Game Dev Engineer & Open‑Source Advocate

# 4️⃣ Open the project in Godot godot --path . When the editor opens, you’ll see the scene highlighted. Click Play ( F5 ) – the game should start in single‑player mode. ⚙️ Building the Multiplayer Server BlockBlast ships with a self‑hosted SignalR server written in C#. You can run it locally for testing or spin it up on any cloud VM (Azure, AWS, DigitalOcean). blockblast 76 github

# From the repository root cd src/Network dotnet run --configuration Release You’ll see something like:

Turn on verbose logging in SignalRHub.cs : | File | Why it matters | |------|----------------| | README

docker build -t blockblast:7.6 . docker run -d -p 5000:5000 --name bb-server blockblast:7.6 Now the server is reachable at http://<host‑IP>:5000/hub . | Symptom | Likely Cause | Fix | |---------|--------------|-----| | Client can’t connect – “Handshake failed” | Server not listening on the right interface ( 0.0.0.0 vs localhost ) | Ensure you start the server with dotnet run inside the src/Network folder. Verify firewall rules allow TCP 5000. | | Blocks appear out of sync | Multiple clients using different game versions | Run git pull on all machines, then delete the /.godot/ cache folder and restart the editor. | | SQL exception “database is locked” | Multiple server instances pointing at the same SQLite file | Use a single server instance per DB file, or switch to PostgreSQL (see docs/db-migration.md ). | | Godot crashes on start (SIGSEGV) | Incompatible Godot C# bindings (Mono version mismatch) | Install Godot Mono edition, then run dotnet tool restore to align the SDK. |

playerStat.Explosions++; await _dbContext.SaveChangesAsync(); Dockerfile (already in repo, but here’s a quick recap): The code is clean, the docs are solid,

FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build WORKDIR /src COPY . . RUN dotnet publish src/Network/BlockBlast.Network.csproj -c Release -o /app