We had 3 members from our alliance attack an enemy alliance member. We all coordinated our attack so that we would all arrive at the exact same time, but when launching, we were off by seconds of eachother.
Even though the overall attack was a success, the members who got there just seconds before the others lost everything, while the member arriving last got credit for the Battle Points and received all the resources.
How do we make sure we are all arriving at the exact same second so this doesn't happen again?
What you are describing is exactly how the game is played and not something that can be avoided, nor should you try to. You should take it into consideration though. Some points to remember:
1. The game has a built-in anti-timer. This adds or subtracts a random number of seconds to the travel times of your attack and support waves. Always check the landing time of your wave after you send it, you have 10 minutes after sending to cancel any wave if the anti timer has put it out of sync with your CS (attacks must land before CS, supports after).
2. The game times are displayed in seconds, but are actually registered in smaller increments, so even if all your attacks land in the same second, they will still be processed in a particular order.
3. The waves that hit first will probably lose everything (unless they opponent dodges), but they do receive BP for everything they kill, even if the battle report didn't say how many points they received. Resources can only be taken if there are surviving units to carry them back; however, as an earlier poster said, BP is preferable over resources any day.
4. This is a war game, you will benefit greatly and have a lot of fun if you adopt the mentality of "build'em to kill'em, a soldiers job is to die in battle". Don't get attached to your troops.