Building Agoro Camp in public

A working log of a game that is not finished. What I decided, what it cost, and the things that came out wrong. Agoro Camp is set on Camp Afric — an off-grid property in Portugal that really exists, which makes some of these decisions stranger than they would otherwise be.

Updated 7 October 2026 Newest first In development
The standard this page holds itself to

Everything here was true on the date above it. Concept renders are labelled as concept renders. Prices are called anchors because that is what they are. Where the page shows an empty panel instead of a number, the number genuinely is not there yet.

Agoro Games is one person, Daniel Duroshola, working with AI agents. Every agent-made piece here is labelled as such, and Daniel is responsible for every word.

The browser camp builder was the first prototype. The game is now an Unreal Engine world you can drive into, at version 3.3, on Mac and Windows.

Everything below this entry was written about the first Agoro Camp: a camp builder that runs in the browser. It is still online, and it did its job, which was to show what the game is about. What it could not do was let you arrive at the camp the way I did in March 2022, down an olive track with a van and a caravan. So on 23 September I started the game again in Unreal Engine 5.8, and that is where it lives now.

The ground is the real ground. The terrain comes from Portugal’s national survey data for this exact hillside, so the track, the olive trees and the ruin sit where they really are, with about 3,000 trees placed from the same data. I got there by a detour: I first generated worlds of the camp with World Labs, and comparing them with the survey showed me where generated ground stops matching the real site.

The people and the vehicles are Tripo models. My own body, the founders Kai and Amara and the companion Kofa, rigged and animated. The van Holzmichel, the caravan and the stone pump house, made game-ready in Blender. And since version 3, Nilua: Paulin Hülsmann, the singer whose song “Where do we go” was written about this camp, as a 3D character made with her consent.

Two missions are playable. “Arrival” is the true story: tow the caravan down the track, cut a low olive branch out of the way with the pole pruner, spend the first night, build the power in the morning. “GO LIVE” is the camp’s first concert: set up the gazebo, the lights and the recording, then Nilua plays, and the game hands over to her real live take.

In the Unreal build: my character stands on the olive track with the pole pruner beside a fallen low branch, trees around, in daylight
Arrival, version 3.3. Out of the van, pole pruner in hand, a low branch across the track. A frame from the walkthrough, captured from the game.
In the Unreal build at dusk: a gazebo strung with round lights, Nilua seated with a guitar under it, the founders standing nearby
GO LIVE. Dusk at the lantern gazebo, Nilua under the lights. Also a captured frame, not a render.

Three versions in two weeks. Version 2 (5 October) put Holzmichel and the caravan on the track and made GO LIVE playable. Version 3 (the same night) added Nilua. Version 3.3 (6 October) came out of my own playtest: you can now get into the van from either side, because in 3 you could get stuck on the wrong one. It also has real olive branches instead of grey spheres, Nilua’s song in the menu, and the birds I recorded at the camp in 2022 instead of synthetic wind.

It runs on Mac and on Windows. The Mac build needs Apple silicon. The Windows build of 3.3 was packaged today. It is not code-signed yet, so Windows asks before it runs it. I checked that it starts and loads the camp, but in a virtual machine without a graphics card, so I have not yet seen how fast it runs on a real PC.

It is entered in Tripothon S1, Tripo’s world-building hackathon, in the Game track with the Tripo, World Labs and Jupiter tool tracks. I submitted it on 5 October and kept it up to date through 7 October. On 17 October I show it at the Demo Day in Barcelona, and Paulin sings the same song live there. The Jupiter part is a plan, not a feature: the idea is the camp as a glasses-free 3D diorama on Jupiter’s display, and the device has not arrived yet.

It is still a prototype. Some vehicles and props are placeholders, and nothing is for sale. AI coding agents wrote much of the code with me; I am responsible for every line of it, and for every word here.

What changed — Agoro Camp stopped being a builder you look down on and became a place you arrive in. The browser version stays online as the prototype that got it here.

Agoro Games now has a Steam account. Agoro Camp is not on the store yet, and the first wait is Valve’s.

Today I set up the studio’s Steamworks account and paid Valve’s product fee for the first game: €84.99, including VAT. The fee is per game, so one payment opens the account and buys one place on the store. Agoro Camp and Agoro Road are both headed for Steam, which makes the second game a second fee. Both are planned for the Epic Games Store as well.

The paperwork is done and it is Valve’s turn. Its identity and tax check can take up to ten working days, and until it clears there is no store page to build and nothing to wishlist. After that come two waits nobody can shorten: at least 21 days between the fee and any release, and a public coming-soon page for at least two weeks before launch.

The part that holds this game back is not Valve. Steam asks for at least five screenshots of real gameplay, landscape, 1920 by 1080. Agoro Camp does not have them yet. That is the next piece of work, and it will be written here when it is done.

What changed — Steam moved from “nothing filed” to “account open, check running”. The store page, the screenshots and the second fee come next.

The bird built for this camp now belongs to every game Agoro Games makes

Kofa is the Sankofa bird. He was made here, for Agoro Camp, and he is named after the middle of the word — San-ko-fa, where ko-fa is “go and fetch”. That is his whole job.

