Liberation R&D – 5

With continued development on my text adventure game, I’ve finally implemented a working, albeit somewhat simple quest.

Starting from where I left off in the last post, the player is made aware of their first quest by talking to the disgruntled internet user in the first room of the game. As was shows in a previous screenshot, by talking to the user, the player finds out that they need to somehow get faster access to “Friendbook”

By asking a series of questions related to the words in bold, I’m able to finally discover how I can help the character; by finding an object called a “Proxy unit”. Despite the fact that the player now has an objective to fulfil; if they so wish they can continue to talk to the user to discover tips or learn more information about the world; including the discussion of real-world issues related to the internet such as network advantages and DDOS attacks. An example of this can be seen in the screenshot below.

By doing this, not only am I trying to make the world seem more real by providing background information for the player to discover, but also in an attempt to somewhat disguise one of the biggest problems with classic-style text adventure games: conversation. From when these style of games were first released in the mid-70’s, and all the way through the 80’s while they were still popular; one of the features developers tried to push was the illusion of being able to say anything to any character within the game world and receive a relevant response, making it seem like a real, dynamic conversation. However, much like the game I’m creating, this process was often flawed and relied on the user typing a series of key words for which there is a pre-scripted response to.
As is written in the book Game Design by Andrew Rollings and Ernest Adams, “A few early text-based games tried to implement parsers that could understand limited English sentences as typed by the player, but these seldom succeeded. You got either an NPC saying “I don’t understand that” when you asked a perfectly reasonable question, or an NPC whose answers weren’t quite to the point, giving the impression that he was drugged or mentally ill.” (Rollings, A and Adams, E. Game Design, 15, 469.)

These issues are the reason I’m using pre-scripted responses to phrases that are highlighted to the user; any attempt to hide this would mean that not only does the player have to try and understand what they need to be asking (which could get very complicated), but there would be no sense of guiding them along. Much like the use of “quest markers” in more modern games, especially RPGs like Skyrim, which are designed to show the player where to go without having to open a map or menu (a problem in many older games), in much the same way, the conversation topics in bold serve to guide the user while avoiding being obtuse. They may be a bit obvious, but it’s better than the player not understanding what they need to say and do.

This screenshot from Bethesda’s The Elder Scrolls V: Skyrim shows a quest marker circled in red.

With the player now understanding that they need to find a “proxy unit”; the next step is actually finding the item. Looking back at the conversation with the internet user, the player understands that it might be worth looking in eBought; an in-game parody of eBay. Because my game is set in a virtual reality space, different websites serve as different “rooms” for the player to travel to, and each one is physically represented as, for instance, eBought is a gigantic market bazaar where all sorts of users are selling all sorts of things.

The screenshot above shows the interactive interface that is present when playing a game in the Quest engine. Unlike older text adventure games, this is far more user-friends, including panels for inventory management, navigation and a compass for movement around the game. There is even a map which is updated in real-time as the user moves around to prevent them from becoming lost. These features help to make the game a lot more accessible to people who may otherwise ignore it.

Here you can see the location of other “rooms” relative to the players position: from the starting point of the game, there are 5 different rooms the player can travel too, but only 4 that can be accessed upon starting a new game; trying to go east to Friendbook fails due the line of people waiting to access the website. Until the quest is completed, the user will be unable to access this area. However, we can see that eBought is to the west, and that’s where the Proxy unit is supposed to be, so it would be a good idea to head there.

QDev1

This gif stands as a good visual example of the game itself, movement and object interaction.

Now that the player has acquired the proxy unit, they now need to go back and give the internet user the proxy so that Friendbook can be accessed.

Upon handing the user the object, he opens up a way for the player to proceed into the next area.

The gif below shows the full process of completing the quest, without the conversation.

QDev2

It may only be a simple “fetch-quest”, but it’s a solid start and I think it works well as an introductory quest. The book I mentioned earlier, Game Design, has a few pages discussion the sorts of things to avoid during the development of an adventure game;

– Puzzles solvable only by trial-and-error
– Conceptual non-sequiturs (e.g; “sharpen the headphones with the banana”)
– illogical spaces
– Puzzles requiring outside knowledge
– backwards puzzles (Finding the solution before finding the puzzle itself)
– Too many “FedEx” puzzles (The actual puzzle I have designed above; however they are simple and good for letting a player get to grips with mechanics without any pressure to think critically or finish the puzzle quickly. Once the player is familiar with the game, however, these quests shouldn’t make an appearance.)

Liberation R&D – 4

