
A Small Ship Builder that focuses on creativity and Iteration to build bigger and better ships. Currently features a fully working ship editor, and the ability to fly your ship around and shoot down enemies, so far only an early build is available to the public, with more development possibly continuing in the future.

Project VisionStarForge Skirmish began as my college Capstone project, I set out to create a project that reflected the strongest skills that set me apart from my peers.the goal was to create a modular spaceship building system that encourages creativity, while also presenting a complex programming challenge to test my skills.For this project, I opted for pixel art, as well as incorporated hand-drawn normal maps to add dynamic lighting, creating a project to showcase both my Technical and Artistic Abilities.
Ship Builder EditorThe editor provides a grid based interface where players can build, and configure ship parts, using the available components.parts can be built on predefined connection points, preventing any invalid placements, while encouraging creative structures to best utilize different shapes.Once the ship is ready and configured, it only takes one button press to be able to control it and test it in combat, allowing for easy back and forth iterative building.
Modular Ship Systemsevery ship is assembled from individual parts, each part being it's own scene connected to each other through a Parent-Child hierarchy system, this is to allow certain ship parts to have individual movements or rotations that propagate down to all parts connected too it.a shared base script is shared between all ship parts to provide common functionality, while each ship part also gets a script unique to it, that can specialize in whatever purpose that module requires.some ship parts provide passive bonuses to the overall ship stats, such as battery regen, or movement speed. Other ship parts behave more independently, such as firing weapons, or applying rotation to connected parts, actions that are triggered via player input.
Enemy Designs and IterationsThe Enemy Development mostly consisted on exploring concepts and iterating designs, trying to experiment with silhouettes, movement styles, and introduce new mechanics that forced more creative ship building practices.as the project progressed, development priorities shifted towards completing the Module Ship-Building systems, leaving the project to now only having one prototype enemy implemented in-game at the time.Although the remaining enemy concepts could not appear in game, they present a clear visual direction on the original hopes for the project, and how a scalable enemy architecture could allow for more creative playstyles.
Dynamic Lighting and Normal Mapsin order to enhance the visual style for this project, I wanted to introduce dynamic lighting while keeping the pixel art aesthetic intact. in order to achieve this, I hand drew a normal map to go along with nearly every sprite, allowing the sprites and lighting to meld seamlessly together, exactly as I envisioned.using Godot's built in lighting system, the normal maps allow for real time highlights and visuals that respond to effects and environments within the scene. this is my way of showcasing both my Artistic and Technical skills, by combining traditional pixel art with normal map lighting techniques.
ReflectionStarForge Skimrish taught me the importance of developing scalable and modular systems during development. While early on in development, I was rapidly testing and prototyping some of the core systems to share my plans and ideas for the game, later on however as the project expanded, several ideas I wanted to introduce to the project just didn’t seem probable, and would require a reworking of the core systems in order to integrate without issue. Given the limited time constraint, many ideas have remained as just ideas.If I had the option to restart the project, I would absolutely spend more time defining the long term requirements for the core systems, and while the initial progress would be slower, more focus on foundational systems would allow for much easier integration for new mechanics, and content additions.Despite the difficulties, StarForge Skirmish has succeeded in the goals I set out for it, to make a functioning module ship builder, as well as to challenge myself on both the technical and visual side of game development. This project has given me new experiences, and better understanding in system architecture, project planning, and balancing programming with artistic development.




















