by Tom

Patch v0.15.1

December 20, 2019 in Announcements by Tom

Hi folks!

A little patch has gone out to address some issues with the 0.15 update. To get the latest patch, beta owners should follow these instructions.


  • Added 4 tracks that were missing from 0.15.0.
  • Fixed the “item get” jingles resetting the current track that is playing.
  • Fixed a softlock that could occur during one of the final boss fights.

    Delvin’s boss fight

  • The bleeding mechanic has been significantly altered: you won’t start bleeding until you take a hit that knocks you down to 0 hearts. Taking a single hit while bleeding will cause you to instantly die, but if you can survive 15 seconds you’ll heal half a heart and stop bleeding.

by Tom

Update v0.15

December 19, 2019 in Announcements by Tom

Hi folks!

Beta testers have access to the v0.15 build now. Follow the instructions here to get it.

Here’s what’s new:

  • A brand new soundtrack by Joel, which comes in 32-bit and 8-bit variants!
  • The lighter can now be used to perform a rocket dash (see the gif above)
  • The Missinglasses puzzle in the Palace has been partially redesigned
  • An extra stage has been added to one of the final bosses

    Delvin has a new final form

  • Skeleton warriors now spawn in a few places outside of the Palace
  • 64-bit Windows builds are now provided, which should fix a crash reported by a few users on Discord
  • And a ton of other miscellaneous fixes and improvements…

Save files from 0.14 will continue to work in this update, but note that maps generated by 0.14 may lack music. For the intended experience with all the new music you should create a new save file.

Join us on Discord to talk about this update! Beta testers, please remember to keep discussion of spoilers to the #beta-testing channel!

For now, this build is only available to our existing beta testers. But you can wishlist the game on Steam to get notified when it releases. Beta testers can join our Discord server to request Steam keys.

Press, streamers and youtubers can email to be put on a list for preview access.

by Tom

Update v0.14

December 7, 2019 in Announcements by Tom

Hi folks!

Beta testers have access to the v0.14 build now. Follow the instructions here to get it.

Here’s what’s new:

  • The Missinglasses have a secondary function.

    It loops the screen, allowing you ‘out of bounds.’

  • A mind-bending new puzzle at the Palace tests your mastery of the Missinglasses’ secondary function.
  • Snails can be picked up and thrown when they’re standing still.
  • Larger map displays. In the overworld, both islands are shown on the map.
  • 54 new achievements (in the Steam version only).
  • Screen-shake, flickering, and glitching effects can be disabled in the options.
  • You can now switch between the 8-bit and 32-bit art styles in the main menu.
  • Various miscellaneous fixes and improvements.

Join us on Discord to talk about it! Beta testers, please remember to keep discussion of spoilers to the #beta-testing channel!

For now, this build is only available to our existing beta testers. But you can wishlist the game on Steam to get notified when it releases. Beta testers can join our Discord server to request Steam keys.

Press, streamers and youtubers can email to be put on a list for preview access.

by Tom

Patch v0.13.2

October 24, 2019 in Announcements by Tom

A couple of patches have gone out to fix issues in the 0.13 update. To get the latest patch, beta owners should follow these instructions.


  • Fixed an error that always occurred after pizza delivery
  • Reduced the rate that screenshots of the game are taken at


  • Fixed pets not being able to pick up hearts sometimes
  • Fixed items (such as the sword) remaining in your hand after you’ve unequipped them
  • Fixed memories being usable outside of story mode
  • Fixed a world generation bug causing approximately 1 in 64 worlds to give you immediate access to the bridge from the start of the game
  • Fixed a difficult to reproduce crash on the map screen
  • Made swords able to destroy starfish
  • Made all shields able to reflect starfish
  • Made the player character strafe while the shield is in use
by Tom

Update v0.13

October 21, 2019 in Announcements, Screenshots by Tom

Hi folks!

Beta testers have access to the v0.13 build now. Follow the instructions here to get it.

