Posted by Wajahat Karim (GamyGuru)
Hey Guys!!! I know you were waiting for the next post on the series. Its been a while I was busy for some days. So, today I am writing about the different types of games as fourth part of Inside The Game series. For those, who are not familiar with Inside The Game series, this series will provide the articles and tutorials related to mechanisms and architectures of the game. Also, in this series, you will learn to think like a game developer. Now, if you have not read the last part of this series, please click here to read it. I am summarizing the last part here for those who have not read. In the last part, we discussed some basic concepts behind a game development like game engine, graphics engine, and the game itself.
As we have talked lot about the graphics, gameplay, game engines etc, but we have not talked much about the game. In this article, we will talk about the games especially types of the games. One thing must be noted here is that types of games are not the genres of the games, which are found generally in game industry. Rather, types of the games in this article are from development perspective, means what kind of architectures are used in different types of game at time of coding or programming. However, the most types discussed in this article are related to the game genres as well. So, let’s not talk about the post scripts of the article more :P. Let’s talk about the original stuff of Inside The Game series here. So, types of the games…. umm… that’s quite difficult topic to be explained in just a single page. So, lets’ start from the text-based games.
Really!!!! Text based games? That sounds weird… right. I know. But back in 1976, when there was almost no concept of video games, there introduced the most first game, and that game was a text-based game. We are living in 20th century, so I don’t think that anyone might played the text-based game. Let me share you a text-based game here:
Well! I completed the game and won it. Hint is read the instructions on the side of the game, that will guide you through the game. Well! text based games are the games which uses text characters instead of computer games. These games were the very common games in era of 1970 to 1990. However, even today, these types of games are being played on the internet, but in a different form known as Multi-User Dungeon (MUD). So, about the architecture of these games, these games are very easy in development. There are various reasons behind its low level of difficulty. Some of which included are like gameplay, that user can interact with the game only through text so gameplay factor is relying on the text only, no computer graphics or game art to impress the user and so on. All a developer has to do to create a state machine, and then just implement it using if-else blocks and finish it on compare and do basis. Following figures are the examples of text-based game.
Card, Logic, or Board Games
Well! Now I don’t think that anyone wants explanation about these games. You know or might have played in your awesome childhood the logic or board games like Spades, Chess, Ludo, or Monopoly etc.
So, from programming point of view, these games are quite simple. These types of games maintain an array for values, and all the game is stored in these values. And those values are updated on basis of game rules, for example the chess rules. We will come to this maintaining value factor in details later at time of implementation. For now, I will only say that the factor which differs one chess from another chess is graphics or game art. However, the inner coding is same in each board game and the board is stored in array, and then the game development is all about how you manage and display that array.
Ahan….. Umm…. Arcade style? Well! what do you say about arcade style? Umm….. thinking, thinking… Ummmmmm…… still thinking…… Oh forget it… I will tell you about arcade style then. The most games we play are counted in arcade games. Well, its a very big category of games. Well, what is the arcade style game. Well, I can’t define arcade game, because there are so much arcade games that you just can’t say whether any game is arcade or not. But, hey! don’t you worry, I got some examples to show you about arcade game style games.
Space Invaders (left) and Snake Game (right) are two examples of arcade games. From programming perspective, well, I can’t tell you the architecture, because it depends on the game itself. For example, you can store all the data of space invaders in an array and display it and modify the values like on/off to show the alive/dead status of any plan. However, in case of snake game, its just snake and food to maintain and rest is upto display and graphics. Platform / Side Scrolling Games Oh….. Wow… Platform games… I used to play platform games in my childhood a lot. Now, these games are somehow scrolling games, which can be constantly scrolling or controlled by the user. The scrolling can be vertical or horizontal. In case of horizontal scrolling, gravity and clouds factor also becomes functional, however in vertical scrolling, it becomes some sort of space or gravity in down scrolling as something is falling. Examples include Mario, Sonic Hedgehog, Space Invaders, Nokia Bounce, 1945 etc. Please note that Space Invaders is also included in Platform games, however this was already included in Arcade games. So, the games can have multiple categories. Now, from programming perspective, these games can be managed with different architectures depending on the game developer. What I follow and recommend is to treat these games like board games, just with scrolling and long board, and rest is same. I will post a tutorial on platform games later at time of implementation.
Action / Racing Games
Well, like arcade games, action games are also in unlimited numbers. I think except board some board games, you can count every game in action game category. Well we can’t say the architectures of the game, because it depends on the game itself. The examples of action games include Street Fighter, Need For Speed etc. I guess these games are your favorite games. 🙂
Strategy games…. They are exactly like as they sound by saying strategy games. So, in these games, user is given an open and independent environment to make a decision, and is required to make strategy to achieve the game goal. Sounds realistic or cool…. 🙂 I know…. I am a big fan of the strategy games, even the game we made on large scale was a also strategy game. Well, I will tell you about the game later. So, Commandos: Behind Enemy Lines, or Stronghold Crusader are examples of the strategy games.
From programming perspective, these type of games can be managed like a board game. Its all about displaying and computer graphics. However, what differs these games from the board games is detail of the game. For example, in chess games you have got details upto 64 (8×8) squares, however in these games the more details you provide, the more access and control you provide the user, the more strategical missions you provide to the user, the better game it will be. But, handling and managing so much details through programming becomes very difficult and time consumptive. And, the very important factor in these games is gameplay. For example, you provide lot of details, and gameplay becomes very difficult due to details, then that game is not useful. However, if you provide the details to the user, you better think about the gameplay first, because it is the core factor behind the game.
First Person Shooter (FPS) / Third Person Shooter (TPS)
Phewwww……. Finally, here comes the most wanted category, First Person / Third Person Shooter games. Well! these type of the games are played very lot especially on Console, XBOX, PlayStation3, and computers as well. Wait a second here before we move forward, I think I am forgetting something here. Umm….. Oh Yeah… 🙂 I remembered it. The difference between First Person and Third Person is of the camera view. In FPS, user is the first person and seeing the game world from first person perspective, however in TPS, user is the third person and seeing the world from third person perspective. For example, Counter Strike is first person. You hold the gun, you shoot the enemies. It means you are the first person. But in Grand Theft Auto: Vice City, player character/hero shoots the enemies, character/hero holds the gun, and you (the user) is watching both parties (enemies and the player), so user here becomes the third person.
From programming perspective, these games work on 2D basis, these are just rendered and displayed in 3D. You can manage the game data like strategy or board games, all you have to change is the method to display the data on the screen.
Role Playing Game (RPG)
Hold on!!!!! I know you probably are thinking that how much types I am going to write in just a single article. Well, you will be glad to know that this type is last in the article. Role Playing Games (RPG), I think few of you have heard this title or word. But, don’t you worry, because words might be new but story is same old. In these games, users are given a role, and they are asked to play the role, and the game will take turns on basis of your role and character in the game. For example, Mafia Wars, even GTA: Vice City are RPG games. Let’s take the example of GTA. You are a street thug, who have to complete missions and contracts given and earn some money for betterment of your life. So, now you (user of game) are not a player anymore, you have got a role and you are now street thug in case of GTA. This is how RPG games work. From programming perspective, it depends on the game. But the most important factor in these games is the gameplay. You have to provide the gameplay in such way that user must feel that he is not user anymore. Well! about graphics, if user feels the role, then it doesn’t matter that you make 3D action graphics (GTA Vice City) or just buttons to shoot or take action in imagination (Mafia Wars).
In a nutshell, we discussed different game types in this article. In the next article, I will explain tile based architecture, which can be used in these types of the games. To read the next part, click here. I hope that you like the series, and I would love to hear from your side. You can give your valuable comments, suggestions, and improvements you would like to see in the blog. Thanks for reading the article…. 🙂
- Inside The Game – Game Engine, Graphics Engine, and The Game (gamyguru.wordpress.com)
- Make your own text-based games with ease! (daniweb.com)
- [Games] Casual Arcade-Style Games by Game Circus (Android) (geeky-guide.com)
- How to Play Classic Arcade Games On Your PC (howtogeek.com)
Tags: Action Games, Arcade game, Arcade Style Games, Board game, Car Racing, Commandos Behind Enemy Lines, Counter Strike, Developer, First Person Shooter (FPS), Game, Game Design, Game Engine, Game World, GamyGuru, GTA Vice City, Inside The Game, Interactive fiction, platform, Platform Games, Programming, Role Playing Games, RPG, Side Scrolling Games, Space Invaders, Strategy Games, Street Fighter, Stronghold Crusaders, Technology, Text-based game, Third Person Shooter (TPS), Video game, Video game developer, Video game development