I've ported Jeroen Groenendaal's platform game Vapiki from BBC BASIC for Windows to BBC BASIC for SDL 2.0, making it possible to run it in Windows, MacOS, Linux (including Raspberry Pi) and in-browser. It requires a keyboard for input so it won't run in Android or iOS, with only a touchscreen.
If you want to try it the in-browser version is here, although it's slow to load and for best results it needs a fast PC (especially for the music to play smoothly). It will also fail if you attempt to turn on 'internet scores'.
Please report back if you notice any problems, such as bombing out with an error message (which wouldn't surprise me). Ideally I'd like somebody to play it right to the end, but that would require a keen and patient gamer!
Vapiki
-
- Posts: 457
- Joined: Tue 18 Jun 2024, 09:32
Vapiki
You do not have the required permissions to view the files attached to this post.
-
- Posts: 457
- Joined: Tue 18 Jun 2024, 09:32
Re: Vapiki
I have now published this on Itch.
-
- Posts: 457
- Joined: Tue 18 Jun 2024, 09:32
Re: Vapiki
I think I've found a bug in Vapiki. If you have ever set up a joystick in the game, and then subsequently disconnect it, the game will crash with a 'Device unavailable' error even if you change the input selection back to Keyboard in the Options menu.
What seems to be happening is that the use of the ADVAL function is not conditional on whether the input is selected to Keyboard or Joystick, but instead on whether the joystick axis has ever been set.
So if you choose Joystick input, set up the axes, and then change back to Keyboard input, ADVAL will still be called and will crash if no joystick is connected.
The solution would presumably be to make the use of ADVAL conditional on both the axis having been set up and the input being selected to Joystick. Alternatively, when selecting Keyboard input reset the axes as having never been set.

What seems to be happening is that the use of the ADVAL function is not conditional on whether the input is selected to Keyboard or Joystick, but instead on whether the joystick axis has ever been set.

So if you choose Joystick input, set up the axes, and then change back to Keyboard input, ADVAL will still be called and will crash if no joystick is connected.
The solution would presumably be to make the use of ADVAL conditional on both the axis having been set up and the input being selected to Joystick. Alternatively, when selecting Keyboard input reset the axes as having never been set.
