The Armory
Programmer and Lead Producer
A card battling strategy game set all across history, The Armory brings relics of the past to life with armor and weapons featured in a comprehensive local collection.
My Role: Lead Producer
Managing a large studio project from pitch to playtesting with a lead from the middle mentality
Establishing and maintaining kanban boards (using HacknPlan)
Scheduling, running, and taking meeting minutes at department meetings throughout the week
Setting and enforcing deadlines in a completely virtual setting
Continuously working with other producers and department leads to encourage peer-to-peer mentoring, cross disciplinary tasks, and collaboration
Regular communication and feedback loops with leads and individuals to assess and improve productivity on macro and micro levels
Organizing social events and sharing professional development resources to improve interpersonal relationships and ourselves, inside and outside of the studio
Team Challenges:
Organizing documents and notes in a way that a large team can easily find what they need
Handling technical difficulties and merge conflicts as many individuals were unfamiliar with using GitHub prior to this project
Putting extra emphasis on work-life balance and mental health under stressful and isolating circumstances, particularly in an ambitious and fast paced environment, and adjusting expectations accordingly
Integrating new team members and redistributing work from members that had left the team
My Role: Programmer
Using existing PvP card battling mechanics and scripts to create an AI opponent with several difficulty levels
Breaking down or abstracting existing code into modular parts so they can be called from both player and AI functions
Collaborating with other programmers and the programming leads to understand the existing framework and implement my changes
Collaborating with card designers and attending playtests to understand rules, playstyles, and strategy
Creating custom classes to track the 5x5 playing field spaces and the cards they contain
Writing algorithms to quickly find the adjacent cards to any space on the playing field, cards that can be targeted by melee, reach, or ranged attacks, and if any targetable cards are protected by adjacent defense cards
Storing specific information to limit the number of calls the AI must make while it weighs its options and makes decisions
Tracking changes to card stats, as some cards grant adjacency bonuses or other effects
Personal Challenges:
Working with programmers of very variable experience levels
Understanding and making changes to code that many people have contributed to
Determining the value of each move option and how the value changes at different points during the game
Development Specs
Platform: PC, iOS/Android
Engine: Unity
Current Team Size: 32
Project Duration: 1 year and counting