So, I'd agree with Spiff that WiFi is probably going to be a fail for the conditions you're talking about. I have no brilliant insight into a full on solution for what you want, unfortunately.. but I would suggest that you look into the Serval Project.
The Serval Project is an Android software project that creates a mesh-network between your phones which allows you to dial them (with their numbers) and talk (obviously); without any carrier/etc network backing you up (just the ad-hoc mesh network between the phones).
It is however a research/prototype project, and not release quality.
I've never tried it but I would be very tempted to if I had some phones I didn't care about too much. One thing that scares me is their disclaimer that "Serval may permanently alter or damage the software or hardware on devices upon which it is installed."! I'm not sure if that's simply to cover their butts or a real concern.
It's a very interesting project and I'll be all over it if it can reach a more refined state. Their project site is: http://www.servalproject.org. You can also find it on the Android Market.
But remember, it is at an early stage (prototype) and doesn't sound to be particularly reliable, and it seems to have many bugs and incompatibilities. Read the disclaimer on their project site, and look for reviews on the market, discussions, etc.