Daniel Sudmann(Sudi) - Programmer and maker of crappy art
(Yeurl - special tools and effects)
Everyone that wants to help send me a mail with the tastk he wants to take.
Download

The Project:
ShootIrr
Goals
To get a really cool but still simpel game done by showing more or less what irrlicht is capable of.....besides that making an enjoiable multiplayer shooter.
Genre
FPS
Platform
PC Windows/Linux
Used Libaries
Graphics: Irrlicht
Physics: Newton
Network: RakNet
Sound: Audire,OpenAl,fmod
I suggested these libaries because they are all cross platform
Architecture
The game is seperated in a Client and Server Software.
The client gets data and visualizes it.
The Server gets commands and sends out data.
Game Mechanics
Core Gameplay
The game is meant to be played by multiple players other a network or the internet. The goal is manly to collect items and weapons to fight the other players. These items and weapons can be modified, completly exchanged or removed with the shiped tools.
Game Modes
@Deathmatch
-------Scoring System
-Shoot some one gives u one point
-getting shoot takes away a point
-killing two players in a row gives u 2 extra points
-killing three players in a row gives u 4 extra points
-killing four players in a row gives u 8 extra points
@TeamDeathmatch
-Shoot some one gives u one point
-getting shoot takes away a point
-killing two players in a row gives u 2 extra points
-killing three players in a row gives u 4 extra points
-killing four players in a row gives u 8 extra points
-if the other team is completly dead every teammember of the
other team gets 20 extra points
@CaptureTheFlag
-Shoot some one gives u one point
-getting shoot takes away a point
-getting the enemies flag gives 10 points to u and 2 to the rest of
the team
-returning the flag gives 4 points to u
Controling the player
The players move forward, backward, strafeleft and right with player defined keys(menu). They can rotate their view, look up and down with moving the mouse. They can jump by pressing the jumpkey and crouch by pressing the correspodending key to that. They pick up weapons and ammonition by simply running over it. Special items have to be picked up with the use key and later use them by pressing the itemkey. The usekey can also be used to go inside vehicles or press buttons.(vehicles might be included later)
GameFlow
The player can join other games or build his own server and join there. If the player is on the server he will see an ingame menu with three options:
-Join (depending on gamemode here two buttons redteam blueteam)
-spectate
-leave
Ckliking join means he will spawn in the game world.
Spectate will simply close the window and the player is able to fly around
leave will leave the server
This menu can be reached during the whole game by pressing esc.
Changing the team in a team gamemode will cause a 5 points penalty.
When u die u drop ur equipted gun so everyone else can pick it up and the camera will rotate for five seconds around ur dead body...then u respawn. If u press esc within this time u lose a point for every second that was left and u wont respawn until u press join again.
When u pickup a droped/placed gun u gain the gun and 10 shells ammo for that gun even if u already got the gun u get the 10 shells. Placed ammo packs can have different ammount of ammo inside depending on the settings made in the leveleditor. Same with amor jackets and health packs.
GameFlowChart

Physic
The physicsengine will handel the collsion between the players and the level. And the bullets and the bodyparts of the player. The cal3d animation tool allows to get bounding boxes for every bone so the these boxes will have a special material which collide with the bullets. The player collisionspheres which are used for levelcolliding don't collide with bullets.
Network
Player send actions and request to the server. Actions can be move forward or stuff like that, requests like requesting the levelstate at the beginning.
The Server sends changing data to the players like moving a player droping and item or picking one up.
Tools and formats
LevelEditor
Defining base levelhighmap. Placing static meshes of game own format. Placing pickups and Playerstarts and placing light sources.
All placed meshes either static or pickups can be scaled and rotatet.
Furthermore deathtime can be modified and the weapons avaible for this level can be changed(?modding?) therefore selfmade guns can be used without a problem.
Healthpacks, Ammopacks and armor jackets can be placed with whatevermesh assigned to them and the value for the stuff is also variable.
Everything can be saved to LevelFile(XML?). Besides that level script the editor compiles a meshfile for the collision detectionloading.(to speed up loading times)
TerrainEditor
i would suggest an editor where u define on startup how many points the map will have like 256*256 or something and the distance betwen the points than it generates a mesh with these points and displays it. further on it generates a scenenode for every point and links the scenenode position to the vertex position in the mesh. and since u can easily select scenenodes with irrlicht you are now able to change the position.
Everything can be saved to TerrainFile including a special physics datafield for fast collisionmesh loading.
WeaponEditor
PlayerEditor
#################################################
I don't know if this is the right place to make this post but i didn't see a better place....
My idea is that the community might start a game project where every one can contribute to but still with a consistent aim.
And to be realistic....a singel player game would only be possible when doing a fps.....because it simply would take to much time to make an full blown rpg or rts....there for my idea was to go multiplayer and pull something up in that area. But since i don't really have a good idea and even if i had i could only do the programming cause i really suck at arts.....
So we would have to form a team make up an game concept and go for it....
post here for furtehr suggestions