0% found this document useful (0 votes)
84 views21 pages

Mini Project Report

This document summarizes a mini project submitted for a Bachelor's degree in Computer Engineering. It describes a space platformer game created by four students and supervised by Dr. Seema Kolkur. The game aims to learn programming concepts like sprite animation using JavaScript and tools like Tiled and Photoshop. It allows the player to control a spaceman character across platforms collecting test tubes and passing through portals, with the objective of scoring maximum points. The report is organized into chapters covering introduction, literature survey of existing games, and description of the proposed system.

Uploaded by

Aniruddh Rathi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
84 views21 pages

Mini Project Report

This document summarizes a mini project submitted for a Bachelor's degree in Computer Engineering. It describes a space platformer game created by four students and supervised by Dr. Seema Kolkur. The game aims to learn programming concepts like sprite animation using JavaScript and tools like Tiled and Photoshop. It allows the player to control a spaceman character across platforms collecting test tubes and passing through portals, with the objective of scoring maximum points. The report is organized into chapters covering introduction, literature survey of existing games, and description of the proposed system.

Uploaded by

Aniruddh Rathi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

​ SPACE PLATFORMER

Submitted in partial fulfilment of the requirements of the


degree
BACHELOR OF ENGINEERING ​IN ​COMPUTER
ENGINEERING

By

Aniruddh Rathi 1902140


Sradhanjan Saha 1902147
Ishan Saksena 1902148
Kavish Shah 1902156

Supervisor
Dr Seema Kolkur

Computer Engineering Department


Thadomal Shahani Engineering
College

Bandra(w), Mumbai - 400 050

University of Mumbai
(AY 2020-21)
CERTIFICATE

This is to certify that the Mini Project entitled ​“Space platformer” ​is
a bonafide work of ​Aniruddh Rathi (1902140), Sradhanjan Saha
(1902147), Ishan Saksena (1902148), Kavish Shah (1902156)
submitted to the University of Mumbai in partial fulfilment of the
requirement for the award of the degree of ​“Bachelor of
Engineering” ​in ​“Computer Engineering”.

(Dr Seema Kolkur)


Supervisor

(​Dr Tanuja Sarode​) (Dr G. T. Thampi)


Head of Department Principal
Mini Project Approval

This Mini Project entitled “​Space platformer” ​by ​Aniruddh Rathi


(1902140), Sradhanjan Saha (1902147), Ishan Saksena (1902148),
Kavish Shah (1902156) ​is approved for the degree of ​Bachelor of
Engineering ​in ​Computer Engineering.

Examiners

1………………………………………
(Internal Examiner Name & Sign)

2…………………………………………
(External Examiner name & Sign)

Date:

Place:
Contents

Abstract ii

Acknowledgments iii

List of Figures iv

1 Introduction 1
1.1 Introduction
1.2 Motivation
1.3 Problem Statement & Objectives
1.4 Organization of the Report

2 Literature Survey 3

2.1 Survey of Existing System


2.2 Limitation Existing system or research gap
2.3 Mini Project ​Contribution

3 Proposed System 6

3.1 Introduction
3.2 Class diagram
3.3 Algorithm and Process Design
3.4 Details of Hardware & Software
3.5 Experiment and Results
3.6 Conclusion and Future Work.
4 ​References 14
Abstract
The platform game genre originated from the arcade scene in the early 1980s, ruling
the gaming empire with hits for two decades. This project starts with an introduction to
the genre and explains the motivation behind the making of this game. The Literature
Survey sheds light on the dominance the Platformer game genre had and takes us back
to the limitations the games had. The project works on fixing those limitations while
keeping the feel of the old games. The game uses sprite animation techniques written
in Javascript for smooth functioning. The gameplay is calm and simple, the player
controls a spaceman as he makes his way across a spaceship using Platforms,
collecting test tubes and going through portals. The objective of the game is to collect
as many test tubes as possible and make their way to the last portal. The project was
made using Visual Studio Code as a text editor, Adobe Photoshop for creating tile
maps and sprite sheets and Tiled Map Editor for designing game levels.
Acknowledgement

We would like to express our gratitude and thanks to ​Dr Seema Kolkur ​for her
valuable guidance and help. We are indebted for her guidance and constant
supervision as well as for providing necessary information regarding the project. We
would like to express our greatest appreciation to our principal ​Dr G.T. Thampi ​and
head of the department ​Dr Tanuja Sarode ​for their encouragement and tremendous
support. We take this opportunity to express our gratitude to the people who have
been instrumental in the successful completion of the project.

Aniruddh Rathi

Sradhanjan Saha

Ishan Saksena

Kavish Shah
List of figures

Fig. no. Fig. description Page no.

2.1 A still from Super Mario Brothers 3 10

2.2 A picture of Arcade Games 11

3.1 Class diagram 14

