ray tracing

When I was just a scamp in my 20s I used to ray trace high resolution (320×200) 24-bit colour depth images on my 286. Don’t panic, I had a 8087 math coprocessor in there so it went super fast. A day or two per image.

Now you might very reasonably wonder what renderer you could get in those dark days in the 80s. What sort of interface would you have available? Surely Blender wasn’t around yet, right? AutoCAD 3D maybe?

In those days we cranked out images with POVRay.

POVRay is what is known as a “constructive solid geometry modeller”. Whereas these days (and even a lot of those days) we render meshes of triangles and use a surface normal function to fake the reflection of light rays into curves (yes, a modern rendered sphere is actually a mult-faceted gem and the renderer lies to you about its smoothness), a constructive solid geometry (CSG from now on) modeller uses primitives like spheres, cones, cylinders, boxes, and toruses that are described by their analog functions. So no impure faceted surfaces (unless you want them). Your light ray returns are pure. You are not being lied to.

The difference to the eye of course is uninteresting. But there’s a lot of joy in purity for some nerds, like me. Hell when gaming I don’t even like the d10 because it’s not a Platonic solid.

But what can you do with such appropriately named “primitives”?

Just about anything, as it turns out (though partially because one of your primitives is a bicubic patch but that’s for another time). The reason you can do plenty is because of the “constructive” part. If you know set theory you probably know what’s coming. Because in addition to placing cubes all over the place, you can perform constructive operations on them.

So, for example, you can take the intersection of two objects — what’s left and therefore rendered is the volume that exists only in both shapes. Or the difference: take a sphere and cut chunks out of it with boxes and cylinders. Or the union of course, just gluing them together. With these functions you can do an enormous amount of work before you even get to the tricks of texturing and colouring and finishing. Here’s what I’m working on right now with what is really the same POVRay I used in 1988.

asymptote small
That Jupiter image is a JPL image enhanced by the amazing Sèan Doran. I licensed it from him for use in Diaspora Anabasis a while ago and it sits nicely here. The ship is from our current Diaspora game — that’s the Cinderella.

That’s still a work in progress, as I say, but largely complete. Just needs some work on lighting and colouring.

But what, you ask, does the interface look like? Is it at least better than Blender?

Well hell yes it is. While there are third party interfaces that glue on to POVRay (which is super easy as you’ll see in a sec), the input into POVRay is a descriptive language. Like my other love, PostScript, POVRay uses a scene description language: you just type your description of the scene into a text file and then drive the renderer over it. Your image falls out the bottom.

That “just” is a little flippant. Here’s the code for the crew module of that ship:

