# GoonScape A multiplayer isometric game inspired by Oldschool RuneScape, built with Go and Raylib. ![GoonScape Screenshot](resources/screenshot.png) ## Features - 3D isometric world with height-mapped terrain - Multiplayer support with client-server architecture - Pathfinding and click-to-move navigation - Global chat system with floating messages - Multiple character models - Background music ## Prerequisites - Go 1.23 or higher - Raylib dependencies (see [raylib-go](https://github.com/gen2brain/raylib-go#requirements)) ## Installation 1. Clone the repository: ```bash git clone https://gitea.boner.be/bdnugget/goonscape.git cd goonscape ``` 2. Install dependencies: ```bash go mod tidy ``` 3. Build and run: ```bash go run main.go ``` ## Controls - **Mouse Click**: Move to location - **T**: Open chat - **Enter**: Send chat message - **Escape**: Cancel chat/Close game - **Arrow Keys**: Rotate camera - **Mouse Wheel**: Zoom in/out ## Configuration Server connection settings can be modified in `types/types.go`: ```go const ( ServerAddr = "boner.be:6969" // Change this to connect to a different server or localhost if you want to run the server locally for development ) ``` ## Development The project uses Protocol Buffers for network communication. If you modify the `.proto` files, regenerate the Go code with: ```bash protoc --go_out=. goonserver/actions/actions.proto ```