Common Lisp terrain generator

cl-rebonoise is a Common Lisp implementation of the Simplex/Perlin noise approach described in Amit Patel’s “Making maps with noise functions”.

images/cl-rebonoise

Generated terrain.

Includes primitives and also helper functions, e.g.:

(grid-to-file 500 500 "./examples/img/7-biome2.png"
              :coefs '((1 6) (2 11) (4 8) (18 2) )
              :power 1.45
              :offset 166
              :biomes t)

Amit’s page has a wealth of resources on game-related topics, from an implementation perspective, and I’ve been following it for years.

Why I’m interested

Part of this is because one of my long-term projects is to recreate a turn-based, play-by-(e)mail game that I was addicted to decades ago 3, a project I keep coming back to only to get derailed in building more “infrastructure” instead of actual code: my commits to a Common Lisp in-memory datastore where part of this, and this library another.

While I end up getting side-tracked, one of this days I will piece together all the side quests and make that game available. Well, that’s the plan, anyway.


Footnotes

(3)

It was very a local phenomenon called “Idade das Trevas” (“Dark Ages”), and was very popular in the small-but-connected world of strategy games enthusiasts in the 90s.


This document was generated on December 29, 2023 using texi2any.