Devin Kelly-Sneed
@devinks.bsky.social
890 followers 170 following 27 posts
making games and music did player movement for Psychonauts 2 currently working on Keeper at Double Fine pfp by @michaelfirman.bsky.social
Posts Media Videos Starter Packs
Pinned
devinks.bsky.social
Wow, 512 followers! Intro post time! I make games (current: Double Fine, past: LucasArts, Dynamighty). Mostly a programmer, but some design too. Other interests include music (piano and composition), puzzles, and being outside. Quiet, but sometimes I like to write about gameplay systems.
devinks.bsky.social
Bee Magic is a wonderful puzzle game (go play it!). Using movement patterns to cast spells creates interesting challenges with the level design. Really nice to read about design iteration on the map!
Reposted by Devin Kelly-Sneed
doublefine.com
From @leepetty.bsky.social‬ and Double Fine Productions, our new game is Keeper - a beautiful and surreal third-person, atmospheric puzzle adventure, and a story told without words.

On October 17 2025 — The Keeper Shall Awaken! Wishlist today, and find out more on www.doublefine.com
devinks.bsky.social
Last year I wrote about the movement systems for Raz that we built on top of Unreal’s CharacterMovementComponent. This covers the architecture of our Move Mode system, how a few of our custom modes work, and a bit about dealing with inconsistent gravity.

doublefine.com/news/behind-...
Behind the Code: On The Move!
Raz is an acrobat. He runs, jumps, climbs, rolls, swings, and slides through the world.
doublefine.com
devinks.bsky.social
The most egregious scrabble play I’ve seen allowed is “MRT”. As in the actor Mr T. The folks at that table had a very unique interpretation of the rules.
devinks.bsky.social
Mine didn’t come out right…
Poor quality drawing of a dog with a head shaped light a twisty cfl light bulb
devinks.bsky.social
I hope to find time to write more of these. It’s great to be able to share behind the scenes info for others to learn from. And the process of writing helps me think about how I might improve similar systems in the future.
devinks.bsky.social
I wrote a small series of articles earlier this year about some gameplay features I worked on in Psychonauts 2. A little look into how we built and tuned the systems. Here’s the one about Raz’s jump: doublefine.com/news/devin-a...
Behind the Code: Designing Raz's Jump
Skip down past this Video Gallery. Skip up past this Video Gallery. Skip down past this Image Gallery. Psychonauts 2: Jumping - Jump hold button…
doublefine.com
devinks.bsky.social
Any results from the chilled dough portion of the experiment?
devinks.bsky.social
Wow, 512 followers! Intro post time! I make games (current: Double Fine, past: LucasArts, Dynamighty). Mostly a programmer, but some design too. Other interests include music (piano and composition), puzzles, and being outside. Quiet, but sometimes I like to write about gameplay systems.
devinks.bsky.social
I played 868-HACK during my daily commute for years. Fantastic roguelike with interesting risk/reward choices, simple controls, and turn-based gameplay so you can play at your own pace. Very excited that a sequel is in the works!
devinks.bsky.social
The beautiful sounds are for my officemates, not me
devinks.bsky.social
Oh this sounds like me. I’d appreciate being added!
devinks.bsky.social
Very cool, nice progress!
devinks.bsky.social
I have fond memories of playing a bunch of these with you! Also Mario Kart on the broken tv where green and red shells were slightly different shades of brown.
devinks.bsky.social
That dopamine hit is the real reason to avoid premature optimization
Reposted by Devin Kelly-Sneed
doublefine.com
Navigating a brain involves running, climbing, and more.

Player Movement and Powers Feature Lead Devin Kelly-Sneed (@devinks.bsky.social) has once again sat down for a closer look at Psychonauts 2. This time, it’s all about movin’ around!

Read more: doublefine.com/news/behind-the-code-move-modes
Behind the Code: On The Move!
Raz is an acrobat. He runs, jumps, climbs, rolls, swings, and slides through the world.
doublefine.com
devinks.bsky.social
I have a vague recollection that there were reasons we didn’t use EQS for this feature, but I wasn’t involved in the decision and unfortunately don’t know what they were. Best guesses: EQS being labeled “experimental” or concerns about it being too tightly tied to AI systems.
devinks.bsky.social
Most of the time game thread wasn’t the limiting factor in frame rate. We considered various optimizations (multithreading, storing targets in an octree, etc.) but didn’t end up needing to.
devinks.bsky.social
The targets were put into a few different lists based on broad search categories. We’d run through the entire list for the appropriate category. To mitigate the perf cost we tried to order the conditionals to discard as many targets as possible without doing very costly evaluations.
devinks.bsky.social
Registration was generally through InitializeComponent/UninitializeComponent. I think those got called when something streamed in/out, but can’t remember for sure. There was also a way for targets to be set Active/Inactive at runtime which let us temporarily ignore them during searches.
devinks.bsky.social
I wrote another Behind the Code article about Psychonauts 2! This time I explain how we used our Target Search system. It finds and prioritizes objects in the world for Raz’s powers to interact with.

www.doublefine.com/news/devin-t...
Behind The Code: Locked On Target
Here’s a quick rundown of how Target Search was used to enable that sequence: Player fires Psi Blast. Target Search finds the flying Regret enemy to aim…
www.doublefine.com