Blood, Sweat, and Kremlinks

Fall of 2013, America was a storm of marriage desanctification, selfies, and Grumpy Cat. Somehow I stopped twerking to “What Does The Fox Say?” long enough to have an idea for a game – a top-down twin-stick shooter. At that point HTML5’s canvas element had recently gained support in all major browsers. Adobe had dropped flash support for Linux and Android, and the writing was on the wall for other operating systems. As someone that had previously written his games in Flash and ActionScript, I was at a crossroads. I’d been writing ActionScript since the Macromedia days, and while I was also reasonably competent with JavaScript for web UI/UX, the process of using it to draw and animate on an HTML5 canvas was still “black magic” to me. A few HTML5 canvas/JavaScript game engines had sprung up already, but I’m the kind of person that really likes to understand things from the ground up. I made the decision to write my engine from scratch.

I’d written engines from scratch before, but they were generally for smaller, less ambitious games. However, my thinking was it’s a top-down scrolling 2d tile-based engine, how hard can it be? I envisioned gameplay similar to one of my SNES favorites, Super Smash TV. Rather than Smash TV’s chain of mostly-identical square rooms, though, I wanted a series of maps, and enemies with real pathing AI. Not just open arenas, but alleys and corridors; maps that would’ve been at home in 2.5d games like Wolfenstein or Doom but in a top-down two-stick universe. It would’ve been a linear, story-driven thing. Science fiction film noir – a space-faring bounty hunter that gets drawn into a web of murder, police corruption, and mad science. Shades of Blade Runner and Shadowrun but with blocky pixel graphics reminiscent of the 16-bit era. A whole alternate history reality grew out around it – a universe where the cold war went hot in the mid-80s. The name “Fistful of Kremlinks” is an obvious homage to Sergio Leone, owing to space western influences like Firefly. A “kremlink” was a blockchain currency developed in the former Soviet Union in the 2030’s by a mysterious, mostly-anonymous engineer. If you’re asking “how would you end up with a fistful of virtual currency?”, consider your character is a high-end assassin and many affluent people in this universe embed their private crypto keys on subcutaneous chips – a mental picture begins to form that gives the phrase “blood money” new depth. Each map would involve gunning your way through the baddies to uncover another piece of the story that would lead to the next location. In concept, it would’ve been my magnum opus. In reality, it was never finished.

Continue reading “Blood, Sweat, and Kremlinks”

Jstris Custom Skin – subDude

I’ve always enjoyed Tetris, and over the years across various platforms I’ve gotten fairly respectable at it. I have a distinct memory of being roughly five years old, my older cousins playing Tetris on an NES, and refusing to let me join because I was “too young”. I wonder sometimes if I initially took it up out of spite in response. As various consoles and cartridges came and went I’ve had a lot of incarnations of Tetris, and then several years ago, when Facebook was a mecca of bullshitty browser-based micro-transactional time-gated friend-harassing casual games, I found Tetris Online, Inc’s Tetris Friends. In what seemed like a fairly short period of time, I hit that point where, like the tragic man too good at fighting game to enjoy playing against friends but not good enough to play competitively, everyone I knew refused to play with me anymore. I do my best to be a gracious winner, but in a few weeks’ time I was down to doing 40 line sprints in about 1:15 (at the turn of the century that would’ve been a world-record time, but by 2009 your world-class players were down to 25-30 seconds with custom clients) and once the novelty of watching my replays wore off (a friend once came over and asked me to play a game in person, so they could watch my hands – I felt a little bit flattered and a little bit like a sideshow attraction), it understandably made me an unappealing opponent. I wish I’d thought to screencap my records back then – I think my very best time was 0:58 – but I foolishly assumed Tetris Friends would be around forever. I do remember on the global leaderboards, though, I was in the top 1% – probably because players any more serious than me were busy with Lockjaw and later NullpoMino, although I didn’t know anything about those at the time. Tetris Friends’ successor, Tetris Battle, never really managed to hold my attention, and when Tetris Friends was removed from Facebook in 2012 I stopped playing.

I’m sure in the interim I’ve played a game here and there on my venerable old Gameboy Advance, but I’ve discovered that, like a lot of games, I really prefer playing Tetris with a computer keyboard. In October of 2019, in the mood for a PC version of Tetris, I wondered what had happened to Tetris Friends. I was disappointed to find out Tetris Online, Inc had ceased all operations just a few months before – Tetris Friends had been permanently shuttered. In looking for a replacement, I discovered Jstris, a browser-based unofficial Tetris client built in Javascript and HTML5. It’s my first client with things like customizable auto-repeat, it’s snappy and lightweight, and it has a very active community (including some gotdam eight-handed six-fingered speed-junkie radioactive spider mutants especially talented players with 16-second sprint times). Over the last few months I’ve been whittling my times down again – I’m usually right around 1:30 now, but I’ve managed to get a few 2-second-per-line games. I think I’m about as fast as I’m going to get without taking the time to really perfect my finesse and movement strategy – but I’ll be honest, I don’t know that I’ve got the desire and discipline to do that. I’m not certain professional-level competitive Tetris is exactly what I want to dedicate my life to. But even with only my enthusiast-level skills, I feel like I’ve been reaping some benefits from the recent rekindling of interest.

A concept that’s entered the collective awareness by way of Buddhist philosophy is the xinyuan, or “monkey mind”. The idea that there is a part of our consciousness that is restless, flighty. It swings from one thing to another the way a monkey swings through branches. It chatters endlessly, distracting us from more meaningful thought. Buddhist wisdom teaches that to be at peace you’ve got to learn to train this mind-monkey – not cage it, that just makes the chattering worse – but guide it. Meditation is giving the monkey something shiny to focus on, assigning it a task to do, so that it stops aimlessly hopping from one trivial thing to another. Or at least that’s how I understand it – you want a monk, go to Tibet.

