battle logic update