Video Games - California State University, Northridge

Video Games: The Most Complicated Waste of
Time...Ever!
KYLE HWANG
JACOB KING
and
CRYSTAL SHAW
California State University, Northridge
Permission to make digital/hard copy of all or part of this material without fee for personal
or classroom use provided that the copies are not made or distributed for profit or commercial
advantage, the ACM copyright/server notice, the title of the publication, and its date appear, and
notice is given that copying is by permission of the ACM, Inc. To copy otherwise, to republish,
to post on servers, or to redistribute to lists requires prior specific permission and/or a fee.
c 20YY ACM 0000-0000/20YY/0000-0001 $5.00
ACM Journal Name, Vol. V, No. N, Month 20YY, Pages 1–0??.
2
·
Kyle Hwang et. al.
Over the years, video games have become increasingly popular as a recreational activity in our
society. Whether it is through the medium of arcade machines, computers, or game consoles,
video gaming has developed into a multi-billion dollar industry with sales of over $20 billion in
2009. In this paper, we will focus on three areas of video game design and development which are
important to the continued success of the industry. These areas are databases, machine learning,
and game security.
First, we will discuss the history of video games from Pong to WoW (World of Warcraft).
In this section we will focus on different types and specific platforms of video games. We will
emphasize the technological developments of each platform and how those developments have
affected gaming as we know it.
Next, we will examine the idea of a video game as a database. We will define databases and
give examples of different types. Using the example of computer games, we will show that a video
game has many necessary parts for the game to operate. Databases are the method for linking
these essential components.
We will next examine the role of machine learning in gaming. We will look at the definition
and examples of machine learning, specifically, the area of how the video game can change play
based on the users’ performance. We will look at specific examples in different genres of gaming
in order to understand the different ways the machine can learn. We will relate a games database
structure to how the game can potentially learn.
Next, we will mention the enormous investment that developers, companies, and society have in
video games by showing how integral video gaming has become in pop culture and entertainment.
In addition, we will investigate the revenue generated by video game sales. As a result, we will
demonstrate the increasing importance and difficulty of security. We will again journey through
each of the eras of video gaming to specifically look at the challenges faced in ensuring security
and how these challenges were tackled.
We will conclude by looking at how databases, machine learning, and computer security will
play important roles in the video games of the future.
Categories and Subject Descriptors: []:
General Terms: Video Games
Additional Key Words and Phrases: computer security, machine learning, databases
ACM Journal Name, Vol. V, No. N, Month 20YY.
·
3
Introduction
What Are Video Games?
”Video games” has become a common phrase generally used to describe an electronic game in which a user interacts with the game using an input device and
receives audiovisual feedback on some type of video device. While the term ”video
game” was originally meant specifically for games with output displayed on a
”raster” device - a monitor that displays images using pixels - we now consider
PC games, console games, arcade games, handheld games and online games to all
be under the category of video games [Ford, 2010].
The physical aspect of video games, components of the game that the user can
physically see, is made up of three different parts: the output device, the output
itself and the input device. As mentioned above, there are many choices in mode
of game play for a user. The user has a choice of what platform (output device)
they would like to use to access the game. The platform of a game is the electronic
system used to play the video game such as an arcade station, a computer, a game
console or a handheld gaming device. The output of the video game depends on
the platform that the user chooses to access the game. Depending on the platform,
game graphics and sounds can vary greatly. The user also has a choice as to what
input device to use in game play. For the most part, the input device used to
access a game is flexible and can be chosen to suit the needs of the user. Arcade
games and handheld devices are the exception as their input devices are attached to
the machines themselves. For PC and console games, however, the user has many
options. When playing on a PC platform, the user can choose to use the traditional
mouse and keyboard or can attach joysticks or game controllers. On console games,
the user can choose to implement the game controllers included with the console
or can choose joysticks or other specialized attachments to better suit their gaming
needs.
ACM Journal Name, Vol. V, No. N, Month 20YY.
4
·
Kyle Hwang et. al.
History of Video Games
When video games were first introduced, they were not only a source of entertainment, but a product of research and development by companies trying to make
technological advances. Eventually, these developers realized that there was a niche
to be carved out in creating video games. Although not one of the first video games
to be developed, but perhaps the most famous, Pong became an instant success as
soon as it came out. Pong was first developed as an arcade game, then a console
game. Its design was simple. It basically was a primitive version of table tennis.
The instructions were simple as well: ”Avoid missing [the] ball for high score”.
The release of Pong marked the start of the video game industry unofficially [Kent,
2001].
The first video games were arcade games, found in shopping malls, restaurants
and convenient stores. They were primitive devices, usually consisting of a simple
processor and terminal, and were coin-operated machines. They became very popular in a short time span. But the popularity of the home game console brought
about the demise of the arcade game. Some popular arcade game titles, later produced as console games, were Space Invaders, Asteroids and Pac Man [Kent,
2001].
The first home game console was the Magnavox Odyssey, created by Ralph Baer
in the late 1960s and released in the early 1970s. The first game created for the
Odyssey and sold with the console was a patented table tennis game that actually
predated Pong. The Odyssey was not a bigger success because of the popularity
of other table tennis games produced by other game manufacturers such as Pong
from Atari. In fact, Magnavox, who took out a patent on the Odyssey and its table
tennis game, bitterly fought these other game manufacturers in court to impose
licensing fees on them. All told, Magnavox sold about 2 million Odyssey units, but
it could have sold more if there had been more games developed for the console
[Kent, 2001].
Atari dominated the next generation of game consoles. These game consoles were
ACM Journal Name, Vol. V, No. N, Month 20YY.
·
5
much more intricate than the Magnavox Odyssey because the game cartridges were
much more complex. Early game cartridges consisted of hardcoded microchips.
These new game cartridges contained ROM chips that were encased in plastic cartridges that were plugged into the console. Processors read the code on the memory
chips. The creation of cartridges allowed the gamer to accumulate a collection of
games [Kent, 2001]
The Japanese entered the video game market with the Nintendo game console
in the 1980s. Donkey Kong and its trademark character, Mario, put Nintendo on
the map. With their superior technology, Nintendo began its era of dominance in
the video game industry. Nintendo revolutionized the video game industry technologically, from games to game consoles. Not until the late 1990s and 2000s did
Nintendo face credible challenge from other game console manufactures, namely,
Sega, Sony and Microsoft [Kent, 2001].
The first PC games were on mainframe computers in universities. Not much
is known of these games because they were just for hardcore gamers. PC games
competed with console games in providing the gamer with the latest technology in
gaming. Eventually, with the advent of the personal computer and its accessibility,
the popularity of PC games blossomed to their current level of popularity [Kent,
2001].
Few people know that online gaming has been developing since 1972. Since
personal computers with Internet access were not widely available to the public
until the 1990s, the online games of the 1970s and 1980s are foreign to the majority
of our society. The first online games were developed for PLATO, a system of
computer networks developed for educational purposes. The games developed in
the early 1990s such as Neverwinter Nights, the first Massive Multiplayer Online
Role-Playing Game (MMORPG), paved the way for what we now think of as online
games such as the widely popular MMO World of Warcraft (WoW) [?].
Handheld games were first released to the public in the late 1970s by companies
such as Mattel and Milton Bradley. These handheld games consisted mostly of
ACM Journal Name, Vol. V, No. N, Month 20YY.
6
·
Kyle Hwang et. al.
sports themes with a few other titles such as Missile Attack and Armor Battle.
Handheld games were not widely popular, however, until the release of the Gameboy
by Nintendo in 1989. With the reasonable price of $109 upon release and a package
bundle with Tetris, the Gameboy launched the beginning of a new trend in gaming.
Handheld devices have since developed to work with exchangeable cartridges, but
the hardware of handheld devices is continually behind those of console games.
The portability and convenience of these systems, however, have overcome this
disadvantage and won over most gamers [Melanson, 2006].
Databases
Databases and Video Games. Video games have been and are used as a source
of entertainment by those young and old, technologically savvy and not. The
accessibility of a video game and apparent ease of use, however, is by no means
a reason for us to believe that video game development is a simple process. The
design of a single video game can involve an entire team of people with specialized
talents including the game designer, music composers, people skilled in working with
sound, programmers, game testers, artists, and graphic designers. The video game
database is the means of organizing all of the products of these collaborative efforts
[Wikibook, 2010]. Without the database, the task of putting all of the components
of a video game together and making them work would be nearly impossible.
What’s a Database?
In its simplest sense, a database is a collection of related information, usually stored
digitally, to be used for one or more purposes. A database is most useful for storing
and organizing large amounts of information in a central location for easy access
and use [Ferguson, 2009]. In the majority of structure and management systems of
the database, data is stored in the form of a table with columns and rows much like
we are used to in Excel. Each row contains information for a single record while
each column contains a different piece of information for each record. There are
many models for structures and management systems of databases. The flat model,
ACM Journal Name, Vol. V, No. N, Month 20YY.
·
7
the relational model, the hierarchical model, the network model, and the objects
database model are the most common [Wikipedia 1, 2010].
The Flat-File Model. This model is the simplest form for database organization.
Data stored in a Flat-File Model consists of a two-dimensional table much like an
Excel spreadsheet with no tables branching off or connections made among tables.
Using the Flat-File model, the data would typically be stored in a single file [Loshin,
2001]. A prime example for data stored in this way would be a simple telephone
directory where each row contains information for one contact and each column
represents pieces of information related to the contact such as their address, phone
number, and birthday for instance.
The Flat-File model, although simple, has its downsides. Every time a database
using a flat-file model needs a new column element added, the entire database
must be restructured and redesigned [Loshin, 2001]. For example, take a telephone
company that used a Flat-File model for their directory of clients and included
information about services subscribed to. When the company added services and
clients subscribed to those services, the entire database for the clients would have
to be restructured and redesigned to include the new information. This process
would be time consuming and inefficient on the part of the company.
The Relational Model. The Relational Model for databases, introduced in 1970,
is a structure developed and designed by E. F. Codd, a researcher at IBM’s San
Jose research laboratory. According to this model which dominates 21st century
databases, the architecture of a database consists of three levels: external, conceptual, and internal. The relational database model clearly separates and defines these
three levels. The external level of a database defines how the user understands the
organization of the data - there can be many external views of the database. The
internal level defines how the data is physically stored and processed by the system.
The conceptual level is an uncomplicated overview of the database which unifies
the various external views into a coherent whole and does not include complicated
details about data storage and management [Wikipedia 2, 2010].
ACM Journal Name, Vol. V, No. N, Month 20YY.
8
·
Kyle Hwang et. al.
The Relational Database Model is an alternative to the downfall of the flatfile model. By allowing designers to create separate but related flat-file tables for
their data, the Relational Database Model makes it possible for users to input new
data about records without restructuring the entire database. The addition of new
information into the database is made easy by the model’s use of ”keys” to link the
various Flat-File tables together. The ”keys” referred to in this model would be a
piece of information about a record that appears in every Flat-File table, linking
all of the components of the database together. This linking system allows a user
to call for all the information related to a record by calling the ”key” for the record.
An example of implementing the Relational Model would be the telephone company above using their clients’ telephone numbers as ”keys” to link all the data
for a record together. In this way, when the telephone company adds a service or
extra users to the line, they would just add another Flat-File table making sure
to include the client’s telephone number as part of the table’s information. Thus,
the company could have a separate table for general information about the client,
billing statements for the client, and services subscribed to. The beauty of the
relational model is that the appearance of the data for the user is unchanged. As
long as the user knows what information they want from what ”key”, they will be
able to obtain the information all at once on their screen [Whitehorn, 2008].
The Hierarchical Model. The Hierarchical Database Model is credited with being the first database model introduced by IBM in the 1960s. When E. F. Codd
introduced his Relational Model in 1970, the Hierarchical Model phased out. This
data model resurfaced, however, with the introduction of XML as a programming
language in the late 1990s [Kamfonas, 1992].
In the Hierarchical Database Model, attributes of a record are related to the
record in a tree-like fashion or hierarchy. This is also called a ”parent/child” relationship of the data. In this model, the data has a ”1:N”, also known as a 1:many,
mapping which means that for every record, there can be many attributes, but
those attributes are unique to that one record. The attributes (”children”) can
ACM Journal Name, Vol. V, No. N, Month 20YY.
·
9
only have one ”parent”, but each parent can have many children [Kamfonas, 1992].
Again using the example of a telephone company, a parent flat-file table would be
the general information about a client. A child table could be the listing of services
that the client subscribes to while another could be their record of payment. The
unique combinations of services subscribed to and the billing statements could only
belong to one client.
The Network Model. Charles Bachman is credited as the original inventor of
the Network Model in 1969. In contrast to the Hierarchical Database Model which
structured data in a tree and only allowed each child table to have one parent table,
the Network Model allowed for a more fluid and natural organization of data and
relationships. By allowing tables to have multiple parent and child tables connected
to them, the network model seemed to be a more natural way of connecting data.
Although this model of data organization was widely used, it failed to override
the use of the Hierarchical Model and also phased out with the introduction of the
Relational Model which turned out to be more flexible and convenient for companies
to use [Bachman, 1973].
An example for the use of a network model, again in the context of a telephone
company, would be the telephone company using a flat-file model for the clients’
general information as in the example above, but linking all of these client flat-file
models to different service databases. The company might have a database for
three-way calling. The three-way calling database would be a ”child” table to all
of the ”parent” tables belonging to the clients subscribing to that service.
The Object-Oriented Model. The most current model compared to those previously discussed is the Object-Oriented Database Model. This database structure
combines the capabilities of a database and those of an object-oriented programming language capabilities. Considered for use in mainstream commercial data
processing since the 1980s and 1990s but having little impact except in specialized
areas in the Object-Oriented Model, data is represented in the form of objects as
used in object-oriented programming rather than in rows and columns as in other
ACM Journal Name, Vol. V, No. N, Month 20YY.
10
·
Kyle Hwang et. al.
management system models [Kim, 1990].
There are many advantages to this database model given the trends of our society.
Technology and programming have become what drives our population, especially
in this past decade. A trend in programming for the use of technology has been the
increased use of object- oriented programming (OO programming). Because OO
programmers prefer the objects approach to programming, using an object-oriented
database is ideal for their line of work. In an object-oriented database, programmers
are able to develop their product, store it as an object, and easily replicate or modify
an object within the database. Because OO programmers highly prefer this type of
database, most object- oriented databases are actually designed with programmers
in mind and are easily compatible with such programming languages as Ruby,
Python, Perl, Java, C#, Visual Basic .NET, C++, Objective-C, and Smalltalk.
There are object-oriented databases, however, that use their own programming
languages. These languages use exactly the same model as the previously mentioned
OO programming languages. The fact that the objects-oriented database model is
so intertwined with OO programming languages is ideal for programmers because
they can maintain consistency in one environment rather than separating their
programming and data environments [Bancilhon et. al., 1992].
Which Database Do Video Games Use?. As can be seen from the previous discussion, there are a wide variety of choices when it comes to someone choosing a
database for their project. It can also be seen from the previous discussion, however, that video game programmers really only have one choice when it comes to a
database for video games.
Video games are largely developed through programming languages. Video games
are known to be highly reliant on video, audio, and graphics. Looking at the
database management systems above, the flat-file model, the relational model, the
hierarchical model, and the network model were developed during a time when
data consisted primarily of text. In modern-day society, it is widely understood
that current data no longer only consists of text but also video, audio, graphics,
ACM Journal Name, Vol. V, No. N, Month 20YY.
·
11
and photos. Out of all of the database management systems above, there is only one
that was designed to handle all of the management of these types of ”complicated”
files. The object- oriented management system was designed specifically to address
the new trends in data and is definitely the choice among video game developers
[Radding, 1995].
Reiterating the benefits of the object-oriented model, this model allows the team
of game developers to develop their product, whether they are characters or objects
in the game, store them as objects (in the data sense of the word), and easily replicate or modify existing objects to make new objects within the management system.
The close correlation in models of representation between the Object-Oriented data
system and the Object-Oriented coding used by game developers allows for more
consistency in the environments that the game developers are working in. Without using this management system, game developers would be forced to keep the
processes of coding and storing data separate which could cause inconsistencies
between the environments [Burleson, 1994].
The Importance of Databases in Game Design and Game Play. In order to understand the role of databases in game design and play, we must first understand
the various architectures and types of modern games. For the purposes of this discussion, we can categorize games based on their level of connection over a network.
Using this classification, there are three categories of games. The first is the nonnetworked game which is played locally and has no interaction with other players
over a network. For the purposes of this section, a network is defined to be an
Internet connection. In order to add players to this environment, the other players
must be local and connect to the console. The second is the non-persistent game
which is connected over a network but has a game state that only exists for a single
session. In this gaming environment, all progress in a game is lost when a player
terminates play. The third is the persistent game which is connected over a network. This category could also be called the massively multiplayer online (MMO)
games. In these games, the game states and game worlds often exist and change
ACM Journal Name, Vol. V, No. N, Month 20YY.
12
·
Kyle Hwang et. al.
even when the player is not playing. A popular example of this type of game would
be World of Warcraft (WoW). All of these categories of game play implement
the use of database, but based on their differences, incorporate databases into their
structure differently [White et. al., 2007].
Non-Networked Games. Although modern games designed without networking
capability are rare, they still exist. In non-networked gaming, a key to longevity
of the game is that it is ”data driven”. ”Data driven” refers to the characteristic
that the game’s content is separated from the game’s code. This design style has
several advantages both in the design phase and in the gaming market [White et.
al., 2007].
In a data driven design process, the game studio is able to separate the game
development between the programmers and game designers. Although both of these
groups play an essential role in the game development, their skills are not necessarily
over-lapping. The separation between the design and programming phases has three
primary advantages. First, this allows the game studio to reuse the code or ”game
engine”. The game studio can also license the code to other game studios. Third,
this allows ”modders”, users who modify game data, to replace the old content of
the game with new content to keep the game fresh. This characteristic of a game
is often most appealing to gamers and can increase the life-span of a game [White
et. al., 2007].
There are complex varieties of game content in non-networked games. ”Game
content” is a vague term that is meant to include such things as the media of
the game-character models, textures, and sounds and the data of the game which
defines the story line of the game, the initial starting state of the game, and the
scripting languages that define character behavior. With all of these components
of the game needing to come together, it is obvious that these games require a
complicated data management system [White et. al., 2007].
Non-Persistent Games. Non-Persistent games are games connected over a network but which do not allow a user to continue with a story line after the user
ACM Journal Name, Vol. V, No. N, Month 20YY.
·
13
has terminated play. These games are similar in architecture to a non-networked
game but with the added component of a network connection. With this added
component, databases become increasingly helpful for game companies to gather
data on the success of their games.
Once a game is network connected, there are huge opportunities for game companies to incorporate the use of databases to monitor their games. When game
monitoring, companies are interested in gathering demographic information and
play-behavior from their users. Companies use this information to figure out what
attributes of their games should continue to be implemented in future game design
and what components need more work. Game companies also use this data to work
on marketing strategies for future games. To gather and organize all of this data
requires the more traditional use of tabular databases [White et. al., 2007].
Persistent Games. The category of gaming that uses databases to their fullest capabilities is persistent games, more specifically massively multiplayer online (MMO)
games. In MMO game management, we see more of the traditional model of
databases. Persistent games must always keep a log of the game state of all of
their users because these games allow users to return the game state that they left
at the termination of their last session. Databases must also be kept on client accounts and game actions. The game studios have to do so much data management
in a data center for their clients that these games are actually sold as a service
[White et. al., 2007].
Persistent gaming has the added complication of managing security. Hacking of
clients and modifying them to cheat at a game is always a concern in networked
gaming. In non-persistent gaming, once this behavior is recognized, the server can
easily terminate the game session, reset, and override the issue. In persistent gaming, however, the game server cannot just terminate the session. The management
of the world state of the game is handled entirely within the database so the game
server must revert back to before the client was hacked and restore the session to
that game state, again an application of managing data [White et. al., 2007].
ACM Journal Name, Vol. V, No. N, Month 20YY.
14
·
Kyle Hwang et. al.
Machine Learning
Having a finished product that looks and sounds nice is wonderful but no one will
buy it if the game itself is sub-par. To this end, the developers must devote a large
amount of resources into ensuring that the game is interesting. When the game
is the first of its kind, it may be able to overcome flaws in the game play, but for
most games, keeping the interest of the player is a matter of providing a consistent
level of satisfactory challenge. Video games can provide this challenge by offering
the player a choice of competing against the computer or against other humans in
a multi-player mode.
While some games are entirely multi-player, almost all video games have a single
player mode, in which the player competes against the pre-programmed artificial
intelligence of the game. Artificial intelligence (AI) in a video game is designed to
give the illusion that the computer is thinking and acting in a human like manner.
This includes adopting various strategies and utilizing tactics to make the game
competitive. The degree to which artificial intelligence works varies from game to
game, with some games having poor, shoddy AI where the player can capitalize
on errors made by the computer. On the other extreme, some games have AI that
is so well thought out that the player feels as though he/she is playing another
human. The problem facing the game developers when developing a game with a
mass audience is how to provide a challenging experience that is rewarding for most
gamers.
However, many times gamers who play the single player mode of a game complain
that the game is either too easy or too hard [Rosebaugh-Nordan, 2010]. If this
difference in skill level between the player and computer opponent continues to
be large, it is possible for the player to lose interest in the game. When a player
loses interest in a game, not only do they stop playing the game, but they also
could review the game negatively, and also not buy titles from the same developer
in the future. It is thus in the game maker’s best interest to try to keep these
games as competitive as possible. The easiest way to keep the games competitive
ACM Journal Name, Vol. V, No. N, Month 20YY.
·
15
is through careful programming of the difficulty level of the AI. To this end, the
standard solution has been two-fold: use multiple difficulty settings with differing
parameters for game play in each difficulty, and ramp up the difficulty from the
opening level to the final level.
Ramping up the difficulty level is usually inherent in all games, as the player is
expected to improve their skills as they become more experienced with the game,
both by being more comfortable with the controls and by finding nuances and
strategies that provide an edge to the player. As a player progresses through the
single player campaign or storyline, with each level, the computer usually makes
better decisions, exhibits faster ”reflexes” and game play, and behaves in a more
player-like and strategically sophisticated way. Sometimes other aspects of the
computer’s play are improved, such as units or equipment available attributes of
these units, and starting position with respect to number of units or resources. On
occasion, the computer displays completely new tactics and changes the basic types
of units present, resulting in the player needing to come up with completely new
strategies. This is accepted by many players as a necessary way to make the game
fair and to provide a continued challenge. Sometimes, however, the player may find
that the difficulty ramps too much for their skills, and gets frustrated after trying
to beat a level hundreds of times. Overall, however, this practice is accepted by
most of the players.
Across genres, the applications of difficulty ramping vary. Racing games usually
make the tracks harder, and sometimes have the opponents steer better. They also
can equip the opponents with better parts, if the game allows for that. Sports
games usually have no change in difficulty as the campaign (season) unfolds, the
difficulty changes come from game play settings and the set attributes of the various teams or characters. Shooters generally increase the number of enemies as the
game goes on, as well as their attributes, such as health and damage. In addition, they may introduce new, tougher enemies. Fighting games generally have the
opponents react quicker, perform stronger moves, stand around less, and behave
ACM Journal Name, Vol. V, No. N, Month 20YY.
16
·
Kyle Hwang et. al.
strategically as the player passes each stage. Adventure and platform games usually add more complex puzzles and obstacles each level, as well as increasing any
potential enemies’ attributes. Puzzle games sometimes change the layout of the
puzzle to provide a more difficult challenge, and can also add new elements to slow
down the player, such as locked tiles or reduced time limits. Trivia games usually
ask harder questions when the player gets the questions right [Wikipedia 3, 2010].
The difficulty ramping of role-playing games can take many forms, but by far
the most common method is a combination of increased attributes of enemies and
new, stronger enemies. Strategy games increase difficulty over time in a variety
of ways. The real-time strategy games (RTS) make the computer faster, give the
computer better starting positions and increase the difficulty of objectives. Turnbased strategy games (TBS) on the other hand increase the number of enemy units
and increase the amount of resources available to the computer. These modifications
seem to be effective for the average gamer.
When it comes to different difficulties, the changes made vary widely from game
to game. Many games have five difficulty levels, while others have three. These
usually include an easier mode, a standard mode on which the game is designed to
be played, and one or more harder modes, which are intended to give the seasoned
veteran a challenge [Wikipedia 3, 2010].
The changes in game play between difficulty levels take on many forms across
genres, all of which are designed to keep the game more competitive and interesting.
One of these modifiers is a ”rubber band” model common in racing games. In
this model, the player and computer vehicles act as if they were attached by a
rubber band. When the player gets too far ahead, the computer- controlled vehicles
receive a speed boost, and when the player falls too far behind, the computercontrolled vehicles slow down to allow the player a chance to get back in the race.
On higher difficulty levels, the computer-controlled vehicles might move faster,
crash less, and/or be on a tightened rubber band, that is there is a smaller trailing
distance that triggers the speed boost when behind. This works to varying degrees
ACM Journal Name, Vol. V, No. N, Month 20YY.
·
17
of effectiveness. For instance, when a player is performing well, they might get
frustrated that they never can shake their pursuers, but when they are performing
poorly, they might welcome the fact that they are not too far out of the race
[Wikipedia 3, 2010].
Arcade racing games that operate on a time limit between checkpoints are programmed differently than console games without a time limit with regards to distinguishing between the difficulty levels. In most cases, the time limit is reduced on
higher levels, and there is the potentiality for the computer drivers to race better
[Wikipedia 3, 2010].
In sports games, when the difficulty level is increased, the opponents play much
better. They are more aware, more accurate, and capitalize on human errors.
RPGs, on the other hand, usually increase enemy attributes with each difficulty
level. Increasing the difficulty level sometimes has other effects; for instance, the
player’s characters could receive penalties or the computer could gain added abilities
[Wikipedia 3, 2010].
In fighting games, the computer tends to react quicker, is more active and generally may have other bonuses on higher difficulty levels. Puzzle games usually get
much trickier and more complicated, and those with a time limit usually see their
time limit reduced. In addition, more obstacles may be encountered. Music and
rhythm games often have many more actions that have to be performed and they
are usually much closer together. Sometimes, these are even more complicated than
their lower difficulty counterparts [Wikipedia 3, 2010].
Higher difficulties in strategy games bring a smorgasbord of changes. The types
of changes depend on what particular type of strategy game it is. For TBS games,
the player starts with fewer resources while the computer starts with more. The
computer is more aggressive and often plays in a tactically superior manner. This
means that the computer is often willing to follow strategies that require more
gambling. For RTS games, higher difficulties bring about a more aggressive and
faster computer that exhibits superior tactical prowess and ability to command
ACM Journal Name, Vol. V, No. N, Month 20YY.
18
·
Kyle Hwang et. al.
multiple squads. Sometimes the amount of initial resources and units the computer
starts with is increased along with the attributes of those units [Wikipedia 3, 2010].
Shooters can exhibit some of the most varied difficulty levels for video games.
The major changes upon increasing difficulty level involve health, accuracy, and
damage of enemies. Also, sometimes there are additional enemies or objectives to
complete. Power-ups may disappear as well or may not be as effective [Wikipedia
3, 2010].
These changes are designed to provide a good balance of challenges across many
different gaming skill levels, and many times they are satisfactory. However, the difficulty levels are pre-programmed into the game leaving little room for adjustment.
Also, the difficulty levels are not normalized across games, that is, one game can
have a normal mode that a particular person finds easy, whereas they cannot beat
the easy mode on a similar game. This has led to complaints about the difficulty
in some games being too hard and too easy [Eckrich, 2010].
Because it is in the developer’s best interest to provide a consistently stimulating
game environment to the player, especially with games that can be played over and
over, the importance of having appropriate difficulty levels cannot be understated.
If the difficulty level is too hard, the developer risks alienating the casual gamer,
whereas if the game is too easy, the developer could disappoint the hardcore gamer
and reviewer. Finding a balance between these two types of gamers is crucial for the
success of the video game, and that means finding an appropriate level of challenge
for the most people possible [Rosebaugh-Nordan, 2010].
One possible idea is to allow for fine tuning of difficulty settings. To that end,
some games have started using sliders and other bars. This is most evident in sports
games. This method allows for a wide variety of options with regard to many aspects
of the game. For instance, in a baseball game, if the player has trouble hitting but
can pitch well they can adjust the difficulty of each particular part so that the
computer can hit better but pitch worse. As these sliders usually have multiple
values, they can be adjusted accordingly as the player improves. Effectively, this
ACM Journal Name, Vol. V, No. N, Month 20YY.
·
19
adds a large amount of new semi-customized difficulty settings. These allow for a
more challenging environment for the individual based on their own strengths and
weaknesses.
However, sliders are not a universal cure for the difficulty problem faced by developers. In some games (RPGs, puzzlers, platformers, etc.) it is almost impossible
to implement them. In others, adjusting the sliders is difficult and cumbersome
especially when combined with difficulty ramping. Another more subtle problem
with sliders, is that they are still discrete settings. A player may find themselves
wanting to play an opponent with a skill level between those allowed by the sliders. Additionally the developers have to set limits as to what the easiest and most
difficult settings would be. This is especially important if the sliders replace actual
set difficulty levels. Skilled gamers may still find that the game does not provide
enough of a challenge.
One theory is that to get the most realistic and most consistent challenge available
from a video game, the computer should think and act as human-like as possible
to emulate the act of playing another person. Sliders are an improvement on a
few static difficulty levels but they fail to improve on the computer’s patterns of
behavior with regard to acting in a human way. Humans can acquire behaviors
and patterns through conditioning, a process in which behaviors are reinforced
through rewards and repetition. Recently, computer scientists have found a way to
”condition” a computer’s response. This process is called machine learning. When
a program learns, it improves its performance in a particular task with experience.
This can be applied to video games with respect to the level of challenge the game
provides the player. Ideally, the computer provides the player a challenge that is on
par with the player’s skill levels and adapt to the player’s tactics when the player
desires [Wikipedia 3, 2010].
These adaptations can be implemented in various ways. One way is to collect data
from each game and use it to formulate new, more effective strategies to counteract
the player’s tactics. These strategies might be taken from a list of tactical ploys
ACM Journal Name, Vol. V, No. N, Month 20YY.
20
·
Kyle Hwang et. al.
stored in the game. One of the advantages of this method is that it is not draining on
the computer’s resources, as the game performs its analysis while it is not actively
running. This also has the advantage that the player can refine a new strategy before
the computer implements an effective counterstrategy, as it takes the computer at
least a few trials (games) to come up with the counterstrategy. The major downside
of this method is that it is slow to adapt to new player strategies. This approach
is effective in video games based on customizable card games (CCGs), as it takes
a while to analyze the player’s deck, which may be in constant flux. It can also be
effective in RPGs, as the computer can change the frequency that it uses special
abilities based on the equipment the player’s characters are using and the style of
play of the player. Fighting games could also utilize this technique to make the
game more challenging, as cheap strategies by the player could be countered. This
would force the player into thinking more and picking their spots.
The other type of learning that can be implemented is one that takes place in
real-time. This requires the computer to analyze the player’s strategy as the game
is progressing, and modify its tactics in the same game when it recognizes a player’s
strategy. The advantages of this method are that the computer can quickly modify
its strategies to make the game instantly more challenging and that the computer
behaves more like a human would, able to change strategies mid-game if it realizes
the need to. The major disadvantage is that the game would be utilizing more
resources, and thus potentially be running slower. A more subtle disadvantage
is that the multitasking capabilities of the computer could become more evident
as the computer shifts strategies in multiple areas at once. This type of learning
is particularly suited to strategy games, especially those of the real-time variety.
Shooters can use this type of learning as well as action RPGs.
The main advantage of using either method of learning is that the computer can
provide a suitable challenge for each player by dynamically adjusting its level of
play either up or down, depending on whether the player is strong or weak. The
computer is able to play more like a human, which gives the player more appropriate
ACM Journal Name, Vol. V, No. N, Month 20YY.
·
21
practice for multiplayer modes. Though the second method is more dynamic and
allows for more experimentation, it is also harder to program than the first method,
which is already difficult to implement.
The ways that the player would observe the learning differ from genre to genre.
In RTS games, the computer changes its strategy to make the player play to the
best of their ability. Puzzle games alter the amount of time and challenge of the
puzzles based on the performance of the player, while CCGs modify the composition
of the computer decks and the way the computer plays the cards. Shooters change
the aim, damage, and health of the enemies based on how much damage the player
takes and other variables. Fighting games modify the opponent’s combat style to
more effectively deal with the player’s tactics.
These dynamic adjustments allow for a more competitive and immersing game,
holding the player’s interest for longer. However, sometimes the player does not
want to have a challenge, or wants to see if they have improved, so it is still advisable
to have some way to cater to these players.
Computer Security
Place in Society. According to a leading market research company, The NPD
Group, the video game industry grossed $20 billion in revenue on sales of hardware,
software and accessories for the year 2009 just in the United States alone. In that
same time, domestic box office sales only made $10.6 billion according to Box
Office Mojo, a movie industry website. This disparity in revenue shows the extent
to how prevalent video games have become in our society.
Most people consider video games to be a source of entertainment. And indeed
it is. For many people, video games are a social pleasure. They are a distraction
from the daily grind of work or school, often times too much of one [Poole, 2000].
Video games have become such a presence in our society that it has become a
part of pop culture. Video games like Mortal Kombat and Tomb Raider have
inspired movies, and to a lesser extent, television shows, and vice versa. American
and Japanese cultural concepts have crossed the divide of the Pacific Ocean [Yan
ACM Journal Name, Vol. V, No. N, Month 20YY.
22
·
Kyle Hwang et. al.
and Randell, 2005].
Video games have not only become a source of entertainment for people, but a
force to be considered in driving revenue and research and development in other
industries. Because consoles are a collection of electronic parts, the semiconductor
industry has benefited from the video game industry. Early games and consoles
used extensive memory chips and require large monitors, making them cheaper to
produce. The IT industry has also made significant progress as video games have
become more complex [Yan and Randell, 2005]. Again, the evolution of the console
has fueled the growth of the personal computer, Internet and computer networks.
The research and development of video games has led to the advancements in the
production of televisions and recordable media. In whole, video games are at the
forefront of the development of consumer graphics hardware and software. Last
but not least, the gaming industry has spawned whole new fields in the computer
industry such as [computer] security.
An Overview. According to Wikipedia, computer security is a branch of computer technology know as information security as applied to computers and networks. Objectives include protecting information and property from theft while
allowing access to them to intended users. Computer security as it relates to computer games such as console, PC and online games is a growing field as game makers
try to crack down on the hacking and cracking of their games by using digital rights
management techniques and other methods. This section will examine the field of
computer security and video games. We will discuss how computer security has
evolved from the first games to the popular online games nowadays. The paper
will talk about how game creators protect their products and prevent players from
cheating. In conclusion, we will discuss what other security efforts have been undertaken by those involved other than game designers to secure the rights of those
that produce video games.
ACM Journal Name, Vol. V, No. N, Month 20YY.
·
23
The Evolution of Computer Security in Video Games
As mentioned earlier, the earliest games were played on mainframe computers.
There were not many security worries at that time. Even if there were, they were
largely ignored. Programmers had more important concerns to deal with. The
only known instance of a concern for security was a unique access control feature
implemented on a Cambridge University computer. This feature restricted access
to data to only authorized users and programs [Yan and Randell, 2005].
Arcade Games. Arcade games, which became popular in the late 1970s and early
1980s, also had very few security worries. They were located in shopping malls,
restaurants and convenience stores usually. The only security concern for arcade
games was the coin boxes that stored the quarters that it cost to play the games.
The solution was to put the games in safer locations and to use more secure coin
boxes [Yan and Randell, 2005].
PC Games. Security concerns for PC games have always been an issue. Since
they come on transferable, removable storage media such as diskettes and CDs,
unauthorized duplication or usage of PC games has always been very easy to carry
out. There have been efforts to thwart unauthorized duplication of CDs by game
manufacturers such as data encryption, registration keys and copy protection systems. More recently, PC game developers have used digital rights management
techniques to overcome security issues. Some games limit the number of computers
the game can be installed on by requiring authentication with an online server.
Other games can only be downloaded online through a third-party digital distribution platform such as Steam. Then there are games that require an Internet
connection because installation only installs parts of the game with the other parts
being downloaded as the game progress; however, this management technique has
been overcome by illegal server emulation techniques. So the general public has
been able to mostly overcome these restrictions. Thus game developers have been
phasing out production of PC games requiring in favor of console games since copyACM Journal Name, Vol. V, No. N, Month 20YY.
24
·
Kyle Hwang et. al.
right protection and digital rights management techniques have proved to be mostly
futile for computer game makers[Wikipedia 4, 2010]. The Entertainment Software
Association estimates that in 2007, global piracy cost the U.S. entertainment software industry more than $3 billion [Chang, 2010].
Console Games. Console games manufacturers have been more successful at implementing copy protection mechanisms. The majority of security efforts in console
games early on were aimed towards locking in customers to their hardware. Nintendo was the first to employ these security measures and they are still used today
to some extent. What Nintendo did was to develop a lock-and-key-like system.
They incorporated security chips in their consoles and game cartridges which communicated with each other via a shared secret key. The games would only work
if the chips in the console and cartridge were communicating with each other. If
Nintendo cartridges were to be used on non-Nintendo consoles or non-Nintendo
cartridges were to be used on Nintendo consoles, the games would not run at all.
No one could manufacture their own games or consoles without Nintendo approval
[Yan and Randell, 2005].
Not only did Nintendo protect their products through technology, they also protected themselves through legal action. Nintendo filed patents and copyrights on
their security practices. They would actively take on competitors who breached
their patents and copyrights. The company took advantage of their patents and
copyrights to restrict production of cartridges and consoles. These actions served
to deter counterfeiters and much more. However, there were still some security
problems for Nintendo. Counterfeit game cartridges and game consoles produced
and sold by rivals tried to duplicate what Nintendo had created for themselves.
Nintendo spent much time in the courts to protect their investment from imitators
and competitors alike [Yan and Randell, 2005].
The technology for consoles and cartridges has progressed rapidly, both with
consoles and storage media for games becoming more advanced. In addition, the
computer security that is involved with protecting the product of these video game
ACM Journal Name, Vol. V, No. N, Month 20YY.
·
25
developers has become more advanced. Cartridges have become CDs, Blu-Rays,
DVDs and Mini Discs while consoles have become more and more complex and
intricate. These discs face some of the problems that PC games discs face, but the
issue of computer security has not been as prevalent. Again, digital rights management techniques have been used to prevent piracy, but with more success than
before. Advancements in the lock-and-key-like system that had been incorporated
into the earlier console game have proved to be a successful deterrent.
Over the years, other companies such as Sony and Microsoft have gotten into
the business of making consoles and games. They have followed Nintendo’s lead to
protect their products through technology and legal action. For example, DVDs for
the Xbox by Microsoft cannot be duplicated by conventional DVD-Rs. The DVD
drive on an Xbox computes the angular distance between data sectors on a disc.
An original Xbox DVD returns different values than a counterfeit one. The Sony
PlayStation Blu-Ray has a mark that cannot be duplicated by DVD-Rs [Wikipedia
5, 2010]. Nonetheless, there is still concern that hackers can break through the
technology and security techniques behind console games again [Yan and Randell,
2005].
Online Games. With the advent of online games, a revolution in the way video
games is played has taken place. This revolution has also essentially changed computer security as it pertains to video games. Online games such as World of
Warcraft typically provide the software to play their games either as free or with
a nominal fee. They usually charge a monthly fee for a user to play. The user has to
log onto servers to play the game. As a result, some security issues like piracy are
a thing of the past. Nevertheless, there are still issues related to computer security,
some problems whose complexity are greater than the problems traditional video
games have faced in the past and present [Yan and Randell, 2005].
Some new issues that online games have encountered are privacy and access
control. Since these games are online, networks have to be safe to host games.
The introduction of monthly fees requires that payments have to be made over a
ACM Journal Name, Vol. V, No. N, Month 20YY.
26
·
Kyle Hwang et. al.
secure server in which payment information is stored. Player information has to
be protected from hackers. One of the most interesting things about online game
security is the very design of the servers [Biancuzzi, 2007]. The network has many
users simultaneously accessing it through the Internet. The virtual world housed
on the servers that the users live and play in is enormous. Online gaming sites
have to maintain stability in this virtual world. It is impossible for gaming site
operators such as Activision and Blizzard Entertainment (the makers of World of
Warcraft) to do this alone. In order to maintain stability, part of the world has to
live on the user’s computer for efficiency. This is the part of the software that the
user buys or downloads, and which synchronizes with the game servers frequently.
There is no guarantee of security on the user’s computer. Hackers and cheaters
can now upset the balance of the virtual world through the user’s computer. With
maybe hundreds of thousands of users at one time, the virtual world is indeed
unsafe. One solution is to emphasize security on the server-side (site operator)
rather than client-side (user). An anomaly detection system on the server is one
way to go. Other ways to promote computer security is to remove bugs and flaws
and have attacker-perspective based testing. Then again, some of these problems
are not new. These concerns are shared with other Internet applications and there
has been rapid growth in their respective fields. But there are differences between
businesses doing business online and gamers playing a game online [Hoglund and
McGraw, 2008].
Recent research has suggested that cheating is [in fact] a major new security concern for online computer games [Yan and Randell, 2005]. There has not been much
studying done on cheating because online computer games are relatively new. However, cheating is definitely prominent. There currently is no universally accepted
definition for cheating in online games or laws prohibiting it. We will define cheating
in online games as behaviors that modify the game experience to give one player an
unfair advantage over others without the approval of the game service provider or
developer of the game. It would be wise for online game developers to study cheatACM Journal Name, Vol. V, No. N, Month 20YY.
·
27
ing for the purpose of implementing more effective security measures to prevent it
and to contribute to the study of computer security as a whole.
There are several types of cheating common to online games such as World of
Warcraft. One common method is the selling of virtual characters and items in a
real world market. Players of such games can make a lot of money or gain unfair
advantages over other players doing so. Another type of cheating is unauthorized
access to players’ accounts. Often, the only protection players have to protect their
information and online accounts are usernames and passwords. Hackers write Trojan horses to collect usernames and passwords so they can loot players’ characters
and accounts. Yet another way to cheat is to modify game code or data. Hackers edit the game code in programs separate from the game itself, circumventing
security measures taken by game developers. This is a process known as reverse
engineering of software. Online gamers can cheat by exploiting a bug or loophole
as well. When a bug or loophole is discovered, it can give gamers’ a major, unfair
advantage. For example, in the game Habitat by Lucasfilm, characters in the
game sold virtual items to a pawn shop at a higher price than what they paid to
get them and padded their virtual bank accounts. Other ways of cheating include
finding cheat codes to gain an advantage over one’s opponent, slowing down streams
of data and connections of players, altering game settings and uncovering sensitive
information about opponents that is otherwise unavailable to other users [?] There
are no laws governing these types of behaviors so it is not illegal per se [Hoglund
and McGraw, 2008].
So what can be done about cheating in online games? There is anti-cheat software, technology whose aim is to prevent cheating. But this software is limited
in what it can do. Bugs and loopholes can be combated by game developers by
releasing patches, but most patches are only installed at the gamers’ discretion,
not the developers. Some online game companies ban players who cheat, disabling
their accounts. But these players just create other accounts. These techniques are
not very successful, to say the least [Wikipedia 6, 2010].
ACM Journal Name, Vol. V, No. N, Month 20YY.
28
·
Kyle Hwang et. al.
More successful methods used to prevent game cheating include client data file
checksums and non-standard data file storage. Checksums are numerical values
assigned to digital data files. For online games, game data files on clients’ computers
are checked against game files on the servers’ computers via checksums before clients
can log onto game servers. If game code or data has been altered in any way, log
in to game servers are denied. After files are checked, they cannot be altered in
any way until the game is no longer in progress. This provides double protection
against cheaters who modify files; they cannot log in or modify files during game
play. With non-standard data file storage, files are stored without names and
directory structures in databases. There are files that store game data and files
that know how and where to access the files that store game data. The game is
programmed in a way such that the files that know how to access the game data are
accessed first by the game and directed in the right direction [Wikipedia 6, 2010]
Government Action. There is action being taken that relates closely to computer security in the gaming industry [Hoglund and McGraw, 2008]. Most of the
laws in existence govern copyright infringement. Copyright has only recently been
expanded to include software programs. The Digital Millennium Copyright
Act (DCMA) makes the circumvention of digital rights management techniques
a crime. Software manufacturers have been granted permission to clamp down
on pirates without court intervention. Entities that circumvent computer security
measures can be prosecuted to the fullest extent [Wikipedia 7, 2010].
The Future
While gaming incorporates database technology in aspects of design and management, not all categories of gaming use databases to their fullest capability. New
avenues in data research will make it possible for commands during game play and
the inner workings of the game engine to run smoothly and cause less lag time.
As the technology and research into machine learning improves, the quality of
these adjustments will continue to be refined and improve. While some games alACM Journal Name, Vol. V, No. N, Month 20YY.
·
29
ready implement the principle of learning, many do not. In the future, learning will
become more widespread among video games, and the AI will seem more and more
human. This will lead to increased quality of video games, and a more challenging environment that is relatively stable with respect to difficulty for the player.
Eventually it is possible for the distinction between human reactions and AI play
to become blurred and perhaps disappear entirely.
What does the future hold for computer security? No one knows for sure. The
technology to prevent piracy and cheating will continue to improve, but unfortunately, so will the technology that is used to sustain piracy and cheating. Laws will
be passed that address these issues and penalties made stiffer for those who break
those laws. But human beings will be human. So will this stalemate continue? Or
will one side defeat the other? The former is more likely.
REFERENCES
Bachman, C. ”The Programmer as Navigator”. Communications of the ACM. 1973.
Bancilhon, F., et. al. Building an Object-Oriented Database System: The Story of O2 .
Morgan Kaufmann Publishers. 1992.
Biancuzzi, F. ”Real Flaws in Virtual Worlds”. Security Focus. 20 December 2007.
Burleson, D. ”OODBMs Gaining MIS Ground but RDBMSs Still Own the Road”. Software
Magazine. 1994.
Chang, O. ”The Cost of Privacy”. GamePro. 29 July 2010.
Eckrich, J. ”Too Easy? Change the Difficulty Setting”. The Examiner. 2010.
Ferguson, K. ”Most Common Types of Databases”. 2009.
Ford, D. ”Entertainment and the Source of Video Games: Still Alive and Thriving”. The Examiner. 2010.
Hoglund, G., McGraw, G. Exploiting Online Games. Addison-Wesley, Upper Saddle River,
NJ. 2008.
Kamfonas, M. ”Recursive Hierarchies: The Relational Taboo!” The Relational Journal. October/November 1992.
Kent, S. The Ultimate History of Video Games. Prima, Roseville, CA, 2001.
Kim, W. Introduction to Object-Oriented Databases. The MIT Press. 1990.
Loshin, P. ”Relational Databases”. Computer World. 2001.
ACM Journal Name, Vol. V, No. N, Month 20YY.
30
·
Kyle Hwang et. al.
Melanson, D. ”A Brief History of Handheld Video Games”. Engadget. 2006.
Poole, S. Trigger Happy: Video Games and the Entertainment Industry. Arcade Pub,
New York.
Radding, A. ”So What the Hell is ODBMS?” Computer World. 1995.
Rosenbaugh-Nordan, S. ”Difficulty in Video Games: Overcoming Challenges and Wasted Time”.
2010
White, W., et. al. Database Research Opportunities in Computer Games. Cornell University, Ithaca, NY. 2007
Whitehorn, M. Inside Relational Databases. Springer, London. 2008.
Wikibook. Video Game Design/Introduction/Components. 2010.
Wikipedia 1. Database Models. 2010.
Wikipedia 2. Databases. 2010.
Wikipedia 3. Difficulty Level. 2010.
Wikipedia 4. Digital Rights Management. 2010.
Wikipedia 5. Copy Protection. 2010.
Wikipedia 6. Cheating in Online Games. 2010.
Wikipedia 7. Copyright Infringement of Software. 2010.
Yan, J, Randell, B. Security in Computer Games: From Pong to Online Games. University of Newcastle upon Tyne Press, Newcastle upon Tyne. 2005.
ACM Journal Name, Vol. V, No. N, Month 20YY.