Argax Project

Node Status: COMPLETE

World-level Events: Verbs and Deeds

A Marlinspike game defines a number of verbs, which are used by the player to interact with the objects of the story world. As the current Marlinspike implementation is text-based, example player commands might include take tennis ball, go north, talk to Alice, or punch Fred. These commands illustrate the verbs Take, Go, Talk, and Attack (for which "punch" is a synonym).

When processing user input, the game system first determines whether the resulting command is possible. For example, the tennis ball might be nailed to the floor or Alice might not be in the room, making the commands take ball or talk to Alice impossible to complete.

Every valid command is then translated to one or more world-level events called a deed. A deed has a sentence-like structure that includes the verb performed, the direct object that was primarily affected by the verb, and an optional second object that was also affected by or involved in the deed. As an example, suppose the player's character is currently on the tennis courts and the player types give ball to Alice. If this deed is successful, it would be represented as: Give(ball, Alice).1

The physical outcome of deeds is usually presented to the player as a single sentence of narration, such as "Taken." or "You offer the tennis ball to Alice."

Marlinspike architecture: verbs
The player directs his player character to affect world objects through verbs, which produce specific deeds in the world.

Notes

  1. This is actually a simplification. Marlinspike deeds also contain the actor that performed the verb (usually the PC) and the location in which the deed occurred. So this deed would actually be represented as: (PC, Give, ball, Alice, TennisCourts). However, to simplify the examples over the next couple sections as we explore the process of casting deeds to actions, I will leave off the actor and locations from both deeds and events.

ToDo