Progress Update 2018-01-28
I quietly missed my update last week. Unfortunately I didn’t have a lot of time to get anything done and this week I’ve been ill again, so progress has been a bit slow.
This week I added MovementClass information to the pathfinder and collision system. This means that most ground units can no longer drive up steep slopes or go underwater, unless their MovementClass specifically allows this. Unfortunately amphibious units like the ARM Triton don’t seem to work properly yet (they can’t cross the water), this is something I will look at soon.
While I was working on this I noticed that the pathfinder was behaving very strangely. After struggling with it for quite some time I finally decided to write a visualisation to show what the pathfinder is doing internally. This was really helpful, as it was immediately clear that something wasn’t right. As it turned out, the pathfinder contained numerous subtle bugs, but after several long debugging sessions I was able to fix them.
As for what’s next, I was going to start on weapons but there are still some pathfinder things that need to be tidied up or solved. Pathfinding is turning out to be a lot of work, hopefully I can sort out the last few major issues here and start moving onto the rest of the engine.
Todays gif shows both the MovementClass code and the visualisation. Here the peewee can’t walk up the steep part of the hill, so it finds its way around along a slightly shallower slope. The red arrows show potential paths considered by the pathfinder, while the blue arrows show the final path.
Inside RWE the visualisation can be activated by pressing F10, and always shows information about the last computed path.