I’m really loving SpatialOS, and the documentation and tutorials are fantastic.
So there are some things I noticed while going through the Pirates tutorial on SpatialOS SDK v10:
Building workers from within Unity hangs the UI and makes Unity unusable due to spatial.exe detecting a newer version and asking if it should update, requiring a Y/N keypress on the background process.
I have multiple versions of Unity installed, all on drive D:
Installing the version SpatialOS requires doesn’t help unless it’s installed specifically to “C:\Program Files\Unity”, as the registry setting for the Unity path is seemingly ignored.
The Pirate tutorial documentation, https://docs.improbable.io/reference/10.4/tutorials/pirates/pirates-command
- The ACL has a ; halfway through the new lines
- A bunch of lines are missing a . between new Class.Data
- Should be a uint in “return new AwardResponse((int)request.amount)”
- Never explicitly mentions that you should add TrackScore to PlayerShip (mentions it as a passing note later)
- “ScoreCanvas”, not “Canvas” in “scoreCanvasUI = GameObject.Find(“Canvas”).GetComponent();”
Deploying to cloud tutorial never mentions that you require a Linux build.
It also assumes you’ll make a macOS build.
Despite those 2 failing, the deployment “succeeds” and shows up on the cloud control panel, but you’re never able to launch a game (no server).
You can stop laughing now, but the control panel doesn’t work in EDGE, it just constantly shows “connecting”
Then, some general notes that are just musings, not errors:
In game, the score doesn’t show until you’ve sunk at least one ship.
No way to run cloud launch from the Unity UI. Having only 1 command you have to run from the terminal is weird.
spatial cloud launch MyPiratesAssembly default_launch.json piratestutorial --snapshot=snapshots/default.snapshot --cluster_region=eu
It’s also weird that you cannot see a deployment in the deployments panel online… until you launch one using the command above.
It’s not the end of the world, but (maybe) it’d be nice to run the deployment from Unity, see it appear in the control panel, and from there you could launch it, instead of running the command line above.
Number 1 is the only one I feel strongly about, as it ruins the automatic workflow I have set up.
So yeah, thanks a lot, and I hope this has been useful!