About Ragnarok TD
Ragnarok TD is a top-down tower defense game created as a case study of Ninja Kiwi's Bloons TD 6. Follow the story of a small village in the North as they fend off the beasts of Ragnarok.
Technical Details
16 week development cycle
13 developers, including 5 programmers, 1 designer, 3 artists, and 3 composers
Unity3D, WWise, JIRA, Confluence
Postmortem
My Responsibilities
Ensure that all features are complete by the end of development
Program numerous systems, including;
Tower placement and upgrade mechanics
Visual novel narrative system
HUD Elements
Cheat codes
Maintain a Git repository for a team of 13 students by reviewing pull requests and solving merge conflicts
Assign tasks to programmers and designers that fit their experience level and interests.
Create and maintain tutorials on integrating content for designers
Coordinated with industry advisors for playtesting and planning feedback
What Went Right
Starting development early provided time to prototype new features and tools, and significantly reduced issues with integration
Project was architected with modularity from the beginning, allowing for flexible development and less spaghetti code
Providing significant details in JIRA tasks, including a helpful links section, gave programmers guidance and significantly increased productivity.
Increased productivity due to techniques mentioned above increased team morale, allowing us to maintain momentum
Designer-oriented documentation was helpful for designers and artists to integrate content into the game
Reduced scope and increased productivity led to a project with zero cut content.
What Went Wrong
Programmers didn’t understand why certain architectural decisions were made, leading to an unnecessary code refactoring
Project goals were unclear until the start of production, led to an incorrect prioritization of tasks
Numerous merge conflicts were created due to many members doing work at the end of the sprint, wasted a significant amount of my time
Lessons Learned
Use the time before onboarding to create a prototype to reduce pressure on the team.
Architect the project with modularity and scalability in mind as much as possible
Give programmers guidance on relevant scripts and documentation to improve their productivity
Write documentation on the architecture of the project
Coordinate developers to ensure they don’t work on the same files at the same time.