Red Blob Games's Avatar

Red Blob Games

@redblobgames.com.bsky.social

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/

1,430 Followers  |  91 Following  |  269 Posts  |  Joined: 07.11.2024  |  1.6258

Latest posts by redblobgames.com on Bluesky

Video games also use classical AI rather than genAIβ€”Β pathfinding (including A*), state machines, constraint solvers (including WFC), utility systems, behavior trees, blackboards, tree search (minimax, alpha/beta), heuristic functions, planning (GOAP and others), cooperative & adversarial approaches…

04.08.2025 14:44 β€” πŸ‘ 19    πŸ” 2    πŸ’¬ 1    πŸ“Œ 1
A comic about computing. A transcript may be available at the link in the post.

A comic about computing. A transcript may be available at the link in the post.

oh shit! I did something terribly wrong, does git have a magic time machine?

permalink: wizardzines.com/comics/oh-sh...
from our zine "Oh shit, git!": wizardzines.com/zines/oh-shi...

04.08.2025 13:43 β€” πŸ‘ 13    πŸ” 4    πŸ’¬ 0    πŸ“Œ 0

I find it easier to keep these straight (topography on top, bathymetry in the bath) than stalagmites / stalagtites :)

03.08.2025 15:11 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image The actual map is text characters. I have blurred it slightly because otherwise the bluesky scaling algorithm does horrible things to it. Red is cities, and that's an airport.

The actual map is text characters. I have blurred it slightly because otherwise the bluesky scaling algorithm does horrible things to it. Red is cities, and that's an airport.

I just finished the first pass at a procedural landscape generator for a flying game, Kerosene Thunder. The goal is realistic 1960s landscapes ~1000km across, at 500m resolution. This is a thread about how it works now. #procgen #textmode

30.07.2025 22:08 β€” πŸ‘ 51    πŸ” 12    πŸ’¬ 3    πŸ“Œ 1
Preview
"The Good Place" The Trolley Problem (TV Episode 2017) ⭐ 8.5 | Comedy, Drama, Fantasy 22m | TV-14

btw "The Good Place" had an episode about this www.imdb.com/title/tt6951...

29.07.2025 16:59 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

I'm currently using

body { font-size-adjust: ex-height 0.48; }
svg { font-size-adjust: none; }
tt, code, kbd, samp, pre { font-size: 0.9em; }

but still need to test it on more systems

27.07.2025 03:16 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

I had used it long ago but dropped it after realizing no browsers other than Firefox were going to support it :( Glad to see the other browsers now support it :)

I had to turn it off for SVG <text>

26.07.2025 16:02 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

matklad.github.io/2025/07/16/f... convinced me to try the "font-size-adjust" feature β€”Β it's now live on redblobgames.com . I'm using it to to keep the body text and code (monospace) text matched.

caniuse.com?search=font-... shows Firefox (partial) support started in 2008, Chrome in 2024.

26.07.2025 16:01 β€” πŸ‘ 9    πŸ” 2    πŸ’¬ 1    πŸ“Œ 0
Preview
Shadertoy

The terrain above is based on an erosion noise implemented by clayjohn and Fewes in this Shadertoy:
www.shadertoy.com/view/7ljcRW

It's really impressive, more people doing terrain generation should know about it!
#ProcGen

20.07.2025 12:16 β€” πŸ‘ 85    πŸ” 20    πŸ’¬ 2    πŸ“Œ 0

Hooray!

19.07.2025 03:19 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

I LOVE PINK TROMBONE

18.07.2025 19:43 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

Max Brodeur just presented our paper on smooth rolling knots at the Bridges Conference on Mathematics and the Arts.

Max worked on this topic during his semester project together with Michele Vidulis and Liliane-Joy Dandy.

More info here: go.epfl.ch/smooth_rolli...

16.07.2025 07:13 β€” πŸ‘ 30    πŸ” 7    πŸ’¬ 1    πŸ“Œ 0

