Introduction

Interactions are (with the concept of Entity) the core of the Metacosm game engine. Designing an efficient and flexible interaction model is really important because so much will run on interactions in the game engine. Next, we define what is an Interaction in Metacosm.

Interaction

Interactions are the modality through which Entities modify (or at least try to...) their surrounding (including themselves). Everything that has an observable result in the game domain, is the result of an Interaction between one (an Entity interacting with itself) or several Entities.

The approach that we decided to take in this document is to account for the thought process that we followed to design the interaction system. More specifically, we will try to define interesting use cases that raise issues that we will try to address by designing the interaction system. We believe that following this process will help us design an efficient interaction engine and will serve as documentation and history of the choices that were made. This document will be finished when all identified use cases can either be implemented using Metacosm's interaction engine or rationale will be given as to why a given use case won't be supported.