Ian Sundstrom's Avatar

Ian Sundstrom

@ian-sundstrom.bsky.social

Made Stacks on Stacks (On Stacks) Lead Designer on games for BUCK like letsrevolution.com and Electric State: Kid Cosmo Indie stuff: herringbonegames.com he/him

91 Followers  |  113 Following  |  82 Posts  |  Joined: 25.11.2024  |  2.1954

Latest posts by ian-sundstrom.bsky.social on Bluesky

Preview
More Than 170 U.S. Citizens Have Been Held by Immigration Agents. They’ve Been Kicked, Dragged and Detained for Days. The government does not track how often immigration agents grab citizens. So ProPublica did. Our tally — almost certainly incomplete — includes people who were held for days without a lawyer. And near...

Extraordinary NEW story: We Found That More Than 170 U.S. Citizens Have Been Held by Immigration Agents. They’ve Been Kicked, Dragged and Detained for Days. @nicolefoy.bsky.social w/ photos by @sbmaneyphoto.bsky.social

16.10.2025 16:04 — 👍 2667    🔁 1679    💬 87    📌 195
Video thumbnail

Thread on what it took to port Rift Riff, made in Godot, to iOS and Android. 🧵👇

#godotengine #gamedev

16.10.2025 12:49 — 👍 221    🔁 44    💬 10    📌 4
Video thumbnail

Have some funny lookin trees #picotron

16.10.2025 16:49 — 👍 208    🔁 28    💬 1    📌 0
Post image

this sword appeared to me in a vision

10.10.2025 23:02 — 👍 2374    🔁 821    💬 28    📌 6
Post image Post image Post image

Here's how we handle manchildren on the Steam forums at No More Robots:

09.10.2025 17:55 — 👍 12800    🔁 2992    💬 446    📌 274

Woot! Congrats. Excited to play.

09.10.2025 22:14 — 👍 1    🔁 0    💬 0    📌 0
Video thumbnail

🌷Spring Falls is now available on Google Play!🌷

Erode the landscape, direct the flow of water, and bring wildflowers to life in this peaceful puzzle game

Play Store: play.google.com/store/apps/d...

#puzzle #android #indiegame

09.10.2025 19:03 — 👍 36    🔁 15    💬 3    📌 0
Video thumbnail

Thinking about ray tracing again...

09.10.2025 16:07 — 👍 466    🔁 113    💬 10    📌 0
Video thumbnail

My new open world precision "batformer" Vampire's Best Friend is out now on Steam and itch with a 10% launch discount!

Vampire hunters are after a mischievous vampire girl, and it's up to her pet bat to save the day!

07.10.2025 16:01 — 👍 920    🔁 344    💬 25    📌 16
Video thumbnail

Sometimes you gotta just chase that random game idea...

What if you were a fly on a lake, how would you survive?
What if you had gnat friends?

#gamedev #indiegames

08.10.2025 19:06 — 👍 14    🔁 4    💬 0    📌 0

I'm going to keep saying "this is fascism" until this platform inevitably bans the word fascism, and then I'm going to leave

06.10.2025 22:24 — 👍 343    🔁 94    💬 4    📌 1
Video thumbnail

🔴, a #pico8 bounce shooter, is out now!
Play it in browser on itch: iansundstrom.itch.io/redcircle
Development fun facts itt 🧵

01.10.2025 20:17 — 👍 58    🔁 18    💬 1    📌 0
Video thumbnail
03.10.2025 08:29 — 👍 2395    🔁 1000    💬 17    📌 13

Thank you!

03.10.2025 23:03 — 👍 1    🔁 0    💬 0    📌 0
Video thumbnail

Going to release 🔴, a #pico-8 bounce shooter with mostly procedural animation and gfx, sometime this week!

28.09.2025 21:52 — 👍 71    🔁 20    💬 3    📌 0

Thanks for playing and/or reading. Have a great day!

01.10.2025 21:01 — 👍 2    🔁 0    💬 0    📌 0
Jaden Eubanks | Video Game Audio Jaden Eubanks is an audio producer who specializes in creating video game music, particularly 16bit music that sounds like it's from the SNES, GBA, or N64.

Finally, the game has a 2-song soundtrack that whips thanks to @jadeneubanks.bsky.social. It was his first time using pico-8 and he absolutely crushed both the music and sound design of the game. Please consider hiring him for any of your audio needs: www.jadeneubanks.com