3.2 Screenshot of the start of the game 17

3.3 A model displaying the controls of the game to aid the player. 18

3.4 The Score of the player is displayed after the game ends. 18

3.5 The levels were designed with the help of the Tiled Map Editor. 19

3.6 The character was designed and drawn using Adobe Photoshop. 19
Chapter 1

Introduction

1.1 Introduction

Platformer is a video game genre and subgenre of action games. Platformers are
characterized by their heavy use of jumping and climbing to navigate the player's
environment and reach their goal. Levels and environments tend to feature uneven terrain
and suspended platforms of varying height that require the use of the player character's
abilities to traverse. These mechanics, even in the context of other genres, are commonly
called platforming.
This game uses jump and double-jump game mechanics to allow the player to move the
main character around the suspended platform filled map and collect the in-game
power-ups to achieve a high score and win the game.

1.2 Motivation

A lot of us grew up playing Platformer games like Mario and as kids, we dreamed
of making such a game ourselves. Game development was a challenging topic with a big
learning curve. It was a fun way to learn new concepts of Graphics, Animation and
Programming.

1.3 Problem Statement & Objectives

Problem statement: Create a single-player platformer game using game


development. Objectives: Space Platformer is a single-player game where the gamer
has to collect the maximum point possible to win the game.
● Learning and working with HTML, CSS, JavaScript
● Learning about Sprite Animation
● Working with new software like Tiled and Photoshop.
● Creating a fun game which can be played by anyone.
1.4 Organization of the Report

This report consists of three chapters. The first chapter deals with the introduction
of the topic, problem statement, the motivation behind the topic and objectives. The
second chapter is the Literature Survey. It includes all the research work done related to
this topic. All information related to the study of existing systems as well as learning of
new tools is mentioned in this chapter. The third chapter is about the proposed system
which is used in this project. The block diagram, techniques used, hardware and
software used screenshots of the project are presented in this chapter. All the documents
related to the development of this project are mentioned in references.
Chapter 2

Literature Survey
A platform game or platformer is a game where the gameplay revolves heavily
around moving and jumping between obstacles and objects called platforms. The genre
itself cannot fully be considered a standalone genre since It is often combined with other
game genres such as Shooters and Role-Playing Games.

2.1 Survey of Existing Systems


The platform game genre originated from the arcade scene in the early 1980’s
introducing games such as Space Panic and Donkey Kong.

Donkey Kong, an arcade game created by Nintendo and released in July 1981, was the
first game to allow players to jump over obstacles and across gaps, making it the first
true platformer. It introduced Mario, a modern icon of the genre, under the name
Jumpman.

During the following decade, the platform genre produces some of the most influential
games to date with titles such as Super Mario Brothers - which held the title of being the
all-time best selling game for three decades - Sonic the Hedgehog and Super Mario
Brothers 3 [1]. Fig 2.1 shows a still from Super Mario Brothers 3, released in 1993.

The most common movement options in the genre are walking, running, jumping,
attacking (in RPGs), and climbing. Jumping can be categorized as either "committed" or
"variable"; wherein the trajectory of a committed jump cannot be changed mid-air, that
of a variable jump can. Beyond these elements, the components of a platform game can
vary greatly, including various additional movement options, combat, or other features.

Fig 2.1: Super Mario Brothers 3


2.2 Limitation of existing systems

● Most Pure tile-based platformers like this project were arcade games with a
limitation of Portability. They were built on large machines and the old
hardware used was unreliable and used to crash often. Fig 2.2 shows an arcade
machine.

● The movement was slow and limited, with only one jump option.

Fig 2.2: Arcade Games


2.3 Mini Project Contribution

Space-Platformer is built using JavaScript and can run on any laptop/desktop with
keyboard controls. It has quick easy movement and an added feature of the double jump
to make the movement more engaging. The player must decide which kind of jump is
required to reach the platform and get to the door.

The in-game collectables are test tubes, following the theme of space and making you
feel like an astronaut in a spaceship. Instead of having any kind of violence and death,
the game is calm and peaceful. Collecting each test tube rewards the player with a
satisfying sound effect.

Since the game is built on modern technology, there is no scope of any bugs or crashing
encounters. The player can enjoy classic games from their childhood without having to
deal with rusty arcade controllers and bad machines.
Chapter 3

Proposed System
3.1 Introduction
The programming languages used are HTML, CSS and JavaScript.

Tools used:

● Tiled software to build the map of each level.


● Sprite animation software.
● IDE for writing the code.
3.2 Class diagram

​Fig 3.1: Class diagram


3.3 Algorithm and Process Design

Formulating the problem statement:


Making a platformer game for the web

Understanding the framework requirements:


The framework of the game will be of a player in a map who has to collect items
and pass through levels to win the game

Identifying the tools/technology to be used:


HTML, CSS, JavaScript, Tiled software, Photoshop

