Make a game in Lisp in 10 days.
Official channel is #lispgames on irc.freenode.org.
- Your game must be written in a dialect of Lisp.
- You may use whichever general-purpose Lisp game libraries are available (see resource links below for a partial list.)
- You may start with a simple existing lisp game (library examples/minigames, boilerplate, small Emacs games etc) as the basis of your project, and this is especially helpful for newcomers. If you do re-use significant code, please make an effort to substantially modify what you started with, by adding new code and new ideas. Also, please specify what you re-used, if anything.
- You may also develop your own general-purpose engines, tools, tests, and boilerplate before the Jam begins. That way you can "hit the ground running" and have your basic code ready. The point is to design and code the gameplay during the Jam; there is no harm in preparing and testing out your general framework in advance (displaying images and objects, playing sounds, basic stuff.)
- Re-use of free assets (images, sound, music) is permissible as long as you disclose what you used.
- Failed submissions (i.e. your game doesn't run by the deadline) can try to get extra help on the channel after the jam, to get them working. No stress, nobody is left out if they ran into problems that day, and everyone can still share their work and discuss what they learned. You can also ask on #lispgames for a Late Submission Code that will allow you to submit your finished work after the deadline, so it will still be part of the collection.
- Please deliver at least a source archive (ZIP or TAR.GZ) with README.txt and instructions on how to run the game. Consider also providing precompiled binaries if possible.
- Advice: keep the game design simple, stay focused, and ask the IRC for help or inspiration if you need it!
- Consider writing up a "postmortem" answering these questions, in order to share what you've learned:
- What dialect/tools/libraries did you use?
- What sort of game did you choose to make, and why?
- What went right, what were some successes?
- What went wrong?
- What did you learn?
- What did Lisp enable you to do well in this entry?
- What challenges did Lisp present in making your entry happen?
- If you are comfortable answering, please you mention how long you have used lisp and describe previous gamedev experience, if any.
- Freenode IRC Channels #clnoobs for newbies learning CL, #lisp for serious Common Lisp discussion, #lispcafe for general chat
- How to use SBCL and Wine to cross-compile Win32-compatible EXE files from within GNU/Linux: https://gitlab.com/dto/xelf/blob/master/build/buil...
- Awesome CL and CLOS documents, references, and tutorials from the CMU AI repository: http://www.cs.cmu.edu/afs/cs/project/ai-repository...
- Several current Common Lisp game-related libraries, including CL-SDL2 and utilities, are linked from LispGames on Github: https://github.com/lispgames
- Zach Beane's article "Where to get help on Common Lisp." http://xach.livejournal.com/325276.html
- Documentation for Xelf, a simple 2d Common Lisp game engine http://xelf.me/reference.html NOTE: Xelf still uses SDL 1.2 and LISPBUILDER-SDL, although everyone has moved on to SDL2. I will be upgrading this at some point in the near future. Xelf is written and maintained by David O'Toole ("dto" on IRC).
- CLinch, Brad Beer's 3D/2D OpenGL graphics engine (v0.5). CLinch has strong support for rich text and vector graphics and loads most file formats. He goes by "warweasle" on IRC. https://github.com/BradWBeer/CLinch
- Mordocai is working on a binding for BearLibTerminal here: https://gitlab.com/mordocai/cl-bearlibterminal
- Axion's collection of game development tools, including a math library, random dungeon generator, and more: http://github.com/mfiano/gamebox
RACKET: (special thanks to user Honkfestival for these links!) (EDIT: additional links from /r/scheme added)
SCHEME 2 JS: (Special thanks to alexshendi for these links!)CLOJURE
PARENSCRIPT:The "Lisp Alien" logo graphic is courtesy of Conrad Barski: http://www.lisperati.com/logo.html