Featured Articles

Video Game Developer – Are You a Wannabe One Of Them?

Video Game Developer

Have you been dreaming about becoming a video game developer and you just feel the creative zinx in you is ready to explode? Then, you are probably ready to take the oath. A video game programmer in simple terms is like a software developer who is involved in the process of developing interesting and appealing video games. These games are developed for multiple entertainment gadgets like the gaming consoles that include, Sony’s PlayStation, Nintendo’s Wii, Microsoft’s Xbox 360 etc., internet or online games, mobile phones and PCs. This apparently is an exciting career and the number of youngsters taking up multimedia and animation courses keeps increasing with each passing day.

 
One can decide which console he wants to specialize in or which are the specific game types he would love to make. The various game types actually depend on the player involvement. It can be multiple player games or single player game. Similarly a game can be an adventurous one with first person shooting or some games are easy just for fun games for kids.

Right Attitude

As in any profession, having the right kind of attitude is important, designing video games also require proper mindset. This is one not only a money minting profession but it is highly challenging as well. While the outlook of gamers changes with each new game, the video game developer needs to understand their psychology. It is essential if he wants players to love the games he develops. Get ready to face the tough challenges to be creative and innovative. Though the gaming industry is known for its casual approach to work, it can involve long hours of work. Game development firms are known for their tight schedules, close release dates and quick bug fixing requirements.

No Kid’s Business

Video games are no more kid’s business rather it is serious business. The games are developed for those who are extremely tech savvy and must have tried every single version of latest games that hit the market. So the developers need to stay on their toes when it comes to pleasing the highly demanding and eccentric game lovers. If one can bring in the next gen experience, then the game would be a hit and so would be the video game developer. Though developing games is a group activity but every single person has a unique and equally important role to play. It would pay well if the wannabe game designer remembers this.

Essential Traits

To be very honest, the popularity of this industry is outlined by the complexity that needs to go into the game development. If game development is your passion then it would help to know what firms look for in young aspirants. The basic qualification in all the latest software’s used in game development is the foremost requirement. This software is include, Photoshop, CorelDraw, Flash, Shockwave, Freehand and Illustrator etc. It goes without saying that the video game developer must be an expert gamer himself to know the basic difference between good user friendly and interactive games to bad and poor design samples. Good problem solving and logical aptitude is also highly valued in this industry. The ability to respond to situations and rectify them is a must.

 
If you want to do well as a video game developer, you must be ready to try out different games that top the charts. One must understand the cutting edge technology and the out of the box thinking that mark the popular game developers. In case you have all these qualities in you, then there is no stopping you from becoming the next big name in the gaming industry.

 
Developing video games is a real challenge as the requirements have to be completely understood. Zatun Games excels in this category. Its game development expertise has led to its name being tagged in the top league. If you are interested to learn more about the process then just log on to http://www.zatungames.com. The result is bound to be good!

Standard
Game Development

Game Development XNA

Game Development XNA framework

Introduction about game development with Microsoft XNA game studio

Microsoft® XNA™ is composed of industry-leading software, services, resources, and communities focused on enabling game developers to be successful on Microsoft gaming platforms. Microsoft provides advanced technology that allows professional developers to quickly enable games on platforms like Xbox 360 and Windows. Simultaneously it provides authoring, development, debugging, and profiling tools, while the libraries provide superior performance and an amazing depth of features.
Zatun has developed the “The Legend of Vraz”, a 2D action packed adventure arcade game for Windows PC. The legend of Vraz is the first 2D arcade game in India created with Microsoft XNA Game studio. It is also one of the earliest Microsoft XNA games developed in India and one of the first games in India from an Independent developer. It is also the first game ever made on Indian Miniature painting style.

Background Study

Before starting the actual game development the team prepared the game design document. Two teams were created which worked in parallel. One team worked on the graphics development which looked for the miniature art and the other team, game programming team, was searching for a particular platform and different game engines. During this period the team checked out other game engines but finally decided to work with XNA.

Game Development

One of the most important phase of the game development was finished; information gathering. After finalization of the platform we started looking on how we can utilize the XNA for the game development with its best. We started from the home page for the XNA and move forward from there looking at different samples and tried to figure out the best optimized solution for that. The learning curve for the XNA seemed to be very low as we had an expertise in C, C++ and C# as well as different graphics library such as Open GL and DirectX.

