Changes

Jump to: navigation, search

Team Blam

2,167 bytes added, 12:43, 15 December 2010
Project Marking Percentage
{{GAM666/DPS901 Index | 20103}}
= Don't Crash Into Buildings! =
== Project Marking Percentage ==
<big>
Group work: 50% (25 <= xx <= 50)
Individual work: 50% + (50 <= xx <= 75)
-------------------------
Total 100%
</big>
Since the team did not decide, the work division is set to 50/50
 
== Team Website ==
[http://blam.lighthouseapp.com/projects/61347-dont-crash-into-buildings/overview blam.lighthouseapp.com]
== Member List ==
*[mailto:blaw1@learn.senecac.on.ca,ajcondinho@learn.senecac.on.ca,yjeong@learn.senecac.on.ca,drperit@learn.senecac.on.ca?subject=gam666 Email All]
{| class="wikitable sortable" border="1" cellpadding="5"
! First Name !! Last Name !! Seneca Id !! wiki id !! IRC nick !! Blog URL !! MSN !! Phone
|-
|[[User:Yujin.jeong | YuJin]]||Jeong||[mailto:yjeong@learn.senecac.on.ca?sujbect=gam666 yjeong]||[[Special:Contributions/yujin.jeong | yujin.jeong]]||_YJ||[http://yujinjeong.wordpress.com Spirit & Soul] || be-warmhearted@hotmail.com || 647 - 832 - 6771
|-
 
|-
|[[User:dperit | David]]||Perit||[mailto:drperit@learn.senecac.on.ca?sujbect=gam666 drperit]||[[Special:Contributions/dperit| dperit]]||dperit|| || wowbagger5@hotmail.com || 647 - 520 - 3039
{| class="wikitable" border="1" width="300"
! Member !! Role
|- align="left"
| [[User:yujin.jeong | YuJin ]] || 1. Maze Generator <br/> 2. Book Meeting Room Every Week<br/> 3. Meeting Log
|- align="left"
| [[User:dperit | David ]] || Collision Detection
</pre>
The most likely endpoint here would be 3, with endpoints of 2 and 4 less likely, and 1 and 5 even less likely, although the chance of getting 2,4,1, or 5 would increase with the difficulty level. If it's not possible for the ship to move fast enough to navigate X squares over in a row, then we'll remove that as a possibility, so that the maximum difference between end points in adjacent rows would be x - 1
 
New maze generation code!
<pre>
char buildings[40][5];
//initialize that
Path ourPaths[3];
//initialize that
 
for (int curRow = 0; curRow < 40; curRow++)
{
foreach(Path curPath in ourPaths)
{
curPath.buildPath(buildings[curRow]);
}
}
 
 
Path
{
int startCol;
int endCol;
 
public:
void buildPath(char currentRow[5])
{
currentRow[endCol] = notabuilding;
startCol = endCol;
endCol = endCol + or - a random number, probably influenced by difficulty level;
//Fill in all columns between startCol and endCol with notabuildings
}
}
</pre>
 
We are going to have several objects:
A path object, which takes a row of buildings and generates a path in them.
[optional, can just be a list] A pathset object, which contains a set of paths
A building object, representing one building
A maze object, containing a two dimensional array of buildings
A ship object, representing the player's ship.
 
Our main method will flow as follows, at least in the text version:
The maze will use the set of path objects to generate a path through the maze
Then, loop until exit, doing the following:
Call the maze's draw function.
 
Call the maze's collision detection function, passing in our ship. (Maze's collision detection will check all of the buildings for collisions, using the ship's co-ordinates)(If a collision is detected, the Maze's collision detection will call the ship's collision function, which will move the ship back in such a way that it's no longer colliding (this could involve storing the previous move and undoing it, adding in any additional movement downwards because the screen has just scrolled down) and reduce your shields)
 
Call the ship's draw function
 
Wait for input from the player.
 
Give input to ship object, which will update position.
 
Call the maze's scroll function, which will scroll at the pre-set rate.
 
 
[http://zenit.senecac.on.ca/wiki/index.php/GAM666/DPS901_Project_requirements_20103#Phase_1 *How to write game proposal]
== To Do List ==
*Background City
*Ship Implementation
**Hook Ship Up To Arrow Keys
*<s>Camera Fix</s>
*Building Texture Fix
*Additional Maze Features
*Add test grid to bottom of maze
*Ambient Lighting
*Scrolling Implementation
*Ship Lights
*Building + Ship Models
*Full Screen Mode
*Opening Configuration Box
*HUD Implementation
*Clean Up Framework Artifacts
== Map of the World of the Game ==
== Useful Links ==
[http://theory.stanford.edu/~amitp/GameProgramming/ Pathfinding Guide]

Navigation menu