Saturday, September 4, 2021

new Quake map: Tell Me It's Raining

This post spoils what happens in my Quake map. If you care about that, then you should play it first.

NOTE: there are reports that my map crashes FTE Quake, so make sure you use Quakespasm or vkQuake to play. Sorry about that.

"Tell Me It's Raining" is my fifth released Quake single player map, part of the Alkaline Jam where we all made sci-themed "base" maps with a mod kit called Alkaline.

It uses the Makkon sci-fi themed textures as showcased in the stunning Alkaline start hub map -- a major inspiration for this map and I assume other maps in this pack as well. I was also inspired by the Centre Pompidou's copious colorful piping and vast industrial scaffolding. I wanted big chunky shapes draped in warm colors, continuing my tendency to make big sunny Quake maps.

I generally like how the map turned out, but I think I tried to do too much complicated stuff in this one, and miscalculated how players would react.

Wednesday, August 25, 2021

"Quake Renaissance" for Rock Paper Shotgun

For Rock Paper Shotgun, I recently wrote a three-part series "Quake Renaissance".

Part 1 is an industry history of Quake's cursed development at id Software, Part 2 is a primer to 25 years of Quake community modding, and lastly Part 3 is a how-to guide for getting into Quake and enjoying its mods.

This series had some goals:

Tuesday, July 6, 2021

We Dwell in Possibility as queer gardening simulation

all drawings by Eleanor Davis

"We Dwell in Possibility" (WeDIP) is a new queer gardening simulation game about planting bodies and ideas, and watching them grow into a kinetic landscape. You can currently play it in your browser on the Manchester International Festival's (MIF's) "Virtual Factory" website. The game should take about 5-10 minutes to play.

It was made over several months in collaboration with world-famous illustrator (+ co-designer) Eleanor Davis and Manchester-based rockstar musician aya as a commission for MIF. (Also shout-outs to illustrator Sophia Foster-Dimino and sound designer Andy Grier for their incredible work!)

Some people may be familiar with my past work: uncanny CG beefcake sex games that toy with hardcore gamer aesthetics, which only run on laptop / desktop computers. For the longest time, I've wanted to make a gay mobile game, but I was unsure how to get my queer politics past Apple and Google's anti-sexuality censors. It's impossible to get anything on a phone without their long withheld permission... unless... I made a browser game? 

The history of browser games celebrates the open internet that exists beyond Silicon Valley's sterilized closed garden. However, the photorealistic 3D graphics of my past games are too heavy and slow for a mobile browser, so I need to make a 2D game even though I've neglected my 2D visual skills. Fortunately, MIF's support has made my creative collaborations not only possible, but enjoyable.

NOTE: this post "spoils" much of what happens in the game, so proceed at your own risk.

Tuesday, June 22, 2021

new Quake map: Daughter Drink This Water

My fourth released Quake single player map "Daughter Drink This Water" is now out, as part of a community map jam pack called Sinister625 -- where we all made maps that used only 6 textures, included 2 "surprises" (anything more interesting than monsters spawning), and had only 5 monster types, all in celebration of Quake's 25th anniversary this June.

HOW TO PLAY THE MAP PACK

1. Follow this guide to acquiring Quake and a suitable source port (aka game engine) or try the Quakestarter: The Quake Singleplayer Starter Pack (Windows only). Note that Quakespasm-Spiked is currently regarded as the best engine among single player level designers; avoid DarkPlaces, which hasn't been maintained in years. Also note that it is technically possible to get all the necessary game files legally without buying Quake, but for perceived legal reasons, the community does not distribute everything together in a convenient package.

2. Download and unzip the Sinister625 mod, which will already have all the maps and assets configured. Put the /sinister625/ mod folder in the root of your Quake folder, next to the /id1/ folder.

