Eyan Martucci

Game Programmer Portfolio

  • Home
  • Contact
<–Back

Phar-mini

Language: GDScript | Engine: Godot | Team Size: 10 | Duration: 1 year+ (ongoing from Oct 2025)

Play Phar-mini Here

Introduction

Phar-mini is an ongoing, multi-year industrial engineering simulation and research project at Arizona State University. Joining an active codebase that has seen over 20 contributors since 2024, my 5-programmer Capstone team was tasked with cross-platform optimization, feature expansion, and porting the existing desktop application into a production-ready mobile release for iOS and Android. The simulation teaches complex supply chain optimization by tasking players with constructing interconnected factories and laboratories to fulfill real-time logistics orders.


Contributions

Build Mode Re-Engineering & Optimization

Because the original build mode relied entirely on mouse-hover mechanics, which are unavailable on mobile platforms, I completely overhauled the build mode architecture while targeting severe performance bottlenecks.

  • Algorithmic Optimizations: Investigated and resolved critical runtime performance issues during asset placement. By refactoring how buildings were initialized, I successfully reduced building placement lag spikes by 33%, ensuring smooth frame rates during rapid construction phases.
  • State-Locked Construction Loops: Reworked the interaction flow from a hover-and-click method to a mobile-friendly click-and-hold confirmation loop. To optimize user focus, I programmed the camera controller to dynamically lock its movement/zoom during build state execution and implemented contextual UI error states, flashing boundary tiles red if the player couldn’t afford building costs, which were dynamically calculated based on nearby city levels.
Old Build Mode
New Build Mode

Question Card System and Dynamic Effects

I engineered a robust backend event system that parses player choices on randomized question cards and translates them into real-time, complex state mutations across the simulation.

  • Extensible Effect Parser: Developed a data-driven parser capable of executing over 20 distinct gameplay effects. The architecture dynamically can dynamically target individual buildings, all active buildings, or even linked buildings, such as modifying ROI for all labs connected to a specific factory.
  • Dynamic Simulation Manipulation: Programmed system-level actions to manipulate the game’s core mechanics. This includes structural upgrades (radius, production, research), temporal or permanent building shutdowns, conditional inventory purging with randomized RNG rolls, and a custom delay queue that schedules future event consequences over 50 rounds in advance.
  • Content Integration: Integrated a dataset of 40 distinct scenarios, directly mapping Google Sheets data from our designer to functional logic. Implemented question effects spanning all building statistics such as ROI, upgrades, durability, order production, work rate, shutdowns, and more.

Modular Save and Load System

I architected and implemented Phar-mini’s save/load system to serialize and reconstruct the state of a complex, interconnected simulation while keeping save data compact and maintainable.

  • Modular State Serialization: Designed a distributed save architecture where major gameplay systems serialize and restore their own state, including factories, laboratories, hospitals, world progression, player resources, active orders, upgrades, production values, and question-card effects. This kept the system extensible as new gameplay features continued to be added.
  • World Reconstruction: Rather than storing the entire procedurally generated world, I saved its generation seed alongside zone origin and size. During loading, the world and zone state are reconstructed first, followed by buildings and player state, before a signal triggers regeneration of dependent systems such as roads between buildings.
  • Compact Save Data: The completed system reconstructs the simulation from save files approximately 14 KB in size by storing only the essential state required to reproduce the player’s game rather than serializing entire scenes or runtime objects.

Building Durability and Pay Rate System

To make our game more realistic to an industrial engineering experience, I worked closely with our designer to implement a new building durability system

  • Building Durability: Programmed an automated durability lifecycle for all active labs and factories. Lower durability values actively calculated a rolling probability to trigger unexpected facility shutdowns, stopping localized medicine production and distribution pipelines.
  • Building Pay Rates: Implemented a three-tiered building payment rate structure (low, medium, high). This system allowed players to dynamically alter operational funding, where lower funding increased profit margins but caused building durability to decay.

What I Learned

Working on Phar-mini offered invaluable experience in legacy codebase inheritance and live-product maintenance within an Agile/Scrum ecosystem. Stepping into an ongoing project required me to rapidly reverse-engineer existing architectures, adapt to Godot and GDScript, and deploy new features without breaking existing dependencies. Identifying and reducing runtime lag spikes by 33% sharpened my profiling and optimization skills, demonstrating how clean systems engineering directly impacts the end-user experience.

Eyan Martucci

  • Home
  • Contact
Loading Comments...