Pages

Tuesday, 4 October 2016

Assignment 1, Unit 70: Game Engines

What is a game engine?

Most game development starts in a game engine. The game engine is the backbone of the game, it's what a game is built on, and it's how the developers add things to a game and tweak with different things. Game engines include things such as:

  • Physics
  • Collision
  • Environments
  • Models
  • Sounds
  • Artificial Intelligence (AI)
  • Animation
  • & more
However, there are different engines for different things, and not everything is done in the same engine. An example of something that could be created in another engine is the physics. The physics of a game includes things like collision, and the way things move. For example, how a car handles in a racing game, and how the car acts when it crashes into something. A popular physics engine is the Havok engine, which has been used in many games.

Below I will talk about different game engines, and how they have evolved over time. Firstly, there are 2 different types of game engine, open and closed. An open engine is an engine that everyone has access to e.g. the Unreal Engine, which can be downloaded for free on PC. A closed engine is an engine that is only available to the developers that created it e.g. the RAGE engine (Rockstar Advanced Game Engine.)

Engine 1 - id Tech 1-6

The id Tech engine is quite well known, because it was used to power DOOM and Quake, 2 very popular and influential FPS games. The id Tech engine is a closed engine, and only id Software have access to the full thing, however source code was released for certain games to allow players to create their own maps and mods.
 


id Tech 1 (DOOM Engine, 1993)

The id Tech engine is famous for powering the original DOOM, a hugely influential first person shooter game that released back in 1993. The engine has continued to be used over the years, and 6 versions have been created. The original version of the id Tech engine, was actually just called the "Doom Engine," because at the time that was the only game that used it. As you can see from the image above, the Doom engine is very dated by today's standards, however, at the time it was revolutionary. 
The game appears to be a first person shooter with 3D environments, however due to technical limitations at the time, the game levels are actually 2D. The characters line of sight needed to be parallel to the floor, the walls had to be perpendicular to the walls, and it wasn't possible to create bigger, multi-level structures or sloped structures. 
The source code for the engine was released to the public, so that people could create their own levels and mods etc. 

The levels used binary space partitioning...

id Tech 2 (Quake I & 2 Engine, 1996, 1997)


The id Tech 2 engine had 2 releases, however both are considered completely separate engines, and only the second one is known as the id Tech 2 engine.

Here you can see Quake I. This used the first version of the id Tech 2 Engine, but is usually just called the Quake Engine. Unlike it's predecessor, the DOOM engine, the Quake engine rendered in full 3D, whereas the DOOM engine was completely 2D, make to look 3D. 


Quake I


Here is a screenshot of Quake II, that runs on the final version of the id Tech 2 engine. As you can see, the quality of textures and the models is much nicer than the original Quake engine.


Quake II


The Quake II engine came with out of the box support for OpenGL/hardware accelerated graphics. The engine also featured subdivision of components, which were put into dynamic link libraries. This meant that id Software could release enough source code to allow fan made mods, but keep the rest of the engine proprietary. 

The Quake II engine still used binary space partitioning, and lightmaps were used for the lighting in the levels.

id Tech 3 (Quake III Arena, 1999)


Screenshot of Quake III Arena.


The id Tech 3 engine was used to power id software's game Quake III Arena. The id Tech 3 engine was based on the previous version id Tech 2, however this time, more of the code was rewritten. id Tech 3 required an OpenGL graphics accelerator to run. 

id Tech 3's graphics in general are based around a shader system. This shader system stores the the appearance of surfaces in text files known as "shader scripts." The shaders are rendered in several layers. Each of the layers contains a texture, blend mode and texture orientation modes.

The in-game videos use a format known as "RoQ." RoQ uses vector quantization to encode video and DPCM to encode audio. 

id Tech 3's models are loaded in a format called "MD3." Instead of using skeletal animation, MD3 uses vertex movements. Compared to the animation in id Tech 2, id Tech 3's is much better because the animator is able to have more than 10 key frames per second. This means that more detailed animations can be made, and they will be more fluid and less shaky. Each model is split up into 3 separate parts, head, torso, legs. This is so each part can be animated differently. The legs could be running while the head and torso use different animations. 

