You are on page 1of 24

Evolution Of Life Game using Python

A PROJECT REPORT

Submitted by

NABEELAH ANJUM (113223032034)

In partial fulfilment for the award of the degree


Of

BACHELOR OF ENGINEERING
IN

COMPUTER SCIENCE AND ENGINEERING


( CYBER SECURITY)

VELAMMAL ENGINEERING COLLEGE , SURAPET

CHENNAI 600 066


MARCH 2024
BONAFIDE
CERTIFICATE

Certified that this project report “EVOLUTION OF LIFE ” is The


Bonafide work of “NABEELAH ANJUM. A (113223032034), who
carried out the project work under my supervision.

SIGNATURE SIGNATURE

Dr.P.VISU , M.E. PhD, Mr.K. SATHISH M.E,

ASSISTANT PROFESSOR ASSISTANT

HEAD OF THE PROFESSOR

DEPARTMENT SUPERVISOR

DEPARTMENT OF COMPUTER DEPARTMENT OF COMPUTER

SCIENCE AND ENGINEERING(CS) SCIENCE AND ENGINEERING(CS)

VELAMMAL ENGINEERING VELAMMAL ENGINEERING

COLLEGE, SURAPET COLLEGE, SURAPET

CHENNAI-600066 CHENNAI-600066
ABSTRACT
The "Evolution of Life on Earth" program is an
interactive educational game developed using
Python and Pygame library. The program aims
to provide users with an immersive experience
exploring the evolutionary journey of life on
Earth, from prokaryotic cells to Homo sapiens.
Through a visually engaging interface and
intuitive navigation, users can progress through
different evolutionary stages, learning about
each species and its significance in the
evolutionary process. The program's cyber blue
color palette and black background create an
aesthetically pleasing environment, enhancing
user engagement. With features such as
species images, capitalised species names, and
interactive buttons for navigation, the program
offers an informative and enjoyable learning
experience. Through this abstract, the key
features and objectives of the "Evolution of Life
on Earth" program are highlighted, underscoring
its potential as an educational tool for students
and enthusiasts interested in evolutionary
biology.
சுருக்கம்
எவல்யூஷன் ஆஃப் லைஃப் ஆன் எர்த்" திட்டம் என்பது
பைதான் மற்றும் பைகேம் நூலகத்தைப் பயன்படுத்தி
உருவாக்கப்பட்ட ஒரு ஊடாடும் கல்வி விளையாட்டு
ஆகும். புரோகாரியோடிக் செல்கள் முதல் ஹோமோ
சேபியன்ஸ் வரை பூமியில் உள்ள வாழ்க்கையின்
பரிணாமப் பயணத்தை ஆராய்வதில் பயனர்களுக்கு
அதிவேக அனுபவத்தை வழங்குவதை இந்த திட்டம்
நோக்கமாகக் கொண்டுள்ளது. பார்வைக்கு ஈர்க்கும்
இடைமுகம் மற்றும் உள்ளுணர்வு வழிசெலுத்தல்
மூலம், பயனர்கள் வெவ்வேறு பரிணாம நிலைகளில்
முன்னேறலாம், ஒவ்வொரு இனத்தைப் பற்றியும்
பரிணாமச் செயல்பாட்டில் அதன் முக்கியத்துவத்தைப்
பற்றியும் அறிந்து கொள்ளலாம். நிரலின் சைபர் ப்ளூ
வண்ணத் தட்டு மற்றும் கருப்பு பின்னணி ஆகியவை
அழகியல் ரீதியாக மகிழ்ச்சிகரமான சூழலை
உருவாக்கி, பயனர் ஈடுபாட்டை மேம்படுத்துகிறது.
இனங்கள் படங்கள், மூலதனப்படுத்தப்பட்ட இனங்கள்
பெயர்கள் மற்றும் வழிசெலுத்தலுக்கான ஊடாடும்
பொத்தான்கள் போன்ற அம்சங்களுடன், நிரல் ஒரு
தகவல் மற்றும் மகிழ்ச்சியான கற்றல் அனுபவத்தை
வழங்குகிறது. இந்த சுருக்கத்தின் மூலம், "பூமியில்
வாழ்க்கையின் பரிணாமம்" திட்டத்தின் முக்கிய
அம்சங்கள் மற்றும் நோக்கங்கள்
சிறப்பிக்கப்படுகின்றன, இது மாணவர்களுக்கும்
பரிணாம உயிரியலில் ஆர்வமுள்ளவர்களுக்கும் ஒரு
கல்விக் கருவியாக அதன் திறனை அடிக்கோடிட்டுக்
.காட்டுகிறது
ACKNOWLEDGEMENT
Behind every achievement lies an unfathomable sea of
gratitude to those who achieved it, without whom it would ever
have come into existence. To them we express our words of
gratitude.
We give all the glory and thanks to our almighty GOD for
showering upon, the necessary
wisdom and grace for accomplishing this project. We
express our gratitude and thanks ot Our Parents first for
giving health and sound mind for completing this project.
First of all, we would like to express our deep gratitude to our
beloved and respectable Chairman Thiru M.V.
Muthuramalingam and our Chief Executive Officer Thiru
M.V.M. Velmurugan for their kind encouragement.
We express our deep gratitude to Dr. S. Satish Kumar,
Principal, Velammal Engineering
College for his helpful attitude towards this project. We wish to
express our sincere thanks and
gratitude to Dr.P.Visu, Professor and Head of the
Department, Department of Artificial Intelligence and Data
Science for motivating and encouraging in every part of our
project.
We express our sincere gratitude to the Project
Coordinator and Project Guide
Mr. K.Sathish, Assistant Professor, Department of
cybersecurity for their invaluable guidance in shaping of this
project without them this project would not have been possible.
Our thanks to all other Faculty and Non-Teaching staff
members of our department for their support and peers for
having stood by me and helped me to complete this project.
TABLE OF CONTENTS

