As always, another very clear and thorough demonstration! I had attended a presentation at Midwest Gaming a year or two ago and it was interesting to learn the origin of so many games (down to Space Invaders) effectively boiled down to "how can we expand on this very primitive pong/rebound type concept." So that little functionality can go a long way. My first IBM PC game I ever played on a 386 Packard Bell was the included Breakout. I've been toying around with some Aquarius BASIC game ideas and the variable restriction can be rough, so leveraging arrays like that is often logical so long as you can remember what index correlates to what value. The integrated labeling in the new plusBASIC is awesome. In my own makeshift editor one idea I've had is to support enum-type declarations that can then be referenced in place of literals. So in the "source" you could define PLAYER_X, PLAYER_Y, PLAYER_LIVES etc... And then reference them in the source arrays such as V(PLAYER_X) and the Aquarius BASIC output will auto-translate that to a matched literal.
@Spriteworx11 ай бұрын
Thanks Matt. Interesting insight. Yeah amazing how a simple concept can be expanded into an elaborate and fun game. I always keep a variable list that I reference to make sure I don’t reuse any accidentally. In order to avoid using reserved keywords like TO and IF I’m thinking to use A-Z, AA-ZZ and A1-Z9. That should be plenty. Looking forward to see what kind of game you come up with.
@johnwilliams799911 ай бұрын
There is a bit of flicker with the bal moving?
@Spriteworx11 ай бұрын
Yeah not sure if it’s the emulator or my capture device but once some more code gets added it should slow down a bit and smooth out. Also the program is erasing the ball at the old location before printing the new ball. Printing the new ball first should reduce the flickering effect.
@InParkdale6 ай бұрын
Looking at the PlusBASIC documentation, it looks like there are two text screens supported, which can be swapped for double buffering. Presumably the flickering can be addressed by erasing the ball and writing the new ball location to the alternate (non-displayed) text screen, then swapping the screens.
@TheShadman4711 ай бұрын
I had spotted the error in the corner collision code!