Everything here was drawn a pixel at a time in Aseprite for a world that has two people in it. Nothing is generated, nothing is bought, and nothing is traced. This is all of it, including the parts that have not made it into the game.
289 drawings. Pixel art is cheap to send and expensive to draw, and that trade is the entire reason a world like this can be made by one person.
Every piece on this page is © Sagar Singh, drawn by hand and not licensed for reuse. Look at it as long as you like. Taking it is a different thing, and the marks across each one are there to make that awkward rather than to make it pretty. If you want to use something, ask. I genuinely would love to share, and to see what you use my art on, so please, all I ask is to see. 🙂
The same drawing at one pixel per pixel, and then at eight. It is worth seeing how few pixels there actually are.






They wander the ground between the two houses on their own. Standing near one long enough gets you a hello, and enough hellos gets you followed home.



Two sheets of sixteen. Every tile is a corner mask rather than a piece of ground, which is what lets any two materials meet cleanly without drawing a border for every possible pair. There is more on that on the systems page.


The first thing in the whole world that got drawn, before there was anywhere to put it. Two of them have a swim cycle so far. The cycle is keyed to the drawing rather than to the species, so the day the other three bodies get one, every fish in the game starts swimming at once.

















The rod is held. Its grip is at pixel twenty one of thirty two, and that number is written into the code so the rod sits in a hand rather than near one.

A chicken, a dragon's worth of fire, and a bar that fills.
The bar is 96 by 32 and keeps no time of its own. It has seven states, from cold to full, and it moves when the fire you share does. When the fire tops out, nine more frames turn the flame from yellow to purple once, and it stays purple for as long as the fire is full. The lower half is drawn for mana, which the game does not have yet, so for now both halves fill together.







Nine holes in one board. The middle row genuinely sits one pixel to the right, which the code had to be told rather than assume.



Drawn at forty three pixels across, which is not a round number, because the card was drawn before anything decided what size cards were.








Each house has its own sky and it follows that person's real local time, so you can look across the valley and see that it is already dark where they are.




Standing ground between the two houses, with things on it you can walk up to.





The bits that turn up all over the app rather than in any one place: on a card, at the end of a line, on a button. Sixteen pixels is the whole budget, so a hand is four pixels and a flame is three, and getting one wrong is getting a quarter of the drawing wrong.








A wild one. It comes round now and then rather than living anywhere, and once it has come round you can ask it to stay. Drawn as four animations: standing, an idle with a tail and a blink, a walk, and the face it makes when you say hello.
The walk runs at two speeds and both are the real ones. Out in the world it ambles at 150 milliseconds a frame like everything else that lives out there, and in the boss fight it moves at 90. It is shown here at the ambling speed, because that is the one you see most days. The two attacks below only ever happen in the fight.


Five tabs, each drawn twice. The off state is an outline and the on state is lit, so moving between them reads as a tab turning on rather than as a colour changing: the book opens, the candle catches, and the light on the controller goes from red to green.
None of the ten is the same size as any other, and the pair for one tab is not always the same size as itself. The closed book is seven pixels across and the open one is eleven, because a book that opens gets wider, and squeezing the open one back into the closed one's box would have been the easy way to get that wrong.










All cut out of one interface sheet and shown at 2x on the game night list. There were five of these when this page was last written. There are eighteen now, and the three games still without one keep the SVG glyph the app shipped with, so a card with no drawing on it reads as one still waiting rather than as a different kind of card.
Only six of them are actually square. A rod is taller than it is wide, a controller is twice as wide as it is tall, and the app scales each one by whatever whole number fits rather than stretching it to a box, which is the same rule the game itself uses.


















A kit, not a picture. Every piece is 32x32 and the top of one is a 32x16 diamond, which means a cell of this grid is a cube: that is what lets a room be sorted back to front with nothing but arithmetic. A full block lifts the floor 16 pixels and a half block lifts it 8, so a half is one stride up and a full one is not, which is what the stairs are for. Two colours, and both orientations: the wall and the staircase that face the other way are drawn rather than flipped, so a room can have two real walls and stairs that climb either way.














