Red Blob Games
redblobgames.com
Red Blob Games
@redblobgames.com
Hi! I'm Amit Patel. I explain algorithms and math with interactive web pages (incl. pathfinding, hexagons, procgen maps, voronoi). Wrote Solar Realms Elite; helped w/Barren Realms Elite and Realm of the Mad God. https://www.redblobgames.com/
Annual review blog post: www.redblobgames.com/blog/2025-12...
What I did in 2025
www.redblobgames.com
January 6, 2026 at 4:00 PM
Reposted by Red Blob Games
A quick #intro for the lovely people here on Bluesky... nice to meet you!

listen here: pod.link/1810797958 (easy listening)
read here: nonzerosum.games (more posts, pics and sims)
July 5, 2025 at 6:54 PM
Reposted by Red Blob Games
Heard from a few folks that they procrastinate publishing because they want to make sure it’s good enough and I totally get it, I worry about that too.

But I’ve gotten pretty good at deciding enough is enough and going ahead anyway so here’s a thread with things I don’t like but decided were fine.
December 28, 2025 at 9:14 AM
Reposted by Red Blob Games
debugging tip: change one thing at a time

permalink: wizardzines.com/comics/chang...
December 22, 2025 at 2:43 PM
Reposted by Red Blob Games
Creative people display contradictory personality traits. This finding has stuck with me since I read it over 20 years ago in psychologist Mihaly Csikszentmihalyi’s book Creativity: Flow and the Psychology of Discovery and Invention.
December 14, 2025 at 2:01 PM
I hadn't realized it before but #emacs syntax highlighting (font lock) can do a lot more than assign color. Here I'm parsing the string into a number, doing a calculation, then generating text to show the result
December 16, 2025 at 5:57 PM
Reposted by Red Blob Games
this fall I worked with the core Git folks on writing an official data model for Git and it just got merged! I learned a few new things from writing it. github.com/git/git/blob...
git/Documentation/gitdatamodel.adoc at master · git/git
Git Source Code Mirror - This is a publish-only repository but pull requests can be turned into patches to the mailing list via GitGitGadget (https://gitgitgadget.github.io/). Please follow Documen...
github.com
December 2, 2025 at 5:01 PM
I was looking through my old projects and found this. I love how it looks and want to do more with this www.redblobgames.com/x/1638-voron...
November 18, 2025 at 11:26 PM
Reposted by Red Blob Games
As an example of the sort of stuff on there, one of the articles is a short writeup of a prototype I mentioned on bluesky a year or so back. An approach to generating a top down city map.

www.nullpointer.co.uk/generating-c...
Generating City Maps
This post explains how I coded a city map generator for a…
www.nullpointer.co.uk
October 13, 2025 at 8:44 AM
Side project blog post—from 2010 to 2024,
RotMG.com had used maps from my mapgen2 project. There are 2^33 possible maps. I didn't know which seeds they used. I figured … let me just try them all … how hard could it be? ;----)

Spoiler: found some! not all. www.redblobgames.com/blog/2025-11...
November 12, 2025 at 12:45 AM
Reposted by Red Blob Games
PROCJAM - the Procedural Generation Jam - is back for another year! Join us on itch.io this November for another week of making something that makes something - a bskybot, a videogame, a digital artwork, a dice table or something else!

🗓️ Nov 21st - Dec 1st
🔮 itch.io/jam/procjam
PROCJAM - The Procedural Generation Jam
A game jam from 2025-11-21 to 2025-12-01 hosted by PROCJAM. Let's Make Something! PROCJAM - the Procedural Generation Jam - is a creative coding jam about making things that make things. This normally...
itch.io
October 27, 2025 at 3:35 PM
Reposted by Red Blob Games
A blog post from last year, which I never posted here —

Bytecode VMs in surprising places
dubroy.com/blog/bytecod...
October 29, 2025 at 7:19 AM
Reposted by Red Blob Games
what I expected from @roguelike.club : "10 ways to generate a dungeon!"
what I got: existentially terrifying hypergeometry
October 25, 2025 at 9:43 PM
Reposted by Red Blob Games
Been playing around with various "attractors". You can try it out too! www.michaelfogleman.com/static/attra...
February 10, 2025 at 3:08 AM
Reposted by Red Blob Games
The question of "should I cooperate" shows up everywhere, from biology to geopolitics.

In my latest PerThirtySix piece, we explore the Prisoner’s Dilemma, starting from the basics and building up to population-level dynamics through interactive simulations!

perthirtysix.com/tool/prisone...
October 14, 2025 at 1:59 PM
Reposted by Red Blob Games
A nice shift in perceived colour between central and peripheral vision. The fixated disc looks purple while the others look blue.

The effect presumably comes from the absence of S-cones in the fovea.

From Hinnerk Schulz-Hildebrandt:
arxiv.org/pdf/2509.115...
September 24, 2025 at 12:04 PM
Reposted by Red Blob Games
You can just make things on the web collaborative by adding a single HTML attribute...
October 5, 2025 at 11:53 PM
Reposted by Red Blob Games
I have a sparkling new blog post for you all! "A Very Early History of Algebraic Data Types" traces the history from the first innovation by John McCarthy, through its early use in imperative programming, and to its mainstreaming in FP. Come check it out!

www.hillelwayne.com/post/algdt-h...
A Very Early History of Algebraic Data Types
Been quiet around here! I’ve been putting almost all of my writing time into Logic for Programmers and my whole brain is book-shaped. Trust me, you do not want to read my 2000-word rant on Sphinx post...
www.hillelwayne.com
September 25, 2025 at 4:52 PM
I've been fixing numerical precision issues in #mapgen4 but some of those issues led to interesting textures that I liked.

(It may be hard to see them on the screenshots)

I'd like to have interesting textures that are intentional instead of the result of a bug …
October 5, 2025 at 1:19 AM
I'm working on a slider that lets you control how deep the "folds" on the #mapgen4 mountains are
October 3, 2025 at 11:49 PM
New blog post: rewriting the mapgen4 river render www.redblobgames.com/blog/2025-09...

I had been drawing river segments on the cpu to a texture, and then reading that texture on the gpu. I changed it to draw river segments on the gpu directly.
October 3, 2025 at 8:10 PM
I'm outputting to a WebGL R16F texture in mapgen4. It has a float channel, so I thought … I can set my frag shader to write to "out float" instead of "out vec4". But nope! :) I will change it back to "out vec4" and output three dummy values, which get thrown away.

(I'm learning WebGL2 this week)
October 3, 2025 at 8:07 PM
Reposted by Red Blob Games
how I got better at debugging

permalink: wizardzines.com/comics/bette...
from our free zine "So you want to be a wizard": wizardzines.com/zines/wizard/
October 3, 2025 at 1:43 PM
Reposted by Red Blob Games
tips for reading code

permalink: wizardzines.com/comics/tips-...
from our free zine "So you want to be a wizard": wizardzines.com/zines/wizard/
October 1, 2025 at 7:24 PM
New blog post: after a long break, I'm upgrading some of mapgen4's code (features, performance, bugs, ui, etc.) www.redblobgames.com/blog/2025-09...
October 1, 2025 at 5:33 PM