CHAPTER NO. TITLE PAGE NO.


0
ABSTRACT 3,4

0 ACKNOWLEDGEMENT 5

1 INTRODUCTION 7

DEVELOPMENT 8
2 PROCESS

9
3 PROGRAM

PROGRAM 15
4
EXPLANATION

OUTPUT 21
5

6 CONCLUSION 24
CHAPTER 1
INTRODUCTION

Project outline

Title of the project:


EVOLUTION OF LIFE

tools and platform:


1.Operating system: Window 10
2. Language: Python
3.Tools Used: Visual Studio Code

Introduction:
The "Evolution of Life on Earth" program represents
an innovative approach to education and
entertainment by blending scientific knowledge with
interactive gaming elements. Developed using Python
and the Pygame library, this program aims to take
users on an engaging journey through the complex
and fascinating process of evolution. Evolutionary
biology is a foundational discipline in understanding
the history of life on our planet, and this program
seeks to make this intricate subject accessible and
enjoyable for users of all ages
CHAPTER 2
DEVELOPMENT
PROCESS

Development Process:
Choosing Technologies
The development team opted for Python due to its
versatility and ease of use, making it suitable for both
backend logic and game mechanics. Pygame, a library for
creating games in Python, provided essential functionalities
for graphics rendering, user input handling, and game loop
management. Additionally, HTML was used for creating the
game's interface and displaying information.
Designing Game Mechanics:
The game mechanics were designed to simulate the
evolutionary journey of humans in an engaging and
educational manner. Players navigate through different
epochs, facing challenges and making decisions that
influence their species' survival and advancement.
Implementing Graphics and User Interface:
Pygame facilitated the creation of visually appealing
graphics, including landscapes, characters, and
evolutionary transitions. HTML was utilized for designing
the user interface, such as menus, buttons, and
informational displays, ensuring a seamless gaming
experience.
CHAPTER 3
PROGRAM
CHAPTER 4
PROGRAM EXPLANATION

