To help squeeze out the last few bytes from your game I suggest trying to remove as many intermediate variables as possible and simply use the full statements in their stead.
i.e. from your game (i decompiled it to see what i could suggest to help) there is a block of code similar to this:
int l4 = ai1[0] - ai1[j1];
int l6 = ai2[0] - ai2[j1];
ai3[j1] = (int)(10D * Math.cos(Math.atan2(l6, l4)));
ai4[j1] = (int)(10D * Math.sin(Math.atan2(l6, l4)));
I would recommend changing it to:
ai3[j1] = (int)(10D * Math.cos(Math.atan2(l6, ai1[0] - ai1[j1])));
ai4[j1] = (int)(10D * Math.sin(Math.atan2(l6, ai2[0] - ai2[j1])));
This is a little counter intuitve but in most cases it will reduce the number of bytes after compression.
I also ran your “raiden.jar” through the 4KJO tool and it reduced the jar by one byte… Not much i know but i do not have access to your original class before being run though obsfucators, I would imagine some more gain if the original class file was used in the tool.