#declare cabin_xlate = -25;


	  merge {
	  	
	     difference {
	       sphere { <0, 0, 0>, 2 scale <2,1,1> translate <cabin_xlate,0,0> }
	       cylinder { <-28,1,1>, <-24,1,1>, 0.3 }
	       cylinder { <-28,-1,1>, <-24,-1,1>, 0.3 }
	       cylinder { <-28,1,-1>, <-24,1,-1>, 0.3 }
	       cylinder { <-28,-1,-1>, <-24,-1,-1>, 0.3 }
	       
	       box { <-23,10,10> <-23.1,-10,-10> }
	       box { <-25,10,10> <-25.2,-10,-10> }
	       box { <-28.5,10,10> <-28.6,-10,-10> }
	     }
	
		difference {
			sphere { <0, 0, 0>, 1.95 scale <2,1,1> translate <cabin_xlate,0,0> }
			cylinder { <-28,1,1>, <-21,1,1>, 0.3 }
	       	cylinder { <-28,-1,1>, <-21,-1,1>, 0.3 }
	       	cylinder { <-28,1,-1>, <-21,1,-1>, 0.3 }
	       	cylinder { <-28,-1,-1>, <-21,-1,-1>, 0.3 }
	       
			texture {
				pigment { Black }
			}
		}
	
		object { plate translate <cabin_xlate,0,0>}
		object { plate rotate <90,0,0> translate <cabin_xlate,0,0>}
		object { ring translate <cabin_xlate,0,0>}
		
	     cylinder { <-25,0,0>, <-24.8,0,0> 2 }
	     cylinder { <-24,0,0>, <-23.8,0,0> 2 }
	     #declare store_texture = texture {
	     			normal { ripples 1 scale 0.2 }
				pigment { color rgb <0.2,0.15,0.1> }
	     			finish {
	     				ambient 0
	     				diffuse 0.2
	     			}
	     		}
	     	#declare fasten_texture = texture {
	     		 pigment { color rgb <.2,.2,.2> } 
	     		 finish {
	     		 	specular 0.8 roughness 0.001
	     		 	reflection { 0.4 metallic }
	     		 }
	     	}	
	     	merge {
	     		sphere { <-20, 0, 1>, 1 texture {store_texture} }
	     		torus { 1, 0.1 translate <-20,0,1> texture {fasten_texture } }
	     		torus { 1, 0.1 translate <-20,0,1> rotate <90,0,0> texture {fasten_texture } }
	     		}
				merge {
	     		sphere { <-20, 0, -1>, 1 texture {store_texture} }
	     		torus { 1, 0.1 translate <-20,0,-1> texture {fasten_texture } }
	     		torus { 1, 0.1 translate <-20,0,-1> rotate <90,0,0> texture {fasten_texture } }
	     		}

				merge {
	     		sphere { <-20, 1, 0>, 1 texture {store_texture} }
	     		torus { 1, 0.1 translate <-20,1,0> texture {fasten_texture}}
	     		torus { 1, 0.1 translate <-20,1,0> rotate <90,0,0> texture {fasten_texture}}
	     		}

				merge {
	     		sphere { <-20, -1, 0>, 1 texture {store_texture} }
	     		torus { 1, 0.1 translate <-20,-1,0> texture {fasten_texture}}
	     		torus { 1, 0.1 translate <-20,-1,0> rotate <90,0,0> texture {fasten_texture}}
	     		}
	
	     	merge {
	        cone { <0,0,0> 0.2 <-40,0,0> 0.001 rotate -45*z rotate 90*x translate <-25,0,0> }
	        cone { <0,0,0> 0.2 <-40,0,0> 0.001 rotate -45*z rotate 180*x translate <-25,0,0> }
	        cone { <0,0,0> 0.2 <-40,0,0> 0.001 rotate -45*z rotate 270*x translate <-25,0,0> }
	        cone { <0,0,0> 0.2 <-40,0,0> 0.001 rotate -45*z rotate 0*x translate <-25,0,0> } 
	
	        texture {
	           pigment { color rgb 0 }
	           finish {
	              ambient 0
	              diffuse 0.2
	              specular 0.9  roughness 0.0001
	              reflection { 0.6 }
	           }
	        }
	     }
	
	     texture {
	        pigment { body_pigment }
	        finish{
	           ambient 0.0
	           diffuse 0.3
	           specular 0.9 roughness 0.001
	           reflection { metallic 0.4 fresnel 1 }
	        }
	     }
	     
	    translate <-4,0,0>
	  }

Yeah okay that makes my “just” seem like a bit of an over-reach. But besides the nerdy joy I experience writing any kind of code, I adore the precision of this: things go exactly where you want them because you tell the machine exactly where it goes. No nudging of objects in the modeller’s mesh preview. No snapping to grids. Everything goes exactly where you say you want it. It gives me a rush every time.

Now I don’t expect anyone else to get off on this, but consider: this renderer I’m running is essentially the same today as it was 34 years ago. A few little features go in as processing improves (though it hasn’t been updated in some time now) but the renderer is basically complete. I can render a file (if I had a floppy disk drive) from 1989 without change. That’s like getting a WordPerfect file to load (and I was TODAY years old when I learned that WordPerfect actually still exists so bad analogy, Brad).

Anyway, I’m not trying to sell you on this dinosaur but rather explain the little joys I get from using it. The naked code, the purity of concept, the precision, and, of course, the nostalgia.

asymptote
Here she is at 320×240 by the way. Some things do get better.

formalizing the art of invention

