Gravity is an X11 particle sandbox written in C for my final project in Fundamentals of Computing I. After compiling, execute the
Gravity binary and controls will be printed on the screen. Gravity uses the gfx libraries written by R. Bualuan with his permission, which are included in the src folder, along with the program code.
To compile, simply
make in the repository root directory.
- Left lick to reset
- Right click for a bigger reset
- Type s for a different dot syle
- Type r for a different color scheme
- Type a to increase acceleration
- Type z to decrease acceleration
- Type “.” to pause
- Type q to quit
Additionally, there are four different patterns that the program can simulate
- Type e for a flow pattern
- Type f for a fade pattern
- Type g for a gravity pattern
- Type p for a pulse pattern
Link to Github repository
By Benedict Becker & Thomas Franceschi
Networked tank game using the pygame and twisted python libraries.
To start a game, first make sure the
SERVER variable in
game/constants.py is set to the address of the computer the first player will be using. Whoever will be hosting the game then runs
python main_server.py and once the game window appears the other player can run
python main_client.py from their computer to begin the game. The server player controls the tank on the left side and the client player controls the tank on the right side. Each tank has a health bar that indicates their remaining health (out of 1000). To move, you press the
d buttons to move left and right respectively. To fire missile, you aim your mouse at the angle you wish to fire and left-click to fire. When missiles hit the opposing tank, they inflict 50 damage. When missiles hit the ground, they destroy a large chunk that is now traversable (Try digging a tunnel). Wind and gravity both affect the trajectory of the missiles and there is a wind indicator arrow in the upper right hand corner. When a player loses all of their health, the game will end and each player’s screen will display whether they won or lost, as well as a prompt to press
q to quit or
r to restart (only the server has the ability to start a new match).
A Note on Movement
As of right now, the tanks will always be able to move left or right. Even if there is a wall blocking its path, it will suddenly jump to the next highest ground. We left it this way because the highly interactive (destructive) environment would make for a lot of stuck tanks if we didn’t include this movement workaround.
A Note on Background
We also had created a shifting parallax background to this game, but unfortunately could not speed it up to the point of not slowing the rest of the game down. While not included in this version, the code can still be found in
- Fast online gameplay
- Cool tank and explosion graphics (from Google Images)
- Randomly generated map, new every time
- Random wind condition to change the gameplay
- Destructive map
- Realistic gravity for bullets
- Health bars
- 8bit music and violent (loud) sound effects
There are many constants that affect the networking and gameplay, and can be edited in the
Link to Github Repository
A Python-based web app designed to give portfolio managers up-to-the minute information about the news articles that affect their holdings. Uses IBM Watson to calculate the sentiment of articles and quickly and accurately displays the information to users using a simple color schema.
Created for the 2017 BlackRock Intern Hackathon
In a Mac or Linux environment, run
./app.py in the root directory. In Windows, run
path/to/python app.py in the root directory.
Note: You may have to use a separate Watson Bluemix account to use the Watson API. The app will function without one, since a sample database is included. However, you will not be able to load newer articles
Link to Github Repository