Assets, Tags & Systems
Nereu uses what we call the ATS framework. It's the way you define how your assets behave in your games — and it's three letters because it's three ideas.
A — Asset. Everything in Nereu is an asset. Think of it as an object that has a name and a position in space. Internally it also carries other data that lets Nereu reference it, but that's the whole starting point: an asset just is. It renders, it sits somewhere, and it does nothing at all until you say otherwise.
T — Tags. You describe an asset's behavior using tags. Think of this as a way of telling Nereu what things are: "my character is a robot that can fly and shoot lasers." In tags, that character is [Character] [Robot] [Fly] [Shoots]. Some tags say what a thing is (a character, a robot); others say what it can do (fly, shoot). A laser would be another asset, with its own tags.
S — Systems. Systems are what give life to your assets. A System is a pre-defined piece of code, written once, that knows how to do one thing — flying, collecting, chasing, shooting. You never see or edit a System directly; a tag brings its System with it. Add [Fly] to the robot and the flying System starts handling that robot; add it to a bird and the same System — the same code, written once — handles the bird too. What keeps tags from combining into nonsense isn't the System: tags carry their own small rules ("needs", "conflicts with"), so [Fly] can refuse to sit on a [Vehicle] before any code ever runs.
That's it — that's the core idea. Assets are the things, tags are the words, and Systems are the code the words summon.
(ats-three-letters)