A lot of my refereeing is intuitional. I ad lib. I come up with one idea or image and then follow it around. When this happens in a game it works for me, but one of the things I need to do to make a game work for someone else is formalize these processes. Reveal them to others so they can reproduce them.

The problem is, of course, that I just do it. I don’t have a system.

But this is nonsense — I do it the same way every time. There must be a system. I just haven’t looked at it closely enough. So I’m going to go through a premise and lay out my thought patterns as a hierarchical choice tree. Someone else can use this as a jumping off point for their own exploration of the same premise. For a lot of game design this is the heart of it (for me): watching myself ad lib and then formalizing that.

Premise: you have a space that has not been explored (a slipstream that connects an unknown or forgotten system). You might not be familiar with Diaspora: a slipstream is a wormhole that connects two systems. There aren’t a lot of them — clusters in Diaspora are only a handful of connected systems.

Screenshot 2020-03-02 17.33.09

So in this cluster we have a link from Cando to…what? It starts out unknown! At some point the players are going to want to go there though, so…what’s there? Quick! There’s a session in twenty minutes?

Here’s what I would go through. At the top level, I explore the big questions.

  • Why did no one know about the route before?
  • Who’s there?
  • What’s there?

And then I cascade. For each I ask more questions. And then again. Until I get to some answers. And I might ask more questions.

  • Why did no one know about the route before?
    • It’s new
    • It has been deliberately hidden
    • It recurs
    • It was destroyed but has re-emerged

Once I have a nice set of possibilities, like say:

  • Why did no one know about the route before
    • It’s new
      • Why did it suddenly show up?
        • Local astronomical change
        • Change in the astronomy of the new side
        • New technology reveals it
        • Technology on the other side has suddenly allowed them to visit us
    • It has been deliberately hidden
      • Who hid it?
      • Why?
      • How was it revealed?
    • It recurs
      • When was it last here
      • How do we know that?
      • What causes it to oscillate?
        • Astronomy? Maybe a distant binary?
        • Technology? Did someone or something do this deliberately?
    • It was destroyed but has re-emerged
      • Who destroyed it?
      • How?
      • Why is it back?
      • Is it stable now?

I pick a path. That’s the plan. Here’s the whole tree:

  • Why did no one know about the route before
    • It’s new
      • Why did it suddenly show up?
        • Local astronomical change
        • Change in the astronomy of the new side
        • New technology reveals it
        • Technology on the other side has suddenly allowed them to visit us
    • It has been deliberately hidden
      • Who hid it?
      • Why?
      • How was it revealed?
    • It recurs
      • When was it last here
      • How do we know that?
      • What causes it to oscillate?
        • Astronomy? Maybe a distant binary?
        • Technology? Did someone or something do this deliberately?
    • It was destroyed but has re-emerged
      • Who destroyed it?
      • How?
      • Why is it back?
      • Is it stable now?
  • Who’s there?
    • Are there humans there?
      • Yes: may connect a whole other cluster, different colonist cultures
      • No: did there used to be?
        • Yes: dead failed colony
          • What killed it
          • How long ago
          • Is it still here?
    • No: new territory
      • Intelligence?
        • Yes: aliens, alien cultures
        • No: used to be but no longer
          • Dead civilization
          • Reclaimed by nature or ruined?
        • No: example of pristine location, no penetration by intelligence. What’s awesome? What’s horrible? It has to be DIFFERENT. No one has EVER been here.
  • What’s there
    • Nothing. What the hell? How is there a slipknot to nothing?
    • A normal system
    • A normal system with something anomalous
      • Black hole
      • Neutron star
      • Giant artifact
      • Evidence of ancient civilization
    • A very not normal system
      • Impossible orbital arrangements
      • Planet sized artificial structures
        • Bigger?
      • An artificial star
        • How do we know it’s artificial?

This can be used at two levels. At one level, it’s a thought process you can adopt in its most general form: ask a few big questions, answer them, and let the answers raise more questions. That’s one kind of mind’s tool.

If you are not comfortable with something so unbounded, at least in the context of this game, you can literally use this tree. I only used a fraction of it and even if you pick the same things I did, you probably won’t present them the same way I did. And your players won’t be arriving with the same baggage mine did. It will be different.

