bad.el - ascii art, demos and games with Emacs Lisp

rss 2024-09-24 www git README

bad.el is an interactive ascii art studio, a budding development kit and framework for interactive graphics in Emacs. It was written in Emacs Lisp in the summer of 2024; with it, you can create ascii art, interactive demos, even games. It comes with a drawing program and three demos.
[Note: Now there is much more of everything - but read on ...]

Emacs ascii art in color: the splash screen for bad.el v0.3.0
Emacs ascii art in color: the splash screen for bad.el v0.3.0.

To try it now, get the latest ready-to-run source:

$ git clone https://dataswamp.org/~incal/bad.git

bad.el screenshots

bad-snake level 1
The Legendary Binary Cat (AKA /bin/cat), an instant fan favorite. This is our snake clone, bad-snake, level 1. Snake is more difficult to do, but also much more interesting to do, than Pong, often the first game people write. As a fun comparison, compared to Emacs' snake, bad-snake is 4 files, 377 lines total. To our surprise, this is actually less than Emacs built-in version (which uses gamegrid) that weighs in at 422 lines. Instead of OOP, to manage complexity they rely on global/dynamic/special variables, this is all the `defvar' in their source (32). Emacs snake is from 1997-09-10, a mind-boggling 27 years and 11 days ago.

This, the first version of bad.el, v1.0.0, was after one month and one day in development able to present two games, one interactive demo, and one application - all included and shipped with this very first release.

bad-snake level 2
Each level has unique ascii art, but it shouldn't just be about looks. There are currently three levels.

The ascii art is made by different people, so thank you! Special mention to the gophers://bitreich.org community.

the bad.el studio
The bad.el studio, drawing program.

Using the code of bad.el, one can already do a lot. All demos and games so far have been created straight from code. The interactive features in the studio are fun and interesting but nonetheless under-powered by comparison. We have not been able to install the next batch of interactive features for a while. What you can do is join the project - and see that happening much faster - and more importantly, being precisely done the way that it is prefered by YOU!

the Toronto game/demo
The Toronto game/demo. Original Toronto skyline by jgs, many times edited. (There is a hidden message somewhere in this demo/game. So far no one has figured out how and where to find it.)
the Egypt demo
The Egypt demo.

video

This is a video showing very little of the software. But to the trained eye it is enough to realize that this is something more than we expected. A bundle of dynamite that looks like an Emacs app.

bad.mkv 00:01:32 (589K)

contact

Do send a: mail