Fundamental concepts of a world model?

What concepts would you use to describe an IF world model? By concepts I mean things like size, visibility, frangibility…this is for a more gamey, simulationist text game.

Here’s my list so far. There are some oddball choices like movement and time, and some redundancy, but it’s the basic idea:

  • touchability
  • visibility
  • movement/motion/inertia
  • gravity
  • matter – solid, liquid, gas
  • size
  • cuttability, hardness
  • pourability
  • frangibility
  • sharpness
  • density
  • evaporability
  • temperature
  • time
  • sound

For reference I found an interesting old thread at RAIF, … solutions/ ). Much of the list is from that thread.

The idea behind choices like movement is I’m treating basic game mechanics as fundamental properties too.

So what would you add/remove/change?

You didn’t mention the underlying arrangement relations: containment, support, carrying, part-of, and map-adjacency.

I’m not sure what you mean by “fundamental” here. In one sense, visibility and touchability are non-fundamental: most IF systems construct these concepts out of the world arrangement (plus transparency/opacity and a few others).

Concepts like size and temperature are non-fundamental in a different sense: many games omit them. It’s only worth including them when the game’s particular content requires them.

That’s a good point – I’m still sort of stabbing around to find the right level of abstraction. The players will be interacting directly with these concepts so for some actions it’ll be easier to deal directly with visibility.

Right level of abstraction for what? There is no abstraction without service to a goal. Some things I prefer to remember when creating abstractions: 1. Every abstraction is a lie, and therefore does a disservice to what it attempts to represent. 2. Just like lies, abstractions are infinitely pileable on top of each other. There is no ‘fundamental’ abstraction: “it’s turtles all the way down” as the saying goes. 3. Therefore you can’t decide at what level to abstract something until you know what sort of a lie do you want to tell? 4. A corollary is that one wouldn’t want to abstract anything that one doesn’t need to abstract in order to get whatever job done. Particularly when writing fiction, right?

Currently I am still in a mode where I want to tell more kinetic lies in interactive text form, therefore I would add more kinetic and time-based abstraction to your model and delete a bunch I don’t need. (Due to rule #4.) I would add the scene, to begin with, under ‘time’. I would add an actual narrative beat or narrative question-and-answer as an abstraction, because I want my lies to be seductive – I want that to be baked in. I would add a timeline abstraction so that every moving actor in a scene can have an individual timeline to be planned or disrupted. Just some ideas there.

For physical properties?

Freezing & Boiling points
glue and rope : ways of semi-permanently attaching things to other things
elasticity (= bounce + rope)
wind & water currents
break vs. bend / flexibility
non-visible-spectrum E-M profiles
can you rub them for static electricity?
toxicity: ingested, on contact, inhaled
that whole Schrodinger’s cat quantum thing

I would certainly make sure you account for:

  • imperial-possession status
  • stage of embalming
  • training
  • suckling-pig or not suckling-pig
  • mermaidosity
  • fabulousness
  • stray-dogitude
  • included in this classification
  • the quality of trembling as if mad
  • countable or innumerable
  • whether drawn with a very fine camel-hair brush
  • et cetera
  • condition of having recently broken the flower-vase
  • degree of resemblance to flies when viewed from a distance

If that’s true for an object, then that means the entire object is a fundamental concept itself? You just broke my world model!

“Desiderata for a Physical Simulation Library” is a thing I wrote about this years ago. What it says about the current state of the art is no longer true, especially after TADS 3, but it has various brainstorming that was on my mind at the time.

Whatever you decide to model, my main advice is not to box yourself into simulating anything unless you’re willing and able to describe its state to the player, and parse any relevant incoming input.

(This is a bit of a tangent, but since this has slightly veered into a discussion of world models in general, this is the kind of thing we’re modeling in Versu:

  • narrative scene
  • narrative events that can be triggered by appropriate circumstances
  • quips of dialogue
  • emotional state
  • character self-image
  • current relationship state between characters
  • character opinions about one another
  • memories
  • goals
  • relationship state characters wish they were in

In this world model, emotional and narrative concerns are primary, and physical objects are considered chiefly in terms of how they can be used by the characters to influence events.)

Do you ever model characters’ knowledge or conjectures about the mental states of others? I’m thinking of stuff like this: Heathcliff knows Isabella loves him; Mr Collins is beginning to think Elizabeth dislikes him…

Very selectively. This can become (as you might imagine) a scary bottomless pit, if one isn’t careful.

And thus is my life reduced to a two sentences.

David C.