id Tech 3 features different types of shadows. One of them is the common "blob shadow" which just places a black fading circle under the player. The two other types are able to cast an accurate shadow of the player model.

The engine uses a "snapshot" system which send information about the game frames to the client. The object interaction on the server is updated at a rate independent of the rate of the clients, and sends the information about the state of the objects at that point in time to all the clients.

Quake III Arena is an online game, so of course it has an anti-cheat system. The anti-cheat is called "pure server," and is automatically enabled for everyone that joins the server. Pure mode checks the files of everyone that joins, and if someones data pack fails one of the checks, they will be removed from the server.

id Tech 4 (DOOM 3 Engine, 2004)


Screenshot of DOOM 3.
id Tech 4 featured improved graphics and more features than id Tech 3. Some of the new features are bump mapping, normal mapping and specular highlighting. id wanted to use dynamic, per-pixel lighting for id Tech 4, instead of the pre-calculated lighting that older engines used. As a result, DOOM 3 looked much more realistic since things were being rendered in real time. 

id Tech 4's models use skeletal animation, however this proved to be quite CPU intensive, and therefore id had to optimise it.

id Tech 4 was created to be used in DOOM 3, which is a game that takes place in primarily dark environments. Because of this, the engine couldn't really handle large outdoor daytime areas. Something known as MegaTexture rendering technology was used, which actually made id Tech 4 into the best engine for handling large outdoor areas. MegaTexture allowed detailed environments, which included things like dynamic sounds. For example, the walking sound would change depending on what surface the player was walking on. 

For scripting, a language similar to C++ was used. Scripting is used for mod creation and for controlling the enemies, weapons and map events in DOOM 3. 

id Tech 5 (2011)


Screenshot of RAGE.


id Tech 5 came out a long time after id Tech 4, and is a far superior version of the engine. The engine was first used in id's game RAGE, which released in 2011. 

When the engine was first shown, it featured 20GB of texture data. Which meant is could support much higher texture resolutions, and a more dynamic world. The engine was also able to automatically put the textures into the memory as needed, so the developers no longer had to worry about texture limits/restraints. Which meant developing for several different platforms was easier. Many more features were also available in id Tech 5, such as softer shadows and particles, and effects like depth of field, motion blur, and post processing.

id Tech 6 (2016)

DOOM 2016
id Tech 6 is the latest version of the id Tech engine, and was made for the DOOM 2016 reboot. A modified version of the engine is being used for the upcoming game Dishonored 2.

The engine uses dynamic lighting and virtual textures (known as MegaTexture in 4 and 5) but in id Tech 6 they are much higher quality and are able to use realtime lighting and shadows. Many effects are used such as, motion blur, bokeh depth of field, HDR, bloom, shadow mapping, screen space reflections, directional occlusion and FXAA, SMAA, and TSSAA anti-aliasing.

Engine 2 - Source Engine

The Source engine is also quite well known because it has been used for Valves extremely popular games, such as Half Life and Portal. The Source engine is open and a SDK is available. Games such as Garry's Mod were made using the source engine. (GMod was developed by Facepunch Studios.)




The Source engine is the successor of Valves original engine, Gold Source aka GoldSrc. Unlike the id Tech engine, the source engine isn't updated with different numbered versions, it is just updated.

Source 2006 (Half-Life 2)

Source 2006 is the term used for the branch of the source engine that included technology used in Valves Half-Life 2: Episode 1. This engine included new effects like high dynamic range rendering and colour correction. These features were showcased in Valved tech demo-like game called Half Life 2: Lost Coast. Other smaller features like Phong shading were introduced in HL2: Ep 1.

Source 2007 (The Orange Box)

