Ball Game 3d

ball-game-3d (working title)

alt-text A side-view fighting game where brains beat brawn. With a ball.


Players fight each other on a floating stage and attempt to push each other off the stage, like in smash. Players are given a set amount of stocks and whoever runs out of stocks first loses the game. The game mechanic given to players is telekinetically pushing a ball towards the other player. Both players control the same ball.

The ball is suspended between the players in a position of rest when neither player attempts to move it.


Telekinesis, overview

The ball attempts to return to a position exactly in the middle of the two players positions. Both players can simultaneously influence the ball. Players can time their telekinetics to get the ball into an ocillating state, and attempt to outmanouver the opponent.

Influencing the ball

The influence on the ball is based on player input like so:

Whenever a player is pressing the telekinesis button:

  • The concentration is added to the internal_influence.
  • The concentration_step is removed from concentration.

The internal_influence is also impacted by player motion. Velocity impacts influence negatively, as does jumping.

The influence is then calculated as a function on the internal_influence which is inversely dependent on the distance to the ball. I.e. closer to ball, more influence. This is one of the mechanics which makes the ball stay in reasonable bounds.

Other player input

The players can move left and right, and jump. Jumping will slightly decrease a players influence on the ball. A player can use this to initiate a spring-like effect by jumping, then pushing the ball towards the enemy.


Once the players have fallen out of play, they will spawn back onto the stage if they have stock left. At spawntime, the players will be returned to starting positions, and the ball will reset. If the ball for some reason gets stuck on some strange geometry or is too far out of play and osciallating wildly, it will also respawn after a whil

HUD and visual feedback

The HUD will display the players stocks, their influence, and their concentration. In the flash version this was done with a brain representing a meter, and the influence and concentration bars moving up and down the brain like liquids on top of each other. This worked since influence can never be higher than concentration.

Visual feedback on the ball:

the two players are colored red and blue (or some other colors), and the color of the ball changes depending on how much influence each player has on it.


  • red has 100 influence, blue has 0, the color of the ball is red.
  • red has 0 influence, blue has 100, the color of the ball is blue.
  • red has 100 influence, blue has 100 influence, the color of the ball is magenta.

The ball also grows when more influence is being exerted upon it.

Start Menu

There will be a start menu, where a user can start a stock game, exit the game, change controls, and look at the credits.

Pause Menu

There will be a pause menu, where a user can unpause the game, or exit the match.

Win screen

A win screen declaring the victor of a match, and some stats.

Nice to have features/unfinished ideas

Once the core features above are in the game, and graphics and gamefeel have been polished, there are some things I would like to try. If we have time they could be fun to implement.

3-player games

This one is highly speculative, but could be fun to try.

3D version of game

Would only work with two players: A rotating camera, like in Soul calibur, and 3D physics. The telekinesis logic wouldn’t really change.

Health system

Could be fun to try out a health system. Players would take damage proportional to the velocity of the ball.


These mostly make sense with the health systems but there are some which could work without, such as a shield, an immaterialiser, and a mass increase.