I wish I had my old notes. I was a physics crackpot in high school too. College physics cured me ;(

16.07.2025 17:28 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

I think "something so wrong with you that you just can't not do it" was the signal that helped people get a job. But if you're doing it because you want to get a job, it's no longer a good signal. (Goodhart's Law)

16.07.2025 15:50 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
Designing for the Eye – Optical Corrections in Architecture and Typography The Nuberodesign Blog

Related: www.nubero.ch/blog/015/

16.07.2025 15:47 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
A comic about computing. A transcript may be available at the link in the post.

A comic about computing. A transcript may be available at the link in the post.

what's a shell?

permalink: wizardzines.com/comics/shell/

14.07.2025 13:43 β€” πŸ‘ 7    πŸ” 2    πŸ’¬ 0    πŸ“Œ 0

If you had a fourth coordinate w=1 for points and w=0 for vectors, then

point = (point1 + point2) / 2

will end up with w=2 for the intermediate sum, but it will go back to 1 after you divide by 2, so you end up with a valid point.

I've wondered if this could be optimized out somehow…

14.07.2025 00:08 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Algorithms for making interesting organic simulations Article explaining simulation algorithms that produce complex organic behaviours, starting with the classic physarum algorithm from Jeff Jones.

I wrote this article explaining algorithms for physarum-style simulations
bleuje.com/physarum-exp...

13.07.2025 21:14 β€” πŸ‘ 88    πŸ” 27    πŸ’¬ 4    πŸ“Œ 3
How I build software quickly Know how good your code needs to be for the task at hand. Start with a rough draft. Try to soften requirements if you can. Don't get distracted. Make small changes. Practice specific skills.

How I've learned to build software quickly:

- Know how good your code needs to be for the task at hand.
- Start with a rough draft.
- Try to soften requirements.
- Make small changes.
- Practice specific skills, like reading code and scripting.

More details: evanhahn.com/how-i-build-...

08.07.2025 14:18 β€” πŸ‘ 9    πŸ” 2    πŸ’¬ 0    πŸ“Œ 0
A comic about programming. A transcript may be available at the link in the post.

A comic about programming. A transcript may be available at the link in the post.

debugging tip: change one thing at a time

permalink: wizardzines.com/comics/chang...

07.07.2025 13:43 β€” πŸ‘ 18    πŸ” 5    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

I built this demonstration of how an LSP server might facilitate bidirectional editing for code-based CAD tools after reading
@kevinlynagh.com's recent musings about the topic.

01.07.2025 17:58 β€” πŸ‘ 10    πŸ” 2    πŸ’¬ 2    πŸ“Œ 0

Devastated to report I read the docs and learned everything I needed to

30.06.2025 14:15 β€” πŸ‘ 129    πŸ” 16    πŸ’¬ 4    πŸ“Œ 0

The "don't travel" seems hard to measure. There are so many friends I'm not hanging out with, so many hikes I'm not taking, so many museums I'm not visiting. Instead I sit at home at my computer. But I don't think there's a good way for society to measure that.

29.06.2025 16:11 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
The Concept So Much of Modern Math is Built On | Compactness
YouTube video by Morphocular The Concept So Much of Modern Math is Built On | Compactness

not sure when that happened but mathematical education videos are really good these days. in the past it used to be 3b1b for precise stuff and some more pop channels for intuition/history but now i feel like even precise stuff has good and approachable treatment. really a golden age

26.06.2025 12:23 β€” πŸ‘ 64    πŸ” 2    πŸ’¬ 2    πŸ“Œ 0
Video thumbnail

dear imgui 1.92 released!
github.com/ocornut/imgu...
New protocol for backends to create/update textures, with support for 13 renderers. Dynamic font scaling. Dozens of font/atlas related changes. Dozens of other changes. Expect some turbulence.
(misc video from January...)

25.06.2025 17:15 β€” πŸ‘ 163    πŸ” 34    πŸ’¬ 5    πŸ“Œ 1

πŸ‘½πŸ˜„

22.06.2025 18:32 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

Failed experiment in tectonic plate collision. I was trying to do something quick&easy but it didn't work as well as I had hoped. www.redblobgames.com/x/2319-mapge...

If none of my experiments fail, I'm not being ambitious enough. So I'm ok with having many failures. This was a fun experiment.

22.06.2025 18:18 β€” πŸ‘ 71    πŸ” 7    πŸ’¬ 4    πŸ“Œ 0
Calm Like a Duck quote: Calm on the surface but under the water I'm paddling like hell

Calm Like a Duck quote: Calm on the surface but under the water I'm paddling like hell

Michael Caine: Ducks look calm as they glide along the surface of the water but they're paddling like hell underneath.Β When you're doing your preparation right, it sometimes looks so good that people watching you make the mistake of assuming it's all...effortless. In my experience, it never is.

22.06.2025 13:02 β€” πŸ‘ 24    πŸ” 5    πŸ’¬ 1    πŸ“Œ 0
View with files on the left and diff for that file on the right

View with files on the left and diff for that file on the right

I've still never gotten into `fzf` (and maybe I never will!) but I think it's really cool that you can use a fzf 1-liner to make things like this little UI for reviewing git commits

jvns.ca/til/fzf-prev...

17.06.2025 15:56 β€” πŸ‘ 113    πŸ” 11    πŸ’¬ 8    πŸ“Œ 1
The History of English Podcast | The Spoken History of a Global Language

historyofenglishpodcast.com has 183 episodes already :)

17.06.2025 00:03 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

@redblobgames.com is following 20 prominent accounts