Finalizing the feature to be included:


The player is able to move left and right based on user input
The player is able to jump and double jump based on user input
The player can collide with platforms
The player can collect items in the level
The player is able to transition through levels

Development:
Making the sprite images for player and background and animation using
photoshop
Designing the levels using Tiled software
Writing HTML code for the canvas of the game
Writing CSS code for aesthetics
Writing JavaScript code for drawing the player and map to the canvas, collision
detection between player and level obstacles and collection of items by the player

Testing:
Testing can be done by playing the game on the web after hosting it locally to find
bugs and issues. The game mechanics are tweaked for best performance.

Evaluation
If the game passes all the tests, it can be hosted and played. The game was made
successfully.
3.4 Details of Hardware & Software

The game runs smoothly on Google Chrome. ​Google Chrome will run on
computers equipped with a Pentium 4 processor or higher, which encompasses most
machines manufactured since 2001. The computer must have approximately 100MB of
free hard drive space and 128MB of RAM. The oldest version of Windows supported
by Chrome is Windows XP with Service Pack 2 installed. Chrome will run only on
Intel-powered Macs, which date from 2006 onward. The browser requires 100MB of
hard disk space and 128MB of RAM, the same as for Windows systems. The Mac must
use OS X version 10.5.6 or later, which dates from early 2009.

Tiled Software was used in the making of this project. Tiled is a 2D level editor that
helps you develop the content of your game. Its primary feature is to edit tile maps of
various forms, but it also supports free image placement as well as powerful ways to
annotate your level with extra information used by the game. Tiled focuses on general
flexibility while trying to stay intuitive [2]. Figure 3.5 is a screenshot of Tiled being
used for level design.

Visual Studio Code was used as a text editor. ​Visual Studio Code is a lightweight but
powerful source code editor which runs on your desktop and is available for Windows,
macOS and Linux. It comes with built-in support for JavaScript, TypeScript and
Node.js and has a rich ecosystem of extensions for other languages (such as C++, C#,
Java, Python, PHP, Go) and runtimes (such as .NET and Unity) [3].

Photoshop was used for drawing and editing Characters and levels, as well as for
forming the game tilemap. Adobe Photoshop is the predominant photo editing and
manipulation software on the market. Its uses range from the full-featured editing of
large batches of photos to creating intricate digital paintings and drawings that mimic
those done by hand. It is a raster graphics editor developed and published by Adobe Inc.
for Windows and macOS. It was originally created in 1988 by Thomas and John Knoll.
Since then, the software has become the industry standard not only in raster graphics
editing but in digital art as a whole [4]. Figure 3.7 shows the Character Sprite sheet
which was designed in Adobe Photoshop.
3.5 Results

. Fig 3.2 Start of game

This is an in-game screenshot of the first level. The player controls the white
spaceman on the screen with the arrow keys. The goal is to collect the green test tubes
scattered around the map. Each test tube awards the player 10 points, which get added to
the Player’s score and are displayed on the top-left of the screen. The player must get to
the door of each level to advance to the next level. In this level, the door is shown on the
top-right corner. The player must jump and double jump at the right moment while using
his left and right arrow keys for horizontal movement to reach the door. Timing is key. A
slightly mistimed jump will cause the spaceman to fall down and cause the player a lot of
disappointment.
Fig 3.3: A model displays the controls of the game to aid the player.

Fig 3.4: The Score of the player is displayed after the game ends.
Fig 3.5: The levels were designed with the help of the Tiled Map Editor.

Fig 3.6:The character was designed and drawn using Adobe Photoshop.
3.6 Conclusion and Future Work

● The game was completed on time, fixing the limitations of existing systems by
using modern and innovative techniques. The sprite animations are smooth and
the game runs without any bugs. The gameplay is satisfying and rewarding.

● Future Work:

1. Introducing new in-game collectables changing the way the player moves.
For example, An in-game collectable that grants the player the ability to
float and defy gravity, an interesting concept in line with the game’s Space
theme.
2. Adding new obstacles to hinder movement and make the game more
challenging.
3. Improving graphics and changing the style of animation, making the
gameplay look a bit more realistic.
4. Working on integrating new technology in the game.
References

Material In-Text Reference List Entry


Type Citation

Article [1] "​ A Detailed Cross-Examination of Yesterday and


Today's Best-Selling Platform Games"​. ​Gamasutra​.
2006-08-04. ​Archived from the original on 2007-10-27.
Retrieved 2006-11-21.

Doc [2] https://doc.mapeditor.org/en/stable/manual/introduction/​.


Retrieved 2020-11-30

Doc [3] https://code.visualstudio.com/docs​ Retrieved 2020-11-30

Doc [4] https://helpx.adobe.com/in/photoshop/user-guide.html


Retrieved 2020-11-30

You might also like