Saturday, December 27, 2014

Notes on sex, consent, and intimacy in games and tech


This is adapted from the talk I gave at NYU Poly about my free spanking game Hurt Me Plenty. It kind of "spoils" it a little, if you care about that sort of thing, so I recommend you play it before reading this post... Or watch Pewdiepie play it, I guess.

You can imagine Hurt Me Plenty with its realistic representational graphics as a critique of the sex in contemporary Western video games with similar graphics, such as in Bioware RPG games (Mass Effects, Dragon Ages) which regularly feature "romance" storylines that climax in a cutscene of two virtual dolls glaring at each other for a few seconds, with cold unfeeling eyes devoid of human warmth, before tastefully fading to black. (My game hides your partner's face as much as possible.)

These kinds of representations are dangerous more for their structural properties: players understand these romances as puzzles to be solved where sex is the reward -- and the idea that sex is a puzzle reward feeds directly into a pick-up artist (PUA) culture built on manipulation and perceived entitlement to bodies. This is essentially the "kindness coins" critique, that the logic of training players to expect sex, based on a series of so-called strategic actions, is super gross and perpetuates damaging ways of thinking about relationships.

Instead, sex must be more than a node, it should be simulated as a complex system in itself. Sex must not be some sort of reward or foregone conclusion. What if we represented sex in games as an on-going process? What if we actually did sex?

Several games have explored this already:

Wednesday, December 10, 2014

Inspired a bit by Ian Bogost's glossary, here's one entry of my own:

"games journalism"
making sure the screenshots from the press releases in your inbox, or from GamesPress.com, were properly uploaded and linked; rarely involves reporting or fact-checking; see also "writing news"

"games criticism"
what games journalism ideally should've been

Friday, December 5, 2014

Radiator Blog: Fifth Year Anniversary


In keeping with tradition, I do a roundup of this blog's "notable posts" from this past year -- because this blog is now about five (5) years old, it is enrolling in kindergarten and learning how to write. Oh my, the time does fly! (All of the past years' roundups are available here.)

This year, I've posted about 50% less than last year. This is due to a few things: I've been busy teaching more often, I've been trying to work harder on my projects and de-emphasize my writing, and also I realize I've been "saving my material" to deliver at talks instead of "giving it away" on my blog. I don't like that I'm doing this, I've always thought I would be the type to discuss and share freely -- so next year, I'm going to try to post more reliably again... but still, it wasn't such a bad year:
  • I finished and released three games: Chandelier, Intimate Infinite, and Hurt Me Plenty.
  • My post as "A first-time IGF judge with IGF submission advice" in February got quite a few referrals from game development communities... and judging by this year's new batch of entries, a lot of people still need to look at this advice! I'll probably write another list of tips for next year, but this time closer to the submissions deadline so maybe a few more people will heed it.
  • "An alternate history of Flappy Bird" was me weighing in on the event that was Flappy Bird, back in February. I felt like (and I still do feel that) there was a strong racial current to the weird backlash and faux outrage. After all that speculation, I believe Dong Nguyen said in interviews that he withdrew Flappy Bird because he felt that distributing such an addictive game was unethical... which was an angle that occurred to approximately zero Western thinkpiece writers. I think my personal favorite Straight White Male angle was Charles Pratt's piece for Polygon, a formal analysis on how well Flappy Bird is tuned.
  • I took a few more stabs at procedural dialog / conversational NPC systems for Nostrum. Then I actually showed it at GaymerX2, and I had to disable the system at the last minute because it was still too abstract -- once again, I made the mistake of focusing on a system instead of a game experience. People seemed to like flying under rock arches though... which convinced me that I needed to re-think my approach to the game, and so Nostrum is currently on hold.
  • I am now one of (several hundred? maybe a thousand?) architecture critics with my words printed in a book, an expensive mega box-set organized by Rem Koolhaas. Of course, I haven't actually seen or touched these books in real-life, so they're still mostly imaginary to me, but I've totally seen the page proofs and they looked nice enough.
  • My snarky game engine review roundup fooled Jonathan Blow into following me on Twitter for a day or two, almost as if I were an authority on this stuff?...
  • Noserudake 2 is one of my favorite Japanese Unity web player games, and I riffed off that to write about the role of language in game dev, specifically how game development / our identities as game developers ("self-learning self-taught polymath nerd gods") is mediated by English being the "default language" of code and development, vs. other cultures and language users developing their own ways of game making.
  • Modding is still alive, it's just taking a different shape... I wrote about how Ryan Trawick's "Keys" plays with conventions of the "alt walking simulator" genre, and it's kind of amazing that there are established conventions and motifs now? It prompted me to look into Source SDK 2013 and revive the old Radiator... which, um, I still need to finish making. Shit.
  • I reviewed Anna's book on ZZT and Darius' book on Jagged Alliance 2. Both are excellent books, you should read them. I think I'm going to assign them in my classes.
  • I got more into tool development... here's me making a simple 3D scribble-modeling tool called "Mural", and here's me working on a Twine-like plugin for Unity called "Bramble"... which reminds me, I still need to finish those, huh? Shit.

