| Company | Knucklehead Studios |
| Role | Gameplay programmer (internship) |
| Team size | 9 |
| Tools | Unity – C# – Git |
| Duration | 02/2024 – 08/2024 |
Overview
Knucklehead Studios is a dutch based game studio, specialised in developing location based VR games for the arcade industry. During my internship period, I primarily worked on an upcoming update for their multiplayer VR title ‘Cops vs Robbers’ as a gameplay programmer, contributing to new features, improvements and implementing new systems.
Prior to my internship, I had experience from the first 3 semesters of my main study programme at the Amsterdam University of Applied Sciences. I had worked on a few projects in Unity and built a solid foundation for programming. While I was comfortable working with fellow students on larger projects, I had limited experience with professional development techniques and practices such as design patterns, SOLID architecture, and contirbuting to existing codebases.
This internship marked my first experience working in a professional game development environment, where I got hands-on experience working with professional developers, artists and designers in a very welcoming and exciting team.
Responsibilities
As gameplay programmer intern at Knucklehead Studios I worked on individual tasks regarding a new update for their first released LB-VR game ‘Cops vs Robbers’. My tasks were varied; from implementing new systems, refactoring and fixing existing features, to implementing new gameplay mechanics.
To summarize my responsibilities:
- Worked as a gameplay programmer on a live VR title (Cops vs Robbers) with individual tasks
- Implemented new gameplay systems and mechanics for an upcoming update
- Refactored and improved features within the existing codebase
- Communicate implementation approaches and design decisions with other team members
- Assisted other team members with explanations and implementation steps
Key Contributions
- Implemented a semantic game versioning system to keep track of build versions across different platforms
- Refactored and fixed issues related to player interaction with real-world space in VR environment (elevators, button presses and out-of-bounds warnings)
- Experimented and prototyped a seamless scene transition system, exploring different approaches and combinations of techniques
- Conducted research to the benefits of using Unity ECS for LB-VR games and built a prototype for developers to try out
- Integrated Unity Analytics and a few basic events to monitor and track player interactions
Reflection
My time as game programmer intern at Knucklehead Studios was extremely valuable. I learned a lot about working as developer in a professional setting, communicating with other developers and contributing to larger scale projects. Because of the office hours, I was able to grow my programming skills to new levels while being more confident in my ability to write scalable and maintainable code.
One of the most important lessons I learned during this internship, is the importance and value of asking for help and assistance from your peers. Being able to ask any questions to more experienced developers was extremely beneficial to my understanding and growth of certain concepts, as well as sparking motivation to better my skills as developer.
Another key lesson was the importance of implementing systems that are friendly to use by other developers, designers and artists. By working with other disciplines, I was able to receive a different view angle of certain implementations, which encouraged me to think about the properties that should be exposed and how to name them correctly.
Moving forward from my time as intern, I became a lot more self aware of my code and how to improve my skills. I took an interest in programming patterns, being more present in team settings, and overall code architecture. I’m extremely thankful for my time at Knucklehead Studios and the many office hours I was able to spend in this exciting and welcoming game studio.
