Project recap

This article is link to this project. Nàstrond is a school project where we made a 2D dwarf city builder using a custom c++ engine made by our teacher. We add 3 months to finish this project and the team was setup as the following:

  • One lead project (me)
  • One lead art + one other artist
  • One lead programmer with 6 programmers (including me)
  • One designers

In this project I had two main task:

  • Decision making, every dwarf had their own mind and were capable of taking their own decision. I used a behavior tree that every dwarf was sharing.
  • Pathfinding, there was resource that needed to be transported from production building to transformation building, there was house to sleep in, etc. I implemented an A* pathfinding with a priority heuristic to move on roads.

In this article I’ll take an in-depth look on the various optimization I’ve made, and how I went from a game that couldn’t handle 1’000 agents simultanously with a game that could have 10’000 agents at the same time taking less than 5ms each frame.

[DRAFT]