If you go overboard with this in a game the replay of it will look completely different from what was played. But even if you ensure that Spring.ShareResources gets a positive transfer value, I'll get the feeling that you sometimes also run in problems, if you use this function every 0.1 sec for example. Sadly I don't have a real prove for it yet.
And by the way the output from
local
,eMax,_,_,_,_,_, = Spring.GetTeamResources(allyID, "energy")
Spring.Echo(eMax)
is 10500 when it should be just 500 and 11000 when it should be just 1000 and so on (or is there a purpose for it?). Someone should report this too, I have no clue how to do it and I am too lazy to figure it out.