The extending chain causing current_sum_of_attack_ becoming minus problem should be fixed now. But a crashing bug occurs. Dunno why. Investigating.
Bit the bullet. Revamped how to update the Chain(s). It's possible another over engineered generalized case, but to my surprise the code in some parts got cleaner. Anyway now Map::current_sum_of_attack_ should no longer reports negative numbers, thus AI should be more stable and can start to utilize collect_firemap() method. The problem now is how to revamp the
'display' of Chain messages in ViewSpriteMaster