I finished making the Prometheus level/version/minigame of Let’s Play: Ancient Greek Punishment: CPU Edition the other day, which means I’ve now had a chance to go through various of the required conceptual grapplings involved in this particular edition of the series. As per usual, my assumptions going in have been kind of rejected/realigned thanks to the realities of actually sitting down and building the game itself – perhaps the most important argument for making games a reality even if they just seem like a ‘funny idea’ or whatever. You may not entirely know what you’re doing. I rarely do.
Going into this game my idea was that the code would be more or less identical to the original game, except that I would disable user input and instead would have computer code (running on some kind of timer) triggering the required inputs – generally speaking this would mean the computer alternately triggering keypress events for ‘g’ and ‘h’ over and over again. It turned out, however (for me at least), that simulating keypresses (or mouse clicks) didn’t actually work out (fast enough) for me. I struggled with it for while, doing the usual trawling of the internet, but never found a satisfactory approach.
But the very fact it wasn’t working kind of fits into the narrative of the game, I guess. If I can’t get the computer to do things that way, then that’s simply not how the computer would play the game. It’s kind of a truism. Rejecting the kind of human-centric idea of the computer having to trigger keyboard input meant I could rethink how a computer might interact with the game, at which point it seemed suddenly very clear that the computer would simply call a function to cause Prometheus to struggle. Why would it bother to go a circuitous route? Above I called the method struggle() but now I’m calling it INPUT() for sheer computeriness.
Perhaps most importantly, when I run the game and watch the little Prometheus struggling bravely (forever), it seems to feel like something. It’s weird to look at, knowing the the code is both generating the situation and the response to the situation at the same time, kind of eery and wrong. Which is great, obviously.
So: so far so good and thanks for asking.
So v r 3 isn’t strictly speaking finished, but it’s at least out with a couple of people for testing (yes, it’s with my parents) for now. Restless guy that I am, I started working on a new thing yesterday because otherwise my self-worth would pour out of my eyes as bitter tears. The new thing is yet another iteration on my exciting franchise Let’s Play: Ancient Greek Punishment. I actually kind of like the vague intimation with all these follow-up versions that I’m somehow “chasing the magic” of the first game, which was really “successful” in terms of traffic and attention. I don’t think I am, but maybe I am.
The new version uses the format to explore a particular extreme, which is the idea of a game you don’t even get to play – instead the computer plays the game itself. It’s related to Best Chess in a way, with the player in the role of observer (and admirer?) rather than active participant, but it cuts out the player entirely – you don’t even make a move. It also summons to my mind Jesper Juul’s writing on Zero-Player Games, though I haven’t read that recently enough to be able to comment on resonances between this game and Juul’s thoughts (I’m sure they’ll be there, and I’ll re-read the paper sometime soon I swear). So the setup is, to be clear, we have a game that is more or less identical to the original (in terms of the code and its possibilities), but instead of player input triggering things in the game (like Prometheus’ writhing), the computer triggers those aspects itself as well.
That raises a few different things to think about, and I will try to write something about those things next week. I can’t be bothered right now, but rest assured it’s going to be super interesting when I get to it. This is just a project announcement. Consider yourselves warned.