I became aware of the mind-monkey in conjunction with learning about mindfulness. It may be unconventional, but returning to Tetris now after having practiced mindfulness meditation over the last few years makes me realize that a game of Tetris often feels very similar to a meditative state. According to a recent article in the Wall Street Journal, I’m not the only one. At least one study would seem to corroborate that Tetris has a stress-relieving effect, and it may even be an effective method for managing the symptoms of PTSD.

It’s not an effect I’ve noticed consistently with any other video game. It’s different than the immersive nature of a really engrossing game – that makes you almost oblivious to your surroundings, it takes you out of your own body and mind to an extent. In contrast, with this “Tetris-induced meditation” (medi-tet-ion?) you’re very much still present, but occupied. I mentioned when I wrote about my Soundscape mod for World of Warcraft that the repetitive nature of grinding or farming trivial content could approach something nigh-meditative at times, but I think in a game like that there’s too many distractions for it to happen often. Which, don’t get me wrong, isn’t a bad thing – it’d be boring otherwise, and games are entertainment, not some metaphysical practice or neurochemical aid. But that’s maybe part of the magic of Tetris – the gameplay is repetitive in concept, but endlessly variable. It requires continual, rapid-fire, split-second flashes of problem-solving but these happen so quickly (at least once you’re at a point you’re doing multiple piece placements per second) it feels almost reflexive. As someone that experiences it regularly, that meditative experience feels like something to do with the perpetual state of not-quite-conscious thought. Or at least that’s my guess; you want a neuroscientist, go to University of California at Irvine’s Department of Psychiatry and Human Behavior in 1991 where Richard Haier scanned the brains of Tetris players and found out Tetris whips up all kinds of neat neurojuju – it may even make you smarter.

Continue reading “Jstris Custom Skin – subDude”

Faster Than Light

There are some games, especially those with online multiplayer, where being involved at a specific point in time is an important part of the experience. Sometimes it’s engineered that way – most MMOs have seasons or expansions where older content is regularly removed or otherwise deprecated. Others it’s by virtue of the community – while I’ve heard Pokemon Go still has an active playerbase and has made significant technical and gameplay improvements since launch, there’s no way now to recapture the magic of Summer 2016 unless you were there.

In most cases, though, gaming-on-a-lag has more benefits than downsides. Besides the fiscal advantages outlined in the relevant XKCD, there’s also a bit of Darwinism in place. In some ways it’s the “Never Preorder” argument carried to its logical conclusion – a few days after launch you’ll know whether or not a game met pre-release expectations, but in a few years you’ll also know whether or not it has staying power and replayability. And you’ll know if the developer is committed to supporting it long-term.

For the record, I’m not really a strict adherent to the “No Preorders Ever” philosophy. I do prefer transparency about what I’m actually paying for, though. When I bought Minecraft back in 2010, I liked that there was a stable, free (albeit limited) version that I could play to my heart’s content (there still is, actually), and while if I wanted the latest features of InfDev I had to pay, I liked that it was obvious what I was getting was a work-in-progress from an indie dev with no promises as to project milestones. The deal was I paid a reduced price to play the unfinished version, and in return for being an early adopter, I’d have access to the final version when – and if – it ever released. I’m a lot more content to pay ten dollars for something I know is a gamble than sixty bucks for something that’s marketed as a finished product, but isn’t one. Similarly, Faster Than Light pinged my radar back in 2012 for having a Kickstarter with a low buy-in and the option to participate in the beta. Like any Kickstarter, there were no guarantees, but they were honest about what you were getting in return for your money. However, while I love sci-fi and roguelikes, I’ve never been very proficient at real-time strategy games. Watching me play Starcraft is like watching a chimpanzee play the piano. I kept an eye on it, though; it was well-received at launch, and I was impressed with the developers’ level of commitment. They released an expansion (Advanced Edition) two years later at no additional charge, and they were still actively supporting the game with updates and patches as recently as 2018. While from a business practices standpoint I found that to be exemplary, I still wasn’t sure the game was going to be for me.

In the twilight zone of meaningless time between Christmas and New Year’s last year, Faster Than Light went on sale for free. Wrapping up the 2010’s, many people were calling it one of the best games of the decade, and at that price I had nothing to lose. I claimed my copy and eagerly set out across the galaxy.

Continue reading “Faster Than Light”

Doom RPG

Everything with a screen should run Doom.

Statement offered without qualification or disclaimer. On December 23rd, 1997, Christmas came early, as John Carmack released the source code for the original Doom engine, free for non-commercial use. The game assets (textures, sprites, levels) weren’t released into the public domain, but paired with a free-to-distribute copy of the shareware .WAD file, you can legally port the engine and play the first episode of Doom on any device your heart so desires. I feel strongly that should be every device on which it’s even remotely feasible to do so. I’m not alone – in the last 20-or-so years, besides the obvious choices like iPods and Nintendo DSes, ingenious individuals have made Doom run on printers, digital cameras, thermostats, ATM machines, toasters* – it’s truly a great time to be alive.

Saturday Morning Breakfast Cereal /

The “It runs Doom” demi-meme is well documented in other places, and I’m not looking to rehash all that, but I think it’s important to establish why, in 2007, it was so important to me that my Samsung SCH-A930 clamshell phone ran Doom (because A: everything with a screen should run Doom, and B: it had a screen).

Continue reading “Doom RPG”