Mark Kollasch's Incomparable Game-Making Weblog

Words about the design and creation of interactive entertainment of all types.

17 May 2008

Philosophical Game Design

An advisory: this is a really pretentious one.

Philosophy is one of the most applicable fields. It might not have much practical use, but as the history of ways of thinking it represents something relevant to any intellectual endeavor. Let's talk about how one might use philosophy to make a game.

You might select a specific idea from the corpus of philosophy, and construct a new mechanic (or variation on an existing mechanic) which summarizes the concept. It's been done already, too. Most obviously, any combat-heavy RPG is a decent example of a Hegelian dialectic: the player faces a series of roughly symmetrical challenges between his avatar and another one; after each one, the avatar changes in a manner based on the conflict, and proceeds to the next. Turn it around backwards and you've got Warning Forever; make it multiplayer and you've got a single-elimination tournament. If you explicitly set out to make a game with that philosophy, however, you'll come up with something that pays very close attention to what happens in the challenge, or even combine some attributes of the vanquished avatar into the victorious, rather than genericizing everything into EXP and learning.

To make a game in favor of determinism, construct a low-chaos system in which all player actions lead to the same conclusion; to make a game opposed to it, do the opposite. Pascal's Wager, where the option on which the player bets determines the reward for betting correctly, can easily be modified to represent a gambling game. Peter Molyneux and the good folks at Bioware have already caught onto this idea by attempting to find models of ethics that can function in a game, to varying degrees of success.

Narrative-driven games can employ the techniques that authors have been employing for centuries to advocate any argument under the sun. It's intuitive, though the bolder the idea, the more skill needed from the writer (so the more jack-of-all-tradey among us might want to tread carefully).

I mentioned earlier that games have themes. A philosophically-designed game is one that is intended from the beginning to contain a specific and lofty theme. Since before Socrates, philosophers have constructed hypothetical, highly improbable settings which simplify a new, complex idea. Since these settings rely on a specific set of rules, it's fairly straightforward to use games as a continuation of the practice, with the added option that the audience may learn the idea by exploring it, rather than having it explained to them.

Labels:

12 May 2008

Classical Computer Science

It occurred to me, of late, that there is some considerable overlap between concepts in modern computer science and classical philosophy, in particular the ontological models of ancient Greek philosophers. There is a fairly obvious relationship between class inheritance and Aristotelian taxonomy. The abstract data type is nothing if not a practical example of Plato's concept of ideals (and, although this is more likely to be a coincidence, Plato regarded ideals as the ultimate truth, while in Lisp-derived languages and others, all types inherit from T or True).

And never you mind that any programming language is a formalized system of symbolic logic built upon a set of axioms. You already know that Zeno and Euclid invented those. Mathematical similarities don't count; there's nothing particularly insightful in pointing out that Pythagoras suggested everything could be represented numerically. There are plenty of other pertinent examples. Thales' explanation of change and substance (the fundamental substance of a thing remains the same although its attributes change) is preserved in mutable objects; Democritus' description of the atom is closely related to the discrete mathematics upon which all computer science relies; when Empodocles proposed the four classical elements, he was in fact suggesting the first-order primitives of the universe.

Naïve, low-detail models of the physical world are another common element in classical writing, with pre-Galilean science being what it was. The Greeks maintained such viewpoints because they made intuitive sense and were not subjected to particular scrutiny; modern software engineers do so by stripping away all the data not important to their current undertaking, for purposes of specialization and optimization. Even so, there is noteworthy similarity between classical physics and computing idioms. Of particularly striking interest is classical optics: the notion that vision and light is based on plain rays, rather than the modern model of photons and whatnot. A supposed debate among early students of optics was whether vision functioned by casting rays from the eyes to the objects being seen, or light sources casting rays which entered the eyes. Need I even point out the parallel to different ray tracing methods? In that light (ha!), John Carmack's fascinating work of late rather portrays him as a modern-day... I'm not entirely certain there is a suitable historic analogy for what he's doing right now, but it's nevertheless exciting.

Presumably, all of this mimicry of classical philosophy emerged unintentionally. People perhaps followed a similar thought process to the ancient sages, or, having been exposed at some point to the logical structure of their teachings, repeated them unawares. What might happen if we were to deliberately combine structured classical philosophy and computer science? What about other, later types of philosophy that build upon them? There are millennia of profound thought in human history, attempting to identify the true nature of the world. Since software simulation can present a model of the world which does not need to be accurate, so long as it is mathematically consistent, adopting their efforts to our craft may well introduce equally profound new models with distinct advantages, so that a little knowledge of history may elevate our craft beyond even what our own luminaries and sages have done.

Labels: , ,

Open for business

Well, I had some issues with my host. Didn't have time to resolve it, since I was all of a sudden quite busy with school. It shouldn't happen again, though.

I'm going to be using this place to showcase some of what I've been working on, just as soon as I bring it to a presentable state.

We now return to your regularly scheduled programming.

Labels: