-
Notifications
You must be signed in to change notification settings - Fork 17
Design notes
This document is incomplete! Get this sorted before opening up community contribution!!! \o/
Here are some notes on the kind of game we're aiming for Pongball to be!
You can find the original pitch in this forum thread.
Pongball is Pong meets pinball in a frantic team based multiplayer experience. The core gameplay is similar to pong, but with a twist: instead of Pong's empty playing field, teams must battle each other with the help of - or obstructed by - pinball-style elements like bumpers, triggers and slingshots.
Pongball borrows core gameplay from Pong and spices up ball handling and point mechanics with bumpers, ramps, triggers and other elements commonly found in pinball tables. Players are divided into teams of two (or more?) and score points by getting a ball through their opponents' goal. Players might be represented as characters rather than paddles, and will have unique special abilities that can affect the behaviour of the ball or other players' avatars.
We are developing Pongball to be a 3D game with networked multiplayer and support for AI players. Contributed assets can explore varying aesthetics.
The camera will be top-down, with a close FOV to almost look ortographic, will full table in view.
At the start of a match, each player gets to select their character, the selection should show what the character looks like and it's associated attributes.
Players move on two axes, using keyboard or gamepad. Horizontal (into the field) movement is restricted to your side of the field. Ball movement is determined by the players collision component.
Mechanically players behave like regular paddles, i.e. where the ball collides with the player determines how it rebounds.
Visually we can have animations that trigger, like a swing when colliding with the ball, but this is just a visual flair and doesn't affect ball movement.
At the start of the game, one player will be selected as the "server" (like in tennis). The ball will appear attached to their paddle, allowing them to position themselves before launching the ball by pressing a button.
After a goal is scored, the next player becomes the "server", looping through all available players until the game is over.
Should the "server" role be assigned based on who won the last point?
Should the the serving player be able to hold down the button or use a stick to indicate how fast the ball should be served?
Should we allow players to control serve angle?
If we move to 2D player movement, we can just place the ball within the player's area of movement and reset their paddle to behind it?
Player abilities should be limited to a cooldown and might include
- Placing temporary physical obstructions (how are they positioned?)
- Placing temporary visual obstructions (how are they positioned?)
- Temporary manual steering control (left/right steering?)
- Temporary change ball physical properties (mass, scale, bounciness?)
- Reverse ball direction
Each character has one unique ability, we might go with two time permitting.
Should player abilities charge up based on paddle/obstacle bounces rather than be on a cooldown?
When a ball passes a player's paddle, a goal is scored and the ball's position is reset to the next player's serving position.
There are several possible scoring models that we could consider pursuing. To start with, the airhockey style "first to three" makes sense to explore, but initial work should be implemented in a way that allows alternative scoring modes to be used.
- Air hockey style scoring (first to X, where X is match configurable)
- Tennis style scoring (first to score 2 goals above opponent with a minimum of 4 goals)?
- Soccer style scoring (max goals at end of time limit with tiebreakers)
We may want consider abstracting goals to a point value and allow obstacles and other mechanics to play a role in scoring.
- Should hitting obstacles be worth points?
- Should hitting obstacles increase the point value of the eventual goal (increasing tension over prolonged volleys, maybe cleared by tilt?)?
- Should tilt reduce the tilting player/team's score?