3. Launch Quakespasm-Spiked (or whatever engine you're using) with the mod directory set to "sinister625"... There are two common ways to do this:

- download a launcher tool like Simple Quake Launcher

- OR create a shortcut with the command line parameter -game sinister625... so the full shortcut target line might read something like "C:/Program Files/.../quakespasm-spiked-win64.exe -game sinister625"

WARNING: the rest of this post are my design notes that spoil what happens in the map...

Wednesday, May 5, 2021

Open world RPG design notes from Enderal, a big long Skyrim mod

I'm playing a giant Skyrim "total conversion" mod called Enderal. It does a lot of interesting things but also less-than-good things. I'm told it's inspired a bit by the Gothic series, which I've never played, so maybe a lot of my observations are more about Gothic than Enderal? 

Be warned that some of the screenshots are a bit spoilery (e.g. there's a tropical biome!) and my notes are obviously going to spoil some of the game's structure, but all these spoilers are pretty vague and anyway I don't name any names.

Anyway, here's my notes... 

Wednesday, April 28, 2021

MIF commission "We Dwell in Possibility" coming in July 2021


Manchester International Festival (MIF) just announced my upcoming project "We Dwell in Possibility", a queer gardening crowd simulation in collaboration with illustrator Eleanor Davis, to be released in July 2021. It'll be free and playable in your web browser.

This commission has been interesting because I'm learning and trying a lot of work that I don't usually do, which came about as a cascading chain of design constraints:
  • Mobile. My gay games are all well-suited for a mobile format, but tech platforms are increasingly sex-phobic and will block my content from their stores. But if I target a mobile browser, they can't really stop me. (This is the real reason why Apple keeps their iOS browsers so slow and broken: an open internet threatens their control over everything.)
  • Not-Unity, in 2D. If I want it to run well in a mobile browser, then it probably has to avoid lots of flashy 3D. I usually work in Unity and don't get me wrong Unity's WebGL build target is a miracle, but still not quite miraculous enough, so that's why I'm learning HaxeFlixel for this project.
  • Collaboration. I usually prefer to work solo and in 3D, but my 2D art skills aren't very developed. So what if... this time... I didn't... do the graphics? I've admired Eleanor Davis' work for a while now, and I'm super excited to have her here. Also I secretly hope this is just the first of many video game projects she works on.
  • Producers. MIF does something a bit unusual for its commissions -- they provide producers, which is very common for live events and commercial games, but rare in an art games context. For this project, my fantastic producers Shanaz Gulzar and Steph Clarke have been key for figuring out what the heck we're making, and will be instrumental for bringing this to the finish line.
The two takeaways I want to emphasize here are:

(a) even experienced developers / artists are always learning and growing... and according to the artistic-industrial complex, I'm entering a phase known as "mid-career"? oh dear

(b) grants, commissions, and public arts funding are what gives people space and time to do that vital growth... meanwhile, commercial works and solo side projects often force us into our comfort zone, which can act as a ceiling on that growth

Wednesday, April 14, 2021

Email subscriptions have been migrated to Mailchimp

Some minor housekeeping here: the free blog-to-email (RSS-to-email) service I use, Feedburner, was acquired by Google some moons ago and thus it is now discontinuing various services... such as its core blog-to-email service. 

So I've been forced to move all email subscribers to Mailchimp instead, which offers its own free blog-to-email service that it too will likely arbitrarily discontinue someday.

But until that fateful day, enjoy the slightly more readable emails. I've tried to disable Mailchimp's creepy marketing tracking as much as possible, but sorry in advance for any inconvenience. If you want to unsubscribe, please use the "unsubscribe" link at the bottom of the email. 

Or if you're reading this post on the website (which is the vast majority of you) then you can choose to subscribe and have new blog posts sent to your email inbox instead. Emails will be rare, and I do not use your address for any other purpose / anyway I don't want to have to login to Mailchimp ever again.

Thanks for your attention and have a lovely day / night.

Friday, April 9, 2021

Getting started with HaxeFlixel in 2021

Warning: this is a fairly technical game developer-y post. If you came here for gay sex, I'm sorry.

For an upcoming project commission, I'm making a 2D game with crowd simulation and simple controls that works well on mobile browsers. (Reminder: for iOS, that means WebGL 1.0 and no WASM.) The engine should be able to render and simulate 200+ lightweight game objects -- frame-animated sprites with simple collision, no fancy physics or shaders.

Which game engine should I use to maximize ease of learning and compatibility, and manage hundreds of simple objects on-screen? Here was my thought process:

  • Unity WebGL: way too heavy and slow for mobile browsers, and maybe overkill for a no-physics 2D game anyway. (Although the Lil Nas X 3D twerking game runs surprisingly well on iOS's WebGL 1.0, I wonder how much they had to optimize?)
  • Unity Project Tiny: as far as I can tell, Project Tiny and its DOTS dependency is still in early development. The random caveats and various in-dev inconsistencies with regular Unity would also be frustrating. And as with many other Unity side projects, its long term future feels really hazy.
  • Construct: seems ok, and I think I could've gotten used to the visual block scripting, but overall the pricing and licensing feels weirdly restrictive. I have to pay to use more than 2 JS files? I have to pay to use more than 1 font, or make an animation more than 5 seconds long? These are some really bizarre artificial resource limits.
  • Phaser: seems popular enough with decent TypeScript support, but I want the option of building out to a native executable without a weird Electron wrapper or something. Their monetization model (free open source base but you pay for "premium plugins" and tools) is one of the more generous ways to go about this, I get it, but it still feels weird to me and reminds me of Construct.
  • Godot: I've wanted to try Godot for ages, but in the end I felt like I didn't have a good sense of what its HTML5 Web export could do + learning enough of the "Godot way" and GDScript would've taken a while. It's also in the middle of a big break between v3.0 and v4.0, and ideally I'd like to wait until like v4.2 to commit to learning it.
  • Heaps: promising and some people get great results with it, but maybe still too early in public lifecycle for a total newbie like me, with not enough samples / docs / robust official tutorials to learn from yet. If or when I do try out Heaps, I'll probably try using Deepnight's gameBase project template.

In the end, I chose to build this particular project with HaxeFlixel. This post details my early impressions, thoughts, confusion, advice, etc. with learning it.