Hi,
about the batteries, you must study the energy model, it's in the manual. If I'm right it's not the first time I have to point you at the documentation.
About the re-broadcasting of packets directed to a broadcast address, that's called flooding. It is a routing protocol and it's not implemented in ns-3. All the other multi-hop routing protocols do NOT forward broadcast packets because flooding is, in general, an extremely bad idea.
Why ? Simple, because "the first of those node 1,2 and 3 should sends the packet to node 4 and others should discard it".
How the "other" nodes will know that the packet has been already forwarded ? It seems easy, but it isn't easy at all. In order to do it properly you have to add guard intervals, duplicate detection, indexes, and so on. Any naive implementation will only lead to a congestion in the network.
Shortly put: flooding is not a good idea. You can use any of the ad-hoc routing protocols instead.... and they are described in the manual !
T.