Core Technologies and Operating Environments

Operating Enviroments
The game's target audience are core gamers, and as such the software should be designed to work in a computer enviroment common to that audience.

Interesting Steam survey here: http://store.steampowered.com/hwsurvey/ (seems partially broken at the moment).

Hardware
The average core gamer tends to run performance orientated hardware of varying age[citation needed]. In particular, a dedicated graphics unit and multicore CPU are worth noting due to the games fairly intensive use of graphics technology, and heavy use of CPU calculated physics.

In part due to the popularity of laptops, the game should be capable of running on modern integrated graphics units.

Software
The primary operating systems by this demographic is Windows 7, Microsofts PC operating system.[citation needed]

Core Technologies
There are several technologies used in several aspects of the software.

Unity is a cross platform game engine developed by Unity Technologies.

Graphics
The graphics are handled by Unity. Unity is capable of building for Microsoft's DirectX and OpenGL.

Nvidia's shaderlab is used for programing and compiling shader code.

Physics
Physics are handled by PhysX, which is integrated into Unity.

Programming Enviroments
Unity supports three languages. Untiyscript, C# and Boo. The choice of programming language is C#, due to its maturity and excellent integration with IDE's. The Unity enviroment regardless of language is Mono .NET.
 * Unityscript is a javascript-like language released by Unity Technologies.
 * C# Is a Object Orientated programming language released by Microsoft targeted at business users.
 * Boo is a dynamic script language similar to Python.

The website scripts and server code will be written with Visual Studio, Microsofs IDE.

Server
The server will adopt the use of IIS (Internet Information Server), a rival to the likes of Apache that has been chosen, once again, for complete unification of products by a singular major company (Microsoft). This allows for development using ASP.NET (Active Server Page) technologies, as well as ease of administration of services and users.

Our team may also be adopting WebSockets, however its is still uncertain due to compatiility issues with non-Windows 8 platforms.

Update 10/09 - The proposal to use WebSockets has been dropped, the complexity involved as opposed to opening ports on the university's network is too much for our purposes.