Introduction:
The provided code forms the backbone of the
"Evolution of Life on Earth" game, a captivating
simulation designed to educate players about the
evolutionary journey of life on our planet. This
comprehensive report will delve deeper into each
aspect of the codebase, offering detailed insights into
its structure, functionality, and potential areas for
enhancement.
Code Structure:
The code is meticulously organized into several distinct
sections, each serving a specific purpose within the
game's architecture. These sections, including
initialization, event handling, rendering, and the main
game loop, contribute to the code's clarity, modularity,
and maintainability. The structured approach to code
organization facilitates easier navigation,
comprehension, and extension of the codebase by
developers.
Initialization:
The initialization section lays the foundation for the
game's execution by performing essential setup tasks.
Pygame framework initialization is crucial, enabling
access to a wide range of functionalities for graphics
rendering, input handling, and game logic
implementation. Screen dimensions are defined to ensure
consistent display across various devices and resolutions,
enhancing the player experience. Furthermore, species
images are loaded and resized, while species names are
defined to provide informative labels for each evolutionary
stage, enriching the educational aspect of the game.
Event Handling:
The event handling section meticulously processes user
input events to drive interactions within the game
environment. Key presses and mouse clicks are
monitored and interpreted to enable players to navigate
through the game and interact with its elements
seamlessly. Key presses trigger specific actions, such as
evolving species or restarting the game, while mouse
click events facilitate intuitive gameplay interactions with
on-screen buttons. This meticulous event handling
enhances player engagement and immersion in the
gaming experience.
Event Handling:
The event handling section meticulously processes user
input events to drive interactions within the game
environment. Key presses and mouse clicks are
monitored and interpreted to enable players to navigate
through the game and interact with its elements
seamlessly. Key presses trigger specific actions, such
as evolving species or restarting the game, while mouse
click events facilitate intuitive gameplay interactions with
on-screen buttons. This meticulous event handling
enhances player engagement and immersion in the
gaming experience.
Rendering:
Rendering is responsible for the visual presentation of
the game's elements, contributing significantly to its
overall aesthetic appeal and immersive quality. Within
this section, functions for drawing text, displaying
species images, and rendering buttons on the screen
are meticulously implemented. Pygame's robust drawing
capabilities are leveraged to create visually stunning
graphics, while image manipulation functions ensure the
accurate representation of species images. The
encapsulation of rendering functionalities within this
section promotes a separation of concerns, improving
code readability and facilitating future enhancements to
the visual aspects of the game.
Functionality Analysis:
The code demonstrates a mastery of fundamental game
functionalities, enabling players to immerse themselves
in the evolutionary journey of life on Earth. Key features
such as species evolution and game restart are
seamlessly integrated, enhancing the overall player
experience and fostering a deeper understanding of
evolutionary concepts. By encapsulating these
functionalities within well-defined sections, the code
promotes modularity, extensibility, and maintainability,
paving the way for future enhancements and additions.
Main Game Loop:
The main game loop serves as the heartbeat of the
game, orchestrating its progression and responsiveness
to player input. This crucial section continuously
updates and renders game elements while monitoring
user interactions, ensuring a seamless and fluid gaming
experience. By iterating through the loop until the game
is exited, the code maintains an immersive and
engaging gameplay flow. The loop structure provides a
robust framework for controlling game logic, enabling
the execution of core gameplay mechanics with
precision and efficiency.
:
Notable Aspect:
One notable aspect of the code is its meticulous attention
to detail and readability. Each section is well-structured
and clearly delineated, making it easy for developers to
understand and modify the code as needed. Additionally,
the thoughtful implementation of event handling and
rendering functionalities enhances the overall player
experience, creating an immersive and visually appealing
gameplay environment. Overall, the code reflects a high
level of craftsmanship and dedication to quality game
development.
Output:
The output of the code is a captivating and educational
gaming experience that engages players in the
evolutionary journey of life on Earth. Through intuitive
gameplay mechanics, visually stunning graphics, and
informative species descriptions, players gain a deeper
understanding of evolutionary concepts while enjoying an
immersive gaming experience. It consists of the ENTER,
EVOLVE, AGAIN and EXIT button. Each button serves a
distinct function in guiding players through the
evolutionary journey depicted in the game
1. ENTER Button: This button initiates the game and
allows players to start exploring the evolutionary
stages of life on Earth. By clicking the ENTER button,
players dive into the immersive experience of
witnessing the progression of species over time.
2. EVOLVE Button: The EVOLVE button enables
players to advance to the next evolutionary stage
within the game. As players observe and learn about
each species, they can choose to evolve to the next
stage by clicking this button, progressing through the
timeline of life's development.
3. AGAIN Button: The AGAIN button provides players
with the option to restart the game from the
beginning. If players wish to revisit previous
evolutionary stages or explore different paths, they
can click the AGAIN button to reset the game and
start anew.
4. EXIT Button: Clicking the EXIT button allows players
to gracefully exit the game and return to their desktop
or other activities. This button provides a convenient
way for players to conclude their gaming session or
switch to other tasks without disrupting their
gameplay experience.
CHAPTER 5
OUTPUT
CHAPTER 6
CONCLUSION

Conclusion:
In conclusion, the provided code forms a solid
foundation for the "Evolution of Life on Earth" game,
effectively implementing core functionalities while
maintaining a structured and organized codebase.
With its meticulous attention to detail and emphasis
on readability, the code exemplifies best practices in
game development. By providing an engaging and
educational gaming experience, the code has the
potential to inspire curiosity and foster a deeper
appreciation for the wonders of evolutionary biology.

You might also like