If SIMPLECOMM_CHARACTERSPERTICK_MAX is reduced to below 240, SimpleComm_SendQueue risks to cease sending messages (as soon as a message text longer than SIMPLECOMM_CHARACTERSPERTICK_MAX is sent).
This makes throttling GA below 240 chars/tick impossible or at least very unreliable.
I have fixed it this way:
I have defined a new variable in the same scope as SimpleComm_sentBytes called SimpleComm_extraBytes. Probably a bad name, but meh..
In the function I have added this line:
SimpleComm_extraBytes = SimpleComm_extraBytes + (SIMPLECOMM_CHARACTERSPERTICK_MAX - SimpleComm_sentBytes);
just before the "break;" line. Efter the "end" after the "break" I added this line:
I also changed this line:
SimpleComm_sentBytes = 0;
SimpleComm_sentBytes = -SimpleComm_extraBytes;
Doing this make it possible to send long messages without exceeding the SIMPLECOMM_CHARACTERSPERTICK_MAX limit.
Characters are simply saved up until enough are in the "bag" and then the message is sent and the bag is emptied.
This is tested and found to be working. :-)