[h1]🎮 Sunday Devlog 16: The Controller Conundrum[/h1] So as it turns out, adding controller support to the game is going to be a bit of a puzzle. In fact, I've been cursed with bad luck trying to get work done on it so much that I accidentally lost half of this very log as I was writing it. So let's talk about controllers today! [h2]Talking to the game[/h2] Before even beginning to code anything, the controller needs to speak to the game. Sounds easy, right? Well apparently, [b]no, no it isn't[/b]. The game engine this game uses, Flowlab, runs in the web browser. This means that a controller needs to be recognized by whatever web browser Flowlab is running in, and it turns out that web browsers are pretty bad at detecting controllers. Before writing this dev log today, I've tried getting third party drivers, using every browser under the sun and launching browsers through Steam [i](did you know you can do that?? I didn't.)[/i] to get the web browser to detect controllers, but as I type this message, the situation is still ongoing. Getting the controller to talk to the game is one thing, but it's a whole other challenge to make it work with the game. [h2]Interfacing with the game[/h2] Now, to clear things up, [b]there's already a solid system for playing the actual game[/b] with the controller. However, interfacing with menus is a little more up in the air, so a couple days ago, I did a community poll asking people how they'd like to navigate through menus. [img]https://clan.akamai.steamstatic.com/images/45057857/8425e1faf57c5c32b0d3c4ffbdf54e639604f029.png[/img] People overwhelmingly chose the second option, which is going to be more difficult to code, but also kind of a fun challenge. The main thing is that this game has buttons all over the place. Some are in weird areas, some aren't near each other, and even level selects can have paths that go backwards. [img]https://clan.akamai.steamstatic.com/images/45057857/a5c6b2d5ac32e28c0111d0e440e3f7126a6f64cb.png[/img] So, in this album, if I just decided "pressing right makes you move through the levels from the start to the end, and left does vice-versa", you would eventually press [b]right [/b]to go [i]left [/i]when selecting the last level, and would have to press [b]left [/b]to go [i]right [/i]and then [i]upward[/i] to move back. So, clearly, we can't just brute force area selection. If you didn't understand that word salad, don't worry, I hardly did easier, but basically, it's a little difficult to do menu navigation in this game with a controller. Fortunately, I've come up with an idea I think will work, which involves making an invisible "vision cone" in the direction the player's joystick is pointed. It will need quite a bit of testing, and making it work across the game and the UI layers will be a challenge. But in the end, we'll have a modular and expandable menu navigation system! [h2]The inevitable public beta[/h2] [b]Full Version 1.2, when ready for testing, will have an open beta[/b], and it will be announced on Discord when it's live, so if you'd like to help us test out 1.2 when it's ready for testing, first, head on over to the discord, and second, thank you!! This public beta will likely come out in around 2 weeks, and I'm really excited to show off some of the cool new stuff beyond controllers it will contain. So, see you then, and thanks for reading!! [i]-Encabulated Games[/i]