industries
Pyvorin for Procedural Content
Terrain generation, dungeon algorithms, and noise functions.
Published May 30, 2026
Terrain Generation
Perlin noise and diamond-square algorithms for heightmap generation.
def perlin_noise(x, y, perm):
xi = int(x) & 255
yi = int(y) & 255
xf = x - int(x)
yf = y - int(y)
u = fade(xf)
v = fade(yf)
aa = perm[perm[xi] + yi]
ab = perm[perm[xi] + yi + 1]
return lerp(v, lerp(u, grad(aa, xf, yf), grad(ab, xf, yf-1)), ...)
Dungeon Generation
Binary space partitioning and cellular automata for roguelikes.
Loot Tables
Weighted random selection and rarity rolling.