Posted October 26, 2021 by DrTardigrade
#0.3.4 #Actions #Tribal diplomacy #Modding #Progress Update
As it is now becoming tradition, over the past two weekends, I spend the first just fixing bugs I introduced two weeks ago, then the second working on completing remaining items on my checklist. I couldn't solve all the problems I encountered on the first week, but I don't want to be stuck forever fixing issues, so I'll let them simmer for a while and I'll return to them once I have completed what's left of the feature.
I started working on the last two actions I wanted to implement for this release. The first one will let players improve relationships with neighboring factions that do not belong to the tribe they control. The second will let them invite said neighboring faction to join the tribe once the relationship value is high enough.
The hardest part has been implementing the necessary mod elements that will make those two actions work. One is needed to allow players to choose from the map a neighboring tribe, and a similar one is needed to select a clan within the target tribe. Most of the code infrastructure is already in place since the operation is very similar to the one I'm implemented to select neighboring regions for tribal expansion. But still, there a a few critical differences between tribal territories and geographical regions that make everything a bit harder. For one, regions are immutable. Once generated, they never change. So it's easy to calculate certain properties for a region like its geometric centroid or their total area. Tribal territories are constantly changing. So I need to use algorithms that can account for these changes when calculating their geographical properties. The last thing I want to do is recalculate the values for those properties from scratch every single time an action occurs, as this would slow down the game noticeably.
In any case, I think I'll be done with these actions in a week or two. Then I'll start a new closed test alpha period while I work on the remaining items for this release.