The 2007 Source engine was made for Valves new release The Orange Box, which contained Team Fortress 2, Half Life 2, Ep 1 and 2, and their new game Portal. A new threaded particle system replaced the hard-coded effects for all the games in The Orange Box. To support this, Valve created an in-process tools framework, which also supported the initial builds of Source Filmmaker, Valve's free tool that people can use to create animations using Source assets. The facial animation system was updated for "feature film and TV quality" by making it hardware-accelerated.

Since The Orange Box was released on multiple platforms, the code was refactored, and the source engine was able to take advantage of multi-core CPU's. However, until the release of Left 4 Dead 2, the performance on PC was unstable. At a later date, Valve backported the multi-core CPU support to Team Fortress 2 and Day of Defeat: Source.

The Xbox 360 version of The Orange Box was developed by Valve in house, and the Playstation 3 version was developed by Electronic Arts. The engine supported the Xbox 360 quite well, and the support for the console was built into the engines code. The PS3 version by EA had many issues, however.

Left 4 Dead Source

The next version of the Source engine is simply known as the Left 4 Dead branch. During the development of Left 4 Dead, the Source engine was completely overhauled. More features such as split screen multiplayer, more post-processing effects, event scripting and a dynamic AI director, due to further support for multi-core CPU's. This branch of the Source engine would continue to be used and updated for Alien Swarm and Portal 2. 

Source 2 Engine

Source 2 is Valves newest engine, and is yet to make it's way into more games. Currently, the only game to use the Source 2 engine is Dota 2. Source 2 features a rendering path for Vulkan API, and it will use Valves in house physics engine Rubikon.


Dota 2 running on the Source 2 engine.

Engine 3 - Unity

https://s.aolcdn.com/hss/storage/midas/fd2065d36d077eceb6061a708eb00778/202783142/Unityenginelogo.jpg





The Unity engine is very popular, since it can be used on several different platforms. It is used to develop games for the PC, consoles, websites, and mobile phones. The engine is open, and a free version and paid versions are available. 



The Unity engine uses different API's for different platforms, on Windows and Xbox it uses Direct3D, on Mac, Linux and again Windows, OpenGL is used. On phones (Android and iOS,) OpenGL ES is used. Unity can also be used on web pages. For all the different platforms, Unity features texture compression and resolution settings. There are many different effects and technical features that Unity includes such as, bump, reflection and parallax mapping, SSAO (screen space ambient occlusion.) The engine is very diverse and there are lots of options for each platform that it supports. Because of the engines diversity, it is popular among developers who develop games for multiple platforms. 

Instead of using there own development kit, Nintendo use Unity, and the engine is bundled with Wii U development kits. 

Engine features and comparisons

Rendering

Rendering is the process of using a scene/scene file to generate a 2D or 3D image. A scene file contains all the objects and scene information in a language or data structure, and things such as the viewpoint, texture, lighting and shading are stored in it. The scene file is then put into a rendering program, and a full 3D or 2D image is produced. There is something known as the "graphics pipeline," which outlines the challenges to overcome when producing a 2D image from a 3D representation along a rendering device, e.g. the GPU (graphics processing unit.) The term "rendering" is also used in video editing and is when the effects are calculated in a video editing program to produce the final video.

The Unity engine uses a rendering Pipeline.

Forward Rendering Path - The ForwardBase pass is responsible for rendering ambient light, lightmaps, main directional light and not important lights at once. It is used for any additive per-pixel lights.

Deferred Shading Path - Deferred pass renders everything that is needed for the lighting. Built in shaders, diffuse colour, specular colour, smoothness, world space normal, smission. It also adds lightmaps, reflection probes and ambient lighting.

Legacy Deferred Lighting path - PrepassBase pass renders normals & specular. PrepassFinal combines textures to render final colours, and renders lighting and emissive material properties.

Legacy Vertex Lit Rendering Path - Vertex lighting is often used on platforms that do not support programmable shaders, so multiple passes for lightmapped and non-lightmapped objects have to be written explicitly. 


  • Vertex pass is used for non-lightmapped objects. They are rendered at once using OpenGL/Direct3D.
  • VertexLMRGBM pass is used for lightmapped objects when the lightmaps are RGBM encoded (PC and console.) No realtime lighting is used.
  • VertexLMM pass is used for lightmapped objects on mobile platforms when they are double-LDR encoded. No realitime lighting is used and textures are combined with lightmap.
