Projects

Visual Novel Game

Present - 'And, Another Day Passed By'

I am currently co-developing a cartoon-styled visual-novel game which combines an interactive story with rich visuals. The player follows the character through a series of levels, with each choice weighing heavily upon the outcome of the game.

To build this game, I am using a visual novel engine named Godot which allows me to create a game with a branching narrative. This engine is great for creating a story-driven game, and it has allowed me to grasp the basics of game development.

This project so far has allowed me to delve into both character and narrative design while also learning what is needed to build an immersive and enjoyable player experience. It has offered me the oppurtunity to enhance my development skills, and by collaborating with a teammate I have been able to further develop my teamwork and communication abilities.

Project Image
Project Image
Project Image

Game Concept Art

[ Illustrations by @tiepihuman ]

Arcade-Styled Game

2025 - 'Pong'

This is a simple web-based version of the classic game Pong, created using HTML5 Canvas, CSS, and Javascript. The single-player game features a paddle controlled by the player, and a bouncing ball. The player must use the paddle to to ensure the ball doesn't pass them, which would result in a 'Game Over'.

The game features score tracking system that displays the user's score throughout the game, and again within the 'Game Over' screen. It tracks the user's final scores, displaying the highest score achieved on the home page. The difficulty of the game increases over time as the ball increases in speed, making it more challenging for the player to keep up. There is also collision detection in place to ensure the ball bounces off the paddle and walls correctly. To make the game more engaging, there are sound effects for button clicks, ball collision, alongside background music that plays throughout the game. The game also features a simple, retro-style design which is reminiscent of the original Pong game.

This project was a great way to practice my skills in web development, particularly in using HTML5 Canvas for game development. I was able to learn how to create a simple game with interactive elements, and how to use Javascript to control the game mechanics. It also allowed me to explore the implementation of sound effects and music in a web-based progeam to enhance the user experience.

Project Image
Project Image
Project Image
Game Snippets

Simulator Game

2025 - 'Eccentric Equestrian 2D'

This project is a horse racing simulator created using Java, with the Java Swing library and the Java Graphics class. The game allows the player to customise a number of horses for the race, with options for names, breeds, saddles, horseshoes, powerups, and confidence levels. The confidence level of the horse is value between 0 and 1, with 0 being the least confident and 1 being the most confident. The higher the confidence level, the faster it will run, but it will also be more susceptible to falling and losing. The opposite is true for the lower confidence levels, where the horse will run slower but be more stable. The selection of horse accessories has a visual displayed on the window (as shown below) and affects the icon which is used to represent the horse on the track. The player can also choose the weather conditions for the horses to be racing under, alongside the number of lanes on the track. Such options affect the performance of the horses, either positively or negatively. The horses may be slowed down or sped up, or even more susceptible to falling and losing the race. The running of the race is then simulated and animated with the Java Graphics class.

Creating this simulator game was a great way to delve into GUI creation in Java, having only previously worked with text-based programs. I was able to learn how to use the Java Swing library to create a user-friendly interface, and how to structure a game with several windows, classes, and methods. I was also introduced to the Graphics class, which was a key tool in the project to ensure the game was animated and engaging. This project has given me greater confidence in my Java skills, and has allowed me to explore the world of game development.

Project Image
Project Image
Project Image
Program GUI

Website

2025 - 'Portfolio'

This portfolio website is a project I have been working on to showcase my skills and experience. It has served as a great introduction to the world of web development, allowing me to apply my newly aquired knowledge of HTML and CSS to produce a visually appealing and functional website.

I have been able to experiment with different design elements, such as colour schemes, fonts, page formats, and hover effects, while also gaining familiarity to the language as a whole. Doing so has lead me to understand what is needed in order to create an appealing user experience that is also in consideration of accessibility. As my knowledge has grown, I have been repeatedly updating the site to improve its appearance and functionality.

Project Image
Project Image
Project Image
Design Iterations

Text-Based Game

2024 - 'Mythical Creature Care'

This text-based game allows for the player to take care of several mythical creatures of their choice. Each creature has its own stats, such as hunger, boredom, and health. The player must maintain these stats by choosing to feed the creature, play with it, or give it medicine. Taking a round-based approach, the game runs for a number of rounds specified by the plater. The game then ends either when the player successfully takes care of the creatures for every rounds, or when a creature reaches a 'killer' state due to not being taken care of properly.

Building this game was a great introduction to the language of Java, alongside procedural programming in general. I've gained an understanding of the essential features of procedural programming such as the format of a program, the use of variables and methods, and the workings of structures like loops and conditionals. This project also helped refine my programming etiquette, as I have learnt how to write code that is efficient and upholds maintainability and readability.

I built this game using the Jupyter IDE, which was another new tool to learn. Using this IDE ensured I was able to keep clear documentation of the iterative development of the game, allowing me to track my progress. Overall, this project has helped me to build a foundation in Java and furthered my general programming skills and understanding.

Project Image
Project Image
Project Image
In-Game Snippets

Quiz Program

2024 - 'Business Studies Revision Quiz'

I created this Business Studies revision tool for my final project in my A-levels. The program features 2 revision modes, multiple choice quiz and flashcards. The multiple choice quiz mode allows the user to answer a series of questions, with the program providing feedback on the correctness of their responses. The flashcards mode allows the user to review a set of questions by topic at random.

The program was built using Python and the Tkinter library, which allowed me to create an effective appealing GUI. I also delved into the use of the Pandas library to store and retrieve the quiz data and the login data. Each quiz attempt is stored in a CSV file, alongside the user's id associated with the attempt.

This project helped me further reinforce my Python and Tkinter skills, and also further exposed me to database handling. I was able to learn how to structure a large program with several classes and methods, and how to create a user-friendly interface with a program that solved a real-world problem.

Project Image
Project Image
Project Image
Program GUI