it's 2:20 am, and *of course* i wanna write a roguelike in lisp right this second

i made a quick placeholder sprite in azpainter so i could experiment with player movement, and ended up accidentally drawing Not-Good Kirby

the fact i can swap code into a running game to change things on the fly has always been one of my favorite things about common lisp!

but i forgot how silly its debug support was--i've been spoiled by clojure's tooling

what i mean is, if i wanted to change any of these things, i can just change it and hit ctrl+c, ctrl+c on it to swap it right into the game *while it's running*

but if i wanted to step-by-step debug any of these things, i have to put a (debug) statement in it and hope the stack tells me what i need to know as i step through things

does anyone know of any neat articles on procedural dungeon generation?

i have some ideas, but i wanna see what else is out there before diving into it!

@thingywott
I do not have any articles, but if I had to take on the task, my instinct would be to try for recursive programming to formulate the layout. Might be worth it to look at, I thought I'd at least suggest it.

@ulvra oh yeah! i would definitely go recursive in clojure, though cl's spec doesn't actually specify tail call optimization

the implementation i'm using has it, but i'm not sure i wanna use things that aren't in the actual language

for general dungeon generation, drunken walk seems like a decent starting point–iirc, the original rogue always had set rooms, but with random paths connecting them. i also think mystery dungeon used random shapes, and connected those

there's lots of approaches..!

@thingywott
Aye definitely. I wouldn't mind playing around with it myself one day, but a bit too rusty at the moment. Maybe someday.

Regardless, good luck getting it working. :)

@ulvra thank you @ulvra..! ^^

(and maybe! i still don't know if this is really gonna go anywhere yet)

Sign in to participate in the conversation
Awoo Space

Awoo.space is a Mastodon instance where members can rely on a team of moderators to help resolve conflict, and limits federation with other instances using a specific access list to minimize abuse.

While mature content is allowed here, we strongly believe in being able to choose to engage with content on your own terms, so please make sure to put mature and potentially sensitive content behind the CW feature with enough description that people know what it's about.

Before signing up, please read our community guidelines. While it's a very broad swath of topics it covers, please do your best! We believe that as long as you're putting forth genuine effort to limit harm you might cause – even if you haven't read the document – you'll be okay!