Physics and gameplay
One of the main challenges in making a game is to create a fun experience. Black Hole Master however has also another purpose: we want to use in the outreach activities of the LIGO Scientific Collaboration. We can therefore expect that players will wonder about the correctness of the physics modelling in the game. In this post I discuss the trade-off decisions to be made between physics, in our case gravity, and generated a fun-to-play game.
The core game mechanics in Black Hole Master is to throw stars around, using only the attractive force of a black hole. It is realtively simple to program massive bodies, representing the black holes and stars, and the gravitational forces. While developing Black Hole Pong we learned quickly that this alone does not lead to interesting game situations, for example, in order to shoot a goal, a star must reach escape velocity and therefore become very fast near the black holes, where all the action is. Controlling the stars through moving the black hole turned out to be effectivly impossible. As a result we only apply the gravitational force within a given `circle of influence’, which allows us to shoot goals without accelerating the stars as strongly.
Another issue to solve is the passing of the stars through the centre of the black hole. We do not want the stars and back holes to collide, instead we assume the stars pass in front or below at a certain distance. To model that we can define another radius, inside which the force is changed to be directly proportional to the distance from the black hole, which is obviously not correct physics, but seems to produce well behaved stars.
Last but not least we have to limit the maximum velocity of the stars, or the players lose control too quickly.
The key for making these improvements is a careful tuning of the parameters, such as the maximum allowed speed of the stars, or the magnitude of the gravitational forces. The tuning must be tested by playing the game again and again. I have recently added a new menu screen and added several slides for adjustable parameters. After a few days of playing around I believe to have found a first possible set of parameters that produces a ‘fun’ game mode. More playing is needed to confirm.
We are thinking to keep this customisation menu in the game. For someone who has mastered the basic game it could be fun to try to play with other parameter combinations, possibly causing weird game play effects.