Notes:
/*
* Gnop - a PS2Linux based Pong clone, using SPS2
* (or, exactly how much fun can you have with 13 coloured boxes?)
* Gnop could also stand for "GNOP's not 'only' Pong"
*
* Code has been adapted as simply as possible by Eratosthenes from
* Dr. H. S. Fortuna's tutorial code "A simple game" available from
* http://www.hsfortuna.pwp.blueyonder.co.uk
*
* Eratosthenes wishes to thank Dr. Fortuna for his valuable contribution
* to the PS2Linux community by making his tutorials open to all when he
* could have kept them privately at his university. Also, Henry helped
* greatly by providing valuable feedback on the folowing code before its
* release
*
* Eratosthenes also wishes to thank Sauce et al for the SPS2 module in
* the first place, which makes the code below so easy to write
*
* Finally, Eratosthenes wishes he chose a name that was easier to spell.
*
*/
Changes:
/*
* IMPROVING THE GAME
*
* To put it simply, there are an infinite number of possible improvements
* to this game. Here are just a few you could have some fun with.
*
* * Variable ball movment/speed
* If players are too good at the initial speed settings, the ball needs
* to be sped up as the game increases. More worryingly, the ball comes
* off the bat at a totally predictable angle every time, which doesn't
* make for a very good game.
*
* * Variable controls
* It's always nice to allow a player to use their own choice of buttons
* to control the game, but in this case it should be possible to allow 2
* players to play from a single controller, as some people do not have a
* second controller. Currently the game exits with a harsh error message
* if 2 controllers are not found.
*
* * Analogue controls (pressure + sticks)
* Part of the above section really - analogue controls are sometimes
* better than digital controls, and the player should be given a choice.
* For instance, as currently set up, the player must hold X to move
* faster, why introduce this extra button when you could merely have the
* player push the D-pad harder, which some may argue is more natural?
*
* * Title screen
* Again, it's often polite to wait until players are ready before
* starting a game. Whilst the one-second delay helps, a title screen
* would help greatly here. I strongly doubt anyone could possibly have
* grown up without hearing of pong, or without instantly realising how
* to play the game, it would also be polite to have some kind of how to
* play demo feature in the intro.
*
* * End game
* To comlpement the title screen, the game shouldn't just end when one
* player has lost 3 lives. We should first inform the players who has
* won, and then we should allow the choice of whether to play another
* game or not before exiting.
*
* * 1-player mode
* How about a computer player to play against? This would be quite
* difficult, as we need to create an AI that plays well, but has enough
* imperfections to be considered beatable. We could have a series of
* opponents to beat, each with different names, or we could simply pick a
* difficulty level.
*
* * Different play styles
* I've put together a very simple version of pong here, but there are
* several well-known variants out there, such as soccer (where each
* player has 2 bats, effectively one striker and one goalkeeper). How
* about giving each player 2 bats, one which moves vertically, the other
* horizontally, and give one player the task of defending both the top
* and left walls? How about having targets behind the bat that need to
* be knocked down? Or have a goal that shrinks when your losing, to give
* the losing player a crucial advantage?
*
* * Story mode?
* Think of your favourite big budget game, and most of them have some
* kind of story mode. How about introducing some pong based challenges,
* and awarding the player medals for completing them, a certain number of
* which unlock new challenges and playing styles?
*
* * On-line play?
* OK, I know it's 'only' Pong, but why not test out your network coding
* skills by allowing the 2 players to be on different PS2's? This will
* obviously require 2 PS2s, or a willing friend, to be tested though...
*
* * More that I've missed?
* The point I'm trying to make is that the number of improvements you
* could make is absolutely huge, and this is 'only' Pong. Let your
* imagination run wild!
*/
|