Source: https://docs.unity3d.com/Manual/SL-RenderPipeline.html



Artificial Intelligence

Artificial intelligence is used in video games for NPC's (non-player characters.) These are characters in the game that are controlled artificially/by the computer, and the goal is to have them act as human as possible. Since these characters are being artificially controlled, it is possible that they can be way too good and make the game unfair. In first person shooter games like Counter Strike, the skill of the AI needs to be toned down, otherwise their accuracy will be perfect and beyond what is achievable by normal humans.

AI is handled differently in different engines, for example, Unreal Engine 4 uses something known as "behaviour trees." Behaviour trees contain different actions that branch off to more actions, and they all connect together. I will put a screenshot below. Blackboards are also used, which is the AI's memory. It stores all the values that the behaviour tree needs to use.







A simpler engine like GameMaker uses drag and drop. When you go into the properties of an object, you are presented with a menu with lots of options and categories on the right side. You simply drag and drop the options you want into the events column on the left. You can edit the values etc. GameMaker also allows users to use code, however since GameMaker is good beginner tool for game developers, drag and drop is quite popular.





Middleware


Middleware is software that provides additional features and services to applications, and is often called "software glue." In gaming, middleware is used in game engines to handle certain technical aspects of the game. An example of a popular type of middleware is the Havok physics engine, which is an engine that specialises in handling physics (collision, rag-dolls, how objects move and react etc.) Havok has been used in over 600 video games, and is also used in software like Maya.






Another middleware program has started to become increasingly popular over the years is Nvidia GameWorks, which includes some really nice effects. GameWorks is made up of several components.

VisualFX - This handles the rendering of water, fire, smoke, depth of field, FaceWorks, HairWorks, HBAO+ (ambient occlusion) and TXAA (temporal anti-aliasing.)

PhysX - For physics and detailed particles. Below is a screenshot of Borderlands 2 which uses PhysX for high tech, detailed particles. PhysX is also used for fluids. 




OptiX - For lighting and rays.

CoreSDK - Allows better integration for Nvidia features in games.









Wednesday, 14 September 2016

Unit 6: Critical Approaches To Creative Media Products

Gaming and Motivation
Gamer's are into all kinds of games, and everyone has certain things in games that motivate them. It could be getting their character to the max level in an RPG, or working as a team to win a match in Counter Strike. I am a gamer, so obviously there are things that motivate me too.

Different Types of Gaming Motivation
While I personally get motivated by team play and objective based games, there are a few different things that can motivate people.

Action and Excitement - Gamers who like action and excitement are driven by having lots of guns and explosives, and they like to cause lots of mayhem. They like games that surprise them, and give them an adrenaline rush. Some examples are Call of Duty and Battlefield.

Social - Gamers that enjoy teamwork and communication in games like Counter-Strike, or just chatting casually to other players in an MMO like World of Warcraft.

Mastery - Games that involve the player spending time learning how the game works, and mastering the gameplay. For example, challenging games like Dark Souls, that require a decent amount of skill. They may also like games that require lots of planning, like Cities: Skylines.

Achievement - Gamers who like to spend time completing as much of the game as possible. Exploring every nook and cranny of the game world, completing every mission and getting every achievement. Open world RPG games like Fallout are a good example.

Creativity - Gamers who like to try out lots of things in a game and do lots of experimenting. They may spend lots of time building in a game like Minecraft, or creating a character or putting skill points into a skill tree.

Immersion - Gamers who like to feel like they are part of the game world, and get involved with the characters and the story. A good example is Fallout, and RPG game where you can play however you want and treat the other characters however you want. It also has a very good atmosphere.


What Motivates Me?

