Polished it up a bit, wrote some documentation. Download it here if you want to take a gander. Requires Blender 4.2+.
seen from United States
seen from United Kingdom

seen from United States
seen from China

seen from United States
seen from Netherlands
seen from United States
seen from United States

seen from Türkiye
seen from United States
seen from United States

seen from United States
seen from United States

seen from United States
seen from United Arab Emirates

seen from Thailand

seen from United States
seen from United States

seen from Singapore

seen from India
Polished it up a bit, wrote some documentation. Download it here if you want to take a gander. Requires Blender 4.2+.
Alright! We've made a little more progress on the Dungeon Generation. And we threw it onto a coroutine so we can watch the triangulation in action. Now what I'm doing here is just brute forcing over all triangles after we've added a new point, and we calculate a value based on this matrices' determinant (image courtesy of wikipedia).
Now, what this is supposed to do is find some kind of "optimal" triangulation that minimizes the minimum angle, but you can see from the video that it's having a hard time deciding how to flip some triangles, which shouldn't happen.
We'll get back to that later, but for now, lets go into detail about how I'm flipping these triangles. Time to bust out the Remarkable2 again
We start with our previous representation of the triangles. Recall a tri is a pointer to 3 edges, which are themselves an array of 2 pointers to a set of vertices. The order matters and determines the orientation, but we can always calculate that on the fly and optimize it with clever tricks later. I start by brute forcing to see if they share any pairs of vertices in each edge. Note that the edges are non-unique and have repeating arrays, but the vertices are singular and absolute, so we can just compare their references for matching.
Next we want to begin swapping the triangulation. By brute forcing (yeah look, I'm just trying to get this working lol) a search to find the local index of the edge the triangles share, for each triangle. Once we have the shared edges, we need to find the two points that are not shared. We can do this by taking advantage of the orientation of the triangles and moving on to the next edge in the circuit, then taking the endpoint of that edge.
From here, we replace the shared edges with a new edge consisting of the two non-shared vertices, and arbitrarily choose to preserve the next segment after the old shared edge entirely. Mapping out what each edge now belongs to, we see we need to swap the previous edges to the old shared one, and we will get ourselves a new swapped triangulation. Note that non-convex triangles will cause complications, and run the risk of overlapping other already existing triangles. Additionally, we will need to recalculate the orientation of the triangle, which I covered along with the ground work in Part I of the post here
As for what comes next, I have to fix the triangulation calculations so that it actually functions correctly, because as of right now it appears to be about a 50-50 tossup that any given triangle ends up correct, which is slightly better than all of them being wrong I guess
Here I though this would be quick and easy, in and out lol
Dungeon Starter Ideas
Last edited: 10/02/2021
A wise DM once said, “you’re only as original as the obscurity of the things you steal from.”
So here’s a few ideas I stole from my brother, books, TV, other DMs, and my own campaign notes! These descriptors can be purely atmospheric, or you can use the unique circumstances to complicate things for your players!
I’ve marked the ones I’ve actually played with a ♥, in case you want to hear some specifics of how it went. I’ll be updating this list, so keep your eyes open.
Locations:
♥ A translucent and fragile-looking spire made of ice, amber, glass, or crystal
The hollowed insides of an old, giant tree (dead or alive)
Above the beanstalk, up in the clouds
♥ A forgotten underground tunnel system connecting two cities
A ruined castle half-buried in snow/sand/earth/water
An abandoned mining pit
A Labyrinth, complete with a wandering monster, and a curse which breaks navigational magic
The forgotten corridor between dimensions where outsiders, stragglers, and ideas live
The Moon
The bones of an ancient, colossal creature
♥ A magic library, with living books and other hazards
♥ An abandoned Frankenstein lab, or construct factory
A high-security bank, prison, etc.
Twist:
♥ This dungeon seems to appear and disappear at different intervals and locations, meaning coming in (or leaving) is sometimes impossible
♥ Gravity works strangely here. You may find yourself upside-down to the rest of the world, standing on floating platforms that crumble and break in odd directions
♥ This is a pocket dimension with its own set of rules--perhaps literally using the rules of a different board game, arcade game, or rpg
♥ There is a spirit living here who represents the dungeon itself. It is ancient, enormous, eccentric, and with uncertain morality.
The place was built too small or too large for the party (Kobold made, Giant made, etc.)
♥ Magic is distorted here, and spells sometimes cause wild magic surges, or fail entirely
♥ This place has funhouse elements--slides, platforms, and silly, gamey rituals that must be overcome
These are hallowed/desecrated grounds, and as such the land has some effect on holy/unholy magic
♥ This is a malleable mirror/dream world, built by someone’s psyche
Party members swap bodies when they enter. Enjoy your new character sheet!
Inhabitants:
Local beasties have moved in and built nests
♥ A gang or cult has made this their base
The original host is long dead, but half-broken sentries still patrol...
Mimics everywhere
This place was built and guarded specifically to keep THAT THING contained...i.e. monster types with specific abilities and resistances
♥ There are prisoners who must be evacuated, and monsters which are best left alone...but which are which?
♥ Haunted by ghosts
Mostly/entirely abandoned, but prickling with traps and hazards
Note: There’s no reason you can’t mash a bunch from each list together. Have your ruined castle be on the moon. Have your magical library be a shifting labyrinth. Have your mine be harvesting mana from the bones of a long-dead magical creature. It doesn’t even need to make sense--maybe these catacombs were built like a funhouse by a lich with a strange sense of humour. Get weird with it!
My brother’s wonderful holiday one-shot got me inspired to add a little confusion and whimsy into my world, and so I pass my inspiration on to you. Have fun!
Posted to Reddit by u/AwkwardTurtle, and I thought I'd share!
Tiny Dungeon Player
Tiny Dungeon Bot is a twitter bot (by @SwartzCr) that draws tiny RPG dungeons with emoji. And then Andrew Faraday made them playable.
http://tdp.andrewfaraday.com/
Enter the dungeon.
204 PC's Differ via Advancement
204 PC’s Differ via Advancement
Some games allow you choices through advancement, and many of us may confuse that those choices with character optimization. But what if it’s just a way to differentiate your fighter from another fighter? (more…)
View On WordPress