Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Thank you for trying it!

Drawing a map is certainly an option.  But Shift+C can also be used to visualize your current room without being confused by doors seen afar.

Spells don't last forever - they will fade from your mind, possibly in an inopportune time.  This is why you want to keep the spellbooks around to refresh your memory.  Since there are no magic points, it is the relearning that gates being able spam spells.

Writing sets need something blank to write on.   If you read a book enough times you will get something.  It is also possible to create blank scrolls, but that's complicated.

If you check the ? keyboard list carefully you'll see [q] Quaff or Drink.  This is a way of ingesting potions without soaking your neighbours.

Map visibility is as useful with the map off as on!  You can use [x] to cursor over the map to recall what you had mapped - after using the scroll it is all mapped for you.  [.] while in this mode will report your current location relative to yourself, in case you lose track.

This source code dates from 2005 with my first 7DRL.  Each year I strip it down and build something new.  But the strip down is never complete, so it accumulates a lot of interesting stuff on the way :>  My first 7DRL used curses and SDL1.2 for rendering, I thus built the gfxengine to abstract the two backends of gfx_curses and gfx_sdl.  Around the time of Jacob's Matrix I switched to libtcod as the backend and just folded it into gfxengine.cpp.  For graphics I mostly treat libtcod as a console buffer, however, so almost all logic is outside.  I do use libtcod's FOV algorithm and a few other neat things though.  So not so much any limitations of libtcod as history...

The most game-related files, as opposed to generic, are likely:

ai.cpp; builder.cpp; item.cpp; main.cpp; map.cpp; mob.cpp; source.txt; text.txt

Good luck in your next attempt!