For a long time I was shortening the word Entity to Thing, even though it’s mostly shorter by syllable count. I couldn’t find a better word at first, but recently for some reason I looked again. The nub of the story is that “nub” also means “the essence of something”. A nub becomes a bud that either branches off, or blooms into a leaf or fruit or flower.
This fit in perfectly with the naming style I was already using. Every Nub has a Genus property, and you use Flock.Spawn(Genus.Whatever) to add a new object to the game world. The Flock.Spawn function finds a dead Nub and revives it. Flock.Exterminate(Genus.Whatever) needs no explanation.
I’m not using an Entity-Component System for JEOZ now, perhaps I’ll add one in the future. But I’m not planning on making games that get big enough to require one, and even if I do make one, I might not do it right. I want to study the concept longer and learn from other developers first.
If JEOZ ever has an ECS style system I’ll be referring to the Components as Gears or Cogs. I love using words that are short, obvious, and unique. Putting a Type property on an Entity sounds too technical, but more importantly conflicts with Dot Net’s use of the word Type. A Nub’s Genus property is blatantly obvious. An Entity with Components has Colors with Red Green Blue Alpha Components, but a Nub has Gears or Cogs instead of Components. At the same time I wouldn’t call the Color property Shade just to make it unique, as that would conflict with OpenGL’s use of the word Shader.
Those are some odd examples, but I think you get the point. It’s worth the effort to shorten a name even if it means changing something you’ve been used to for a long time. It’s like syntax errors in the brain at first. I was using the word Region for User Interface objects, until thesaurus found me the word Zone.
I can’t find any other examples from my Engine. I’d like to know if anyone has done this in their games, or if this post inspires anyone to do something similar. Or if you think this is a bad idea.
It’s not about laziness and not wanting to type too much, I mean I don’t use abbreviations, and I type pretty fast, and we have autocomplete. But starting with shorter words means less to read, and more code fits on the screen. As always, different keystrokes for different folks.