Multimedia and HCI Final Project, Battle Math

A Report on the Development of the Battle Math Game as a Final Project

Charottama Oshmar

25 November 2017

Introduction

The Multimedia and Human-Computer Interaction subject, taught in the third semester of the Bina Nusantara University’s Computer Science Program, discusses about how connections between users (humans) and technology (computers) are formed, which occurs when the user uses the technology. This relationship is determined by a number of aspects, one of which is the use of media within said technology. As a requirement to pass this subject, Binus’s students are expected to create a final project, made by teams of 2. The mark of the final project will constitute to 40% of the subject’s final score.

Development Process

Final Version of the Battle Math Main Menu

Battle Math is an educational game, intended to be used by 5-7 year olds. The idea behind a game that is educational for young children actually came from the recommendation of the subject’s lecturer, Mr. Raymond Bahana. We also took inspiration from a tower-defense game that both I and my partner, Adrian, like. My partner came up with an original idea for the game: a question appears in the middle of the screen, and numbers will fall down on the screen. It is then the user’s objective to catch the correct answer to the question, and thus this became the basic concept for our game.

The distribution of work became clear quite early during development. As Construct 2 cannot run on MacOS, Adrian became the one that had to put the pieces into one, coherent game. I, on the other hand, would supply the aforementioned pieces to Adrian. This includes the background, the sprites, and the numbers. I also made the “About Us” page and the “Guide” page.

The background images are taken from the Battle Cats game, developed by PONOS (all copyright belongs to PONOS). The sprites, however, are taken from the web. Some of them had to be edited using Adobe Photoshop to better accommodate our intentions for the game.

The cart above is one of the sprites that needed to be edited, because we wanted the cart to move left and right by using the arrow keys. There would be a problem, however, because the movement was illogical, as the wheels would remain static while the cart was in motion. By using Adobe Photoshop, we managed to edit the wheels such that while the cart is moving, every frame changes the direction of the rims so the wheels appear as if moving. Other sprites  include a cloud and the numbers that would fall from the clouds.

These numbers were created by filling the typeface with color, also done using Adobe Photoshop. Afterwards the picture was cropped to make single-digit numbers, or manually restitched to form two-digit numbers.

Clear, concise, and short instructions are very important to get the the entire message across. This is especially the case with young children. Although at first the texts were long and in small size, we eventually made it larger and shorter after a suggestion from Mr. Bahana. We also agreed to separate the instructions into two pages, to reduce the clutter. The picture below shows one of the two pages:

Finally, we dedicated a page for briefly telling our users who we are. This is how that page looks like:

Conclusion

In creating our final project, we were happy that what we made could be useful for other people. We hope that our small work inspires young coders out there to try from the smallest projects, like we did. Both of us learned lessons during this adventure. We know more about how to use Construct 2 and Adobe Photoshop, how to communicate efficiently, and to suit the customers’ needs.

Multimedia Final Project Proposal

A Proposal to Develop a Game for Children as a Final Project

Charottama Oshmar

24 November 2017

Introduction

In today’s era of technology, multimedia has become an inseparable element within a computer system. This is due to the rapidly-growing use of technology among people, from commoners to high enterprises and government agencies. Therefore, multimedia acts as the bridge between the power of technology and the people of all classes and backgrounds. Multimedia and the human-computer interaction are the basis of one of the subjects taught at Bina Nusantara Computer Science major, aimed for students in the third semester. This document proposes the creation of a game for children around the age of 5-7 years old. The proposed game, in addition to harnessing our skills in designing and developing a game, will also assist the children in basic mathematical skills. This proposal details our distribution of work and some important dates.

Objectives

With this document, we propose to develop a game aimed for children. In addition, we will also achieve the following goals:

  • Practice our skills in utilizing Construct 2 to create a software
  • Help youngsters learn basic addition and subtraction skills
  • Expressing and implementing our creativity into the game by going beyond what had been taught in class
  • Attain our final project mark, which contributes to 40% of the final mark of this particular subject

Plan of Action

The distribution of work between me and my partner, Adrian, in the simplest terms are as follows: I will provide approximately 80% of the entire pictures that are needed for the game and Adrian will work on the game on the Construct 2 software.