The following were the base requirements for us to develop a game.

  • Game Menus
  • A graphics library which would give us direct access to the hardware which is available with XNA.
  • A Game world designer, Map Editor, that would help us in faster production of different Levels and Worlds.
  • A Character Animation Editor, Character Editor, which would assist in the developing faster animations with better results.
  • Ease of development of physics that can be included in the game.
  • Ease of implementation of the artificial intelligence inside the game.
  • Applicability of the special effects. Game Menu

Game Menus

Now we are on board the ship of hardcore coding and have just started sailing. We are now ready with the GUI of the game-the menu of the game which handles the game parameters.

Game menu

We started building it from scratch by taking reference from book- Beginning XNA Programming, from Novice to Professional by Alexandre Lobao and others.

We made a general menu initially which gave us the idea about the functioning of menu. We took the approach of Game Components in which every screen was added to the game as a game component. Through this we acquired the knowledge about important features of XNA like Game Components and Game Services.
We also got to know about controlling Sound, display modes and keyboard controls. Dealing with File input/input and mouse was also a part of the learning process so now we were familiar with that also.

Then we began the main programming of our game specific menu but by following the reference as mentioned above we were facing memory issues as every menu screen was added as a game Component which consumed some space in memory and the code would get more and more complex as the number of menu screens would increase. So now we had to think of a very simple way to develop and handle menu because if menu itself would be so complex then mounting the whole game would lead severe memory issues.

We took the approach of a controller which controls the rendering and hiding of menu screen and passing controls to respective screen. The only game component added was the controller which when required to display a screen, would load its contents on run time and would display the screen. This reduced a lot of memory overload as only the visible contents were loaded in game and others are not. This also made our code very simple as in from only a single class – the class of the controller we could manage all the game screens.

Having a simple skeleton ready for the menu, adding the different functionality was not a major task as due to prior knowledge of the audio, display, mouse etc, it was just like fixing the spare parts of the motor engine in proper place. This reduced the development time and effort. Now we will move on to developing the first level of the game.

Map Editor

Map Editor is a utility that allows the faster development of the game levels or the game world. As we have stated in the Introduction section that the game will be a platformer, action and adventure game so obviously we lots of jump and multiple path for the wondering around. We have different layer depths for different images and tiles.

We have even allowed placeholders for different collectibles and the NPCs as well as for the enemies too. This map editor application allows us to draw the collision detection path where player can run on. Bounding boxes are helpful to assign the collision with different objects during the game. We can assign these boxes in the game too.

The NPC characters allow moving during the game into their patrolling area and also able to take appropriate action when the player comes into visibility area. It is more advantageous to assign them in the editor rather than into the game itself. So the Map editor allows us to do this on the fly just on the click on a mouse button.

Once we will finish with one point we can run the application and even check how this thing looks in the real game. Once we found any issues we can straight away go there and sort that issue very easily.

map editor level 4

level 4 2D arcade game

Here it shows different interactive objects which can be directly add into the map editor and then on the fly we can load them into the game.

Game AI (Artifical Intelligence)

Artificial Intelligence is one of the important factor that make the game looks like a real game and the gameplay looks very interactive, the game is engaging the player and make them think.

First of all the game characters should move on the path assign to them and do the patrolling. This means that the character should move on the platform and when they are on the platform they just stand still and play the appropriate animation.

In the other case we have to take appropriate decision when the player character comes in to the visibility of the NPC they have to take appropriate action such as changing the direction, attack the player or dodge if the player is attacking and some other like this. This is a part of the AI. But in this case we have different types of enemies and they have different physic so we can’t take a generic decision. In this case the langur baby can jump as it is light in weight where as the soldier can’t as he has heavy Armour on his body so we have take decision based on this kind of situations.

Even to make the game more realistic we have included different expressions like happy, sad, angry, die and so on. If the NPC can hit the payer twice then they will be happy and miss then sad or angry.

Game Particle System

Particle system is one of the important factor that give realistic look to the game. We have applied particle systems at few many places like in different interactive objects like fire flame, volcano and arrow fire.

For the particle system we have make the particle system manager by our self and use the different objects on them. This manager will take of updating the look and feel of each and particle by make sure that a particular particle requires update. This way we can optimize the thing effectively.

Summary

Game development is a dream of team Zatun. The experience with XNA is also good that we have deliver what we want. XNA is good development platform with lots of resources available on the internet with few dedicated site too.

Standard