An experiment building a Roguelike with libtcod and Python
Use the new map generator mechanism to generate rooms via cellular atomata. Create a new CellularAtomatonRoomMethod class that uses the Cellular Atomton class to create a room. Add a FreefromRoom class that draws a room based on an ndarray of tiles. Along the way I discovered I have misunderstood how numpy arrays organize rows and columns. The numpy array creation routines take an 'order' argument that specifies whether arrays should be in C order (row major) or Fortran order (column major). Fortran order lets you index arrays with a more natural [x, y] coordinate order, and that's what the tutorials I've read have shown. So I've been using that. When I was developing the Cellular Atomaton, I wrote some code that assumed row- major order. I think I want to move everything to row-major / C-style, but that will take a bit more time. |
||
---|---|---|
.vscode | ||
erynrl | ||
first_steps | ||
fonts | ||
test | ||
.gitignore | ||
.pep8 | ||
.pylintrc | ||
bsp_visualizer.py | ||
ca.py | ||
going_rogue.code-workspace | ||
logging_config.json | ||
Makefile | ||
README.md | ||
requirements.txt |
Going Rogue
An experiment building a Roguelike with libtcod and Python
libtcod
is a library that provides a bunch of useful routines for building
Roguelikes. There are C++ and Python interfaces.
There are Python docs.
I also found a "make a Roguelike with libtcod
" tutorial on Rogue Basin.