Good evening!
Today I want to describe what we have now and what we have done this week.
We make a TD game so the first priority for us was a tower mechanic. At start we dont know how to make it more interesting than usual. We think a bit and decided to divide all our towers into factions where each faction has their own types of units.
Then we asked ourselves: “How will players upgrade the towers?”. At the beginning, we wanted to make a mechanic exactly the same as in Kingdom Rush where you spend your money to upgrade tower but later we change it a bit. Now you need to place a certain number of towers on the map, and after that the last tower will be upgraded, and the others will be destroyed. This is a little demonstration
In our game we will have two type of towers: Attackers and summoners but details in later devblogs…
We have a simple wave mechanic as in Kingdom Rush(Yes, we take a lot of inspiration from it) where wave will be launched after some time or you can launch it early and get some extra coins.
Lets talk about work which we done this week. At the beginning I decide to use Unity NavMesh system and I think this is a good solution, but it has its own bugs, which are not always clear where they come from(maybe its problem with me, i dont know ? )
For this reason i decide to write my own pathfinding, i read some articles and found that A* maybe its too heavy for our game, because in our game the bots move through checkpoints and there is no need for such an advanced system but i found it interesting and useful for my future projects. Tutorial in Youtube by Sebastian Lague helps me a lot. I will leave this video here, maybe it will help someone else
This is the result of my work. The red zone represents unwalkable areas, and white - walkable.
In the next screenshot you can the algorithm “in action”. Yellow node represents the start point and black nodes represents our way to the end point. If you know about A you can see some difference cause there is also applied smoothing. When NPC following a path which was made by A* in its original form it looks unrealistic and a bit weird )
Finally I write an interface which looks like unity NavMesh Agent cause I can replace classes without rewriting AI logic and it save me a lot of time.
It was very nice to share my experiences for me, see you soon next week ?