... communicate with each other through digital pins ...
This is a bit vague. You could be using async serial, I2C, SPI, or some homebrew protocol.
Assuming for the moment you are using serial, you connect all the grounds together, as a reference point. Then the Tx (transmit) from one goes to Rx (receive) of the other. And vice-versa if you want two-way communication. To daisy-chain is going to get fiddlier. You might want to think about I2C which lets you connect up to 119 devices by simply connecting Gnd, SDA and SCL together (not swapped). Having said that there are some wire-length considerations because of capacitance.
I2C requires a single set of pull-up resistors. A lot of detail is here:
What size resistor do I use? Do I put a resistor on the output, and what size? Why, when I use resistors, do the other uCs (or the other Arduino) power up with no Vcc hooked up to them?
I'd have to see your circuit to comment. But with a resistor some current will still flow. It sounds odd they are powering up by just connecting the digital pins. In fact it is probably unwise to apply current to the digital pins if they are not powered in some way. You could just connect all the VCCs together (plus all the GNDs) if you had a power supply that could supply enough current.
If you aren't sure, maybe post a quick sketch (diagram) of what you are proposing to do.