Until recently, my first thoughts for this project were to create a point and click adventure game in the style of games such as Monkey Island. Unfortunately, I’ve never made a game before, and the software I originally had in mind to use – the Unity engine, is far beyond my capacity to learn. While looking at tutorials and downloading the program itself did nothing much to help. It wouldn’t be far from the truth to say that I perhaps took on a lot more than I could chew, and for this reason I’m pulling away from the idea of a point and click adventure, and instead going to focus my efforts on creating a text-based adventure game like Infocom’s The Hitchiker’s Guide to the Galaxy, released in 1984. A remastered version of which can be played for free on the BBC website: http://www.bbc.co.uk/programmes/articles/1g84m0sXpnNCv84GpN2PLZG/the-hitchhikers-guide-to-the-galaxy-game-30th-anniversary-edition

The software I’m going to use to create my game is Quest, (http://textadventures.co.uk/quest) an open-source text adventure engine which makes the process as easy as possible, with a click-interface of pre-set variables and options to make the development process easier. There may still be some light coding involved, but not as much as would be necessary if I wished to create a point and click as originally intended.

To get familiar with the program, I looked at the tutorials which can be found here http://docs.textadventures.co.uk/quest/tutorial/, and made a small-mock up of various mechanics and systems in an attempt to become familiar with the program.

qdev1

The image above shows the main game window for my very first creation. As you can see, I added various rooms and objects as a way of experimentation.

qdev2

 

 

 

I included these cigarettes as a way of experimenting with implementing my own verbs. In this case “smoke”. Meaning that should the player decide to type “smoke cigarette”, then the character will smoke a cigarette. I’m going to try to implement object counts so that the player can only use so many before they run out. As you can see above as well, smoking a cigarette will temporally make a room brighter, but a timer needs to be implemented so that this is only for a matter of seconds.

qdevXtra

Here it is working in-game.

qdev3

I made this room dark to test ways of implementing this as an obstruction or a puzzle for the player character to solve and just generally how the light/dark mechanics work.

qdev4

This is the flashlight, which works as a portable light source for the player, and can also be switched on and off. Turning it on makes scripted rooms brighter, meaning the player can navigate.

qdev5

This image shows my further experiments with the verb menu; including a “search” command for some corpses. Furthermore, doing so reveals a key card to unlock the room’s exit.

qdev6

 

This is the exit in question; a locked security door that can only be opened with the key card found previously. This served as experimentation both using locked exits and also using items on one another. (see below)

qdev7

Finally, below we have an example of a container. This is an object that can hold other objects inside, meaning I could perhaps implement such a system as a puzzle or a form of item-management for the player.

————————————————————————————————————

This screenshot shows the main screen of the Quest development software and the main details of the game I’m creating. On the left-hand side can be seen all of the rooms and objects that currently exist within the game and what they’re linked to, while on the right are the details and available options and sub-menus.

A screenshot of the home page of Quest.
A screenshot of the home page of Quest. (Click to enlarge)

For someone like myself who is inexperienced with creating games, Quest provides an opportunity for me to create a simple game with a minimum of coding knowledge. Using the basics of adventure game design as outlined in the book Game Design by Andrew Rollings and Ernest Adams,  I believe I can create a high-quality, albeit short, text adventure game.

A screenshot of what a "room" looks like.
A screenshot of what a “room” looks like. (Click to enlarge)

This screenshot showcases the main development window of a “room”, each tab controlling a different aspect. For instance the tab viewable in the screenshot is the “room” tab, which lets me enter the specific description for the room. Other tabs of note are “light/dark” which enables me to change the light levels of a room, creating a potential obstacle or puzzle for the player to overcome. The “exits” tab allows me to create exits from the current room and link them to already existing or new rooms, which in turn increases the map size for the overall game. “Scripts” allows me to run automatic scripts upon entering the room which, for instance, could be anything from having other characters moving around, creating a time limit or having the game print a unique message only once.

Q3
A screenshot showcasing the show/tell menu. (Click to enlarge)

here you can see the ask/tell menu. Using scripts and keyword identification, it is possible to ask or tell an NPC (Non-player character) within the game about certain topics to create the illusion of conversation. In early text adventure games like Hitchiker’s Guide to the Galaxy, it could often be difficult for the player to figure out what to ask other characters due to the preciseness needed when asking a question, and the lack of indicators to show what topics can be spoken about. In an attempt to subvert this, I’ve made discussable topic keywords bold in an attempt to give the player some guidance.

Q4

As can be seen in the screenshot above, this is a pre-scripted response to the player asking the character “disgruntled internet user” or simply “user” about the “hub” – the first room in the game. The user then responds with the line that can be seen in the screenshot. As shown, the word “dwindled” in in bold; indicating that the player should as the character about this. Due to the key-word system Quest uses, it would also be okay to simply use “dwindling” or “dwindle”.

An example of the in-game interaction would be as follows:

Player: ask user about hub
NPC:  “It was amazing when they first launched it. Buzzing with activity. It’s… Dwindled over more recent years.”
Player: ask user about dwindling
NPC: ” “Well ever since the internet became a more constrained and controlled place, not many old users hang around longer than they need to.”

The same conversation can also be seen in-game below.

A screenshot showcasing the ask/tell system in-game. (click to enlarge)
A screenshot showcasing the ask/tell system in-game. (click to enlarge)

The screenshot also shows the examination system, which lists the description of an object (including other characters) when the player “looks” or “examines” them. This gives me an opportunity to provide hints and direction without breaking the flow or immersion of the experience. As can be seen in the screenshot, the description reads

“It’s another internet user, ID says his name is Matthew Clarke. He’s waiting behind the large line of people for access to Friendbook, which he doesn’t seem too happy about. Might be worth asking him about some stuff, perhaps a faster way to access Friendbook.”

Within this description, I introduced another character (“his name is Matthew Clarke”), introduced context into the situation (“He’s waiting behind a large line of people for access to Friendbook”), gave the player an objective (“Might be worth asking him about some stuff, perhaps a faster way to access Friendbook.”) and with the same sentence, some guidance on what to do next.

In my next post, I’ll be showcasing further developments and a preview of a more-or-less fully completed “quest”.

 

Liberation R&D – 3

Jumping straight off from where I left yesterday, I thought that perhaps a good way to represent the internet as non-neutral would be to have two people perform the same activity, but with one slowed down against their will, with nothing they can do to complain. The reason for this is because without net neutrality, ISPs will be able to slow speeds of other users on their network just because they’re with a different ISP.

For example, if two people try to toast bread at the same time, on the same settings with the same bread, but with two different toasters, somehow making it so one of the toasters takes a much longer time to get the same result as the other toaster.

This is just an example, but if I could think of a way of further developing this into a physical project, I think this is the idea I would like to go with.

—-

How about a simple multiplayer game where the users have to run down a corridor, or around an arena full of obstacles to collect several items. However, at the beginning of each new round, one of the characters is randomly selected to have the input simulate high network latency. This idea could be expanded to accommodate more players or new systems.

In the book Game Design by Andrew Rollings and Ernest Adams, chapter 6 of the introduction talks about game design and the elements needed to create a good experience for the user, such as the interactivity, visual and sound design.

Interactivity

As much of a message as I am trying to send with my game and the gameplay elements within it; the game itself should still be entertaining to play. As a progression to the idea I had above, I think that a game such as Mario Kart would be a perfect way for my own game to play; the users have to race around a track which is based upon an aspect of the web (Ie; social networking) and try to be the first one to the end. Along the way, users can obtain power-ups which are a representation of ways that the non-neutral internet is negatively affecting users. an example of this would be a power-up that can slow another user down by simulating high network latency, or another power-up that can “blind” the player by censoring the game for a short amount of time.

 

 

Visual Design

I’d like my game’s visual design to be clean and simple yet stylised; a lot like mirror’s edge, but unlikely to be as smooth or polished. I want my game to have visuals that serve as an interpretation to what a physical online space may look like.

A screenshot from Mirror’s Edge showcasing the clean, simple and yet recognisable visual design.

Many games over the years have had their own interpretations as to what a visualised online space might look like. For example, here is a screenshot of Mass Effect 3, taken from a mission involving the exploration of a massive online neural hub.

A physical online space in Mass Effect 3.

And finally another from Metal Gear Solid’s “VR missions”; an online virtual reality training simulation that exists within the Metal Gear universe.

This screenshot from Metal Gear Solid showcases the VR interface; a simple, mono-colour space set in an endless void of computer code.

As for the characters; I think it would be rather effective to have the players represented by nondescript, neutral characters and the vehicles represented as simple computer mice. The statistics of each player could be sourced from the average connection speeds (and other data) from real-world ISPs.

Sound Design

Audio would be a standard fare; a simple techno beat could serve as generic background music, with error sounds and effects used for the use of power-ups, game overs, finishing the race and more.

 

——

Further developments: An ADVENTURE game! While I would love to make one in the style of say, Myst, I could just make a simple point ‘n’ click game 90s style, or an even earlier text-based adventure like The Hitchikers Guide to the Galaxy. The game would act as a tongue-in-cheek adventure through the modern web, but in a dark future where net neutrality has failed to gain traction and as such, much information is blocked, there is no anonymity and other events such as slow-downs, throttling and congestion could occur.

Interactivity

The game would play like your standard point and click game; with a visual interface showcasing the game world and characters, with a menu underneath featuring actions the player can take such as “talk to” or “pick up”. The only mode of interactivity would be through mouse clicks, and as such playing the game would be a very simple affair.

This screenshot is from Adventure Soft’s 1993 DOS game, Simon the Sorcerer. It’s a good showcase for what point and click interfaces looked like at the time.

Visual Design

Like many games of the type that came out in the late 80s – mid 90s, the graphics would be based on 32-bit pixel art, such as that seen in Lucas Arts’ The Secret of Monkey Island or The Dig. However, these games where made by a team of professionals, so more than likely many of my sprites will be taken from open-source projects.

A screenshot from the HD remaster of The Secret of Monkey Island (1990)
A screenshot of Lucas Arts’ The Dig. (1995) It features much higher-quality and complex scenes than Monkey Island.

Sound Design

Like many early adventure games, my game won’t feature voice acting or complex music, instead relying on simple custom music to fit the theme of the scene currently being shown on screen.

The software used to create my game can be downloaded for free from http://www.adventuregamestudio.co.uk/

Further open-source engines can be found here: http://html5gameengine.com/

Liberation R&D – 2

Having mulled over my thoughts from yesterday, and the concepts of freedom that the Magna Carta represents, I’ve decided to take a look at Net Neutrality. Net Neutrality stands as a way of treating all online traffic, without discrimination based on end user, website or location. Although it’s a hotly debated topic, I firmly stand for Net Neutrality and what it represents. The concept of an open internet is extremely exciting, with a lack of online censorship, more transparency and open web standards. In the United States, large corporations such as Time Warner and Comcast are infamous for the monopolies they hold over large areas of land, asserting themselves as the only option for many residents who need to connect to the internet. These companies come under a lot of flack for these monopolies, and are well-known for recurring incidents of extremely poor customer service. Finally, they regularly push lobbying efforts in the American political systems to continue their monopolies, prevent efforts to improve the efficiency and cost of connecting to the internet and in some cases push for censorship and online policing.

It’s worrying to think of the future of online activities if a company such as Comcast managed to spread their agenda world-wide. This is why I strongly believe in an open, neutral internet. At a base level, it should be a human right to access the internet and the wealth of information that is stored there. To openly and actively try to fight against such a philosophy is baffling to me.

I’m wondering if there’s perhaps something I could do that would represent the consequence of failing to achieve net neutrality, such as creating a project that involves some sort of delay in its feedback to the user, as a way of representing slow internet speeds; or censoring something so that the user can’t see/interact with it, even if they want to.

I might be able to take the idea behind a “glow wall” and develop that into something more.

I had an idea for a USB stick that contains an executable that, once run, will simulate a non-neutral internet browsing experience  including slow speeds and censorship. While the coding will be beyond my abilities, I think it’s an interesting idea worth looking into.

Liberation – R&D

This semester we are continuing from the theme of last semester – Liberation. From here on, I’ll be posting my research and tidbits of information and other pieces of inspiration which will help to inform my final product in week 30.

A good starting point is to define liberation: “the act of setting someone free from imprisonment, slavery, or oppression; release.”, and also “freedom from limits on thought or behaviour.”; this can be connected to the Magna Carta, a document which of this year is celebrating its 800th anniversary and was chartered to create peace between the unpopular King John and rebel Barons. Although King John died the following year, the Magna Carta was kept as the first step towards constitution within the United Kingdom. One of the most central points within the Magna Carta states that nobody, not even the King, is above the law.

The Magna Carta could generally be compared to the Constitution of the United States of America. Although while the Magna Carta itself may no longer be so relevant to contemporary Britain, it’s almost certain that we wouldn’t have modern Britain without it.

Conceptually, my project could focus on the “freedom of the people” aspect that the Magna Carta represents; a technology of some sort that can help “liberate” people; whether that be from the monotony of life, themselves or something a little more literal.

However, I would much prefer to look into the liberation of information: a much discussed-topic of recent years.

Freedom of information:
Edward Snowden
Jullian Assange

The following are several examples of existing projects that I believe best represent the idea of liberation:

– Wikipedia
– Wikileaks
– Torrent websites

While these are websites, I believe they still embody the spirit of freedom. It would be good to take these concepts and expand them beyond the constraints of the internet.

 

-USB Dead drops-