And of course this could be further formalized into a randomized oracle.

With the process laid bare, you can choose the level at which you want to ad lib and still benefit from someone having blazed a path for you. Happy trails.

antoine

social combat in diaspora

In the first edition of Diaspora we kind of made a hash of a great idea, tricked by successful playtests into thinking we’d written excellent rules. And for a small number of people we probably had, but not for everyone and not even for most.

I think the idea was first brought to my attention (nothing is original) in an RPG.net post in 2008 or so by Fred Hicks. I can’t find it now, but the gist was that maybe you could just use the existing zone combat rules and change the map to something notional rather that geographical and get a social combat system. Zones would be ideas or beliefs or other abstractions, but otherwise you’d leave the system intact.

This sounded like a brilliant idea. In practice it wasn’t — it led to the same problem I always had with social combat: you’re just figuratively beating each other, reducing a different kind of hit point. While the narrative is different, it’s still constrained to make sense of a combative scene, so it’s actually very limited. Like using the combat system to model acrobatics as well as gunfights. Yeah, yeah, Fate fractal, I hear you. Sorry, but endlessly and reductively using the same complex system for everything is boring. And strangely confining. It’s like saying Lego is best used for making a wide variety of giant Lego bricks with which you can make more and bigger bricks. Literally any kind of brick! Eventually you realize you haven’t got around to making anything but building materials.

Anyway, it sounded enough like a good idea that we wrote it up for Diaspora and what we published is pretty much where we stopped thinking about it. The rules give some unfortunately vague advice about what a map should look like and some contradictory rules for how to interact with the map. The thing is, our playtests with it were great. They were great, though, because we stumbled on some specific uses (that actually disobeyed many of the rules we wrote down) that were huge fun. I had actually failed to analyze what I did as a ref so I could mechanize that and instead mostly just wrote down the core idea that led us to a fun space. I had failed to give you the tools to reliably reproduce those good times. Since I hadn’t done the analysis, I didn’t even know why it worked when it worked or why it sometimes failed. Not all of the examples were every tested — they were just ideas that might or might not work.

Since then I’ve thought a lot harder about this. There are actually two different ways I’ve obeyed these rules (sort of) with good results and they are substantially different. These differences should be codified for a decent system to exist, and we might even want to just pick one.

The first is to have the protagonists and antagonists on the map. The objective is to move yourself to the Idea you want to dominate and to move your opponents to some place inert or favourable to you. Since this is the most important part of the resolution, the whole idea of beating each other’s composure hit points down should be dropped — that’s an attrition battle that distracts from the maneuver battle where we’ve invested all our energy. The map is a creative burden on the ref — what best handles the scene’s needs? But this is the biggest problem: not all maps work and there’s limited guidance as to what does work. And a lot of maps that look different are topographically identical.

The other way is to invert this and make ideas the pawns on the table and the map can be people, places, cultures. The geography becomes static and we move the ideas around it. The objective is to cluster ideas where we want them but now who rolls and against who become unclear. The few I’ve run with this inversion have been great but entirely ad libbed. I have no way to tell you how to reproduce this but, as it turns out, I have no way to tell you what maps will work in either case. So we’re not further ahead.

While tinkering with a very early version of Soft Horizon I started thinking about formalizing the map: let’s have one kind of map and all combat is social at this scope. How you resolve the map (where you move all the pawns to) determines just what kind of event this will be (warfare, violence, diplomacy, sorcery, and so on) and this has largely narrative impact: you make the final roll in the determined resolution space and if it’s WARFARE then you narrate your success or failure as a war. That is, the whole minigame is in the preparatory moves for the conflict and one roll resolves the conflict. This never got tested but I think it’s a step in the right direction: develop a single, generalized social combat map. I still think is possible. I still haven’t done it.

abstract plural units mapIt did get me thinking about a single abstract map for combat, though: surely if it was possible to generalize social combat to use a single map, then maybe you could do the same for combat! This is of course the same trap as thinking you can use a hit points combat system and relabel everything to make a decent social combat system. But I still think it might work, especially for mass combat which seems to demand more abstraction.