Here’s what’s new:

  • The 32-bit art style is here at last!
  • Four new dungeon bosses, bringing the total to eight. Each one has a second form you’ll only see if you encounter it in the second half of the game.
  • Spoiler

    Three final bosses

  • Massively rewritten story.
  • You can now equip 3 items in addition to a sword and either a shield or spring.
  • Improved game controller support: it now automatically recognizes when controllers are attached/removed, and it’s no longer necessary to manually configure the button layout.
  • Various little bits of polish: camera movement, faster world generation, a new CRT shader, etc.

Join us on Discord to talk about it! Beta testers, please remember to keep discussion of spoilers to the #beta-testing channel!

For now, this build is only available to our existing beta testers. But you can wishlist the game on Steam to get notified when it releases.

Press, streamers and youtubers can email to be put on a list for preview access.

Two art styles

While the 0.13 build comes with both art styles, we don’t yet have a built-in way to switch art style. Currently, you will need to open up launch-config.json with a text editor, and remove the “assets/advance/” line.

Note that there are still one or two places where we lack art for the 32-bit style. In those places, it’ll fall back to the original 8-bit style.

What’s next? When is it releasing?

We’re waiting for feedback on 0.13 before we nail this down, but generally we’d like to do one more pass over the core gameplay. We have some cool ideas for secondary uses of the lighter and missinglasses, and there are a few simple ways we can improve enemies, caves, etc.

Steam Keys

Since our lovely beta testers have been asking…

We currently have an extremely limited number of keys we’re planning to give out to members of the #beta-testing channel on our Discord server. Valve has provided us with these keys for the purpose of helping us to test the game’s integration with Steam.

After the game’s release on Steam we’re planning to request a larger batch of keys. However, you should be aware that Valve has the right to deny any request for keys, and they do change the rules from time to time!

A few words on OS support

You might have noticed the Steam store page doesn’t list the macOS system requirements. That’s because we’re dropping official macOS support. We’ll continue providing builds for Mac users, but note that you may need to apply some workarounds to get the game to work… And that at any time, Apple may release an update that kills it entirely.


If you’ve been following tech / indie game news lately, you’ve probably heard about macOS Catalina’s gatekeeper. If not, suffice it to say that Apple are raising the walls of their little walled garden, and now the only way for developers to get into it is to repeatedly jump through several utterly pointless burning hoops, in a process called notarization.

This isn’t the only time Apple has taken a direction that has made their OS difficult to support in Lenna’s Inception. Recently they deprecated OpenGL, leaving their graphics drivers in a perpetually-broken state. If you played any earlier betas on macOS and had the game launch into a black screen, you’ve been affected by this! I spent over a week this summer investigating that issue, one cause of which was a lack of support for NPOT textures. NPOT textures have been a core part of the OpenGL 2 standard since 2004! (Version 0.13 has a fix.)

And besides that, every new version of macOS brings in weird new idiosyncrasies for developers to work around… Like for instance the OS intercepting long key presses to bring up a menu that steals all keyboard input, which (for some reason) is invisible in Lenna’s Inception and causes the game to randomly stop responding to key presses. (The workaround for this is to run a command in the terminal.)

The rate at which Apple are introducing massive breaking changes is terrifying. Everything I’ve listed above is stuff that has been introduced to the OS since I began work on Lenna’s Inception. Apple aren’t very open about their roadmap, and nobody knows what they’ll do next. Without being able to plan for the future, it would be dishonest and irresponsible to claim to be able to support this OS.

If you’re a Mac user who has already paid for the game, I’m sorry this has affected you. As mentioned, we’ll continue providing builds and workarounds where possible. If that ends up not being possible, well, currently the game runs well in Wine, and CrossOver should work too. Desktop Linux is also looking really good right now… 😉

What about Linux?

We’re not dropping Linux support. Linux distros tend to be much better about preserving backwards compatibility. Furthermore, we see considerably more wishlists from Linux users than macOS ones–about 20% of our wishlists come from Linux users! Lastly, I use Linux to develop the game, so dropping it would be silly and pointless 🙂

