Dan Jeffery
 

Ion Core


Download Link 1
or
Download Link 2

You will also need PhysX system software which can be obtained here.
Game Manual (pdf)
If you have any problems e-mail me.
If you get any errors about 'd3dx9_25.dll' is missing, then you can get it from here, the reason for this is described here.



'Ion Core' was developed for my final year project at university. The title for the project was 'a 3D game in a object-oriented programming language'. The name used for development was 'Tank Attack' so this name may still appear in some parts of the game. As well as developing the game I created a detailed report containing research on such things as software engineering, AI, engines and frameworks, hardware, libraries, tools, similiar games and approaches to software testing. The report detailed the progression through development with aid from UML diagramming.

Improvements and changes are being made to Ion Core and some new features will be added shortly.

The game was originally created as an Xbox 360 prototype and has been designed with it in mind. It is best played with an Xbox 360 controller, it not only allows the best control over the game but also provides vibration through the pad.

Objectives

My personal objectives for the project were to learn more about game development. I'd never completed a 3D game before and I thought that this was a good opportunity. Another objective was to learn more about software engineering skills, both high-level design skills and low-level programming skills. I also wanted to learn about game development and the practical project management needed to successfully create a game, which includes software engineering processes. Using effective project management I hoped that it would allow me to create a quality piece of software in the form of a playable game demo or prototype.

I come up with a game design that involved a top-down shooter or game of the shoot em' up genre. One objective of the project was to create a re-usable game framework using solid OO principles, this was helped by the separation of Game and Engine components within the project. By focusing on a good design it was also hoped that new features could be more easily added in the future. The last objective for the game was to create a game that was easy to add new artwork, perhaps for people with little or no experience of programming. It was felt that this was an important skill to develop as artwork is central to all games, the content pipeline should be easy to use for artists.

Features

  • Physics simulated characters
  • Particle effects
  • Xbox 360 controller support, as well as rumble
  • 3D sound
  • Variety of enemies with different behaviours
  • 2 game modes, mission and survival
  • Boss characters at the end of each level
  • Data-driven
  • Multiple weapons
  • Collectable pickups

Development

I started with a concept document which laid out the basics of the game in a short, simple document.It was decided that the game should be targeted towards the Xbox 360 in prototype form. In creating a prototype for this console it was hoped that I would learn some skills that would be valuable in a games company in the future.

 

The Concept document led on the the Design document which attempted to detail all the specifics needed to create the game. This document served as the functional requirements. As the game was developed this document was revised as things were learned.

 

From the design document Use Case analysis was performed which attempted to visual the requirements of the system from a player's point of view. A technical document was also made that attempted to describe the technical aspects needed to realise the game. These documents formed the basis of the design and implementation.

 

Before the game design was solidified some prototyping was done to see which engine and framework would be most suitable.

 


Last updated 23/05/07