Inspiration
The inspiration for this game was combining our interests for both physics and computer science
What it does
What this game basically does is simulate the experience of controlling a satellite currently orbiting Mars (or any other planet if you wish). The first objective of the game is to convert your orbit around mars from an elliptical shape to as circular as possible and the second objective is to reduce the altitude of your orbit to a lower value but not too low otherwise the satellite will burn and crash in the atmosphere of Mars. The physics behind this game is pretty airtight and you can even ask for help by pressing 'H' on the start screen if you would like to become a tiny bit smarter in the field of orbital mechanics in just a minute of sweet and sumptuous physics.
How we built it
The game was built completely with python using the pygame module. The main law running the game is the law of gravitation with the help of which the supposed acceleration of the satellite due to attraction by Mars is calculated and appropriately the position of the satellite is changed (along with changing its linear velocity and angular velocity).
Challenges we ran into
One of the biggest difficulties we faced was to incorporate the gravitational force in such a way that it does not attract the satellite too much that it crashes into mars immediately, or too less that the satellite achieves escape velocity as soon as the game starts. So after a few hours of trying and trying with random values, we narrowed the range down to the sweet spot and also figured that things would become much easier by assuming the mass of satellite to be 1.
What we learned
A new thing we learnt (and now will definitely never forget) is how to read and write to files using python. We had learnt this to simplify our life and store data such as image names and image positions/size so that the code doesn't become too long. While writing the code we also used this knowledge to maintain a recentscores.txt file that stores all the scores and is then used to display the last 10 scores in a window at the end of each game.
What's next for Aerosynchronous Orbit Simulator
The nest step for this game is to change the orbit of the satellite from equatorial to polar and hide the satellite when it goes behind Mars as well as locking the controls for the satellite in this shadow region, thus increasing the difficulty a notch. Another thing we wanted to implement but did not have time enough to do is to modify the code so that at random time intervals (but not too frequently) an asteroid/meteor passes by and thus affects the satellite so that its orbit gets messed up.


Log in or sign up for Devpost to join the conversation.