Redwan's Work |
Show project notes
Long Drive is a single player car driving game. It was a recreational project self-chosen by the developers. It has been developed by Shahzada M. Redwan, Zeenat Farzana, and Taibur Rahman, students of Computer Science and Engineering (CSE) at Stamford University, Bangladesh.
The difficulty of the game is set to High by default to make it more competitive and interesting. But it can be reset to Easy inside the Help Menu. There are also important tips on how to play the game inside the Help Menu.
It has a database which can store top 20 high scores achieved by different players along with their names, laptimes, and date respectively. The game engine is keyboard based but mouse has been extensively used for selecting the menu and message boxes buttons. PC speaker has been used to create different sounds during the game.
It has been developed under Borland Turbo C/C++ 3.0 Compiler using C language with the help of Borland Graphics Interface (BGI) libraries. There are 3691 lines of code including more than 100 functions for different parts of the game. There are around 30 global variables used. Among them there are 8 graphical buffers which were declared as character type. A VGA memory of about 36KB was used (default is 4KB in Turbo C/C++ 3.0). The standard library functions used are: stdio.h, dos.h, conio.h, graphics.h, stdlib.h, alloc.h, time.h, string.h, and ctype.h.
The objective of the game is to drive a formula one (F1) racecar through a straight road to reach the finishing point at 22 miles by 2 minutes 8 seconds to complete the game (difficulty Hard). The given fuel will be emptied out during the game, so there will be three opportunities to refill the fuel from passing-by Fuel Tanks at 3, 8, and 17 miles respectively. To take fuel, the car must be completely stopped at a roadside exactly beside the fuel tanks, otherwise fuel will not be refilled. There is also a damage bar which counts damages done to the car by crashing the car into the sides of the road. If damage is 100%, then the game will be over. If a player can beat the lowest high score in the list of top high scores, then he/she may enter name and be enlisted in the database as one of the top high scorers.
Inside the game graphical buffers were used to make the animations run faster instead of drawing the objects. Among the objects two types of trees, fuel tanks, three images of the car, finishing line, and the finishing text were all drawn once and saved in different buffers and were loaded and moved accordingly as needed. The road had no movement, it was drawn once but the two pavements beside the road were redrawn every second to animate the road.
As a Game-developing project, a car related game may be the most difficult to create because it needs lot of attention, time, and brainstorming. That’s why it needs several groups of people to work on different sections and aspects of the game. It deals with huge complexities of animation, graphics, and programming (of course). This project was also considered a learning adventure for the developers. The developers came under many obstacles, many of which were solved using many new functions and unconventional but tricky methods of coding. The developers are not considerably satisfied because the project was not fully completed although it might have reached a nice finishing stage. There are no further plans to upgrade or modify the project any time soon.
As mentioned, this project was self-chosen by the developers. It was a group effort. Each of the developers, worked extremely hard on different sections to complete the project. Particularly special credits goes to Zeenat Farzana for her contributions to build the database, environment graphics including the trees and the fuel tanks, next credits go to Taibur Rahman who worked on the Road, Pavement, and the Car Menu, and finally most of the credits go to Shahzada M. Redwan who worked on the Car and most importantly the game engine. He was also responsible for merging the different modules developed by others into one project.
At last, the developers wish to extend their gratitude towards the people who constantly showed their support by helping us test-run our project and giving us important feedback.
For more information, feedback or comments, please contact at s.redwan@gmail.com
Thank you!
Category: c, BGI Libraries, Car game, Turbo C/C++