I am mainly into action and team oriented games, so my motivations are often related to in game objectives. For example, I have played a lot of Counter Strike, so I really enjoy grouping up with friends and communicating to win rounds/matches. This is also the same with Overwatch, where your team have to escort a payload to a certain point, or try to hold a capture point longer than the enemy team. You have to make sure you play as a useful character that works well with the other characters on your team. I also enjoy playing RPG's and I like to explore as much of the world as possible, and complete as many quests as possible. Below you can see my results from completing a survey about this topic. 


https://apps.quanticfoundry.com/gamerprofile/d0e85684e4e2488e9dba56b1c43fa237/





Tuesday, 19 April 2016

Assignment - Creating and Applying Sounds

Brief Game Description

The game I will be making/applying sounds for is my remake of the original Space Invaders. Space Invaders is an old game (made in 1978) and involves the player controlling a laser cannon along the bottom of the screen. The player has to shoot a wave of aliens that move from top to bottom. They have 4 barriers that provide cover, however if the aliens hit cover 3 times it will be destroyed. There is also score, and lives.

Sound Plan

Space Invaders is quite old and therefore doesn't use a wide variety of sounds. It has sounds for shooting, killing the aliens, the player dying etc. And it also has a repeating track playing in the background that only uses 4 different notes. I want the sounds to be similar to the original, however I probably won't be able to get them exactly the same.

The sounds I plan on creating are:


  • Player shooting sound
  • Background music
  • Alien death sound 
  • Player death sound
  • Bonus spaceship sound

Recording Methods and Software etc

In terms of recording, I will most likely be using my USB microphone that I have at home. However, the sounds I recorded at college were recorded with a small portable recorder (I do not know if I will be using the sounds I recorded at college.) 

The mic I have at home is an MLX USB .006 Mic. I will put the specs below:
Frequency response: 20Hz - 20 kHz
Sampling rate: 44.1kHz, 48kHz
Bit-depth: 16-bit

I will use stereo recordings.

I will be using Audacity to edit sounds, and maybe even to create my music tracks. Audacity isn't designed for creating music from scratch though, so I will probably record sounds individually then use Audacity to put them all together and make a track. I could also use Soundation which is a drag and drop music creation software that can be used for free on Google Chrome. 

The Final Sounds

The sounds that I did make in the end were a player shooting and death sound, and alien death sound and a background track, so all of the things that I planned. I will go through what I did for each one.

Player Shooting Sound

For the player shooting sound I used a sound that I recorded in college with the portable recorder. None of us actually know what the sound was, as it may have been something in the background or something we did and forgot about. It sounded kind of like someone kicking or hitting a bin. I added a wahwah effect to this sound which made is sound like a laser. This sound is an MP3 file, is 86kbps and is 4.62kb in size.

Background Music

The background music is actually me humming! I used a silence feature in Audacity to cut out the slight background noise between each note. This also made each note cut in and out a little less smoothly, so it wasn't as obvious that it was a voice, however you can still tell. This is an MP3 file, is 47kbps and is 85.7kb in size. It was recorded with the mic I mentioned previously.

Alien Death Sound

The original Space Invaders uses quite simple sounds, so I wanted the alien death sound to be quite simple. The sound is just a beep from the touch screen of a college printer. it is an MP3 file, is 165kbs and is 2.11kb in size.

Player Death Sound

I wasn't really sure what to do for the player death sound. In the end I decided to go for a simple explosion-like sound. To create the sound I hit the top of my bed sheets. It sounded more like a slap sound so I brought the bass up and got it sounding like a mini explosion, or muffled explosion. It is an MP3 file, is 153kbps and is 4.88kb in size. I didn't want this sound to cut out suddenly so I added a fade out effect. It's quite subtle but makes the sound a lot nicer.

Exporting The Sounds and Additional Editing

I exported the sounds using Audacity's built in export feature. To be able to do this I had to download the LAME encoder, which is a .dll file that allows files to be converted to MP3. I also merged each sound to one track, to make the files smaller.

Importing the Sounds to GameMaker

In GameMaker I went to sounds, clicked on "create sound." Then I clicked on the folder button next to the sound name. I then selected the mp3, named it and pressed OK. I did not change any settings because GameMaker automatically sets them.



