Overview

The main idea of my game is based on Greek mythology; however, I have taken some artistic freedom in changing the original story-line. As the original story goes, King Odysseus of Ithaca was married to Penelope. At the end of the Trojan War, Odysseus started his journey back home but was believed by many to have died en route. Penelope, however, knew it in her heart that her husband was still alive. Tradition at the time had it that should a king die, his wife was to remarry. However, as Penelope did not believe her husband to be dead, she was holding off as long as possible. As the story goes, Odysseus took ten years to make it back home, as he had upset Poseidon, the god of the sea, by blinding his son. In my story, I replaced Odysseus the king of Ithaca, with the Spartan King and warrior, Leonidas. That is because Leonidas is a much more famous character, that has been popularized by Hollywood. The game has got many sounds which catch the player’s attention and enhance user experience.

Gameplay

The hero of my game is a Spartan warrior whose mission is to collect 11 black soups so that the gate to the basement opens. For each soup that he collects, we can hear him eating, but when collecting the last one, the ”This is Sparta” song will play. In trying to collect all the soups, the warrior will find three hazards on his way, and if he touches any of them, he will die with the game terminating. However, if he makes it to the basement, he will find a key on a barrel. If he collects the key, the ”key sound” effect will play, and the background music will change from Dragon Ball Z’s music to New Zealand’s Haka. By having the keys in his possession, he will be able to open the door and get into the ship to get on his way to the church (where Penelope is said to be marrying another)

Overview

My console Drone simulator has been extended to GUI using JavaFX library. Through the application, the user must be able to interact with it by adding various types of Drones, Obstacles, loading or saving an arena and be able to read the games’ information and exit the game

Gameplay

ThanosDrone is the strongest drone, HulkDrone is weaker and SuperDrone the weakest. In more details, the HulkDrone is the green one, ThanosDrone is the black and white one and the Super drone is the blue one. There are 2 types of obstacles, the normal obstacle, and the fire obstacle. The main difference between them is that the fire obstacle flies unlike the normal obstacle which never changes position and stays static. In addition, both obstacles can turn ThanosDrone into HulkDrone and destroy the SuperDrone. However, HulkDrone cannot be destroyed by normal obstacle but rather just bounces on it and can eliminate the fire obstacle

Overview

Simple Mail Transfer Protocol (SMTP) is an internet standard communication protocol for electronic mail transmission 1 . It is used to send and receive emails between two parties. To achieve this, Transmission Control Protocol (TCP) is used which allows user to establish a TCP connection on local port 25 between SMTP client and server. This would allow the client to send a series of commands, the server to reply with the corresponding responses and then, store the email’s data message in a txt file representing the recipient’s email

Overview

The main idea of my game is based on Greek mythology. The hero of my game is a Spartan warrior whose mission is to reach as many levels as his can. This can happen only by having in his possession a key which will be used to open the door for reaching the next level. However, the way to glory will not be that easy as hazards will appear through his way and if he touches any of them, he will firstly lose health and then dies with the game terminating. For each soup that he collects, we can hear him eating and the health increases. The game has got many sounds and background music which catch the player’s attention and enhance user experience

Gameplay

The game consists of four activities. The first one is the menu which has three options for the user that can choose from. If the user chooses “Start”, then the game will start playing. However, if he loses, then he will be asked to submit his credentials which will be stored in the firebase along with his score and finally, he will be sent back to the main Menu. The option “High score” of the Main menu only lets the user to see the high score and “Exit” option to leave the game

OOP design

The gameObjectMgr class is basically the manager that controls all the gameObjects in the game. The manager adds or removes gameObjects from the two pools and the json files’ load. Therefore, that is why a new instance of this class is created in TheGame class every time that the user is ready to go into the next level. Furthermore, the AbstractGameObject class is extended by the GameObject class which has one more property as it can be collectable or not so it can get dirty (modified). The Pawn class extends the GameObject class by having three more properties (health, speed, isPlayer, canMove)

Overview

