Pond Hockey

Singleplayer and two player 3 vs 3 pond hockey game.

Ingame 1
Ingame 2


HTML5 WebGL capable browser required. Suggested to play in fullscreen (click the button "fullscreen" above the render area).



3 vs 3 Pond Hockey two player match or one player against the CPU. Seven levels (>> denotes the corporal sign): 1P CHICKEN, 1P EASY, 1P NORMAL, 1P HARD (default), 1P EXPERT>>, 2 PLAYER and 2 PLAYER>>. In the ">>" marked levels the puck speed is faster and the cpu is expert level, meaning, the rate of its decisions are faster than in other levels. In 2 PLAYER the supportive cpu is NORMAL, in 2 PLAYER>> its EXPERT.


The game uses keyboard or gamepads. To use 1-2 gamepads just connect them. No configuration required. The game uses ALL sticks/pads and buttons on a gamepad. On page CONTROLS keys and gamepads can be tested.

Menu select/Next screen Return (and Player 1 Shoot, see below)
Menu navigation Arrow keys, Gamepad1 sticks/pads
Back to title screen B
Player 1: Shoot X, M, PLUS (on the numeric keypad), Gamepad1 buttons
Player 1: Skating around Arrow keys, Gamepad1 sticks/pads
Player 2: Shoot G, V, LEFT SHIFT, Gamepad2 buttons
Player 2: Skating around WASD, Gamepad2 sticks/pads


I developed the game as native Linux application in 100% C++ and OpenGL ES 2 (emulation) and transpiled to HTML5 utilizing the amazing emscripten.

I admire the Atari VCS 2600 Ice Hockey Game and its AI (all in 4K size!) and it influenced my game: Oscillating puck for more shot angles and playing top down.

All music and sfx made with a Novation Circuit. Exception: The NATURE ingame track. See below acknowledgements.


NATURE ingame track (winter forest animals soundscape) author is Burkhard Mücke. Orignal title: Atmo of natural sounds, 2009. OGG from page https://commons.wikimedia.org/wiki/File:Waldatmo_mit_Krähen,_Winter.mp3 . Changed the loudness. License is https://creativecommons.org/licenses/by-sa/4.0/deed.en.

Version history

0.10 Initial version.
0.11 Fixed bug where puck could not be picked up because out of reach. Fixed upper goal visibility order glitch (players behind net). Now user team players standing less on each others toes in offense (still needs improvement). Added NORMAL level. There CPU makes rescue shots in defense and operates further away from goal line. In EASY level cpu tries to dribble its way out. Now, when a player switches to/from goalkeeping role, he immediately starts with new role. Before he first finished current task. After faceoff, cpu players position differently to prevent easy goals through middle (sometimes those still succeed).
0.12 Replaced faceoff-, player goal and cpu goal sounds. Added 2 player mode. Fixed bug which sent puck to (0,0) (lower left corner). Was caused by fallen player sliding into puck which was at standstill. Added player and snowman graphics when displaying match result. Added time interval which must pass before active player switching (before were cases of too rapid switching/flickering).
0.13 Fixed upper goal glitch (was: puck in goal but before goal frame). Made playfield a little higher. Reduced stun time by small amount (after a player shot or lost puck some small time where puck cannot be picked up again). Added third level (1P HARD). The following applies to that level: Improved puck tracing and better decisions in defense: At same time spread out but be near to opponent. In theory if one player does goalkeeping another player may come at his assistance to trace puck instead of just positioning in defense. There is now a ranking and selection from all pass alternatives (before the first alternative which looked promising was chosen). Changed positioning of CPU at faceoff.
0.14 Added gamepad support. Added music for victory, draw and defeat. Replaced the ingame track with a winter animal forest soundscape. See acknowledgements section.
0.15 Added page CONTROLS where keys and gamepads can be tested. Game now uses all sticks/pads and buttons on a gamepad.
0.16 Fix to goal detection (symptom: goal falsely detected. Puck crossed goal line but its x position nowhere near goal).
0.20 Added 1P and 2P expert level. There faster puck speed and quicker decisions of cpu (opponent and supporting). Added puck in goal animation (rotating puck). Made a new title music: Pond Hockey Theme (see mainpage). Old track Twinkling Water now ingame track. Added players entering ice rink animation. New player and cpu goal sounds. Nature as default ingame track.
0.22 Added 1P CHICKEN level which is even easier than 1P EASY level. Fixed a bug where supportive CPU would set directional controls for the player steered by user (=it is only allowed to steer team members of user which currently not controlled by the user).
0.30 Small change to scrolling causing more of puck surroundings to be visible. Useful in defending. Another small change with some impact: In 1P hard, 1P expert and 2P expert changed the user team assisting cpu puck tracing behavior in offense: Only the player closest to puck traces it, others position. Before was one positions, two trace puck. Benefit is better covering of space and e.g. link up play.
0.31 Small fix to coordinate clamping (when playing offense had wrongly clamped target coordinates to bounding boxes for defense playing).