After doing this for all the sounds I gave them simple names starting with "snd_." This is usually what you do in GameMaker when creating some sort of asset. If you create an object you start it with obj_, if you make a sprite it starts with spr_.


Gameplay Video

Below you can see a video of my Space Invaders remake with the sounds applied. 



Evaluation

I managed to do almost all of the sounds that I planned. The only one I missed out was the bonus spaceship sound because I didn't really know how to recreate it. I used the same methods of recording an editing that I included in my plan, which was to use my USB microphone and edit the sounds within Audacity. For the background music, however, I didn't plan on using my voice, but that's what I did in the end and it turned out quite well. I think that the sounds fit the game well, and its good that I managed to take random sounds and make them work. Humming the background track turned out better than I expected since the original game had music that was created electronically, and sounded quite robotic. Luckily my version sounded fairly similar. Overall I think that this assignment turned out well, and I stuck to my plan well enough. 

Monday, 14 March 2016

Controversial Games - Manhunt

What is Manhunt?

Manhunt is a game that was created and developed by the well known Rockstar Games. Rockstar are responsible for some of the best selling and also most controversial games to date, the best example being the Grand Theft Auto series. Rockstars games often get a lot of attention because of how violent they are, and they are often linked to real life murders.

Rockstar games logo.
Manhunt PS2 packaging.


"Manhunt" is a game about murdering people. You play as James Earl Cash, a prisoner who has supposedly been killed by a lethal injection, however it turns out the injection was only a sedative as he is woken up by a man known as "The Director." The Director promises Cash freedom if he does everything he says. This involves moving stealthily through each level, brutally executing each enemy. The game mainly focuses on these brutal executions, and the player is ranked depending on how well they carry them out. On normal difficulty, the player can only earn earn 4 stars max, one for beating the scene (levels are known as scenes in the game) within a certain a time limit, and the other three depend on how you do the executions. Hardcore difficulty allows the player to earn 5 stars, one for speed, 3 for brutality, and 1 for simply finishing the level. 

The game also offered 3 different levels of execution. Level 1, hasty executions are quick and not very violent. Level 2, violent are quite gory, and level 3 are extremely gory over-the-top murders.

An execution from Manhunt. The player is suffocating an enemy with a plastic bag.


Manhunt Controversy

The extreme violence in the game caused a lot of controversy because of how realistic it was. Former Rockstar employee, Jeff Williams even said that the development team didn't like the level of violence. "There was almost a mutiny at the company over that game. It just made us all feel icky. It was all about the violence, and it was realistic violence. We all knew there was no way we could explain away that game. There was no way to rationalize it. We were crossing a line."

Manhunts extreme violence lead to lots of annoying things. Lots of people got involved, including a U.S. representative Joe Baca. Joe Baca was against violent games being sold to people under 17, and he supported the idea of fining those who were caught doing it. Joe Baca saw Manhunt has a training tool, or "weapon of personal destruction." There was no challenge, it just lined up enemies for you and you were able to kill them in the most brutal ways. One of his other concerns was how easy the game was to pick up, and any young child could easily play through the game in one sitting.

Stephan Pakeerah Murder

On July the 28th, 2004, more people started hating the game when it was linked with the murder of a 14 year old boy, Stephan Pakeerah, who was murdered by his friend Warren in Leicestershire, England. The media stated that a copy of the game was found in Warrens room, and people thought that his murder was heavily inspired by the murders in the game. Stephan's parents talked about how according to Warrens friends, he was obsessed with Manhunt. They also said that it isn't a game, it's a psychological experience where the only aim was to kill in the most brutal ways possible. They were convinced that Stephan's murder was linked to the game in some way. However, the Entertainment and Leisure software Publishers Association disagreed, and they stated that "We sympathize enormously with the family and parents of Stefan Pakeerah. However, we reject any suggestion or association between the tragic events and the sale of the video game Manhunt. The game in question is classified 18 by the British Board of Film Classification and therefore should not be in the possession of a juvenile. Simply being in someone's possession does not and should not lead to the conclusion that a game is responsible for these tragic events."