01.10.2025 21:01 — 👍 1    🔁 0    💬 1    📌 0
Game title screen with pixel art of a shiny red circle at top.

Game title screen with pixel art of a shiny red circle at top.

The title screen was a chance to dust off my pixel art skills. This 32x32 shiny red circle is one of the few actual graphics in the game's sprite sheet. 😆

01.10.2025 20:57 — 👍 1    🔁 0    💬 1    📌 0

The score system is also a bit goofy. It's constantly reducing each second, which rewards quick players. You also lose points each time you die! But defeating enemies, passing checkpoints, and clearing stages refills your points. Draining the score helps keep the number below pico-8's max memory.

01.10.2025 20:55 — 👍 1    🔁 0    💬 1    📌 0
Video thumbnail

Instead of having UI, I added 🔴's tail to represent your hit points. This also gave the ball much more character and made the physics even more satisfying. It uses vector logic to simulate the tail's physics and is drawn using a series of enlarging circles.

01.10.2025 20:51 — 👍 3    🔁 0    💬 1    📌 0
Video thumbnail

Every level ends with this completely over-the-top animation where the level you're in gets sucked up into a ball, bounces down, and then releases into the new level. I tried caching every pixel on the screen but ran up against pico-8's memory limits, opting for storing 4x4 macro pixels instead 🤣.

01.10.2025 20:46 — 👍 3    🔁 0    💬 1    📌 0
Image of the pico-8 map editor, showing 5 rows of level design and lots of empty space below.

Image of the pico-8 map editor, showing 5 rows of level design and lots of empty space below.

This packing was so efficient that I actually had space for another 11 levels in the map memory (I only used 5). However, I just couldn't fit enough gameplay mechanics on the cart to justify that many different levels 😭

01.10.2025 20:44 — 👍 3    🔁 0    💬 1    📌 0
Video thumbnail

I built the levels in the map editor, designing them with simplified 8x8 white sprites that then get blown up in 32x32 pieces of level geometry at run time. Likewise, this is how I placed the enemies and obstacles using their icons. If you load up the cart in pico-8 you can build your own levels!

01.10.2025 20:42 — 👍 2    🔁 0    💬 1    📌 0
Video thumbnail

Each level samples a row of colors in the game's sprite texture to determine the level's palette. This helped cut down on my symbol/token count since the data was stored in my sprite sheets rather than written out as tables in the code.

01.10.2025 20:37 — 👍 2    🔁 0    💬 1    📌 0
Video thumbnail

The checkpoint flag is also neat. The triangle shape is cut out by converging towards a point. Then pixels that are chosen to be drawn are offset by a sin wave. The checkboard colors are chosen by some modulo logic, something like when ((x/5-y/5)%2==1) draw green and otherwise draw white

01.10.2025 20:34 — 👍 4    🔁 0    💬 2    📌 0
Jagged lines that look like mountains

Jagged lines that look like mountains

Jagged lines that look like ice

Jagged lines that look like ice

Boxy line that looks like a city skyline

Boxy line that looks like a city skyline

A code sample showing functions for drawing different waves

A code sample showing functions for drawing different waves

Of the many procedural graphics of 🔴, the skylines are some of my favorites. The skylines of each level are drawn using different wave functions, like a combined triangle wave, etc. Having written it months ago, I don't really understand how this code works anymore, but it is cool!

01.10.2025 20:29 — 👍 5    🔁 0    💬 1    📌 0
Video thumbnail

An oddity of 🔴 is that it is best played on a keyboard, not a controller. The controls require you to constantly be pumping yourself up and down while also holding down left or right. You can't easily do this using an analog stick or d-pad, but it's pretty natural with a keyboard's arrow keys.

01.10.2025 20:26 — 👍 2    🔁 0    💬 1    📌 0
Video thumbnail

The game had humble beginnings as a simple physics toy of a bouncing ball with lots of squash and stretch. Unfortunately, later the ball had to be made smaller to support all the gameplay; at this size it was extra satisfying to bounce.

01.10.2025 20:20 — 👍 2    🔁 0    💬 1    📌 0
Video thumbnail

🔴, a #pico8 bounce shooter, is out now!
Play it in browser on itch: iansundstrom.itch.io/redcircle
Development fun facts itt 🧵

01.10.2025 20:17 — 👍 58    🔁 18    💬 1    📌 0

Thanks!

29.09.2025 20:56 — 👍 0    🔁 0    💬 0    📌 0

@ian-sundstrom is following 20 prominent accounts