Tuesday, December 2, 2014

new game: "Hurt Me Plenty"


"Hurt Me Plenty" is a short game made for Leap Motion Jam 2014 where you spank the heck out of a dude and learn about how BDSM communities attempt to formalize consent / caring. I was really interested in how we can make games about intimacy without a "kindness coins = sex cutscene" trope, and how we can use expressive gestures to roleplay / think about pain and intimacy. (For the record, I don't think my game gets it right, and it has a lot of flaws... this stuff is hard to design!)

Monday, December 1, 2014

"Cheeky Designs: How to Make a Video Game About Spanking The Heck Out of a Dude" at NYU Poly Game Innovation Lab, December 11


I'm giving a short tech talk about making my hunk-spanking game on December 11th at the NYU Poly School of Engineering's "Game Innovation Lab" in Downtown Brooklyn. Here's a description:

This talk will discuss the design development of "On Your Knees" "Hurt Me Plenty", one of the very few video games ever made about spanking men. How do you adapt concepts from BDSM culture into a game? How do you translate the politics of consent and power exchange into game code, 3D animation, and motion interfaces? What if video games imagined sex as an interactive process instead of a cutscene "reward" dispensed by a talking vending machine?

I'll talk how each part of the game works / why I made it the way I made it / interesting questions this kind of work brings up. Hope to see you there if you're in the New York City area!

December 11, 2014 at 7:00 PM
5 Metrotech Center
Brooklyn, NY 11201

Thursday, November 20, 2014

I've never made anything viral before

At this time of writing, this Vine now has 540,000+ loops and 19,000+ notes on tumblr... and my life is pretty much exactly the same. It's so exciting -- the numbers are so big! On the other hand, they're just numbers.

Thursday, November 6, 2014

Postcards from: "Discipline and Punish"

Here are some work in progress images / footage for "Discipline and Punish", a BDSM spanking game using the Leap Motion. It'll also go into questions of consent, and it'll be mildly educational for those who know nothing about BDSM culture. Character model by Kris Hammes, character shader by James O'Hare.


Tuesday, October 28, 2014

On branching dialog editors and narrative design tools


I was prototyping a game concept with branching dialogs for conversations and/or CYOA story events, so I started looking at various solutions on the Unity Asset Store. Dialoguer looked the most decent, but generally all of them just made too many assumptions or enforced bad workflows, and seemed to ignore what made Twine so accessible.

So I've decided to make "Bramble", my own editor plug-in and system for Unity! Here are some factors in its design:

Thursday, October 23, 2014

Notes on working with Source SDK 2013 Singleplayer Base

I've been working with Source SDK 2013 base for the past few months, and I thought I'd share some notes on workflow for any future modders who google to this post:
  • If you are making a simple mod that uses default Half-Life 2 features, then you do NOT have to compile your own binaries. You can just tell Steam to use the ones that come pre-compiled by Valve from the already included "sourcetest" mod instead. Steam automatically downloads the correct binaries for the client's platform when they download the Source SDK 2013 Base -- which means you presumably get free and painless Windows / OSX / Linux support, as well as any new changes Valve merges into the codebase... As far as I can tell, most of the basic Half-Life 2 entities work in sourcetest, though env_screeneffect seem to be broken due to some missing shaders.

Monday, October 20, 2014

Indiecade East 2015, February 13-15 at the Museum of the Moving Image, New York City


Indiecade East is back for another year in beautiful snow-filled New York City, and they are looking for talk proposals from new (as well as old, I imagine) voices in the community! You have until November 10th (that's about 3 weeks) to get your submission in:
If you have something new to say about / for / from independent game making, and you can encapsulate it in a 20-minute talk, we want to hear from you! Everyone is welcome, regardless of experience, visibility, etc.

We are particularly interested in these topics:
- Diversity in Audience, Diversity in Creators: Playing and making games is not the exclusive domain of a privileged few -- games are for everyone, and anyone should be able to make them.
- Indie Games’ Second Wave: Indie games have been around long enough that there are old-timers and newcomers. Who are the new generation of creators trying to break through in a different landscape?
- The Other Indies: There are many people making interactive art not traditionally thought of as indie games, from modders to interactive fiction writers. How do they enrich the world of indie games?
- Storytelling in Indie Games: Independent games are one of the spaces where narratives experiment with new forms and topics. What exciting new work or unappreciated old work is being done in this area?

Thursday, October 16, 2014

"Quality product": on Jagged Alliance 2 by Darius Kazemi

Much like Anna Anthropy's study of ZZT, Darius Kazemi's study of Jagged Alliance 2 for Boss Fight Books is a quick read but feels very comprehensive, analyzing the game in a holistic interdisciplinary cross-section across history, anthropology, politics, and computer science.

Unlike Anna, Darius adopts a much more academic tone, and rarely inserts himself into his own narrative. And while the result is a convincing, well-written, and well-researched book, it ends up falling prey to certain weaknesses that were irrelevant to Anna's book... which fascinates me, because I want to write my own book on Half-Life 1 that somehow blends both of their sensibilities.

Tuesday, October 7, 2014

QGCon 2014, October 25-26 in Berkeley, California

Hey, the excellent Queerness and Games Conference ("QGCon") is running again this year, and you should go! I had a pretty good time in 2013, where I presented "Queering Game Development," a critical code study of "FeministWhore" and the politics of code (I'm still working on the final essay / paper, oops) -- and I probably would've gone this year if I weren't consciously trying to lay low and try to finish stuff instead of jetting-off to conferences all the time...

... But that doesn't mean you shouldn't go! If you are going to be in the Bay Area on October 25 and/or 26, you should definitely check out QGCon at UC Berkeley. There's a bunch of really great speakers this year. So sign-up, it's free to attend! Have enough fun for the both of us.

Tuesday, September 23, 2014

Introducing: Mural (v0.2) a simple 3D scribbling tool


EDIT: v0.21 adds .OBJ export from the webplayer; you can now actually use this to make models and import it into whatever you want. (If you want to use this in Unity, you will need to apply a material / shader that uses vertex colors and doesn't cull backfaces, so pretty much any of the "Particle" shaders)

There are 2 common modes in 3D polygonal modeling: vertex manipulation and sculpting. But for many of these workflows, a 3D mass exists mostly as a surface to be unwrapped and painted. If all we need is a 3D canvas to paint upon, why can't we just go straight to the painting part?

"Mural" is an experimental freehand 3D modeling tool similar to SketchUp's "Freehand" tool or the impressive Tilt Brush, except SketchUp imagines it more as a tracing aid and Tilt Brush relies on VR hardware and doesn't readily export geometry.

I want to make Mural as an accessible 3D tool that borrows game UI metaphors (specifically, first person mouselook) and directly exports the resulting 3D models for use in games, or anything, really. Many of the models made in Mural will not look like "traditionally" modelled 3D objects, and intentionally embrace glitchy non-representational aesthetics, twisted normals, vertex colors, and z-sorting artifacts. If it hasn't already occurred, I imagine the "politics of 3D" will shift to embrace these phenomena as artistic features rather than aesthetic flaws.

(I am also indebted to Rich Edwards' early research with "3d concepts" using semi-transparent planes.)

CHANGELOG
v0.22
  • decoupled canvas movement from painting (thanks for suggestion @Dewb) so you can now move the painting surface WHILE painting
v0.21
  • added simple .OBJ export for webplayer; press F12 to save a .OBJ to your computer
v0.20
  • fixed stroke shader, colors now render properly
  • added a color picker hue / saturation circle, adapted from code in UnityPaint
  • replaced line renderers with generated meshes from Vectorosity
  • added .OBJ export
  • added very basic undo support (press [Z] to delete most recent stroke(s) )

FUTURE DIRECTIONS FOR MURAL: make it into a complete 3D world maker / game maker; add cooperative modelling / network multiplayer session support; better painting tools and interface; add file-writing and OBJ export in webplayer via JS hooks

Monday, September 15, 2014

Porting simple Half-Life 2-based singleplayer mods to Source SDK Base 2013 in 3 steps

If you have a lot of custom code, there are probably some compelling reasons NOT to try to upgrade your existing code to Source 2013 unless you have a lot of free time to hand-merge everything... but if you just have a mod consisting of maps running on Half-Life 2 or the episodes, the relatively easy update to Source SDK Base 2013 gives you better performance (the Steampipe VPK-based loading is much faster than the old GCF system), integrated VR support, and maybe most importantly, it is a freely available "standalone" release to anyone with a Steam account.

The process is basically 2 steps, but I added a 3rd pretty crucial "step" that came up in my own mod...

Friday, September 12, 2014

Liner notes: Intimate, Infinite (part 2), on protagonists / race / gardening / chess.


These are some notes about my process / intent in making my game Intimate, Infinite. Spoiler warning is in effect for this game as well as the 1941 Borges short story that inspired it. Part 1 is on my general reading / plotting / interest in the frame narrative.

Borges' protagonist Tsun, or my Wang Peng (a name taken from a fictional college student in a Mandarin language textbook) has mixed motives for killing the sinologist.

He's a Chinese man more or less assimilated into Western ways, with a healthy dose of self-loathing for his own heritage. That makes this story one of the few "Western literary canon" texts that directly engages with how Asian people might react to Westerners being fascinated with Asian stuff (side note: in this vein, Irma Vep is one of my favorite movies / I really want to make an Irma Vep game someday)

Wednesday, September 3, 2014

Much Madness is Divinest Sense.


A couple things got me thinking:
  • Source SDK Base 2013 does not require any purchases whatsoever, and is freely available to all Steam users.
  • DOTA2 is using Source Engine 2, or at least some substantial derivative of it.
To me, that means Source 1 is definitely nearing the end of its life, and Source 2013 will stand as (perhaps) the last definitive engine fork for Source 1. There's a good chance I won't have to fix up my release ever again because of Valve updating Episode Two and breaking all mod compatiblity: furthermore, anyone will be able to download Source 2013 and play my mod.

Preliminary tests look promising: both chapters of Radiator 1 worked in Source 2013 with just a little massaging. So, contrary to all expectations (I'm as surprised as anyone), I'm dusting off the rest of Radiator 1 and the whole thing might actually get completed now, several years later. I'm cutting a lot of the stuff I planned before (mostly boring puzzle gameplay stuff that I was trying to hack-together using map scripting) and the end is already in sight, it's just going to be a lot of narrative scripting and re-learning the rhythms of working in Hammer.

... And hopefully this'll be the last time I have to edit and update this thing.

(Oh, and I've also updated my portfolio with all the latest trends. HTML5! Bootstrap-whatever! Responsive-whatsits!)