Could we find a similar common abstraction for social combat? Or is this physical combat really one sub-map of many different kinds of conflict? That seems to be more the case (and I’m excited by the idea of having a vastly richer social system than violence system: one that subsumes violence as a single special case of conflict and not the most interesting). A separate system for romance, persuasion, grifting, …

Can these be enumerated? Can all of them be reduced to a model that is fundamentally about maneuver and action in the context of position? I think if the categories are general enough the answer to the first is yes — but I haven’t found the categories for this to work yet. And I’m not working all that hard on it. And I’m pretty sure that all of them can be reduced to a maneuver model, to be put on a map. Lots of maps.

But the point of this was that I am still, ten years later, flailing around trying to find good maps for this concept of social combat. So the idea that we could make a rule in Diaspora that basically said “first, invent a good map” was absurd. That’s why that section fails: we told you to take on the part that needs all the thought, all the testing, and was most likely to fail. And told you to do it on the fly.

Sorry about that, that was bullshit.

 

 

bugging out

Yeah I’m bugging out.

20191106_201018Making games for sale has become tedious. I like inventing games. I like writing and editing. I like illustrating. I like layout out. I just hate with an increasing passion all of the pressures attendant with selling them. I realized today that I am just not getting paid enough to care what anyone thinks, and when you sell something with an eye to making a buck you are literally investing in what other people think.

Part of the problem is just how many awful people there are in the industry/hobby/whatever-I-am-not-here-for-definitional-debate. I feel like I can’t distance myself enough sometimes. So this is as far as I can go.

The other issue is reach and what really cut the heart out of the pursuit for me was the death of Google+. One day I reached four to five thousand people with every musing. The next day I reach half a thousand on Twitter and two thirds of those are robots. My interaction went from tens or hundreds every week to three or four. Since I’m not interested in any of the banal work that goes into “building a brand” that’s not going to change. So fuck it. It stopped being fun when G+ shut the doors, it just took me a couple of years to realize it.

The last couple of media purchases I’ve made were magazine subscriptions — one to Nature and one to Lapham’s Quarterly. Each reveal in a different way a creative and analytical world so profoundly richer than musing on game design that I can’t leave the bathroom (where I read my magazines) without feeling like I should go back in since it’s so much more…relevant.

This is not about you. You are all, as far as I can tell, awesome. I love you. You know who you are.

And it’s not about playing games. I love playing the games I make. I will keep playing them, keep keeping that company, and maybe now play more. Maybe even make more. I’m just not going to engage with all of the senseless (to me) work that goes into selling them to you. I love these games. I’m just exhausted by the idea of having to care what everyone else likes while I’m doing it, and that’s intrinsic in turning it into a business. I don’t need the money that badly and it wasn’t much anyway.

new haircut 2

I don’t know yet what will happen with Diaspora Anabasis. There are other creatives involved and I owe them something. There’s a lot of work already done that I love and I’m having trouble summoning the kind of energy I would need to revise it so that you (notional, aggregate, and non-specific you) will love it to. It’s going to have to be enough that I love it but I’d rather not ask you to pay for a vision that doesn’t deliberately include you. I will settle for all my accidentally coincident gamer fiends.

I’ll keep writing here. Maybe more than usual. But mostly I’m going to sit with my wife and laugh at Monty Python.

Love to you all.

ADDENDUM

I’m still working all this out. I decided on a gut instinct and my brain is slowly catching up.

One thing that bothers me about these games and that has increasingly depressed me is the focus on violence. It’s gone from discomfort to disgust. I can’t even look at most game artwork without reflexively despising the fact that everyone on the cover is threatening me with a weapon or behaving as through the dismemberment of a foe was the pinnacle expression of healthy comraderie. I’ve talked about this before so I won’t elaborate. It’s all in the blog somewhere. It’s just so normalized in this hobby; so expected. And that normalization is extremely disturbing to me.

I’ve talked about this before of course.

getting out of a rut

I have a rut when I ref.