Ubuntu 16.04 and SteamOS will be officially supported. YMMV with other distros!

by Tom

Bytten in Brighton

August 13, 2019 in Announcements by Tom

Hi folks!

So much has happened since our last blog post, so here goes. First of all, Jay and I left our jobs at Chucklefish, to work full time at our own company, Bytten Studio! Since then, we’ve moved to Brighton and we’ve been working hard (from the beach) to finish up Lenna’s Inception as soon as possible.

It’s overwhelming for me to think that this project has gone from a side project in my spare time to something I’d dedicate my career to, and I couldn’t have done it without the continuing interest from the fans and the game dev community alike. I hope you’re as eager to play it as we are to finish it!

With that said, in October beta owners will find that the 0.13 update has landed. You can look forward to:

  • All of the planned 11 bosses in the game
  • Significant story changes
  • A new, more realistic, CRT shader
  • The GBA-era graphics Jay has been working on

Since we now have all the beta testers we think we will need, we’ve decided to close the beta. If you read this and were hoping to get a copy, you can join the Lenna’s Inception Discord server to keep up to date with the latest info, or you can also follow Jay and myself on twitter.

Press, streamers and youtubers can email to be put on a list for preview access.

We have more to reveal over the next few months, but right now there’s a monstrous seagull sizing up my laptop. So, until next time!

by Tom

Corrupted Memory

May 27, 2019 in Screenshots by Tom

Hi folks! I bring you grave news. 🙁

Lenna’s Inception has ğ̸̢̛͍̠̈́̎̾̒̓̒͐͋̾̈̅͂͠litched out. But there’s still hope! Each time you defeat a boss, you’ll restore a corrupted memory bank–a short cutscene revealing a new part of the story.

Here’s a preview of one:

There are eight to find in toţ̸̗̼͇̜̞̩͙̝̜̫̯̣̥̼̃̎̓̍̂͊̓̉̃͌al. It’s only by restoring all of the corr̶̡̲̺̣̪̻̱͉͎̪̠̼͍͎̉̔̑̀́̄̓̑u̷̖͈̜̼̮̬̝̩̭͖̲̓̉͆̋̉̆͆̍̽͘͠ͅṗ̷̢̨̡̼̬͎̣̗̫͎̻̣̼̀͜ͅted memory banks that you’ll learn the origin of the glitch and be able to fix it.

(The game is fine̵͍̓, don’t worry. We’re aiming to release a big content patch for beta testers in the summer, at which point 10 out of 11 bosses and almost all cutscenes will be in the game.)

Curious how these glitch tiles are made? Let’s zoom in on those tiles in the middle:

On the left is the tile in its natural state, and on the right is the same tile, glitched.

In Lenna’s Inception we generate authentic-looking glitch tiles by reading from the wrong position in the tilesheet. A tilesheet is a big old grid of individual graphics, like this:

In a typical tile-based game, each grid space in an environment has an index (a number) that gives you its position in the tilesheet. Usually that position is sent straight off to the GPU for rendering the tile to the screen, but in Lenna’s Inception, if the tile is glitched, it first gets shifted 8 pixels in each direction.

The result is that the ‘wrong’ pixels get drawn to the screen. Since the tiles are 16×16, they’re being shifted by 8, and the Game Boy hardware supported 8×8 tiles, what gets drawn to the screen is vaguely reminiscent of Game Boy glitches: a random-looking jumble of 8×8 sections.

There are a few other effects we use as well. One of them is simply not clearing the screen buffer between frames. Where there is transparency in glitched tiles, the previous frame shows through. This can make it look like tiles are stretching, or like menus are showing through behind the environment. Sometimes it means the player character leaves trails!

by Tom

Control freak

April 15, 2019 in Screenshots by Tom

Hey everyone! We’ve been working on some small quality of life improvements for the next update. Among other things, we have an improved default control scheme, a simplified HUD, and some dynamic camera movement.

From the beginning, the control scheme has been consistently present in feedback from players. We’ve made some changes to the defaults to help keyboard and controller users feel more comfortable:

