Description
Description
The tool automates the process of pulling latest changes from the Perforce Server, detecting changes on selected files (.cpp, .h, .cs, etc) then uses Visual Studio to compile only modules that were changed. Once the project is compiled it opens up the Unreal Editor. The tool has a logging and a config system integrated for customization and failure detection.
The tool shortens three steps into one making it simple for non-programmers to update and open the project.
Analyzed bottlenecks for development and engineered a tool to speed up project synchronization by 80%.
Reduced the tool’s game compilation time by 50% using developers feedback for iteration.
Ensured tool’s reliability by designing and implementing 200+ tests reaching 97.3% code coverage.
Improved usability for users by redirecting compilation output into a window providing feedback to the user.
Authored the configuration and save systems to improve re-usability.
Wrote and maintained documentation on set-up and utilization.
After multiple iterations based on the direct feedback of non-programmer developers, I focused on reducing compilation time, improving failure detection, and providing clearer feedback. The tool reached a point where artists and designers could reliably open the editor with a single action after syncing, without needing to understand or manually trigger recompilation steps.
One key takeaway was how critical fast and explicit feedback is for non-programmer users. Silent failures or long waits significantly reduced trust in the tool early on.
A notable technical trade-off was implementing the tool in PowerShell. While this worked well within a Windows workflow and deepened my understanding of the environment, it limited cross-platform support. Rewriting the tool in Python would improve maintainability, enable iOS/macOS workflows, and allow faster iteration using existing test-driven development practices and cross-platform libraries.