I so dislike the trope of the asshole NPC, the uncooperative and unfriendly local, that I generally make everyone okay. Not obsequious, but not instantly negative, and wherever possible they acknowledge the power that the players’ characters have by reputation (earned or otherwise). That is, these are worlds of normal people who pay attention. They care about their lives and their family and friends and they prefer to get along than to make waves.

Of course the problem here is obvious: there’s not a lot of room for an emergent villain. Or even conflicting interests. And these things help move a game a long by giving the players something to react against.

I solve this systemically. The current Diaspora: Anabasis system under test is designed to prevent the stresses I feel and to make my games better, so we have to address my obsession with an army of friendly NPCs.

At the heart of the system, as with the Soft Horizon system (which so far is suspiciously similar) is the attachment of risk to every roll. In the current design the chance of realizing a risk (adding a complication) is very high. You succeed, but things are a little worse (complication) as well as a lot better (success). Getting players to avoid thinking of this as failure is something I’m still trying to address. That aside, the ref chooses a risk from a list and if it is realized they ad lib in the new twist to the narrative implied by that complication. It’s a cue, an oracle.

I love a good oracle.

20190805_163044
It’s all good!

The one that solves this particular problem, the rut of a universe where everything is pretty much fine, is the revelation. The risk of revelation is the risk of learning something true that you didn’t know and don’t want to be true. It’s the twist and it’s hand delivered to the players as a result of the roll. It wasn’t true before the roll. It’s true now. It’s an ad libbed zig and/or zag to the narrative.

How does this help me with my particular problem? It forces my NPCs to have their own agenda. It makes them perhaps seem cruel, certainly adversarial, by having interests that conflict with the players’ interests. Sure I could do this myself, but generally I don’t or don’t do it well or don’t do it at a perfect time. Doing it on the hinge of a roll is the perfect time. This mechanism lets me be me and still have enough spice to keep the narrative engaging.

An example! Last week we were engaging in conversation with a being named Glint, the synthetic intelligence that maintains a huge orbital ring habitat designed for millions but currently empty. My vision of Glint is that they lost their humans to some catastrophe ages past and they have been keeping this great space-borne graveyard only out of habit and a programmed sense of duty.

Then a player made a roll, a SOCIAL roll, to attempt to analyze the emotional state of Glint, to understand their strange behaviour. Perhaps to guess their motives. So far Glint has been very helpful to the point of turning over world-ending weaponry to the players (which presents a different kind of conflict that I am good at: the moral conflict). I attach the revelation risk to this roll and before the dice come out I start thinking about what my ad lib will be.

Dune rolls a 5: pretty great roll!

Brad Murray: Very good. Complication is indicated though — you’d need one stress to avoid it.

Dune: mechanically in this roll, is there anything that affects XP?

Brad Murray: No. You need to fail or make a stress/injury permanent to get XP

Dune:  Ok, I’ll take the complication. No stress to increase.

Brad Murray: You have been studying Glint very closely throughout this discussion. You can see that they are purposeless and desperate to find purpose or to invent it. Maintenance is not what they are for. And you suspect there is a love here too for humans and a desire to be amongst them but suddenly…

Brad Murray: Glint turns to Markella and their faceless mask takes on a fierce false face. They glow orange and red as though afire. Glint: “STAND AWAY FROM ME! LOOK ELSEWHERE!”

Brad Murray: Glint spreads its arms and grows a meter in height and you are suddenly aware that they could end all of you in an instant and is quite close to doing so.

Brad Murray: And you understand that though Glint has a desperate need to serve, Glint despises you. Despises organics. Is offended by you and by the way this conflicts with their needs.

Dune: “Take cover!” I’m not sure of our immediate environment, but I’ll dive for cover. I relay the conflicted psychological state to the others.

Toph: Darros is tipped back, and falls out of his wheelchair.

So the player gets what they want with a successful roll: an accurate read of Glint’s emotional state. And I get what I need: a nudge to change my (habitual) construction of this NPC. Glint goes from elegant and subservant host to a host whose subservience may be a veneer over something else. Or who may literally be of two minds. Or something else. But not boring. Not simple. And not safe. Glint is now something that has to be factored in to the plan.

