samedi 18 décembre 2010

Interactive fictions

I've been working for a few weeks on what is called an "interactive fiction".

Basically, a text-based adventure game, not necessarily entirely text-based (there may be illustrations) but whose operation, whose gameplay, is entirely text-based.

A world in which events, characters, in short, everything is described by text, and where the player enters textual commands to act.

It may sound ultra primitive, but the capabilities of today's computers, compared to those of the 80's - when the great standards of this genre were released, for example, on CPC, The Black Sect, Omeyad, Sram 2, Orphée – and the possibilities offered by modern programming languages, such as Inform7, which I use, make the games almost infinite in size and complexity.

So I am, for the moment, because it will grow again, at no less than 520 places where the player can move. Nothing prevents me, apart from the work time, from adding twice or three times as many, or ten times as many, to create a world or a city that is rich and explorable in its every corner. With an equally virtually infinite number of non-player characters and items to manipulate, missions and subplots, in short, as on Zombo.com there is no limit other than the imagination.

Of course, I wouldn't hate to have an illustrator with a brain directly connected to mine, who would give an objective, immediate, visual existence to what I'm clumsily trying to translate into sentences. But having a tool as powerful as Inform7, and as easy to use, is already unhoped-for.

The programming language resembles the human language. Its syntax is quite rigorous, but once you get the hang of it, it works on its own.

Example:

HeadRoomHouse is a room. It is north from MaisonChefCouloir. The printed name is "In the bedroom". The description is "[if unvisited]You enter the bedroom of what was once the Bauer couple. The cupboards are open, their contents spilled on the floor, desecrated. The bed has been used as a latrine. Whoever came here obviously did everything they could to defile this place. You are in the bedroom. The cupboards are open, their contents spilled on the floor, desecrated. The bed has been used as a latrine[end if]".

A code that defines the existence of a room (HeadRoomHouse), its name on the screen and its descriptive text, with variables (the text varying if the room has already been visited, or not). Let's admire the economy of means!

Another one: 

Every turn when the Prostitute is in the location of player:
If a random chance of 1 in 10 succeeds
begin;
say "[one of]The girl smiles at you with a teasing look. The girl: 'Do you want to come along, my wolf? The prostitute lights a cigarette and sighs. The prostitute looks exhausted, the night is going to be long; you feel sorry for her. The girl, in a whining voice: 'Do you have some booze? [The girl brushes her hair back, holding a small oval mirror in one hand. The girl nods discreetly to her pimp, who is standing in the distance. The girl smiles at the men who pass by, looking at them from head to toe, without modesty. The prostitute runs her fingers through her hair, sighs. The girl smiles at you with a slightly sad look. In random order";
end if.

A code, here, that allows to display randomly, when the player is in the presence of a non-player character, some ambiance messages, purely free of charge, but that give an impression of life, of autonomy of the game world.

Again, minimal code, for something that really brings to the game – and in a language so close to human that it requires no learning as such. The manual of the software is sufficient for most of the cases where the syntax is a possible problem.

So I'm enjoying creating a city as large and rich as possible, where the player can lead an absolutely non-linear life. Maybe I'll try (technically, it's a bit more difficult, but feasible) to take a model from GTA, in the "total freedom / no end" genre. And why not work constantly to increase the game, by sending updates to my players, who will be able, without losing their saves, to constantly have new places to explore, new objects, new situations to discover.

Until a language is simple and powerful enough to generate these new features by itself.

*

That being said:

I consider interactive fictions as an authentic ludic genre, in its own right, but also as an authentic literary genre – they could be in the 21st century, what the novel was in the 19th and 20th; a place of exploration of reality and human problems, and of reflection, even of proposal (political, philosophical) where an even greater identification of the "reader", and even a form of cyber-bovarianism will make the thing even more effective.

On the condition that we mutate the novel itself, by integrating into it all that the F.I. has of labyrinthine, of variant, of random, but also of redundant, of buggy, of limited – because it is also, in the same way as the traditional narration, but at another level, a faithful image of reality.

I imagine a book – can we still say a novel? but in the end what does it matter – whose text would resemble a video game source code.

A thrifty, precise, systematic, ordered, hierarchical language, which, without those damn stylistic effects that rot literature – and which are not "style" – establishes a world.

A text that integrates the different levels of consciousness and reality that we go through every day – the daily, mechanical, almost unconscious acts – daydreaming, memories – the waking dream that are the virtual worlds in 2D or 3D, etc.

It is not a question of "making science fiction". It is not about gimmicks or literary processes to be in the air of time.

I started reading a novel this afternoon that says it better than I can in a few sentences:

"Coding is everything that poetry meant to me back when we were in college. Precision, eloquence, power, completeness. Fourteen lines can fill you with the entire universe."

God wrote the source code for the universe. There is nothing to stop us from imitating him.

Aucun commentaire:

Enregistrer un commentaire