Skip to content
Nicola Sabaini

Projects

HiddenIndexEngine

An engine and visual editor for hidden-object games. One project, three targets: Windows, web and Android. With a scatterer that understands what camouflage means.

Kind
Engine
Status
In development
Language
Python 3.12
Targets
Windows · Web · Android
Catalogue
1600+ objects
Languages
5
GitHub stars
1
Malonno Survivors, Formis scene: the list of objects to find, the hints, the timer and the score

An open-source engine for the hidden-object genre, with the visual editor included. Scenes, objects, catalogue, tags, translations and builds all happen in one window: there is no JSON to hand-write.

The same scene.json runs in three places — a Windows executable, a static HTML5 site, an Android APK — and each is one click away from the project browser.

The scatterer that looks at the result

The part worth talking about is how objects get placed.

Scattering them at random is easy and produces stupid scenes: half the objects land on a background that gives them away instantly, the other half where nobody will ever find them. Here placement is camouflage-aware: the engine scores the rendered result in Lab colour space and puts the object where it genuinely blends in.

Lab is not an affectation. In RGB two numerically close colours can look completely different; Lab is built so that the distance between two values resembles how different an eye sees them. If you want to measure “how much does this object disappear against this background”, that is the space where the measurement means something.

Scenes that do not repeat

On every run the engine re-decides which objects count as goals, and it can swap the entire object layer. The same scene never plays the same way twice — which in this genre is the difference between a game and an album you flip through once.

The rest of the kit

Over 1,600 ready objects in three styles — photoreal, line art, cartoon — filterable by style and tag. Minigames as plugins: sudoku, spot the difference, asteroids, centipede, tetran, tower, pong, slot machine, arcade — and you add your own without touching the core. Hints, speech bubbles, HUD, save games and a results screen, with five themed skins.

Five languages, with strings harvested automatically when a scene is saved: it is the same problem as in ExaWar, solved on the same principle — if harvesting is manual, sooner or later something gets left behind.

Status: pre-1.0, moving fast. Tested on Windows 10 and 11, Android validated on the emulator. Contributions welcome.