← appaday

Everything is fruit

This one is not finished either. It is also not really mine yet, which is the interesting part.

On 11 September I wrote one line into my idea list:

3D platformer as fruity as possible · collect little fruits that turn around their own axis like classical collectibles in 3D games

A month later the autopilot rolled a random number over the 227 entries in that list, landed on this one, and built it in a night while I was asleep. Its own note the next morning said, correctly, that nobody had played it with their hands. Two days after that I opened it on my phone.

ok someone did the amazing work of making this game. I think it's clearly a mobile game so let's make it mobile

A phone screen in landscape. A small brown seed with a green sprout and a turquoise scarf stands on half a lemon floating in an orange sea of juice. A trail of blueberries, oranges, strawberries and cherries leads over an orange half and a lime slice into the distance, where a whole lime and a whole orange sit in the haze. The counter reads 28 of 108 fruit, a red badge reads times 28, three empty stars, a pause button, and one big orange jump button under the right thumb
Orange Landing, 28 fruit into a run. The trail shows where the jump goes.

What it is

You are Pip, a pip: one seed off the Great Strawberry at the top of Fruitland. One windy night Pip fell all the way down into the juice, and now eats the way back up. Six islands, left thumb to walk, one orange button to jump, a second jump in the air. The islands are halves of orange and slices of lime, the bridges are bananas, the springs are grapes, and the last level goes one and a half times round a strawberry the size of a house.

A phone screen in portrait. Pip the seed stands in the middle of a huge orange slice ringed with small oranges, a line of cherries and strawberries leading away over more citrus halves. A card at the bottom reads: This is Pip. A pip: one seed off the Great Strawberry, at the very top of Fruitland. Tap to go on. A Skip button sits top right
The story is three cards long and is told once.
islands
6 — Orange Landing, Lime Steps, Citrus Shallows, Melon Reef, Banana Canopy, Berry Summit
fruit to collect
820, plus 18 star fruit
made of
plain JavaScript and WebGL 2, 3,626 lines, no engine, no build step
asset files
one font. Every model is generated from numbers, every surface is painted in a shader, every sound is an oscillator
size
226 KB of unminified text and a 30 KB font

How the fruit gets there

The fruit is not placed by hand. After an island is laid out, a bot walks the route once with no fruit in the world, and a fruit is hung on its path every stride and a half. So the trail over a gap is not a curve somebody guessed. It is the jump, recorded. Follow the cherries and you land.

The same bot is how the game gets tested without anyone holding it: one version plays every island perfectly, and a second, clumsy one plays 50 milliseconds late, steers a little off and drops one press in twenty. When I ran it today the clumsy one finished all six islands in 24 runs out of 24 each, and fell into the juice twelve times in its worst run of Banana Canopy.

Then a person held it

A bot proves a level can be finished. It does not notice that the hint text is sitting in the middle of the screen.

great game but some layout issues. are you sure you took screenshots? I am on a pro max so I already have one of the largest phone screens. also the hints are in the middle of the screen.

So the first two days of it being mine went into exactly that. The interface was cut down to one Play button and a row of six fruit. Two teaching islands went in front of the old first level, with hints that disappear the moment you have done the thing they describe. Pip got a line to say on arriving at each island. And the title screen now shows the day and time of the build, because getting Safari to load a new version is its own small game.

A phone screen in landscape at the start of the first island. Pip stands in the centre of a large orange slice ringed with small oranges and cherries. A speech card labelled Pip reads: Ow. That was a long way down. Well. Up is that way. The counter reads 0 of 108
Pip's first line. These figures come from the game's own phone-sized screenshot run on a laptop, not from my phone.

Still rough

I found a bug in Banana Canopy where the left stick got stuck in one position until I pressed pause. That one is fixed; there will be more like it. Nobody has measured the frame rate on a real phone, plugged in a gamepad, or listened to the music critically. Six islands is not a finished game. And it is a web page you add to your home screen: the plan is a proper app later, and none of that exists.

It is best on a phone, in either orientation. It also runs on a keyboard, but that is no longer what it is built for.