Computer Science Canada

[FP] Arcade Racer

Author:  Bored [ Fri Jun 30, 2006 2:32 pm ]
Post subject:  [FP] Arcade Racer

Well this is something I did for my final project in computer sciences this year. It's a two person racer on an oval track. The winner is the first to complete five laps of the track. This though not fully complete is probably the best complete project I've made recently. Though in the credits it say that there where two programmer, well I redid most of my partners code and the entire actual game was my programming, other then a few tidbits here and there. Well i'm a grade 11 student and I've been programming on and off for just under 2 years now. I've had two computer science courses, and two computer engineering courses, though the first Comp Eng course only did one unit on the very basics of turing, and the second didn't even do turing.

Features
  • Car Selection
  • Collision Detection
  • Four Vehciles
  • A Car Editor/Creator
  • Custom Vehicle Support
  • Some Driving Physics
Bugs
  • you can cross finish line in any direction
  • odd cases of collision malfunctions
  • You can accelrate faster moving downwards
  • you bounce off of unmoving vehicles
    *note: the last bug is not so much a glitch but an incomplete part of the collision
You start the program by opening Arcade Racer.exe, once opened you can select first and second players cars using by choosing options from the menu. Once done choose start to run the game.

Controls:

Player 1:
  • Accelerate: 'w'
  • Deccelerate/Reverse: 's'
  • Turn Left: 'a'
  • Turn Right: 'd'
  • Brake: TAB
Player 2:
  • Accelerate: Up Arrow
  • Deccelerate/Reverse: Down Arrow
  • Turn Left: Left Arrow
  • Turn Right: Right Arrow
  • Brake: CTRL


To exit the game simply press ESC at any time. This will end the game on the spot. To quit the game press ESC at the main menu. When playing the game the left screen is player 1's screen and the right screen is player 2's. In the bottom right hand corner of each screen is the players speed and in the bottom left is the lap they are currently completing.

To use the car editor simply open up Car Editor.exe, once in it will ask you for the file name of the car. To create a new one enther in a file name (ex. Cars/69FordMustang.cr). It must be of the file type .cr and must be in the folder cars for the game to register it. If the car exists it will open it up, otherwise you have the option to create a new vehicle (make sure you already have the picture in the currect directorys i.e. Cars/Images and include the Cars/Images part in the filename). the rest is pretty self explanitory except the chasis part. The chasic is the outside of the vehilce and has four sides. You only need to give it one, one side of the car. This means that you need to click once at the start of the side and once at the end.

well I hope you enjoy it and just as a warning the game might run slow on some computers, sometimes randomly even on good computers. Though just as a note, I made it on my school computer which it seems to run fine on.

Author:  zylum [ Fri Jun 30, 2006 3:08 pm ]
Post subject: 

not bad at all. maybe you can add a start/finish line just so the players know where it is.. also, you go just as fast on the grass as you do on the road, maybe you can do something about that to make it more realistic. Finally, you should make a better finishing screen for when a player wins instead of the text that i barely noticed.

oh and is it just me or does the window not let me close it?

Author:  Bored [ Sat Jul 01, 2006 11:07 am ]
Post subject: 

Well the window dosen't close cus for some reason I clicked don't let the user close the window when I compiled it. Just press ESC to quit the race, then ESC to quit the game. As for the finishe line, well I did that last minute last semester so I never drew it. Basically I did a lot of last minute stuff as i spent a week trying to fix an error thet turned out just to be a typo. I have it so that when it collides it moves back to it's origional spot before it did, thus no longer touching anything. The problem was I had
code:
yVelocity *= -1
yVelocity *= -1
turnVelocity *= -1
move

instead of
code:
xVelocity *= -1
yVelocity *= -1
turnVelocity *= -1
move

But anyways enough of my blatering, I origionally had it so that you could not leave the track and so I didn't need to detect the grass, but I changed it for efficiency as there were to many calculations the origional way.[/code]


: