I'm officially abandoning this. I'm sorry.
The Living Wood would have been a fun resource. Initially, it would have been as strong as copper weapons. It could have been taught to take a second form by spending the labor cost of the second weapon, but no further material costs. Two obvious uses would have been archers that can fight like swordsmen, without whatever downsides come from having too many weapons, or having swordsmen with a pikeman anti-cavalry skill. Future research possibilities could have made it stronger, to keep up with higher tier materials, or let it take a third form, both probably at fairly high costs.
I played silly games with your maps. Everyone had a different 90 degree rotations from their neighbors, so you wouldn't have noticed you were near someone just by exploring their lands. I would have found it endlessly entertaining if you had managed to not find your neighbors until you tripped on their capital.
Only the backwards, four-armed barbarians had the True map rotation.
I liked the map at first. It was a Mediterranean style map, with a big sea surrounded by land. The trader elf GMPCs would have made contact with villages along the inner coast by era 2-3. That would have been made awkward by nobody having a good backstory for a naval tradition, meaning that GMPCs would have been at least an era ahead in navy over the players, and had strong reasons to invest heavily in it. That's too overbearing for GMPCs.
The full map also has lots of forests, and is generally very green and pleasant looking. It's strategically interesting, but it doesn't look like an apocalypse happened.
Might I suggest sending them a fruit basket?
This post made me laugh: The aggressive raider player suggested the best path for diplomacy, and the only one I had planned out. The NPC group was small, so 1 food during each famine during era 1 would have been enough to make them friendly with you. You could have probably come up with other ways, but that was the easiest.
This was my first game I made with a complicated battle system that I actually liked. With a spreadsheet, it was easy to run.
Every turn, each side dealt (X*HP%*(1-MoraleLoss)) to the enemy HP. Morale damage was a straight up losses percentage of how many died that round. The only hard RNG was whether morale rounded up or down, which was weighted based on how close it was.
Most soldiers had morale worth 6% damage per point. At 0 morale, they'd deal 40% base damage. At 9 morale, 94%.
Berserkers would have had 3%, so at 0% morale and fighting to the death with no ability to retreat, they'd still be hitting for 70% base damage. This might have been too strong.
Most animals had 8% damage per morale. Pacifistic neutrals would have had the same.
HP % being different from morale meant that battered units with full morale would have still been useful to bring into battle. It also made it easy to calculate extra units, if the only tactics were "everyone clump together and fight." Having two Spearmen units wouldn't have changed attack or defense at all, but counted as 200 HP. After battle, I could then distribute losses between the two units in any way that felt right.
Damage was weird, but worked and I liked it. I based it off of the difference in attack vs defense, rather than something easy to plug into a formula. It was 20 damage base if attack = defense, like spearmen vs spearmen. One attack difference changes it to 15 or 25, then 10 or 30(eg,5 attack vs 3 defense). I didn't settle on how to deal with larger differences, and probably would have started by multiplying by 20% or 25% per step, and then seeing how the results from the battle felt.
With fresh units, a spearmen vs spearmen match would start the battle with each side killing 20 enemy spearmen. That lowers morale by 2. They then deal 20*0.8(str)*0.88(morale) = 14.08 damage for round 2. That's 17.6% losses, so morale loses at least 1, and a ~75% chance of a second. Damage drops quickly as units get tired and scared, making it easy to for me to look at it and see "Everyone's tired of fighting, end the battle here," or "this unit has low morale, decides things are hopeless, and runs."