Combining Breakout and pinball...

Propose new game/software design concepts or new game/software ideas. They can be as whimsical as you like, just be careful you don't ask someone to make it for you...
Post Reply
User avatar
Cheez26
Microbot
Posts: 116
Joined: Sat May 04, 2024 2:36 am
Location: Midwestern United States
Contact:

Combining Breakout and pinball...

Post by Cheez26 »

...a.k.a. (kinda) porting one of the earliest pre-Pac-Man Namco titles, Gee Bee a.k.a. something I've always wanted to for a long time but couldn't find the time to do so.

The premise is simple: combine the gameplay elements of Breakout and pinball. Seriously, I would love to do this for ever since getting into any sort of homebrew and 8-bit computer gaming.

If you want to take on the coding side, I'll help with the music side (and maybe some other ideas). I even have an idea for a non-copyright-infringing title: NRG BAILE (or Energy Ball in Brazilian Portuguese...one of my ideas for a soundtrack is to have some Brazilian funk playing in the background of some of my games).
Chelsea E., a Speccy fan from the U.S.
Also a musician and a beginning games developer.
User avatar
Lee Bee
Dynamite Dan
Posts: 1403
Joined: Sat Nov 16, 2019 11:01 pm
Location: Devon, England
Contact:

Re: Combining Breakout and pinball...

Post by Lee Bee »

Hello, my pink friend :lol:

Gee, how could I not have heard of Gee Bee before? Looks like fun.

Pete Prodge did a nice summary of all the Breakout clones on the Speccy last year. He's amazing at collecting data and facts together, one of the best and most prolific thread starters here!

There are one or two coders knocking about on this forum who may sometimes be prepared to take on a game idea with someone else's art/music, however, generally it's quite rare. There seems to be a surplus of artists and musicians with ideas, and not enough coders to bring our ideas to life, which is a shame.
User avatar
Cheez26
Microbot
Posts: 116
Joined: Sat May 04, 2024 2:36 am
Location: Midwestern United States
Contact:

Re: Combining Breakout and pinball...

Post by Cheez26 »

@Lee Bee Admittedly, I might not even go through with the game myself without any game creation tools with a drag-n-drop interface (e.g. MPAGD and its derivatives). However, I hope that Godot-based game tool goes some place and have a working open beta soon.
Chelsea E., a Speccy fan from the U.S.
Also a musician and a beginning games developer.
User avatar
Lee Bee
Dynamite Dan
Posts: 1403
Joined: Sat Nov 16, 2019 11:01 pm
Location: Devon, England
Contact:

Re: Combining Breakout and pinball...

Post by Lee Bee »

Cheez26 wrote: Thu May 09, 2024 2:28 am I hope that Godot-based game tool goes some place and have a working open beta soon.
Agreed; I'm excited about it!
User avatar
Cheez26
Microbot
Posts: 116
Joined: Sat May 04, 2024 2:36 am
Location: Midwestern United States
Contact:

Re: Combining Breakout and pinball...

Post by Cheez26 »

Remind me to try to start this in Boriel BASIC sometime after I make my platformer project. :dance
Chelsea E., a Speccy fan from the U.S.
Also a musician and a beginning games developer.
User avatar
ParadigmShifter
Manic Miner
Posts: 829
Joined: Sat Sep 09, 2023 4:55 am

Re: Combining Breakout and pinball...

Post by ParadigmShifter »

Pinball is pretty hard physics wise though you need a good set of line/circle collision stuff so probably easier to stick to something simple first, like a 2d platformer (with no scrolling at first that's hard too).

You'd probably need to do the maths for pinball in something like 16 bit fixed point as well otherwise it's not going to be accurate enough. I expect you may need to work out lengths of vectors too or at least normalise vectors which is expensive also.

Something like a platform game or a simple arcade game you don't even need to use multiplication you can usually get away with just multiplying by constants (which you can do via shifts).

Of course in a compiled language you probably get multiply, square roots built in but it's not going to be well optimised I expect. I haven't used multiply by an arbitrary number, division or square roots in anything I've done so far in Z80.

If I want to do maths stuff I do it in BASIC and whack the emulator speed up to max% :)