Then, shortly after, Jack Thompson got involved. Jack Thompson is an American attorney (who was disbarred later on) who had campaigned against violent video games many times before. Jack Thompson claimed that he had written to Rockstar before the release of the game, telling them to cancel the release because the game could inspire copycat killings. He also referred to violent games as "murder simulators." After Jack Thompson had stepped forward and spoken about the game, Stephan's family hired him, and aimed to sue Sony and Rockstar for £50 million. This however, completely failed, because it was discovered on the same day Thompson was hired that there was no link between the game and the murder, and the game was found in Stephan's bedroom, not Warren's.

Jack Thomson.


Dmitry Vinogradov Rampage

In November 2012, a 30 year old Russian man Dmitry Vinogradov killed six of his colleagues at a Pharmacy because his romantic advances towards a female colleague had failed. Dmitry was apparently completely healthy in terms of his mental state, and was able to work at the Pharmacy and own firearms without anyone being concerned. However, he had been drinking a lot before the attack. Of course, since he was a gamer, they linked the murder to his interest in the game Manhunt, which lead to the game being banned. 

The Legal Status of Manhunt

In terms of legal status, some countries took action with Manhunt. In New Zealand, the game was banned on December the 11th 2003. The chief censor, Bill Hastings said that "it's a game where the only thing you do is kill everybody you see [...] You have to at least acquiesce in these murders and possibly tolerate, or even move towards enjoying them, which is injurious to the public good."

In Toronto, Canada on December 22nd 2003, a meeting was held between Bill Hastings and the Ontario Ministry of Consumer and Business Services. The result was that Manhunt would be classed as a film and would only be available to adults.

In Germany, the game was banned because people saw it as killing people for fun.

In Australia the game was refused classification.

In Russia the game was banned after a due to the murders that I talked about above.

Manhunt 2

A few years later, the controversy returned when Manhunt 2 was announced. Take-Two interactive talked about the links with the first Manhunt game and the murder of Stephan Pakeerah and said that it was not linked in any way. Stephan's parents disagreed and continued to believe that the game played a huge part in their sons murder. Jack Thompson got involved again and wanted to have the game banned. He also believed that the game played a bit part in the murder and that Take-Two were lying about the incident. He also said that he was going to sue Take-Two and Rockstar in an attempt to ban Manhunt 2 and Grand Theft Auto IV as "public nuisances." This backfired, and Take-Two responded by saying that video games are purchased as private entertainment, and cannot be considered public nuisances. Thompson, believing that Take-Two had made a huge mistake, filed a counter-suit, accusing Take-Two of several violations. Thompson thought that this would destroy Take-Two and Rockstar, however he was wrong. The situation ended fairly quickly, and Thompson wasn't allowed to get involved with Take-Two and Rockstar and the sales of their games. Take-Two also had to drop a suit that involved Thompson's attempt to ban their game "Bully" a few years previous. 

Thompson instead went on to contacting the CEO of the fast food chain "Wendy's" and he tried to get them to stop their Nintendo Wii promotion because Manhunt 2 was set to release on it. Others, including the Center for a Commercial-Free Childhood were also concerned about the game being made for the Wii, since the Wii was seen as a platform aimed at younger players. The Wii uses motion controls, so if you were stabbing someone in Manhunt, you would do a stabbing motion. Thompson described it as a "training device."

Tuesday, 1 March 2016

Game Assignment - Brainbox

What is Brainbox?

Brainbox is a maths game that is designed to help students who want to achieve a C grade in their GCSE maths. 

The main character of the game is called Brainbox, and in my game he is a small robot fighting against the other Brainboxes that have become corrupt because of the work of the evil twins "Division" and "Multiplication." Brainbox must move through levels avoiding the enemies and figuring out certain questions. Below I will show you the different assets in my game and how each object works/what it does.

Brainbox Sprites