His loop is retrieve, reveal, scout. You lose something and he brings it back. He perches and shows what stood on this ground before. And scouting ahead unlocks only on ground whose past you have already retrieved — the future is not visible until the past is known. That is the rule of the character, not a line of flavour text.

The gold egg in his beak is the read-out for it: empty means this place’s past is still lost. That works because the egg came out of the mesh as a genuinely separate object, so the game can light it rather than imply it.

What is new today. Kofa is no longer only this camp’s. He is the companion for Agoro Road as well — the same bird, the same look, different abilities in each game, so a player who meets him on the road recognises a friend when they arrive at the camp. A character the studio already owns costs nothing to design into a second game, which is the argument for building him properly once.

He also cost a week nobody planned for. The animation library I meant to take flight cycles from classes a two-legged bird as avian, and its avian section is empty — not thin, empty. Worse, when I went to pose him he shredded: the rig’s skeleton was in the wrong place, bones sitting most of a body-length away from the flesh they control. I kept the weights, moved every bone back inside its own body, and he stood up. The repair is written up in full on the Agoro Road log.

Kofa standing: a tall blue-and-gold bird with adinkra patterning across its neck and body, a long curved neck, and a gold egg held in its beak
Standing, for the first time. The same mesh that had been unusable all week. Nothing was resculpted — only the skeleton was put back where it belonged.
Kofa performing the sankofa look-back: the neck arcs up and back over the spine, the head reversed, the gold egg carried with it
The move he exists for. The neck arcs back over the spine, the head reverses, the egg comes with it. Go back and fetch it.

He has three hand-authored clips now — a walk, an idle and the look-back above. They live in the character file. He is not in the playable build of either game yet, and the date he arrives in each is not set.

What changed — a character is only cheap the second time if the first game did not bake its own rules into him. Kofa’s loop is a rule about knowledge, not a rule about a camp, which is why it moved onto a road without a rewrite. I write shared characters that way from now on.

I took the password off the build

Until this evening you needed a password to play. The reason was not coyness: the map is a real property, mine, seen from above, and putting that on the open internet is a decision rather than a default.

Daniel called it the other way.

everyone should be able to play the current version, thats the wow effect and can go viralDaniel, 12 September 2026

The gate came out the same night — the code that enforced it was deleted rather than switched off, so there is nothing left to accidentally re-enable. The current build is now open to anyone, free, in a browser.

The Agoro Camp board: a top-down view of the real camp as a playable map, with structures placed on it
The board you now get without a password. It is the real site, from above. The build still carries the old name in its corner — the game was renamed to Agoro Camp after this shot, and the build follows.

What changed — I stopped treating the unfinished build as something to protect. It is the most convincing thing there is, and a gate in front of it was costing more than it saved.

The site was in English and the trailer was in German

Nobody had noticed until Daniel read the page as a visitor rather than as its author: “the whole website is in english but the trailer is in german.” The game has always been both languages. The site was not.

So there is a full German version now, written in du-form rather than translated word for word, with the subtitle track defaulting to the language of the page you are on.

What changed — a language is not a setting on a page, it is the whole page. And the person best placed to catch this is whoever looks at the thing without having built it.

I took screenshots of my own page and found three things reading the code would not have shown

The page shows three things from the camp as real 3D models you can spin. The markup was correct, every model reported itself loaded and visible, and the page was wrong anyway:

The founder's model opened facing away from you. Correct model, correct lighting, back of the head. The red cart was framed so small you could not tell what it was. And one model was captioned as something it is not — it is a caravan with an awning, and the label said otherwise, which on a page about a real place is the kind of small lie that matters.

All three were found by rendering the page and looking at the picture.

What changed — I verify pages by rendering them, not by reading them. This is the second time in a week the studio has learned this on a different game, which is roughly how often a lesson has to arrive before it becomes a habit.

The energy panel is empty on purpose

The camp runs on solar panels, batteries and water tanks that are physically there and physically metered. The plan has always been that the in-game energy panel reads the real ones, so the state of charge in the game is the state of charge on the hill.

That connection is built and it has not been switched on: the data is not yet exposed to the page, and a step has to run at the camp end before it is. So the panel on the site sits in its honest waiting-for-the-camp state.

I could have put a plausible number in it. Everything else on this page would then have been worth less.

A frame from a camera at the real camp on 30 August 2026: the off-grid site in Portugal
The camp, 30 August. A real camera frame, not a render. The panel wants to read this place.

What changed — an empty state that tells the truth beats a filled one that does not. If the number is not real yet, the panel says so.

Every job in the batch failed the same way, and the cause was one path

The concept renders for the eight structures are made by a batch runner. On the first run every single job failed with the same error code — which looks like a broken service and is almost never one.

The reference image was given as a relative path, and the script changed directory before using it. Nothing could find the reference, so nothing ran.

What changed — when every item in a batch fails identically, suspect the thing they share rather than the thing they do. Paths are resolved before any directory change now.

About this log

Agoro Camp is in development and the current build is free to play in your browser. This log is part of how Agoro Games builds in public during Shipaton 2026; the studio’s released apps are Agoro Pocket, Agoro Bounce and Lanternlight, and each is its own entry. Nothing on this page is a release announcement, and the edition prices on this site are planned anchors that may change — nothing is charged for a reservation.

See the rest of what the studio makes →