Skip to content
Martin Poiroux
Language : Français
Projects · CodeCode · Games · 2019

Blobby Volley

The first volleyball game, written in Python during the preparatory classes and played in the evening, two players on one keyboard, on the school computers. BlitzVolley's physics descends from it.

A beach court, a net, two round players and a ball. Each player takes one side of the same keyboard, Q, D and Z for red, the arrow keys for blue. The idea is that of Blobby Volley, the free game of the same name: you do not hit the ball, you send it back by touching it, and everything depends on the angle of contact.

The game was written during the preparatory classes, with Pygame, and played in the evening among classmates on the school computers. The code still shows it: a setting says whether it runs on the personal machine or on a school session, because the image paths were not the same.

A rally in progress: the ball keeps its speed, both players jump and move under the same gravity.

The physics fits in a few constants: gravity, ground friction, a mass ratio between player and ball, and two coefficients for the harder shots, the full-speed hit and the smash, each triggered beyond a contact angle. That core was picked up years later for BlitzVolley, this time online, with an authoritative server.

The red player goes for the ball just above the sand, blue waits in the air. The score is shown in each corner.

The file also holds a sketch of an opponent: a small neural network, five layers of 2 to 16 neurons, and a mutation function applied by hand with the Enter key. Nothing selected the best networks, so the opponent never learned to play. The idea took a while to land: BlitzVolley’s bots, for their part, are trained by reinforcement learning.

At the top of the file, the list of what was left to do: menus, sound effects, music, special shots, the collision with the post. Part of that list ended up existing, elsewhere.

Private project, no public link