The equipment menu has been redesigned to accommodate this:

We’d like it if you’d comment with your thoughts on these controls!

The biggest change here is that there is now a pair of dedicated buttons for swords and shields. Altogether, there are now five buttons you can bind to different items. Showing all of these on the screen all the time would leave very little room for showing the world, so we took an axe to the already-chunky UI. In the end, we decided that the sword and shield didn’t need to be shown on the screen anyway, since you rarely need reminding what they’re for.

But the redesigned HUD did free up space for something I’ve wanted to add for a long time: camera movement! Since the beginning, we’ve had a fixed camera: maps are split up into rectangular screens and only one is visible at a time. The camera would only move while transitioning from one screen to the next. There are a few good reasons for doing that in a top-down action game–it ensures everything relevant to the player (doors, enemies, etc.) is visible on the screen, and nothing important is hidden by the HUD.

But in the upcoming v0.13 the camera moves in the direction you’re looking, or when you approach the edge of the screen. Check the GIF out. I spent a lot of time trying different ways of responding to the player, and different movement modes and amounts. I feel pretty confident that this makes the game look and feel more dynamic… But it can still be disabled if you don’t like it.

That’s all for now!

by Tom

On Porpoise

February 19, 2019 in Screenshots by Tom

Today I’d like to introduce, Sandolphin, the “Serpentine Dolphin” Archangel. In v0.13 of Lenna’s Inception, you’ll meet her in watery dungeons. To beat her, you’ll need to master swimming, and perfect your timing of dives.


Sandolphin’s interests include swimming, crossword puzzles, and vomiting starfish. You should dolphinately watch out for those starfish. If you see one heading your way, be prepared to dive!

Finally, we have a new title screen to share! The background scrolls over the overworld, displaying some of the types of locations you might visit early in the game. Of course, since it’s generated, you probably won’t see those exact locations when you actually play.

Tuna in next time to read about changes we’re making to the controls to save you from having to constantly switch items!

by Tom

Shady Business

January 7, 2019 in Screenshots by Tom

Happy new year everyone!

We’ve got a couple of new things to show you today. First up is the introductory cutscene of the second player character.

We’ve already shown how the game allows a second player to control Shadow Lenna, a character with all the same abilities and stats as Lenna. Starting in 0.13, Shadow Lenna can be unlocked near the beginning of the game. Certain cutscenes have special dialogue for Shadow Lenna that you’ll only see if you’re playing co-op.

In other news I’ve scrapped the CRT shader we had before and written a new one. It’s best viewed fullscreen, so be sure to click below for the full-size version.

The same scene with the old shader can be viewed here. The difference is night and day.

There are a few effects the new shader applies:

  • Barrel distortion
  • Scanlines
  • Color bleed

Barrel distortion serves to magnify the center of the screen, making it appear like the curved surface of a CRT screen. For the curious, this can be achieved in a couple of lines of code – it’s a transformation of the position of the pixel being shaded:

Scanlines and color bleed I implemented together. It helps to look at a zoomed in section to understand how it works:

This is a composition of two layers. The base layer is a slightly darkened version of the original texture, scaled up by nearest-neighbor (i.e. without interpolation):

On top of that–and if you’ve ever seen a CRT screen from very close up, you’ll recognize this–each of the red green and blue channels is drawn as a radial gradient. Each gradient is offset by sub-pixel amounts, creating a triangular pattern of red, green and blue blobs:

As you extend the radius of those gradients, they blend and start to reproduce the original colors of the image. Extending the gradients outwards, beyond the original pixel, until they blend into neighboring pixels creates the appearance of color bleed. This can be seen around the edges of the yellow fire sprite below: red bleeds out down and left, and green bleeds out up and right.

If the gradients are squat ovals instead of perfectly round, pixel blend into each other horizontally more than they do vertically. That means the space between neighboring vertically-aligned pixels is (relatively) darker than the space between neighboring horizontally-aligned pixels, creating the illusion of scanlines.

All together, this makes for a fairly simple, efficient, single-pass CRT shader.