EDIT: I'd at least do breakout first with proper bouncing of the ball and bouncing at angles other than simple reflection off the bat. At least you have to do line/circle (or can do rectangle/square I guess if you model the bat as a rectangle and the ball as a square) so that's a start. Pinball had gravity as well usually, the flippers are angled and rotate, and if you also want to do bumpers you have to do line/circle collision for those too.
Last edited by ParadigmShifter on Sat May 11, 2024 9:14 pm, edited 1 time in total.
User avatar
Cheez26
Microbot
Posts: 116
Joined: Sat May 04, 2024 2:36 am
Location: Midwestern United States
Contact:

Re: Combining Breakout and pinball...

Post by Cheez26 »

@ParadigmShifter Well...Gee Bee might have Breakout physics with both bricks and pinball score bumpers. I might try to simplify the approach to just that instead of actual pinball physics for my "clone" and stuff.
Chelsea E., a Speccy fan from the U.S.
Also a musician and a beginning games developer.
User avatar
ParadigmShifter
Manic Miner
Posts: 829
Joined: Sat Sep 09, 2023 4:55 am

Re: Combining Breakout and pinball...

Post by ParadigmShifter »

Yeah see my edit at least do breakout first flippers and bumpers are quite physics/geometry intensive. Bumpers usually elastic as well so the incoming velocity does not equal outgoing velocity.

EDIT: Don't just do reflection off the bat though make it only reflect in the middle of the bat make bouncing off nearer the edges of the bat change the angle a bit.

Good new is you don't really need any trigonometry you can use vectors. You need to know about dot products though...

EDIT: Actually to tweak angle you need to rotate the angle but you can get away by precalculating a few rotation matrices instead of working out the angle via trig.
User avatar
Cheez26
Microbot
Posts: 116
Joined: Sat May 04, 2024 2:36 am
Location: Midwestern United States
Contact:

Re: Combining Breakout and pinball...

Post by Cheez26 »

@ParadigmShifter Thanks for the advice. I'll try to keep most of these in mind.
Chelsea E., a Speccy fan from the U.S.
Also a musician and a beginning games developer.
User avatar
ParadigmShifter
Manic Miner
Posts: 829
Joined: Sat Sep 09, 2023 4:55 am

Re: Combining Breakout and pinball...

Post by ParadigmShifter »

Ok I looked at the wikipedia page looks like there are no flippers only bats and most of the walls are either 90 or 45 degrees so that simplifies stuff quite a bit. I expect there's no gravity either which makes things a lot easier (mainly calculating when the ball hits something which gets harder when you add gravity to the mix).

Even in breakout the angle was not just a reflection off the bat (otherwise you'd never be able to change the angle of the ball) but the walls just reflected the angle.

Simple reflection case covered here

http://www.sunshine2k.de/articles/codin ... ction.html

Reflection in a nutshell:
w = v - 2 * (vn) * n

where v is vector you come in at and w is the vector after the collision. (And n is the normal vector of the surface you hit)

which is the fast and simple way to do reflection you don't really want to have to do trigonometry to calculate angles (which most high school level maths sites will tell you to do) when dot products will suffice.

You do have to know about vectors and dot products though.

EDIT: To get a slightly curved effect on the bat collision (you can still draw it as a rectangle if you want of course) you just change the normal vector from being straight up, you make it lean to the right a bit on the right hand side and lean to the left a bit on the left hand side, maybe change it a bit as well if you are moving the bat when it hits it to do some fake spin (I think that may make the angle of the normal go the other way a bit?), I dunno.

Your normal vectors need to be normalised (length 1) though for the dot product formula to work.
Post Reply