Now that HTTPS is working, the game I published can work over the web. This has the much welcomed side effect that it can run on any device from desktop to iOS. Unfortunately, it’s also very early alpha.
I spent today coding, first scripts to push updates and then a pause menu, because FPS controls make exiting the game a nauseating experience.
One has to clear the cache to see updates unfortunately, and the cache becomes very very large. I’ll have to do something for automatic cache clearing, but can such a thing be done from the server side?
The pause menu only technically works, catch-22 to follow:
The process mode of the menu has to be set to “when paused” for both the PauseMenu node under “Main” and inside PauseMenu.tscn’s CanvasLayer, otherwise the pause is activated all the time. But because those nodes are only active “when paused”, they can’t be shown or hidden; those properties are locked when paused.
I can still pause the game, but I need to also unlock the FPS controls so that you can move your mouse to the buttons or to the back arrow on the browser.
Also, on mobile, players have no movement because there are no WASD keys on mobile. I would have to implement a touchscreen interface as seen in Minecraft Pocket Edition. It’s technically possible to connect a USB-C keyboard and mouse to modern smartphones and play that way, but if I want this to replace the website experience I’m going to need to maximize compatibility and performance.