The reason behind this distribution is because I am using MacOS, which Construct 2 is incompatible with. Therefore, I will supply Adrian with most of the pictures he needs along the way.

Construct 2 itself is software to make many sorts of applications, not limited to just games. We will be using the 2.44 version, since the most recent version is still in beta. Our proposed math game will roughly look like the following: a random question will appear in the middle of the screen. Some numbers will then be spawned, and the user has to choose which number correctly corresponds to the question.

Dates to Remember

The final project, along with the report, is to be submitted on the 28th of November 2017, compressed to zip format and sent via email to Mr. Raymond Bahana, our lecturer for this subject. But before that, we are scheduled for an appointment with Mr. Bahana on 6th November 2017, to discuss the progress of game development up to that point.

Conclusion

Children of the generation Z will undeniably grow up alongside technology, whether their parents intended so or not. Therefore, educational technology has a lot of potential for the future, as today’s children are already drawn to technology, so it is for the best interest to use that potential in a positive way, which one of them is to teach math. This document proposes the development of such a game to achieve the following objectives: Practicing our Construct 2 skills, helping children learn math, implementing our creativity, and attain our final project mark. The game and the report will be ready by 28th November 2017.

The FastCabs Final Project

This was posted by CHAROTTAMA OSHMAR (2001585455),

with help from my teammates: Archel Taneka and Vincent Alexander

this post is about my final project, titled the FastCabs, a taxi company based in the UK. the project asks that I should create a working database system for the company. the company has been growing steadily, but now needs a more organized communication and information sharing due to its growth.

to do that, i formed a group of 3 that consists of the two names i mentioned above. at first we created an Entity Relationship diagram. an entity relationship diagram (ERD) shows the relationships of entity sets stored in a database. an entity in this context is a component of data. in other words, an ERD illustrates the logical structure of databases. at first glance an entity relationship diagram looks very much like a flowchart. It is the specialized symbols, and the meanings of those symbols, that make it unique. here is an example of an ERD.

Entity relationship diagram, taken from https://www.smartdraw.com/entity-relationship-diagram/img/erd.jpg?bn=1510011080

this is the part where i contribute mostly. after showing the rudimentary ERD design to our teacher, he suggested that we try to group a few of our tables into one, which after that connects to the other tables. and after working it out and with a few tweaks, voila! This is the end result, which we used for our database system for the FastCabs Company

Final ERD for the FastCabs Database Project

As stated in the requisites, an office branch is run by several staff, all of which have different jobs and responsibilities. So table office is connected to two other tables, namely the staff and car. Since staff can be a manager, taxi driver, taxi owner, or admins, the table staff bundles all the different types of staff into one. This is why staff is connected to tables manager, owner, and driver. The table owner is connected to car, since car belongs to owners.

A single job has many components: details of the trip, a car used for the trip, a driver driving the car, and the client itself which includes his/her details. This is why jobs is connected to three other tables, the driver, car, and clients.

By creating the database in such a way that is described in figure I.a, the database for the approach to tackle the question only has two large groups that connect all the other tables in the database, which are staff and jobs. This way, the database does not become complicated and bloated, ensuring efficiency.

apart from the ERD, I also helped in making the queries to access the database. this is needed because the question for our final project specifies some specific requests. some of the queries that I helped to fulfill those requests are listed below:

 

a. The names and phone numbers of the managers at each branch

SELECT name, phone FROM staff, manager, office WHERE staff.officeID = office.officeID AND staff.staffID = manager.staffID

b. The names of all female drivers based in Glasgow

SELECT DISTINCT driver.driverID, staff.name FROM staff, driver WHERE staff.gender = ‘Female’ AND staff.officeID = 300 AND driver.staffID = staff.staffID

c. The total number of staff at each branch

SELECT office.officeID, office.city, COUNT(staff.staffID) AS totalStaff FROM office, staff WHERE staff.officeID = office.officeID GROUP BY office.city

d. The number of driver allocated to each taxi

SELECT car.carID, car.licensePlate, COUNT(driver.carID) AS allocatedDriver FROM driver, car WHERE car.carID = driver.carID GROUP BY car.carID

e. The address of all business clients in Glasgow

SELECT address FROM clients WHERE city = ‘Glasgow’ AND type = ‘Business’

f. The names and phone numbers of private clients who hired a taxi in November 2016