For my computer science A level NEA, I created a chess game that included:
• Multiplayer over a network with a client-server structure
• Scaling bot difficulties using Minimax with branch pruning
• Puzzles to challenge the user to find the best move
This project was challenging to make as I had to learn about many new concepts all at once such as port forwarding and complex recursive algorithms; This project was also my first using OOP, meaning I was using a structure that was entirely new to me.
Software used: Python, Visual studio / Visual studio code, Replit
Skills needed: Software networking, Software analysis, Software optimisation, Software evaluation, Object oriented programming, Project management, Time management
Mid-project code explanation videoFor my games development unit in my BTEC level 3 IT course, I developed a simple educational game where the player plays as a white blood cell fighting off bacteria in the body.
The goal of the game is to kill larger and stronger purple bacteria to collect platelets, which can be used to seal up cuts (the spawn points of bacteria) around the map whilst killing the smaller green bacteria to collect "bacteria souls" and upgrade your weapon.
The game ends when every cut has been sealed up and there are no bacteria left on the map!
Software used: Gamemaker studio 2 (Using GML), Piskel
Skills needed: Rapid adaptation to a new programming language, Game development, Pixel art creation, Software analysis, Software optimisation, Software evaluation, Project management, Time management
Play bacteria beatdownFor the programming unit in my BTEC level 3 IT course, I created a piece of tournament software in python to manage sports teams and individuals across multiple different types of event.
The program uses a simple command line interface with a menu system allowing the user to run the functions in whichever order they choose. Users are only allowed to view the data, unless they input the admin password after which they can make changes.
The user can input each individual, team and event, which the program stores as a file. The names of these files are user defined and the software uses a directory system to procedurally load each one upon startup, converting it from a string into an OOP object, utilising a hashtag as a marker for the separation of variables.
Software used: Python, Visual studio / Visual studio code
Skills needed: Creating and manipulating file systems, Software analysis, Software optimisation, Software evaluation, Object oriented programming, Project management, Time management
Tournament software on Github