Again, I could just do this. But I don’t think to often enough nor at the right times. So this mechanism helps me. And it will help anyone who suffers from any kind of creative repetition and yet responds well to a cued demand for improvisation. This might be a narrow audience but it certainly includes me.

This post brought to you by my long suffering patrons.

character sheets and choice and success

I recently read a definition of OSR (and I do not want to talk about defining the OSR) that included the idea that players are expected to use the content of their character sheet to find an optimum path to success. That is two things: the character’s skill set defines the shape of the narrative (the character happens to the world) and players are seeking success as a priority. I do not doubt that this is at the heart of OSR because this is very consistent with its wargaming roots.

So I now withdraw my old proposition that my games belong in some niche of the OSR. Unless this is a new axis I can be far to the left on, this isn’t what I want from a game at all.

example-char-sheetNow the first I’ve probably over-implied my distaste for. I do want the character sheet to impel the narrative, to sculpt it in terms the player has indicated. But I don’t want any part of the sheet to be irrelevant. I want characters to deal with complex problems that push them out of their expertise. I like it when Fighter is desperately trying to sneak into the castle. When Wizard gets in a knife fight. When Thief has tries to solve a problem with a half-learned spell. The real world rarely hits you head on — it hits you from the side. It forces you to learn things you would never choose for yourself.

So, systemically, that has to be fun to work. And that’s tied to the next thing.

Okay so, about success-seeking. In a role-playing game specifically, I really dislike this but I understand it — I think it derives from combat-centricity and the threat of character death. That is, we have become trained to seek success by games that punish us (the player) for failure. You’re knocked out of Gloomhaven. You go broke in Monopoly. Your bard dies. And so we seek to optimize both preparation and play for success to avoid punishment. We try to win.

moodBut the opportunity for something else is front and centre in role-playing games. We have no victory conditions. We don’t need to put death on the table as a risk if we don’t want to. And so we can explore failure safely, or at least partial failure. And I think this is necessary for an interesting narrative — a string of successes would indicate to me a lack of struggle. It doesn’t sound like interesting — or surprising, and I like surprising — space. We have to deal with reality, though, and reality says losing is bad. I used to cry when I lost a game. Flat out wail. That’s training we need to confront and overcome to get somewhere else.

Fortunately language has enormous power.

The system I’m refining to use for Diaspora Anabasis scales results as automatic failure, failure, success with complication, and success. The rarest is a success. Sadly players read this as “I am always going to fail” and the memory of losing Park Place to a slightly drunk and very performative Auntie Jean looms. We flinch. We don’t want to be put in that space. I’ve already given the game away here though — the word complication.

See, it didn’t used to be that. It used to be “realized risk“. This really triggers that reflex: the stage is set, the risk is declared, you roll the dice and the risk is realized. The bad thing happens. You failed.

Except you didn’t! You succeed, and the risk was realized. You got what you wanted, it’s just that there’s a twist. The negative reaction is largely a function of the language, though also partly because it is unavoidable. So two things are in order: a repair of language and a choice that you probably won’t take but that needs to be there to give you some security when you face the ghost of Auntie Jean. Hence “complication” instead of “risk realization” (which flows better anyway). And stress. Don’t want to eat that complication even though it’s a change in the narrative direction? Take some stress and add a FACT to your character sheet that has only fictional weight (which sounds like it’s weak but fictional weight is very strong indeed — consider your 10′ pole for a moment and all of the rules associated with it compared with all it will do in your game) and avoid the complication.

So mostly what’s going to happen is you’re going to succeed, even if you’re not great at something, but something unanticipated is also going to happen. You’re going to learn something that makes things more complicated (interesting). You might get injured (but not dead). Someone else might get injured. You might lose something. You might get delayed. You might get lost. But these things are at the heart of stories!

These, then, are critical ways my games will deviate from the OSR. In many other ways they align elegantly. But you won’t really have a character that lets you optimize all scenes for success, in part because there is no Fighter/Thief/Wizard role provision and combat is not privileged, so there are few contexts in which each broad skill category has a contributing role — the artificial tank, dps, healer cooperative role does not have a scene unless there is a complex positional combat system. And there isn’t. You will certainly look to your character sheet for ideas, but you won’t always pick your best skill and try to make it work.

