rubber-duck.blog — nvim
← blog

New Tile Arrangement System

Today I tried making the game look better and that’s when I realised that the current rendering system is highly restrictive. We have:

  • an outer wall fill
  • tiled 16×16 NES floor sprites (scaled 3×), with optional color tint
  • optional rug sprite
  • back-wall furniture sprites at configurable positions

This system worked fine for a quick demo of the game but for the full version it’s far from ideal. The first issue I faced was having to place each item at exact coordinates and resizing it correctly. This issue can be seen in the current game: the clock renders behind the rug.

Over the next few days, I will be working on a new rendering system. I sat with Claude Code and had a few back-and-forths to create a refined plan. The idea was to have a box grid. We program this grid through strings: assign each texture to an ASCII character and then use that character in the grid.

For example, I set W to a wall texture, D to door and F to floor. I can pass “WWWFFFFDF” to the rendering system (assuming a 3×3 room for simplicity). This will render each of those textures in the appropriate grid box.

The plan is not fixed and will most likely be changed as I work on this in the following week.

Hopefully this new plan makes development of the game faster and I can add more rooms and be able to release a v1 soon.

// related project
Terminal Mysteryactive
⎇ mayaanhafeez/TerminalMystery3 other posts about this project
Press : for a command, Ctrl+P to search,Ctrl+T to cycle theme, Ctrl+S to cycle style