Age of Wonders 4

Logo of Triumph Studios

My timeline at Triumph Studios

During my time at Triumph Studios I have mainly worked on interface related tasks. My involvement with the development of Age of Wonders 4 started out as an internship of 20 weeks. After which I got a summer job as Programmer there for 3 months. And then I did my second internship of 18 weeks there. After which I graduated and got a 6 month contract as Programmer.

The experience I gained at Triumph Studios

I gained experience in the following:

  • Getting up to speed with a large code base
  • Git/GitLab/SmartGit
  • SVN
  • Using branches, merging and developing for different versions of the game
  • XAML
  • MVVM
  • UI code (using C++ and Noesis)
  • A deeper understanding of C++
  • Working in a mid sized team (of around 40 people)
  • Working on a live game
  • Working on an unannounced game
  • Releasing a game
  • Iterating through the different stages of design for a long term game
  • Working with code reviews (GitLab) in a professional environment
  • Making my code future-proof
  • Scrum in a professional setting
  • Testing for bugs / stability
  • Working with a custom engine
  • Adding to a custom engine

Sector Annex Pins

An image of Province Annexation pins

What did I do with this?

During my time working on Age of Wonders 4 I've become code owner of Sector Pins. This includes: Annexation Pins, Excavation Pins, Duration Pins. Before my changes these pins were already in the game. They did not have any interactions though, they were just to display the possible province improvements that you could build in that specific sector. What they wanted me to do was change the flow of how you annex sectors. First you had to select a sector, then a vertical list would appear with buttons for each province improvement that you could build. And then you would click a button. But that did not work when you had two cities next to each other with one sector in between. Because when you would try to annex that sector all the buttons would be duplicate and there would be no clear indication of to which city it would go.

The solution to that was to make the flow different. First you select which city you would like to expand. Then all the usual province improvement indicators would appear, but now they are interactable and they have a tooltip to display how much income those province improvements would provide. And you could click the province you would like to annex, and that's it. It makes for a lot smoother experience. I made it so that when you click that it annexes the sector. And I also made the tooltip for the sector annex pin, which includes a prediction of how much the province improvement will provide. For that I had to fix the income predictions, because they were always wrong. And after my fix I almost never heard someone say their prediction was wrong.

Excavation Pins

An image of Excavation pins

What did I do with this?

I changed the flow from a spell casting flow to a pin selection flow. Making it more in line with the new annexation flow. I had to add these pins as they were not pre-existing.

Duration Pins

An image of Duration pins

What did I do with this?

After making the excavation pins I needed to make the active operations display a duration pin. Which needed to be in the parent class so that all the inheriting operation classes would work with it. So I added a boolean in the editor for the operations that allowed designers to decide if that operation is going to show a duration pin when it is busy.

And much more..