Skip to main content

Accumulated Braindust

Conor McBride posted a really intriguing list of research problems on his mind at the end of this year, and I thought it was an amazing idea, so I'm copying it. I have little notes I've made to myself in paper notebooks and text files, but rarely do I go through and collect them all in one place.

  • Computer-checking linear logic program invariants (and other, perhaps variant, properties) - what is an appropriate metalogic to reason about linear proof search?
  • Generative invariants: what is their expressive range? Does it have something to do with (co)inductive datatypes or their dependent generalization? Can we extend them to describe general structures such as graphs (with no self-edges or multi-edges), perhaps by allowing quantification over, and introduction to, *sets* of terms rather than types?
  • Ordered logic - are there more connectives? constrained replication and mobility, e.g. a propositional operator *A meaning A can be replicated "in place."
  • What types of bugs exist in sandbox/emergent-behavior games? Could there be a database of these, like a version of "the strange log" w/reference to code or otherwise more concrete structures?
  • Concurrency and multiagent coordination, interactive storytelling, etc - what formal connections can be made? In prior work on validating interactive stories, the types of bugs and properties include things like deadlock and liveness.
  • Concurrency & (epistemic?) modal logic - can a thread/actor/whatever be typed as belief wrt a modal principal?
  • Can one do automatic reasoning about the lifetime of objects in a linear logic program?
  • Chu spaces and n-category models of concurrency - how do they relate to linear logic/CLF?
  • What's a good datatype for hypertext?
  • What's a good notion of subordination for linear logic? should it exist at the atom level or rule level? what does it have to do with causality? 
  • Can one completely unify verbs & nouns in standard parser IF? i.e. reimagine looking, walking, taking etc. as uses of items like sensors, wheels, grabbers that have to be collected + a single "apply" verb (kind of like the Hilbert system of IF games, lots of axioms & modus ponens). are sensors, grabbers, and wheels "canonical" in some necessary sense, or are they just better able to simulate human experience than other interfaces?
  • Is there such a thing as a set of composable macro-building-blocks ("design patterns") for interactive narratives/nonlinear quests? what is a (game) design pattern -- can they be formalized? how are they composed?
  • Can one create a purely-human-mediated decentralized roleplaying system, i.e. one with no GM but still incentives to create interesting scenarios through conflict? Can in-person story games break away from the idea of *role*playing specifically and think about controlling parts of the story which may not encompass or be limited to the actions of a specific character? Does that deprive players of an essential kind of agency?
  • How can I make (or make a tool for making) multipanel hypertext, i.e. so that I can make the thing I wanted Origins to be able to evolve into - multiple loci of control that can sometimes converge and re-diverge?
  • When I design card games, the kind of bug I always have is in failing to create an incentive for a certain action, or making strategy too obvious. Can one model games in a way that allows reasoning about multi-human-player games in terms of incentives, beliefs, partial information, etc, and all of the decision theory/game theory it implies? Maybe using epistemic modal logic (again)?
  • Player-controlled markets: Can we make games where resources actually have to come from somewhere (like other players), and are finite? Like imagine there were no NPC-controlled item shops; the players had to run them. (I know there are games where players control the economy, but usually this is partial; items can still be acquired from quests/NPCs.)
  • Narrative rearrangement: Is there a way to extend the idea of fridge poetry/word rearrangement/replacement mechanics (like in Today I Die) to the narrative level? What's a "unit of narrative" and how does it compose? Would CLF's "natural" answer to this be compelling?


  1. Re: decentralized roleplaying, I really enjoy The Quiet Year and Microscope, both of which are GM-less and character-less.

    There's also Fiasco which is GM-less but not character-less. I've never really played a game of Fiasco that worked, but many people like it.

    Finally it's worth mentioning the GM-less variant of Monsterhearts. I haven't played it and I don't know how well it's been playtested, but the ruleset has a lot of really interesting ideas (along with some sort of uncomfortable ones).

  2. Did you know that you can earn dollars by locking special pages of your blog or website?
    Simply join AdWorkMedia and add their content locking plug-in.


Post a Comment

Popular posts from this blog

Using Twine for Games Research (Part II)

This preliminary discussion introduced my thoughts on using Twine as a tool for creating prototypes for games research. I'll start with documenting my first case study: a hack-and-slash RPG-like setting where the player character has a record of attributes ("stats") that evolve through actions that turn certain resources (money, health, items) into others. I've selected this hack-and-slash example because it falls outside the canonical "branching story" domain thought to be Twine's primary use case, but it is not too much trickier to implement. It relies crucially on the management of state in ways that simple branching stories would not, but it does so in a fairly straightforward way.

If all goes well, this post may also serve as a tutorial on the "basics" of Twine (links + variables + expressions). In particular, I'll be using Twine 2/Harlowe, and I haven't seen many tutorials for this new version published yet.

To me, the main "…

Why I don't like the term "AI"

Content note: I replicate some ableist language in this post for the sake of calling it out as ableist.

In games research, some people take pains to distinguish artificial intelligence from computational intelligence (Wikipedia summary), with the primary issue being that AI cares more about replicating human behavior, while CI is "human-behavior-inspired" approaches to solving concrete problems. I don't strongly identify with one of these sub-areas more than the other; the extent to which I hold an opinion is mainly that I find the distinction a bit silly, given that the practical effects seem mainly to be that there are two conferences (CIG and AIIDE) that attract the same people, and a journal (TCIAIG - Transactions on Computational Intelligence and Artificial Intelligence in Games) that seems to resolve the problem by replacing instances of "AI" with "CI/AI."

I have a vague, un-citeable memory of hearing another argument from people who dislike the…

Using Twine for Games Research (Part III)

Where we last left off, I described Twine's basic capabilities and illustrated how to use them in Twine 2 by way of a tiny hack-and-slash RPG mechanic. You can play the result, and you should also be able to download that HTML file and use Twine 2's "import file" mechanism to load the editable source code/passage layout.

Notice that, in terms of game design, it's not much more sophisticated than a slot machine: the only interesting decision we've incorporated is for the player to determine when to stop pushing her luck with repeated adventures and go home with the current spoils.

What makes this type of RPG strategy more interesting to me is the sorts of decisions that can have longer-term effects, the ones where you spend an accumulation of resources on one of several things that might have a substantial payoff down the road. In a more character-based setting, this could be something like increasing skill levels or adding personality traits.

Often, the game-…