Adknown official logo


Adknown Inc.

Role: Game Developer

Date: Summer 2019 (May - Aug)




Introduction

Game development is no simple task. Adknown tought me this, and helped me grow as both a programmer and a person. I will cover my responsibilities, tasks, goals, and the games I developed during my four months at Adknown's mobile game development department.




About the Company

Adknown outdoor group photo
Group photo for the company annual outdoor field day in July 2019. (Source: Adknown Instagram)

Adknown Inc. is an online media company founded as a startup in 2011. Located in the heart of downtown Guelph, the company’s main specialty is advertising technology. They manage multiple search and web portals as well as having developed a wide array of tools to manage ad networks and drive traffic to specific environments. Adknown’s game development department, a.k.a. Adknown Games, utilizes the Unity game engine to develop mobile phone games for iOS and Android. The team works in an agile environment, dedicating short development sprints to each game they publish while still maintaining a level of quality.

There are currently over 200 games published by Adknown Games that are available on the market. I worked for Adknown Games from May to August 2019 as a co-op Game Developer. During my time at Adknown, I developed a total of 6 games (plus one additional, unreleased game I helped another developer create).




Goals/Learning Outcomes

  • Become proficient in Unity.
  • Develop effective debugging skills that will enhance my overall problem solving skills too.
  • Improve interpersonal and active listening skills.
  • Across the Road mobile game
    My fourth game, Across the Road, helped establish a theme and visual style for my games going forward.
    My first two goals of improving Unity proficiency and debugging skills were directly tied to my task of developing games, but my third goal was more personal. In general, I wanted my goals to affect the development of skills I could utilize in a variety of jobs (hence why I went for some social skill improvement goals).

    I mainly wanted to learn skills that would make me a better programmer overall (detail-orientation, debugging, problem solving, etc). Many of these skills also tie into just having a good work ethic. I wanted to improve skills that would be useful not only in future work environments, but also useful for my overall work ethic. For example, I often had trouble figuring out why certain issues would arise in the assignments I coded for some classes. I hoped that my work at Adknown developing and debugging my own games would help me develop ways to efficiently catch and remedy my mistakes.

    As an avid gamer since childhood, a natural extension to my hobby was deciding to could create my own games and entertain others with my own creations. Learning Unity, one of the most popular game engines on the market right now, was a natural step into game development. I was given the opportunity to finally learn and use Unity when working at Adknown, and I learned a lot about the engine and by extension, game development as a whole.
    Survival Square mobile game
    My last game, Survival Square, could've ended up even better had I not spent so much time on animation.
    I also wanted to utilize version control systems in a professional environment. I’ve only ever used systems like Github as a repository to store projects rather than continuously update them, so seeing a system in action could show me how to better organize my own projects in the future. At Adknown, we used Bitbucket to keep archives of our games’ files. It was a good system that I don’t have any qualms with.

    Finally, I wanted a better taste of working with mobile systems. I made some rudimentary Android projects in the past, but never explored making full fledged apps for it or iOS. While I did learn about the importance of making a product that can conform to all sorts of resolutions, I didn’t directly code in Android Studio or Swift. I just programmed my games in C# and Unity would handle conversion and compilation for iOS or Android systems itself. A bit disappointing, but it did save a lot of work doing the conversion manually.

  • Proficiency in Unity: I definitely became more proficient in Unity (when your knowledge before landing the job was nothing, the only real place to go is up), but still have a lot of room to grow. I feel like I’m in that stage where I know how to do basic stuff like working in one game scene and using Unity specific tools (prefabs, aniamtion override controllers, etc.) but am still in the dark about more advanced stuff (multiple scenes) or little tricks that could improve my efficiency.
  • Debugging: This is difficult to gauge because I didn’t really follow any of my outlined steps in my goal (writing down a process to follow when debugging), but I still feel like I’ve become more “aware” of what I type. Back in school, I felt like I’d go on autopilot regularly and forget about blocks of code I just wrote. By developing and tending to a sizable project I made in a professional work environment, I think I became better at identifying connections between the cause and effect of issues that arose.
  • Social Skills: I feel like this is the goal I had the most accomplished. I can’t really measure this one with a scale or anything, but I ended the co-op term on at least acquaintance terms with every co-worker on Adknown’s game development team, which I’m proud of. I believe I improved my active listening skills throughout the semester by taking feedback from teammates regarding game design.

  • In conclusion, I made noticeable progress on all my goals. I wouldn’t technically call any of them complete, which was my plan from the start. They’re goals that I want to develop over time; seeing some sort of positive net gain on them during my time at Adknown is enough to make me satisfied that I spent my time there wisely.




    Job Description

    Magic Shell Spell mobile game
    My fifth game, Magic Shell Spell, was my favourite in terms of visual style and gameplay idea. The execution could've been a bit better though.

    At Adknown Games, we developed games for iOS and Android over 2 week cycles. This short development time means we can’t explore overly ambitious ideas (sorry, no JRPGs). We also have to steer clear of any ideas too closely resembling previous Adknown games, but other than that anything’s fair game as long as the Team Lead says it’s okay.

    A typical cycle at Adknown Games usually followed this strict format:
  • Concept Development: Spend some time to brainstorm a game idea. If the idea is deemed feasible and good by the Team Lead, begin paper prototyping and planning how you’re going to develop the thing. Initial Development: Time to make your game! Right now, the focus is the main gameplay loop and UI. Finishing the UI now saves a lot of headache later, and having your basic gameplay completed is basically mandatory in order to complete the next step.
  • Mid-cycle Quality Assurance (QA): Your game is evaluated by the Team Lead and fellow developers. Most of the big glaring issues in your game’s design will likely be discovered here. Sometimes you’ll have to rework your game entirely once enough problems are found, but luckily I’ve never had to do that. I did have to make a substantial changes to my games usually, but it was always for the better.
  • Final Development: Get the music and sound in your game. Set up the shop so the user can buy cool cosmetics using in-game currency. Create a list of missions for players to tackle. Basically, drop a large bucket of polish onto your game so that it can exceed standards.
  • Publishing and End-of-cycle QA: Get your game ready to launch on the Play Store and/or App Store by preparing promotional material and writing good, keyword-heavy descriptions. Also, the Team Lead and other developers will give your game one final look to make sure it’s up to snuff before you’re given the green light to send your game into open beta.

  • With a cycle as tight as this, good time management and organization are key. During development of my final game, Survival Square, I spent far too much time trying to get animation override controllers working so that my enemies could have animated sprites. As a result, I had to hustle during the final stages of development and didn’t have as much polish put in as I would’ve liked. Had I better managed my time and made decisions faster, I like could've made the final product even better.
    Tile Shield mobile game
    My second game, Tile Shield, had the most stressful development out of any of my games. The final product is definitely a game all right, and also remains a project I probably should’ve saved for when I had more experience up my belt.
    Creativity was also a useful skill to have on hand during development. Obviously, a more creative mind can produce more creative game ideas, but creativity can also bleed into other aspects of development. Making shop items that are meaningful and get a chuckle out of others, smart sound design that clearly indicates what the developer wants the player to know about something, all of these are affected by the developer’s creativity.

    There’s many other skills that are useful for a job such as this. One of my fellow co-op hires mentions resilience, which I can’t deny, but many basic programming skills such as debugging, problem solving and critical thinking are also necessary. Working as a game developer at Adknown was definitely not easy, but had many satisfying and rewarding moments that made the grind worth it.

    To conclude this section, I’ll mention that the actual things taught in class aren’t too useful for this job. No C or memory management in sight here. However, classes do teach the importance of deadlines, of how to write good code, and how to solve problems when your head is plastered against a brick wall, all of which were invaluable skills to have working as a game developer at Adknown. So in conclusion, school was useful and developing games in 2 week cycles is simultaneously stressful and satisfying.




    Conclusion

    Final ADknown Games team lunch at Cherry Blossom Sushi.
    The Adknown Game Dev team celebrates the end of the semester with a lunch at Cherry Blossom Sushi Bar.

    In conclusion, my time spent at Adknown was a great learning experience. I was able to explore the joys and frustrations of game development and learned a lot about game design and good programming practice. I improved my coding and social skills after setting and achieving substantial progress on my goals. Finally, I got to do it all with a reliable team who weren’t afraid to give constructive criticism and crack some jokes too.

    Though my time working at Adknown was fun, it also helped me realize that game development is not for me. I’ll likely keep game development as a side hobby rather than the main focus of my career. Still, I have developed a humble appreciation for those who dedicate their lives to the difficult path of game development. I’m thankful for my time spent at Adknown and wish only the best for everyone there.




    Acknowledgements

    ADknown group photo at Rogers Center in Toronto.
    The entire team visited the Rogers Centre in August 2019 to watch the Toronto Blue Jays take on the Texas Rangers! The Jays lost. (Source: Adknown Instagram)

    Special thanks to the following people for making my time at Adknown a blast:
  • Erik Zorn-Wallentin, my team lead and supervisor, for helping me create the best games I could and teaching me a lot about not only game design, but to have confidence in my own abilities.
  • Ivan Boyko, for helping me out of a pickle more than once and being a solid, albeit cynical, cornerstone of the team.
  • Jeff Polasz, Daniel Praymayer and Linda Ngo, for the valuable feedback you all gave regarding my games and making the workplace a great place.
  • Ashley Monoogian, for her hard work in making sure Linda and I had the best co-op terms possible and also for helping me deal with faulty plumbing on one occasion.
  • Matt Scadding, for providing insightful and constructive criticism on our games and acting somewhat like the game dev team’s dad.
  • Everyone else at Adknown that I haven’t mentioned; though I didn’t know many of you by name, you all made company events a blast.
  • Thank you for having me at Adknown!