Use the N and P keys to flip to the Next and Previous pages, or click the links in the header. Press B to go Back or "?" for help. This document can also be browsed as a single large web page without Javascript.

In this document we will implement a small multiplayer game in Common Lisp (called "Squareball") using my game engine Xelf. You can download and play the game from itch.io, or compile it using Xelf as you go along with the tutorial.

This document is part of Dave's guide to Common Lisp game development. It will help to have completed reading the "2D Sprites with Xelf" example on that page before continuing.

The Lisp code and documentation below are interwoven in an Emacs Org-mode file, which is exported to both HTML (for reading) and to plain Lisp (for compilation) in a manner similar to "literate programming". (The raw source can be seen on Gitlab.)

My purpose in documenting a complete game is to help others learn about using Xelf and to impart general knowledge about game development in Common Lisp.

This document is a work in progress; the headings marked with a red "TODO" still need documentation to be written.