Last week, I made what is certainly my most popular video yet, which currently has over a thousand views. (That’s a lot for me. I typically get like, four.) In it, I asked a fairly simple question: in the game I am developing, when the player gets close enough to a certain object, the object moves toward them to be picked up.
Where should the code for this object “live” - on the object, or on the player?
There’s no objectively right answer, of course. You have a piece of code that needs to affect two game objects; the object, to move it to the player and delete it from the environment, and the player to receive the effect of the object. The code must live somewhere, but it doesn’t actually matter where.
From a programmatic perspective, the “objects” don’t exist anyway - they are just blobs of data in memory. The entire program is just one big blob of code and data, intermingled. “Make this data say that and that data say this” isn’t even a coherent idea, to the computer - it doesn’t know what an idea is. It just has a series of instructions that it executes blindly, in order. Any semblance of organisation is for the programmer on one side of the screen, and the user on the other. It’s an abstraction for the benefit of people. The computer does not give a shit.
But man, oh, man do people have Opinions about this question.
The most common such opinion is that neither the player nor the object should have the code; it should instead be added to a Secret Third Thing that manages everything from a central location. Don’t put the code into one of the existing objects; make a special new object to hold the code.
Usually, this is followed by a whole bunch of religious justification about why objects should not manage themselves, why a central authority is necessary to marshal resources, how to optimise everything in a way that makes sense for the game they’ve imagined in their head. And that game is typically a 3D open world game, not the top-down horde survival game I’m actually building.
At some point, they all mention how they’re handling this in their game. Which is, of course, not at all like my game - and in a couple of cases doesn’t even exist. They’re not building anything, they just have a Big Idea they’re going to build One Of These Days.
A lot of these people appear to be searching for validation. It’s tempting to blame this on participation trophy syndrome, but it wasn’t the kids doing that - it was the parents, frantically providing the validation they never got for things their children never did.
A lot of others seem to be searching for praise, which is subtly different; they apparently want to be told that they are brilliant and innovative thinkers who came up with a novel and superior solution. They tend to use a lot of big words and lengthy explanations.
Both groups, however, are engaged in what looks like “chasing the dragon” - the state of perpetual dissatisfaction when you got something great once, and you cannot seem to make it happen again. The term comes from addiction psychology, where most heroin addicts found that the first time they tried heroin was the greatest experience in their lives, but you can only try heroin for the first time once. Every time after that is, at best, just like the last time - but you can remember the last time, so there’s no surprise, no discovery.
You only get one first time.
I feel like an increasing proportion of the population got told once that they were good enough and smart enough and doggone it, people like them… and then it just never happened again. That they got to a point in their lives where nobody outside of themselves ever told them anything they did was good enough. They worked hard and did a good job and nobody cared.
One of the things we’re not really prepared for is that “work hard and do a good job” gets tougher as the years go by. A lot of us don’t seem to know what a “good job” even is. Jessica Price related this war story yesterday, apparently bringing it over from a previous post she made on Twitter.
Remembering that time I tweeted a thread about what we were interviewing for in game writers and the thing people got maddest about was "You need to demonstrate that you can think analytically about what makes a design decision in a game you're playing work or not work."
She goes on to relate how people were upset about this because not everyone can do that.
Well, yes. Not everyone can do this job. Only certain people with certain skills can do this job. And if you would like to have this job, you will need to demonstrate that you have those skills. That is how jobs work.
When you’re a kid, you get praised for things like pouring your own juice and cleaning your plate at supper. As you get older, praise comes from larger tasks, like mowing the lawn or taking out the garbage. And as an adult, praise largely comes from evidence of sustained effort. It’s like singing. A child is praised for singing at all; an adolescent, for singing on key; an adult, for hitting the high notes.
Of course many people can’t hit the high notes. That’s why it earns praise: because not everyone can do it. As an adult, you’re no longer praised for simply not fucking up.
There seem to be a lot of people who haven’t quite figured that out, and simply don’t understand why the praise has dried up when they didn’t do anything wrong. They just haven’t bothered to do anything right.