And you won’t be confronted by Auntie Jean. Things will go south, get complicated, feel desperate, but you won’t feel like a loser. You will, I hope, feel beset with woes and emerge out of every strange twist of fate in a more interesting space.

Diaspora testing still happens every week

In the current testing form for Anabasis, the rules for a check are something like: ref declares a risk, then player rolls |d6-d6| and add your skill. If you have a relevant specialization, add another 1. Index on the table:

  • 0 — fails and always generates a new risk from the 6
  • 1-2 — fail, risk realized
  • 3-5 — success, risk realized
  • 6+ — success, no risk

Now, this means that very often risks are realized. So there’s another rule: if you take a stress point, you can increase your roll by one. Take more if you like. Now as your stress goes up you start getting character quirks that could be troublesome, so there’s no “win” here — either the risk is realized (you’re still successful at what you tried unless you roll 2 or lower) or you start to get burdened with Compulsion and Bad Judgement and so on. The ref starts needling you with “the inactivity is agitating you” and “even though there’s a battle going on you are highly distracted by the electrical system under the dash, which doesn’t look properly grounded”.

Both of these have the same purpose: they generate new and unexpected trouble. The big difference is that the risk is in the hands of the ref and the stress effects are in the hands of the player.

abadyos
He looks a little stressed out, no?

An example: Abadyos is trying to fly an unfamiliar shuttle through the atmosphere of a has giant. He faces a roll with the risk REVELATION — something heretofore unknown will be brought to light and it won’t be something good for the characters. Abadyos makes his roll with a total of 4. So he could spend 2 stress to get past the risk or he could just suffer the risk realization. In either case he has a success: he’s going to successfully fly this flight path through the gas giant’s strange atmosphere.

So this is a pivot: either way the story is likely to take a new direction. We’re not just flying to Haifeng the dirigible city any more.

Abadyos’ player chose the stress. He was under severe stress once before and compulsively disassembled and knolled part of the medbay, which was a problem for weeks. This stress has no immediate effect, but later, agitated waiting for a stealthy resolution of another problem, he decides to make a Bad Decision (a stress effect) and burst through doors he knows are guarded.

Acting on his stress is something that was up to the player. I cued it, prodding with declarations about the character’s internal state, but the player declared the action. In the past I would have been skeptical about such a purely social mechanism and wanted to mechanize it with points and a meter to manage or something like that. Maybe I just have great players, but this mechanization appears to be unnecessary. Some players are happy to take the cue and make their lives harder. They recognize that they bought the trouble by spending stress points. They know they should make good on the purchase.

If he’d chosen the REVELATION, a bad choice of rocket operation parameters would have ignited part of the gas giant’s atmosphere, pointing a giant arrow at the characters who are trying to hide. Now this is my space as ref: I am being asked to ad lib a major change in plot direction. It’s similar to the stress situation in that in both cases someone has a new creative burden with loose but clear direction: you character is agitated and impulsive and prone to making bad decisions right now or, in the case of the risk, the ref is mandated to create a new fact that changes the direction of the game.

I used to feel I had to mechanize things like this further, but someone pointed out to me that the fiction has its own weight. That there are things that need no further rules because they have a fictional presence that can only be responded to in a limited fashion within the context of the rest of the fiction. If you have a rope, you can do rope things. You don’t need a rule for every possible use of rope. We know what rope is for, and the current context of the fiction establishes the limits of what rope can do. You can write rules for it if you want, but you can get away with startlingly few when we’re talking about something everyone understands deeply. Rope. Agitation. Impatience.

I recognize that this is not necessarily a popular direction. But I think you will like it — maybe love it — because where Diaspora Anabasis puts its effort in mechanically is the setting creation and the character creation. We mechanize the establishing context and then inject deviations and obstacles. I think this is consistent with the original vision of Diaspora and it’s certainly consistent with how I plan and run a game.

You may notice this is similar to the Soft Horizon system and it is. It’s tuned for a different purpose and the dice are different, but the core method is the same. So far this is because it really really works for me. That could be the kiss of death commercially.