On the left you can see the sprites that I have made for Brainbox. I created all of these with GameMaker's built in sprite editor. Some of them I drew just by using the pen tool, and I came up with them off the top of my head, however most of them were created with the shape tools that allow you to easily draw a shape in any size.


Above you can see the sprite editor. On the right you select the colours and opacity, on the left you can access several different tools. In the middle your sprite is displayed and you edit if from there. The sprite that you can see in the editor is Brainbox. To come up with the idea for this, I literally used the words in his name, brain and box. He is a box shaped robot with his brain encased in glass on the top of his head. 
The enemies are designed in a similar way, however they look a lot more evil and the glass that is holding their brain is shattered, and the brain is hanging out. They also have broken arms with sparks flying out and cracks on their body.




I also have wall sprites, many shape sprites that are used for the questions, and buttons/computer terminals that the player gets their questions from.

My Brainbox, enemy and button sprites are also animated. Brainbox bobs up and down, and the enemies do the same but have sparks that fly out of their broken arms. The computer terminals have screens that steadily flash between black and white.


The different frames of animation for the Brainbox sprite.

The animation for Brainbox only uses 2 different pictures, the first one is him standing up normally, the second one his him crouching down. I duplicated each of these several times to get the animation at the speed that I wanted. I did the exact same for the other animated sprites.

Brainbox Objects


On the left you can see all of my objects. There are only a few objects that actually have events inside them, the main one being the Brainbox/player object, so I will show that one first. Also, all of the objects use drag and drop events, with no code.

Player Object

Firstly, there are collision events with the enemies. These collision events allow the player to die when they collide with an enemy. When they die, their instance will be destroyed, a message will pop up saying "You died!" and then the current game room will restart and the player will have to do it all over again.



Next, there are collision events with all of the walls in the game (obj_wall to obj_wall3.) These events simply set the players movement speed to 0 when they touch them, so they cannot move through the walls and cheat.

Next, we have the buttons/terminals (obj_button to obj_button5.) When the player collides with them, the game is paused and a message window pops up, giving the player instructions.

Next, we have all the shapes that are used in the questions (obj_square to obj_octagon2.) When the player collides with the correct answers, a message will pop up letting them know that they have got the correct answer. All of the enemies and other shapes in that section are also destroyed. The shapes that are incorrect have no collision and the player can go through them, making the movement throughout the level a bit easier and less frustrating. The first pink square isn't just an answer, and it works as a door that moves the player from the tutorial on to the first level.

Lastly, we have obj_portal, which is simply a door that takes the player to different levels.

There are also some simple keyboard controls at the bottom for the arrow keys. The player will move in the direction that they press at a speed of 2.3.


obj_enemy to obj_enemy4

All of the enemies in the game use the same drag and drop features. They move either vertically or horizontally depending on where they are placed in the level, bounce off the walls and move at a speed of 2.


Obj_enemy2 moves
horizontally. 











Backgrounds

I did not make the backgrounds myself, and I got them from Google Images. I will put the sources below: 

https://goo.gl/bd4ewM

https://goo.gl/TwqXTO

Gameplay Example + Screenshots

In the next section I will show you some levels from the game, and some of the object events in action.



Above you can see the first tutorial level. This level introduces the player to the basic gameplay elements. If the player collides with the terminal in the middle, this message will pop up:



Upon colliding with the square, the player is sent to the next level.


This is the next level of the game. The player spawns in the top left and has to move around in a spiral pattern, completing each section. The red walls separate each section. For the first section, the player is told by the computer terminal that they must touch the cube to finish the section, upon touching the cube, all of the shapes and enemies in that section are destroyed, and the red wall leading to the next section is destroyed. 

The player has touched the cube and can now access the second question.
The rest of the questions in this level work the same way, in the second one the player has to touch the prism, in the third they have to touch the hexagon. The last level requires the player to touch all of the shapes that were the answers to the previous questions (the first terminal in the level tells the player that they should probably remember what the answers are. Each time they select a correct answer, one of the red walls leading to the middle of the level will be destroyed.