A second isometric kit, and a different one. A floor tile here is a 32x16 diamond with six pixels of side drawn under it, on a 32x22 canvas, so the floor has a thickness you can see at the front edge. The footprint is the same diamond the house kit uses, which is the whole reason this needed no new renderer: the projection, the camera and every rule about walking carried straight over, and the only thing the engine had to learn was that one kit can hold pieces drawn on different sized canvases. The walls are 32x32 and the corner is 64x32, because the corner is drawn where the two ridges meet rather than where the two cells do.
















Everywhere else in this game a person is assembled from slots: a hair style, a build, a colour for the top. That is a good answer to what you look like when nobody has drawn you, and the wrong answer here, because somebody has. Two specific people in two specific hoodies, and only in the shop. Away from you is the only direction with its own drawing, so left and right use the front and get their sense of direction from a mirror. He has no standing back view yet, so the first frame of his walk away stands in for it.

The booth is the one in the photos, drawn leaning into the corner, and it overhangs its cell the way a real one pushed into a corner does. The plants are the stock rather than the decoration: one standing in the shop is one somebody can buy, and when they do it leaves with them.











Sixteen square, floating over somebody's head, and that is the whole of a customer saying what they came in for. Fourteen of them drawn, four of them in the game so far. The rest are what the shop turns into: money, reactions, somebody needing a hand.













Groceries, a belt and a paper bag. The bag is the whole game: Sagar drew a grid into it, four squares by four, and then drew every item at a whole number of those squares. Nobody wrote a rule to make the packing interesting. It fell out of things being drawn at the sizes things are, and a chicken eating a quarter of a bag is a decision rather than a motion. Everything below is at four times, all of it, so the footprints here are the footprints in the game.







































Seven goods at eight pixels square, the smallest drawings in the whole project. They ride the belt in the isometric shop and none of them means anything: something moving on the belt is how the toko says from across the room that there is somebody waiting to be served, without a word of interface. Which one you get is not a hint. Here is the strip as it plays, and then every frame of it on its own, because at eight pixels across you cannot see what any of them are until somebody stops them.
The things standing in the dark in there. They are lit by whatever you are carrying, so most of the time you meet them one at a time and closer than you wanted to.






A tapping race, five rounds of ten seconds, with a card before each round. Sagar drew the card whole in lace and then cut it into nine, so the corners stay his corners however tall a card gets: it only ever grows by a whole tile of lace at a time. Green helps you, red goes after them, brown is the rules, and gold is the rare one, which is why it is the only frame with a glint crossing it in the game.
Each round walks on with its own banner. They run once in the game; here they loop.


Four corners that close in on the cell you are about to use, three frames and a quarter second each. In the shop the thing in your hands floats inside them before it goes anywhere, and they stop and fade when the cell is taken.
None of this is in the game, and until this page none of it had been anywhere but Aseprite. Some of it is waiting on the thing it was drawn for: a boss fight, a customer who brings a dog, a tab in a browser. Some of it was practice, and says so. The ones that move play at the speed saved in the file, since there is no game yet to ask.


















Drawn, kept, and then either used somewhere it was never drawn for or not used at all. When this page was first written the whole pile was waiting. Since then the maze needed five landmarks and got all five out of here rather than out of anything new, so a fair amount of what follows has quietly shipped. Where it has, it says so underneath.
The rest is still waiting on somewhere to put it, or was practice. The two sheets at the end are the pages the scratch cards were cut out of, with the symbols, the plate and the lettering all still together.














There is no Aseprite command line on the machine this is built on, so the
.aseprite files are read directly and written out as PNGs by a script.
Animations come out as one horizontal strip and the page above steps through them a
frame at a time, at the speed the game plays them. That speed lives in the game, not in
the file: nearly every drawing here was saved at Aseprite's default of a tenth of a second
a frame, and the game sets its own pace sprite by sprite, so the bobber drifts at 140
milliseconds a frame and the reel spins at 80. The drawings that are out for the first
time have no game to ask yet, so they play at the speed saved in the file. The exceptions
are the fight in Two Little Fires and the hammer in Love Taps, which advance a frame per
turn of their own loop rather than on a clock, so those are shown at a readable speed
instead, and the fire bar, which only moves when the fire does and is shown here filling
at half a second a state. Nothing is ever scaled by a
fraction: every sprite on this page is at a whole multiple of its real size, so no pixel
is ever wider than the one next to it.