colyseus / colyseus-unity-sdk

⚔ Colyseus Multiplayer SDK for Unity
https://docs.colyseus.io/getting-started/unity-sdk/
MIT License
371 stars 100 forks source link

Imported UPM sample project has a compile error #224

Closed metiscoda closed 4 months ago

metiscoda commented 4 months ago

New project. Following the directions in the Unity SDK installation page, I used the git url to download the UPM package. Then I imported the sample project from the package. It has a compile error (since UrlBuilder.Endpoint is private) Using Unity 2022.3.20f1 on a Apple Silicon Mac.

Assets/Samples/Colyseus SDK/0.15.9/Example/Scripts/NetworkManager.cs(32,44): error CS1061: 'ColyseusClient' does not contain a definition for 'Endpoint' and no accessible extension method 'Endpoint' accepting a first argument of type 'ColyseusClient' could be found (are you missing a using directive or an assembly reference?)

Screenshot 2024-03-29 at 10 19 03 PM

endel commented 4 months ago

Hi @metiscoda, thanks for the heads-up. Indeed this property was moved from public to private here: https://github.com/colyseus/colyseus-unity-sdk/commit/783ec5e3b03d7c93f90a6febf4fe5e54a3bbb637

The internals of the SDK still need some refactoring, I think this Endpoint property should be delegated to the Settings object.

The Unity example needs proper care to make it easier and more intuitive set-up. The documentation does not make it clear that it is required to download and run the Server code from here in order to run the project https://github.com/colyseus/colyseus-unity-sdk/tree/master/Server

I'll be revisiting this probably around June, so any PR for suggestions in the meantime are very welcome 🙌

metiscoda commented 4 months ago

There are already webrequest and websocket endpoints in the Settings. I'm not too familiar with networking code, but could we fix this issue with https://github.com/colyseus/colyseus-unity-sdk/pull/225

endel commented 4 months ago

Thank you so much for your PRs @metiscoda 💙