#5: Setting sail
Very long post today. I’m starting to see a trend emerge in these blogs…
Project update
Today marks the first day of my advanced diploma in computer game programming for 2024, and it also marks the first week of production on my script. I’ve been working on a development plan for this script for about 6 weeks now, and I’ve done it people, I’ve mathematised the production of art, and it feels great. I’m feeling very ready. I have a framework in place for:
the setting and the story milestones;
the emotional trajectory over the course of the story;
the themes that determine the content of the story;
the key questions the game should ask;
the key influences that will guide development; and
the boundaries that encapsulate the scope of the work.
I’m still sounding-out the way in which I record stuff in this blog, and a lot of what might otherwise go in here goes in my personal reflections, because they are my passing thoughts that stop by for a time, but are not directly related to the production of the work… but in any case, I’ve decided that they should go together, because one is usually inspired by the other.
Personal reflections - Creativity
I’m reflecting on the way that I channel my creativity, and if “mathematising the production of art” sounds like a weird and bureaucratic way to get arty to you (from the start of this blog), if your idea of art is unhinged creativity that wakes you at 2am, if it’s pulling your hair out looking at a blank page, slashing a canvas with a knife while screeching and cawing, or paintbrushes bleeding over the edge and onto the wall with no regard for the frame, then I suspect we have a different experience of letting creativity take hold. The truth is that uncertainty and unpredictability make me very uncomfortable, and I do not enjoy them. I believe that I manage them well through systematisation and order, and in fact that I would be less without them, because their presence is probably the single biggest driving force for creativity and problem solving in my life. What do I mean by that? I mean that whenever I find myself walking an uneven path in life, and I feel my fear and tension begin to rise, I stop, and I begin the act of levelling out and flattening that uneven path by methodically investigating it and coming to understand it. This is an intuitive experience for me - I never know how much information I’m going to need about a topic before I’ll be comfortable with it, just that I know I’ll feel it when I’m there. To be clear, I am afraid of unpredictability and uncertainty, but I can only master the fear each time it rises by looking directly at it and studying its face. I have developed quite a steely eye and a steady heart over the years.
So, what am I saying? I’m saying that if you feel that I am somehow taking away from the creative process with bureaucracy and planning, consider: Artistic inspiration, as different as it is for all of us, is a string of thoughts that flutters through consciousness for an arbitrary period of time. You can no more hold onto that thought than you can prevent it arising in the first place - thoughts appear and disappear, ad infinitum, and there’s nothing you can do about that. What you can do, though, is make a concerted effort to encourage a certain type of thinking, you can create the setting and circumstances in which you feel the most creative and productive. For me, that’s if I am low-stress, I can see a target in front of me, I can visualise a path from where I am to where I am going, and I understand what a good effect on that target will look and feel like. Once I know those things I will not miss, and I will destroy the target, however defined, but it absolutely will have a definition.
I find myself considering my group project at AIE between October-December 2023. As the programmers, my team was always more than welcome to respectfully volunteer ideas and suggestions for the game design, the art, and so on, but our role was principally the development and implementation of the vision of the designers. I could have remained in my lane for the entire process and volunteered nothing creatively, simply being content with creating what was asked, but by creating the conditions for my brain to be relaxed and calm, my thoughts were free to simply dance around the maypole without stress, and so would regularly wander into places that were creative and interesting, allowing me to participate in the disciplines of others where they felt it elevated the value of the game.
Don’t doubt the effectiveness of finding your own strategy for creativity. Find what works for you, and go for it. Stare at your fears and know their faces.
Games I played this past week
Firewatch (“a single-player first-person mystery set in the Wyoming wilderness, where your only emotional lifeline is the person on the other end of a handheld radio“)
This game slugged me in the heart within about 3 minutes of starting, and then about once an hour for its 6 hours play time. I thought I knew what this game was about 4 separate times, and each time it proved me wrong, but in such a way that the story became richer and more full. It's rare to find such an emotive combination of themes executed so well - is this a story about friendship in the face of isolation? Is it a story about love and its preconditions, or lack of them? Is it about having a relaxing time on a riverbank? Is it about complex misunderstandings because of the way we perceive the world? It is all of these things, and more.
Bonus point: I looked up the developers of Firewatch immediately after I finished playing it to see what else they could offer me, and I found this absolutely surreal snippet from their upcoming game In the Valley of the Gods:
The Stanley Parable (“The Stanley Parable is a first person exploration game. You will play as Stanley, and you will not play as Stanley. You will follow a story, you will not follow a story. You will have a choice, you will have no choice. The game will end, the game will never end.“)
The Stanley parable is a charming and delicious morsel of an experience that you could pick up or put down for as long as you like. Come for the curious premise, stay for the fleeting contemplations about life and the split between subjectivity/objectivity.
Dear Esther (“Dear Esther immerses you in a stunningly realised world, a remote and desolate island somewhere in the outer Hebrides. As you step forwards, a voice begins to read fragments of a letter: 'Dear Esther...' - and so begins a journey through one of the most original first-person games of recent years.“)
I feel like Dear Esther is a Rorscach test of a game; what you experience during the playing is revealing of the thoughts and feelings you unwittingly brought to it, what you interpreted from its story. For me, Dear Esther is multimedia playable poetry. Playing it was like gliding up and down smooth hills between symbolic mystery and banal reality, over and over, an audiovisual representation of the kinds of thoughts and feelings that most of us would struggle to name or articulate, and in so doing, demonstrate that to put a name to such things requires appeals to both the every day and the supernatural. To be privy to the inner dialogue, the secret and piercing feelings of a total stranger, shared completely and freely, was an intimate experience. Hope, resignation, wonder, fact and fiction are all churned together in unknown proportionalities to paint a picture of the kind of love that you might yearn for all your life, until, finding it, the accompanying clarity of thought and feeling renders you incapable of discerning real life from fantasy. What do you do with a life so affected by love, and its loss, that the barrier between here and there, then and now, gives way to a single moment in which everything before and after it might as well be an illusion, a stage set just so, for both your rise and your fall?
Extracurricular game dev update
This past week I kicked off the first of 2 extracurricular game dev courses, and it has been absolutely remarkable. This one, “Finish Great Games That Sell” by Pro Indie Dev, focuses largely on wisening up one’s development process, but also a big slice is about marketing, which I am enormously interested in. I signed up to this course on the strength of the delivery from Gabe, the business owner, in a free, 3-hour masterclass. His depth of knowledge into the more esoteric aspects of game development that a programming lecturer cannot teach me (such as marketing) was like deep magic to me. More than marketing as a ‘dirty word’ about selling things to people, this is marketing as game design - and not persuading people to buy your thing with psychological manipulation, but actually changing your game in ways that will make it better deliver on its promise to the buyer. For me, this is absolutely paramount, because the whole point of making The Vessel of Argeus is to persuade a player to expand their heart, to grow in compassion and kindness to others, and I will do anything, and learn any skill, in the pursuit of achieving that. Why wouldn’t I? What higher calling could there be, what better purpose for a videogame, or any art?
Textbook learnings
Unreal Engine 5 RPG Development
This week I’ve read the first 3 chapters of my first extracurricular textbook for the year, recommended to me by Pacen Life Games at PAX 2023, the creator of Red Echo. The first chapters have been a basic introduction to Unreal Engine 5, a primer on the C++ language (all of which I “know” but I love a good chapter of reminders, always helpful!), and another primer on object-oriented programming (again, all of which I’ve known so far, but I will never say no to more reminders, especially when I only have 1 year of experience in software development). For my non-programmer friends and loved ones, object-oriented programming is one way in which you can create computer programs. I find that it helps me to sound out my understanding of a topic by writing about it, so I fancy a bit of a ramble now.
Software development is rather like magic - not in the supernatural sense, but in the smoke-and-mirrors sense. Consider that the screen you use to access everything from text messages to high-quality video and audio… is flat. Well, it might have a curve of a few degrees these days, but by and large, it’s flat, with incredibly shallow depth, yet it conjures the most elaborate scenes you can imagine for your entertainment, employment, and fascination. If you’re like me, footage of the deep sea will cause your head to reel back and your gut to rise into your mouth. Right now, you could switch over to Netflix and your little rectangle of glass and plastic could deliver you a horror movie that may stay with you for the rest of your life. These acknowledgements are a good place to start when considering that everything 3D computer software does is illusory.
Let’s be very clear - illusions are neither to be sneezed at nor to be derided, but the fact remains, software is a clever arrangement of electrical pulses that your brain interprets as information. If you play games then most of the places you’ve been, things you’ve seen, people you’ve loved, lost, or hated in those games, don’t exist in the physical world, and yet that information may be as real to you as your own family. Much like movies, videogames are so persuasive to the brain that they fool the cognitive boundaries of your perception, and anyone who has ever fallen in love with a character from a film or a book should not be the least bit surprised to discover that other people fall in love with characters from videogames. Software produces reliable, repeatable hallucinations which are no less powerful because of it; As I feel it, art is just a dream that you can have while you’re awake.
Once a person starts poking around in software development, I think everyone discovers that these very clever and convincing illusions are concoctions made of pinhole cameras and shadow-puppets that you have to manipulate, backwards and upside-down. If you’re like me, this is a watershed moment that feels a bit like spooky knowledge, and you may struggle to connect the dots between what you see as a consumer and what you have to construct as a programmer. At first blush, you might even feel that the idea that software development follows anything like an underlying unified pattern of relationships turns out, unfortunately, to be bullshit. The good news is that, as it also turns out, this permits computers to do things humans couldn’t do in a trillion years. You didn’t think I was going to come down on the side of the humans, did you? Computers are fricking awesome. Down with intuition, up with a hojillion calculations per second.
So, what am I talking about and why the long preamble? What has this got to do with object-oriented programming? Well, the more convincing an illusion you want to make, the more thoroughly it must fool the brain. A photorealistic painting must appear to be practically identical to reality before it can be fairly included in the genre, and that’s because to be convincing, it must be such an excellent model of the real world that our brains can’t tell the difference. In most instances, software seeks to model the real world in one way or another too, because that tends to make it more useful to humans, whether for statistical models, digital photography, scientific research, 3D modelling, banking, or countless other practical applications.
Object-oriented programming mimics a parent-child relationship, including heritability between ‘generations’ of code that share that relationship. In this way, the characteristics and functionalities of a parent can be inherited by the children, either wholesale or selectively. That’s right, this has all been a ruse to arrive at software eugenics. We’re through the looking glass here, people. Before you ask, no, this doesn’t have anything to do with AI or killer robots, it’s much more abstract than that - use of terms like parent, child, generation, etc, are conceptual and exist only to increase the understandability of the system to humans in their pursuit of making software which is more intuitive to work with. You might be working with cubes, or triangles that use this pattern, or you might be working with “objects” that have no physical body at all, they might be accounting concepts, engineering principles, or so on and so forth for any application that a human being might wish to create. As software developers, we are magicians in search of the greatest illusions of all. Sometimes, that means completely ignoring the principles of reality, and other times, it means trying to mimic their theories exactly. Go figure.