The program code is based on two image compression algorithms, DCT and Huffman encoding using MATLAB programming langugage. This approach was decided after conducting a research on the benefits of these algorithms. The DCT algorithm is Fourier-Transform based and is the most widely used algorithm for lossy compression. Most importantly, it is one of the most efficient if not the most efficient compression method which is why it was implemented in the program. Although RLE seemed like a good choice over Huffman encoding, it is not as adaptable to multiple different types of input formats and as the initial goal was to provide the user with that flexibility, the focus was shifted to Huffman encoding and the research backed this claim. Last but not least, Huffman encoding provides a lossless type of data compression

File Structure

The program consists of three m-files which are the script files that contain all the commands which will be executed. The main m-file ,“Dashboard.m”, contains the code for the graphical user interface (GUI) and is accompanied by “Dashboard.fig” which is the file the GUI will be displayed on. In order to assist the readability of the program, individual files were created for compression, “comp.m”, and decompression, “decomp.m”. When “Save Image” is pressed, the program saves the image in PNG format

Exceptions

Ensuring that the users will have a good experience means that the program should be prevented from throwing any exceptions/errors. For that to be achieved, the buttons “Load Image”, “Compress Image”, “Decompress Image”, and “Save Image” were added where appropriate in the “Compression” and “Decompression” sections of the GUI. It is important to note that if for example the user does not first load an image and immediately attempts to compress/decompress/save, an appropriate warning message will pop up and help the user understand what should be done first. The exception of the “Cancel” button being pressed in the Window Prompt while trying to load an image is also handled in the program

Data Analysis

The first step to extracting data from Twitter is to apply for a developer account. Once the account is approved, we can generate the keys and tokens required to set up the connection. The connection to our Twitter App is set up using the OAuthHandler() class and its set_access_token() function. Then we call the Twitter API through the API() function. Also, the required libraries are imported, such as tweepy, which is an open source Python package that gives us a convenient way to access the Twitter API. Tweepy includes a set of classes and methods that represent Twitter's models and API endpoints

Accomplished Tasks

Data Gathering and Pre-processing:

Plotted a heatmap to show the frequency of missing and NaN values in our data frames, the amount of NaN or missing values that each column has in each of the 3 data frames, removed all the unnecessary data as well as re-ordered the columns of the data frames to be more readable and understandable

Exploratory Data Analysis (EDA):

What users/accounts are more mentioned, which are the favourite accounts among the influencers/accounts selected, which twits have been retweeted the most, which are the most used hashtags and which of the 3 selected users is the most successful considering number of followers, most liked tweets and most retweeted tweets using pie charts, bar charts and correlation plot

Network analysis:

Visualized a network for each user according to its following accounts and extracted some general information from each network such as the number of nodes and edges. Also, educing some properties such as degrees of each node, max and min degree of all nodes and the average of degrees as well as the shortest path, degree distribution, cluster coefficient, betweeness centrality and assortativity



Final Result

Each network shows the "friends" of the corresponding user. In other words, which accounts each user follows. By combining all the three networks together, it can be noticed that none of them has any friends in common

Elements

Text

This is bold and this is strong. This is italic and this is emphasized. This is superscript text and this is subscript text. This is underlined and this is code: for (;;) { ... }. Finally, this is a link.


Heading Level 2

Heading Level 3

Heading Level 4

Heading Level 5
Heading Level 6

Blockquote

Fringilla nisl. Donec accumsan interdum nisi, quis tincidunt felis sagittis eget tempus euismod. Vestibulum ante ipsum primis in faucibus vestibulum. Blandit adipiscing eu felis iaculis volutpat ac adipiscing accumsan faucibus. Vestibulum ante ipsum primis in faucibus lorem ipsum dolor sit amet nullam adipiscing eu felis.

Preformatted

i = 0;

while (!deck.isInOrder()) {
    print 'Iteration ' + i;
    deck.shuffle();
    i++;
}

print 'It took ' + i + ' iterations to sort the deck.';

Lists

Unordered

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Alternate

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Ordered

  1. Dolor pulvinar etiam.
  2. Etiam vel felis viverra.
  3. Felis enim feugiat.
  4. Dolor pulvinar etiam.
  5. Etiam vel felis lorem.
  6. Felis enim et feugiat.

Icons

Actions

Table

Default

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Alternate

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Buttons

  • Disabled
  • Disabled

Form